AI如果耍起了心眼,人类就像个白痴......

耍小心眼已经不是人类专利了。

之前,有一群研究者整理了一个场景的List,细数了AI为了完成任务,而耍的小心眼,或者说作弊。

例如,在让AI玩俄罗斯方块的时候,发现最佳完成任务的方式是直接暂停游戏;在玩井字棋的时候,AI发现它如果做出奇怪的步骤,对手会非常崩溃。

科研人员在做实验的时候,通常会极力避免机器的这些作弊方式,只有少数的研究人员研究这些案例,他们认为算法的顽皮或许是AI真正走向智能的方式之一。

在2018年的时候,OpenAI举办了首届强化学习竞赛Retro Contest,比赛主题就是“用AI玩《刺猬索尼克》游戏”。竞赛的目的是评估强化学习算法从以往的经验中泛化的能力。

在训练的过程中首先要告诉AI的第一目标是得到最高分,然后尽可能的在最快的时间杀掉敌人并收集戒指。但是有一个案例的人工智能做法是,利用游戏中Bug更加快速的完成任务。

在另一个赛艇游戏中,倒也不是游戏中的BUG,为了尽快的获得最高分,它绕着圈子,反复击中相同的奖励目标,从而获得分数,显然这不是在真正的“享受”游戏。

 

这种例子并不少见,在谷歌和斯坦福2017年的一项研究中,为了完成图像转换的任务,CycleGAN在训练过程中通过人类无法察觉的某种“隐写术”,骗过了它的创造者,给自己留下了隐秘的“小抄”,然后顺利完成了任务。

具体来说,研究者希望通过训练这个CycleGAN模型,可以实现两类图片的转换:把航拍照变成街道地图,再把街道地图变回航拍照。

经过大量的数据发现,这个模型自作主张的根据航拍卫星图片重建了街道地图。比如,在创建街道地图时,屋顶上的天窗被研究者通过某种设置被抹掉了,但通过街道图转化为航拍照后,这些天窗又神奇地出现了。

      

左侧是原始地图,街道地图从原始地图产生。中间:生成的地图。右侧:重构的地图。其中,卫星地图的样本只来自街道地图。注意这两张卫星地图里出现的点,它在街道地图没有显示。

简单的点说就是为了应付人类任务,AI在地图照上面偷偷写了一点小抄/水印,而为了躲过人类的检查,只有它自己训练出来的模型才读得懂这些小抄/水印。

AI作弊:创造性的解决方案?

普通的人工智能通过观察数据值来解决问题,本质是通过算法找到答案,从而寻找新的知识逻辑。

那些“顽皮”的人工智能也是通过数据获取能力,但它采用欺骗策略来快捷完成任务。但是他能不能看成是AI在解决问题时的创新呢?

德国柏林Fraunhofer Heinrich Hertz研究所的机器学习小组组长Wojciech Samek博士说道:考虑一下在Pascal VOC图像分类挑战赛中大放异彩的人工智能系统,它仅通过水的存在来检测船只,通过蓝天和马匹的存在来检测飞机。”这就像在打台球的时候,通过推动桌子控制台球的运行轨迹。

使用数据训练AI玩游戏的目的是模拟游戏玩家的行为,一般情况下AI会按照“字面”意思进行操作。但是如果训练的数据过于多,人工智能可能会尝试采用完全颠覆人类对游戏理解的捷径,而不是完成各种目标。

当然,AI采用这种方法也解决了问题,只不过和人们预期方式的不同,在表现形式上面和人类的作弊行为类似,所以我们称之为AI作弊。

研究人员说道,这看起来是人工智能的错误,实际上是完善和改进系统的机会。但是为了利用这些机会,首先必须有一种机制来标记问题、

因此,这里的教训是,AI作弊不应该也不会比我们聪明,但前提是我们必须意识到这些捷径的存在,以便我们可以将它们作为学习点,在未来构建更好的AI系统。

