写点什么

AI 犯错谁之过?切勿盲目相信之

  • 2018-11-30
  • 本文字数:2663 字

    阅读完需:约 9 分钟

AI犯错谁之过?切勿盲目相信之

AI 前线导读:


人工智能、机器学习,在这个智能当道的时代,你几乎可以在任何地方看到 AI 的身影,小到你手里的智能手机,大到工厂的超大型生产设备,人们相信人工智能,甚至在某些领域,人们已经开始对 AI 产生了依赖。但是,AI 的判断一定是准确的吗?如果 AI 出现了失误,那么这个责任应该是谁的呢?本文作者 Cassie Kozyrkov 对这一问题提出了他的想法。


更多干货内容请关注微信公众号“AI 前线”(ID:ai-front)


别误会,我其实很喜欢机器学习和人工智能,但我不会盲目地相信它们,你应该也是吧,因为建立有效的、可信任的人工智能或机器学习解决方案是一个建立信任的过程。



图:盲目信任是件可怕的事情


在你开始臆想任何有关机器人或科幻小说的故事之前,先打断一下!


人工智能系统


并不像人类那样,它们只是被赋予了诗意般名字的贴标机。它们之所以不值得信任,是因为一些其他原因。正所谓事实胜于雄辩,让我们来看几个


熟悉的例子


吧。

设定场景

欢迎吸猫。在之前的文章中我们建立了一个分类器将以下这六张图片分为两组。



