即日起在codingBlog上分享您的技术经验即可获得积分,积分可兑换现金哦。

会编程的 AI + 会修 Bug 的 AI,等于什么 ?

微信 技术最前线 117℃ 0评论

(点击上方公众号,可快速关注)

关于人工智能未来的畅想,除了家庭服务机器人,快递无人机,医用机器人等等,Lucas Carlson 认为人工智能在另外一个领域的可能带来的变革,却没有引起公众的足够注意——这就是:让计算机自己编程

2016年11月末,Lucas Carlson 撰文:

目前,机器学习方面的专家倾向于把研究聚焦于具体领域内高度裁剪的 AI 应用——比如:面部识别、自动驾驶汽车、语音识别,甚至是互联网搜索结果等方面。但是,这些技术同样可以应用到让计算机理解其自身的代码架构上——当然这里是指脱离人类的帮助、解释和干涉的情况下进行的理解——其实这种对代码的“理解”和让计算机理解自然语言,或是识别图像并没有本质的区别。

如果代码能够自我分析——做到比人类更快地修正错误并不断优化——那么技术革新将会发生得越来越快。其带来的可能性几乎是无穷无尽的:医学上的进步,更智能的机器人,更“智能“的手机等等。

…… 而 AI 将会改变这种局面

Lucas 的全文,请参见《让代码写代码,自主编程的 AI 离我们还有多远?》。

2017年2月23日 NewScientist 报道,微软和剑桥大学的研究员近日发布了一篇论文,文中阐述了其科研成果 DeepCoder:一个会编程的机器学习系统。

英文论文:https://openreview.net/pdf?id=ByldLrqlx

微软和剑桥大学研究人员联合创建的机器学习系统 DeepCoder 学会了如何自己写代码。它能让人们在没有掌握必要编程知识的情况下,更轻松的构建出简单的应用程序。

未来,非程序员可以通过简单的描述出一个程序的想法,然后让机器学习系统将其构建出来。DeepCoder  使用了被称为「程序合成」的技术,将来自现有软件的一行行源代码拼接在一起。

给定每一个代码片段的输入和输出列表,DeepCoder 学会要实现预期结果需要使用到哪部分代码。它的一大优势是速度,能在几分之一秒内创建出一个可工作的程序。在了解了哪一部分源代码能工作,哪一部分不能之后,DeepCoder 能改进每一次创建的新程序。


目前DeepCoder只能生成五行左右代码的程序。但如果采用了适当的编程语言,几行代码也能抵上一段复杂的代码了。

没有参与 DeepCoder 的麻省理工学院 Armando Solar-Lezama 认为,这项技术在自动化方面的潜能,将极大减少在开发代码方面的精力消耗。一下子生成一大段代码,这有点不现实。但一段代码,是可以有很多的小段代码组合而成。

Solar-Lezama 同时认为,DeepCoder 并不会让程序员失业下岗。因为「程序合成」是把编程阶段枯燥部分自动化了,程序员能把更多精力放在更为复杂的任务上。

除了自动编程的,还有自动修 Bug 的程序

2015 年 6 月下旬,麻省理工学院的研究人员展示了一个新系统,可以通过从其他更加安全的应用中自动导入相关功能,借以修复原来软件中的危险漏洞。

这个引人注目的系统叫做 CodePhage ,它借用其他程序时并不需要访问借主应用的源码。相反,该系统分析这个应用的执行情况,并标记出其安全检查类别的特性。因此,即使所编写的语言与被修复应用的语言不同,该系统仍然可以从中导出检查功能用来修复应用。

CodePhage 将代码导入易受攻击的程序后,还会进行进一步分析以确保漏洞被修复。

MIT 计算机科学与人工智能研究室(CSAIL)的研究员,CodePhage 的研发领导人员 Stelios Sidiroglou-Douskos 表示:

“我们在开源库里有大量代码可用,数百万计项目,而且很多项目都有类似的实现了。这些项目总有一些可以与别的许多项目共享功能的子模块,即便那不一定是该程序的核心功能。”

有了 CodePhage,“你将逐渐建立一个集其他应用最优秀部分于一身的混合系统。”

会编程的 AI ,加上会修 Bug 的 AI,等于什么 ?


大家一起来畅想一下,欢迎在评论中留言。

参考:

Solidot、伯乐在线、MIT News、VentureBeat、NewScientist

觉得这条资讯有帮助?请转发给更多人

关注 技术最前线 看 IT 要闻

转载请注明:CodingBlog » 会编程的 AI + 会修 Bug 的 AI,等于什么 ?

喜欢 (0)or分享 (0)
发表我的评论
取消评论

*

