斑馬識別成狗,AI犯錯的原因被斯坦福找到了丨開源

Pine 發自 凹非寺

量子位 | 公眾號 QbitAI

明明是隻斑馬,AI為什麼說它是一條狗?

分類模型在歸類影象時有時會錯誤地判斷類別。

經過學習的AI,還會搞砸一些預測,肯定是在其中的某個環節出現了紕漏。

斯坦福大學的兩位博士生和教授James Zou在一篇論文中,帶我們探究了分類模型犯錯的原因。

斑馬識別成狗,AI犯錯的原因被斯坦福找到了丨開源

隨後,論文提出一種方法——

反事實的概念性解釋

(Conceptual Counterfactual Explanations)

,並評估了它的效果。

透過這種方法,我們就能重新定義模型的分類標準,從而解釋AI犯錯的原因。

一起來看看吧。

AI為什麼會犯錯?

想要提高分類模型後續預測的準確性,就先得整明白這個模型在哪裡出了岔子。

一般來說,AI搞砸預測是以下原因造成的:

首先

是在模型實際預測的過程中,分類標準可能會與預訓練時有些偏差,使得訓練模型在實際預測的過程中效果不佳,進而降低預測結果的準確性。

比如說,病理學家使用預先訓練好的模型來分類組織病理學影象,但效果在他的影象上卻不是很好。

這就可能是在他的影象中,色調與原始訓練資料中不同導致的。

其次

,在模型學習的過程中,可能會學習到一種叫做“偽相關性”的東西,即將一些看似無關的要素與被識別的影象關聯起來。

可以看這個例子:

斑馬識別成狗,AI犯錯的原因被斯坦福找到了丨開源

在這個模型訓練過程中,樣本里所有狗的照片裡都有雪,這導致該模型將雪與狗聯絡在一起,並錯誤地預測:沒有雪的狗不是狗。

這可能是用的資料集,都是在同一場景下收集的,會阻礙模型的泛化。

除此之外

,也可能是在訓練模型時,人為製造的一些偏差。

例如,某一面板科專家利用訓練好的AI來分類影象中的面板病,但其他同事使用的效果卻不盡如人意。

這可能是因為在訓練的樣本中,面板的膚色單一、且年齡段分佈窄。

瞭解了AI“犯錯”的原因後,我們要怎樣才能準確地判斷模型哪裡出現了錯誤呢?

AI犯錯,它來解釋

James Zou在論文中提出了一種叫

反事實的概念性解釋

(CCE)

的方法。

具體來說,就是透過這種方法,來探究

輸入資料

與預測結果之間的聯絡,最終找到模型的錯誤之處。

那CCE是怎麼來解釋的呢?

定義概念庫

首先要做的,就是設定並細化一個概念庫C,即製作一個分類標準。

具體來說,概念庫C中的各個概念可以用來分類影象,如裝置c1

(街道、雪等)

、圖片質量c2

(清晰、模糊等)

······

這樣,就能獲得一組可解釋的概念庫C={c1,c2,…}。

然後,需要給其中的每個概念找對應訓練資料。

具體的,就是收集與其相符

(Pci)

和不符

(Nci)

的例子,一般來說數量上要一樣

(Pci=Nci=100)

對於每個概念,CCE都要學習它們的分類方法和“思維方式”。

分別透過兩種方法:

一個是透過學習支援向量機

(SVM)

,來尋找可以區分兩種事物最優方式的演算法

(線性分類器)

另一個是學習相應的概念啟用向量

(CAV)

,它可以用來解釋影象被錯誤分類的具體原因。

就像下圖,都是斑馬的影象,歸類錯誤的原因卻不一樣。

斑馬識別成狗,AI犯錯的原因被斯坦福找到了丨開源

這一步只需要對每個想要評估的模型做一次,之後CAV便可以用來解釋任意數量的錯誤分類。

給定錯誤分類標準

我們可以透過改變不同概念在模型中的比重,對其分類標準進行相應的調整,這些調整要滿足以下原則:

1、正確性:如果一個分類標準達到了預期的結果,那麼它就被認為是正確的。

