李宏毅機器學習課程筆記-11.3Explainable AI(Global Explanation)

假定在圖片分類任務中,Global Explanation要求機器說明它認爲一個類別(比如“cat”)是什麼樣子,而非針對一張圖片進行解釋。

Activation maximization

李宏毅機器學習課程筆記-7.2CNN學到了什麼一文中,我們已講過Activation maximization,不再複述,這裏講一些相關的新知識。

  1. 在Activation maximization的MNIST手寫數字識別案例中,我們觀察到機器學習到的數字在人類看來完全就是噪音,由此可以想到:將機器認爲是數字(或其它事物)的內容作爲噪聲添加到其它數據中,也許這樣就可以實現Attack。
  2. 在使用Activation maximization觀察模型學習到的內容時,我們可能需要使用大量Regularization(保證“可解釋性”)以及暴調超參數,詳見《Understanding Neural Networks Through Deep Visualization》。

"Regularization" From Generator

除了使用人工設置的Regularization來告訴機器什麼是一張正常的輸出(比如image),還可以使用Generator進行Regularization

Image Generator的輸入是一個低維向量\(z\),其輸出爲一張圖片\(x\),即\(x=G(z)\)。通常這個低維向量\(z\)是從某個已知的distribution(比如高斯分佈、正態分佈)中sample出來的,我們可以收集很多圖片並使用GAN或者VAE訓練這個Generator。

那如何使用Image Generator生成對圖片的限制呢?以圖片分類爲例,將Generator輸出的圖片\(x\)輸入到Image Classifier中得到輸出分類結果\(y_i\),目標是找到一個\(z^*\)使得圖片\(x\)屬於對應類別\(i\)的可能性\(y_i\)最大,即\(z^*=arg \ max y_i\)。得到\(z^*\)之後將其輸入至Image Generator就可以得到一個圖片\(x\)。如果通過\(x^*=arg \ max y_i\)直接得到圖片呢,則不能保證結果的“可解釋性”,因而需要對結果進行“可解釋性”的約束,上述過程中Generator的作用就是對圖片進行約束以確保生成的圖片\(x\)是“可解釋”的。

注:在進行\(z^*=arg \ max y_i\)時,Image Generator和Classifier的參數是不參與本次訓練的。

那使用Generator能得到什麼樣的結果呢?結果挺好的,詳見《Plug & Play Generative Networks: Conditional Iterative Generation of Images in Latent Space》。


Github(github.com):@chouxianyu

Github Pages(github.io):@臭鹹魚

知乎(zhihu.com):@臭鹹魚

博客園(cnblogs.com):@臭鹹魚

B站(bilibili.com):@絕版臭鹹魚

微信公衆號:@臭鹹魚

轉載請註明出處,歡迎討論和交流!


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章