李宏毅机器学习课程笔记-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):@绝版臭咸鱼

微信公众号:@臭咸鱼

转载请注明出处,欢迎讨论和交流!