2、有效性:分類標準不能違反人類的基本認知。

3、稀疏性:最終目標是向用戶傳達模型的錯誤之處,太多的變數不利於有效傳達資訊。

我們的目的是儘可能地使預測結果貼近訓練結果,即最小化交叉熵損失。

因此就要不斷最佳化模型預測的標準,透過調整待修改的標準,對其進行加權,最終達到糾正錯誤分類的效果。

瞭解之後,我們透過一個實際例子來看看,怎麼用CCE“探測”分類模型出錯的地方。

斑馬識別成狗,AI犯錯的原因被斯坦福找到了丨開源

在這裡,分類模型錯誤地將斑馬影象識別為非洲獵犬。

於是,我們首先生成這個模型將斑馬識別成狗的一系列標準。

然後,對這些標準進行評分,如果評分為正,則代表在影象中增加這個概念,將會提高正確分類的機率,反之亦然。

在這個例子中,如果增加stripes

(條紋)

這個概念,識別出它為斑馬的機率就會大一些。

在c)圖中,透過CCE分析也可以直觀地看到,“Polka Dots”

(斑點)

和“Dog”

(狗)

是導致模型預測錯誤的原因。

CCE效果怎麼樣?

看到這裡,想必大家對CCE的原理都有了初步的認識。

那它判斷得到底準不準確,效果究竟如何呢?

CCE的目的,主要是揭示模型在訓練過程中學習到的“偽相關性”,用它就可以捕獲影象中出現的其他“無關要素”和影象的偽相關性。

測試發現,在大多數情況下,該模型在

超過90%

的錯誤分類的測試樣本中識別出偽相關。

看看這個表格,相較於其他方法,使用CCE,識別出樣本中偽相關的機率最高。

斑馬識別成狗,AI犯錯的原因被斯坦福找到了丨開源

CCE能夠

精準

地識別出樣本中的偽相關,可以看這個例子:

斑馬識別成狗,AI犯錯的原因被斯坦福找到了丨開源

改變蘋果圖片的顏色

使圖片變灰)

,分類模型識別錯誤的機率增大時

(黑線)

,CCE辨別出“綠色”為偽相關的分數也就越高

(綠線)

除此之外,CCE也有用在醫學領域的潛力。

像Abubakar Abid等人就使用CCE,在面板病學

(面板狀況分類)

、胸片影象中的心臟病學

(氣胸分類)

中都做了相關測試。

斑馬識別成狗,AI犯錯的原因被斯坦福找到了丨開源

CCE使用學習到的偏差和影象質量條件來解釋模型犯錯,也已被專業的面板科醫生證實——這些因素,確實很大程度上是導致面板影象難以分類的原因。

此外,CCE的速度也很快。

概念庫只需要使用簡單的支援向量機學習一次,每個測試示例在單個CPU上花費的時間小於

0.3s

重要的是,它可以很簡單地應用到任何深度網路,在不需要訓練資料的情況下檢測到模型犯錯的原因。

如果你對這種方法感興趣,想親自試試的話,可以戳下文連結檢視。

作者介紹

斑馬識別成狗,AI犯錯的原因被斯坦福找到了丨開源

James Zou

,論文通訊作者,是斯坦福大學生物醫學資料科學系的助理教授,計算機科學與電氣工程系的助理教授。

於 2014 年獲得哈佛大學博士學位,曾是微軟研究院成員、劍橋大學蓋茨學者和加州大學伯克利分校西蒙斯研究員。

他的研究得到了 Sloan Fellowship、NSF CAREER Award 以及 Google、Amazon 和騰訊 AI 獎項的支援。

斑馬識別成狗,AI犯錯的原因被斯坦福找到了丨開源

Abubakar Abid

(前)

Mert Yuksekgonul

(後)

論文第一作者,均為斯坦福大學博士生。

參考連結:

1、https://arxiv。org/pdf/2106。12723。pdf

2、https://github。com/mertyg/debug-mistakes-cce

3、https://twitter。com/james_y_zou/status/1541452062344417280

— 完 —

量子位 QbitAI · 頭條號簽約

頂部