AI消除 bug ,彻底了实现了“bug-free″?

栏目: IT资讯 · 发布时间: 5年前

AI消除 bug ,彻底了实现了“bug-free″? 76c923939ae42549fefae6f0dd051f7c

又一代码清库的惨案发生了,不过这次要背锅是 AI。

近日,美国最大点评网站 Yelp 的工程师训练的神经网络闯祸了。他们训练了一个用来消除 bug 的神经网络,万万没想到,该网络 把所有代码都删除了,从根上彻底了实现“bug-free”......有点儿厉害

Yep 团队在 APP 中向近期可能感到体验不畅的各位用户致歉,该团队还表示,他们将不得不进行回滚(Roll back),但随即话锋一转,他们说好的一面是,这说明 APP 中 100% 没 bug 了啊。

好吧,没跑了,这个锅还是工程师的。

AI消除 bug ,彻底了实现了“bug-free″? 6fac06c0bd34a1d60ad2a9f74e8c5930

神经网络算法的这一波操作,让人不禁想起郭德纲的一个相声段子,“我心善,见不得穷人,于是把自己目之所及的穷人全赶走了。”收到工程师的任务指令后,兴许 AI 发现一个个 debug 太不省心,心一横,干脆一键 all clear 算求。

这事要在国内互联网公司,搞这个大一个工程事故,九成要说杀一个工程师祭天,尽管 Yelp 最后的点睛自嘲蛮轻松的,但人前卖笑,谁知道代码清除后工程师是不是目瞪口呆或者心里在吐血呢......毕竟,要 Roll back。

AI消除 bug ,彻底了实现了“bug-free″? 070bf363241d5a8fcf62ac4ee6af41f4

Roll back 究竟意味着什么?它指的是程序或数据处理错误,将程序或数据恢复到上一次正确状态的行为。那 Roll back 工作量有多大呢?回滚对 程序员 意味着非常严重的失误,微博网友@互联网八卦民工评论说,Yelp 在真实环境训练自己的人工智能神经网络去删除 app 中的 bug,结果是人工智能把所有都东西都删了,这不是一个简单的 Roll back。

网友们更好奇的是 Yelp 的工程师训练了一个怎样的网络?拿何种样本训练的?损失函数是如何设计的?有人猜测,代码里面没有 bug,损失函数一直是零,BP 和优化器无用武之地,所以触发异常,把整段代码都视为 bug?

代码里面没有 bug 似乎不太可能,翻阅 Yelp 的版本更新历史记录,你会发现这简直是一部“除虫史诗”,你们感受一下:

AI消除 bug ,彻底了实现了“bug-free″? d0f0f983710400883ebc31e124d5a9c3

本来是想让 AI 来帮忙 debug 的,现在 工具 反到成了阻碍。不知道是 debug 工具本身的黑箱问题,还是使用它的人没找到正确的“窍门”。至于这次 Yelp 工程事故报告还未有进一步的信息披露,但用神经网络算法 debug 应该有风险,部署需谨慎。

不过一款让工程师省时省力的 debug 工具显然是人人所期待的,AI科技大本营之前写过一篇 《@程序员,终于可以放心写bug了!Facebook的debug神器你值得拥有》 中提到,去年 9 月,Facebook 基于 AI 技术再次推出新款代码调试工具 SapFix,可针对特定的 bug 自动生成修复程序,然后将其提交给工程师,经确认之后,然后再部署到生产环境中。相比其一年前已投入大规模使用的智能自动化软件测试工具 Sapienz,SapFix 能够在没有 Sapienz 的情况下运行,主要用于修复 Sapienz 在生产前发现的程序 bug。

从发现 bug 到修复 bug,Facebook 有一套完整的流程:首先 Sapienz 以及 Facebook 的静态分析工具 Infer,会帮助定位代码中需要修补的点;一旦 Sapienz 和 Infer 精确定位与崩溃相关的特定代码部分之后,就会将该信息传递给 SapFix;最后,SapFix 会参考几种不同的策略,自动生成补丁。

AI消除 bug ,彻底了实现了“bug-free″? ffb09bf3012fafed61ba32972b8acb4e

根据 Facebook 的数据,Sapienz 报告的大约四分之三的错误都需要开发者来修复。自 Facebook 开始测试 SapFix 之后,该工具已经成功生成了被人类审核者接受并部署于生产的补丁。不过,目前 SapFix 总体上仍在开发阶段。

Facebook 都还只是在尝试阶段,Yelp 的工程师这次似乎对自家的 debug 工具太自信了,一键清库简直不能更酸爽,不知道他们这次有没有感受到来自深度学习的威力。

