撰文 | 高靜宜
編輯 | 宇多田
在人工智慧迅猛發展的當下,幾乎每一家企業都在探索行業的切入點,試圖在人工智慧大潮中分一杯羹。
而在追尋 AI 商業化的道路上,人們逐漸發現,要實現技術的落地,不僅需要效能優越的演算法模型以及可靠的硬體支援,還需要把 AI 技術和硬體環境進行有機結合,再應用到具體的實際場景中,進而滿足使用者的需求。
而「嵌入式 AI」就是當前最熱門的 AI 商業化途徑之一。
「透過觀察市場我們發現,在 AI 領域主要有兩撥人。一方是高大上的演算法團隊,一方則是以深圳老闆為代表的實體出貨商。有趣的是這兩撥人是完全不溝通的,就像一幫人看愛奇藝,一幫人看快手一樣。」Perceptln 公司聯合創始人劉少山根據演算法與硬體之間存在的壁壘,舉了一個有意思的例子。
Perceptln 於 2016 年成立於矽谷,旨在提供機器人整體軟硬體解決方案。創始人劉少山先後就職於 LinkedIn、英特爾、微軟研究院,曾擔任百度無人車高階架構師,對於嵌入式 AI 有一些獨到的見解。
「我們做的就是把 AI 技術帶給那些應用廠商,推動整個市場發展。」據劉少山介紹,Perceptln 已針對高、中、低端等不同場景的應用推出三條產品線,分別將 AI 技術嵌入到智慧玩具、服務類機器人以及自動駕駛等應用中。
事實上,嵌入式並非是一個新鮮或者「高大上」的概念。
所謂嵌入式,就是指一種可被內建於裝置或裝置的專用計算機系統。通常來說,具有數字介面的裝置都具有嵌入式系統,如手機、車載電腦、智慧手錶等等。
而嵌入式 AI,則是一種讓 AI 演算法可以在終端裝置上執行的技術概念。很簡單,換句話說,它的作用就是能讓音響、手機、機器人等智慧硬體在不聯網的情況下實時完成環境感知、人機互動、決策控制等功能。
而一位資深演算法工程師告訴機器之能,通常來講他把程式編完了扔給公司裡的嵌入式工程師,後者再負責把它嵌入到板子裡。其實傳統做嵌入也是這個思路,兩端都要考慮,俗稱「兩頭堵」:
「按照我的理解,那些專注做嵌入式 AI 的可能是在針對 AI 模型做一些最佳化或是板子的最佳化,讓演算法更高效地跑在板子上。」
那麼嵌入式 AI 到底能做到什麼?與雲端 AI 相比,更適合應用到哪些場景裡?還有什麼是它做不到的?我們來聽聽更多業內做這一行的專家們的意見:
什麼樣的垂直場景更需要嵌入式 AI?
眾所周知,神經網路包括模型訓練和推斷兩個過程。而一提訓練,就必定會涉及海量的資料輸入,計算規模也會根據場景複雜性的遞增而變得愈加龐大。
因此,受到計算資源的限制,嵌入式端很難實現模型訓練的過程,也是我們下面要說的「幾個挑戰之一」。
而在推斷環節,雲端推斷和嵌入式推斷,二者訴求不同,因此也在不同的應用場景能夠發揮自己的優勢:
前者的好處是,能夠承受高吞吐量並滿足複雜計算對資源的要求,因此多用於深度學習模型和計算較複雜的情況;而後者,則更多的應用於對「實時處理」有更高要求的場景中。
什麼是「實時處理」?我們來舉個最實際的例子。無人駕駛汽車需要實時監測周圍環境,但是如果無人車突然進入隧道,或者進入某個連不了網的環境中呢?
是的,駕駛場景複雜多變,並不能保證時刻都能有一個百分之百可用的網路。因此,嵌入式 AI 憑藉其實時性優勢及離線執行的能力得以自動駕駛領域展現實力。
國內自動駕駛卡車技術研發公司圖森未來 COO 郝佳男就曾在接受機器之能採訪時表示:「從理論上講,在雲端處理感測器訊號並不可行,存在延遲和可用性問題。」
因此,訊號的本地處理也是整個自動駕駛領域的一大訴求,因為裝置端採集到資料後上傳到計算完成返回終端的過程會不可避免地帶來一定的延時,駕駛的危險係數也隨之提升。
而中科創達副總裁孫力在前天舉辦的嵌入式人工智慧技術論壇上也提到了這一問題:「自動駕駛汽車每秒鐘可以產生 1G 的資料,必須及時的、迅速的在本地來處理決策,不可能移到雲端。」
除了無人駕駛,在智慧家居方面,試想一下如果使用者家中安裝了一個監控攝像頭,那麼把資料傳到雲端很可能會增加個人隱私洩露的風險。而由於嵌入式 AI 是在本地處理資料,資料沒有上雲的過程,就可以保證使用者的資訊保安,免除不必要的麻煩。
除了這些特定的應用場景,一些 AI 技術公司對嵌入式 AI 也有著廣泛的需求。而近來因鉅額融資引起廣泛熱議的 Face++就是其中的一員。
「雖然我們主攻金融、安防以及手機智慧這三個垂直領域。」公司 CTO 唐文斌向機器之能表示,「但是我們在手機端遇到了第一個問題。」他解釋道。
他們在手機端做實名認證及人臉解鎖的時候發現,演算法會不斷「吃」計算力。也就是說,即便計算力不斷增長,演算法對計算力也總是處於「慾求不滿」的狀態。
其次是在攝像機端。他談到演算法研發人員希望在做人臉識別的時候,可以讓人臉在影片中的檢測、抓拍環節在相機端實現。這樣一來,就可以只傳輸有價值的資訊,而非原始的大容量影片,能夠有效減少傳輸頻寬以及後端部署伺服器的計算量及儲存量,讓系統的整體架構變得更加輕便。
「那麼,本來資訊可以存 3 個月,現在可以存 3 年,這會帶來非常大的價值。」唐文斌補充道。
嵌入式 AI 挑戰也很多,AI 公司都是如何選擇的?
在把 AI 技術部署於終端裝置的過程中,嵌入式技術至關重要。簡單來說,這一過程需要對晶片進行全方位考量以評估晶片的效能,然後根據神經網路演算法做特殊化處理,「無縫對接」嵌入式裝置的能力。「既沒有浪費運算單元,又最大程度地體現演算法的精度,這是一個藝術活,也是技術活。」孫力如是說。
然而,把嵌入式 AI 從雲端遷移到終端卻並非易事。孫力表示,目前嵌入式 AI 面臨三大挑戰,分別為運算能力、功耗及散熱。這些也是經典嵌入式裝置所面臨的問題。
此外,你還需要考慮演算法新增的神經網路處理單元與原有 DSP、GPU 計算架構的演算法精度二者之間的平衡問題,以及如何對傳統運算力較低的智慧硬體裝置進行升級,或者怎樣為傳統硬體新增 SoC 以實現智慧化轉型等等問題。
而這些也基本都與成本掛鉤(一提錢現場都笑了)。如何讓嵌入式 AI 展現出應有的商業價值,也是真實存在且亟待解決的問題。
因此,孫力表示,在具體操作上,技術人員不僅需要剪裁最佳化出最佳的計算模型並整合到移動裝置上,還要保證作業系統向下驅動底層硬體,向上支援軟體演算法,而且對於終端裝置他們必須有深入的理解。
「只有這樣,才能保證整個嵌入式 AI 演算法模型經濟、高效的運算。」他強調。
又根據劉少山回憶,在創業初期,團隊以為演算法會是最大的門檻,結果發現整合能力的需求才是最高的。
「這也是美國有許多演算法技術很強的初創公司都被谷歌、蘋果這類大公司收購的原因。」他解釋道,「因為,從演算法到落地產品還有一個很遠的距離。」
為了解決這些問題,業內目前主要採取三種實現路徑,分別是「壓縮演算法模型」,「不斷挖掘硬體潛力」,以及「在壓縮模型的同時針對現有晶片進行最佳化」。
劉少山表示,目前看來,第三種路徑是能夠最快落地的。但是無論如何,最佳化到一定程度還會遇到瓶頸,還是需要你轉過頭去提高硬體效能。
那麼一些明星公司們都是如何選擇的呢?
上個月剛完成 A+輪融資的深鑑科技與寒武紀就選擇設計開發專用晶片。而中科創達則明確表示不做晶片,只在中間層發力,根據下游行業層出不窮的新需求做定製化工作,幫助寒武紀、高通這樣的上游晶片企業發揮自己的價值。
但劉少山認為:「業界有許多公司瞄準了視覺方向的晶片加速,但除此之外,針對定位導航和語音互動等技術的晶片行業還相對空白,整個市場仍存在較大發展空間。」
雲和端,你選擇哪一個?
唐文斌認為,「端+雲」的未來發展趨勢已經非常明確。一些需要移動端提供快速響應能力的場景可以選擇在移動端進行計算,而需要把海量資料匯聚在一起,實現大規模資料探勘與處理的情況可以放在雲端進行。對此,中科創達 CEO 耿增強也持有相同的觀點。
「不過,具體哪些放在雲端,哪些放在移動端,還沒有一條統一的分界線,這也是留給我們的一個問題。」孫力補充道。
「這裡面存在較多的組合方式,」劉少山也認為,抓取資料、理解資料、根據理解做出行為決策等等環節可以全部在硬體執行,當然也可以部分給軟體、部分給硬體。
「很多感知計算涉及深度學習網路,各家公司對這方面的硬體加速也有很深的理解。不過在決策階段,很多演算法還沒有定型,以無人車為例,業界主要還是基於規則的方法來做決策。」
而耿增強則表示,我們無需擔心演算法定型後,嵌入式 AI 的價值會減弱。「演算法是沒有完美的,當這個演算法趨於完美之時,大家會產生更多的需求,也會不斷有新的演算法出現,你總會發現自己還有很多技術工作要做。因為技術是沒有窮盡的。」
不過,雲和端既然還沒有統一的應用分界線,那麼你是怎樣考慮的呢?在下方留言,說說你對嵌入式 AI 的意見和見解吧。