|
學(xué)嵌入式要很聰明嗎_嵌入式系統(tǒng)的編程方式正在發(fā)生根本轉(zhuǎn)變 設(shè)計人員準(zhǔn)備擁抱AI,
最近業(yè)界一直在大力推動將人工智能(AI)嵌入到嵌入式系統(tǒng)中。其中一些是用于基于云的AI,如亞馬遜的Alexa語音服務(wù),但越來越多的引進(jìn)集中在基于硬件的AI上。許多供應(yīng)商已經(jīng)發(fā)布了處理器和協(xié)處理器,在其上提供加速或?qū)S镁矸e計算硬件來支持邊緣運(yùn)行類神經(jīng)網(wǎng)絡(luò)軟件。這樣,嵌入式系統(tǒng)就能夠在無需云連接的情況下開始執(zhí)行AI算法。
這一趨勢對嵌入式系統(tǒng)開發(fā)人員意義重大。越來越多的處理器提供AI表明,嵌入式系統(tǒng)的編程方式正在發(fā)生根本轉(zhuǎn)變。這與45年前微處理器的問世一樣,又是一場意義重大的范式轉(zhuǎn)變。
差不多在我剛上大學(xué)那會兒,英特爾推出了第一款商用微處理器4004,而在我當(dāng)工程師的第一年,看到處理器時鐘速率飆升到1MHz!在微處理器到來之前,復(fù)雜系統(tǒng)的控制需要通過使用晶體管和簡單的邏輯門,設(shè)計不靈活的梯形邏輯和狀態(tài)機(jī)來實(shí)現(xiàn)。但使用4004,開發(fā)人員創(chuàng)建的硬件設(shè)計,只需要更改內(nèi)存器件的內(nèi)容,即可對其進(jìn)行配置和改變用途。突然間,硬件設(shè)計簡化了,系統(tǒng)設(shè)計也同步加速了,甚至可以切實(shí)實(shí)現(xiàn)更快、更復(fù)雜的行為。用軟件代碼取代專用邏輯,成為嵌入式系統(tǒng)設(shè)計的核心方法;沒能快速跟上潮流的開發(fā)人員發(fā)現(xiàn)自己被邊緣化了,只能接手小眾應(yīng)用。
AI有可能對當(dāng)今的嵌入式系統(tǒng)設(shè)計人員產(chǎn)生同樣影響。系統(tǒng)操作變得愈加苛刻,系統(tǒng)行為也變得愈加復(fù)雜,這使得處理器編程的簡易性變得比其性能特征更為重要。同時,人們對復(fù)雜系統(tǒng)行為的需求一直在增加,這對開發(fā)人員編寫可靠代碼來滿足需求形成考驗。
這就成為了AI的切入點(diǎn)。開發(fā)人員可以使用AI來“教”嵌入式系統(tǒng)完成任務(wù),而不是試圖設(shè)計算法來實(shí)現(xiàn)所需任務(wù)。如果使用傳統(tǒng)的嵌入式編程技術(shù),為相機(jī)系統(tǒng)編寫代碼,讓其可以可靠檢測視野中的所有人臉,是項艱巨且容易出錯的任務(wù)。然而,借助AI系統(tǒng),通過訓(xùn)練托管的AI來完成任務(wù),然后在加裝AI的處理器上實(shí)現(xiàn)由此得到的神經(jīng)網(wǎng)絡(luò),可以快速取得驚人成果。
對于傳統(tǒng)的嵌入式開發(fā)人員,這使他們面臨一個與70年代中期的邏輯設(shè)計人員所面臨的相同選擇:學(xué)習(xí)新方法,或去冒出局的風(fēng)險。
令人高興的是,眼下的情況有些不同。開發(fā)人員不需要成為AI專家就可將AI應(yīng)用到其設(shè)計任務(wù)中,就像他們不必知道如何編寫機(jī)器代碼來對微處理器編程一樣。開發(fā)人員只需知道如何使用AI工具,了解何時應(yīng)用何種方法來實(shí)現(xiàn)其設(shè)計目標(biāo)即可。
但是,這要求開發(fā)人員去獲得新的技能并拓展新的思維方式。他們需要學(xué)習(xí)卷積神經(jīng)網(wǎng)絡(luò)、機(jī)器學(xué)習(xí)、AI訓(xùn)練方法以及如何將系統(tǒng)行為劃分為AI和算法域等課題。當(dāng)系統(tǒng)的關(guān)鍵操作特性是派生得到且未定義的,且其中間操作是隱蔽的,以至不能用傳統(tǒng)的軟件去分析系統(tǒng)時,他們還需要知道如何測試、調(diào)試和驗證系統(tǒng)行為。
AI系統(tǒng)工作是通過設(shè)置神經(jīng)網(wǎng)絡(luò)的權(quán)重來實(shí)現(xiàn)期望的結(jié)果,同時其可能含有隱藏層。由于這兩個屬性,我們很難用傳統(tǒng)方法對其進(jìn)行分析和調(diào)試。
此外,情況會繼續(xù)變得復(fù)雜。目前,嵌入式AI將主要是針對早期訓(xùn)練階段定義的相對固定的網(wǎng)絡(luò)進(jìn)行實(shí)現(xiàn)。但隨著AI邊緣處理的性能不斷提高和成本下降,未來的嵌入式AI系統(tǒng)會越來越多地被設(shè)計為自我訓(xùn)練。因此,嵌入式開發(fā)人員設(shè)計的系統(tǒng)最初將相對簡單且沒有什么差異,但隨著時間的推移,其將沿著具體安裝所特有的路徑演進(jìn),同時也仍需要母公司進(jìn)行維護(hù)、調(diào)試和升級。
AI將引發(fā)嵌入式系統(tǒng)設(shè)計方式的大規(guī)模轉(zhuǎn)變,開發(fā)人員現(xiàn)在就應(yīng)該著手準(zhǔn)備。這種轉(zhuǎn)變不會一蹴而就,它也不會以同樣的方式影響所有的嵌入式系統(tǒng),因此行業(yè)有時間適應(yīng)。但這種轉(zhuǎn)變似乎不可避免,并且可能會長期影響幾乎所有的應(yīng)用領(lǐng)域,就像過去40年來從邏輯設(shè)計向處理器編程的轉(zhuǎn)變一樣。那些希望自己的設(shè)計項項都可圈可點(diǎn)的人,需要開始學(xué)習(xí)如何嵌入AI了。 |
|