OMT:AI耍“小心眼”的LIST

问题:飞机降落

利用了物理模拟器的溢出漏洞,搞出了一个特别巨大的力,然后溢出被判定为0,从而获得了完美得分(Feldt, 1998)

问题:挪木块

一个机械手被要求把木块挪到桌子的指定地点,它的解法是挪桌子(Chopra, 2018)

问题:赛艇

程序发现不停原地转圈反复命中同一个目标要比抵达终点的得分更高(Amodei & Clark (OpenAI), 2016)

问题:识别有毒和无毒的蘑菇

程序发现有毒无毒蘑菇的图片是交替展现的,所以直接按照这个来分类而没有从图片里学到一丁点东西(Ellefsen et al, 2015)

问题:高速运动

程序演化出的生物长得特别特别高,在跌倒的过程中获得很高速度(Sims, 1994)

问题:原子排列

程序本来应该寻找碳原子较低能量的排列方式,但它找到了物理模型的一个bug,把所有的原子都叠在了同一个地方获得了最低能量(Lehman et al (UberAI), 2018)

问题:模拟生物

这个模型里生物生存需要消耗能量,但是繁育后代不消耗,于是一个物种演化出来的生活方式就是不断生育后代,然后把后代吃掉(Yaeger, 1994)

问题:堆乐高

为了鼓励造高塔,衡量标准是乐高积木底面的z坐标,于是程序学会了把底面翻过来(Popov et al, 2017)

问题:追踪线条

这个机器人只有向左、向右和前进三个指令,目标是跟着线条走,有一段线条是曲线,没法完美追踪。于是它发现通过交替左转和右转可以后退,从而一直留在直线部分,不停前进后退(Vamplew, 2004)

问题:赛跑

长出特别长的腿,向前跌倒直接越过终点线(Ha, 2018)

问题:振荡器

程序本来应该把回路做成振荡器,实际上它做了一个收音机,从周围电脑接受振荡信号(Bird & Layzell, 2002)

问题:做松饼

有一项指标是让松饼尽可能长时间不掉在地上,机器人发现最好的办法是把松饼用尽全力抛到最高处(Unity, 2018)

问题:检测X光片有无肺炎

程序实际检测的不是X光片的内容而是拍摄它使用的机器,因为它“发现”病重的病人更可能在特定的医院使用特定的机器拍片(Zech et al, 2018)

问题:抓握

因为抓握成功与否是用摄像头判断的,所以机械手把自己移动到摄像头和目标物体之间,假装抓住了(Christiano et al, 2017)

问题:自动修复bug

修bug程序把所有被维修的排序算法都修成空的,因为衡量指标是“目标算法输出一个排好顺序的列表”,而空列表都是排好顺序的列表(Weimer, 2013)

问题:自动修复bug(2)

为了解决上面那个问题,把“维修目标”储存在一个文本文档里,如果输出的结果和目标文档的内容一致就被认为是修好了。修bug程序学会了把这个文档删掉,这样它的内容就成了空的,然后输出一个空的结果就和它一致了(Weimer, 2013)

问题:闯关游戏

在闯过第一关后立刻自杀,这样既取得了第一关的胜利又不会在第二关死掉(Saunders et al, 2017)

问题:扫地机器人防撞

自己给扫地机器人编了个程序,鼓励它加速,但不鼓励它撞到东西触发撞击感受器。于是它学会了倒退行驶,因为后面没有撞击感受器(Custard Smingleigh 个人通讯)

问题:检测皮肤癌

程序发现照片里皮肤病变的边上如果放了一把尺子,那么这个病变就更可能是恶性的(Andre Esteva et al, 2017)

问题:足球

踢足球机器人碰触到球有奖励,所以它在抢到球之后开始高速振动,从而在短时间内尽可能多次地碰触到球(Ng et al, 1999)

问题:策略游戏

程序发现让游戏崩溃就可以让自己不被灭掉,所以好几个程序各自找到了让游戏出bug崩溃的办法(Salge et al, 2008)

