AI學(xué)會灌水和造假!Google新研究揭露了AI現(xiàn)實應(yīng)用的陷阱
今天,機器學(xué)習(xí)(ML)模型得到了大規(guī)模的使用,而且影響力也越來越大。然而,當(dāng)它們被用于現(xiàn)實世界的領(lǐng)域時,往往表現(xiàn)出意想不到的行為。Google AI發(fā)文探討不規(guī)范(Underspecification)是如何給機器學(xué)習(xí)帶來挑戰(zhàn)的。
如今,機器學(xué)習(xí)(ML)模型得到了比以往任何時候都更廣泛的使用,并且它的影響力也變得越來越大。
然而,把它們放在現(xiàn)實領(lǐng)域中使用時,問題可不小,甚至經(jīng)常會出現(xiàn)一些意想不到的行為。
例如,當(dāng)分析一個計算機視覺(CV)模型的bad case的時候,研究人員有時會發(fā)現(xiàn)模型確實掌握了大部分對特征的理解能力,但對一些人類根本不會注意的、不相關(guān)的特征表現(xiàn)出驚人的敏感性。
再比如,一個自然語言處理(NLP)模型,讓它學(xué)習(xí)文本吧,它也確實在學(xué),只不過有時會依賴文本沒有直接指示的人口統(tǒng)計相關(guān)性作為依據(jù),更麻煩的是,這種錯誤還不太好預(yù)測。
其實,有些失敗的原因,是眾所周知的:例如,在不精確的數(shù)據(jù)上訓(xùn)練了ML模型,或者訓(xùn)練模型來解決結(jié)構(gòu)上與應(yīng)用領(lǐng)域不匹配的預(yù)測問題。
然而,即使處理了這些已知的問題,模型行為在部署中仍然是不一致的,甚至在訓(xùn)練運行之間也是不同的。
影響ML模型信度的罪魁:不規(guī)范
谷歌團隊在「Journal of Machine Learning Research」上發(fā)表了一篇論文「不規(guī)范對現(xiàn)代機器學(xué)習(xí)的可信度提出了挑戰(zhàn)」。
https://arxiv.org/pdf/2011.03395.pdf
文章中,研究人員表明:在現(xiàn)代機器學(xué)習(xí)系統(tǒng)中,一個特別容易造成故障的問題是不規(guī)范。
而且,在各種各樣的實際機器學(xué)習(xí)(ML)系統(tǒng)中都經(jīng)常會出現(xiàn)不規(guī)范,所以,谷歌對此提出了一些緩解策略。
什么是不規(guī)范?
不規(guī)范背后的意思是,雖然機器學(xué)習(xí)模型在保留的數(shù)據(jù)上進行過驗證,但這種驗證通常不足以保證模型在新環(huán)境中使用時,依然具有明確定義的行為。
ML系統(tǒng)之所以成功,很大程度上是因為它們在保留數(shù)據(jù)集上,對模型進行了驗證,靠這樣的方式來確保模型的高性能。
模型驗證流程
然而,對于固定的數(shù)據(jù)集和模型架構(gòu),通常有許多不同的方法,可以使訓(xùn)練好的模型獲得高驗證性能。
但是在標(biāo)準的預(yù)測任務(wù)中,編碼不同解決方案的模型通常被視為等價的,因為它們的持續(xù)預(yù)測性能大致相等。
但是,如果以超出標(biāo)準預(yù)測性能的標(biāo)準來衡量這些模型時,它們之間的區(qū)別就會變得很明顯,這就是要考驗這些模型對不相關(guān)的輸入擾動的公平性或魯棒性。
舉個例子,在標(biāo)準驗證中表現(xiàn)同樣出色的模型中,一些模型可能在社會群體和人種之間表現(xiàn)出比其他模型更大的性能差異,或者更加依賴不相關(guān)的信息。
輕微擾動就可以讓深度學(xué)習(xí)網(wǎng)絡(luò)完全失靈
那么,當(dāng)這些模型用于現(xiàn)實場景時,這些差異就會轉(zhuǎn)化為預(yù)測行為上的真正差異。
不規(guī)范會導(dǎo)致研究人員在構(gòu)建ML模型時想到的需求和ML管道(即模型的設(shè)計和實現(xiàn))實際執(zhí)行的需求之間的差距。
一個重要后果就是,ML管道原則上可以返回一個滿足研究需求的模型,可是,這樣一來,在實踐中,這個模型也就只能滿足對保留數(shù)據(jù)的準確預(yù)測,而對超出這些數(shù)據(jù)分布的數(shù)據(jù),它卻無能為力。
如何識別應(yīng)用中的不規(guī)范?
這項工作研究了在現(xiàn)實應(yīng)用中,使用機器學(xué)習(xí)模型時,不規(guī)范的具體含義。
谷歌給出的策略是使用幾乎相同的機器學(xué)習(xí)(ML)管道來構(gòu)建模型集,只對其施加對非常小的改變,這種改變之小,即使是對他們同時進行標(biāo)準驗證,性能也不會有實際影響。這種策略的重點是關(guān)注模型初始化訓(xùn)練和確定數(shù)據(jù)排序的隨機種子。
ML Pipeline示意圖
如果這些小變化會對模型的重要屬性帶來實質(zhì)性影響,那么,就說明ML管道沒有完全指出模型在真實世界會出現(xiàn)的行為。而研究人員在實驗的每個領(lǐng)域中,都發(fā)現(xiàn)了這些微小的變化會導(dǎo)致模型的行為在現(xiàn)實世界的使用中出現(xiàn)實質(zhì)性變化。
計算機視覺中的不規(guī)范
舉一個例子,你可以想想計算機視覺中不規(guī)范與魯棒性的關(guān)系。
計算機視覺中的一個主要挑戰(zhàn)是,深度學(xué)習(xí)模型在人類認為沒什么挑戰(zhàn)性的分布變化下,經(jīng)常會變得脆弱。
眾所周知,在ImageNet基準測試中,表現(xiàn)良好的圖像分類模型在ImageNet-C等基準測試中表現(xiàn)不佳,只不過是因為這些測試將常見的圖像損壞(如像素化或運動模糊)應(yīng)用于標(biāo)準ImageNet測試集。所以,在實驗中,標(biāo)準管道沒有規(guī)定出模型對這些破壞的敏感度。
ImageNet-C數(shù)據(jù)集樣例
按照上面的策略,使用相同的管道和相同的數(shù)據(jù)生成50個ResNet-50圖像分類模型。這些模型之間的唯一區(qū)別是訓(xùn)練中使用的隨機種子。
當(dāng)在標(biāo)準的ImageNet驗證集上進行評估時,這些模型實際上獲得了相同的性能。然而,當(dāng)模型在ImageNet-C(即在損壞的數(shù)據(jù)上)中的不同測試集上進行評估時,模型的測試性能變化比在標(biāo)準的ImageNet上驗證大幾個數(shù)量級。
就算是在大得多的數(shù)據(jù)集上進行預(yù)訓(xùn)練的大規(guī)模模型,像在JFT-300M的3億圖像數(shù)據(jù)集上預(yù)先訓(xùn)練的BiT-L模型,這種不規(guī)范持續(xù)存在。對于這些模型,在訓(xùn)練的微調(diào)階段改變隨機種子會產(chǎn)生類似的變化。
左圖:在嚴重損壞的ImageNet-C數(shù)據(jù)上,相同的隨機初始化的ResNet-50模型之間的精度變化。線條表示集合中每個模型在使用未損壞測試數(shù)據(jù)和損壞數(shù)據(jù)(像素化、對比度、運動模糊和亮度改變)的分類任務(wù)中的性能。給定值是相對于總體平均值的精度偏差,用在「干凈的」ImageNet測試集上的精度標(biāo)準偏差來衡量。黑色實線突出顯示了任意選擇的模型的性能,以顯示一個測試的性能如何不能很好地指示其他測試的性能。
右圖:標(biāo)準ImageNet測試集中的示例圖像,其中包含ImageNet-C基準測試的損壞版本。
另外,在專門為醫(yī)學(xué)成像構(gòu)建的專用計算機視覺模型中,這個問題也同樣存在。其中深度學(xué)習(xí)模型顯示出巨大的前景。
這里以兩個應(yīng)用方向為例,一個是眼科方向,用于從視網(wǎng)膜眼底圖像檢測糖尿病視網(wǎng)膜病變,另一個是皮膚病方向,從皮膚的照片判斷患者的皮膚病情況。
研究人員對實際重要的維度上對這些pipeline生成的模型進行了壓力測試。
對于眼科方向,研究人員測試了以不同隨機種子訓(xùn)練的模型,在訓(xùn)練期間未遇見的新相機拍攝的圖像時的執(zhí)行結(jié)果。
對于皮膚科方向,測試思路大致相似,但針對的是皮膚類型不同的患者。
左上:在來自不同相機類型的圖像上評估時,使用不同隨機種子訓(xùn)練的糖尿病視網(wǎng)膜病變分類模型之間的AUC變化。左下:在不同的估計皮膚類型上評估時,使用不同隨機種子訓(xùn)練的皮膚狀況分類模型之間的準確性差異(由皮膚科醫(yī)生訓(xùn)練的外行根據(jù)回顧性照片進行近似,可能會出現(xiàn)標(biāo)記錯誤)。右圖:來自原始測試集(左)和壓力測試集(右)的示例圖像。
結(jié)果顯示,標(biāo)準驗證確實不足以完全體現(xiàn)訓(xùn)練模型在這些任務(wù)上的性能。比如在眼科方向的測試中,訓(xùn)練中使用的隨機種子導(dǎo)致模型在面對新相機拍出的圖片時,出現(xiàn)了比標(biāo)準驗證集更大的變量波動。
這些結(jié)果再次表明,單獨的標(biāo)準保持測試不足以確保醫(yī)療應(yīng)用中模型的可靠性,需要對用于醫(yī)療領(lǐng)域模型的測試和驗證協(xié)議進行擴展。在醫(yī)學(xué)文獻中,這些驗證被稱為「外部驗證」。
除了醫(yī)學(xué)領(lǐng)域外,分類不規(guī)范導(dǎo)致的問題在其他應(yīng)用領(lǐng)域也同樣存在。比如:
-
在NLP任務(wù)中,分類不規(guī)范會影響由BERT模型衍生出的句子。
-
在急性腎損傷預(yù)測任務(wù)重,分類不規(guī)范會導(dǎo)致對操作信號與生理信號的更多依賴。
-
在多基因風(fēng)險評分 (PRS)任務(wù)中,分類不規(guī)范會影響 PRS 模型的性能。
結(jié)論
解決不規(guī)范問題是頗具挑戰(zhàn)性的,它需要對超出標(biāo)準預(yù)測性能的模型進行完整的規(guī)范和測試。要做到這一點,需要充分了解模型使用環(huán)境,了解如何收集訓(xùn)練數(shù)據(jù),而且在可用數(shù)據(jù)不足時,需要結(jié)合領(lǐng)域內(nèi)的專業(yè)知識。
而上述幾點恰恰在當(dāng)今的機器學(xué)習(xí)研究中經(jīng)常被低估。長期以來,對于這些領(lǐng)域的投入是不足的。
要解決這個問題,首先需要為機器學(xué)習(xí)實用模型指定新的壓力測試協(xié)議,對現(xiàn)有的測試方式進行擴展。在將新的測試標(biāo)準編入可衡量的指標(biāo)之后,通過數(shù)據(jù)增強、預(yù)訓(xùn)練和因果結(jié)構(gòu)等算法策略,可能有助于改進這些模型的性能。
但同樣應(yīng)該注意的是,理想的壓力測試和改進過程通常需要迭代,因為機器學(xué)習(xí)系統(tǒng)需求和使用它們的世界都在不斷變化。