热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

斑马识别成狗!AI犯错的原因被斯坦福找到了!

点击下方卡片,关注“CVer”公众号AICV重磅干货,第一时间送达Pine发自凹非寺转载自:量子位(QbitAI࿰

点击下方卡片,关注“CVer”公众号

AI/CV重磅干货,第一时间送达

Pine 发自 凹非寺
转载自:量子位(QbitAI)

明明是只斑马,AI为什么说它是一条狗?

分类模型在归类图像时有时会错误地判断类别。

经过学习的AI,还会搞砸一些预测,肯定是在其中的某个环节出现了纰漏。

斯坦福大学的两位博士生和教授James Zou在一篇论文中,带我们探究了分类模型犯错的原因。

f4d35a9a8257c368358c5ac4bdedfc9e.png

随后,论文提出一种方法——反事实的概念性解释(Conceptual Counterfactual Explanations),并评估了它的效果。

通过这种方法,我们就能重新定义模型的分类标准,从而解释AI犯错的原因。

一起来看看吧。

AI为什么会犯错?

想要提高分类模型后续预测的准确性,就先得整明白这个模型在哪里出了岔子。

一般来说,AI搞砸预测是以下原因造成的:

首先是在模型实际预测的过程中,分类标准可能会与预训练时有些偏差,使得训练模型在实际预测的过程中效果不佳,进而降低预测结果的准确性。

比如说,病理学家使用预先训练好的模型来分类组织病理学图像,但效果在他的图像上却不是很好。

这就可能是在他的图像中,色调与原始训练数据中不同导致的。

其次,在模型学习的过程中,可能会学习到一种叫做“伪相关性”的东西,即将一些看似无关的要素与被识别的图像关联起来。

可以看这个例子:

14e250ba31f2fd81aa8ff8f4d7c28828.png

在这个模型训练过程中,样本里所有狗的照片里都有雪,这导致该模型将雪与狗联系在一起,并错误地预测:没有雪的狗不是狗。

这可能是用的数据集,都是在同一场景下收集的,会阻碍模型的泛化。

除此之外,也可能是在训练模型时,人为制造的一些偏差。

例如,某一皮肤科专家利用训练好的AI来分类图像中的皮肤病,但其他同事使用的效果却不尽如人意。

这可能是因为在训练的样本中,皮肤的肤色单一、且年龄段分布窄。

了解了AI“犯错”的原因后,我们要怎样才能准确地判断模型哪里出现了错误呢?

AI犯错,它来解释

James Zou在论文中提出了一种叫反事实的概念性解释(CCE)的方法。

具体来说,就是通过这种方法,来探究输入数据与预测结果之间的联系,最终找到模型的错误之处。

那CCE是怎么来解释的呢?

定义概念库

首先要做的,就是设置并细化一个概念库C,即制作一个分类标准。

具体来说,概念库C中的各个概念可以用来分类图像,如装置c1(街道、雪等)、图片质量c2(清晰、模糊等)······

这样,就能获得一组可解释的概念库C={c1,c2,…}。

然后,需要给其中的每个概念找对应训练数据。

具体的,就是收集与其相符(Pci)和不符(Nci)的例子,一般来说数量上要一样(Pci=Nci=100)。

对于每个概念,CCE都要学习它们的分类方法和“思维方式”。

分别通过两种方法:

一个是通过学习支持向量机(SVM),来寻找可以区分两种事物最优方式的算法(线性分类器)。

另一个是学习相应的概念激活向量(CAV),它可以用来解释图像被错误分类的具体原因。

就像下图,都是斑马的图像,归类错误的原因却不一样。

824f4d09ceb7658daf2596a96e9f9323.png

这一步只需要对每个想要评估的模型做一次,之后CAV便可以用来解释任意数量的错误分类。

给定错误分类标准

我们可以通过改变不同概念在模型中的比重,对其分类标准进行相应的调整,这些调整要满足以下原则:

1、正确性:如果一个分类标准达到了预期的结果,那么它就被认为是正确的。

2、有效性:分类标准不能违反人类的基本认知。

3、稀疏性:最终目标是向用户传达模型的错误之处,太多的变量不利于有效传达信息。

我们的目的是尽可能地使预测结果贴近训练结果,即最小化交叉熵损失。

因此就要不断优化模型预测的标准,通过调整待修改的标准,对其进行加权,最终达到纠正错误分类的效果。

了解之后,我们通过一个实际例子来看看,怎么用CCE“探测”分类模型出错的地方。

fe250f41434a19bbe36beebb4fbbb5f2.png

在这里,分类模型错误地将斑马图像识别为非洲猎犬。

于是,我们首先生成这个模型将斑马识别成狗的一系列标准。

然后,对这些标准进行评分,如果评分为正,则代表在图像中增加这个概念,将会提高正确分类的概率,反之亦然。

在这个例子中,如果增加stripes(条纹)这个概念,识别出它为斑马的概率就会大一些。

在c)图中,通过CCE分析也可以直观地看到,“Polka Dots”(斑点)和“Dog”(狗)是导致模型预测错误的原因。

