以学习常识为目标的自动驾驶-commaai第三篇

本文分三部分: 关于人工智能学习常识的相关观点 commaai的自动驾驶系统技术和架构代码 谷歌大脑团队成员的身份经历及对普通人的启发

开始先介绍一下commaai情况:无人车初创企业Comma.ai获310万美元融资 http://36kr.com/p/5045476.html

commaai的自动驾驶上路测试视频:

视频内容

---------------------------------

下面开始探讨人工智能学习常识的观点:

机器学习实际上就是训练常识 。什么是常识?根据维基百科“常识是一种感觉,理解和判断事物基本能力,几乎被所有人所公认,所有的人都可以合理地预期,而无需任何争论”。

简单来说,容易理解并且被广泛接受的事实(常识)是复杂结构的基石。如果有持久的常识,那么就是一种智能化。

人类并不总是坚守常识,我们经常忽略了某个常识,然后导致错误的结果。准确地说,有时由于某些社会规则,我们并不在意常识。有大量的例子,比如由于人们盲目地追求流行或者术语带来巨大的失败,这能够说明如果使用常识,他们本可以拯救自己的。人们通常的错误都来源于不使用常识。常识是人类长期以来根据经验学习而得到的共同遗产。

如果有人不喜欢玩火,不喜欢在冷天去游泳,不投资肯定亏损的商业,还有采取类似明智的决定等,这些都是归功于常识。常识随着经验而增长。

当我们训练一个机器学习模型时,我们试图让它在基础数据中学习普遍事实。每个特征都像一个传感器(预测器/分类器)一样贡献出一些信息,然后模型收集到所有的信息,最后试图产生一个一般性的常识,从而对新的数据进行预测或者分类。

当任何机器学习模型要变得复杂而多余时,我们就说它失去了常识,需要做一些概括。这种情况被称为过度拟合。类似的,当模型欠拟合时我们仍然建议按常理来做判断。

参考https://mp.weixin.qq.com/s?__biz=MzIwOTA1MDAyNA==&mid=401349737&idx=2&sn=9287950e31334a08ac8c1b36a37d791f

另一篇文章是:Yann LeCun 谈对抗性网络:如何让机器掌握常识? 参考:https://mp.weixin.qq.com/s?__biz=MzA3MzI4MjgzMw==&mid=2650716316&idx=2&sn=83b05d3f84a419499c126f14a7bde9a6 点积阅读原文可以直接跳转到此文。

我的观点和Yann LeCun相似,生成模型可以让深度网络学习到语义相关的概念, 而且概率推理VAE、赫布学习规则和BP算法的关系都已有进展,这些都可以大大提高深度网络学习常识是速度

个人认为语义概念是能媲美人类小孩学到的概念,特别是openai最近开源的INFOGAN更是将语义概念的学习推进了一步,学习到连续的特征变化:

InfoGAN —— 一个对 GAN 的扩展,学习图像的去纠缠的和可解释的表示. 正常的 GAN 通过用模型重新产生数据分布达到这个目的,但是代码空间的 layout 和组织是 underspecified —— 存在很多可能的解可以将单位 Gaussian 映射到图像上,最终获得的可能是非常复杂和高度纠缠的. InfoGAN 对该空间引入了额外的结构通过增加一个新的包含最大化表示向量和观测值的小的子集的互信息目标函数. 这个方法给出相当出色的结果. 例如,在 3D 人脸图像中,我们变动代码的一个连续的维度,保持其他维度不变. 很明显从 5 个提供的例子中(每一行),代码的结果维度刻画了可解释的维度,并且模型在没有告诉这些重要特征存在的情形下可能已经理解到是存在摄像头角度、面部变化等等:

文/Not_GOD(简书作者) 原文链接:http://www.jianshu.com/p/db87c51de510 生成模型介绍可参看此ppt:https://github.com/sjchoi86/dl_tutorials/blob/master/presentations/Week6-2c%20Generative%20Adversarial%20Network.pptx

