基于設(shè)備的機(jī)器學(xué)習(xí):一個(gè)算法與學(xué)習(xí)理論的角度
【#文獻(xiàn)研讀# 設(shè)備上的機(jī)器學(xué)習(xí):一個(gè)算法與學(xué)習(xí)理論的角度】摘要:目前在設(shè)備上使用機(jī)器學(xué)習(xí)模型的方式是在云中訓(xùn)練一個(gè)模型,并使用在設(shè)備上訓(xùn)練過的模型來執(zhí)行推理 。然而,隨著智能設(shè)備數(shù)量的增加和硬件的改進(jìn),人們對(duì)對(duì)設(shè)備進(jìn)行模型訓(xùn)練很感興趣 。鑒于這種興趣的激增,從與設(shè)備無關(guān)的角度對(duì)該領(lǐng)域進(jìn)行全面的調(diào)查,為理解最先進(jìn)的技術(shù)和確定開放的挑戰(zhàn)和未來的研究途徑奠定了基礎(chǔ) 。由于設(shè)備上學(xué)習(xí)是一個(gè)廣闊的領(lǐng)域,與人工智能和機(jī)器學(xué)習(xí)中的大量相關(guān)主題(包括在線學(xué)習(xí)、模型適應(yīng)、一/幾樣本學(xué)習(xí)等)有關(guān) , 因此在一次調(diào)查中覆蓋如此大量的主題是不切實(shí)際的 。相反,這項(xiàng)調(diào)查發(fā)現(xiàn)了一個(gè)中間地帶,通過將設(shè)備上學(xué)習(xí)的問題重新定義為資源受限的學(xué)習(xí),其中資源是計(jì)算和記憶的 。這種重新制定允許對(duì)來自各種研究領(lǐng)域的工具、技術(shù)和算法進(jìn)行公平的比較 。除了總結(jié)最新的技術(shù)狀況外 , 該調(diào)查還確定了在設(shè)備上學(xué)習(xí)的算法和理論方面所面臨的一些挑戰(zhàn)和下一步的步驟 。
1.前言
在設(shè)備上添加智能可以帶來無縫體驗(yàn),適合每個(gè)用戶的特定需求matlab語言常用算法程序集,同時(shí)保持其個(gè)人數(shù)據(jù)的完整性 。目前制造這種智能設(shè)備的方法是基于云范例,即數(shù)據(jù)在設(shè)備級(jí)別收集并轉(zhuǎn)移到云中 。一旦傳輸,這些數(shù)據(jù)就會(huì)與從其他設(shè)備收集的數(shù)據(jù)聚合,進(jìn)行處理,并用于訓(xùn)練機(jī)器學(xué)習(xí)模型 。當(dāng)訓(xùn)練完成后,所得到的模型被從云推回設(shè)備,在那里它被用來改善設(shè)備的智能行為 。在云范式中,所有發(fā)生在設(shè)備上的機(jī)器學(xué)習(xí)都是推理,即在云中訓(xùn)練的模型的執(zhí)行 。這種分離的角色——數(shù)據(jù)收集和推理的邊緣 , 數(shù)據(jù)處理和模型訓(xùn)練云是自然考慮到終端用戶設(shè)備的形式因素和成本考慮,限制的計(jì)算能力和內(nèi)存支持,以及他們消耗的能量 。
基于云的系統(tǒng)可以訪問幾乎無限的資源,并且只受到成本考慮的限制,這使得它們成為數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)處理和模型構(gòu)建等資源密集型任務(wù)的理想選擇 。然而,隨著人工智能成為消費(fèi)者生活中無處不在的一個(gè)方面,基于云計(jì)算的范式也存在一些缺點(diǎn),這些缺點(diǎn)將變得更加明顯 。主要考慮的是用戶數(shù)據(jù)的隱私和安全性,因?yàn)檫@些數(shù)據(jù)需要傳輸?shù)皆撇o限期地存儲(chǔ)在那里 。用戶數(shù)據(jù)的傳輸容易被干擾和捕獲,而存儲(chǔ)的數(shù)據(jù)也留下了未經(jīng)授權(quán)的訪問的可能性 。
除了隱私和安全問題,對(duì)智能設(shè)備的期望將是他們的行為是專門為每個(gè)消費(fèi)者定制的 。然而,云訓(xùn)練的模型不那么個(gè)性化 , 因?yàn)樗鼈兪怯蓮脑S多消費(fèi)者聚合的數(shù)據(jù)構(gòu)建的 , 而且每個(gè)模型都是它是針對(duì)廣泛的用戶群體而構(gòu)建的 , 因?yàn)闉槊總€(gè)消費(fèi)者和每個(gè)設(shè)備構(gòu)建單獨(dú)的模型是成本高昂的 。這種去個(gè)性化也適用于聯(lián)邦學(xué)習(xí)等分布式范式 , 這些范式通常傾向于改進(jìn)基于平均單個(gè)模型[85]的全局模型 。
最后,支持人工智能的設(shè)備也將立即學(xué)習(xí)并響應(yīng)新的場(chǎng)景,但基于云的訓(xùn)練速度緩慢,因?yàn)樾枰~外的時(shí)間從設(shè)備來回傳輸數(shù)據(jù)和模型 。目前,大多數(shù)用例都不需要實(shí)時(shí)的模型更新,而且數(shù)據(jù)收集和模型更新之間的長(zhǎng)時(shí)間延遲并不是一個(gè)嚴(yán)重的缺點(diǎn) 。但是,隨著智能行為變得普遍和預(yù)期,將需要實(shí)時(shí)更新 , 比如聯(lián)網(wǎng)車輛和自動(dòng)駕駛 。在這種情況下,長(zhǎng)延遲變得站不住腳,并且需要對(duì)模型更新發(fā)生在本地而不是在云中的解決方案 。
可以通過將部分或全部模型開發(fā)轉(zhuǎn)移到設(shè)備本身上來解決云模型的缺點(diǎn) 。模型訓(xùn)練,特別是在深度學(xué)習(xí)時(shí)代,往往是模型開發(fā)過程中最耗時(shí)的部分,使其成為加快設(shè)備模型開發(fā)的明顯重點(diǎn)領(lǐng)域 。在設(shè)備上進(jìn)行模型訓(xùn)練通常被稱為邊緣學(xué)習(xí)和設(shè)備上學(xué)習(xí) 。然而,我們區(qū)分了這些術(shù)語,在邊緣學(xué)習(xí)作為一個(gè)廣泛的概念,以表示不上傳數(shù)據(jù)到云的實(shí)時(shí)或準(zhǔn)實(shí)時(shí)學(xué)習(xí)的能力,而在設(shè)備上學(xué)習(xí)專門指的是在設(shè)備本身上進(jìn)行模型訓(xùn)練的概念 。
1.1 設(shè)備上學(xué)習(xí)
邊緣設(shè)備的定義 。在我們?cè)敿?xì)闡述設(shè)備上學(xué)習(xí)之前,在設(shè)備上學(xué)習(xí)的背景下 , 定義我們所說的設(shè)備 , 或者特別是邊緣設(shè)備是很有幫助的 。我們將邊緣設(shè)備定義為其計(jì)算、內(nèi)存和能量資源受到限制且不能輕易增加或減少的設(shè)備 。這些約束可能是由于形式因素考慮(不可能添加更多的計(jì)算或內(nèi)存或電池沒有增加設(shè)備的大?。┗蠐捎誄殺究悸牽ㄓ兇愎壞目占涮砑右桓鯣PU洗衣機(jī)但這將增加其成本) 。邊緣設(shè)備的這一定義適用于所有此類消費(fèi)設(shè)備和工業(yè)設(shè)備,其中的資源限制限制了可用于構(gòu)建和訓(xùn)練人工智能模型的內(nèi)容甚至內(nèi)部計(jì)算集群都不符合邊緣定義 , 因?yàn)樗苋菀赘鶕?jù)需要提供額外的資源 。同樣地,工作站也不會(huì)被認(rèn)為是一個(gè)邊緣設(shè)備,因?yàn)樗梢灾苯痈鼡QCPUmatlab語言常用算法程序集,增加更多的內(nèi)存,甚至添加一個(gè)額外的GPU卡 。另一方面,一個(gè)標(biāo)準(zhǔn)的筆記本電腦將被認(rèn)為是一種邊緣設(shè)備,因?yàn)樗蝗菀赘鶕?jù)需要添加額外的資源 , 即使它們的資源通常遠(yuǎn)遠(yuǎn)超過通常認(rèn)為在消費(fèi)者邊緣設(shè)備中可用的資源 。
在邊緣設(shè)備上的訓(xùn)練模型 。在一個(gè)合理的時(shí)間框架內(nèi) , 在設(shè)備上訓(xùn)練模型的主要限制是在設(shè)備上缺乏計(jì)算和內(nèi)存 。通過向設(shè)備添加更多資源 , 或者更有效地使用這些資源,或者兩者結(jié)合 , 可以加快培訓(xùn)速度 。圖1顯示了這些方法可以應(yīng)用的不同層次的高級(jí)細(xì)分 。這個(gè)層次結(jié)構(gòu)中的每個(gè)級(jí)別都抽象了它以下級(jí)別的實(shí)現(xiàn)細(xì)節(jié) , 并為它上面的級(jí)別提供了一個(gè)獨(dú)立的接口 。
硬件-在層次結(jié)構(gòu)的底部是執(zhí)行所有學(xué)習(xí)算法的實(shí)際芯片組 。這一領(lǐng)域的基礎(chǔ)研究旨在改進(jìn)現(xiàn)有的芯片設(shè)計(jì)開發(fā)具有更多計(jì)算和內(nèi)存,更低功耗和占用空間的芯片),或開發(fā)具有新架構(gòu)的新設(shè)計(jì),以加快模型訓(xùn)練 。雖然硬件研究是改善設(shè)備學(xué)習(xí)的一個(gè)富有成效的途徑,但這是一個(gè)昂貴的過程,需要大量的資金支出來建立實(shí)驗(yàn)室和制造設(shè)施,而且通常需要很長(zhǎng)的開發(fā)時(shí)間 。
庫(kù)-每個(gè)機(jī)器學(xué)習(xí)算法都依賴于一些關(guān)鍵的操作(例如在神經(jīng)網(wǎng)絡(luò)的情況下的乘法加法) 。支持這些操作的庫(kù)是將硬件與學(xué)習(xí)算法分開的接口 。這種分離允許不基于任何特定硬件體系結(jié)構(gòu)的算法開發(fā) 。改進(jìn)的庫(kù)可以支持更快的算法執(zhí)行和加速設(shè)備上的訓(xùn)練 。但是,這些庫(kù)主要適合于執(zhí)行操作的硬件的獨(dú)特方面 。這種依賴關(guān)系限制了新庫(kù)所能獲得的改進(jìn)量 。
算法——由于設(shè)備上的學(xué)習(xí)技術(shù)是基于其算法實(shí)現(xiàn)的,對(duì)新算法開發(fā)的研究是提高模型訓(xùn)練效率的一個(gè)重要組成部分 。這種算法的開發(fā)可以考慮到資源約束 , 作為模型訓(xùn)練過程的一部分 。算法的開發(fā)導(dǎo)致了硬件獨(dú)立的技術(shù),但每個(gè)算法的實(shí)際性能都特定于確切的領(lǐng)域、環(huán)境和硬件,需要對(duì)每個(gè)配置進(jìn)行經(jīng)驗(yàn)驗(yàn)證 。根據(jù)每個(gè)維度中可用的選項(xiàng)的數(shù)量,驗(yàn)證空間可能會(huì)變得非常大 。
理論——每一個(gè)學(xué)習(xí)算法都是基于一個(gè)潛在的理論,以保證其性能的某些方面 。開發(fā)針對(duì)邊緣學(xué)習(xí)的新理論有助于我們理解算法在資源有限的環(huán)境下如何表現(xiàn) 。然而,雖然理論研究足夠靈活,可以應(yīng)用于各種算法和硬件系統(tǒng) , 但由于這種研究的困難,需要實(shí)現(xiàn)算法的形式才能實(shí)現(xiàn),它受到限制 。圖2顯示了邊緣學(xué)習(xí)堆棧的不同層次的擴(kuò)展層次視圖,并突出顯示了在不同層次上提高設(shè)備上的模型訓(xùn)練性能的不同方法 。硬件方法包括在設(shè)備的受限形式因素中添加額外的資源,或者開發(fā)更具資源效率的新架構(gòu) 。改進(jìn)模型訓(xùn)練的軟件方法包括提高計(jì)算庫(kù)的性能等如、Cuda、CuDNN或提高機(jī)器學(xué)習(xí)算法本身的性能 。最后,理論方法有助于指導(dǎo)對(duì)ML算法的新研究,并提高我們對(duì)現(xiàn)有技術(shù)的理解,以及它們對(duì)新問題、環(huán)境和硬件的通用性 。
1.2 本次調(diào)查范圍
目前正在進(jìn)行大量研究,主要是在學(xué)術(shù)界,從多個(gè)角度看待設(shè)備上的學(xué)習(xí) , 包括單邊與多邊設(shè)備,硬件與軟件與理論,以及應(yīng)用領(lǐng)域,如醫(yī)療保健與消費(fèi)設(shè)備與自動(dòng)駕駛汽車 。鑒于這些領(lǐng)域的大量研究,重要的是將該調(diào)查限制在一個(gè)可管理的子集,針對(duì)設(shè)備上學(xué)習(xí)最重要的方面 。
我們首先將這個(gè)調(diào)查限制在圖1中的算法和學(xué)習(xí)理論水平上 。這使我們能夠?qū)W⒂谠O(shè)備上學(xué)習(xí)的機(jī)器學(xué)習(xí)方面,并開發(fā)獨(dú)立于特定硬件的新技術(shù) 。我們還將本次調(diào)查的范圍限制在在單一設(shè)備上學(xué)習(xí) 。這一限制使調(diào)查的范圍易于管理,同時(shí)也為擴(kuò)展到分布式設(shè)置提供了基礎(chǔ) 。此外 , 在正確的抽象級(jí)別上,分布式邊緣系統(tǒng)可以被視為是一個(gè)具有額外資源集中的單個(gè)設(shè)備在通信延遲 。這種觀點(diǎn)允許我們?cè)谝院蟮碾A段將單個(gè)設(shè)備的算法和理論擴(kuò)展到分布式框架中 。這次調(diào)查的目標(biāo)是提供一個(gè)大規(guī)模的觀點(diǎn),在單個(gè)設(shè)備上的當(dāng)前最先進(jìn)的算法和理論進(jìn)展的設(shè)備上學(xué)習(xí) 。為了實(shí)現(xiàn)這一目標(biāo) , 該調(diào)查將設(shè)備上的學(xué)習(xí)重新定義為資源受限的學(xué)習(xí)之一 。這種重新表述描述了使用計(jì)算和內(nèi)存——兩種資源——在設(shè)備上學(xué)習(xí)的效率,并為公平比較不同的機(jī)器學(xué)習(xí)和人工智能技術(shù)及其在設(shè)備上學(xué)習(xí)中的適用性提供了基礎(chǔ) 。最后,本調(diào)查確定了設(shè)備上學(xué)習(xí)在算法和理論考慮方面的挑戰(zhàn),并為開發(fā)該領(lǐng)域未來的研究和發(fā)展提供了路線圖所需的背景 。
1.3如何閱讀這份調(diào)查報(bào)告
這項(xiàng)調(diào)查全面回顧了目前資源緊張?jiān)O(shè)備的最先進(jìn)的訓(xùn)練模式 。除引言和結(jié)論外 , 它被分為4個(gè)主要部分 。第2節(jié)簡(jiǎn)要介紹了這些資源及其與設(shè)備上學(xué)習(xí)的相關(guān)性 。第3節(jié)和第4節(jié)重點(diǎn)邊緣平臺(tái)層次結(jié)構(gòu)的算法和理論層次 。最后 , 第5節(jié)提供了一個(gè)簡(jiǎn)要的總結(jié),并確定了在設(shè)備學(xué)習(xí)健壯框架方面進(jìn)展的各種挑戰(zhàn) 。對(duì)于那些對(duì)設(shè)備上學(xué)習(xí)的特定方面感興趣的人,第3部分和第4部分大多是獨(dú)立的,可以單獨(dú)閱讀 。
設(shè)備上學(xué)習(xí)中的資源限制 。簡(jiǎn)要討論了區(qū)分設(shè)備上學(xué)習(xí)與基于云的系統(tǒng)的相關(guān)資源 。圖1中不同層次的大多數(shù)現(xiàn)有研究都是針對(duì)在這些資源的可用性有限時(shí)的設(shè)備上學(xué)習(xí)問題 。
算法 。研究解決了最近的算法發(fā)展,以準(zhǔn)確地捕獲軟件框架中的硬件約束 , 然后調(diào)查了考慮到資源約束的機(jī)器學(xué)習(xí)算法的最先進(jìn)水平 。本節(jié)從計(jì)算的角度(即所使用的底層計(jì)算模型)對(duì)算法進(jìn)行分類 。
理論研究從統(tǒng)計(jì)學(xué)的角度討論了設(shè)備上的學(xué)習(xí),并調(diào)查了形成了第4節(jié)中提到的大多數(shù)算法設(shè)計(jì)基礎(chǔ)的傳統(tǒng)學(xué)習(xí)理論 。后來,它解決了資源約束環(huán)境中的“不可學(xué)習(xí)性”問題 , 并調(diào)查了較新的資源約束學(xué)習(xí)理論 。這些較新的理論將資源約束(即內(nèi)存、處理速度等)抽象為信息瓶頸,并為資源約束設(shè)置下的學(xué)習(xí)提供了性能保證 。最后,第6節(jié)總結(jié)了前面的部分 , 并解決了設(shè)備上學(xué)習(xí)研究中的一些開放挑戰(zhàn) 。
結(jié)論
到目前為止,設(shè)備上的學(xué)習(xí)仍然在學(xué)術(shù)研究人員的范圍內(nèi),但隨著智能設(shè)備數(shù)量的增加和硬件的改進(jìn),人們有興趣在設(shè)備上而不是在云端進(jìn)行學(xué)習(xí) 。在該行業(yè),這種興趣主要是由硬件制造商推動(dòng)特定芯片組優(yōu)化,以及初創(chuàng)公司提供某些利基領(lǐng)域的特別解決方案 , 主要是計(jì)算機(jī)視覺和物聯(lián)網(wǎng) 。鑒于這種興趣的激增和適合在設(shè)備上學(xué)習(xí)的邊緣硬件的相應(yīng)可用性,從算法和學(xué)習(xí)理論的角度對(duì)該領(lǐng)域的全面調(diào)查為理解最先進(jìn)的技術(shù)和確定開放的挑戰(zhàn)和未來的研究途徑奠定了基礎(chǔ) 。
模型適應(yīng)、一/幾樣本學(xué)習(xí)、資源受限學(xué)習(xí)等等 。在一次調(diào)查中涵蓋如此大量的研究主題是不切實(shí)際的,但與此同時(shí) , 忽視在這些領(lǐng)域所做的工作,在任何方法比較中都留下明顯的差距 。這項(xiàng)調(diào)查發(fā)現(xiàn)了一個(gè)中間地帶,通過將設(shè)備上學(xué)習(xí)的問題重新定義為資源受限的學(xué)習(xí),其中資源是計(jì)算和內(nèi)存消耗 。這種重新制定允許對(duì)來自各種研究領(lǐng)域的工具、技術(shù)和算法進(jìn)行公平的比較 。
我們將調(diào)查限制在單個(gè)設(shè)備上學(xué)習(xí),即通過添加基于通信延遲的附加約束 , 所討論的思想可以以正常的方式擴(kuò)展到分布式設(shè)置 。我們還集中調(diào)查了設(shè)備上學(xué)習(xí)的算法和理論方面,而忽略了系統(tǒng)層面(硬件和庫(kù))的影響 。這個(gè)選擇是經(jīng)過深思熟慮的,并允許我們將設(shè)備上學(xué)習(xí)的算法方面從實(shí)現(xiàn)和硬件選擇中分離開來 。這種區(qū)別也允許我們確定可以應(yīng)用于各種系統(tǒng)的挑戰(zhàn)和未來的研究 。
基于將設(shè)備上的學(xué)習(xí)重新表述為資源受限的學(xué)習(xí) , 調(diào)查發(fā)現(xiàn)有許多領(lǐng)域需要更多的研究和開發(fā) 。在算法層面上,很明顯,目前的努力主要是為了利用已經(jīng)很輕量級(jí)的機(jī)器學(xué)習(xí)算法,或者以減少資源利用的方式限制現(xiàn)有的算法 。有許多挑戰(zhàn)我們確定在算法空間包括需要解耦算法從硬件約束,設(shè)計(jì)有效的損失函數(shù)和指標(biāo)捕獲資源約束 , 擴(kuò)展傳統(tǒng)ML算法除了當(dāng)前的工作,和處理的情況下資源預(yù)算是動(dòng)態(tài)的,而不是靜態(tài)的 。此外,還改進(jìn)了模型分析的方法需要更準(zhǔn)確地計(jì)算一個(gè)算法的資源消耗 。目前的這種測(cè)量方法是抽象的,專注于應(yīng)用軟件工程原理,如漸近分析或低級(jí)測(cè)量,如失敗或mac(乘加計(jì)算) 。這兩種方法都沒有給出資源需求的整體概念,而且在許多情況下都不是系統(tǒng)在學(xué)習(xí)過程中所需的總資源的一部分 。
最后 , 目前資源約束算法學(xué)習(xí)理論的研究主要集中在資源約束下算法的不可學(xué)習(xí)性 。最自然的一步是識(shí)別出可以保證算法的可學(xué)習(xí)性和相關(guān)的估計(jì)誤差的技術(shù) ?,F(xiàn)有的理論技術(shù)也主要這些算法的空間(內(nèi)存)復(fù)雜性,而不是它們的計(jì)算需求 。即使在可以確定滿足資源約束的理想假設(shè)類的情況下,也需要進(jìn)一步的工作來從該類中選擇最優(yōu)模型 。
本文到此結(jié)束 , 希望對(duì)大家有所幫助 。
- 在線生成 參考文獻(xiàn)格式生成器
- ?讀博期間,我發(fā)現(xiàn)學(xué)術(shù)寫作和文獻(xiàn)管理的“終極武器”
- EndNote下載 EndNote下載:文獻(xiàn)管理軟件EndNote下載安裝流程
- USB設(shè)備無法識(shí)別,怎么辦呢?下面教你解決方法!
- 圖文講解消防箱里的4個(gè)滅火設(shè)備 ?消防箱里面有什么設(shè)備
- 家用 PoE 設(shè)備簡(jiǎn)介
- 限制投屏、三臺(tái)設(shè)備登錄被封號(hào),愛奇藝會(huì)員為什么不“尊貴”了?
- 風(fēng)花雪月的文獻(xiàn)名邦,大理最值得去的20個(gè)景點(diǎn)
- 怎么找回iOS設(shè)備序列號(hào)和IMEI,趕緊看!
- 蘋果怎么從序列號(hào)查看你的設(shè)備產(chǎn)地和生產(chǎn)日期