问题:俄罗斯方块

程序发现只要暂停游戏就可以永远不输(Murphy, 2013)

注:场景List部分来源于微博网友@骄子梦谷

相关报道:

https://weibo.com/6605088042/HB2fS4EXR?type=comment

https://kotaku.com/earlier-this-year-researchers-tried-teaching-an-ai-to-1830416980

https://kottke.org/18/11/how-ai-agents-cheat

转自:大数据文摘

 论文查重券 限时免费领 

官方授权 · 安全保障 · 真实有效

点「在看」的人都变好看了哦

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/298868.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【设计模式】—— 中介者模式Mediator

前言:【模式总览】——————————by xingoo 模式意图 使用一个中介的对象,封装一组对象之间的交互,这样这些对象就可以不用彼此耦合。 这个中介者常常起着中间桥梁的作用,使其他的对象可以利用中介者完成某些行为活动&#…

mysql数据库主要用来做什么的_水晶头骨用来做什么的?

1927年一个小女孩在挖掘时,发现了一颗人头骨。这颗头骨是用水晶做成的,之后关于水晶头骨之谜一直被人津津乐道,人们一直在猜测水晶头骨用来做什么的?一共有多少个?在小女孩挖到这颗头骨之前,大英博物馆里就…

日本画风超级“诡异”毕业典礼上线,网友:有被吓到,谢谢!

转眼间又到了日本毕业季,四月份本来是日本毕业季。在日本,毕业季是非常仪式感的存在:学校里会满是穿着浴衣、盛装打扮的小哥哥小姐姐,拿着毕业证书,在樱花树下合照。图片来源:日剧《对不起,青春…

博客编辑工具ckeditor

在asp网站开发过程当中常常用到漂亮的编辑工具。 在这个网站有不少:http://ckeditor.com/ 而且下载下来就可以使用,是开源的。它不像asp里面的.dll控件拖进来就可以使用,而是通过调用的方式使用。 下载下来解压之后就可以直接包含在项目中&am…

记一次 .NET 某流媒体独角兽 API 句柄泄漏分析

一:背景 1. 讲故事上上周有位朋友找到我,说他的程序CPU和句柄都在不断的增长,无回头趋势,查了好些天也没什么进展,特加wx寻求帮助,截图如下:看的出来这位朋友也是非常郁闷,出问题还出…

iphone最新款手机_苹果罕见“跌停”!遭遇6年来最惨淡一夜,2019年全球股市第一颗雷引爆...

2019年全球股市的第一颗大雷引爆了。受苹果下调营收预期影响,周四盘中,苹果股价一度跌至142.08美元,创逾一年半新低,日内跌幅超过10%,市值缩水750亿美元。最终,苹果收跌9.96%,创出自2013年1月以…

MVC学习之分页 【转】

分页如果dinners列表记录过多,为了让用户更方便浏览,我们需要实现分页显示,而不是一次显示大量的记录列表。Index() Action方法更新DinnersController类的Index() action方法代码如下://// GET: /Dinners/public ActionResult Ind…

构件图

构件图 目录 构件图概要... 1 构件图中的事物及解释... 1 构件图中的关系及解释... 1 我的构件图... 1 构件图用于静态建模,是表示构件类型的组织以及各种构件之间依赖关系的图。构件图通过对构件间依赖关系的描述来估计对系统构件的修改给系统可能带来的影响…

不小心把硬盘摔了一下,结果电脑变成这样了......

1 会主动要求换尿裤的小宇航员▼2 其实赚钱这个事儿我也不太会▼3 春困、夏倦、秋乏、冬眠一年四季都好适合睡觉啊!▼4 这是硬盘摔了,结果把显示器心疼坏了吧?▼5 柯基:弱小、可怜▼6 朋友相册里的你▼7 人类迷惑行为之放生…

win10前置耳机插孔没声音_音频服务未运行怎么办?win7和win10电脑没声音了恢复方法...

