隨著處理效能、內存密度和系統(tǒng)整合度的提升,嵌入式視覺從傳統(tǒng)逐漸擴增到新興應用領域,市場規(guī)模在十年內必有顯著增長。目前,嵌入式視覺領域中熱門的話題之一就是機器學習。下面粵嵌淺談一下嵌入式視覺領域當中熱門的機器學習。
機器學習涵蓋多個產業(yè)重要趨勢,不僅是嵌入式視覺,而且在工業(yè)物聯(lián)網(wǎng)和云端運算中均發(fā)揮極為顯著的作用。對于不熟悉機器學習的人來說,很多時候機器學習是透過神經(jīng)網(wǎng)絡的創(chuàng)造和訓練而實現(xiàn)的。神經(jīng)網(wǎng)絡一語極為通用,包含大量截然不同的子類別。這些子類別的名稱一般用于辨識被實現(xiàn)的具體網(wǎng)絡類型。這些網(wǎng)絡在大腦皮層上建模,大腦皮層中每個神經(jīng)元接收輸入、處理后并將其傳達給另一個神經(jīng)元。因此,神經(jīng)元一般由輸入層、多個內部隱藏層和一個輸出層組成。
在簡單的層面上,神經(jīng)元取得輸入、施加權重給輸入,然后在加權輸入總和上執(zhí)行傳遞函數(shù)。其結果隨后傳遞至隱藏層中的另一層,或傳遞給輸出層。將某一階段的輸出傳遞給另一階段而不形成一個周期的神經(jīng)網(wǎng)絡被稱為“前饋神經(jīng)網(wǎng)絡”而那些存在反饋、內含定向周期的神經(jīng)網(wǎng)絡則被稱為“循環(huán)神經(jīng)網(wǎng)絡”。
在眾多機器學習應用中極為常用的神經(jīng)網(wǎng)絡之一是“深度神經(jīng)網(wǎng)絡”。這類神經(jīng)網(wǎng)絡擁有多個隱藏層,能實現(xiàn)更復雜的機器學習任務。為了確定每一層使用的權重和偏差值,必須對神經(jīng)網(wǎng)絡進行訓練。在訓練過程中,為該神經(jīng)網(wǎng)絡施加一定數(shù)量的正確輸入和錯誤輸入,并使用誤差函數(shù)教授網(wǎng)絡所需的性能。訓練深度神經(jīng)網(wǎng)絡可能需要相當龐大的數(shù)據(jù)集,才足以正確訓練所需性能。
機器學習重要的應用之一是嵌入式視覺領域。其中,各類系統(tǒng)正從視覺實現(xiàn)的系統(tǒng)演進為視覺引導的自動化系統(tǒng)。相較于其他較簡單的機器學習應用,嵌入式視覺應用主要的區(qū)別在于采用二維(2D)輸入格式。因此,在機器學習實施方案中,采用稱為卷積神經(jīng)網(wǎng)絡(CNN)的網(wǎng)絡結構,因為它們能夠處理2D輸入。
CNN是一種前饋網(wǎng)絡,其中包含多個卷積層和子采樣層以及一個單獨的全連接網(wǎng)絡,以執(zhí)行終分類。由于CNN的復雜性,它們也被歸類在深度學習類別。在卷積層中,輸入影像被細分為一系列重迭的小模塊。在進行進一步的子采樣和其它階段之前,來自該卷積的結果先使用啟動層建立啟動圖,然后應用到終的全連接網(wǎng)絡上。
對于粵嵌嵌入式視覺領域中的機器學習,在這個科技發(fā)展的信息時代,機器學習將持續(xù)作為眾多應用的重要推動因素,尤其是視覺導向的機器人或所謂的“協(xié)作機器人”應用。