將人工智能應用于嵌入式應用程序的吸引力是顯而易見的,例如,使用Face-id來授權訪問工廠地板上的機器控制。人臉識別,語音控制,異常檢測,人工智能有很多可能性。
人工智能的開發(fā)與標準嵌入式開發(fā)有很大不同。你不是在寫軟件,至少是為了核心功能。你必須訓練神經網絡來識別模式(比如圖像),然后,你必須優(yōu)化該網絡,以滿足嵌入式設備有限的占地面積,從而達到尺寸和功率目標。神經網絡可能不是傳統的代碼,但網絡及其計算仍然消耗內存和能量。作為一名嵌入式開發(fā)人員,你知道盡可能多地壓縮這些指標是多么重要?,F在讓我們至少了解一下這些神經網絡是如何工作的。
基礎
神經網絡在概念上是一系列“神經元”層。每個神經元從前一層讀取兩個(或更多)輸入或輸入數據,使用訓練好的權重進行計算,并反饋結果?;谶@些權重,層檢測特征,當你在層中移動時,特征會逐漸變得更復雜,最終在輸出端識別出復雜的圖像。
第一個聰明的部分是設計網絡——有多少層,層與層之間的連接等等——核心神經網絡算法。第二個聰明的部分是訓練。這是一個過程,在這個過程中,許多圖像在網絡中運行,并通過標簽識別應該識別的內容。這些運行建立了識別所需的權重值。
與嵌入式開發(fā)不同的是,在人工智能的開發(fā)中,你可以從零開始構建自己的神經網絡。你也可以從一個開源選項開始,比如這個face-id選項。你可以將所有這些都構建到一個可以在筆記本電腦上運行的應用程序中,這對于想要注冊新的核準面孔的客戶來說非常方便?,F在,你可以開始在多個姿勢中使用一組經批準的人臉測試集來訓練你的人際網絡。
為什么不在云端做呢?
有一些服務可以在線進行人臉識別——無需在你的設備上使用凌亂的人工智能。只需拍下照片,上傳到云端,應用程序就會傳回一個OK,你的產品就會批準下一步。
但是–所有獲得批準的員工都需要在云中保存他們的照片和其他憑證。對于安全和隱私來說,這可能不是一個好主意。每當工作人員想要訪問機器時,將圖像傳輸到云端會消耗大量的能量。如果你的互聯網連接斷開了,在它恢復之前,任何人都不能被批準。在設備上執(zhí)行正確的身份驗證可以保護隱私和安全,保持較低的電源需求,即使在網絡連接斷開時也可以繼續(xù)工作。
現在你已經完成了人工智能的硬部分,你必須將其下載到你的設備上。這本身就是一個有趣的步驟,你肯定需要AI平臺的幫助。在把 AI
技術部署于終端設備的過程中,嵌入式開發(fā)技術至關重要。簡單來說,這一過程需要對芯片進行全方位考量以評估芯片的性能,然后根據神經網絡算法做特殊化處理,無縫對接嵌入式設備的能力。既沒有浪費運算單元,又最大程度地體現算法的精度,這是一個藝術活,也是技術活。