CCE效果怎么样?

看到这里,想必大家对CCE的原理都有了初步的认识。

那它判断得到底准不准确,效果究竟如何呢?

CCE的目的,主要是揭示模型在训练过程中学习到的“伪相关性”,用它就可以捕获图像中出现的其他“无关要素”和图像的伪相关性。

测试发现,在大多数情况下,该模型在超过90%的错误分类的测试样本中识别出伪相关。

看看这个表格,相较于其他方法,使用CCE,识别出样本中伪相关的概率最高。

6bd7b399c7a6e630b093631264e1d826.png

CCE能够精准地识别出样本中的伪相关,可以看这个例子:

993f00b623ac919171fec57a15fb1a38.png

改变苹果图片的颜色(使图片变灰),分类模型识别错误的概率增大时(黑线),CCE辨别出“绿色”为伪相关的分数也就越高(绿线)

除此之外,CCE也有用在医学领域的潜力。

像Abubakar Abid等人就使用CCE,在皮肤病学(皮肤状况分类)、胸片图像中的心脏病学(气胸分类)中都做了相关测试。

1e1a7a4738c106191c8b271e15d7e005.png

CCE使用学习到的偏差和图像质量条件来解释模型犯错,也已被专业的皮肤科医生证实——这些因素,确实很大程度上是导致皮肤图像难以分类的原因。

此外,CCE的速度也很快。

概念库只需要使用简单的支持向量机学习一次,每个测试示例在单个CPU上花费的时间小于0.3s

重要的是,它可以很简单地应用到任何深度网络,在不需要训练数据的情况下检测到模型犯错的原因。

如果你对这种方法感兴趣,想亲自试试的话,可以戳下文链接查看。

作者介绍

a331e104eb86344192e340ffb5aad174.png

James Zou ,论文通讯作者,是斯坦福大学生物医学数据科学系的助理教授,计算机科学与电气工程系的助理教授。

于 2014 年获得哈佛大学博士学位,曾是微软研究院成员、剑桥大学盖茨学者和加州大学伯克利分校西蒙斯研究员。

他的研究得到了 Sloan Fellowship、NSF CAREER Award 以及 Google、Amazon 和腾讯 AI 奖项的支持。

cde4a1d8aac83fd88a2f3031b9c94b2e.png

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

点击进入—> CV 微信技术交流群

ICCV和CVPR 2021论文和代码下载

后台回复:CVPR2021,即可下载CVPR 2021论文和代码开源的论文合集

后台回复:ICCV2021,即可下载ICCV 2021论文和代码开源的论文合集

后台回复:Transformer综述,即可下载最新的3篇Transformer综述PDF

目标检测和Transformer交流群成立
扫描下方二维码,或者添加微信:CVer6666,即可添加CVer小助手微信,便可申请加入CVer-目标检测或者Transformer 微信交流群。另外其他垂直方向已涵盖:目标检测、图像分割、目标跟踪、人脸检测&识别、OCR、姿态估计、超分辨率、SLAM、医疗影像、Re-ID、GAN、NAS、深度估计、自动驾驶、强化学习、车道线检测、模型剪枝&压缩、去噪、去雾、去雨、风格迁移、遥感图像、行为识别、视频理解、图像融合、图像检索、论文投稿&交流、PyTorch、TensorFlow和Transformer等。
一定要备注:研究方向+地点+学校/公司+昵称(如目标检测或者Transformer+上海+上交+卡卡),根据格式备注,可更快被通过且邀请进群▲扫码或加微信: CVer6666,进交流群
CVer学术交流群(知识星球)来了!想要了解最新最快最好的CV/DL/ML论文速递、优质开源项目、学习教程和实战训练等资料,欢迎扫描下方二维码,加入CVer学术交流群,已汇集数千人!▲扫码进群
▲点击上方卡片,关注CVer公众号
整理不易,请点赞和在看


