2015 年是雲知聲的歷史轉折點。

在此之前,這家專注於物聯網人工智能服務的初創企業一直以算法公司自居。但很快,團隊愈發意識到算力和成本是不可化解的矛盾。當通用芯片的成本居高不下,批量生產遇到了成本瓶頸,於是雲知聲決定「自主造芯」。

從決定「造芯」的第一天起,創始團隊就非常篤定,AI 芯片是成本問題的唯一解決辦法,也爲企業自身發展指明瞭一條通路。從 2015 年搭建團隊,到 2017 年着重技術打磨,終於,雲知聲在 2018 年 5 月份宣佈,其首款自研 AI 芯片「雨燕」得到成功驗證,並於同年 8 月份正式量產。2019 年 4 月份,第一批搭載雲知聲 AI 芯片的產品將在市場流通。

這僅是雲知聲「自主造芯」的開始,若干款芯片「正在趕來的路上」。如何把握住巨大的市場,號準商業脈搏,對雲知聲來說既是機遇亦是挑戰。在雲之聲 Open Day 上,雲知聲副總裁李霄寒分享了自己對 AI 芯片的思考和心得。

(雲知聲副總裁李霄寒 |雲知聲)

自主造芯的底層邏輯

2007 年,隨着移動互聯網時代的開啓,移動智能設備的數量呈現了指數級的增長,數字化程度明顯提高。當下,用戶的個人位置、信用、貨幣都已基本實現數字化,爲人工智能的落地和發展,奠定了堅實的數據基礎。

「而在即將進入的物聯網時代,設備數量會再次大幅攀升」。李霄寒注意到,除了移動互聯網所應用的傳統數據之外,物聯網囊括了家庭環境、位置、溫度、語音、圖像等數據維度。這些新數據是「彈藥」,在產業界、資本界以及科研界都予以了高度重視。

李霄寒認爲,在物聯網時代,人工智能的落地和挑戰需要一個新的 SOC,這其中包含芯片、雲和人工智能技術。

如今,雲端不僅集成了很多 AI 能力,還集成了教育類、醫療類等知識,發展程度相對完備。當所有的知識與用戶連接時,就需要一個載體。過去,這個載體是智能手機,但在物聯網時代,這個載體可能是開關插座、音箱等智能設備。李霄寒認爲,邊緣 AI 芯片和服務端芯片同等重要。藉助這些載體來承接雲端的能力,並觸達至用戶,採用 AI 芯片是絕佳的解決方案,它是 AIoT 落地的核心關鍵。

「我們現在處在一個非常牛的時代」,李霄寒感嘆。當聞名遐邇的 AlphaGo 擊敗了圍棋世界冠軍李世石,無人不驚歎機器的強悍實力。有趣的是,早在 1997 年,深藍擊敗了當時的國際象棋冠軍時,有一種論調認爲「國際象棋複雜度有限」,如果有一天機器能夠在圍棋賽場擊敗人類,纔是人工智能時代的標誌。

近 20 年後,AlphaGo 不負衆望。它採用的是谷歌自研的 TPU 架構的人工智能芯片,與同期的 CPU 和 GPU 相比,TPU 可以提供 15-30 倍的性能提升,以及 30-80 倍的效率(性能/瓦特)提升。

「AI 芯片可以分爲兩類,第一類是服務端芯片,即經過大規模的數據處理進行訓練並形成 AI 模型;第二類是邊緣 AI 芯片,雲知聲主攻這方面的芯片打造」,李霄寒表示。

雲知聲以往在設計傳統 CPU 的時候,更在意電路的設計是否足夠好、足夠強勁,能否降低成本和功耗。「通用芯片要面向所有的場景,有可能運行一款遊戲,也有可能運行圖像處理軟件,它不需要考慮不同的需求,只需要把芯片設計得足夠強勁。」

但邊緣 AI 芯片的設計,需要考慮的因素截然不同。因爲不同的場景下的芯片需求不同,譬如電視端的芯片和風扇選用的芯片肯定不一樣,前者要更加強大,能夠做視頻的檢測,後者只需要控制電機和遙控感應即可。

李霄寒總結說,雲知聲的特別之處在於,拋棄了傳統芯片企業「先造芯再考慮賣給誰」的套路。他們認爲正確的路徑應該恰恰相反,先用方案解決某一個場景下的問題,驗證成立後,再考慮如何生產降本。所以,先要有成熟的落地場景,清晰的需求和系統的 AI 算法,有了這三個前提之後,可以定義清楚芯片的 SPEC,然後再考慮後面的芯片的研發步驟、架構設計等問題。這是雲知聲做芯片的邏輯和流程。

(李霄寒表示,打破馮?諾依曼的計算機架構已成爲業內的共識 | 雲知聲)

自主造芯的矛盾與挑戰

新時代自然會對傳統的 AI 解決方案提出一些新要求。

首先是通用架構在 AI 落地的過程中,需要更強大的邊緣算力來測算邊緣數據。比如降噪需要大量的計算,算力越強大,數據維度就越多,效果也會越好。