表情
(50)个小伙伴在吐槽
  1. 还要程序员何用呢?
    Mr_Lu2017-02-24 07:31 回复
  2. 等于下岗/再见
    2017-02-24 07:32 回复
  3. 等于我要失业了
    kaine2017-02-24 07:32 回复
  4. 只有用产品经理AI来制衡他们了
    鉴鉴(Bill)2017-02-24 07:32 回复
  5. 等于以彼之茅攻彼之盾?俩货都会乱套吧
    NoxArena2017-02-24 07:33 回复
  6. 继阿法狗之后,程序狗也要问世啦!
    Erucy2017-02-24 07:33 回复
  7. 刚毕业工作就要失业了……虽然它木有创造力/流泪
    懒猫2017-02-24 07:34 回复
  8. 现阶段人机交互部分可以完全由AI来做了,以后更高级算法也将被替代。
    阮承志2017-02-24 07:34 回复
  9. 当然如果协调的好的话……可能会比较像DNA自我复制+自我修复的样子吧……Woc新的进化出现了?
    NoxArena2017-02-24 07:35 回复
  10. 机器自己写为什么还有BUG要调/白眼
    李白²º¹72017-02-24 07:35 回复
  11. 等于找不到工作。
    李浩2017-02-24 07:36 回复
  12. 所以,现在的程序员可以转行做AI开发编程嘛?
    Bad.Wowo!2017-02-24 07:36 回复
  13. 我要这键盘有何用?
    Enzo2017-02-24 07:36 回复
  14. 等于终结者T800 人类在作死的道路上终于又进一步。
    齐国大熊猫2017-02-24 07:41 回复
  15. 意味着机器会生娃了,突然觉得很恐怖
    shao2017-02-24 07:41 回复
  16. 机器走向智能化,黑客帝国~
    阿飞2017-02-24 07:42 回复
  17. 做机器学习的同志们,本是同根生,相煎何太急/傲慢
    Will2017-02-24 07:45 回复
  18. 程序员整天开发系统,app,来取代其他行业的人工劳里。终于,现在轮到程序员自己要被取代了。
    陈凯2017-02-24 07:45 回复
  19. 会编程的 AI + 会修 Bug 的 AI = 测试 + 开发 = 天下大乱
    激动滴西瓜2017-02-24 07:45 回复
  20. 等于beta猫,末世将至,人类将活在beta猫的阴影之下/呲牙
    过客EH2017-02-24 07:46 回复
  21. bug都会修,创造力都不是事了
    via2017-02-24 07:48 回复
  22. 意味着软件能自动升级了。
    赵伟2017-02-24 07:50 回复
  23. 我想得准备换工作了
    逃。2017-02-24 07:54 回复
  24. 有神奇的产品经理在,我们就不会失业
    段荣伟2017-02-24 07:56 回复
  25. 说明没有什么职业是安全的了
    kate2017-02-24 07:57 回复
  26. 等于天网
    瑜瑜💯2017-02-24 07:59 回复
  27. 我有一个想法,就差一个程序员。
    陈汉良2017-02-24 08:03 回复
  28. 还没毕业,就面临失业,
    众人皆醉我独醒2017-02-24 08:06 回复
  29. 终于到了程序员自我伤害的时候
    HORNG2017-02-24 08:08 回复
  30. 会写文章的机器早有了,小编还没失业,我们有什么可担心的/跳绳
    小李菜刀2017-02-24 08:21 回复
  31. 看得我差点把JAVA书全卖了
    真命天子2017-02-24 08:29 回复
  32. 就像西部世界里的机器人一样,把人给干掉了
    小水2017-02-24 08:30 回复
  33. 感觉离机器统治地球又进了一步
    马子剑2017-02-24 09:16 回复
  34. 这样搬起石头砸自己的脚
    a sky fish2017-02-24 09:34 回复
  35. 如果让AI学会了编程,那么,天网似的灾难将以不可想象的速度到来,人类准备好应对这种灾难了么?
    Murphy's Law2017-02-24 09:41 回复
  36. 不用讨论什么,=要失业了!
    A02017-02-24 09:46 回复
  37. 等于一个可以改变世界的程序员。
    江南2017-02-24 10:03 回复
  38. 等于自由,人类可以探索其他领域了
    Swing2017-02-24 10:29 回复
  39. 请问谁来告诉计算机编写什么样的程序? 如果一个复杂的程序应该怎么给计算机描述? 当计算机需要编写的程序越来越大,那么这种描述会不会像 机器码->汇编->C->... 这样进化? 好的,新型的编程语言诞生了
    鸿泽2017-02-24 10:32 回复
  40. 机器人发现自己就是一款BUG
    php^面相对象2017-02-24 10:41 回复
  41. Ai will kill coder
    2017-02-24 11:52 回复
  42. 热闹了
    冰寒骄阳2017-02-24 16:40 回复
  43. 就好比苹果的siri与微软的小娜,相爱相杀,相生相克
    孙晓政Shawn2017-02-25 01:13 回复
  44. 自己生成代码的机器人在前段时间新闻上面有看到,意味着未来我们程序员要失业了,百度大脑的出现等例子,唉天下大乱,机器取代人类…
    Jerry_咖啡哥2017-02-25 02:05 回复
  45. 个人觉得没那么简单,技术和算法的革新得出现关键性的突破,而这种突破是不可确定的,说不定在明天开发的那批人灵光一闪就突破了,说不定得积累到一定程度,积累的时间可能需要很久,比如十年,二十年,但是有一句话肯定没错,程序员需要不断的学习和挑战自我,现在AI给我们的压力,是迟早要到来的,连这个挑战都怕,还不如回去种地去,种地机器人早出来了,然而农民还是没有失业
    记忆2017-02-25 02:25 回复
  46. 机器人自己写的话,岂不是不会有BUG有的话不就是机器人也会犯错?逗呢?人工智能好高级!
    岁月2017-02-25 03:10 回复
  47. 机器统治人类。人类成了机器的附属品
    一缕阳光2017-02-25 04:17 回复
  48. 我相信有产品在我们就不会失业
    Lambert2017-02-26 03:52 回复
  49. 自取灭亡呗
    赵成晓2017-02-27 00:38 回复
  50. /偷笑/偷笑:巴嘎!
    叶子2017-03-11 14:09 回复