寫在前面:

不解知乎的推薦演算法,三年半以前的文章最近再次受到關注,我喜憂參半。按AI每三年一個變革的發展來看,目前真正的前沿早已跨越了三年前的討論範疇了,具體在下面。拋離了宏大的可解釋性發展路線圖的敘事框架,孤立的語義層面的解釋只算是工程技術,而非科學。真正的前沿可解釋性問題需要更嚴謹的科學理論,要有體系,更加激進,也是可以被少數人推動的。

【1】IJCAI 2021 Tutorial on Theoretically Unifying Conceptual Explanation and Generalization of DNNs [Website]

【2】IJCAI 2020 Tutorial on Trustworthiness of Interpretable Machine Learning [Website]

【3】世界人工智慧大會(WAIC)可信AI論壇 Panel Discussion [Website]

————————————

大家好,我叫張拳石,UCLA博士後。目前在朱松純老師的實驗室,帶領一個團隊,做explainable AI方向。本文的題目有些大,這篇短文中,我只簡單談談個人對deep learning發展狀況的感受,和我最近的explanatory graph for CNNs和interpretable CNN兩個研究課題。

當deep learning剛剛在CV圈子裡面興起的時候,我並沒有第一時間給予足夠的關注,直到幾個月後,變革的巨浪拍下,舊方向消亡的速度和新技術誕生的節奏都大大超過我的預期。相信很多人都有類似的感覺。一方面,deep learning超強的performance終結了一批舊的演算法。另一方面,相比於傳統graph-based methods,deep learning大大降低了演算法多樣性,簡化了演算法設計的複雜度。一時間,做CV研究的思路變得非常清晰:設計一個新的loss,提出一個新的網路結構,把傳統的heuristic方法hard encoded到網路結構中去實現端對端學習。一兩項技術能夠把CV領域改造到這種地步,deep learning為AI帶來巨大的改變。

然而當端對端學習神經網路猶如烈火烹油迅速發展的時候,我和周圍的很多學者不時的會感覺到一絲的隱憂:端對端的訓練一個black-box model會一直平穩的向下發展嗎?隨著網路結構和loss function的設計越來越複雜,神經網路真的會按照設計老老實實的去表達人們希望它表達的知識嗎?抱著這樣的焦慮,很多學者致力於visualization of CNN knowledge,讓CNN中每個unit的知識清晰的展現在人們的面前。更進一步,@周博磊定義出一系列標準去評測CNN知識的interpretability。

但是歸根結底,在端對端學習之外,我覺得還需要找到一套新的神經網路操作工具,即讓神經網路具有清晰的符號化的內部知識表達,去匹配人類自身的知識框架,從而人們可以在語義層面對神經網路進行診斷和修改。從logic-based專家系統,到graphical model,再到深度神經網路,模型的flexibility和performance逐漸提高。但是,從相反的方向,把一個神經網路的內部邏輯轉化成graphical representations,或者logic-based rules,從而提高知識表達的interpretability。有了清晰的內部表達,那麼對神經網路的訓練是不是不但可以end-to-end,而且可以end-to-middle,middle-to-middle?當網路內部一些單元具有了某種語義,那麼transfer learning是不是直接在語義層面指派就好了,不需要大資料去訓練了?當網路訓練可以深入到網路的內部語義,或許deep learning未來的發展會有更多的可能性。

我希望一個CNN不僅僅告訴我它在某張影象上檢測到一隻小鳥,我還要CNN明確的告訴我,它用第一個filter去監測鳥頭,第二個filter去檢測鳥尾巴。因為這兩個filter被這張影象觸發,所以判斷出影象中有一隻小鳥。進一步,當我知道鳥的分類得分是0。7,我還希望CNN給出鳥頭部分貢獻了0。3的分數,鳥尾貢獻了0。2。當CNN內部邏輯足夠條理清晰,我們是否還需要透過大資料進行端對端的訓練?我們能否在語義層面直接debug CNN呢?

可解釋性與deep learning的發展