更多参看资料包括:

Autoencoding beyond pixels using a learned similarity metric

https://arxiv.org/abs/1512.09300

Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks

https://arxiv.org/abs/1511.06434

Generating Images with Perceptual Similarity Metrics based on Deep Networks

http://arxiv.org/abs/1602.02644

https://github.com/openai/InfoGAN

https://github.com/openai/improved-gan


下面开始第二部分内容介绍:

commaai自动驾驶的生成模型的架构代码:代码非常清爽!

首先Steering Angle model 代码相对简单,如下

核心是Drive Simulator的生成模型,看论文也是如此

生成模型的训练入口是train_generative_model.py 文件,

可以看到首先是命令行参数代码,然后从autoencoder.py import get_model,通过get_model讲各个深度网络模型载入,然后开始训练train_model

核心就是get_model载入的各个深度网络模型,我们看autoencoder.py 文件

这里除了get_model 还定义生成模型的几个子网络 generator encoder discriminator,这几个网络的详细介绍可以参考上面的几篇论文,这几个子网络的定义也很清楚,比如generator

网络结构一清二楚,get_model对模型的相关关系,优化方法都进行了详细的定义,模型准备、输入输出关系:

loss定义:

优化定义:

整体框架基本如此,这就是模型的大体结构。更多细节请看源代码https://github.com/commaai/research


第三部分给大家介绍谷歌大脑成员的背景,希望对大家有帮助。

Fernanda Viegas:我是学图像设计和艺术史的,我从来没有想过我会在高科技企业工作,更别说专门做机器学习了。从传统图像设计专业毕业后,我决定在MIT 媒体实验室读博硕士和博士,我在那里学会了编程,开始做数据可视化。我的工作就是让用户能更好地理解复杂的信息,现在也就是让初学者的专家能更好地与机器学习系统互动,从而理解这些系统。

Chris Olah:我没有大学文凭,我想这应该让我显得不一样。要说我是怎么加入谷歌大脑的——

  • 高中的时候我学了很多数学、编了很多程序
  • 在多伦多大学学了一年数学,期间有个朋友因为兴趣玩起了炸弹,所以有挺多时间我都拿去为他出庭作证,后来我干脆休学,专门为他作证,顺便研究3D打印;
  • 我朋友被证实无罪,我的3D打印让我获得奖学金;
  • 我通过Michael Nielsen接触到了机器学习;
  • 发现 Yoshua Bengio 在招研究生,于是联系 Bengio,他帮了我很多;
  • 在谷歌发表演讲,Hinton 给我一个在谷歌大脑实习的工作。两年后,我成了这里的全职研究员。这是最适合我的工作:)

Martin Wattenberg:虽然我是学数学的,但我毕业后头 6 年都在做记者。这段经历让我深感解释说明的重要性,对我现在的工作也有很大启示。机器学习系统不应该是“黑箱”:我们对它们的了解越多,就越能够有效地改善它们(这里说的“我们”指每个人,不仅仅包括计算机科学家和开发人员,也包括普通的人)。

Doug Eck:我本科学英语文学,侧重创造性写作。我估计是 Google Brain 团队中唯一有英语文学学位的人。同时,我也自学了几年数据库编程。我还玩一点音乐。后来我回学校读博,拿了音乐方面的计算机科学博士学位。然后我从事学术研究(博士后用LSTM做音乐生成;蒙特利尔大学做教员)。6年前作为研究员加入谷歌。我至今仍认为学文科的本科经历对我现在的工作有很大帮助作用。