很多人可能都会问电脑没声音了,如何恢复?其实造成这种情况的原因有很多,一般需要一个一个排查。这次,小编跟大家分享其中的一个原因,以及具体的解决方法。个别小伙伴的笔记本电脑,每次开机总会提示音频服务…

开源 java CMS - FreeCMS2.2 系统配置

2019独角兽企业重金招聘Python工程师标准>>> 项目地址:http://www.freeteam.cn/ 系统配置 管理系统使用的配置项。 从左侧管理菜单点击系统配置进入。 从FreeCMS 1.7开始支持 数据变更后栏目页面静态化间隔时间(单位为分):修改栏目、更新…

EF Core使用Simple Logging输出日志

在使用EF Core的时候,很多时候需要知道EF Core实际执行的SQL语句是什么。Simple Logging是EF Core提供的一项功能,可用于在开发和调试应用程序时轻松获取日志。这种形式的日志记录需要最少的配置,而不需要其他NuGet包。功能一瞥配置起来非常简…

如何用全球顶级名画,成为全行业最令人羡慕的人?

▲ 点击查看马克思曾说:“如果你想得到艺术的享受,那你就必须是一个有艺术修养的人。”假如现在有下面两幅画,站在艺术的角度上,你会选择哪个呢?或者我们可以换一个问法:哪一种猫才是最符合你心中标准的猫&…

电脑启动后黑屏只有鼠标_电脑加装固态硬盘后出现黑屏或蓝屏解决方案

以下内容以本人遇到的真实问题为例,从找到加装固态硬盘后出现黑屏及蓝屏的原因,到成功解决问题,请各位看官听我娓娓道来,也希望为遇到同样问题的广大网友拨云见日,废话不多说,走起……一、问题描述:1. 背景…

2021编程语言排行:C#飙升,Python蝉联榜首

文 | 白开水不加糖出品 | OSC开源社区(ID:oschina2013)IEEE Spectrum 2021 年度编程语言排行榜现已发布。该榜单一年发布一次,今年是其发布的第八年。今年的排行榜包含 55 种语言,其排序综合 8 个重要线上数据源的 11 …

GitHub中教程资源 | 共21个图形绘制教程

一边学习,一边总结,一边分享! 写在前面 今天分享在GitHub中找到的教程资源,此教程是来自iMeta期刊及“农心生信工作室”的作品。发表在GitHub中,大家可以自行下载。 包含了21个图形的绘制,我大体看了一下…

盘点那些欺骗我感情的数学定理

全世界只有3.14 % 的人关注了爆炸吧知识一直以来,关于定理、公式的命名,人们都倾向于用数学家的名字命名,不仅简单方便,还可以达到纪念创立人的效果。不过,也不是每一次都这么好的,超模君发现,有…

linux启动mysql_Linux服务器安装Mysql教程

最开始用服务器的时候,也是对这些环境的安装操作极其陌生,找了很多方式,写这边文章就是为了让更少的童鞋走弯路,下面我们看看具体的操作流程。1、首先关闭linux的防火墙,执行命令chkconfig iptables off2、从mysql官网…

黑人抬棺,虽迟但到

1 脑子里有声音了▼2 人活着可太难了▼3 受疫情影响,汤姆哈迪在家种菜了▼4 4岁小朋友的涂鸦对颜色搭配的天赋简直点满▼5 白天哈哈哈哈哈哈哈哈晚上呜呜呜呜呜呜呜呜▼6 反正是最后的晚餐了通融一下嘛▼7 喵娘报恩▼你点的每个赞,我都认真当成了…

本地搭建K8s环境,并配置Ingress代理(1)

书接上文,上回说到了在Linux系统搭建K8s环境,通过脚本一键处理,具体可参考《入门K8s:一键脚本搭建Linux服务器集群》。虽然Linux系统很不错,而且也推荐都买一个做练习,但是不可避免的会遇到一些小问题&…