Azeem請我在CogX上做一次演講,并且希望我集中討論我希望觀眾領(lǐng)悟的一個(gè)點(diǎn)。幾年前我的工作的重點(diǎn)就是讓人們相信深度學(xué)習(xí)是一次真正的革命,而不是一時(shí)的熱潮,但是不斷涌現(xiàn)的諸多產(chǎn)品足以回答這個(gè)問題了。
在很多人之前我就知道這是真的,這并不是因?yàn)槲沂蔷哂猩疃榷床炝Φ念A(yù)言者,而是由于我有機(jī)會花費(fèi)大量時(shí)間親自動手實(shí)驗(yàn)該技術(shù)。
我對深度學(xué)習(xí)的價(jià)值充滿信心,因?yàn)槲矣H眼目睹了它在各種應(yīng)用程序中發(fā)揮的效果,而且我也明白將該技術(shù)應(yīng)用到更廣泛領(lǐng)域的唯一障礙就是從研究到部署所需要的時(shí)間。
在這里我想討論一下另一個(gè)我可以肯定的趨勢,而且這種趨勢可以帶來同等的影響力,只不過不為人所知。我堅(jiān)信機(jī)器學(xué)習(xí)可以在微型低功耗芯片上運(yùn)行,并且這種結(jié)合可以解決大量目前我們無法解決的問題。這便是我將要在CogX上談?wù)摰膬?nèi)容,在本文中我將詳細(xì)解釋為何我會如此確信。
由于市場非常分散,所以我們很難拿到準(zhǔn)確的數(shù)字,但是根據(jù)最可信的預(yù)估,今年將有超過400億個(gè)微控制器售出,考慮到使用它們的產(chǎn)品通常壽命很長,可能會有數(shù)千億個(gè)微型控制器在為人民服務(wù)。
微型控制器(或稱MCU)是包含一個(gè)可能只有幾千字節(jié)內(nèi)存的小型CPU封裝,可以嵌入消費(fèi)者、醫(yī)療、汽車和工業(yè)設(shè)備中。它們的設(shè)計(jì)目的是使用極少的能量,且非常便宜,可以嵌入所有出售產(chǎn)品中,預(yù)計(jì)今年的平均價(jià)格將低于50美分。
沒人注意到這些微型控制器,因?yàn)樗鼈兂3S糜谔娲嚒⑾赐霗C(jī)或遙控器內(nèi)舊式電子或機(jī)械系統(tǒng)的功能??刂七@些設(shè)備的邏輯幾乎與模擬電路和繼電器所用的一樣,除了可以做一些調(diào)整,例如可以編程的遠(yuǎn)程控制按鈕,或根據(jù)降雨量調(diào)整擋風(fēng)玻璃雨刷的速度等。
對于制造商來說最大的好處是,標(biāo)準(zhǔn)控制器可以使用軟件編程,省卻了為每一項(xiàng)任務(wù)定制電路的繁瑣,因此可以讓制造過程更加便宜,更加容易。
有限的能量
所有需要主電源的設(shè)備都面臨著許多困難。這些設(shè)備只能用在有布線的地方,即便有電線,也有可能因?yàn)閷?shí)際原因而很難插入新設(shè)備,例如在工廠地板或在手術(shù)室等地方。
如果要將某個(gè)東西放到房間頂部的角落,那么需要拉電線,或使用以太網(wǎng)供電等代替方案。電子設(shè)備需要將主電源的電壓轉(zhuǎn)換成各種電路需要的電壓,這種轉(zhuǎn)換很昂貴,而且浪費(fèi)能量。即便是電話或筆記本電腦等便攜式設(shè)備也需要頻繁的充電。
智能產(chǎn)品最大的優(yōu)勢在于可以隨時(shí)隨地部署,且不需要充電或換電池等維護(hù)工作。為了做到這一點(diǎn)最大的困難是大多數(shù)電子系統(tǒng)的能耗。根據(jù)智能手機(jī)能量耗費(fèi)的數(shù)據(jù),一般組件所需要的能量大約為:
顯示屏可能需要400毫瓦;
使用中的手機(jī)無線電接收裝置可能需要800毫瓦;
藍(lán)牙可能需要100毫瓦;
加速度計(jì)是21毫瓦;
陀螺儀是130毫瓦;
導(dǎo)航儀是176毫瓦。
微型控制器本身可能僅需要一毫瓦或者更少的能量,但是外圍設(shè)備卻需要大量能量。一個(gè)紐扣電池可以提供2500焦耳的能量,所以即便是能耗為一毫瓦的東西也只能維持大約一個(gè)月。
當(dāng)然目前大多數(shù)的產(chǎn)品周期性暫?;蛐菝叩姆绞絹砝m(xù)航,但即便這樣能量消耗也很緊張。CPU和傳感器基本不消耗電量,但信號接收和顯示屏需要很多能量。
從這些數(shù)字中我們可以看出,處理器和傳感器可以將能耗降到毫瓦的范圍(例如高通的名為“Glance”的視覺芯片、可以收集能量的感光元件,以及僅消耗幾百微瓦能量的麥克風(fēng)等),但是顯示屏,尤其是無線電接收裝置,即便使用低能耗的wifi和僅需幾十毫瓦的藍(lán)牙,其消耗的能量也非常高。
似乎只要是與傳輸數(shù)據(jù)相關(guān),其物理過程就需要很多能量。似乎有個(gè)規(guī)則說,操作需要的能量與比特傳送的距離成正比。
CPU和傳感器的傳輸距離只有幾微米,所以它們是低能耗,無線電的傳輸距離長達(dá)幾米甚至更遠(yuǎn),所以所需能量也多。我覺得,即便整體科技發(fā)展,這種關(guān)系也基本無法改變。
事實(shí)上,我看到很多可以降低計(jì)算電量消耗的機(jī)遇,因此我認(rèn)為計(jì)算和無線電所需能耗的差距會加大。
傳感器捕獲了太多用不到的數(shù)據(jù)
幾年以前,我曾跟一些從事微型衛(wèi)星捕捉影像的工程師進(jìn)行過交談。他們的問題是他們基本上只是用手機(jī)相機(jī),雖然可以拍攝高清視頻,但是他們的衛(wèi)星上只有很小的內(nèi)存來保存這些視頻,且每幾個(gè)小時(shí)只有有限的帶寬將視頻下載到地球上的基站。
我意識到我們在所有部署了傳感器的地方都面臨著相同的難題。即便是家用相機(jī)也受限于wifi和寬帶網(wǎng)絡(luò)的帶寬。
我常說的一個(gè)例子是,我有一個(gè)朋友,12月份他家網(wǎng)絡(luò)的使用會比一年中其他月份都高出很多,最后他找到了原因,因?yàn)槭フQ節(jié)閃爍的彩燈導(dǎo)致視頻壓縮率急劇降低,因?yàn)橐曨l的每一幀都不一樣!
還有更多諸如此類的例子,所有我們可穿戴的設(shè)備和手機(jī)上的加速度計(jì)都只用于探測可能喚醒設(shè)備的事件,或者只是當(dāng)作基本的計(jì)步器,而我們從沒有嘗試過用它們檢測更復(fù)雜的活動。
對機(jī)器學(xué)習(xí)的意義
如果你同意上述所有觀點(diǎn),那么很顯然大量未開發(fā)的市場正等著我們用正確的技術(shù)去解鎖。我們需要能在便宜的微型控制器上工作的東西,它能耗非常小,依賴于計(jì)算而非無線電,且可以將我們浪費(fèi)掉的傳感器數(shù)據(jù)轉(zhuǎn)換成有用的東西。這就是機(jī)器學(xué)習(xí)尤其是深度學(xué)習(xí)的發(fā)展空間。
深度學(xué)習(xí)是計(jì)算密集型,且可以在已有的微型控制器上運(yùn)行,我喜歡從事深度學(xué)習(xí)的原因之一是深度學(xué)習(xí)的實(shí)現(xiàn)幾乎全是計(jì)算密集型的。
這一點(diǎn)非常重要,因?yàn)閹缀跛形覅⑴c過的應(yīng)用程序都受到隨機(jī)訪問大量內(nèi)存時(shí)的速度的限制。相反,神經(jīng)網(wǎng)絡(luò)的大部分時(shí)間都用于大型矩陣的乘法運(yùn)算,其中大量的數(shù)字在不同的組合中反復(fù)使用。
這意味著CPU將大部分的時(shí)間耗費(fèi)在計(jì)算兩個(gè)緩存數(shù)字的乘法,而從內(nèi)存讀取新值的時(shí)間很少。
這點(diǎn)很重要,因?yàn)閺?a href="http://ttokpm.com/tags/dram/" target="_blank">DRAM(動態(tài)隨機(jī)存取存儲器)中取值消耗的能量往往是數(shù)學(xué)運(yùn)算的一千倍。這是另一個(gè)距離與能量關(guān)系的例子,因?yàn)镈RAM的物理距離要比注冊表遠(yuǎn)。
較低的內(nèi)存需求(僅需幾十或幾百個(gè)千字節(jié))還意味著我們可以使用低能耗的SRAM(靜態(tài)隨機(jī)存取存儲器)或閃存來存儲數(shù)據(jù)。這有利于深度學(xué)習(xí)應(yīng)用程序適應(yīng)微型控制器,特別是在進(jìn)行8比特運(yùn)算(非浮點(diǎn)運(yùn)算)時(shí),因?yàn)槲⑿涂刂破魍ǔVС值念愃朴?a target="_blank">數(shù)字信號處理的指令很適合這種運(yùn)算。
這個(gè)想法不是新出現(xiàn)的,蘋果和Google在這種芯片上運(yùn)行不間斷的語音識別網(wǎng)絡(luò),但是只有為數(shù)不多的幾個(gè)機(jī)器學(xué)習(xí)或嵌入式的人員意識到機(jī)器學(xué)習(xí)可以很好地與微型控制器相結(jié)合。
深度學(xué)習(xí)可以實(shí)現(xiàn)高效節(jié)能
我花了很長時(shí)間思考每個(gè)操作所需的皮焦(即10-12焦耳)數(shù)。這個(gè)指標(biāo)可以用以衡量CPU上的一條數(shù)學(xué)運(yùn)算操作所消耗的能量,它很實(shí)用,因?yàn)槿绻抑郎窠?jīng)網(wǎng)絡(luò)一次可以運(yùn)行多少個(gè)操作的話,那么我可以粗略預(yù)估它將消耗多少能量。
例如,MobileNetV2圖像分類網(wǎng)絡(luò)在最低配置下,可以運(yùn)行2200萬個(gè)操作(每個(gè)乘法加法組合是兩個(gè)操作)。如果我知道某個(gè)系統(tǒng)每執(zhí)行一個(gè)操作需要5皮焦,那么它需要花費(fèi)110微焦的能量(5皮焦 x 2200萬)。
如果我們每秒鐘分析一幀,那么能耗只有110微瓦,一個(gè)紐扣電池可以維持將近一年。這些數(shù)字利用目前的數(shù)字信號處理能力完全能夠做到,而且很可能節(jié)能還將進(jìn)一步發(fā)展。
這意味著對于使用電池的不間斷設(shè)備的電量來說,在當(dāng)前硬件上運(yùn)行已有神經(jīng)網(wǎng)絡(luò)的能耗已經(jīng)很好,而且隨著神經(jīng)網(wǎng)絡(luò)模型架構(gòu)和硬件的改善,能耗會進(jìn)一步降低。
深度學(xué)習(xí)可以合理利用感應(yīng)傳感器的數(shù)據(jù)
最近這幾年,我們忽然可以利用神經(jīng)網(wǎng)絡(luò)從充滿噪聲的圖片、音頻或加速度計(jì)的信號中提取出有意義的數(shù)據(jù)。由于我們可以在微型控制器上運(yùn)行這些神經(jīng)網(wǎng)絡(luò),而傳感器本身所需的能耗很少,所以我們可以從目前被忽略的傳感器數(shù)據(jù)中解讀出更多信息。
例如,我希望每個(gè)設(shè)備都有簡單的語音界面。通過掌握少量的詞匯,并利用圖像傳感器做視線探測,我們無需伸手按下按鈕或使用手機(jī)上的應(yīng)用,就應(yīng)該可以控制周圍環(huán)境中的一切。
我渴望有一種語音界面組件,它的價(jià)格低于50美分,并可以在一個(gè)紐扣電池上運(yùn)行一年,而且我相信以我們現(xiàn)在技術(shù)力完全可以實(shí)現(xiàn)。
再舉一個(gè)例子,我希望有一種微型的用電池的圖像傳感器,我可以編程讓它幫忙照看農(nóng)作物,一旦發(fā)現(xiàn)害蟲或雜草就發(fā)出警告。這些傳感器可以散布到田地中,指導(dǎo)我們用更加環(huán)保和友好的方式處理雜草和殺蟲。
有一個(gè)工業(yè)上的例子讓我印象深刻,有一個(gè)叫做“漢斯”的工廠工人,他是長期的工程師,每天早上他都在一排排的機(jī)器旁忙碌,將一只手放在機(jī)器上,傾聽,然后根據(jù)經(jīng)驗(yàn)和直覺告訴工頭哪臺機(jī)器需要暫停維修。
每個(gè)工廠都有一個(gè)這樣的人,但是很多人馬上就要面臨退休了。如果可以將一個(gè)使用電池的加速器和話筒放在每臺機(jī)器上(“機(jī)器漢斯”),用于學(xué)習(xí)正常的操作和信號,這樣就可以在異常情況發(fā)生之前找到問題。
我可以想象出一百個(gè)其他的產(chǎn)品,但是坦白說我最感興趣的是,我想象不出應(yīng)該如何使用這些新的設(shè)備,因?yàn)檫@些產(chǎn)品背后的技術(shù)如此讓人嘆為觀止,所以人們會創(chuàng)建這樣的產(chǎn)品,并會涌現(xiàn)我無法想象的全新的應(yīng)用程序。
對于我來說,這種感覺有點(diǎn)像一個(gè)18歲的孩子擁有第一臺計(jì)算機(jī)。我不知道情況會變成怎樣,目前大多數(shù)的人僅用機(jī)器學(xué)習(xí)玩游戲或存地址薄,但是我知道很許許多多可能的新世界將會出現(xiàn)。
總結(jié)
與發(fā)送文檔相比,我們更傾向于面對面會議的唯一理由是,信息背后的情緒也可以得到溝通。我希望與CogX的觀眾分享的是,我很感興趣,也很確信在微型設(shè)備上運(yùn)用機(jī)器學(xué)習(xí)的未來,雖然一篇博文并不能起到太大作用,但是我希望我介紹了一些有用的觀點(diǎn)。
我并不清楚未來將會怎樣,但是我知道微型、廉價(jià)、使用電池的芯片上的機(jī)器學(xué)習(xí)即將到來,它可以為偉大的新應(yīng)用程序打開大門!
作者:Pete Warden,曾擔(dān)任Jetpac(該公司被Google收購)的CTO,現(xiàn)在Google的TensorFlow團(tuán)隊(duì)擔(dān)任深度學(xué)習(xí)的工作。主要著作有The Public Data Handbook和The Big Data Glossary(O'Reilly出版),創(chuàng)建了OpenHeatMap、the Data Science Toolkit,以及其他開源項(xiàng)目。
評論
查看更多