推荐阅读
  • 从运维繁忙到屡获殊荣:一位CIO的辉煌转型之路
    企业首席信息官(CIO)常常面临一个棘手的问题:如何有效推动公司的数字化转型?尽管数字化转型已成为企业未来发展的重要共识,但如何具体实施依然是许多CIO面临的重大挑战。在日常运营中,企业需要处理大量的业务问题和制定各种发展规划,这使得数字化转型往往被排在较低的优先级。此外,不断涌现的新问题和新规划也常常打乱原有的计划,进一步增加了转型的难度。 ... [详细]
  • 在第七天的深度学习课程中,我们将重点探讨DGL框架的高级应用,特别是在官方文档指导下进行数据集的下载与预处理。通过详细的步骤说明和实用技巧,帮助读者高效地构建和优化图神经网络的数据管道。此外,我们还将介绍如何利用DGL提供的模块化工具,实现数据的快速加载和预处理,以提升模型训练的效率和准确性。 ... [详细]
  • vmware workstation14嵌套安装kvm
    vmware workstation14嵌套安装kvm ... [详细]
  • 优秀网页翻译:一个智能旋钮:DIY haptic input knob: BLDC motor + round LCD
    一个智能旋钮:DIYhapticinputknob:BLDCmotorroundLCD智能旋钮硬件设计智能旋钮视图演示视频3DCAD建立一个你自己的?基 ... [详细]
  • 了解供应链简单来说,供应链涉及一系列旨在向最终用户提供产品或服务的步骤。企业组织及其供应商之间始终存在一个网络,来生产特定产品并将其交付给最终用户。该网络包括不同的活动、人员、实体 ... [详细]
  • 圣诞节到了,智能菌想送你一份礼物
    关注网易智能,聚焦AI大事件,读懂下一个大时代!(机器学习算法地图见文末)圣诞节的赠书活动来了! ... [详细]
  • 互联网世界 9 种基本的商业模式
    互联网世界9种基本的商业模式一个商业模式是运行一个公司的方法;通过该模式的运作,一个公司能维持自己的生存,就是说,能有收益。商业模式意味着一个公司是如何通过在价值链中定位自己,从而获 ... [详细]
  • 本文详细介绍了一种利用 ESP8266 01S 模块构建 Web 服务器的成功实践方案。通过具体的代码示例和详细的步骤说明,帮助读者快速掌握该模块的使用方法。在疫情期间,作者重新审视并研究了这一未被充分利用的模块,最终成功实现了 Web 服务器的功能。本文不仅提供了完整的代码实现,还涵盖了调试过程中遇到的常见问题及其解决方法,为初学者提供了宝贵的参考。 ... [详细]
  • 为了优化用户体验,本文探讨了如何调整下拉菜单的宽度。通过合理设置宽度,可以提升界面的美观性和易用性。文章提供了具体的代码示例,帮助开发者实现这一目标。例如,可以通过 CSS 或 JavaScript 来动态调整下拉菜单的宽度,确保其在不同设备和屏幕尺寸上都能保持良好的显示效果。 ... [详细]
  • 利用ZFS和Gluster实现分布式存储系统的高效迁移与应用
    本文探讨了在Ubuntu 18.04系统中利用ZFS和Gluster文件系统实现分布式存储系统的高效迁移与应用。通过详细的技术分析和实践案例,展示了这两种文件系统在数据迁移、高可用性和性能优化方面的优势,为分布式存储系统的部署和管理提供了宝贵的参考。 ... [详细]
  • 在开发过程中,为了确保代码的实时保存,我们常常会对某个功能进行多次提交。然而,当功能趋于稳定时,将这些分散的提交记录合并为一次提交,可以提高代码仓库的整洁度和可维护性。本文将详细介绍如何使用 Git 巧妙地合并多次提交记录,帮助开发者简化历史记录管理。 ... [详细]
  • 提升 Kubernetes 集群管理效率的七大专业工具
    Kubernetes 在云原生环境中的应用日益广泛,然而集群管理的复杂性也随之增加。为了提高管理效率,本文推荐了七款专业工具,这些工具不仅能够简化日常操作,还能提升系统的稳定性和安全性。从自动化部署到监控和故障排查,这些工具覆盖了集群管理的各个方面,帮助管理员更好地应对挑战。 ... [详细]
  • SAP 实用技巧:如何高效终止运行中的进程
    在ERP系统中,通过事务代码SM66和SM51可以查看服务器上的进程执行情况。在某些特殊情况下,可能需要终止占用资源的进程。本文详细介绍了几种高效终止进程的方法,并提供了操作步骤和注意事项,帮助用户在遇到问题时快速解决。 ... [详细]
  • 每日一书丨AI圣经《深度学习》作者斩获2018年图灵奖
    2019年3月27日——ACM宣布,深度学习之父YoshuaBengio,YannLeCun,以及GeoffreyHinton获得了2018年的图灵奖, ... [详细]
  • 1,数据组织:训练验证数据生成:pythoncreate_data.pynuscenes_data_prep--data_pathNU ... [详细]
author-avatar
mobiledu2502857377
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有