本文將描述一種針對(duì)網(wǎng)絡(luò)邊緣設(shè)計(jì)的基于 NN 的關(guān)鍵短語檢測(cè)解決方案。這些二值化模型可在低功耗 UltraPlus? FPGA 上運(yùn)行。本文將討論當(dāng)使用包含嘈雜背景(如音樂或聊天噪聲)的數(shù)據(jù)集訓(xùn)練 NN 時(shí),如何在嘈雜環(huán)境中使用關(guān)鍵短語檢測(cè)。在這種情況下,神經(jīng)網(wǎng)絡(luò)使用公共數(shù)據(jù)集進(jìn)行訓(xùn)練,以檢測(cè)“七”這個(gè)詞。關(guān)鍵短語檢測(cè)可用于廣泛的應(yīng)用,無需個(gè)人助理設(shè)備。可能的應(yīng)用包括智能電燈開關(guān)、智能電視和 AVR,通過音量增大和減小等命令來管理設(shè)備。
一、引言
長期以來,使用語音命令來控制人機(jī)界面 (HMI) 一直是系統(tǒng)設(shè)計(jì)人員的目標(biāo)。可以追溯到 20 世紀(jì)中葉的流行科幻電視節(jié)目和電影,例如《星際迷航》和《星球大戰(zhàn)》,向我們暗示了語音世界的樣子。但事實(shí)證明,為現(xiàn)實(shí)生活中的消費(fèi)類應(yīng)用開發(fā)低成本、高能效的解決方案是難以捉摸的。
然而,在過去幾年中,亞馬遜的 Alexa 和蘋果的 Siri 等流行的人工智能應(yīng)用程序的出現(xiàn),以及它們將語音命令轉(zhuǎn)換為系統(tǒng)操作的能力,加速了向基于語音的 HMI 的遷移。這些快速進(jìn)步為越來越多依賴關(guān)鍵短語檢測(cè)的智能家居解決方案打開了大門。如今,用戶可以要求 Alexa 在互聯(lián)網(wǎng)上訂購產(chǎn)品、開燈、鎖門、設(shè)置家庭恒溫器,甚至給草澆水。
通常,這些支持語音的 HMI 執(zhí)行識(shí)別云中的關(guān)鍵短語所需的計(jì)算。在許多情況下,設(shè)計(jì)師將他們的應(yīng)用程序插入到預(yù)先存在的基礎(chǔ)設(shè)施中,比如亞馬遜的 Alexa。然而,這種發(fā)展戰(zhàn)略面臨著一些限制。首先最重要的是成本。在云中的服務(wù)器上運(yùn)行關(guān)鍵短語檢測(cè)算法的解決方案必須在每次訪問云中的資源時(shí)按分鐘付費(fèi)。此外,構(gòu)建基于云的邊緣解決方案的開發(fā)人員必須向 NRE 支付費(fèi)用,以針對(duì)特定設(shè)備訓(xùn)練他們的解決方案,然后為他們交付的每個(gè)解決方案支付版稅。將他們的設(shè)計(jì)插入現(xiàn)有基礎(chǔ)設(shè)施的設(shè)計(jì)人員將看到他們的成本隨著他們轉(zhuǎn)向需要更強(qiáng)大的處理器來獲取數(shù)據(jù)、分析數(shù)據(jù)的 Wi-Fi 模型而增加,
此外,依賴互聯(lián)網(wǎng)連接會(huì)帶來額外的風(fēng)險(xiǎn)。如果連接中斷,使用互聯(lián)網(wǎng)連接將數(shù)據(jù)傳輸?shù)皆瓶赡軙?huì)導(dǎo)致服務(wù)中斷。通過互聯(lián)網(wǎng)傳輸數(shù)據(jù)也存在潛在的黑客攻擊風(fēng)險(xiǎn)。從用戶的角度來看,互聯(lián)網(wǎng)連接為侵犯隱私和安全問題打開了大門。依賴直接位于設(shè)備上的計(jì)算資源的邊緣解決方案避免了這些潛在問題。
二、新的方法
本文探討了一種不同的方法,可以為位于網(wǎng)絡(luò)邊緣的設(shè)備帶來成本更低的關(guān)鍵短語檢測(cè)。利用在開發(fā)高精度、緊湊和低成本的二值化神經(jīng)網(wǎng)絡(luò) (NN) 模型方面取得的進(jìn)展,以及對(duì)新一代極低功耗現(xiàn)場(chǎng)可編程門陣列 (FPGA) 的改進(jìn),設(shè)計(jì)人員現(xiàn)在可以構(gòu)建關(guān)鍵短語檢測(cè)解決方案,以執(zhí)行所有計(jì)算都在邊緣,從而消除了與云連接的 NN 關(guān)鍵詞檢測(cè)實(shí)施相關(guān)的連接性、安全性和隱私問題。
通過在本地執(zhí)行關(guān)鍵短語檢測(cè),與基于云的解決方案相比,此設(shè)計(jì)策略可顯著節(jié)省成本。它也不依賴其他生態(tài)系統(tǒng)來運(yùn)行。如果基于云的解決方案中的 Internet 連接失敗,則系統(tǒng)將失敗。本地的、基于邊緣的解決方案不會(huì)冒這種風(fēng)險(xiǎn)。安全和隱私問題不是威脅。本地解決方案更易于用戶設(shè)置和運(yùn)行。最后,使用萊迪思的超低功耗 iCE40 Ultra Plus FPGA,這種方法為設(shè)計(jì)人員提供了顯著的節(jié)能效果,這是電池供電設(shè)備的一個(gè)重要考慮因素。例如,本演示文稿中描述的解決方案僅消耗 7 mW。
將負(fù)擔(dān)得起的智能家居應(yīng)用帶到邊緣的關(guān)鍵步驟是開發(fā)能夠在低密度、低功耗 FPGA 上運(yùn)行的二值化 NN 模型。在云端使用浮點(diǎn)計(jì)算的深度學(xué)習(xí)技術(shù)對(duì)于邊緣的消費(fèi)者應(yīng)用程序是不切實(shí)際的。相反,設(shè)計(jì)人員必須開發(fā)計(jì)算效率高的解決方案,既要滿足精度目標(biāo),又要符合消費(fèi)市場(chǎng)的成本、尺寸和功率限制。因此,在邊緣工作的設(shè)計(jì)人員必須使用盡可能少的數(shù)學(xué)運(yùn)算。
設(shè)計(jì)人員可以簡(jiǎn)化計(jì)算的一種方法是從浮點(diǎn)切換到定點(diǎn)甚至基本整數(shù)。通過補(bǔ)償浮點(diǎn)到定點(diǎn)整數(shù)的量化,使用二值化神經(jīng)網(wǎng)絡(luò)的設(shè)計(jì)人員可以開發(fā)出訓(xùn)練更快、精度更高的解決方案,并將定點(diǎn)、低精度整數(shù)神經(jīng)網(wǎng)絡(luò)的性能提高到接近浮點(diǎn)版本的水平。 為了構(gòu)建簡(jiǎn)單的邊緣設(shè)備,訓(xùn)練必須創(chuàng)建具有 1 位權(quán)重的 NN 模型。這些模型稱為二值化神經(jīng)網(wǎng)絡(luò) (BNN)。
通過使用 1 位值而不是更大的數(shù)字,BNN 可以消除乘法和除法的使用。這允許使用 XOR 和彈出計(jì)數(shù)來計(jì)算卷積,從而導(dǎo)致顯著的成本和高達(dá) 16 倍的功耗節(jié)省。借助當(dāng)今的 FPGA,設(shè)計(jì)人員擁有了一個(gè)高度靈活的平臺(tái),可以提供他們所需的所有存儲(chǔ)器、邏輯和 DSP 資源。
三、神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)
下面的討論描述了一個(gè)關(guān)鍵短語檢測(cè)解決方案的示例,該解決方案專為邊緣應(yīng)用而設(shè)計(jì),并在具有 BNN 軟核的 iCE40 UltraPlus FPGA 中實(shí)現(xiàn)。在正常操作期間,關(guān)鍵短語檢測(cè)實(shí)現(xiàn)會(huì)在消耗不到 1mW 的情況下偵聽聲音。一旦系統(tǒng)檢測(cè)到聲音,它就會(huì)激活 1 秒的緩沖并調(diào)用 BNN。BNN 直接對(duì)原始輸入進(jìn)行操作,而不是傳統(tǒng)的頻譜圖和 MFCC 預(yù)處理。代表 1 秒音頻的 16K 原始樣本通過重疊的 1D 卷積層,變成 30 個(gè) 32x32x3 圖像,每個(gè)圖像代表一個(gè) 10ms 音頻樣本。然后將輸出傳遞到主 BNN 進(jìn)行處理。
BNN 有四層深,每層執(zhí)行如下所示的功能:
二進(jìn)制卷積是輸入數(shù)據(jù)和 1 位權(quán)重的 1 位乘法。在這種情況下,乘法被 XOR 函數(shù)代替。Batch Normalization 和 Scale 在 BNN 訓(xùn)練階段對(duì)激活進(jìn)行歸一化并提供幫助。整流線性單元 (ReLu) 將低于特定閾值的數(shù)據(jù)設(shè)置為 0,高于相同閾值的數(shù)據(jù)設(shè)置為 1。對(duì)圖像的每個(gè)相鄰像素執(zhí)行池化,并選擇概率最高的有意義的像素。此功能減少了后續(xù)步驟所需的計(jì)算量。全連接層通常是最后一層,它占用前一層中的每個(gè)神經(jīng)元。它對(duì)下一層的神經(jīng)元也有一定的影響。這個(gè)函數(shù)通常計(jì)算量很大,因此它是作為最后一個(gè)操作執(zhí)行的,其中神經(jīng)元顯著減少。
BNN 使用 GPU 進(jìn)行訓(xùn)練,并運(yùn)行 Café 和 TensorFlow 等標(biāo)準(zhǔn)訓(xùn)練工具。使用的訓(xùn)練數(shù)據(jù)集是一個(gè)公共訓(xùn)練集,包含 65,000 個(gè) 1K+ 人 30 個(gè)短詞的 1 秒長的話語。這個(gè)階段被稱為訓(xùn)練階段。然后,訓(xùn)練工具的輸出通過萊迪思半導(dǎo)體的 NN 編譯器工具進(jìn)行格式化,以供 FPGA 設(shè)計(jì)使用。您可以將權(quán)重視為邊緣硬件推理期間要使用的關(guān)鍵短語的模板。選擇的關(guān)鍵詞是“七”。
四。系統(tǒng)實(shí)施
為了演示系統(tǒng)的功能,工程師使用了帶有 iCE40 UltraPlus FPGA 的 HiMax HM01B0 UPduino 擴(kuò)展板。這是一款低成本的 Arduino 外形板,旨在展示 FPGA 的功能。該板有兩個(gè)直接連接到 FPGA 的 I2S 麥克風(fēng)、用于 FPGA 設(shè)計(jì)的外部閃存和權(quán)重激活存儲(chǔ)。它還具有用于指示檢測(cè)到關(guān)鍵短語的 LED。用戶可以直接對(duì)著麥克風(fēng)講話。一旦檢測(cè)到關(guān)鍵短語,LED 就會(huì)亮起。
五、業(yè)績(jī)
在此應(yīng)用中,F(xiàn)PGA 設(shè)計(jì)頻率和處理長度可以換取功耗。在 27MHz 時(shí),16K 原始樣本,相當(dāng)于 1 秒的音頻處理,可以在 25ms 內(nèi)處理,同時(shí)消耗 7.7mW。當(dāng)頻率降至 13.5MHz 時(shí),功耗降至 4.2mW,同樣的 1 秒音頻樣本在 50ms 內(nèi)處理完畢。
關(guān)鍵短語檢測(cè)通常必須在嘈雜的環(huán)境中運(yùn)行,而無需添加額外的硬件來消除噪聲和回聲。該實(shí)現(xiàn)通過使用包含嘈雜背景的數(shù)據(jù)集訓(xùn)練 NN 來實(shí)現(xiàn)這一目標(biāo),而無需定位和波束成形。訓(xùn)練有素的 NN 像人類一樣檢測(cè)關(guān)鍵詞,但有類似的限制。帶有各種隨機(jī)人群噪音水平(咖啡廳、會(huì)議等)的數(shù)據(jù)集被添加到關(guān)鍵詞中。用較高噪聲水平訓(xùn)練的 NN 對(duì)噪聲的魯棒性更強(qiáng),但需要更響亮的關(guān)鍵短語。
BNN 可以檢測(cè)多達(dá)十個(gè) 1 秒的關(guān)鍵短語,非常適合通過語音進(jìn)行 HMI。為了提高檢測(cè)精度,僅在連續(xù)檢測(cè)發(fā)生時(shí)才使用時(shí)域過濾器來報(bào)告關(guān)鍵短語檢測(cè)。該設(shè)計(jì)為單個(gè)關(guān)鍵短語提供高達(dá) 99% 的準(zhǔn)確性,為多達(dá) 5 個(gè)關(guān)鍵短語提供高達(dá) 90% 的準(zhǔn)確性。
結(jié)論
將人工智能帶到邊緣會(huì)帶來幾個(gè)重大挑戰(zhàn)。然而,它也提供了巨大的機(jī)會(huì)。正如該項(xiàng)目所展示的,使用 FPGA 實(shí)現(xiàn) BNN 而不是基于云的資源將 AI 構(gòu)建到設(shè)備中可以顯著降低硬件成本,同時(shí)加快響應(yīng)時(shí)間。同時(shí),保持本地處理可以提高安全性并節(jié)省寶貴的帶寬和服務(wù)器使用成本。
審核編輯:郭婷
-
FPGA
+關(guān)注
關(guān)注
1643文章
21954瀏覽量
613996 -
服務(wù)器
+關(guān)注
關(guān)注
13文章
9682瀏覽量
87269 -
AI
+關(guān)注
關(guān)注
87文章
34155瀏覽量
275326
發(fā)布評(píng)論請(qǐng)先 登錄
能效比達(dá)2TOPS/W!解密邊緣AI芯片低功耗設(shè)計(jì)之法
超低功耗MCU軟件設(shè)計(jì)技巧與選型

迅通科技推出PTR54H20:超低功耗藍(lán)牙6.0模塊

蜂窩物聯(lián)網(wǎng)的超低功耗特性
超低功耗藍(lán)牙6.0模塊PTR5415全新上市

DA14531-00000FX2 超低功耗藍(lán)牙5.1 SOC芯片介紹
笙泉科技超低功耗、高性價(jià)比MCU(M0+ : MG32L00)
貿(mào)澤電子開售ADI超低功耗MCU
MAX32675C超低功耗Arm? Cortex?-M4F MCU

stm32低功耗設(shè)計(jì)技巧
使用MSP430F2013進(jìn)行超低功耗運(yùn)動(dòng)檢測(cè)

超低功耗和動(dòng)態(tài)性能的線性電源

0.1mA!24GHz超低功耗人體存在毫米波雷達(dá)模組

適用于超低功耗和低功耗應(yīng)用的獨(dú)特高效隔離式DC/DC轉(zhuǎn)換器

評(píng)論