图:《[揭秘无监督学习(http://bit.ly/quaesita_unsupervisedimg)》中的原始数据集,两只不同的猫的图片。


之前,我们建立的


机器学习系统


成功地返回了我所期望的结果!



图:这个例子是为了说明有监督学习和无监督学习模型成功地将两只猫分开了,并且达到了 100%的训练准确率。


这些图像中共有两只猫,并且模型成功地返回了他们的标签。这意味着我成功地建立了一个Tesla和Huxley分类器,对吗?

我们的想法欺骗了我们

还没这么快!其实我们的期望欺骗了我们!仔细观察这些图片,你会发现,在所有 Tesla 的图片背景中都有散热器,而 Huxley 的则没有。



图:这个系统其实不是一个猫咪检测器。由于确认偏差的存在,我选择性地注意到了我喜欢的结果,而并没有注意到实际上我设计的系统是一个散热器检测器

猫咪检测器还是散热器检测器?

很不幸,实验结果表明,这的确是一个散热器检测器。使用新样本进行测试可能会有所帮助,所以让我们看看是否以这种方式解决问题……



图:事实证明,使用来自同一数据集的更多样本对于解决问题并没有太大帮助。


即使我使用新数据(这些新图片)来测试它,也不会有太多的错误,所以我们的分类器到底有问题吗?


假设 Tesla 总是和散热器一起而 Huxley 总是不和散热器一起,那么谁会在乎它是如何工作的?它总能奏效。它每次都会给出合适的分类,如果是这样就没有问题了。


但这真的是一个很大的假设。如果猫搬到另一间公寓了会怎样?如果你直接使用我的分类器对你的图片进行分类会怎样?


在这些情况下,返回的标签将是“Huxley”,依赖了我的检测器的任意一个关键任务系统都会发生崩溃。

这到底是谁的错?

让我们先分析一下:


  • 将像素转换为标签的方法太过复杂,搞得我一头雾水。

  • 我观察到的只是输入(像素)和输出(Hux / Tes 标签)。

  • 因为我是人,我没有注意到眼皮底下的一些细节(散热器和 Tes 总是一起出现)。

  • 我告诉自己关于输入如何与输出相关的故事不仅被简化了,而且还一厢情愿地偏离了对散热器的解释。

  • 只要我确信过它确实有效,就不必理解它的工作原理的。

  • 检查它是否有效的方法是评估它如何处理以前没有见过的一组相关样本。


到现在为止还挺好,实际上还没有什么问题。你相信很多东西,却不知道它们是如何起作用的,例如我们许多人因为头痛而服用扑热息痛。它的确有效,但科学也无法解释为什么。重要的是,你可以验证扑热息痛确实有效。



图:不知道这种流行了 100 多年的药物在分子水平上如何起作用?科学也不知道。


把复杂的AI系统想成头痛治疗一样。只有确保它们有效,你就会没事。那么是不是这个系统就没有问题了?


可惜的是,我检查了一些样本,这些样本与我希望系统使用的样本不同。


这一次,它出了大问题。只要我们使用适当的样本适当地测试系统,其他就不会有问题。所以答案是:这是我的人为错误



图:如果针对一个任务测试了该系统,然后将其用于其他任务,你期望得到怎样的结果呢?


如果教学的时候我不按考点来教学生,那么他们考试成绩很差不应该是理所当然的吗?如果我的所有样本都来自Tes和散热器总是在一起的世界,那么我只能期望我的分类器只能在那个世界中是有效的。当我把它移到另一个世界,就等于把它放在一个不属于它的地方。应用程序最好是低风险的,因为“我不知道它在超出预设时就不奏效”这样的借口是不存在的。如果你以前不明白,那么现在应该知道了吧。


这就是为什么从一开始就要考虑到你的目标和用户,这点很重要。开始之前一定要指定规格和设置。起一个成年人的责任,否则你只能开发一些玩具一样的应用程序。



图:在涉及更大的事情时,不要只是在不相关的数据集上抛出很酷的流行语。


如果没有熟练和负责任的领导力,我希望你的应用程序永远不要涉及任何人的健康、安全、尊严或未来的事情......

是常识,不是魔术

我一直在使用“样本”这个词而不是“数据”(实际上它们是同样的东西)来提醒你这不是魔术。 ML / AI的要点是,你使用样本而不是描述来表达你所期望的结果 。为了使它起作用,这些样本必须是相关的。并且,任务越复杂,你所需要的样本就越多。你每天都使用样本进行交流,因此你已经知道了这些内容。也许你想知道数学是否表达了不一样的东西,实际上它没有。请放心,常识是你最好的算法。



图:如果你想用样本进行教学,那么这些样本必须是好样本。如果你想要信任你的学生,那么测验必须是好测验。


### 盲目的信任是一件可怕的事情


在你规定的条件之外,你对系统的安全性一无所知,因此请注意:


  • 如果你没有测试它,不要相信它。

  • 如果你没有在【环境】中测试它,请不要相信它在【环境】中的结果。

  • 如果你没有使用【用户群】进行测试,请不要相信【用户群】使用它得到的结果。

  • 如果你没有使用【数据组】进行测试,请不要相信系统在【数据组】上的结果。

  • 如果输入异常,请不要相信你的系统输出是合理的。考虑使用异常值检测和安全网。


如果你使用的工具尚未经过测试,那么你的工具导致的错误应该算到你头上。A 也只是一种工具而已。


查看原文:https://towardsdatascience.com/dont-trust-ai-10a7df520925



链接:http://t.cn/E28YBT9


2018-11-30 18:331543

评论 1 条评论

发布
暂无评论
发现更多内容

自己动手写Docker系列 -- 5.6实现删除容器

Go Docker 4月月更

Docker 实战教程之从入门到提高(二)

汪子熙

Docker 容器 虚拟化 docker image 4月月更

云智慧10年资深架构师带你了解:普通程序员向架构师成长必经之路

云智慧AIOps社区

程序人生 架构师 Meetup 晋升 成长计划

Retool 是什么,怎么样? —— Retool 低代码工具测评

蒋川

低代码 低代码开发平台 retool

读《Software Engineering at Google》(01)

术子米德

架构师成长笔记

坐实大数据资源调度框架之王,Yarn为何这么牛

华为云开发者联盟

大数据 hadoop mapreduce YARN 资源调度框架

设计消息队列存储消息数据的 MySQL 表格

「架构实战营」

react源码解析8.render阶段

buchila11

React

Android技术分享| Android 中部分内存泄漏示例及解决方案

anyRTC开发者

音视频 内存 内存泄漏 移动开发 Andriod

读《Software Engineering at Google》(02)

术子米德

架构师成长笔记

如何做好复盘

Hockor

复盘

“一只股票一张表”, TDengine 在青岛金融研究院量化分析场景中的应用

TDengine

数据库 tdengine 物联网

云效 Projex是什么?Projex企业级高效研发项目管理平台

阿里云云效

阿里云 项目管理 研发 敏捷研发 项目协作

云图说丨不同区块链之间如何跨链交互?

华为云开发者联盟

区块链 跨链 可信 可信跨链服务 跨链交互

虎符即将引入稳定币USN 并开启USN专场活动

区块链前沿News

虎符交易所 稳定币

解析分布式系统的缓存设计

vivo互联网技术

分布式 服务器 缓存服务

腾讯一面:你平时怎么排查并调优慢 SQL 的

老周聊架构

MySQL 4月月更

jackson学习之七:常用Field注解

程序员欣宸

4月月更

Thinkphp6实现定时任务功能详解教程

CRMEB

基于Flink-CDC数据同步方案

领创集团Advance Intelligence Group

算法 java

【PIMF】开源鸿蒙首款IDE低代码入门OpenHarmony应用开发

离北况归

低代码 OpenHarmony Openharmony啃论文俱乐部 OpenHarmony应用开发 可视化界面

龙蜥社区成立DeepRec SIG,开源大规模稀疏模型深度学习引擎

OpenAnolis小助手

深度学习 开源 龙蜥社区 sig 稀疏模型

[Day12]-[动态规划]-零钱兑换

方勇(gopher)

LeetCode 数据结构和算法

Linux驱动开发-编写RFID-RC522射频刷卡模块驱动

DS小龙哥

4月月更

Python 中的鸭子类型和猴子补丁

AlwaysBeta

Python

如何使用参数化查询提高Cypher查询的性能

华为云开发者联盟

参数化 Cypher查询 华为云图引擎 GES 参数化查询

react源码解析7.Fiber架构

buchila11

React

AI犯错谁之过?切勿盲目相信之_AI&大模型_Cassie Kozyrkov_InfoQ精选文章