當(dāng)AI出現(xiàn)問題時(shí),我們竟無能無力?
這場競賽目的是開發(fā)智能系統(tǒng),能夠自動(dòng)駕駛汽車,診斷、治療復(fù)雜的醫(yī)療狀況,甚至還能訓(xùn)練其他機(jī)器。
問題在于,沒有人十分確定該如何診斷這些系統(tǒng)中潛在的、不那么明顯的缺陷,或者更好的情況應(yīng)該是要防止它們發(fā)生。雖然機(jī)器可以很好地完成某些工作,但人類仍然需要設(shè)計(jì)系統(tǒng)來訓(xùn)練和觀察它們,并且這個(gè)系統(tǒng)還遠(yuǎn)遠(yuǎn)不夠完善。
“調(diào)試是一個(gè)開放的研究領(lǐng)域,”IBM research Almaden副總裁兼實(shí)驗(yàn)室主任Jeff Welser說?!暗俏覀冎两襁€有一個(gè)好的答案。”
在這個(gè)問題上他不是一個(gè)人。盡管人工智能、深度學(xué)習(xí)和機(jī)器學(xué)習(xí)正在被應(yīng)用于包括半導(dǎo)體設(shè)計(jì)和制造業(yè)在內(nèi)的多個(gè)行業(yè),但重點(diǎn)在于如何使用這些技術(shù),而不是在出了差錯(cuò)時(shí)發(fā)生了什么。
“調(diào)試是一個(gè)開放的研究領(lǐng)域,但這個(gè)問題沒有解決。”ANSYS首席技術(shù)專家這樣表示。
至少部分問題是,沒人能完全確定一旦設(shè)備被訓(xùn)練后會(huì)發(fā)生什么,特別是在深度學(xué)習(xí)、人工智能以及各種神經(jīng)網(wǎng)絡(luò)方面。
企業(yè)解決方案技術(shù)副總裁、杰出的發(fā)明家Steven Woo表示,調(diào)試是建立在理解的基礎(chǔ)上的,關(guān)于大腦是如何運(yùn)作的,還有很多需要學(xué)習(xí)。所以從傳統(tǒng)意義上來說,調(diào)試仍然是一個(gè)挑戰(zhàn),因?yàn)樾枰私夂螘r(shí)發(fā)生了錯(cuò)誤并進(jìn)行錯(cuò)誤分類。我們需要進(jìn)一步研究“我不知道”類型的分類。
這與科幻小說中描述的一些場景相去甚遠(yuǎn),在科幻小說中,機(jī)器可以控制整個(gè)世界。錯(cuò)誤的算法可能導(dǎo)致在某處發(fā)生意外,如果它涉及到功能安全系統(tǒng),可能會(huì)造成不可預(yù)估的危害;其他情況下,它可能會(huì)使機(jī)器產(chǎn)生惱人的行為。但是人工智能(AI)、深度學(xué)習(xí)(DL)和機(jī)器學(xué)習(xí)(ML)的不同之處在于,僅僅通過一個(gè)軟件補(bǔ)丁修復(fù)這些bug是不可行的。更何況,這些bug可能在數(shù)月或數(shù)年內(nèi)都不會(huì)出現(xiàn),或者直到與其他設(shè)備進(jìn)行交互才出現(xiàn)。
Synopsys嵌入式視覺處理器產(chǎn)品營銷經(jīng)理則這樣認(rèn)為,如果我們正在訓(xùn)練一個(gè)網(wǎng)絡(luò),那么它的吸引力就在于我們可以讓它更快、更準(zhǔn)確。一旦我們訓(xùn)練的網(wǎng)絡(luò)出了問題,只能追蹤到代碼。現(xiàn)在,調(diào)試成了一個(gè)棘手的問題,而且它并不是一個(gè)能提前避免的事情。
什么足夠好?
“什么足夠好?”是半導(dǎo)體行業(yè)一個(gè)潛在主題,答案因市場、應(yīng)用的不同而有很大差異。就算在在同一設(shè)備中,不同功能之間甚至都可能有所不同。例如,在玩手機(jī)游戲的時(shí)候,出現(xiàn)bug會(huì)很煩人,可能需要重新啟動(dòng)才能解決;但如果打不了電話,那我們可能會(huì)直接選擇換掉手機(jī)。對(duì)于工業(yè)設(shè)備,這項(xiàng)技術(shù)可能直接與收入掛鉤,因此它可能是計(jì)劃維修更換的一部分,而不是等待失敗。
對(duì)于人工智能,深度學(xué)習(xí)和機(jī)器學(xué)習(xí),則不存在上面那樣的標(biāo)準(zhǔn)。推斷結(jié)果是數(shù)學(xué)分布,而不是固定的數(shù)字或行為。
eSilicon市場副總裁在某次采訪中表示:而它們最大的問題是,是否正確,以及如何與人類相提并論。是否當(dāng)它們超越人類時(shí),就可以認(rèn)為它們足夠好了?事實(shí)上,這個(gè)問題可能我們永遠(yuǎn)也無法證明。所有這些都是訓(xùn)練數(shù)據(jù)的結(jié)果,一般來說,擁有的訓(xùn)練數(shù)據(jù)越多,就越接近完美。這也是與以往最大不同的地方,因?yàn)檫^去我們只關(guān)心算法和布線是否正確。
這是一個(gè)可能會(huì)出現(xiàn)問題的地方。雖然在批量制造方面有大量的數(shù)據(jù),但設(shè)計(jì)方面卻少得多。
“對(duì)我們來說,每顆芯片都是如此獨(dú)特,我們只處理幾百個(gè)系統(tǒng),所以輸入數(shù)據(jù)量很小,”ArterisIP首席技術(shù)官說?!斑@個(gè)東西是一個(gè)黑盒子。如何處理以前從未處理過的事情,特別是涉及偏見和道德的問題。需要更多的訓(xùn)練數(shù)據(jù)?!?/p>
對(duì)于AI/DL/ML,即使是對(duì)bug的定義,也是不同的。
因?yàn)樗惴ㄐ阅茉谝粋€(gè)領(lǐng)域中得到了發(fā)展,而它又不是確定性的,所以bug的定義也會(huì)改變。有時(shí)候,可能無法從這類算法中分離出一個(gè)作為bug的特定輸出,因?yàn)樗腔谒惴ㄖ胁东@的進(jìn)化概率分布。
但我們可以通過預(yù)先設(shè)定算法可接受行為的明確邊界條件,來避免這種情況。然而,理解這些邊界條件并不簡單,一則算法本身處于不斷優(yōu)化的狀態(tài),再則是這些算法被廣泛用于各種應(yīng)用中。
了解未知的
調(diào)試AI/ML/DL的一個(gè)起點(diǎn)是描述你所做的和不理解的。
這在機(jī)器學(xué)習(xí)中比在深度學(xué)習(xí)中簡單,這兩者都適合在AI的保護(hù)傘下,因?yàn)樗惴ū旧砀唵巍I疃葘W(xué)習(xí)是一種基于多層矩陣的數(shù)據(jù)表示,其中每一層使用上一層的輸出作為輸入。機(jī)器學(xué)習(xí)則使用為特定任務(wù)開發(fā)的算法。
在一個(gè)生產(chǎn)環(huán)境中,我們要知道哪里出了問題。可以了解機(jī)器學(xué)習(xí)算法來自于哪個(gè)模型,并對(duì)不同的算法進(jìn)行大量比較,但不同產(chǎn)品之間可能會(huì)有所不同??赡茉诋a(chǎn)品A上,隨機(jī)森林效果不錯(cuò);而在產(chǎn)品B上,另一個(gè)算法或某種組合效果更好。但是,如果沒有大量的數(shù)據(jù),或者有很多獨(dú)立變量在改變的時(shí)候,機(jī)器學(xué)習(xí)可能就沒什么作用了。
而這正是當(dāng)下研究的重點(diǎn)。
人工智能系統(tǒng)觀察一只狗,將它識(shí)別為小狗或某種類型的狗。機(jī)器能識(shí)別五到六個(gè)特征,但這些特征是否正確?是否存在過分強(qiáng)調(diào)一個(gè)特征?這一切都將回歸到人們對(duì)機(jī)器的擅長程度上。
人們很容易理解導(dǎo)致這一決定的一系列事件,但決策過程并非如此。
一位Arm研究員說:“這或許是人工智能,就是把一些數(shù)據(jù)輸入到系統(tǒng)中,然后彈出一個(gè)答案。它不一定解釋得出這個(gè)答案的精確推理,輸入數(shù)據(jù)的屬性,強(qiáng)烈地影響了這個(gè)答案是這樣出來的。如果我們給AI程序或機(jī)器學(xué)習(xí)算法提供了更多的決策控制,對(duì)于各種各樣的環(huán)境也是有幫助的。”
訓(xùn)練數(shù)據(jù)偏差在這方面也起著關(guān)鍵作用。
這對(duì)醫(yī)療數(shù)據(jù)來說是一巨大挑戰(zhàn),因?yàn)樵谀承╊I(lǐng)域,專家們在如何給某些東西貼上標(biāo)簽的問題上存在分歧,因此不得不開發(fā)在標(biāo)簽中容忍噪音的算法。我們從算法的角度知道它在做什么,我們發(fā)現(xiàn)它告訴我們看起來有用的東西。但與此同時(shí),我們也向自己證明,不管輸入設(shè)置中出現(xiàn)任何偏差,都會(huì)影響輸出結(jié)果。這是一個(gè)關(guān)于智力的例子,或只是一個(gè)推理濫用的例子,亦或是我們還不知道的事情?
什么可行,什么不可行?
一旦錯(cuò)誤被識(shí)別出來,處理它們的實(shí)際過程也不清楚。
解決這個(gè)問題的方法之一,是從傳統(tǒng)方面著手,比如支持系統(tǒng)和優(yōu)化內(nèi)存帶寬。但沒人知道這些系統(tǒng)實(shí)際上是如何運(yùn)作的。如何配置黑盒?這可能是需要機(jī)器學(xué)習(xí)來調(diào)試機(jī)器學(xué)習(xí)的情況,需要一名主管來訓(xùn)練這些系統(tǒng),并確定什么是好的,什么是壞的。
訓(xùn)練數(shù)據(jù)的微小變化也會(huì)蔓延開來。用于培訓(xùn)一臺(tái)機(jī)器的數(shù)據(jù)可以由另一臺(tái)機(jī)器生成,后者可能實(shí)現(xiàn)不同的算法,或者它可能是實(shí)現(xiàn)相同算法的不同實(shí)例。例如,兩臺(tái)機(jī)器(兩臺(tái)機(jī)器都實(shí)現(xiàn)一種玩圍棋的算法)可能會(huì)互相玩,這樣每臺(tái)機(jī)器就會(huì)產(chǎn)生數(shù)據(jù)供給另一臺(tái)機(jī)器用來訓(xùn)練。調(diào)試原理與上述相同,因?yàn)槊總€(gè)機(jī)器的行為分別根據(jù)可接受行為的邊界條件進(jìn)行驗(yàn)證。
另一種方法是使AI/DL/ML的應(yīng)用范圍足夠小,這樣就可以在內(nèi)部不斷優(yōu)化。從TensorFlow算法開始,很快會(huì)發(fā)現(xiàn)它們是不夠的,所以要轉(zhuǎn)用隨機(jī)森林。今天我們做分析,還能夠改變方法靈活適應(yīng)。但是如何才能在一個(gè)已經(jīng)是虛構(gòu)的深度學(xué)習(xí)中做到這一點(diǎn)呢?
迄今為止取得的進(jìn)展
更令人困惑的是,所有這些系統(tǒng)都是基于訓(xùn)練算法,幾乎處于不斷變化的狀態(tài)。當(dāng)它們用于現(xiàn)實(shí)世界的應(yīng)用程序時(shí),問題就會(huì)顯現(xiàn)出來。在此基礎(chǔ)上對(duì)訓(xùn)練數(shù)據(jù)進(jìn)行修正,并對(duì)推理系統(tǒng)進(jìn)行分析和測試,以了解這些變化是如何影響行為的。
西門子商業(yè)公司Mentor產(chǎn)品營銷經(jīng)理表示:為了生成一組好的測試數(shù)據(jù),我想做很多不同的事情。我提出一套特定的刺激裝置,并且在我的模擬農(nóng)場里一天內(nèi)做了1000次測試,卻總得到同樣的結(jié)果。因?yàn)槲覍⒌玫酵瑯拥慕Y(jié)果,所以它必須做一些不同的事情。這實(shí)際上是一些方法的應(yīng)用,這些方法與我們所說的形式化技術(shù)非常相似,但這并不是純粹意義上的形式化驗(yàn)證,就像我們考慮屬性檢查和基于斷言的驗(yàn)證一樣。就形式數(shù)學(xué)而言,它是正式的。
領(lǐng)先的公司已經(jīng)為此努力了一段時(shí)間。我們還沒有看到任何商業(yè)上的東西,但你可以想象貝爾實(shí)驗(yàn)室的客戶類型。有一些客戶早就站在了這項(xiàng)技術(shù)的前沿——為自己開發(fā),不一定是用于商業(yè)目的。
未來之路
多年來,人工編寫算法由大學(xué)和研究機(jī)構(gòu)開發(fā)和測試,調(diào)試人工智能一直被擱置一旁。在過去一年里,一切都變了。機(jī)器學(xué)習(xí)、深度學(xué)習(xí)和人工智能無處不在,這項(xiàng)技術(shù)甚至在去年還在測試的系統(tǒng)中得到了更廣泛的應(yīng)用。
這種情況必須迅速改變。其中一些應(yīng)用背后的想法是,人工智能可以用于培訓(xùn)其他系統(tǒng),并提高制造業(yè)的質(zhì)量和可靠性,但只有在培訓(xùn)數(shù)據(jù)本身沒有缺陷的情況下,這種方法才有效。但也是在這一點(diǎn)上,沒有人可以很確定。
評(píng)論