但是企業不可能無止境地去滿足它。這個約束來自於成本。「我們不可能爲了解決智能音箱的拾音問題,造一款百元級的芯片,即便非常強大,但在商業上是不成立的。」必須要把它的成本控制在一個範圍。這就構成了一種矛盾。

這對雲知聲來說是一種巨大的挑戰,李霄寒表示,「在新的場景和新的環境下,要基於場景,針對具體的應用,着眼 AI 算法,再加上芯片的應用,設計新的芯片。因此基於這種環境下,我們要考慮的因素要多得多。」

另外一個挑戰受制於上世紀四十年代,以馮?諾依曼內存牆爲代表的計算機架構。這一架構在芯片上明確了計算和存儲分離的概念,「需要計算的時候,把大腦拉過來,在運算單元上處理,再從內存上不斷獲取數據,拿回去」。人們現在幾乎使用的所有芯片,均是基於馮?諾依曼架構運行的。

顯然,在 AI 芯片的架構下,它碰到了新的複雜問題。芯片在處理 AI 算法的時候,面臨「需要處理的數據非常多」,以及「大量的數據拷貝需求」的問題。在這種情況下,CPU 大部分的時間是在休息,帶寬卻頻繁地在做傳輸工作。運算構件與存儲構件之間大量的數據交換限制了系統的運算效率。

打破馮?諾依曼限制,拉緊計算單位和存儲單位的距離,讓二者儘可能的接近,已成爲業內的共識。DeepNet 是雲知聲的 AI 加速處理器,DeepNet 1.0 成功應用於去年 5 月份發佈的「雨燕」芯片。「雨燕」相對傳統的芯片來講,計算效率獲得了 50 倍的提高。這枚芯片貫徹了雲知聲「讓馮?諾依曼更矮」的核心思想。

DeepNet 2.0 是雲知聲的多模態神經網絡處理器,支持多種推理網絡,可重構計算並支持某一系列計算公式的硬加速。它的原理是把乘法等價換算成加法,大幅提高計算效率。

這樣還不夠,雲知聲期望讓這堵牆變得更加低矮。在計算器內部,計算單元和行使單元基本結合在一起。當數據輸送到第一個 MACKJ 的時候,計算完成完馬上放到 M1,然後再做相應的其他計算,保證在 10 個週期之內,完成全部計算,這樣使計算效率得到大幅度的提高。

在我們進行語音計算的時候,一般來講 CPU 的利用率也就是 10% 左右,剩下的 90% 都是在搬運數據。這個架構可以把 CPU 的利用率提高 60% 以上,只剩下不到一半的數據搬運工作。

此外,服務端有低功耗的需求,邊緣側對低功耗的需求更加旺盛。電池供電設備,手機、音箱、眼鏡等所有這些便攜式的設備都面臨一個功耗的問題,但低功耗和大規模的並行計算是相互矛盾的,怎樣在特定的功耗條件下,支持設備的算力,這是非常大的挑戰之一。

李霄寒認爲,解決這個問題的必然方法是使用新的架構,來處理新的數據維度,因此需要在邊緣側(設備端)具有相應的算力。

據瞭解,在雲知聲第一代 AI 芯片設計上,可以用 2% 的算力做動靜檢測,把 98% 的功能關掉。當設備被喚醒,機器判定動靜之後,會做一個活體檢測,整個初步的判斷,仍然有 90% 的算力處於休眠狀態。一旦檢測到是人在發聲,並判斷髮音和喚醒詞是否匹配,至此需要 20% 的算力足矣。李霄寒表示,在實際情況中,絕大部分芯片在夜間都是處於休眠狀態。

追求效率的傳統方式,是更靈活地控制功耗,「當芯片工作的時候會全力以赴的運行,不工作的時候就關閉。但 AIoT 時代的遊戲規則變了,我們首先要從應用層面考慮,然後再考慮算法是否要爲芯片本身改變。」所以,AI 芯片不僅是硬件和芯片的設計問題,而且是芯片上層應用到整個場景的系統性問題。

安全同樣是一個繞不開的話題,雲知聲高度重視 AI 芯片的安全性。AI 芯片的安全包含兩方面,第一是防止軟件放在芯片上「被拷貝」、「被倒賣」。一旦發生類似事件,企業的知識產權就沒辦法受到保護,蒙受巨大的金錢損失;第二是確保代碼的完整性。當所有的設備都可以聯網,意味着在開放的環境下,任何人都可以訪問用戶的芯片,一旦被黑客利用並被曝光,對於企業而言就是一場毀滅性的災難。

故此,雲知聲在芯片的所有設計工作中都考慮到了機密性和完整性,確保芯片的所有代碼全部經過加密,確保所有在 NTO 內運行的代碼不被人篡改。

李霄寒最後強調,AI 芯片的設計絕對不能被孤立。基於端雲互動的思想提供了多模態處理的能力,在性能、功耗、面積上達到優異的平衡,併兼顧連接和安全的需求。

責任編輯:克里斯

圖片來源:雲知聲

相关文章