摘要: 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 https://www.fundebug.com/ 专注于 JavaScript, 微信小程序, 微信小游戏, 支付宝小程序, React Native,Node.JS 和 Java 实时 BUG 监控. 自从 2016 年双十一正式上线, Fundebug 累计处理了 6 亿 + 错误事件, 得到了 Google,360, 金山软件等众多知名用户的认可. 欢迎免费试用!
来源: https://juejin.im/entry/5bc5552ce51d450e64764e1a