傳統(tǒng)的軟件測(cè)試和debug方法很難適用于現(xiàn)代的機(jī)器學(xué)習(xí)系統(tǒng),DeepMind希望解決這一問題,開發(fā)面向預(yù)測(cè)模型的可靠驗(yàn)證工具。這篇博客描述了能嚴(yán)格識(shí)別并排除學(xué)習(xí)預(yù)測(cè)模型中的錯(cuò)誤的三種方法:對(duì)抗性測(cè)試,穩(wěn)健性學(xué)習(xí)和形式驗(yàn)證。
自計(jì)算機(jī)編程誕生以來,軟件開發(fā)中就一直沒有離開過bug。隨著時(shí)間的推移,軟件開發(fā)人員已經(jīng)建立了一套在軟件實(shí)際發(fā)布前進(jìn)行測(cè)試和debug的最佳方式,但這些方式并不適合現(xiàn)代的深度學(xué)習(xí)系統(tǒng)。
今天,機(jī)器學(xué)習(xí)的主流方法是在訓(xùn)練數(shù)據(jù)集上訓(xùn)練系統(tǒng),然后在另一組數(shù)據(jù)集上進(jìn)行測(cè)試。即使在最壞的情況下,確保系統(tǒng)穩(wěn)健性或高性能也是至關(guān)重要的。本文描述了能夠嚴(yán)格識(shí)別并排除學(xué)習(xí)預(yù)測(cè)模型中的錯(cuò)誤的三種方法:對(duì)抗性測(cè)試,穩(wěn)健性學(xué)習(xí)和形式驗(yàn)證。
機(jī)器學(xué)習(xí)系統(tǒng)一般是不穩(wěn)健的。即使在特定領(lǐng)域中表現(xiàn)優(yōu)于人類的系統(tǒng),具體情況稍微改變,往往就可能導(dǎo)致無法解決簡(jiǎn)單問題。比如圖像擾動(dòng)的問題:如果在輸入圖像中添加少量精心計(jì)算的噪聲,那么本來在圖像分類任務(wù)中表現(xiàn)超過人類的的神經(jīng)網(wǎng)絡(luò),很容易將一只樹獺錯(cuò)認(rèn)成一輛跑車。
在圖片上加上一個(gè)對(duì)抗性輸入,可能導(dǎo)致分類器將一只樹懶錯(cuò)誤識(shí)別為一輛跑車。兩個(gè)圖像在每個(gè)像素上的差異最多只有0.0078。結(jié)果第一張被歸類為三趾樹懶,置信度> 99%。第二個(gè)被歸類為一輛跑車,概率> 99%。
其實(shí)這不是什么新問題。計(jì)算機(jī)程序總是有bug。幾十年來,軟件工程師開發(fā)了種類繁多的技術(shù)工具包,從單元測(cè)試到形式驗(yàn)證。這些方法在傳統(tǒng)軟件上運(yùn)行良好,但是由于這些模型的規(guī)模和缺乏結(jié)構(gòu)性(可能包含數(shù)億個(gè)參數(shù)),想用這些方法來嚴(yán)格測(cè)試神經(jīng)網(wǎng)絡(luò)等機(jī)器學(xué)習(xí)模型是非常困難的。開發(fā)能夠確保機(jī)器學(xué)習(xí)系統(tǒng)在部署時(shí)穩(wěn)健性的新方法勢(shì)在必行。
從程序員的角度來看,與系統(tǒng)的規(guī)范(即預(yù)期功能)不一致的任何行為都屬于bug。DeepMind不僅評(píng)估了機(jī)器學(xué)習(xí)系統(tǒng)的技術(shù)是否與訓(xùn)練集和測(cè)試集一致,還評(píng)估了這些技術(shù)的作用與系統(tǒng)的期望屬性的規(guī)范描述中是否一致。這些屬性可能包括對(duì)輸入中足夠小的擾動(dòng)的穩(wěn)健性,避免災(zāi)難性故障的安全約束,或產(chǎn)生符合物理定律的預(yù)測(cè)能力等。
本文討論機(jī)器學(xué)習(xí)社區(qū)面臨的三個(gè)重要技術(shù)挑戰(zhàn),因?yàn)槲覀児餐铝τ趪?yán)格開發(fā)和部署與所需規(guī)格可靠一致的機(jī)器學(xué)習(xí)系統(tǒng):
高效測(cè)試實(shí)際功能與屬性規(guī)范的一致性。我們探索有效的方法,來測(cè)試機(jī)器學(xué)習(xí)系統(tǒng)是否與設(shè)計(jì)者和系統(tǒng)用戶所期望的屬性相一致。揭示二者差異的一種方法是在評(píng)估期間系統(tǒng)地搜索最壞情況下的結(jié)果。
訓(xùn)練機(jī)器學(xué)習(xí)模型,使其產(chǎn)生屬性一致的預(yù)測(cè)。即使有了大量的訓(xùn)練數(shù)據(jù),標(biāo)準(zhǔn)的機(jī)器學(xué)習(xí)算法也可以產(chǎn)生與理想屬性不一致的預(yù)測(cè)模型。這要求我們重新考慮訓(xùn)練算法,這些算法不僅能夠很好地?cái)M合訓(xùn)練數(shù)據(jù),而且要與屬性列表上的要求保持一致。
正式證明機(jī)器學(xué)習(xí)模型是規(guī)范性一致的。雖然形式驗(yàn)證領(lǐng)域幾十年來一直在研究這種算法,也取得了令人矚目的進(jìn)展,但很難輕易擴(kuò)展到現(xiàn)代深度學(xué)習(xí)領(lǐng)域。
測(cè)試規(guī)范一致性
面對(duì)對(duì)抗性實(shí)例下的穩(wěn)健性問題,是深度學(xué)習(xí)中研究相對(duì)充分的問題。這項(xiàng)工作的一個(gè)主要主題是評(píng)估模型在強(qiáng)對(duì)抗性攻擊下的穩(wěn)健性,以及設(shè)計(jì)可有效分析的透明模型。我們發(fā)現(xiàn)許多模型在弱對(duì)抗下進(jìn)行評(píng)估時(shí)看上去很穩(wěn)健。但遇見針對(duì)更強(qiáng)的對(duì)抗時(shí),精度幾乎下降為零。
目前大多數(shù)研究都集中在監(jiān)督學(xué)習(xí)(主要是圖像分類)的背景下,但是需要將這些想法擴(kuò)展到其他條件。在最近關(guān)于對(duì)抗災(zāi)難性故障方法的研究中,我們將這些想法用于測(cè)試確保關(guān)鍵設(shè)置的強(qiáng)化學(xué)習(xí)智能體上。開發(fā)這類自主系統(tǒng)的挑戰(zhàn)之一是,由于一個(gè)錯(cuò)誤就可能產(chǎn)生嚴(yán)重后果,因此即使非常小的失敗概率也是不可接受的。
我們的目標(biāo)是設(shè)計(jì)一個(gè)“對(duì)手”,能讓我們提前檢測(cè)這些故障。與圖像分類器一樣,針對(duì)弱攻擊進(jìn)行評(píng)估,很容易產(chǎn)生錯(cuò)誤的安全感。我們?yōu)閺?qiáng)化學(xué)習(xí)對(duì)抗性測(cè)試開發(fā)了兩種互補(bǔ)的方法。首先,使用無衍生優(yōu)化來對(duì)智能體的預(yù)期回報(bào)進(jìn)行最小化。接著,學(xué)習(xí)一種對(duì)抗值函數(shù),該函數(shù)根據(jù)經(jīng)驗(yàn)預(yù)測(cè)哪種情況最有可能導(dǎo)致智能體的失敗。然后使用此學(xué)習(xí)函數(shù)進(jìn)行優(yōu)化,將評(píng)估重點(diǎn)放在最有問題的輸入上。這些方法只構(gòu)成了豐富且不斷增長(zhǎng)的潛在算法空間的一小部分,我們對(duì)能夠?qū)χ悄荏w的未來發(fā)展進(jìn)行嚴(yán)格評(píng)估感到興奮。
這兩種方法已經(jīng)比隨機(jī)測(cè)試產(chǎn)生了很大的改進(jìn),可以在幾分鐘內(nèi)檢測(cè)到過去需要花費(fèi)數(shù)天才能發(fā)現(xiàn)(甚至完全無法發(fā)現(xiàn))的問題。我們還發(fā)現(xiàn),對(duì)抗性測(cè)試可能會(huì)發(fā)現(xiàn)我們的智能體出現(xiàn)了與隨機(jī)測(cè)試集的評(píng)估結(jié)果性質(zhì)不同的行為。
在對(duì)抗性環(huán)境下,我們發(fā)現(xiàn)執(zhí)行3D導(dǎo)航任務(wù)的智能體仍然無法在十分簡(jiǎn)單的迷宮中完全找到目標(biāo),即使它們?cè)诜菍?duì)抗性環(huán)境下的平均表現(xiàn)已經(jīng)和人類相當(dāng)。此外,我們需要設(shè)計(jì)能夠抵御自然故障的系統(tǒng)。
在隨機(jī)抽樣中,我們幾乎從來沒觀察到具有高失敗概率的地圖,但是在對(duì)抗性測(cè)試下,這樣的地圖確實(shí)存在。即使在去掉了許多墻壁之后,智能體在這些地圖下的失敗概率仍然很高。
訓(xùn)練規(guī)范一致性的模型
對(duì)抗性測(cè)試是為了找到違背規(guī)范的反例。因此往往會(huì)高估模型與這些規(guī)范的一致性。在數(shù)學(xué)上,規(guī)范是必須在神經(jīng)網(wǎng)絡(luò)的輸入和輸出之間保持的某種關(guān)系。這種關(guān)系可以通過某些關(guān)鍵輸入和輸出參數(shù)的上限和下限的形式來體現(xiàn)。
受此啟發(fā),DeepMind的團(tuán)隊(duì)和其他團(tuán)隊(duì)研究了與對(duì)抗性測(cè)試程序無關(guān)的算法(用于評(píng)估規(guī)范一致性。這可以從幾何學(xué)上理解 - 我們可以約束給定的一組輸入的情況下,限制輸出空間來最嚴(yán)重地違反規(guī)范。如果此界限范圍相對(duì)于網(wǎng)絡(luò)參數(shù)是可微分的并且可以快速計(jì)算,則可以在訓(xùn)練期間使用,通過網(wǎng)絡(luò)的每個(gè)層傳播原始邊界框。
結(jié)果表明,區(qū)間界限傳播是快速有效的,并且可以獲得強(qiáng)有力的結(jié)果。尤其是能夠降低MNIST和CIFAR-10數(shù)據(jù)集上的圖像分類中的現(xiàn)有技術(shù)的錯(cuò)誤率。
未來的下一個(gè)前沿領(lǐng)域?qū)⑹菍W(xué)習(xí)正確的幾何抽象,計(jì)算更嚴(yán)格的輸出空間過度概率。我們還希望訓(xùn)練網(wǎng)絡(luò)與更復(fù)雜的規(guī)范一致,捕獲理想的行為,比如上文提到的不變性和與物理定律的一致性。
形式驗(yàn)證
嚴(yán)格的測(cè)試和訓(xùn)練有助于構(gòu)建強(qiáng)大的機(jī)器學(xué)習(xí)系統(tǒng)。但是,沒有多少測(cè)試可以完全保證系統(tǒng)的行為符合我們的要求。在大模型中,由于輸入擾動(dòng)的選擇極為龐大,因此列舉給定輸入集的所有可能輸出(例如對(duì)圖像的無窮小的擾動(dòng))是難以處理。但是,與訓(xùn)練一樣,我們可以通過在輸出集上設(shè)置幾何邊界來找到更有效的方法。正式驗(yàn)證是DeepMind正在進(jìn)行的研究的主題。
機(jī)器學(xué)習(xí)社區(qū)已經(jīng)有了幾個(gè)關(guān)于如何計(jì)算網(wǎng)絡(luò)輸出空間上的精確幾何邊界的有趣思路。我們的方法基于優(yōu)化和二元性,將驗(yàn)證問題轉(zhuǎn)化為優(yōu)化問題。。下圖以圖形方式說明了該方法。
這種方法使我們能夠?qū)Ⅱ?yàn)證算法的適用性擴(kuò)展到更一般的網(wǎng)絡(luò)(激活函數(shù),體系結(jié)構(gòu)),更一般性的規(guī)范和更復(fù)雜的深度學(xué)習(xí)模型(生成模型,神經(jīng)過程等)
未來方向
我們需要做更多的工作來構(gòu)建自動(dòng)化工具,以確?,F(xiàn)實(shí)世界中的AI系統(tǒng)做出“正確的事情”,為實(shí)現(xiàn)這個(gè)目標(biāo),未來需要在這些方向上發(fā)力:
學(xué)習(xí)對(duì)抗性評(píng)估和驗(yàn)證:隨著AI系統(tǒng)的擴(kuò)展和復(fù)雜度的提升,設(shè)計(jì)適合AI模型的對(duì)抗性評(píng)估和驗(yàn)證算法將變得越來越困難。如果我們可以利用AI的強(qiáng)大功能來推進(jìn)評(píng)估和驗(yàn)證,那么這個(gè)過程可以大大加快,并實(shí)現(xiàn)擴(kuò)展。
開發(fā)用于對(duì)抗性評(píng)估和驗(yàn)證的公開工具:為AI工程師和從業(yè)者提供易于使用的工具是非常重要的,可以在AI系統(tǒng)造成廣泛的負(fù)面影響之前闡明其可能的故障模式。這需要一定程度的對(duì)抗性評(píng)估和驗(yàn)證算法的標(biāo)準(zhǔn)化。
擴(kuò)大對(duì)抗性實(shí)例的應(yīng)用范圍:到目前為止,大多數(shù)關(guān)于對(duì)抗性實(shí)例的研究都集中在對(duì)小擾動(dòng)(通常是圖像)的模型不變性上。這為開發(fā)對(duì)抗性評(píng)估,穩(wěn)健性學(xué)習(xí)和驗(yàn)證方法提供了極好的測(cè)試平臺(tái)。我們已經(jīng)開始探索與現(xiàn)實(shí)世界直接相關(guān)的屬性的替代規(guī)范,并對(duì)未來在這方面的研究感到興奮。
學(xué)習(xí)規(guī)范:在AI系統(tǒng)中獲得“正確”行為的規(guī)范通常難以精確表述。當(dāng)我們構(gòu)建能夠展示復(fù)雜行為并在非結(jié)構(gòu)化環(huán)境中行動(dòng)的越來越智能的代理時(shí),將需要構(gòu)建可以使用部分人類規(guī)范并從評(píng)估反饋中學(xué)習(xí)進(jìn)一步規(guī)范的系統(tǒng)。
-
機(jī)器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8406瀏覽量
132561 -
DEBUG
+關(guān)注
關(guān)注
3文章
93瀏覽量
19907 -
深度學(xué)習(xí)
+關(guān)注
關(guān)注
73文章
5500瀏覽量
121111
原文標(biāo)題:DeepMind新研究:三招解決機(jī)器學(xué)習(xí)模型debug難題
文章出處:【微信號(hào):AI_era,微信公眾號(hào):新智元】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論