可解釋人工智能的工程師指南
掃描二維碼
隨時(shí)隨地手機(jī)看文章
機(jī)器學(xué)習(xí)(ML)算法已迅速成為我們?nèi)粘I畹囊徊糠帧C(jī)器學(xué)習(xí)是人工智能(AI)的一個(gè)分支,其用途可能超出您的想象。我們通常完全不知道這是一種算法,而且它們已經(jīng)變得無所不在,如我們的智能手機(jī)助手、交通路線規(guī)劃、網(wǎng)絡(luò)搜索結(jié)果等等,不勝枚舉。隨著復(fù)雜且多種相互關(guān)聯(lián)的算法被工業(yè)、汽車和醫(yī)療等應(yīng)用所采納,越來越需要了解 ML 算法為何能夠推斷出特定結(jié)果。術(shù)語“可解釋的 AI”(xAI)越來越多地用于描述一種算法結(jié)果和得到該結(jié)果所依據(jù)的背景因素。
本文將介紹xAI 并解釋為什么它是所有新機(jī)器學(xué)習(xí)應(yīng)用的基本考慮因素。
我們?nèi)粘I钪械娜斯ぶ悄芎蜋C(jī)器學(xué)習(xí)
很難確切地說明機(jī)器學(xué)習(xí) (ML) 何時(shí)成為我們?nèi)粘I畹囊徊糠?,因?yàn)闆]有重大發(fā)布,有時(shí)甚至沒有提及,但 ML 卻逐漸且肯定地成為我們?nèi)粘Ec技術(shù)進(jìn)行互動(dòng)的內(nèi)在組成部分。對于我們中的大多數(shù)人來說,第一次接觸ML是通過智能手機(jī)助手,比如谷歌的語音或蘋果的 Siri。ML 也迅速成為汽車高級駕駛員輔助系統(tǒng) (ADAS) 的主導(dǎo)功能,例如自適應(yīng)巡航控制 (ACC)、主動(dòng)車道輔助 (ALA) 和道路標(biāo)志識別等。還有許多其他我們可能不知道的應(yīng)用都在使用 ML,例如金融和保險(xiǎn)公司將 ML 用于各種文檔處理,醫(yī)療和保健診斷系統(tǒng)則利用 ML 檢測患者核磁共振成像(MRI) 掃描的形態(tài)以及測試結(jié)果。
ML 已迅速成為我們?nèi)粘I畹囊徊糠?,由于它能夠做出快速?zèng)Q策,我們很快就依賴它的這種能力。
了解算法的決策過程
我們傾向于信任和依賴基于機(jī)器學(xué)習(xí)應(yīng)用做出的決定,但最近也導(dǎo)致一些消費(fèi)者和職業(yè)道德團(tuán)體提出了他們的擔(dān)憂。
要了解 ML 系統(tǒng)如何確定結(jié)果概率,讓我們簡要回顧一下它的工作原理。
機(jī)器學(xué)習(xí)使用一種算法來模擬人腦的決策過程。我們大腦中的神經(jīng)元會以神經(jīng)網(wǎng)絡(luò)中基于數(shù)學(xué)的模型被復(fù)制并創(chuàng)建算法,人工神經(jīng)網(wǎng)絡(luò) (ANN) 算法與我們的大腦一樣,可以根據(jù)其獲得的知識以一定的概率推斷出結(jié)果。正如我們從出生那一刻起就所做的那樣,人工神經(jīng)網(wǎng)絡(luò)是通過不斷學(xué)習(xí)來發(fā)展理解,而訓(xùn)練 ANN 則是任何機(jī)器學(xué)習(xí)模型的基本內(nèi)容。此外,也有不同類型的神經(jīng)網(wǎng)絡(luò)模型以便適合特定任務(wù)的要求。例如,卷積神經(jīng)網(wǎng)絡(luò) (CNN) 最適合于圖像識別,而遞歸神經(jīng)網(wǎng)絡(luò) (RNN) 最適合語音處理,該模型通過處理大量訓(xùn)練數(shù)據(jù)來獲取知識。對于 CNN,您需要數(shù)以萬計(jì)不同類型動(dòng)物的圖像及其名稱,才能用于動(dòng)物識別應(yīng)用。您需要為每個(gè)物種和性別拍攝多張圖像,并需要在各個(gè)層面和角度以及不同環(huán)境光條件下拍攝照片。一旦模型完成訓(xùn)練后,測試階段將從模型尚未處理過的圖像數(shù)據(jù)開始。該模型可以根據(jù)每個(gè)測試數(shù)據(jù)圖像的概率推斷結(jié)果。推理概率隨著訓(xùn)練數(shù)據(jù)增多和神經(jīng)網(wǎng)絡(luò)的優(yōu)化而增大。
一旦所需任務(wù)的推理概率足夠高,應(yīng)用開發(fā)人員就可以部署機(jī)器學(xué)習(xí)模型。
機(jī)器學(xué)習(xí)的一個(gè)簡單基于工業(yè)網(wǎng)絡(luò)邊緣應(yīng)用是通過監(jiān)測電機(jī)的振動(dòng)特征來判斷電機(jī)的狀態(tài)。您可以通過將振動(dòng)傳感器(壓電、MEMS 或數(shù)字麥克風(fēng))添加到工業(yè)電機(jī)來記錄一組詳細(xì)的振動(dòng)特征。將具有已知機(jī)械故障(軸承磨損、驅(qū)動(dòng)器問題等)的電機(jī)帶出現(xiàn)場會增加訓(xùn)練數(shù)據(jù)的深度。生成的模型可以持續(xù)監(jiān)控電機(jī)并提供對電機(jī)健康狀況的持續(xù)監(jiān)測。這種在低功耗微控制器上運(yùn)行的神經(jīng)網(wǎng)絡(luò)稱為 TinyML。
什么是可解釋的人工智能?
正如上一節(jié)所強(qiáng)調(diào)的,一些基于 ML 的應(yīng)用輸出結(jié)果引起了人們的擔(dān)憂,即在某種程度上存在偏差。ML 和 AI 算法存在偏見的爭論來自幾個(gè)方面,人們普遍認(rèn)為所有 ML 結(jié)果都應(yīng)該更加透明、公平、合乎情理和道德。大多數(shù)神經(jīng)網(wǎng)絡(luò)都是以“黑盒”模式運(yùn)行,數(shù)據(jù)輸入,結(jié)果輸出,這種模型無法深入了解結(jié)果如何確定??傮w而言,越來越需要基于算法的決策來解釋其決策的依據(jù),決策的結(jié)果應(yīng)該是合法和合乎道德,因此是可解釋的 AI (xAI)。
在這篇簡短的文章中,我們只能簡單討論 xAI 背后的概念,但讀者會發(fā)現(xiàn)半導(dǎo)體供應(yīng)商N(yùn)XP 和管理咨詢公司PWC 的白皮書內(nèi)容非常豐富。
圖 1 突出顯示了 NXP 提出的用于開發(fā)符合道德且值得信賴的 AI 系統(tǒng)整體方法。
圖 1:NXP符合道德和值得信賴的 AI 整體方法。(來源:NXP)
為了說明 xAI 的需求,我們來看兩個(gè)可能的應(yīng)用場景。
汽車 - 自動(dòng)車輛控制:想象一下,您是一名由傳統(tǒng)司機(jī)駕駛出租車上的乘客,如果司機(jī)開得很慢,您可以問:“你為什么開這么慢?”司機(jī)隨后可以解釋說,寒冷的天氣使道路結(jié)冰,必須非常小心,以免出租車滑出路面失控。但是,在自動(dòng)駕駛出租車中,您不能要求司機(jī)解釋他們的決定。慢速?zèng)Q策可能來自幾個(gè)相互依賴的機(jī)器學(xué)習(xí)系統(tǒng)(如環(huán)境、牽引力等),所有這些系統(tǒng)共同推斷慢速是安全謹(jǐn)慎的。自動(dòng)駕駛車輛系統(tǒng)的另一部分應(yīng)以聽覺和視覺方式傳達(dá)決策背后的原因,以使乘客在旅途中保持知情和放心。
醫(yī)療保健 - 患者狀況診斷:考慮使用自動(dòng)化系統(tǒng)來加速識別不同類型的皮膚狀況?;颊咂つw異常的照片被輸入到應(yīng)用,輸出被傳遞給皮膚科醫(yī)生以提出治療建議。有許多不同類型的人類皮膚病,其中一些是暫時(shí)的,一些是永久的,而有些則很痛苦,皮膚狀況的嚴(yán)重程度從相對輕微到危及生命。由于可能的疾病范圍很廣,皮膚科醫(yī)生可能會認(rèn)為在推薦治療過程之前需要進(jìn)一步分析。如果 AI 應(yīng)用可以顯示診斷的概率和推斷出的其他高級結(jié)果,那么專家可以做出更明智的決定。
上面概述的兩個(gè)簡單應(yīng)用場景說明了為什么需要認(rèn)真考慮 xAI。對于在金融服務(wù)和治理等領(lǐng)域組織使用的 AI 和 ML,還需要考慮更多的道德和社會約束。
在設(shè)計(jì)機(jī)器學(xué)習(xí)系統(tǒng)時(shí),嵌入式開發(fā)人員應(yīng)該考慮以下幾點(diǎn)。
? 訓(xùn)練數(shù)據(jù)是否代表了要推斷項(xiàng)目中足夠廣泛和多樣化的數(shù)據(jù)再現(xiàn)?
? 是否已經(jīng)證明測試數(shù)據(jù)在所有識別分類組中都具有足夠數(shù)量的體現(xiàn)?
? 算法推斷的結(jié)果是否需要解釋?
? 神經(jīng)網(wǎng)絡(luò)能否根據(jù)排除的結(jié)果概率提供答案?
? 機(jī)器學(xué)習(xí)應(yīng)用處理數(shù)據(jù)過程中是否涉及法律或法規(guī)限制?
? 機(jī)器學(xué)習(xí)應(yīng)用是否安全,不會受到對手攻擊?
? 機(jī)器學(xué)習(xí)應(yīng)用是否可信?
機(jī)器學(xué)習(xí)應(yīng)用開發(fā)
許多嵌入式開發(fā)人員現(xiàn)在從事涉及機(jī)器學(xué)習(xí)功能的項(xiàng)目,例如介紹部分中強(qiáng)調(diào)的 TinyML 示例。然而,機(jī)器學(xué)習(xí)并不局限于基于邊緣的平臺,這些概念可高度擴(kuò)展到大型工業(yè)部署。 ML 的示例工業(yè)部署包括機(jī)器視覺、狀態(tài)監(jiān)控、安全和安保等。
領(lǐng)先的半導(dǎo)體供應(yīng)商現(xiàn)在可提供針對機(jī)器學(xué)習(xí)應(yīng)用優(yōu)化的微控制器和微處理器。這其中一個(gè)例子是 NXP iMX-8M Nano-Ultralite 應(yīng)用處理器。作為 NXP iMX-8M Plus系列的一部分,Nano-Ultralite (NanoUL) 主要配備有四核 Arm® Cortex®-A53 內(nèi)核,運(yùn)行速度高達(dá) 1.5GHz,還配備通用 Cortex-M7 內(nèi)核處理器,運(yùn)行速度高達(dá) 750MHz,用于實(shí)時(shí)和低功耗任務(wù)。
圖 2 突出顯示了 iMX-8M NanoUL 的主要功能模塊,其中包括一整套連接、外圍接口、安全功能、時(shí)鐘、定時(shí)器、看門狗和 PWM 模塊。緊湊型 NanoUL 應(yīng)用處理器的尺寸為 11 mm x 11 mm。
圖 2:NXP iMX-8 Plus NanoUL 的功能框圖。(來源:NXP)
為了幫助開發(fā)人員設(shè)計(jì) iMX-8 Plus NanoUL 應(yīng)用,NXP 可提供i.MX 8M Nano UltraLite 評估套件 ,參見圖 3,該套件包含一個(gè)基板和一個(gè) NanoUL 處理器板,能夠?yàn)殚_發(fā)機(jī)器學(xué)習(xí)應(yīng)用提供一個(gè)全面而完整的平臺。
圖 3:顯示主要組件的 NXP i.MX 8M NanoUL 評估套件。(來源:NXP)
業(yè)內(nèi)已經(jīng)建立了一個(gè)由機(jī)器學(xué)習(xí)資源、框架和開發(fā)平臺組成的生態(tài)系統(tǒng),無論是基于低功耗邊緣 MCU 還是功能強(qiáng)大的 MPU,都可用于對 ML應(yīng)用進(jìn)行原型設(shè)計(jì)。
TensorFlow Lite 是 Google 的 TensorFlow 企業(yè)級開源 ML 框架的變體,專為低功耗、資源不足的微控制器而設(shè)計(jì)。它可以在 Arm Cortex-M 系列內(nèi)核上運(yùn)行,僅占用 18 kB 內(nèi)存。TensorFlow Lite 可提供用于在嵌入式設(shè)備上部署模型的所有資源。
Edge Impulse 則采用更具包容性的方式,可提供端到端解決方案,包括攝取訓(xùn)練數(shù)據(jù),為應(yīng)用選擇最佳神經(jīng)網(wǎng)絡(luò)模型,進(jìn)行測試以及最終部署到邊緣設(shè)備。 Edge Impulse 能夠與開源 ML 框架 TensorFlow 和 Keras 配合使用。
可解釋人工智能進(jìn)展
嵌入式 ML 應(yīng)用的設(shè)計(jì)和開發(fā)為嵌入式系統(tǒng)工程師提升自己的技能提供了重要機(jī)會。在考慮最終應(yīng)用的規(guī)范和操作時(shí),也是考慮如何將可解釋 AI 原則應(yīng)用于設(shè)計(jì)的最佳時(shí)機(jī)。可解釋的AI 正在改變我們對機(jī)器學(xué)習(xí)的看法,通過把更多的特定環(huán)境、信心和信任引入到具體應(yīng)用,嵌入式開發(fā)人員在此方面大有可為。