沿著這條思路,在“Interpreting CNN knowledge via an Explanatory Graph”in AAAI 2018一文中,我主要介紹瞭如何把一個CNN(pre-trained for object classification)的conv-layer內部知識轉化成一個graphical model。演算法自動學習出一個explanatory graph with tens of thousands of nodes去解釋CNN內部的hierarchical知識結構。Explanatory graph中每一個node,嚴格表示在CNN中某個conv-layer的某個object part pattern。這樣我就可以把混亂的CNN的知識拆分成幾十萬個object parts的子patterns。每個子pattern有很強的可遷移性(transferability),比如在multi-shot part localization的上可以降低1/3—2/3的誤差。

進一步,基於explanatory graph語義化的表達,我們能否把傳統的graph-based technologies自然的融入CNN的學習之中呢?我不知道。

可解釋性與deep learning的發展

在另一篇文章“Interpretable Convolutional Neural Networks” in CVPR 2018 (spotlight)中,我介紹瞭如何端對端的學習一個CNN,使得其內部高層conv-layer的每個filter自動的表示某個object part。演算法並不需要人為的標註object parts或texture作為額外的supervision,而是為這些filters新增一個prior constraint,使得在訓練過程中自動迴歸的某種object part。

在時代的巨浪下,deep learning未來將向哪裡發展?我不知道。我只能帶著一顆敬畏的心,摸著石頭過河,邊走邊瞧吧。

————————————————————

不解知乎的推薦演算法,三年半以前的文章最近再次受到關注,相關問題統一回復一下。

1。 按人工智慧每三年一個變革的發展來看,三年後研究早已經跨越了三年前的討論範疇了。三年前的問題,有些從無解變成了有解,有的從經驗解變成了理論解,有的問題被理論否定了。我目前在上交領導一個十多個人的團隊,在做可解釋性方向新的問題點。

2。 新的前沿的問題點與本文討論的有很大的出入。具體在這裡。

3。 可解釋性研究不是坑,只是對於習慣於“工程實踐性”科研的學生來說是坑。我們甚至在做一些更激進的問題,這些問題是可以被少數人推動的。

4。 我的看法是“可解釋性研究”甚至“深度學習”的研究應該從工程性的技術過渡到嚴謹的科學理論,要有新的更顛覆的體系出來,不能故步自封。這是我依然在學術界堅持的理由。我沒有什麼悲觀,也沒有掉坑裡。近三年裡,我因學術品控而拒絕署名的合作研究的A類論文數量,比某些博士畢業的總論文量還多,所以沒有必要給我分享學術上的市井智慧。

如果希望瞭解我最新的想法,請檢視最近的知乎文章和近期的tutorial。

【1】IJCAI 2021 Tutorial on Theoretically Unifying Conceptual Explanation and Generalization of DNNs [Website]

【2】IJCAI 2020 Tutorial on Trustworthiness of Interpretable Machine Learning [Website]

【3】世界人工智慧大會(WAIC)可信AI論壇 Panel Discussion [Website]

博弈互動可解釋性理論體系

前言,漂在零丁洋裡的體系

博弈互動概念、定義、定理、推論、與計算

動機:建模知識,連線效能

背景基礎Shapley value

雙變元博弈互動

多變元博弈互動,及其近似計算

多階博弈互動

相關定理與推論

自然語言互動樹

博弈互動與知識表達的關

探索中低階博弈互動所建模的視覺概念及泛化能力

探索高階博弈互動所建模的視覺概念

神經網路對紋理概念的建模相比形狀概念更具有彈性

博弈互動與對抗攻擊的關係,推導證明與實驗

證明博弈互動與對抗遷移性的負相關關係

證明多個前人遷移性增強演算法可近似歸納解釋為對博弈互動的抑制

互動損失函式與遷移性的增強

博弈互動與泛化能力的關係,推導證明與實驗

探索互動強度與泛化能力的關係

證明Dropout對互動強度的抑制

互動強度損失函式與泛化能力的提升

從博弈互動層面解釋對抗魯棒性

對抗攻擊在多階博弈互動上的效用

從知識構成的層面探索對抗訓練提升魯棒性的原因

去蕪存菁:解釋並萃取多個前人防禦演算法中公共的有效機理

神經網路對抗遷移性:從神農嘗百草到精煉與萃取

完善Shapley value理論體系,建模並學習基準值

在博弈互動體系內,對“美”提出一個假設性建模(本文僅介紹第九章)

博弈互動與XXXXXXXXXXXXXXXXX

博弈互動與XXXXXXXXXXXXXXXXX