(*本文为 AI科技大本营原创文章,转载请联系微信 1092722531)

算法精品书单

AI消除 bug ,彻底了实现了“bug-free″? a653cea3b01a3aae5f4950a54f9e8a89

《算法详解(卷1)——算法基础》

作者:[美] 科里•奥尔索夫(Cory Althoff)

异步图书后台回复:“算法详解”获取视频

AI消除 bug ,彻底了实现了“bug-free″? bd882006e0f02e93cf137c8c60ec023a

扫描二维码,一键购买

这本书在美亚评分4.7,在作者倍受欢迎 在线算法课程 的基础之上编写的,是四卷本系列的第1卷。这个在线课程2012年起就定期更新,它建立在作者在斯坦福大学教授多年的本科课程的基础之上。也许你有所耳闻, 这本书就是《算法详解(卷1)——算法基础》。如果你更喜欢听和看,可以在YouTobe上搜索这本书的主题课程,免费观看。

《算法详解(卷1)——算法基础》作者蒂姆·拉夫加登(Tim Roughgarden)是斯坦福大学计算机科学系的教授,也是该校管理科学和工程系的客座教授,他从2004年开始教授和研究算法。本书是他的《算法详解》四部曲的第一卷。

这本书详细讲解算法基础,展现算法本质 ,是一本囊括基本算法知识的详解指南。集斯坦福大学教授多年教学经验,深入浅出,通俗易懂。

AI消除 bug ,彻底了实现了“bug-free″? 336dabaf2f8f5c22b61a0031095a0957

趣学算法

作者:陈小玉

AI消除 bug ,彻底了实现了“bug-free″? a7487f4f1029e649644a0bc839089ad9

扫描二维码,一键购买

本书从算法之美娓娓道来,没有高深的原理,也没有枯燥的公式,通过趣味故事引出算法问题,包含 50多个实例及完美图解 ,结合学生提问,分析算法本质,并给出代码实现的详细过程和运行结果。这本书适合入门,中学生以上学历,都适合入门。

AI消除 bug ,彻底了实现了“bug-free″? 3aadb32eef714f1a3647430ed4ed1584

编程珠玑(第2版·修订版)

作者:[美]乔恩·本特利(Jon Bentley)

AI消除 bug ,彻底了实现了“bug-free″? 6fa793a413a8c3b655388d487e5f1a3b

扫描二维码,一键购买

历史上伟大的计算机科学著作之一

融深邃思想、实战技术与趣味轶事于一炉的奇书

带你真正领略计算机科学之美

多年以来,当程序员们推选出心爱的计算机图书时,《编程珠玑》总是位于前列。正如自然界里珍珠出自细沙对牡蛎的磨砺,计算机科学大师JonBentley以其独有的洞察力和创造力,从磨砺程序员的实际问题中凝结出一篇篇不朽的编程“珠玑”,成为世界计算机界名刊《ACM通讯》历史上受欢迎的专栏,结集为两部不朽的计算机科学经典名著,影响和激励着一代又一代程序员和计算机科学工作者。本书为首卷,主要讨论计算机科学中本质的问题:如何正确选择和高效地实现算法。

在书中,作者选取许多具有典型意义的复杂编程和算法问题,生动描绘了历史上众大师们在探索解决方案中发生的轶事、走过的弯路和不断精益求精的历程,引导读者像真正的程序员和软件工程师那样富于创新性地思考,并透彻阐述和总结了许多独特而精妙的设计原则、思考和解决问题的方法以及实用程序设计技巧。解决方案的代码均以C/C++语言编写,不仅有趣,而且有很大的实战示范意义。每章后所附习题极具挑战性和启发性,书末给出了简洁的解答。

更多算法书

AI消除 bug ,彻底了实现了“bug-free″? ed3724af5d06a32ce62db1843d1d562d

扫描二维码,一键购买

畅享优惠


以上所述就是小编给大家介绍的《AI消除 bug ,彻底了实现了“bug-free″?》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

如何求解问题

如何求解问题

Zbigniew Michalewicz、David B.Fogel / 曹宏庆 / 中国水利水电出版社 / 2003-2-1 / 35.00元

《如何求解问题:现代启发式方法》通过一系列贯穿于章节间的有趣难题,《如何求解问题:现代启发式方法》深入浅出地阐述了如何利用计算机来求解问题的一些现代启发式方法。全书包括两部分,共分15章。一起来看看 《如何求解问题》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

在线进制转换器
在线进制转换器

各进制数互转换器

MD5 加密
MD5 加密

MD5 加密工具