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