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

444 阅读6分钟
原文链接: blog.fundebug.com

摘要: 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创始人

Fundebug由留学日本的昝涛博士创立,提供全平台(网站、小程序、APP、服务器)的BUG实时监控服务。Fundebug独创了全球领先的可视化场景复现技术,可以大幅度提高修复BUG的效率。自从2016年底正式上线,Fundebug累计处理了6亿+错误事件,目前付费用户有Google中国、360、金山软件、荔枝FM、艾瑞咨询、百姓网等众多明星企业。Fundebug致力于打造下一代编程平台,通过研发BUG自动修复和机器自动化测试,最终实现人工智能自动编程的目标。

关于Fundebug

Fundebug专注于JavaScript、微信小程序、微信小游戏、支付宝小程序、React Native、Node.js和Java实时BUG监控。 自从2016年双十一正式上线,Fundebug累计处理了6亿+错误事件,得到了Google、360、金山软件等众多知名用户的认可。欢迎免费试用!

版权声明

转载时请注明作者 Fundebug以及本文地址:
https://blog.fundebug.com/ 2018/10/16/how_to_realize_the_dream_of_ai_coding/

您的用户遇到BUG了吗?

体验Demo 免费使用