Dan Mané:学计算机科学之前,我对金融经济很感兴趣。因此,我上大学学的是经济学专业,毕业后实习也是在金融岗位实习。但是,经济学课程上起来枯燥无味,翻来覆去都是那几句,我在金融行业的经历也让我觉得自己该在其他地方工作。所以,我转专业转到了哲学,然后事情变得有趣多了。大学上到一半,我第一次学了计算机科学,超级有趣,但那个时候转专业已经来不及了,所以我说服老师,让我在计算机科学的学分也能抵数,作为哲学在人工智能方面的实践。之后,我做了好几份软件工程的工作,最后在英国在TensorFlow。我到 Google Brain 的经历说起来很巧合,当时他们需要人做 TensorBoard,我之前的一份工作不知怎么的做了很多数据可视化的工作。所以,我虽然没有深厚的背景,但是我有幸加入这个厉害的团队,有了完美的同事和这份完美的工作:)来源:https://mp.weixin.qq.com/s?__biz=MzI3MTA0MTk1MA==&mid=2651985829&idx=1&sn=8e139ad6e91c58c1302f4ffcf5837605

大家可以在公众号内提出各自想法!

希望深入沟通交流此开源自动驾驶可在公众号回复加群。

原文发布于微信公众号 - CreateAMind(createamind)

原文发表时间:2016-08-12

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

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏AI科技评论

学界 | 从虚拟到现实,DRL让小狗机器人跑起来了

Google 最新的一篇 paper 告诉我们:DRL 在真实机器人上面是可行的,只要我们尽可能减小 reality gap。

1472
来自专栏AI科技大本营的专栏

周末漫谈|XGBoost与深度学习到底孰优孰劣?都说XGBoost好用,为什么名气总不如深度学习?

来源|Quora 整理|AI100 AlphaGo大战柯洁、李世石后,所有人都能谈上几句深度学习。人工智能在围棋上的这场突破,最终还要归功于机器学习三巨头三十年...

5248
来自专栏程序你好

VR技术: Facebook的3D照片是怎么回事?

992
来自专栏AI科技评论

小白不知从何入手认知机器学习?Shakir Mohamed 授你锦囊妙计

导读:如何让机器学习从环境中自主学习和思考是科学家们正努力探索的目标。本文的一些想法说不定可以为研究带来一丝灵感。 注:本文译自 The Spectator,作...

2916
来自专栏奇点大数据

最前沿:从虚拟到现实,DRL 让小狗机器人跑起来了

深度增强学习 DRL 在仿真机器人已经取得了很大的成功,同时,也在真实的机器人抓取(Robotic Manipulation)问题上有了很大的进展。然而依然会有...

663
来自专栏AI派

个性化推荐系统中的绕不开的经典问题有哪些

推荐系统从诞生到现在,伴随产生了很多的问题,有一些问题有较好的解决方案,但是有的仍然没有通用的解决方案。介绍这些问题之前,先来介绍下推荐系统的预测手段。

3153
来自专栏AI科技大本营的专栏

首发|贾扬清回应[1小时训练ImageNet]:要关注这10个技术细节,窝里斗没有必要

昨天,整个深度学习领域,几乎被一篇论文刷了屏。 论文指出,通过一种新的方法,能够大幅加速模型训练的过程,仅需1小时,就能训练完ImageNet这样的大规模数据集...

3946
来自专栏机器之心

学界 | Science介绍新型好奇心算法:基于强化学习摸索世界

选自Science 作者:Matthew Hutson 机器之心编译 参与:吴攀、李亚洲 好奇心一直被一些科学家认为是智能的基本属性之一,为机器赋予好奇心自然...

3677
来自专栏新智元

微软视觉智能技术突破: 首次 bot 生成视频标题,将开源大型数据库

【新智元导读】台湾国立清华大学与微软合作,首次实现了让机器自动生成视频标题。他们创建了一个系统,可以由机器人观看视频、找出视频中的亮点,然后生成简洁、吸引眼球的...

47713
来自专栏数据派THU

独家|盘点5个TensorFlow和机器学习课程,程序员福利(附资源)

本文为你介绍5个有关TensorFlow的机器学习课程,来帮助你进一步了解数据科学和人工智能。

1944

扫码关注云+社区

领取腾讯云代金券