斑马识别成狗,AI犯错的原因被斯坦福找到了丨开源

Pine发自凹非寺
量子位|公众号QbitAI
明明是只斑马 , AI为什么说它是一条狗?
分类模型在归类图像时有时会错误地判断类别 。
经过学习的AI , 还会搞砸一些预测 , 肯定是在其中的某个环节出现了纰漏 。
斯坦福大学的两位博士生和教授JamesZou在一篇论文中 , 带我们探究了分类模型犯错的原因 。
斑马识别成狗,AI犯错的原因被斯坦福找到了丨开源
文章图片
随后 , 论文提出一种方法——反事实的概念性解释(ConceptualCounterfactualExplanations) , 并评估了它的效果 。
通过这种方法 , 我们就能重新定义模型的分类标准 , 从而解释AI犯错的原因 。
一起来看看吧 。
AI为什么会犯错?【斑马识别成狗,AI犯错的原因被斯坦福找到了丨开源】想要提高分类模型后续预测的准确性 , 就先得整明白这个模型在哪里出了岔子 。
一般来说 , AI搞砸预测是以下原因造成的:
首先是在模型实际预测的过程中 , 分类标准可能会与预训练时有些偏差 , 使得训练模型在实际预测的过程中效果不佳 , 进而降低预测结果的准确性 。
比如说 , 病理学家使用预先训练好的模型来分类组织病理学图像 , 但效果在他的图像上却不是很好 。
这就可能是在他的图像中 , 色调与原始训练数据中不同导致的 。
其次 , 在模型学习的过程中 , 可能会学习到一种叫做“伪相关性”的东西 , 即将一些看似无关的要素与被识别的图像关联起来 。
可以看这个例子:
斑马识别成狗,AI犯错的原因被斯坦福找到了丨开源
文章图片
在这个模型训练过程中 , 样本里所有狗的照片里都有雪 , 这导致该模型将雪与狗联系在一起 , 并错误地预测:没有雪的狗不是狗 。
这可能是用的数据集 , 都是在同一场景下收集的 , 会阻碍模型的泛化 。
除此之外 , 也可能是在训练模型时 , 人为制造的一些偏差 。
例如 , 某一皮肤科专家利用训练好的AI来分类图像中的皮肤病 , 但其他同事使用的效果却不尽如人意 。
这可能是因为在训练的样本中 , 皮肤的肤色单一、且年龄段分布窄 。
了解了AI“犯错”的原因后 , 我们要怎样才能准确地判断模型哪里出现了错误呢?
AI犯错 , 它来解释JamesZou在论文中提出了一种叫反事实的概念性解释(CCE)的方法 。
具体来说 , 就是通过这种方法 , 来探究输入数据与预测结果之间的联系 , 最终找到模型的错误之处 。
那CCE是怎么来解释的呢?
定义概念库首先要做的 , 就是设置并细化一个概念库C , 即制作一个分类标准 。
具体来说 , 概念库C中的各个概念可以用来分类图像 , 如装置c1(街道、雪等)、图片质量c2(清晰、模糊等)······
这样 , 就能获得一组可解释的概念库C={c1 , c2 , …} 。
然后 , 需要给其中的每个概念找对应训练数据 。
具体的 , 就是收集与其相符(Pci)和不符(Nci)的例子 , 一般来说数量上要一样(Pci=Nci=100) 。
对于每个概念 , CCE都要学习它们的分类方法和“思维方式” 。
分别通过两种方法:
一个是通过学习支持向量机(SVM) , 来寻找可以区分两种事物最优方式的算法(线性分类器) 。
另一个是学习相应的概念激活向量(CAV) , 它可以用来解释图像被错误分类的具体原因 。
就像下图 , 都是斑马的图像 , 归类错误的原因却不一样 。
斑马识别成狗,AI犯错的原因被斯坦福找到了丨开源