TinyML 適合單片機的機器學習
機器學習(ML)作為人工智能的一個子類,在各個領域(包括大氣科學和計算機視覺)都得到了廣泛的應用。正如哈佛大學博士Matthew Stewart所說,tinyML 是一個新興的發(fā)展學科,它能夠在資源受限的微控制器上實現(xiàn)低資源消耗、低功耗的機器學習算法。?
C.J.Abate:讓我們從您的背景開始。您是什么時候對機器學習感興趣的? 您是因為編程或硬件設計的背景而選擇該領域的嗎??Matthew Stewart:我的本科專業(yè)是機械工程,這給了我一些編程和機電一體化的經驗。但是,直到進入哈佛大學,我才開始學習機器學習。在博士學位研究的第一年,我參加了哈佛大學的數(shù)據科學入門課程,激起了我對機器學習的興趣,那時我意識到了機器學習的巨大潛力,無論是一般性的應用,還是專門用于大氣研究的。?Abate:是什么使您進入哈佛大學的??Stewart:顯然,哈佛大學是世界上頂尖的研究機構之一,在這里學習是許多富有熱情而努力的學生的目標。我的老師的研究興趣也吸引了我,他們使用無人機研究了熱帶亞馬遜雨林。在獲得機械工程學位的過程中,我對轉向環(huán)境科學產生了興趣,因為對我來說,越來越明顯的是,現(xiàn)代時代定義的大多數(shù)工程問題將是環(huán)境問題,即氣候變化、能源安全和可持續(xù)性。根據我的興趣和工程背景,這項關于亞馬遜雨林無人機的工作似乎是理想的,是來哈佛的主要刺激因素。?Abate:作為一名環(huán)境科學家,您如何使自己了解嵌入式系統(tǒng)和編程? 要緊緊掌握Al領域的所有新發(fā)展以及傳感器技術,嵌入式系統(tǒng)等方面的創(chuàng)新一定很困難。您是如何了解這些不同學科的??Stewart:這些領域不斷地迅速發(fā)展,對許多研究生和學者來說,這是一個非?,F(xiàn)實的問題。就個人而言,我使用了幾種資源來保持學科信息的更新。首先,Twitter可以成為發(fā)現(xiàn)該領域其他學者發(fā)表的新研究的好平臺。我也是一些Slack頻道的粉絲,在該頻道中,同事定期共享有關相關主題的新聞和研究文章。我還定期回顧發(fā)表在相關期刊上的新論文,以尋找任何特別引人注目和值得詳細閱讀的東西。幸運的是,大多數(shù)已發(fā)表的作品與我自己的研究沒有什么關系,而更廣泛的趨勢往往是大學內各部門和興趣小組進行的研討會演講的主題工作。?Abate:雖然幾個月前我在一次DanielSitunayake的采訪中提到了細節(jié),但對Elektor全球社會的許多工程師來說,這仍然是一個新的主題。您如何定義tinyML? 它是否是在邊緣微控制器上運行機器學習應用程序的一種最基本的方法??Stewart:是的,這實際上就是我們的目標。tinyML不是一種特定的技術或一系列的原則,確切地說,它更像是一種涉及計算機架構、性能工程和機器學習領域協(xié)同作用的重要學科。其首要目標是在資源受到限制的微控制器上實現(xiàn)快速、低資源和高效的機器學習算法。這還可能涉及到為特定任務開發(fā)定制的硬件,開發(fā)專門為資源約束設計的新算法或新的工具來移植算法,或是優(yōu)化各種硬件架構的性能。本文提出了一個有用的指導方針,將tinyML作為機器學習的應用程序應用到小于1 MB的隨機存取內存和功耗低于1 mW 的微控制器上,但這絕不是一個嚴格或詳盡的定義。?Abate:需要明確的是,我們并非在討論像NVIDIA 和樹莓派這樣的設備,而是關注受資源限制的設備(即小于1 mW 和千字節(jié),而不是兆字節(jié)),對嗎??Stewart:是的。像樹莓派和NVIDIA這些設備并不是tinyML的重點,也不是與自動駕駛技術相關的應用,這些場景通常都需要較多的計算資源。我們研究的重點是“資源約束”。對于tinyML,我們必須就如何有效地優(yōu)化算法的性能做出明智的決定,以便適應應用程序和硬件特定的限制。?例如,在某些應用中,必須同時具有快速推斷和高精度性能,以提高推斷速度,我們可以使用8位算術代替浮點算術,但這會影響算法的準確性,也將影響算法所需的內存和計算資源。這個示例有助于理解為什么我將tinyML視為一門原始工程學科,因為我們更多考慮的是必須滿足需求,但往往是這些要求都存在直接競爭,因此必須進行平衡。?Abate:您能提供一些實際應用的例子嗎??Stewart:實際上,已經有一些在智能手機中使用tinyML的例子。其中一個重要的例子是關鍵詞發(fā)現(xiàn),它涉及檢測諸如“Hey Siri”和“Hey Google”之類的單詞。如果智能手機使用CPU 連續(xù)監(jiān)測麥克風并檢測到這些單詞,那么手機電池只能使用幾個小時。相反,一個輕量級的數(shù)字信號處理器能夠持續(xù)檢測這些單詞。當有人提及關鍵詞時立刻喚醒CPU,并驗證是否來自已知的麥克風,然后等待其他的語音輸入。?還有一個例子存在于智能手機中,用于監(jiān)測用戶何時拿起手機。來自車載慣性測量單元和陀螺儀的數(shù)據被持續(xù)監(jiān)測,當用戶拿起他們的手機時,一組信號會通知設備、喚醒CPU。?另一個有用的例子是人體檢測,連接到相機的微控制器可以檢測個體的存在。例如,檢測用戶是否佩戴口罩,這在目前疫情大流行期間特別實用。異常檢測可能成為工業(yè)中的一個重要用例,來自重型機器的信號可以被連續(xù)監(jiān)測,實現(xiàn)設備的異常檢測功能。?Abate:在2019 年,您發(fā)表了一篇引人入勝的文章———“科學研究中的機器學習危機”,探討了機器學習是否會導致科學中的“可再現(xiàn)性危機”的問題,例如,如果科學家在實驗中使用了知之甚少的ML算法,這可能意味著其他科學家無法重現(xiàn)這些原創(chuàng)性研究成果,甚至非專業(yè)人士也可以在那里發(fā)現(xiàn)問題。我認為機器學習與統(tǒng)計數(shù)據的爭論在過去一年中愈演愈烈。您現(xiàn)在如何看待這一問題??Stewart:我認為這在學術界仍然是一個重要的問題。我在此主題上發(fā)表的文章是針對可再現(xiàn)性危機的,該危機首次由哈佛商學院前教授Amy Cuddy在功率主題方面所做的一些工作上的爭議中引出。?Andrew Gelman撰寫了一篇有影響力的論文,譴責心理學領域的不良研究實踐,包括使用P圖等技術進行虛假的數(shù)據分析和挑選數(shù)據來產生具有統(tǒng)計學意義的結果。這產生了一系列旨在再現(xiàn)心理學文獻中的一些重要結果的實驗,其中許多是不可再現(xiàn)的。這暴露了研究過程中的一個缺陷,即可再現(xiàn)性研究通常沒有資金資助,因為它們被認為是不必要的并且浪費資源。從這時起,可再現(xiàn)性研究危機也被發(fā)現(xiàn)影響到其他領域,包括文學和經濟學。?自然,這種對研究過程完整性的破壞導致對使用大數(shù)據集和機器學習的擔憂。給定數(shù)據集中足夠多的變量,最終不可避免地會出現(xiàn)一些具有統(tǒng)計意義的結果。這表明虛假數(shù)據將更容易找到,但是只有在實驗被設計為專門測試該假設而不是同時進行多個假設的的情況下測試才是有效的,所以大數(shù)據可以更容易用數(shù)據進行“欺騙”。而對于機器學習呢? 機器學習的使用使它更容易“隱藏”作弊。許多機器學習算法的可解釋性降低,而且許多研究社區(qū)缺乏機器學習背景,因而在發(fā)表的研究中很難發(fā)現(xiàn)這些問題。幸運的是,解決這個問題的方法非常簡單———資助可再現(xiàn)性研究,并對研究人員關于實驗的正確設計和機器學習在研究中的應用進行培訓。?Abate:您在文章中提出了一個有趣的觀點———“機器學習算法的另一個問題是算法必須做出預測,而不能說我什么也沒找到”。聽起來機器學習并非總是有效。?Stewart:雖然我同意機器學習不適合完成一些任務,但我不認為是由于這個原因。例如,由任務轉換為二元分類問題所提出的問題之一,它們實際上可能不能被最好地總結出來,從而導致錯誤的二分法;在某些情況下,它可能更適合對靠近決策邊界的數(shù)據進行分析,而不是讓算法做出一個明確的決定。這種類型的決策有時被稱為“人類循環(huán)決策”,在所做的決定有重要影響的情況下,它將最有用,比如決定是否提供貸款或是否患有癌癥。?Abate:您認為在tinyML的哪些行業(yè)中會有巨大的創(chuàng)新機會??Stewart:總的來說,我認為在這一領域工作的許多人都在期待tinyML可以引發(fā)一場新的工業(yè)革命。出于這個原因,一些人開始將這個新設想的工業(yè)階段稱為“工業(yè)4.01階段”。在這個階段,任何使用大量loT設備的行業(yè)都將因使用tinyML 而受益匪淺,包括減少了與tinyML相關的功耗和網絡負載。?更具體地說,某些行業(yè)可能會從tinyML提供的新功能中獲得更大的好處。農業(yè)就是一個很好的例子。在農業(yè)中使用tinyML可實現(xiàn)智能感應功能,而無需連接到電網,這可以幫助確定某些作物何時要收獲或需要額外的肥料或水。?另一個很好的例子是重工業(yè),正如前面提到的那樣,通過使用異常檢測進行預測維護可以節(jié)省成本和提高效率。預先發(fā)現(xiàn)大型機械的運輸問題可能比災難性故障更便宜,生產力損失也更小。?Abate:那么那些對開發(fā)節(jié)能計算解決方案感興趣的公司呢??Stewart:蘋果和ARM 可能是目前最大的專注于節(jié)能計算的公司。高性能和高效架構的開發(fā)在智能手機中至關重要,不僅可以延長手機電池壽命,而且能夠增強功能、提升運行速度。近年來,我們看到移動架構在性能方面功率效率大幅提高,而英特爾等競爭對手的傳統(tǒng)架構則相對停滯不前。因此,移動體系結構現(xiàn)在不僅可以與更傳統(tǒng)的體系結構相媲美,還有幾個獨特的優(yōu)點,包括功率系統(tǒng)的高效率。最近,蘋果公司對外宣布了最新基于ARM 的M1芯片,聲稱它將提供Mac電腦有史以來最長的電池壽命。蘋果的這一舉動被一些人視為計算行業(yè)的一個分水嶺,未來幾年將在社區(qū)中產生連鎖效應。?Abate:請介紹一下您在無人機和化學監(jiān)測系統(tǒng)方面的工作。tinyML在您的研究中扮演什么角色??Stewart:目前,使用tinyML進行一些微無人機應用的工作已經發(fā)布。這樣做的重點是創(chuàng)造能夠借助嵌入的強化學習方法實現(xiàn)智能導航的輕量級無人機。這對于室內和室外應用中檢測氣體泄漏或定位污染物排放源等可能非常有用。?對于更廣泛的化學監(jiān)測系統(tǒng),tinyML可以提供創(chuàng)建與電網斷開的遠程定位傳感器網絡的能力,以及更智能地使用化學傳感器信息。例如,該系統(tǒng)可以被設計為只關注異常數(shù)據,而不是連續(xù)地向云服務器傳輸數(shù)據。這將減少通信系統(tǒng)上的網絡以及與執(zhí)行持續(xù)監(jiān)控相關的功耗。隨著設備數(shù)量的指數(shù)級增長,近些年來這些方面將變得越來越重要。?Abate:您的文章和研究很可能會激勵許多人更加投入地研究tinyML。專業(yè)工程師和電子愛好者或許想了解更多關于這個主題的知識。除了PeteWarden和DanielSitunay這樣的書外,您還可以推薦一些其他資源嗎??Stewart:不幸的是,尖端技術的一個缺點是往往只有少數(shù)可用的資源。話雖如此,我們還是開始看到同行中有人定期發(fā)布關于tinyML的文獻,其中相當一部分是發(fā)表在預印服務器arXiv上的。我猜測很快就會有幾家期刊專門關注這個話題。另一個資源是由TinyML基金會于2021 年3 月發(fā)布的tinyML 研究研討會(https://www.tinyml.org/researchsymposium2021/),我們可能會看到一些令人興奮的最新進展!?相關鏈接[1] Machine Learning (Elektor):www.elektormagazine.com/tags/machine-learning.[2] C. Abate,"TheFuture of Machine Learning:An Interviewwith Daniel Situnayake/", ElektorMagazine.com,8/26/2020:www.elektormagazine.com/mlsitunayake.[3] M. Stewart,"TheMachine Learning Crisis in ScientificResearch/",TowardsDataScience.com,11/18/2019:http://bit.ly/ml-crisis-stewart.[4] Cornell University,"Hardware Architecture",arXiv.org:https://arxiv.org/list/cs.AR/recent.本文授權來自本刊的合作伙伴Elektor媒體集團,如果希望免費訂閱Elektor 的英文在線內容,請訪問https://www.elektormagazine.com/。—— The End?——