昝涛博士:人工智能如何自动编程

摘要: AI编程不是梦

在未来

工程师要经历一个coder到AIer的转变;

工程师是写人工智能

人工智能负责生成代码、测试代码、修复代码

人与机器相互合作

Fundebug创始人 昝涛

以《人工智能如何自动编程》为题进行演讲,以下为演讲全文。

(以下为嘉宾演讲全文,阅读时间2分钟)

人工智能如何自动编程

知名风险投资人Marc Andreessen说过:”Software is eating the world.“,事实上现在确实如此。如今我们每个人的手机上少则安装了五六个,多则几十个App。这些App都是由软件工程师通过一行一行代码写出来的。而写代码涉及到大量繁琐的细节,或则说有很多重复性的工作,我们能否用人工智来优化和改进呢?

我一直对物理有着很深的爱好,高中通过物理奥赛保送到中国科学技术大学计算机系,之后到日本国立情报学研究所读了计算机博士。其实,我是一个闲不住的人,在读书之余还尝试各种创业,做过互联网策展媒体石子儿,做过二次元社交好奇喵,最终沉下心来做了现在的事业Fundebug。

Fundebug为应用提供实时的的bug监控服务,保障产品的质量。上线一年半,注册团队超过1万家,处理数据超过6个亿。我们Fundebug的目标是帮助软件工程师更好的修复bug,甚至让软件工程师不再需要修复bug。那就是我们实现自动修复bug,甚至自动编程的目标。那么到底如何实现自动编程呢

我们先来回顾一下它的发展。现在人工智能的应用可以说已经是非常广泛了,像语音识别,比如今天的搜狗同传,它可以自动的将我现在讲的中文实时翻译成英文。自动驾驶现在已经上路测试了,人脸识别准确率有了极大的提升,乘坐高铁已经不用出示身份证,刷脸就可以。所以在各行各业,人工智能的技术已经有了广泛的应用。那么在编程领域又是怎样的呢?

国外一家叫做UIZard的公司发布了一项新技术叫做pix2code,通过深度学习技术能够将设计师画的草图直接生成网页代码。其实我们软件工程师在写软件的时候,首先要由设计师去把整个软件的外形设计出来,而且非常精确,长宽边距等等标注得非常清楚,再让工程师用代码实现出来。这个工作实际上是非常繁琐、枯燥的。实际上这部分工作如今可以用机器替代了,那么软件工程师只要关注逻辑层面的事情,而不是这些UI的细节

我们再来看另一个,微软最新的研究成果DeepCoder,让机器自动写程序。通过定义一个特殊的语言,然后给机器很多样本数据,输入是什么样子,输出是什么样子。然后机器就自动把这段程序给学习出来了。这个可以说是一个很大的突破,机器已经能够一定程度上自动写程序了

其实我认为要真正到实际应用,依然有两个难点:1. 这是一个特殊构造的语言,而现实中使用的语言要复杂得多;2. 通过大量的示例来学习出来的。要去构造大量的例子,对于现实的编程是不可行的

其实人工智能,从字面最直观的理解就可以看出:是让机器像人一样智能。那么我们人到底是如何学习的?我认为其中有很重要的一个点,那么就是从错误中学习,不断改进,不断提升。我们在读书的时候,很多人可能都有准备一个错题本,将平时做错的题目记下来,不断地温习巩固,通过掌握易错题来提升能力。

其实在深度学习中也有这样的概念,backpropagation,通过反向的回馈来不断地调整,来提升模型。我们可以设想一下,对于编程这个事情,是不是也可以从bug中学习,从bug中提升自己呢?我的答案是可以的。为什么这样说呢?

其实再厉害的工程师,写出来的第一个版本的代码绝对不可能是百分之百正确,没有问题的。他一样要反复的测试,发现遗漏的状况,把它修复,最终得到一个高质量的程序。机器和人一样,要实现自动编程,它也不会一次就写出100%正确的代码。一样会有bug,一样要改bug,最终达到一个正确率非常高的代码。

在未来,工程师不再是写代码,而是写AI,工程师要经历一个coder到AIer的转变在未来,工程师是写人工智能,人工智能负责生成代码、测试代码、修复代码;在未来,一定是人与机器相互合作的过程**。工程师做更加抽象、更加耗费脑力的事情,而把这些简单重复的工作让机器去做。

这**一切最根本的基础就是我们的机器要能够自动去修复bug**。只要通过不断的修复bug,不断地改进和迭代,才可能让机器生成高质量的代码。

昝涛

Fundebug创始人

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏PPV课数据科学社区

【学习】大数据技术学习路线指南:[2]实践原型

大数据的目的在于挖掘价值,而它的本质与OODA循环决策模型非常相似。用OODA这个原型来理解大数据是最合适的了!在战场上,OODA循环决策的周期越短,胜算越大;...

39060
来自专栏新智元

谷歌TPU 3.0重磅发布;I/O大会上机器人真的能打Call!

22350
来自专栏Android 研究

PMI-ACP 敏捷项目管理6——交付价值与确认价值

交付价值贯穿敏捷项目执行始终。为了完成这个目标,团队应该利用精益的最大化价值交付活动和最小化浪费或者合规活动(非增值)原则。例如,一些组织中必需的但是不直接专注...

33340
来自专栏机器人网

魅族技术晚场回顾,算法、架构、AI之外,还要考虑未来

在7月7日ArchSummit深圳架构师峰会上,魅族联合InfoQ共同策划举办了第9期以“大数据和 AI 应用实践”为主题的魅族技术开放日活动。活动邀请了5位小...

28640
来自专栏AI研习社

为什么 GPU 会成为通用计算的宠儿?

编者按:文章来源自 Mapd,作者 Jonathan Symonds,AI 研习社编译。 █ 英伟达在 2016 年的强势崛起,GPGPU (GPU 通用计算)...

52150
来自专栏华章科技

送书 | 别泡枸杞,别晒步数!7招搞懂健康数据,有型有颜等TA来撩

导读:你的日常活动正在产生大量数据!但其中很多数据也正在被你浪费。你以为数据与健康的关系,就是在朋友圈里晒晒步数?其实,并不需要复杂的技术,这些数据就可以帮你完...

5920
来自专栏木东居士的专栏

闲谈大数据和算法

20320
来自专栏SDNLAB

换个角度谈边缘计算:电力供给压力与计算能力占比率不高,它是过度炒作吗?

编者按:边缘计算近年来日趋火热,互联网公司、电信运营商、设备商等众多领域都在讨论边缘计算。

16420
来自专栏新智元

深度学习颠覆云计算,亚马逊、微软、谷歌势必与英伟达一决高下

【新智元导读】多位精英CIO、CTO和技术高管组成的福布斯杂志的常设部门Forbes Technology Council 撰文指出,随着市场对针对机器学习优化...

38990
来自专栏Jackson0714

【专注力管理:让你的努力更高效】总结

36530

扫码关注云+社区

领取腾讯云代金券