本月累计签到次数:

今天获取 积分

机器学习

机器学习

420 浏览

机器学习如何解决无线网络问题?

材料类 夜入西风 2017-04-24 13:58 发表了文章 来自相关话题

无线网络对每天的工作是至关重要的。企业运行中,快速、可靠、稳定的无线覆盖灰常重要,企业中的许多日常业务都要依赖于它。然而,很多时候,IT团队在个人经验方面都十分欠缺。谷歌的一位无线技术专家,Ajay Malik,发表了自己的观点。他觉得这主要来自于两个挑战:
1. 数据收集。我们想知道每个用户在每个特定时间的状态,但随着网络条件和用户位置的变化,这些状态也会不断变化。随着成千上万的设备被追踪,需要收集的信息的量就大大增加了。这些数据量无法接入点或在具有固定内存和CPU的设备上运行。
2. 数据分析。整理时间日志和数据转储需要大量的时间和精力,才能获得有意义的见解,而且需要有效的Wi-Fi智能。
Ajay相信,很快会有一天,大数据和机器学习将解决上述两个挑战。它会允许我们问我们的网络是什么感觉,然后它会告诉我们哪里出了问题,并提供详细的解决方案(或自动修复问题)。虽然这似乎是一个未来的愿景,但是通过大型数据工具和机器学习技术(比如无人值守训练算法),已经实现了基础。
使用这些技术,我们现在可以不断更新测量和实施无线用户体验的模型。比如,我们可以高精确度地实时确保特定的互联网速度。这使得IT人员了解到无线用户之前饱受速度慢、不稳定的网络环境时的痛苦了。
一旦检测到用户问题,机器学习分类算法可以隔离问题的根本原因。比如,由于干扰,容量或LAN/WAN问题导致的问题。隔离问题后,机器学习就可以自动重新配置资源来调节问题。这样可以最大限度地缩短IT团队在故障排除中花费的时间和精力,同时提供最佳的无线体验。
Ajay表示自己以前写过一篇关于人造智能将彻底改变Wi-Fi的文章。他希望能够通过扫描大量数据来释放IT团队,从而获取有意义的信息。但它就像在大海捞针,机器学习是自动执行数据包捕获、时间关联和根本原因分析等常规操作任务的关键。此外,它可以提供预测性的建议,让我们的无线网络摆脱麻烦。
这个愿景的关键还在于云元素带来的弹性尺度和可编程性。云是唯一适合处理Wi-Fi的媒体,比如大数据问题。它具有存储大量数据的能力,具有分布式架构,以及能够极快地分析这些数据。
Wi-Fi不是新鲜事物了。现在,Wi-Fi比以往任何时候都要更先进。我们处于无线网络需要像服务一样管理的时代,具有其他关键业务平台的所有灵活性、可靠性。通过机器学习、大数据和云计算,我们期望的正在快速成为现实。 查看全部
无线网络对每天的工作是至关重要的。企业运行中,快速、可靠、稳定的无线覆盖灰常重要,企业中的许多日常业务都要依赖于它。然而,很多时候,IT团队在个人经验方面都十分欠缺。谷歌的一位无线技术专家,Ajay Malik,发表了自己的观点。他觉得这主要来自于两个挑战:
1. 数据收集。我们想知道每个用户在每个特定时间的状态,但随着网络条件和用户位置的变化,这些状态也会不断变化。随着成千上万的设备被追踪,需要收集的信息的量就大大增加了。这些数据量无法接入点或在具有固定内存和CPU的设备上运行。
2. 数据分析。整理时间日志和数据转储需要大量的时间和精力,才能获得有意义的见解,而且需要有效的Wi-Fi智能。
Ajay相信,很快会有一天,大数据和机器学习将解决上述两个挑战。它会允许我们问我们的网络是什么感觉,然后它会告诉我们哪里出了问题,并提供详细的解决方案(或自动修复问题)。虽然这似乎是一个未来的愿景,但是通过大型数据工具和机器学习技术(比如无人值守训练算法),已经实现了基础。
使用这些技术,我们现在可以不断更新测量和实施无线用户体验的模型。比如,我们可以高精确度地实时确保特定的互联网速度。这使得IT人员了解到无线用户之前饱受速度慢、不稳定的网络环境时的痛苦了。
一旦检测到用户问题,机器学习分类算法可以隔离问题的根本原因。比如,由于干扰,容量或LAN/WAN问题导致的问题。隔离问题后,机器学习就可以自动重新配置资源来调节问题。这样可以最大限度地缩短IT团队在故障排除中花费的时间和精力,同时提供最佳的无线体验。
Ajay表示自己以前写过一篇关于人造智能将彻底改变Wi-Fi的文章。他希望能够通过扫描大量数据来释放IT团队,从而获取有意义的信息。但它就像在大海捞针,机器学习是自动执行数据包捕获、时间关联和根本原因分析等常规操作任务的关键。此外,它可以提供预测性的建议,让我们的无线网络摆脱麻烦。
这个愿景的关键还在于云元素带来的弹性尺度和可编程性。云是唯一适合处理Wi-Fi的媒体,比如大数据问题。它具有存储大量数据的能力,具有分布式架构,以及能够极快地分析这些数据。
Wi-Fi不是新鲜事物了。现在,Wi-Fi比以往任何时候都要更先进。我们处于无线网络需要像服务一样管理的时代,具有其他关键业务平台的所有灵活性、可靠性。通过机器学习、大数据和云计算,我们期望的正在快速成为现实。
2 回答

哪些是不平衡数据的最佳机器学习技术?

IT软件类 金榜题名 2017-04-21 17:14 回复了问题 • 3 人关注 来自相关话题

377 浏览

必啃的101本机器学习经典书籍

IT软件类 dasBlauer 2017-01-11 11:31 发表了文章 来自相关话题

另外很多优秀书籍不详细介绍:

入门:
Pattern Recognition And Machine Learning
Christopher M. Bishop
Machine Learning : A Probabilistic Perspective
Kevin P. Murphy
The Elements of Statistical Learning : Data Mining, Inference, and Prediction
Trevor Hastie, Robert Tibshirani, Jerome Friedman
Information Theory, Inference and Learning Algorithms
David J. C. MacKay
All of Statistics : A Concise Course in Statistical Inference
Larry Wasserman
优化:
Convex Optimization
Stephen Boyd, Lieven Vandenberghe
Numerical Optimization
Jorge Nocedal, Stephen Wright
Optimization for Machine Learning
Suvrit Sra, Sebastian Nowozin, Stephen J. Wright
核方法:
Kernel Methods for Pattern Analysis
John Shawe-Taylor, Nello Cristianini
Learning with Kernels : Support Vector Machines, Regularization, Optimizatio 
n, and Beyond
Bernhard Schlkopf, Alexander J. Smola
半监督:
Semi-Supervised Learning
Olivier Chapelle
高斯过程:
Gaussian Processes for Machine Learning (Adaptive Computation and Machine Le 
arning)
Carl Edward Rasmussen, Christopher K. I. Williams
概率图模型:
Graphical Models, Exponential Families, and Variational Inference
Martin J Wainwright, Michael I Jordan
Boosting:
Boosting : Foundations and Algorithms
Schapire, Robert E.; Freund, Yoav
贝叶斯:
Statistical Decision Theory and Bayesian Analysis
James O. Berger
The Bayesian Choice : From Decision-Theoretic Foundations to Computational I 
mplementation
Christian P. Robert
Bayesian Nonparametrics
Nils Lid Hjort, Chris Holmes, Peter Müller, Stephen G. Walker
Principles of Uncertainty
Joseph B. Kadane
Decision Theory : Principles and Approaches
Giovanni Parmigiani, Lurdes Inoue
蒙特卡洛:
Monte Carlo Strategies in Scientific Computing
Jun S. Liu
Monte Carlo Statistical Methods
Christian P.Robert, George Casella
信息几何:
Methods of Information Geometry
Shun-Ichi Amari, Hiroshi Nagaoka
Algebraic Geometry and Statistical Learning Theory
Watanabe, Sumio
Differential Geometry and Statistics
M.K. Murray, J.W. Rice
渐进收敛:
Asymptotic Statistics
A. W. van der Vaart
Empirical Processes in M-estimation
Geer, Sara A. van de
不推荐:
Statistical Learning Theory
Vladimir N. Vapnik
Bayesian Data Analysis, Second Edition
Andrew Gelman, John B. Carlin, Hal S. Stern, Donald B. Rubin
Probabilistic Graphical Models : Principles and Techniques
Daphne Koller, Nir Friedman
除了以上推荐的书以外,出版在Foundations and Trends in Machine Learning上面的survey文章也都值得一看。 查看全部
另外很多优秀书籍不详细介绍:

入门:
Pattern Recognition And Machine Learning
Christopher M. Bishop
Machine Learning : A Probabilistic Perspective
Kevin P. Murphy
The Elements of Statistical Learning : Data Mining, Inference, and Prediction
Trevor Hastie, Robert Tibshirani, Jerome Friedman
Information Theory, Inference and Learning Algorithms
David J. C. MacKay
All of Statistics : A Concise Course in Statistical Inference
Larry Wasserman
优化:
Convex Optimization
Stephen Boyd, Lieven Vandenberghe
Numerical Optimization
Jorge Nocedal, Stephen Wright
Optimization for Machine Learning
Suvrit Sra, Sebastian Nowozin, Stephen J. Wright
核方法:
Kernel Methods for Pattern Analysis
John Shawe-Taylor, Nello Cristianini
Learning with Kernels : Support Vector Machines, Regularization, Optimizatio 
n, and Beyond
Bernhard Schlkopf, Alexander J. Smola
半监督:
Semi-Supervised Learning
Olivier Chapelle
高斯过程:
Gaussian Processes for Machine Learning (Adaptive Computation and Machine Le 
arning)
Carl Edward Rasmussen, Christopher K. I. Williams
概率图模型:
Graphical Models, Exponential Families, and Variational Inference
Martin J Wainwright, Michael I Jordan
Boosting:
Boosting : Foundations and Algorithms
Schapire, Robert E.; Freund, Yoav
贝叶斯:
Statistical Decision Theory and Bayesian Analysis
James O. Berger
The Bayesian Choice : From Decision-Theoretic Foundations to Computational I 
mplementation
Christian P. Robert
Bayesian Nonparametrics
Nils Lid Hjort, Chris Holmes, Peter Müller, Stephen G. Walker
Principles of Uncertainty
Joseph B. Kadane
Decision Theory : Principles and Approaches
Giovanni Parmigiani, Lurdes Inoue
蒙特卡洛:
Monte Carlo Strategies in Scientific Computing
Jun S. Liu
Monte Carlo Statistical Methods
Christian P.Robert, George Casella
信息几何:
Methods of Information Geometry
Shun-Ichi Amari, Hiroshi Nagaoka
Algebraic Geometry and Statistical Learning Theory
Watanabe, Sumio
Differential Geometry and Statistics
M.K. Murray, J.W. Rice
渐进收敛:
Asymptotic Statistics
A. W. van der Vaart
Empirical Processes in M-estimation
Geer, Sara A. van de
不推荐:
Statistical Learning Theory
Vladimir N. Vapnik
Bayesian Data Analysis, Second Edition
Andrew Gelman, John B. Carlin, Hal S. Stern, Donald B. Rubin
Probabilistic Graphical Models : Principles and Techniques
Daphne Koller, Nir Friedman
除了以上推荐的书以外,出版在Foundations and Trends in Machine Learning上面的survey文章也都值得一看。
761 浏览

纽约时报:了不起的AI觉醒

机械自动化类 料盘挡板 2016-12-26 16:59 发表了文章 来自相关话题

谷歌如何使用人工智能来改变谷歌翻译这项颇受欢迎的服务,以及机器学习如何重塑计算。






序言:你所读到的就是你自己


在十一月初的某个周五晚上,Jun Rekimoto(东京大学人机交互领域的杰出的教授)正准备在线演讲,他突然注意到社交媒体滚动条上有一些特别的内容。这些内容是关于谷歌翻译的,这项流行的机器翻译服务最近突然有了大幅改善。


Rekimoto开始研究谷歌翻译并用它做了一些测试,测试结果令他非常震惊。虽然已经夜深,但谷歌翻译取得的进展依然让Rekimoto久久无法入睡。


Rekimoto在一篇博客中写了他的初步发现。首先,他用谷歌翻译翻译了《了不起的盖茨比》中的一些句子,并与1957年Takashi Nozaki译版和最新的Haruki Murakami的译版进行对比。Rekimoto后来通过电子邮件向我解释,Murakami的版本语言非常细腻,具有独特的“Murakami风格”。相比之下,谷歌的翻译虽然有些不自然,但是对他来说“更透明”。


Rekimoto博客的后半部分从日译英的方向测试了谷歌翻译。他先是自己用日语翻译了海明威的《乞力马扎罗的雪》的开头部分,然后把这段话通过谷歌翻译转译成英语。他列出了此版本与海明威的原版,并让读者猜测哪个版本是机器完成的。


NO. 1:

Kilimanjaro is a snow-covered mountain 19,710 feet high, and is said to be the highest mountain in Africa. Its western summit is called the Masai “Ngaje Ngai,” the House of God. Close to the western summit there is the dried and frozen carcass of a leopard. No one has explained what the leopard was seeking at that altitude.


NO. 2:

Kilimanjaro is a mountain of 19,710 feet covered with snow and is said to be the highest mountain in Africa. The summit of the west is called “Ngaje Ngai” in Masai, the house of God. Near the top of the west there is a dry and frozen dead body of leopard. No one has ever explained what leopard wanted at that altitude.


即使是以英语为母语的人,也很难分辨出第二段是由机器完成的。这两段翻译是如此的相近,Rekimoto甚至觉得这很神奇。因为Rekimoto非常熟悉谷歌翻译之前的能力,甚至在24小时前,谷歌只能翻译成下面这段话:


Kilimanjaro is 19,710 feet of the mountain covered with snow, and it is said that the highest mountain in Africa. Top of the west, “Ngaje Ngai” in the Maasai language, has been referred to as the house of God. The top close to the west, there is a dry, frozen carcass of a leopard.Whether the leopard had what the demand at that altitude, there is no that nobody explained.


Rekimoto在Twitter上向他的十万个粉丝公布了他的发现,在接下来的几个小时里,成千上万的人发出他们使用机器翻译的结果。有些是比较成功的,但也有些是非常滑稽的。


在东京破晓之时,谷歌翻译登上了日本Twitter热度榜的第一位,甚至连人气动漫和人气偶像少女的被挤了下去。每个人都很惊奇:谷歌翻译为何能如此让人刮目相看?


四天之后,来自世界各地的上百名记者、企业家和广告客户齐聚于谷歌的伦敦办公室中,观看谷歌的特别发布会。客人们的甜点是印有翻译标志的幸运饼干,每个人的面前还放有一张纸条,一面写着不同国家的短语,另一面邀请客人们下载谷歌翻译的软件。桌子上还摆放了甜甜圈和冰沙盘,旁边的标语牌标注了各种国家的风味。过了一会,所有人来到了一个豪华的黑暗剧场中。





上图:Sundar Pichai,谷歌的首席执行官,在他加利福尼亚州山景城的办公室外。


伦敦市长Sadiq Khan首先上台演讲。演讲的开始,市长提到他有个朋友觉得市长就像谷歌一样。于是市长问朋友:“为什么?因为我什么都懂?”朋友否认道:“不是的,是因为你就像谷歌一样,总是试图把我的话补充完。”观众们纷纷被市长的幽默逗笑。随后,谷歌的首席执行官Sundar Pichai上台发表演讲。


Pichai此行的目的之一就是启动谷歌伦敦国王大道的新大楼,预示着公司完成了去年提出的转型计划的初始阶段。Pichai曾经多次在不同场合说过谷歌的未来将以“AI为先”,这在理论上听起来很复杂,引发了许多学者的推测。在实践生产中意味着,未来谷歌将不再依靠传统计算编程来生产产品,而是“机器学习”。


谷歌公司中有一个鲜少提及的部门,谷歌大脑。这个部门成立于五年前,一直遵循着一个原理:人工“神经网络”能够像婴儿一样,通过不断的尝试和犯错来认知这个世界,最终拥有像人类一样的灵活性。这其实并不是一个新理论,早在现代计算机初步发展的20世纪40年代就出现了。但当时大部分科学家并不看重,认为它过于深奥。直到2011年,谷歌大脑证明了将这个强大的方法运用在人工智能领域里可以解决此前几十年的棘手问题。例如,此前谷歌手机在语音识别方面一直效果不是很好,直到谷歌将机器学习算法移植到手机平台后,语音识别精度已经可以和人类媲美。而在图像识别领域也同样取得了良好的效果。一年前,谷歌大脑就已经将这些核心技术成功运用在消费级产品里。


谷歌翻译于2006年首次亮相,目前已经成为谷歌最可靠和最流行的应用之一。每天,谷歌翻译会面对 5 亿个月度活跃用户的 1400 亿个不同语种的单词。现在它已经不是座位一个独立的应用存在,更是已经集成到Gmail、Chrome 及许多其它谷歌产品中了,谷歌将它作为其数字商务中的一个无缝贴合的部分。Pichai在台上讲到,直至叙利亚难民危机之时,公司才意识地区间的翻译交流是何等重要。他背后屏幕的陡峭的曲线图显示,阿拉伯语与德语互译的翻译请求最近增长了五倍之多。(这个结果也符合Pichai的内心想法,他在印度出生成长,那里有几十种不同的语言。)谷歌翻译此后也在逐步增加新的语言和功能,但是过去的四年,发展速度正在逐年减缓。


截至到上个周末,谷歌翻译已经在美国、欧洲、亚洲等地区完成了基于人工智能的转换,包括西班牙语、葡萄牙语、法语、德语、中文、日语、韩语及土耳其语在内的语言与英语的互译。而其它上百种语言也即将实现互译,谷歌预计将会以每月八个的速度在年底前更新完毕。而对于谷歌工程而言,只花费九个月的时间就完成这一重大革新无疑是一个惊喜。AI系统一个通宵所取得的进展就相当于过去所取得的进展之和。


Pichai对含蓄的古典文学尤为偏爱,一个月前,他曾告诉我,在他加利福尼亚州山景城的办公室里,有些文字还是需要谷歌翻译来辅助显示,毕竟并不是所有人都像物理学家Robert Oppenheimer一样能读原版的《博伽梵歌》。因此在伦敦的发布会上,幻灯片上出现了博尔赫斯的经典名言:“Uno no es lo que es por lo que escribe, sino por lo que ha leído.”


Pichai大声地读出旧版谷歌翻译翻译出来的拙劣的句子:“One is not what is for what he writes, but for what he has read.”

而在大屏幕的右边,新的AI系统版本则翻译的更加优雅:“You are not what you write, but what you have read.”


这是有一个对新版的谷歌翻译非常恰当的描述:在某种意义上,谷歌翻译是第一条可以通过学习理解任何事物的机器。


谷歌以AI为中心重组公司。在过去的四年中,谷歌、Facebook、苹果、亚马逊、微软和中国百度等六家公司都围绕AI人才展开了一场军备竞赛,尤其是在大学。企业纷纷到顶尖的学术院校挖掘人才,给人才以丰富的资源和极大的自由。在硅谷,Facebook的CEO Mark Zuckerberg会亲自通过电话和视频聊天软件跟公司最优异的研究生进行会话,七位数的起薪根本不在话下。参加人工智能最重要的学术会议的人数增加了近四倍。大家所关注的不仅仅是小小的创新,还有该如何掌控全新的计算平台:无处不在的人工智能。


我们好像理所当然地就开始使用“人工智能”这一短语,但它其实一直是引发争议的根源。想象一下,如果你回到20世纪70年代,在大街上拦住一个路上,拿住智能手机并向她展示手机里的谷歌地图。你可能需要不停地向她解释,你并不是穿着奇怪的巫师,从口袋里掏出的手机也不是什么黑色护身符,它只是一个比阿波罗时光机更强大的电脑。实际上,谷歌地图就是能跟她展示什么是“人工智能”的例子。在某种意义上,谷歌地图确实是人工智能的例子。它能帮你规划从酒店到机场的路线,而且比人类能完成得更快更好。它还能做一些人类显然不能做的事情:它可以判断交通状况;规划最佳路线;在你走错路时,它能重新定位并进行路线的重新规划。


实际上,如今没有人会把谷歌地图跟高贵的“AI”相提并论。所以我们在使用“智能”这个词的时候,是带“情感”色彩的。人工智能可以区别HAL和其它任何用织机或手推车就可以做出的东西。我们能自动化一项任务,涉及到的相关技能会转变为单纯的机制。现在,谷歌地图似乎还不能称之为人工智能,充其量是机器人:它只接受一个明确的需求(从一个地方到另一个地方),并尽力满足这种需求。因此,“人工智能”的所对应的实际应用其实范围很小。


Pichai的终极目标是区分AI应用和“通用人工智能”。通用人工智能不涉及对显式指令的忠实遵守,它是为一般情况下的一般用途而设计通用工具。Pichai认为,他公司的未来取决于通用人工智能。想象一下,如果你告诉谷歌地图,“我想去机场,但需要在中途停一下给我的侄子买礼物。”一个通用的智能服务,就像三年前的电影《她》中,由Scarlett Johansson配音的那个无处不在的助手一样,她像好朋友一样了解你的情况:你侄子的年龄,你通常喜欢给孩子买什么礼物,以及哪里有能买礼物的商店。但是,一个真正聪明的地图能做一些好朋友考虑不到的事,比方说,你侄子学校的孩子里,最近流行什么玩具。如果聪明的机器能够辨别一些错综复杂的数据,从中找到过去我们做过的事情中暗藏的规律性,那么它就可以推断我们的想法。


AI助手是人工智能的新浪潮,苹果的Siri、Facebook的M,还有亚马逊的Echo都是机器学习的产物,作用都很相似。然而,机器学习并不一定只局限于此。今年,三星的医学成像子公司宣布其新的超声设备能够检测乳腺癌。公司也在招贤纳士,以扩大计算机的工业应用。DeepMind于2014年被谷歌收购,AlphaGo在围棋游戏中击败了人类围棋大师,尽管当时人类预测人工智能要想战胜人类还需要10年。


1950年,Alan Turi吴恩达在那篇著名的文章中提出了一个人工智能的测试:一台计算机是否能在5分钟的文本交流中成功地欺骗人类。一旦机器可以在两种自然语言之间流利地翻译,机器就能很好地“理解”人类语言,从而与人类进行对话。谷歌大脑的成员们正推动和协助监督翻译项目,他们相信这样的机器将会成为通用人工智能的助手。


谷歌的研究人员和工程师团队从最初的一两个人,扩大到三四人,甚至后来扩大到一百多人,他们在这一领域取得了巨大进步。接下来要讲的关于谷歌团队的故事非常少见,因为它跟我们对硅谷的通常印象有所不同。它并不是一些俗套的剧情。它不是一个关于技术能解决所有问题的故事,也不是一个技术会毁灭世界的故事。它跟颠覆无关,至少不是通常意义上的颠覆。


事实上,这个故事又包含了三个相关的故事,这三个故事在谷歌翻译成功转型为AI的过程中融合在一起,它们分别是:技术故事,制度故事和关于思想演变的故事。技术故事是关于一个公司的一个产品团队,以及他们对旧产品进行改进、测试并形成全新版本的过程,而且他们只用了别人预期的约为四分之一的时间就完成了这个过程。制度故事是关于该公司内的一个虽然规模不大但很有影响力的人工智能团队,以及他们凭借对一些旧的、未经证实的和广泛不适用的计算观念的直觉信念,超越了几乎其他所有公司的过程。思想的故事是关于坚持不懈的认知科学家、心理学家和工程师,他们长期以来用看似不合理的信念,最终激发了我们对技术和理论的理解,以及意识本身的范式转变。


第一个故事是谷歌翻译的故事,发生在山景城,时间跨度为九个月,故事解释了机器翻译发生的转变。第二个故事是谷歌大脑及其众多竞争对手的故事,发生在硅谷,时间跨度为五年,它解释了整个领域的转型。第三个故事是深度学习的故事,发生在苏格兰、瑞士、日本和加拿大等大部分地区的遥远实验室,时间跨度长达七十年,它可能非常有助于改变人类的自我认知。


这三个故事都跟人工智能有关。七十年的故事是关于我们对人工智能的期待。五年的故事是关于人工智能在不久的将来会带来什么。九个月的故事是关于人工智能现在可以做什么。这三个故事本身都是对概念的证明,而所有这一切都只是开始。




第一部分:学习机器


1、谷歌大脑的诞生

虽然Jeff Dean的职位是高级研究员,但是事实上,他才是谷歌大脑团队的领导者。 Dean有着长而窄的脸,深深的眼睛并且十分热情。作为医学人类学家和公共卫生流行病学家的儿子,Dean成长时期几乎周游了世界各地,包括明尼苏达州、夏威夷、波士顿、阿肯色州、日内瓦、乌干达、索马里、亚特兰大等地。在高中和大学期间,他写的软件就被世界卫生组织所采用。自1999年以来,他一直在谷歌工作,当时他才25岁,从那时起,他几乎参与了谷歌所有重大项目中核心软件系统的开发。作为公司的元老级人物,Jeff Dean Facts已经成了公司开玩笑的对象。以Chuck Norris的事实模式为例:“Jeff Dean的PIN是pi的最后四位数字。”“当Alexander Graham Bell发明电话时,他接到了一个来自Jeff Dean的未接来电。”“Jeff Dean在最高级别为10的系统中晋升到了11级。“(最后一个是真的。)





上图:谷歌工程师和谷歌大脑的领导者Jeff Dean。

来源:纽约时报的Brian Finke




2011年初的一天,Dean在谷歌校园的“微型车间”之一,也就是山景城大楼的共享休息室,遇见了年轻的斯坦福计算机科学家吴恩达教授,他兼任谷歌公司的顾问。吴恩达跟Dean介绍了Marvin项目(以著名的AI先锋Marvin Minsky命名),在这个项目中,他协助谷歌建立了一种基于大脑架构的柔韧的数字网格的“神经网络”。1990年,Dean在明尼苏达大学读本科的时候,也曾经研究过该技术的原始版本,当时神经网络的概念已经开始流行。在过去的五年中,神经网络领域从事相关研究工作的学者数量开始再次增长。吴恩达告诉Dean,Marvin项目是由谷歌的秘密X实验室负责研究的,目前已经取得了一些可观的进展。


Dean对此很感兴趣,决定花自己“20%”的时间来投入这个项目,每名谷歌员工都要将自己20%的时间贡献给他或她的核心工作以外的工作。很快,Dean向吴恩达推荐了有着神经科学背景的Greg Corrado。(在研究生院的课堂上,Corrado粗略地学习了该技术,但他对此很感兴趣,他开玩笑说道:“那天我上课的时候很专心。”)在春天,他们团队又多了一名吴恩达的得意研究生Quoc Le,他是项目团队的第一个实习生。在那之后,一些谷歌工程师用“谷歌大脑”来形容Marvin项目。


术语“人工智能”是在1956年夏天在达特茅斯的一种宪法惯例中诞生的,当时大多数研究人员认为创造AI的最佳方法是写一个非常大而全面的程序,将逻辑推理的规则和有关世界的知识写入其中。比方说,如果你想把英语翻译成日语,你需要把所有的英语语法规则、牛津英语词典中包含的所有定义、所有的日语语法规则,和日语字典中的所有单词都编入计算机。这种观点通常被称为“符号化AI”。因为它的认知定义是基于符号逻辑的,但它已经有些过时,只能算作是“好的老式的AI”。


这种老式方法有两个主要问题。一是,它非常耗费人力和时间;二是,它只有在规则和定义非常清楚的领域(比如数学或象棋)才真正起作用。然而,如果翻译采用这种方法,效果会很差,因为我们平时说的话没办法跟词典上的规则和定义完全对应。比方说,这样的系统可能会把“农业部长”翻译为“农业牧师”。但是,对于数学和国际象棋来说,这种老式方法就很奏效。


不过,这种老式方法的系统确实有限。在20世纪80年代,卡内基梅隆的机器人研究员指出,让计算机做成人能做的事情很简单,但让计算机做一个1岁的小孩可以做的事情却几乎是不可能的,比如拿起一个球或识别一只猫。到了20世纪90年代,尽管计算机能够在国际象棋上战胜世界冠军,我们离真正的人工智能还差得远。


关于AI,还有另外一种看法,计算机的学习是自下而上(从数据),而不是从上到下(从规则)学习。这个概念可追溯到20世纪40年代初,研究人员发现灵活自动智能的最佳模型就是人类大脑本身。毕竟,大脑只不过是很多神经元的集合体,神经元之间可能会相互传递电荷,或者不会传递。重要的不是单个神经元本身,而是它们之间的连接方式。这种结构很简单,为大脑提供了丰富的适应性优势。大脑可以在信息量少或缺失的情况下工作;它在承受重大的损害时,也不会完全失去控制;它可以用非常有效的方式存储大量的知识;它可以区分不同的模式,但同时保留必须的混乱来处理歧义。


所以人类开始试图用电子元件来模仿这种结构,1943年研究表明,简单的人工神经元排布可以执行基本的逻辑功能。至少在理论上,神经元可以模仿人类的方式。实际上,神经元会根据试错把相互之间的突触连接调节得更强或更弱。人工神经网络也可以做类似的事情,在不断试错的基础上逐步改变人工神经元之间的数字关系。人工神经网络不需要使用固定规则来预编程,相反,它会改变自身以反映所输入的数据中的模式。


这种观点认为人工智能是进化得来,而不是创造出来的。如果你想要一个灵活而且能适应环境的机制,不能一开始就教它国际象棋。必须从非常基本的能力,如感官知觉和运动控制开始,长此以往更先进的技能才有可能出现。人类并不是通过记忆字典和语法书来学习和理解语言的,所以我们有什么理由要让计算机通过这样的方式来学习呢?


谷歌大脑是第一个对这种思维方式进行商业投资的机构。Dean、Corrado和吴恩达利用闲暇时间进行合作并对此展开研究,很快他们便取得了进展。他们从最新的理论大纲和自20世纪八九十年代以来的已有框架中提取了他们的模型的搭建灵感,他们还利用了谷歌巨大的数据储备和庞大的计算基础设施。他们利用网络上大量的“标记”数据,让计算机不断改进从而更好地匹配现实。


某天,Dean告诉我说:“动物进化出眼睛是个巨大的发展。”我们像往常一样坐在会议室,他在白板画了一个复杂的时间线,展示了谷歌大脑以及它与神经网络的历史关系。“现在,计算机也有了眼睛,我们能够借助眼睛让计算机识别图片。机器人的能力将得到巨大提升。他们将能够在一个未知的环境中,处理各种不同的问题。”这些他们正在研发的能力可能看起来很原始,但它们的影响是深远的。





上图:Geoffrey Hinton,他在谷歌多伦多办事处提出的想法为谷歌翻译的神经网络方法奠定了基础。 图片来源:《纽约时报》的Brian Finke




2、重量级实习生


正如Dean所说,谷歌大脑诞生一年后,就在研发具有1岁小孩智力的机器中取得了不错的成绩。谷歌的语音识别团队将其旧系统的一部分转换为神经网络,并因此取得了该系统20年来的最好成效。该系统识别对象的能力提高了一个数量级。这不是因为谷歌大脑的研究人员在短短一年内就产生了很棒的新想法,而是因为谷歌终于在该领域投入了资源和人力。


Geoffrey Hinton的到来让谷歌大脑发展更为迅猛。在谷歌大脑成立的第二年,Hinton被招聘到了谷歌大脑,而吴恩达离开了谷歌(吴恩达现在领导百度1300人的AI团队)。Hinton只能离开多伦多大学在谷歌任职三个月,因此由于奥术合同的原因,他不得不被聘为实习生。在实习培训中,辅导人员说“输入您的LDAP(目录访问协议)”,他问道:“什么是LDAP?”在场其他所有25岁的职员,尽管他们可能刚刚弄清深度学习是人工智能的必要条件,都在想“那个老家伙是谁?为什么他连LDAP是什么都不知道?”


Hinton说道:“在午餐时间,团队成员里有个人惊呼‘Hinton教授!我选修了你的课程!你居然在这里?’”从那以后,大家才不对Hinton议论纷纷。


几个月后,Hinton和他的两个学生在一个称为ImageNet的开源集合运行的大型图像识别竞赛中展示了惊人的成果,他们让计算机不仅能识别猴子,而且能够区分蜘蛛猴和吼猴,以及各种不同品种的猫。谷歌很快就向Hinton和他的学生发起了聘用书,他们接收了谷歌的聘用。Hinton说道:“我本以为谷歌对我们的知识产权感兴趣,结果没想到是对我们这几个人感兴趣。”


Hinton来自英国的传统家族,像Darwins一样,他们家族非常注重教育。他伟大的曾祖父是George Boole,他在符号逻辑方面的基础工作为计算机打下基础;Hinton的祖父是一位著名的外科医生,Hinton的父亲是一位热爱冒险的昆虫学家,Hinton的父亲的表哥是洛斯阿拉莫斯研究所的研究员,等等。而Hinton曾在剑桥和爱丁堡大学读数,然后又到卡内基梅隆大学学习,最后他又到多伦多大学。(他的工作长期以来一直受到加拿大政府的慷慨支持。)我在他的办公室对他进行了采访,他顶着一头成熟的诺埃尔加拉格尔风格的黄到褪色的头发,穿着一件宽松的条纹衬衫,椭圆形的眼镜滑落到高挺的鼻子尖端。他开口说道:“计算机会比美国人更早地理解讽刺为何物。”


19世纪60年代末,Hinton在剑桥大学读本科时,就一直致力于研究神经网络,他是该领域的先驱。但大多数时候,每当他谈及机器学习,人们都觉得他在满口胡言。人们之所以觉得神经网络荒谬,主要是因为感知机(Perceptron)被过度炒作,感知机是一个人工神经网络,是康奈尔心理学家Frank Rosenblatt于20世纪50年代后期提出的。《纽约时报》曾报道,感知机的赞助商美国海军期望它“能够走路、说话、看、写作,甚至再造自己,并意识到自己的存在”。结果证明这是不切实际的。美国的Marvin Minsky曾在1954年的普林斯顿论文中研究过神经网络,但是他对于布朗克斯科学当代的Rosenblatt对神经范式的夸张描述已经厌倦了。(他也在争取国防部的投资。)Minsky与MIT的同事一起出版了一本书,来证明有一些简单问题是感知器永远不能解决的。


Minsky对感知机的抨击只是一个“层”的网络,在后来的生活中,他阐述了与当代深度学习非常相似的想法。Hinton认为,如果使用多层神经网络,就能够完成复杂的任务。神经网络的最简单的描述是,它是一个机器,能在数据中发现模式并进行分类或预测。如果只有一层神经网络,你可以找到简单的模式,但如果有多层神经网络,你应该去找模式中的模式。在图像识别的领域,主要使用的是“卷积神经网络”。(这是在1998年的一篇开创性论文中阐述的,其主要作是Yann LeCun,他在多伦多大学读博士后,是Hinton的学生,现在是Facebook人工智能实验室的负责人。)网络的第一层负责学习识别“边缘”的基本视觉效果,也就是判断一个东西(一个像素上)是否有东西。网络的每个连续层都在前一层中寻找模式。边缘的图案可以是圆形也可以是矩形,圆形或矩形的图案可能是面部。这种方法或多或少地以越来越抽象的方式将信息组合在一起,从视网膜中的光感受器将信息返回到大脑的视觉皮层。在每个步骤中,不相关的细节会被丢弃,因为如果几个边缘和圆圈合在一起成为一张面部,你无需知道发现面部的位置,只需要知道它是一张脸。


多层“深度”神经网络的问题是试错法部分非常复杂。对于单层神经网络来说,这很容易。想象一下,如果你正在和一个孩子玩。你告诉孩子,“拿起绿色的球,把它放入盒子A中”,孩子拿起一个绿色的球,但把它放入了盒子B。你会说,“再试一次把绿色球放在盒子A中”,孩子会再次尝试把球放入了盒子A中。


现在想象你告诉孩子,“拿起一个绿色的球,穿过三号门,然后把绿色的球放入盒子A。”孩子却拿起一个红色的球,穿过了二号门,把红色的球放入盒子B。那么你该如何纠正孩子呢?你不能只是不断重复初始指示,因为孩子不知道他到底错在哪一步。在现实生活中,你可以先举起红球和绿球,说“这是红球,这是绿球”。但是,机器学习的重点是避免这种明确的指导。Hinton和其他几个人研究了解决方案(或者,对旧的方案进行了改造)。对于这个分层错误问题,在20世纪70年代末和80年代初,计算机科学家重新开始对神经网络感兴趣。Hinton说道:“人们对此非常兴奋,但我们的研究超出了他们的兴趣。”很快,计算机科学家们又跟以前一样认为Hinton这样的人是怪人和神秘主义者。


这种想法在哲学家和心理学家中仍然很受欢迎,他们称之为“连接主义”或“并行分布式处理”。Hinton告诉我说,“有几个人对这个想法保持热情,这很好,因为这是真正的人工智能。但在心理学领域,很多人相信这种想法,但却没能力实现它。”尽管加拿大政府一直大力支持,但Hinton也没能实现这个想法。“因为没有足够的计算机资源或足够的数据,我们只能自我安慰道:‘是的,如果我们有这样的前提条件,这个想法肯定是行得通的。’但这却并不是一个非常有说服力的论据。”




3、深层解读深度学习


当Pichai提到“人工智能优先(A.I. First)”概念时,他不仅仅是在说谷歌的战略计划,更是把这个长期不可行的想法扔给了公司。Pichai在资源分配上,确保了像Dean和Hinton这样的人才有足够的计算资源和数据资源可用。每个大脑大约有1000亿个神经元,每个神经元与其他10000个神经元相连,这意味着大脑内突触的数量在100万亿和1000万亿之间。对于20世纪40年代提出的简单人工神经网络来说,根本不可能实现这样规模的网络。虽然目前我们也远没达到构建这种规模网络的能力,但谷歌Brain的投资让我们至少实现了可以媲美小鼠大脑的人工神经网络。


然而,理解网络规模的重要性之前,你必须了解一些技术细节,如机器智能究竟对数据做了什么。其实,我们对人工智能的恐惧,主要来自于我们认为它像一个反社会天才在图书馆挖掘知识,然后,或许某一天,曾经只会玩回形针的机器会像对待蚂蚁或莴苣一样轻松杀死人类。但这并不是人工智能的工作方式,它们所做的只是搜索并寻找共同点——首先是基本模式,然后逐渐变复杂。真正最大的危险在于,我们人类最初给它灌输的信息是否就包含个人偏见。


如果只是想了解一二,可以直接阅读下一节(内容是关于猫的),如果想理解相关技术,那请继续阅读。(当然,本节内容也是关于猫。)


如果你想在老式的符号化AI模型上生成一个“猫识别器”。那么首先,你必须花大量时间预先对机器详细明确地说明什么是“猫”。告诉机器,一只猫有四条腿、尖尖的的耳朵、晶须和尾巴等。机器将这些信息存储在内存中的“Cat”区域。接下来,提供一张图片,让机器判断是否是猫。判断过程中,首先,机器必须分离出图像中不同的元素;然后,利用内存中存储的规则处理这些元素。规则如下:如果(腿 = 4)且(耳朵 = 尖)且(胡须 = 有)且(尾巴 = 有)且(表情= 高傲),那么(猫 = 是)。但如果你提供一张苏格兰折耳猫的图片呢?我们符号化 AI模型就会根据“耳朵 != 尖”判断图片上不是猫。 这样的识别水平比蹒跚学步的小孩都差。


而现在,如果用神经网络做这个实验,就根本不需要通过一系列预先定义的规则进行判别,也根本不需要专门的空间来存储“猫”的信息,包含大量相互连接着的开关的大型blob会解决这一切。在blob的一端提供输入(待识别图像),另一端提供输出(标记信息)。然后,机器将自动化工作,通过不断调试相互连接的开关,最终将输入正确映射到对应的输出。训练过程就像是在迷宫中挖掘一系列隧道,隧道两端连接的是正确的输入和输出。可用的训练数据越多,挖掘的隧道数量和复杂性就越大。训练过程一旦完成,blob中有了足够多的隧道,神经网络就能稳定处理数据并作出可靠预测。这就是“监督学习(Supervised Learning)”。


神经网络之所以需要如此多的神经元和数据,因为它以一种类似民主的方式工作。例如,你想训练可识别五种类型物体的神经网络,它由数百万“选民”(神经元)组成,每位选民都有五张不同的卡片,分别是:猫、狗、蜘蛛猴、勺子、除颤器。拿出一张图片,问:“这是猫,狗,蜘蛛猴,勺子还是除颤器?”所有神经元分组进行投票,最终得票最多的作为最终结果:“一只狗?”


你告诉它:“不!是只猫。重新计算。”


然后,神经网络退回一步,确定哪些神经元投票“猫”,哪些不是。那些投票“猫”的神经元,下次如果还投“猫”,其权重加倍。除此之外,该神经网络也必须能准确判别其他物体类别,如狗和除颤器。而神经网络之所以如此灵活,是因为每个单独的个体针对不同的输出贡献的权重不一样。其实,最关键的不是个体投票,而是这种投票模式。如果Joe, Frank 和Mary一起投票,那就是一只狗;如果Joe, Kate和Jessica一起投票,那就是一只猫;而如果Kate, Jessica 和Frank一起投票,图片上就是一个除颤器。神经网络只需要注册大量可识别信号,这些信号表示:图片中该像素区域是“猫”。“选民”越多,投票次数就越多,微弱信号也越可能被注册。简单来说,就是如果只有Joe, Frank 和Mary三个选民,你可能仅限于区分猫、狗和除颤器;而如果有数百万选民,不同选民之间有数十亿连接,那么你就可以对数据精确分类。经过训练的“选民”组合甚至可以识别未标记图片(或许不那么精确)。


计算科学领域之所以不接受这些理念,部分原因在于机器的输出仅仅是基于模式的预测,它并不完美,而且机器永远无法确切地定义什么是“猫”。只有在看到猫的时候,机器才知道那是猫。神经元“选民”通过数百万张猫图像的训练,它们可以识别出在阳光下打盹的快乐小猫,和躲在垃圾箱阴影中的生气小猫。实际上,你需要大量的神经元“选民”和足够的已标记数据,前者用来确保神经网络可以捕捉到非常微弱的信号,如苏格兰折耳猫垂下的耳朵,后者用来尽可能确保神经网络已“见过”所有相似场景。


但是,需要注意的是,神经网络的输出结果具有概率性,这意味着它并不适用于所有任务。如果神经网路把猫误认为狗,或者偶尔推送了错误的电影,这都不是大事,但如果应用于无人驾驶,神经网络1%的失误率可能就酿成了悲剧。类似担忧还有很多。监督学习是基于已标记数据进行反复试验的过程。机器完成的只是学习过程,而人为因素仍然决定了最初对训练数据的分类。例如,训练数据中,图片上是一位男士和一位女士,某人将该图片标记为“一位女士和她的老板”,这种关系标记将影响所有后续的模式识别。因此,人类错误标记才会导致训练数据错误。机器可能通过重罪定罪数据,来确定信贷候选人贷款资格。但如果重罪定罪数据本身就是不公平的(如数据是基于歧视性禁毒法),那么机器输出的可贷款人名单也是不可靠的。


图像识别网络与我们的小猫识别器一样,也是深度学习的一种,但常常把它作为教学示例,因为人类可直观了解到图像识的具体过程:先找图像边缘,然后识别圆圈,接着识别脸。这意味着其中有错误保护措施。例如,早期,谷歌发现他们的图像识别软件无法单独识别出杠铃,哪怕用大规模运动器材图像集对其训练,结果也是一样。通过可视化工具观察发现,由于训练集中所有哑铃都是附在手臂上的,所以机器没有学习到“哑铃”的概念,而是“哑铃+手臂”的整体概念。改进一下,向训练集中加入单独的“杠铃”照片,问题就解决了。但并不是所有问题都这么容易。




4、猫识别论文


谷歌Brain部门在一到两年时间内,成功让机器具备了1岁小孩的智能。随后,该部门成功从谷歌X实验室“毕业”,并成为了更高级的研究机构。(谷歌X实验室负责人曾经指出,Brain取得的成就,让整个实验室的努力没有白费。)当时,谷歌Brain仍然只有10人不到,而对于未来,也只有一个模糊的概念。但即使在那时,他们都在积极思考接下来会发生什么。就像人一样,学会认识皮球后,我们会为之满足一段时间,但迟早,人类会产生关于皮球的问题。这就是语言产生的原因。


这一领域中,Brain迈出的第一步是发表了猫识别论文,正是这篇论文,Brain闻名世界。


这篇论文展示了一个具有超过十亿个“突触”连接的神经网络。虽然与人类大脑相比,它小了好几个数量级,但它比当时任何公开的神经网络都要大好几百倍。这个神经网络可以处理原始的、未标记数据,并识别高级的人类概念。谷歌Brain的研究人员向该神经网络展示了几百万的静态帧(来自YouTube视频),然后神经网络的感觉中枢开始运转,生成了一个稳定的模型。像小孩或花栗鼠一样聪明,该模型可以迅速识别出猫的脸。研究人员并没有预先向该神经网络输入关于“猫”概念,它直接与现实世界交互并获取“猫”这一定义。(研究人员发现,这一神经网络与核磁共振(M.R.I.)很相像,猫的脸部阴影会激发人工神经元“投票”的热情。)大多数机器学习都受限于已标记数据的数据量。但这篇论文却显示,该神经网络可以处理原始未标记数据,有时甚至是人类都还没建立起概念的数据。这不仅仅是猫识别研究的重大突破,更是整个人工智能的显著进步。


猫识别论文的第一作者是Quoc Le。Le个头不高,身形偏瘦,说话温和但语速很快,经常穿着闪亮的黑皮鞋,而且面带神秘的微笑。他在越南长大,父母都是农民,小时候家里甚至都没有电。他从小就表现出了过人的数学能力,后来,他就读于一所磁铁学校学习科学。上世纪90年代末,Le还在上学,那时候他就试图构建一个聊天机器人。他在想,这有多难呢?

“但实际上,”他告诉我,“非常不简单。”


毕业后,Le离开了越南,前往澳大利亚堪培拉的一所大学学习,主要研究机器视觉这类人工智能任务。当时人工智能的主要做法是,提前给机器灌输相关概念(如,边缘),这让他感觉像是在作弊。当时的Le不知道,全世界有很多计算机科学家和他的想法一样——机器可以从零开始学习。2006年,Le任职于德国的马克斯普朗克研究所生物控制部门。在当时的一个阅读小组中,他读到了Geoffrey Hinton写的两篇论文,他觉得自己豁然开朗。


“这两篇文章引起了争议,”他告诉我。“非常大的争议。”我们在一个小型内部会议室里,天花板又窄又高,屋子里有一张小桌子和两块白板。Le看了眼他画在背后白板上的曲线,又回过头来轻声地说,“我从没见到过这么大的争议”。


他记得,当时在阅读小组里站起来,然后说,“这就是未来。”但在当时,这是个不受欢迎的决定。Le在澳大利亚的导师不能完全理解他的想法,写邮件问到,“你为什么决定做这个?”


“那时,我想不到怎么回答这个问题,”Le说。“因为,我只是好奇。文章中提出了一个成功的范式,老实说,我只是对这个新范式感到好奇。那时还是2006年,这样的观点非常罕见。”然后,Le 加入了斯坦福的吴恩达团队,接着他开始沿着 Hinton 的道路探索。“到了2010年年底,我确信会有事情发生。”


不久之后,Le成为了Brain的首位实习生。在Brain,他继续着自己的论文工作,也就是后来发表的猫论文的前身。在一个简单层面上,Le只是想看看计算机能否被训练并自主识别给定图像中的绝对必要的信息。他向神经网络输入了一张YouTube上的静态图片。然后,指示神经网络丢弃一些信息,但并不说明哪些信息应该保留哪些应该丢弃。神经网络随机丢弃了一些信息。接着,Le又说:“刚刚是开玩笑的。现在基于你刚刚保留下来的信息,重新构建初始图像。”这种方式就像他先要求机器找到一种方式“总结”图像,然后,基于总结的信息回溯原始图像。如果总结的都是些不相关信息(如天空的颜色),而不是关键信息(如有没有胡须),计算机就无法有效重构原始图像。计算机的反应就像我们远古的祖先,他们在逃跑中建立起对剑齿虎的印象。而Le的神经网络与我们的祖先的方式不同,它需要不断地尝试。从数学角度来说,每次尝试后,它都选择不同的信息进行优化,而且表现地越来越好。然而,神经网络是个黑盒子,它确实生成了某种范式,但人类并不能直观地理解这些范式。


猫论文发表后,引起了极大凡响,而Le并未感觉到自己掌握了业界的话语权。但他强烈感觉到,应该继续自己早年聊天机器人的想法。发表了猫论文后,Le意识到,如果神经网络可以总结图片信息,那么它或许也可以总结语句信息。在接下来两年中,这一想法深深印在Le和Tomas Mikolov(Le在Brain的同事)的脑海中。


那段时间,Brain团队占据了好几个办公室,甚至一度占用了高管的地方。随后,他们收到了管理处的邮件,要求他们不要在Larry Page和Sergey Brin的 办公室门口的沙发上睡觉。后来,他们被安排到街对面的研究楼里工作,在那里,研究人员专心研究,而不必应付同事间礼貌而无效率的交谈。当然在这一过渡期,谷歌的竞争对手们也在奋力前行。(Le神情严肃地一遍一遍提及他与Tomas Mikolov的亲密合作。最后我忍不住问道,“他离开了?”Le点点头,回答道:“去了Facebook”。)





上图:2012年的谷歌 Brain团队。他们发表了著名的“猫论文”,演示论文中的神经网络处理未标记数据。研究人员向该神经网络提供几百万的静态帧(来自YouTube视频),神经网络生成了一个稳定的模型并且识别出猫。


那段时间,他们极力想构造出不仅能执行简单的静态图片分类任务,也能处理复杂的任务(如自然语言或音乐)的神经网络架构。他们的许多观点在上世纪九十年代就出现了,Le和他的同事们专门回顾了那些被忽略的概念,希望能从中得到启发。他们知道,一旦建立了一个具有基本语言预测功能的模型,也就可以基于此完成各种其他类型智能任务,如预测电子邮件的合适回复或者预测谈话过程。你可以侧重于那些从表面看起来很像思维过程的任务。
 
 
来源:人工智能学家
 
 
 
 
 
 
更多内容请关注:www.imefuture.com
 
北京大数据产业投资基金正式发布 扎克伯格启用AI“管家
圣诞节太多小孩被机器人吸引
 
智造家 查看全部
谷歌如何使用人工智能来改变谷歌翻译这项颇受欢迎的服务,以及机器学习如何重塑计算。

7.1_.jpg


序言:你所读到的就是你自己


在十一月初的某个周五晚上,Jun Rekimoto(东京大学人机交互领域的杰出的教授)正准备在线演讲,他突然注意到社交媒体滚动条上有一些特别的内容。这些内容是关于谷歌翻译的,这项流行的机器翻译服务最近突然有了大幅改善。


Rekimoto开始研究谷歌翻译并用它做了一些测试,测试结果令他非常震惊。虽然已经夜深,但谷歌翻译取得的进展依然让Rekimoto久久无法入睡。


Rekimoto在一篇博客中写了他的初步发现。首先,他用谷歌翻译翻译了《了不起的盖茨比》中的一些句子,并与1957年Takashi Nozaki译版和最新的Haruki Murakami的译版进行对比。Rekimoto后来通过电子邮件向我解释,Murakami的版本语言非常细腻,具有独特的“Murakami风格”。相比之下,谷歌的翻译虽然有些不自然,但是对他来说“更透明”。


Rekimoto博客的后半部分从日译英的方向测试了谷歌翻译。他先是自己用日语翻译了海明威的《乞力马扎罗的雪》的开头部分,然后把这段话通过谷歌翻译转译成英语。他列出了此版本与海明威的原版,并让读者猜测哪个版本是机器完成的。


NO. 1:

Kilimanjaro is a snow-covered mountain 19,710 feet high, and is said to be the highest mountain in Africa. Its western summit is called the Masai “Ngaje Ngai,” the House of God. Close to the western summit there is the dried and frozen carcass of a leopard. No one has explained what the leopard was seeking at that altitude.


NO. 2:

Kilimanjaro is a mountain of 19,710 feet covered with snow and is said to be the highest mountain in Africa. The summit of the west is called “Ngaje Ngai” in Masai, the house of God. Near the top of the west there is a dry and frozen dead body of leopard. No one has ever explained what leopard wanted at that altitude.


即使是以英语为母语的人,也很难分辨出第二段是由机器完成的。这两段翻译是如此的相近,Rekimoto甚至觉得这很神奇。因为Rekimoto非常熟悉谷歌翻译之前的能力,甚至在24小时前,谷歌只能翻译成下面这段话:


Kilimanjaro is 19,710 feet of the mountain covered with snow, and it is said that the highest mountain in Africa. Top of the west, “Ngaje Ngai” in the Maasai language, has been referred to as the house of God. The top close to the west, there is a dry, frozen carcass of a leopard.Whether the leopard had what the demand at that altitude, there is no that nobody explained.


Rekimoto在Twitter上向他的十万个粉丝公布了他的发现,在接下来的几个小时里,成千上万的人发出他们使用机器翻译的结果。有些是比较成功的,但也有些是非常滑稽的。


在东京破晓之时,谷歌翻译登上了日本Twitter热度榜的第一位,甚至连人气动漫和人气偶像少女的被挤了下去。每个人都很惊奇:谷歌翻译为何能如此让人刮目相看?


四天之后,来自世界各地的上百名记者、企业家和广告客户齐聚于谷歌的伦敦办公室中,观看谷歌的特别发布会。客人们的甜点是印有翻译标志的幸运饼干,每个人的面前还放有一张纸条,一面写着不同国家的短语,另一面邀请客人们下载谷歌翻译的软件。桌子上还摆放了甜甜圈和冰沙盘,旁边的标语牌标注了各种国家的风味。过了一会,所有人来到了一个豪华的黑暗剧场中。

7.2_.jpg

上图:Sundar Pichai,谷歌的首席执行官,在他加利福尼亚州山景城的办公室外。


伦敦市长Sadiq Khan首先上台演讲。演讲的开始,市长提到他有个朋友觉得市长就像谷歌一样。于是市长问朋友:“为什么?因为我什么都懂?”朋友否认道:“不是的,是因为你就像谷歌一样,总是试图把我的话补充完。”观众们纷纷被市长的幽默逗笑。随后,谷歌的首席执行官Sundar Pichai上台发表演讲。


Pichai此行的目的之一就是启动谷歌伦敦国王大道的新大楼,预示着公司完成了去年提出的转型计划的初始阶段。Pichai曾经多次在不同场合说过谷歌的未来将以“AI为先”,这在理论上听起来很复杂,引发了许多学者的推测。在实践生产中意味着,未来谷歌将不再依靠传统计算编程来生产产品,而是“机器学习”。


谷歌公司中有一个鲜少提及的部门,谷歌大脑。这个部门成立于五年前,一直遵循着一个原理:人工“神经网络”能够像婴儿一样,通过不断的尝试和犯错来认知这个世界,最终拥有像人类一样的灵活性。这其实并不是一个新理论,早在现代计算机初步发展的20世纪40年代就出现了。但当时大部分科学家并不看重,认为它过于深奥。直到2011年,谷歌大脑证明了将这个强大的方法运用在人工智能领域里可以解决此前几十年的棘手问题。例如,此前谷歌手机在语音识别方面一直效果不是很好,直到谷歌将机器学习算法移植到手机平台后,语音识别精度已经可以和人类媲美。而在图像识别领域也同样取得了良好的效果。一年前,谷歌大脑就已经将这些核心技术成功运用在消费级产品里。


谷歌翻译于2006年首次亮相,目前已经成为谷歌最可靠和最流行的应用之一。每天,谷歌翻译会面对 5 亿个月度活跃用户的 1400 亿个不同语种的单词。现在它已经不是座位一个独立的应用存在,更是已经集成到Gmail、Chrome 及许多其它谷歌产品中了,谷歌将它作为其数字商务中的一个无缝贴合的部分。Pichai在台上讲到,直至叙利亚难民危机之时,公司才意识地区间的翻译交流是何等重要。他背后屏幕的陡峭的曲线图显示,阿拉伯语与德语互译的翻译请求最近增长了五倍之多。(这个结果也符合Pichai的内心想法,他在印度出生成长,那里有几十种不同的语言。)谷歌翻译此后也在逐步增加新的语言和功能,但是过去的四年,发展速度正在逐年减缓。


截至到上个周末,谷歌翻译已经在美国、欧洲、亚洲等地区完成了基于人工智能的转换,包括西班牙语、葡萄牙语、法语、德语、中文、日语、韩语及土耳其语在内的语言与英语的互译。而其它上百种语言也即将实现互译,谷歌预计将会以每月八个的速度在年底前更新完毕。而对于谷歌工程而言,只花费九个月的时间就完成这一重大革新无疑是一个惊喜。AI系统一个通宵所取得的进展就相当于过去所取得的进展之和。


Pichai对含蓄的古典文学尤为偏爱,一个月前,他曾告诉我,在他加利福尼亚州山景城的办公室里,有些文字还是需要谷歌翻译来辅助显示,毕竟并不是所有人都像物理学家Robert Oppenheimer一样能读原版的《博伽梵歌》。因此在伦敦的发布会上,幻灯片上出现了博尔赫斯的经典名言:“Uno no es lo que es por lo que escribe, sino por lo que ha leído.”


Pichai大声地读出旧版谷歌翻译翻译出来的拙劣的句子:“One is not what is for what he writes, but for what he has read.”

而在大屏幕的右边,新的AI系统版本则翻译的更加优雅:“You are not what you write, but what you have read.”


这是有一个对新版的谷歌翻译非常恰当的描述:在某种意义上,谷歌翻译是第一条可以通过学习理解任何事物的机器。


谷歌以AI为中心重组公司。在过去的四年中,谷歌、Facebook、苹果、亚马逊、微软和中国百度等六家公司都围绕AI人才展开了一场军备竞赛,尤其是在大学。企业纷纷到顶尖的学术院校挖掘人才,给人才以丰富的资源和极大的自由。在硅谷,Facebook的CEO Mark Zuckerberg会亲自通过电话和视频聊天软件跟公司最优异的研究生进行会话,七位数的起薪根本不在话下。参加人工智能最重要的学术会议的人数增加了近四倍。大家所关注的不仅仅是小小的创新,还有该如何掌控全新的计算平台:无处不在的人工智能。


我们好像理所当然地就开始使用“人工智能”这一短语,但它其实一直是引发争议的根源。想象一下,如果你回到20世纪70年代,在大街上拦住一个路上,拿住智能手机并向她展示手机里的谷歌地图。你可能需要不停地向她解释,你并不是穿着奇怪的巫师,从口袋里掏出的手机也不是什么黑色护身符,它只是一个比阿波罗时光机更强大的电脑。实际上,谷歌地图就是能跟她展示什么是“人工智能”的例子。在某种意义上,谷歌地图确实是人工智能的例子。它能帮你规划从酒店到机场的路线,而且比人类能完成得更快更好。它还能做一些人类显然不能做的事情:它可以判断交通状况;规划最佳路线;在你走错路时,它能重新定位并进行路线的重新规划。


实际上,如今没有人会把谷歌地图跟高贵的“AI”相提并论。所以我们在使用“智能”这个词的时候,是带“情感”色彩的。人工智能可以区别HAL和其它任何用织机或手推车就可以做出的东西。我们能自动化一项任务,涉及到的相关技能会转变为单纯的机制。现在,谷歌地图似乎还不能称之为人工智能,充其量是机器人:它只接受一个明确的需求(从一个地方到另一个地方),并尽力满足这种需求。因此,“人工智能”的所对应的实际应用其实范围很小。


Pichai的终极目标是区分AI应用和“通用人工智能”。通用人工智能不涉及对显式指令的忠实遵守,它是为一般情况下的一般用途而设计通用工具。Pichai认为,他公司的未来取决于通用人工智能。想象一下,如果你告诉谷歌地图,“我想去机场,但需要在中途停一下给我的侄子买礼物。”一个通用的智能服务,就像三年前的电影《她》中,由Scarlett Johansson配音的那个无处不在的助手一样,她像好朋友一样了解你的情况:你侄子的年龄,你通常喜欢给孩子买什么礼物,以及哪里有能买礼物的商店。但是,一个真正聪明的地图能做一些好朋友考虑不到的事,比方说,你侄子学校的孩子里,最近流行什么玩具。如果聪明的机器能够辨别一些错综复杂的数据,从中找到过去我们做过的事情中暗藏的规律性,那么它就可以推断我们的想法。


AI助手是人工智能的新浪潮,苹果的Siri、Facebook的M,还有亚马逊的Echo都是机器学习的产物,作用都很相似。然而,机器学习并不一定只局限于此。今年,三星的医学成像子公司宣布其新的超声设备能够检测乳腺癌。公司也在招贤纳士,以扩大计算机的工业应用。DeepMind于2014年被谷歌收购,AlphaGo在围棋游戏中击败了人类围棋大师,尽管当时人类预测人工智能要想战胜人类还需要10年。


1950年,Alan Turi吴恩达在那篇著名的文章中提出了一个人工智能的测试:一台计算机是否能在5分钟的文本交流中成功地欺骗人类。一旦机器可以在两种自然语言之间流利地翻译,机器就能很好地“理解”人类语言,从而与人类进行对话。谷歌大脑的成员们正推动和协助监督翻译项目,他们相信这样的机器将会成为通用人工智能的助手。


谷歌的研究人员和工程师团队从最初的一两个人,扩大到三四人,甚至后来扩大到一百多人,他们在这一领域取得了巨大进步。接下来要讲的关于谷歌团队的故事非常少见,因为它跟我们对硅谷的通常印象有所不同。它并不是一些俗套的剧情。它不是一个关于技术能解决所有问题的故事,也不是一个技术会毁灭世界的故事。它跟颠覆无关,至少不是通常意义上的颠覆。


事实上,这个故事又包含了三个相关的故事,这三个故事在谷歌翻译成功转型为AI的过程中融合在一起,它们分别是:技术故事,制度故事和关于思想演变的故事。技术故事是关于一个公司的一个产品团队,以及他们对旧产品进行改进、测试并形成全新版本的过程,而且他们只用了别人预期的约为四分之一的时间就完成了这个过程。制度故事是关于该公司内的一个虽然规模不大但很有影响力的人工智能团队,以及他们凭借对一些旧的、未经证实的和广泛不适用的计算观念的直觉信念,超越了几乎其他所有公司的过程。思想的故事是关于坚持不懈的认知科学家、心理学家和工程师,他们长期以来用看似不合理的信念,最终激发了我们对技术和理论的理解,以及意识本身的范式转变。


第一个故事是谷歌翻译的故事,发生在山景城,时间跨度为九个月,故事解释了机器翻译发生的转变。第二个故事是谷歌大脑及其众多竞争对手的故事,发生在硅谷,时间跨度为五年,它解释了整个领域的转型。第三个故事是深度学习的故事,发生在苏格兰、瑞士、日本和加拿大等大部分地区的遥远实验室,时间跨度长达七十年,它可能非常有助于改变人类的自我认知。


这三个故事都跟人工智能有关。七十年的故事是关于我们对人工智能的期待。五年的故事是关于人工智能在不久的将来会带来什么。九个月的故事是关于人工智能现在可以做什么。这三个故事本身都是对概念的证明,而所有这一切都只是开始。




第一部分:学习机器


1、谷歌大脑的诞生

虽然Jeff Dean的职位是高级研究员,但是事实上,他才是谷歌大脑团队的领导者。 Dean有着长而窄的脸,深深的眼睛并且十分热情。作为医学人类学家和公共卫生流行病学家的儿子,Dean成长时期几乎周游了世界各地,包括明尼苏达州、夏威夷、波士顿、阿肯色州、日内瓦、乌干达、索马里、亚特兰大等地。在高中和大学期间,他写的软件就被世界卫生组织所采用。自1999年以来,他一直在谷歌工作,当时他才25岁,从那时起,他几乎参与了谷歌所有重大项目中核心软件系统的开发。作为公司的元老级人物,Jeff Dean Facts已经成了公司开玩笑的对象。以Chuck Norris的事实模式为例:“Jeff Dean的PIN是pi的最后四位数字。”“当Alexander Graham Bell发明电话时,他接到了一个来自Jeff Dean的未接来电。”“Jeff Dean在最高级别为10的系统中晋升到了11级。“(最后一个是真的。)

7.3_.jpg

上图:谷歌工程师和谷歌大脑的领导者Jeff Dean。

来源:纽约时报的Brian Finke




2011年初的一天,Dean在谷歌校园的“微型车间”之一,也就是山景城大楼的共享休息室,遇见了年轻的斯坦福计算机科学家吴恩达教授,他兼任谷歌公司的顾问。吴恩达跟Dean介绍了Marvin项目(以著名的AI先锋Marvin Minsky命名),在这个项目中,他协助谷歌建立了一种基于大脑架构的柔韧的数字网格的“神经网络”。1990年,Dean在明尼苏达大学读本科的时候,也曾经研究过该技术的原始版本,当时神经网络的概念已经开始流行。在过去的五年中,神经网络领域从事相关研究工作的学者数量开始再次增长。吴恩达告诉Dean,Marvin项目是由谷歌的秘密X实验室负责研究的,目前已经取得了一些可观的进展。


Dean对此很感兴趣,决定花自己“20%”的时间来投入这个项目,每名谷歌员工都要将自己20%的时间贡献给他或她的核心工作以外的工作。很快,Dean向吴恩达推荐了有着神经科学背景的Greg Corrado。(在研究生院的课堂上,Corrado粗略地学习了该技术,但他对此很感兴趣,他开玩笑说道:“那天我上课的时候很专心。”)在春天,他们团队又多了一名吴恩达的得意研究生Quoc Le,他是项目团队的第一个实习生。在那之后,一些谷歌工程师用“谷歌大脑”来形容Marvin项目。


术语“人工智能”是在1956年夏天在达特茅斯的一种宪法惯例中诞生的,当时大多数研究人员认为创造AI的最佳方法是写一个非常大而全面的程序,将逻辑推理的规则和有关世界的知识写入其中。比方说,如果你想把英语翻译成日语,你需要把所有的英语语法规则、牛津英语词典中包含的所有定义、所有的日语语法规则,和日语字典中的所有单词都编入计算机。这种观点通常被称为“符号化AI”。因为它的认知定义是基于符号逻辑的,但它已经有些过时,只能算作是“好的老式的AI”。


这种老式方法有两个主要问题。一是,它非常耗费人力和时间;二是,它只有在规则和定义非常清楚的领域(比如数学或象棋)才真正起作用。然而,如果翻译采用这种方法,效果会很差,因为我们平时说的话没办法跟词典上的规则和定义完全对应。比方说,这样的系统可能会把“农业部长”翻译为“农业牧师”。但是,对于数学和国际象棋来说,这种老式方法就很奏效。


不过,这种老式方法的系统确实有限。在20世纪80年代,卡内基梅隆的机器人研究员指出,让计算机做成人能做的事情很简单,但让计算机做一个1岁的小孩可以做的事情却几乎是不可能的,比如拿起一个球或识别一只猫。到了20世纪90年代,尽管计算机能够在国际象棋上战胜世界冠军,我们离真正的人工智能还差得远。


关于AI,还有另外一种看法,计算机的学习是自下而上(从数据),而不是从上到下(从规则)学习。这个概念可追溯到20世纪40年代初,研究人员发现灵活自动智能的最佳模型就是人类大脑本身。毕竟,大脑只不过是很多神经元的集合体,神经元之间可能会相互传递电荷,或者不会传递。重要的不是单个神经元本身,而是它们之间的连接方式。这种结构很简单,为大脑提供了丰富的适应性优势。大脑可以在信息量少或缺失的情况下工作;它在承受重大的损害时,也不会完全失去控制;它可以用非常有效的方式存储大量的知识;它可以区分不同的模式,但同时保留必须的混乱来处理歧义。


所以人类开始试图用电子元件来模仿这种结构,1943年研究表明,简单的人工神经元排布可以执行基本的逻辑功能。至少在理论上,神经元可以模仿人类的方式。实际上,神经元会根据试错把相互之间的突触连接调节得更强或更弱。人工神经网络也可以做类似的事情,在不断试错的基础上逐步改变人工神经元之间的数字关系。人工神经网络不需要使用固定规则来预编程,相反,它会改变自身以反映所输入的数据中的模式。


这种观点认为人工智能是进化得来,而不是创造出来的。如果你想要一个灵活而且能适应环境的机制,不能一开始就教它国际象棋。必须从非常基本的能力,如感官知觉和运动控制开始,长此以往更先进的技能才有可能出现。人类并不是通过记忆字典和语法书来学习和理解语言的,所以我们有什么理由要让计算机通过这样的方式来学习呢?


谷歌大脑是第一个对这种思维方式进行商业投资的机构。Dean、Corrado和吴恩达利用闲暇时间进行合作并对此展开研究,很快他们便取得了进展。他们从最新的理论大纲和自20世纪八九十年代以来的已有框架中提取了他们的模型的搭建灵感,他们还利用了谷歌巨大的数据储备和庞大的计算基础设施。他们利用网络上大量的“标记”数据,让计算机不断改进从而更好地匹配现实。


某天,Dean告诉我说:“动物进化出眼睛是个巨大的发展。”我们像往常一样坐在会议室,他在白板画了一个复杂的时间线,展示了谷歌大脑以及它与神经网络的历史关系。“现在,计算机也有了眼睛,我们能够借助眼睛让计算机识别图片。机器人的能力将得到巨大提升。他们将能够在一个未知的环境中,处理各种不同的问题。”这些他们正在研发的能力可能看起来很原始,但它们的影响是深远的。

7.4_.jpg

上图:Geoffrey Hinton,他在谷歌多伦多办事处提出的想法为谷歌翻译的神经网络方法奠定了基础。 图片来源:《纽约时报》的Brian Finke




2、重量级实习生


正如Dean所说,谷歌大脑诞生一年后,就在研发具有1岁小孩智力的机器中取得了不错的成绩。谷歌的语音识别团队将其旧系统的一部分转换为神经网络,并因此取得了该系统20年来的最好成效。该系统识别对象的能力提高了一个数量级。这不是因为谷歌大脑的研究人员在短短一年内就产生了很棒的新想法,而是因为谷歌终于在该领域投入了资源和人力。


Geoffrey Hinton的到来让谷歌大脑发展更为迅猛。在谷歌大脑成立的第二年,Hinton被招聘到了谷歌大脑,而吴恩达离开了谷歌(吴恩达现在领导百度1300人的AI团队)。Hinton只能离开多伦多大学在谷歌任职三个月,因此由于奥术合同的原因,他不得不被聘为实习生。在实习培训中,辅导人员说“输入您的LDAP(目录访问协议)”,他问道:“什么是LDAP?”在场其他所有25岁的职员,尽管他们可能刚刚弄清深度学习是人工智能的必要条件,都在想“那个老家伙是谁?为什么他连LDAP是什么都不知道?”


Hinton说道:“在午餐时间,团队成员里有个人惊呼‘Hinton教授!我选修了你的课程!你居然在这里?’”从那以后,大家才不对Hinton议论纷纷。


几个月后,Hinton和他的两个学生在一个称为ImageNet的开源集合运行的大型图像识别竞赛中展示了惊人的成果,他们让计算机不仅能识别猴子,而且能够区分蜘蛛猴和吼猴,以及各种不同品种的猫。谷歌很快就向Hinton和他的学生发起了聘用书,他们接收了谷歌的聘用。Hinton说道:“我本以为谷歌对我们的知识产权感兴趣,结果没想到是对我们这几个人感兴趣。”


Hinton来自英国的传统家族,像Darwins一样,他们家族非常注重教育。他伟大的曾祖父是George Boole,他在符号逻辑方面的基础工作为计算机打下基础;Hinton的祖父是一位著名的外科医生,Hinton的父亲是一位热爱冒险的昆虫学家,Hinton的父亲的表哥是洛斯阿拉莫斯研究所的研究员,等等。而Hinton曾在剑桥和爱丁堡大学读数,然后又到卡内基梅隆大学学习,最后他又到多伦多大学。(他的工作长期以来一直受到加拿大政府的慷慨支持。)我在他的办公室对他进行了采访,他顶着一头成熟的诺埃尔加拉格尔风格的黄到褪色的头发,穿着一件宽松的条纹衬衫,椭圆形的眼镜滑落到高挺的鼻子尖端。他开口说道:“计算机会比美国人更早地理解讽刺为何物。”


19世纪60年代末,Hinton在剑桥大学读本科时,就一直致力于研究神经网络,他是该领域的先驱。但大多数时候,每当他谈及机器学习,人们都觉得他在满口胡言。人们之所以觉得神经网络荒谬,主要是因为感知机(Perceptron)被过度炒作,感知机是一个人工神经网络,是康奈尔心理学家Frank Rosenblatt于20世纪50年代后期提出的。《纽约时报》曾报道,感知机的赞助商美国海军期望它“能够走路、说话、看、写作,甚至再造自己,并意识到自己的存在”。结果证明这是不切实际的。美国的Marvin Minsky曾在1954年的普林斯顿论文中研究过神经网络,但是他对于布朗克斯科学当代的Rosenblatt对神经范式的夸张描述已经厌倦了。(他也在争取国防部的投资。)Minsky与MIT的同事一起出版了一本书,来证明有一些简单问题是感知器永远不能解决的。


Minsky对感知机的抨击只是一个“层”的网络,在后来的生活中,他阐述了与当代深度学习非常相似的想法。Hinton认为,如果使用多层神经网络,就能够完成复杂的任务。神经网络的最简单的描述是,它是一个机器,能在数据中发现模式并进行分类或预测。如果只有一层神经网络,你可以找到简单的模式,但如果有多层神经网络,你应该去找模式中的模式。在图像识别的领域,主要使用的是“卷积神经网络”。(这是在1998年的一篇开创性论文中阐述的,其主要作是Yann LeCun,他在多伦多大学读博士后,是Hinton的学生,现在是Facebook人工智能实验室的负责人。)网络的第一层负责学习识别“边缘”的基本视觉效果,也就是判断一个东西(一个像素上)是否有东西。网络的每个连续层都在前一层中寻找模式。边缘的图案可以是圆形也可以是矩形,圆形或矩形的图案可能是面部。这种方法或多或少地以越来越抽象的方式将信息组合在一起,从视网膜中的光感受器将信息返回到大脑的视觉皮层。在每个步骤中,不相关的细节会被丢弃,因为如果几个边缘和圆圈合在一起成为一张面部,你无需知道发现面部的位置,只需要知道它是一张脸。


多层“深度”神经网络的问题是试错法部分非常复杂。对于单层神经网络来说,这很容易。想象一下,如果你正在和一个孩子玩。你告诉孩子,“拿起绿色的球,把它放入盒子A中”,孩子拿起一个绿色的球,但把它放入了盒子B。你会说,“再试一次把绿色球放在盒子A中”,孩子会再次尝试把球放入了盒子A中。


现在想象你告诉孩子,“拿起一个绿色的球,穿过三号门,然后把绿色的球放入盒子A。”孩子却拿起一个红色的球,穿过了二号门,把红色的球放入盒子B。那么你该如何纠正孩子呢?你不能只是不断重复初始指示,因为孩子不知道他到底错在哪一步。在现实生活中,你可以先举起红球和绿球,说“这是红球,这是绿球”。但是,机器学习的重点是避免这种明确的指导。Hinton和其他几个人研究了解决方案(或者,对旧的方案进行了改造)。对于这个分层错误问题,在20世纪70年代末和80年代初,计算机科学家重新开始对神经网络感兴趣。Hinton说道:“人们对此非常兴奋,但我们的研究超出了他们的兴趣。”很快,计算机科学家们又跟以前一样认为Hinton这样的人是怪人和神秘主义者。


这种想法在哲学家和心理学家中仍然很受欢迎,他们称之为“连接主义”或“并行分布式处理”。Hinton告诉我说,“有几个人对这个想法保持热情,这很好,因为这是真正的人工智能。但在心理学领域,很多人相信这种想法,但却没能力实现它。”尽管加拿大政府一直大力支持,但Hinton也没能实现这个想法。“因为没有足够的计算机资源或足够的数据,我们只能自我安慰道:‘是的,如果我们有这样的前提条件,这个想法肯定是行得通的。’但这却并不是一个非常有说服力的论据。”




3、深层解读深度学习


当Pichai提到“人工智能优先(A.I. First)”概念时,他不仅仅是在说谷歌的战略计划,更是把这个长期不可行的想法扔给了公司。Pichai在资源分配上,确保了像Dean和Hinton这样的人才有足够的计算资源和数据资源可用。每个大脑大约有1000亿个神经元,每个神经元与其他10000个神经元相连,这意味着大脑内突触的数量在100万亿和1000万亿之间。对于20世纪40年代提出的简单人工神经网络来说,根本不可能实现这样规模的网络。虽然目前我们也远没达到构建这种规模网络的能力,但谷歌Brain的投资让我们至少实现了可以媲美小鼠大脑的人工神经网络。


然而,理解网络规模的重要性之前,你必须了解一些技术细节,如机器智能究竟对数据做了什么。其实,我们对人工智能的恐惧,主要来自于我们认为它像一个反社会天才在图书馆挖掘知识,然后,或许某一天,曾经只会玩回形针的机器会像对待蚂蚁或莴苣一样轻松杀死人类。但这并不是人工智能的工作方式,它们所做的只是搜索并寻找共同点——首先是基本模式,然后逐渐变复杂。真正最大的危险在于,我们人类最初给它灌输的信息是否就包含个人偏见。


如果只是想了解一二,可以直接阅读下一节(内容是关于猫的),如果想理解相关技术,那请继续阅读。(当然,本节内容也是关于猫。)


如果你想在老式的符号化AI模型上生成一个“猫识别器”。那么首先,你必须花大量时间预先对机器详细明确地说明什么是“猫”。告诉机器,一只猫有四条腿、尖尖的的耳朵、晶须和尾巴等。机器将这些信息存储在内存中的“Cat”区域。接下来,提供一张图片,让机器判断是否是猫。判断过程中,首先,机器必须分离出图像中不同的元素;然后,利用内存中存储的规则处理这些元素。规则如下:如果(腿 = 4)且(耳朵 = 尖)且(胡须 = 有)且(尾巴 = 有)且(表情= 高傲),那么(猫 = 是)。但如果你提供一张苏格兰折耳猫的图片呢?我们符号化 AI模型就会根据“耳朵 != 尖”判断图片上不是猫。 这样的识别水平比蹒跚学步的小孩都差。


而现在,如果用神经网络做这个实验,就根本不需要通过一系列预先定义的规则进行判别,也根本不需要专门的空间来存储“猫”的信息,包含大量相互连接着的开关的大型blob会解决这一切。在blob的一端提供输入(待识别图像),另一端提供输出(标记信息)。然后,机器将自动化工作,通过不断调试相互连接的开关,最终将输入正确映射到对应的输出。训练过程就像是在迷宫中挖掘一系列隧道,隧道两端连接的是正确的输入和输出。可用的训练数据越多,挖掘的隧道数量和复杂性就越大。训练过程一旦完成,blob中有了足够多的隧道,神经网络就能稳定处理数据并作出可靠预测。这就是“监督学习(Supervised Learning)”。


神经网络之所以需要如此多的神经元和数据,因为它以一种类似民主的方式工作。例如,你想训练可识别五种类型物体的神经网络,它由数百万“选民”(神经元)组成,每位选民都有五张不同的卡片,分别是:猫、狗、蜘蛛猴、勺子、除颤器。拿出一张图片,问:“这是猫,狗,蜘蛛猴,勺子还是除颤器?”所有神经元分组进行投票,最终得票最多的作为最终结果:“一只狗?”


你告诉它:“不!是只猫。重新计算。”


然后,神经网络退回一步,确定哪些神经元投票“猫”,哪些不是。那些投票“猫”的神经元,下次如果还投“猫”,其权重加倍。除此之外,该神经网络也必须能准确判别其他物体类别,如狗和除颤器。而神经网络之所以如此灵活,是因为每个单独的个体针对不同的输出贡献的权重不一样。其实,最关键的不是个体投票,而是这种投票模式。如果Joe, Frank 和Mary一起投票,那就是一只狗;如果Joe, Kate和Jessica一起投票,那就是一只猫;而如果Kate, Jessica 和Frank一起投票,图片上就是一个除颤器。神经网络只需要注册大量可识别信号,这些信号表示:图片中该像素区域是“猫”。“选民”越多,投票次数就越多,微弱信号也越可能被注册。简单来说,就是如果只有Joe, Frank 和Mary三个选民,你可能仅限于区分猫、狗和除颤器;而如果有数百万选民,不同选民之间有数十亿连接,那么你就可以对数据精确分类。经过训练的“选民”组合甚至可以识别未标记图片(或许不那么精确)。


计算科学领域之所以不接受这些理念,部分原因在于机器的输出仅仅是基于模式的预测,它并不完美,而且机器永远无法确切地定义什么是“猫”。只有在看到猫的时候,机器才知道那是猫。神经元“选民”通过数百万张猫图像的训练,它们可以识别出在阳光下打盹的快乐小猫,和躲在垃圾箱阴影中的生气小猫。实际上,你需要大量的神经元“选民”和足够的已标记数据,前者用来确保神经网络可以捕捉到非常微弱的信号,如苏格兰折耳猫垂下的耳朵,后者用来尽可能确保神经网络已“见过”所有相似场景。


但是,需要注意的是,神经网络的输出结果具有概率性,这意味着它并不适用于所有任务。如果神经网路把猫误认为狗,或者偶尔推送了错误的电影,这都不是大事,但如果应用于无人驾驶,神经网络1%的失误率可能就酿成了悲剧。类似担忧还有很多。监督学习是基于已标记数据进行反复试验的过程。机器完成的只是学习过程,而人为因素仍然决定了最初对训练数据的分类。例如,训练数据中,图片上是一位男士和一位女士,某人将该图片标记为“一位女士和她的老板”,这种关系标记将影响所有后续的模式识别。因此,人类错误标记才会导致训练数据错误。机器可能通过重罪定罪数据,来确定信贷候选人贷款资格。但如果重罪定罪数据本身就是不公平的(如数据是基于歧视性禁毒法),那么机器输出的可贷款人名单也是不可靠的。


图像识别网络与我们的小猫识别器一样,也是深度学习的一种,但常常把它作为教学示例,因为人类可直观了解到图像识的具体过程:先找图像边缘,然后识别圆圈,接着识别脸。这意味着其中有错误保护措施。例如,早期,谷歌发现他们的图像识别软件无法单独识别出杠铃,哪怕用大规模运动器材图像集对其训练,结果也是一样。通过可视化工具观察发现,由于训练集中所有哑铃都是附在手臂上的,所以机器没有学习到“哑铃”的概念,而是“哑铃+手臂”的整体概念。改进一下,向训练集中加入单独的“杠铃”照片,问题就解决了。但并不是所有问题都这么容易。




4、猫识别论文


谷歌Brain部门在一到两年时间内,成功让机器具备了1岁小孩的智能。随后,该部门成功从谷歌X实验室“毕业”,并成为了更高级的研究机构。(谷歌X实验室负责人曾经指出,Brain取得的成就,让整个实验室的努力没有白费。)当时,谷歌Brain仍然只有10人不到,而对于未来,也只有一个模糊的概念。但即使在那时,他们都在积极思考接下来会发生什么。就像人一样,学会认识皮球后,我们会为之满足一段时间,但迟早,人类会产生关于皮球的问题。这就是语言产生的原因。


这一领域中,Brain迈出的第一步是发表了猫识别论文,正是这篇论文,Brain闻名世界。


这篇论文展示了一个具有超过十亿个“突触”连接的神经网络。虽然与人类大脑相比,它小了好几个数量级,但它比当时任何公开的神经网络都要大好几百倍。这个神经网络可以处理原始的、未标记数据,并识别高级的人类概念。谷歌Brain的研究人员向该神经网络展示了几百万的静态帧(来自YouTube视频),然后神经网络的感觉中枢开始运转,生成了一个稳定的模型。像小孩或花栗鼠一样聪明,该模型可以迅速识别出猫的脸。研究人员并没有预先向该神经网络输入关于“猫”概念,它直接与现实世界交互并获取“猫”这一定义。(研究人员发现,这一神经网络与核磁共振(M.R.I.)很相像,猫的脸部阴影会激发人工神经元“投票”的热情。)大多数机器学习都受限于已标记数据的数据量。但这篇论文却显示,该神经网络可以处理原始未标记数据,有时甚至是人类都还没建立起概念的数据。这不仅仅是猫识别研究的重大突破,更是整个人工智能的显著进步。


猫识别论文的第一作者是Quoc Le。Le个头不高,身形偏瘦,说话温和但语速很快,经常穿着闪亮的黑皮鞋,而且面带神秘的微笑。他在越南长大,父母都是农民,小时候家里甚至都没有电。他从小就表现出了过人的数学能力,后来,他就读于一所磁铁学校学习科学。上世纪90年代末,Le还在上学,那时候他就试图构建一个聊天机器人。他在想,这有多难呢?

“但实际上,”他告诉我,“非常不简单。”


毕业后,Le离开了越南,前往澳大利亚堪培拉的一所大学学习,主要研究机器视觉这类人工智能任务。当时人工智能的主要做法是,提前给机器灌输相关概念(如,边缘),这让他感觉像是在作弊。当时的Le不知道,全世界有很多计算机科学家和他的想法一样——机器可以从零开始学习。2006年,Le任职于德国的马克斯普朗克研究所生物控制部门。在当时的一个阅读小组中,他读到了Geoffrey Hinton写的两篇论文,他觉得自己豁然开朗。


“这两篇文章引起了争议,”他告诉我。“非常大的争议。”我们在一个小型内部会议室里,天花板又窄又高,屋子里有一张小桌子和两块白板。Le看了眼他画在背后白板上的曲线,又回过头来轻声地说,“我从没见到过这么大的争议”。


他记得,当时在阅读小组里站起来,然后说,“这就是未来。”但在当时,这是个不受欢迎的决定。Le在澳大利亚的导师不能完全理解他的想法,写邮件问到,“你为什么决定做这个?”


“那时,我想不到怎么回答这个问题,”Le说。“因为,我只是好奇。文章中提出了一个成功的范式,老实说,我只是对这个新范式感到好奇。那时还是2006年,这样的观点非常罕见。”然后,Le 加入了斯坦福的吴恩达团队,接着他开始沿着 Hinton 的道路探索。“到了2010年年底,我确信会有事情发生。”


不久之后,Le成为了Brain的首位实习生。在Brain,他继续着自己的论文工作,也就是后来发表的猫论文的前身。在一个简单层面上,Le只是想看看计算机能否被训练并自主识别给定图像中的绝对必要的信息。他向神经网络输入了一张YouTube上的静态图片。然后,指示神经网络丢弃一些信息,但并不说明哪些信息应该保留哪些应该丢弃。神经网络随机丢弃了一些信息。接着,Le又说:“刚刚是开玩笑的。现在基于你刚刚保留下来的信息,重新构建初始图像。”这种方式就像他先要求机器找到一种方式“总结”图像,然后,基于总结的信息回溯原始图像。如果总结的都是些不相关信息(如天空的颜色),而不是关键信息(如有没有胡须),计算机就无法有效重构原始图像。计算机的反应就像我们远古的祖先,他们在逃跑中建立起对剑齿虎的印象。而Le的神经网络与我们的祖先的方式不同,它需要不断地尝试。从数学角度来说,每次尝试后,它都选择不同的信息进行优化,而且表现地越来越好。然而,神经网络是个黑盒子,它确实生成了某种范式,但人类并不能直观地理解这些范式。


猫论文发表后,引起了极大凡响,而Le并未感觉到自己掌握了业界的话语权。但他强烈感觉到,应该继续自己早年聊天机器人的想法。发表了猫论文后,Le意识到,如果神经网络可以总结图片信息,那么它或许也可以总结语句信息。在接下来两年中,这一想法深深印在Le和Tomas Mikolov(Le在Brain的同事)的脑海中。


那段时间,Brain团队占据了好几个办公室,甚至一度占用了高管的地方。随后,他们收到了管理处的邮件,要求他们不要在Larry Page和Sergey Brin的 办公室门口的沙发上睡觉。后来,他们被安排到街对面的研究楼里工作,在那里,研究人员专心研究,而不必应付同事间礼貌而无效率的交谈。当然在这一过渡期,谷歌的竞争对手们也在奋力前行。(Le神情严肃地一遍一遍提及他与Tomas Mikolov的亲密合作。最后我忍不住问道,“他离开了?”Le点点头,回答道:“去了Facebook”。)

7.5_.jpg

上图:2012年的谷歌 Brain团队。他们发表了著名的“猫论文”,演示论文中的神经网络处理未标记数据。研究人员向该神经网络提供几百万的静态帧(来自YouTube视频),神经网络生成了一个稳定的模型并且识别出猫。


那段时间,他们极力想构造出不仅能执行简单的静态图片分类任务,也能处理复杂的任务(如自然语言或音乐)的神经网络架构。他们的许多观点在上世纪九十年代就出现了,Le和他的同事们专门回顾了那些被忽略的概念,希望能从中得到启发。他们知道,一旦建立了一个具有基本语言预测功能的模型,也就可以基于此完成各种其他类型智能任务,如预测电子邮件的合适回复或者预测谈话过程。你可以侧重于那些从表面看起来很像思维过程的任务。
 
 
来源:人工智能学家
 
 
 
 
 
 
更多内容请关注:www.imefuture.com
 
北京大数据产业投资基金正式发布 扎克伯格启用AI“管家
圣诞节太多小孩被机器人吸引
 
智造家
437 浏览

机器学习性能改善备忘单:32个帮你做出更好预测模型的技巧和窍门

机械自动化类 料盘挡板 2016-12-19 14:06 发表了文章 来自相关话题

机器学习最有价值(实际应用最广)的部分是预测性建模。也就是在历史数据上进行训练,在新数据上做出预测。 





而预测性建模的首要问题是:


如何才能得到更好的结果?

这个备忘单基于本人多年的实践,以及我对顶级机器学习专家和大赛优胜者的研究。

有了这份指南,你不但不会再掉进坑里,而且会提升性能,甚至在你自己的一些预测难题中取得世界领先水平的结果。


让我们一起来看看吧!








 ◆ ◆ ◆

概述


本备忘单的目的是为你提供一些提升机器学习性能的想法。要获得突破,你所需要的可能就是其中的一个。找到你要的那个,然后回来,再找下一个再提升。


我把这份清单分为4个子主题:
基于数据改善性能借助算法改善性能用算法调参改善性能借助模型融合改善性能


清单越往下,你获得的增益可能越小。比如,对问题场景重新设立框架或者更多的数据通常比对最好的算法进行调参得到收益要多。 


不总是这样,但通常如此。




◆ ◆ ◆

1.基于数据改善性能


改变你的训练集数据以及问题定义方式,你能够得到很大提升,也许是最大的提升。


策略:从新的、不同的角度透视你的数据,以便将潜藏的问题结构充分暴露给算法。



数据策略


获得更多的数据:你能够拿到更多或者更高质量的数据么?对现代非线性机器学习模型如深度学习而言,数据越多,改进越多。

创造更多数据:如果你不能拿到更多数据,那么,你能创造出新的数据么?也许你可以填充或者重新排列现有数据,或者利用概率模型来产生新的数据。

清洁你的数据。你能否改善数据中的信号?也许可以纠正或删除一些缺失或错误的观测值,或者在合理范围外的离群点,从而提升数据质量。

数据重新取样。你能否对数据重新取样,以改变其大小或者分布?也许你可以用一个小得多的数据来实验,以提高实验的速度;或对某个特殊类型的观察值进行过采样/欠采样以使得它们更好地代表整个数据集。

重新界定问题:你能否改变你正试图解决的问题类型?重构数据,如回归,二项或多项分类,时间序列,异常检测,评分,推荐等问题类型。

重新缩放数据。你能否对数值型变量进行缩放处理?输入数据的归一化和标准化处理可以提升使用加权或距离度量的算法性能。

转化数据。你能否改变数据的分布形态?使得数据更服从高斯分布,或进行指数变换可能会暴露出数据更多的特征供算法学习。

数据投影(映射):你能否将数据投影到一个更低维的空间?你可以用无监督的聚类或投影方法,创造一个新的压缩数据集代表。

特征选择。所有的输入变量是否同等重要?使用特征选择和衡量特征重要性的方法,可以创造出数据的新视角,供模型算法探索。

特征工程。 你能够创造或者增加新的特征?也许有的属性可以分解为多个新的值(比如类别,日期或字符串)或者属性可以聚集起来代表一个事件(如一个计数,二进制标志或统计信息)

上面这些工作的期待结果是:你应该得到数据集的一批新视角和新版本。




下一步:你可以用预测性模型算法评估它们每一个的价值。




◆ ◆ ◆

2.借助算法改善性能



机器学习无外乎算法。 

调整的策略:找出那些性能高于基线水平,比平均水平要好的算法和数据呈现方式。对结果保持怀疑态度,设计实验,使得它很难愚弄你。



算法策略


重采样方法。要用什么样的重采样方法来估计其在新数据上的能力?使用一种能够最好地利用现有数据的方法和参数设置。K折交叉验证法,利用其中的一折作为验证集可能是最佳操作。

评价指标。用什么样的指标来评价预测能力?选择能够最好地体现问题和专业需求的指标。不要任何问题一上来就看分类准确率。

基线性能。比较算法时,什么是基线性能?通过随机算法或零规则算法(预测均值或众数)来建立一个基线,并以此对所有算法进行排序。

抽检线性算法。什么样的线性算法能有好结果?线性方法通常更容易产生偏倚,也易于理解,能快速训练。如果能达到好效果,则更容易被选中。评估多个不同的线性方法。

抽检非线性算法。哪些非线性算法能有好结果?非线性算法通常要求更多数据,有更高的复杂性,但是能获得更好的性能。评估多个不同的非线性方法。

从文献中偷师学艺。哪些文献报导的方法能很好地解决你的问题?也许你能从算法类型或传统方法的延伸中获取解决自己问题的灵感。

标准参数设置。评估算法时,什么是标准的参数设置?每一个算法都有机会解决你的问题,这不是说在现有基础上死磕调参,而是说,每一种算法都需要把参数调好,才能在算法“大赛”中有胜出的机会。

上面这些工作的期待结果是:你应该会得到性能良好的候选算法和数据呈现候选方法清单(不太长的有限个方法)。



下一步:通过算法调参改善性能



◆ ◆ ◆

3.用算法调参改善性能



算法调参可能是你花时间最多的地方。它可能非常耗时间,从算法抽检中很快能挖掘出一两个性能不错的算法,而把这一两个算法的潜力充分挖掘出来可能需要好几天,几周甚至几个月的时间。


调整的策略:充分挖掘性能良好的算法的潜力。





调参策略


诊断。对算法要做哪些诊断和回顾?也许可以回顾一下学习曲线,了解目前模型的状态是过拟合还是欠拟合,然后纠正它。不同的算法可能提供不同的可视化结果和诊断。检视算法得到正确预测结果和错误预测结果的样本。

试试直觉。你的直觉是什么?如果你琢磨参数的时间足够长,而反馈回路又很短,那么你会得到怎么调参的直觉。试一试,看看你遇到更大的难题时能不能再得到新的参数设置灵感。

学习文献。文献中用到了哪些参数,范围是多少?评估标准参数性能是调参的良好开端。

随机搜索。哪些参数可以用随机搜索?也许你可使用算法超参数的随机搜索,来发现那些你永远也想不到的参数设置。

网格搜索。哪些参数可以使用网格搜索?也许有一些标准超参数网格值,你可以拿来赋值,从而发现好的参数设置,重复这一过程,不断精调网格。

最优化。那些参数可以优化?也许有一些参数,如结构或者学习率,可以用直接搜索程序(如模式搜索)或随机优化(如遗传算法)来调整。

交替实施。算法有哪些其他的实施?也许其中的一个交替实施方法可以在同样的数据上得到更好的结果。每个算法都有无数的微决定由算法的使用者做出,其中的一些可能会影响到问题的解决。

算法延伸。哪些是常见的算法延伸?也许你可以通过评估常见的或标准的算法延伸而提高性能。这可能需要一些实施工作。

算法定制。对你的个案而言,需要做哪些算法定制?也许你可以为你的数据修饰算法,从损失函数,内部优化方法到算法的具体决定。

联系专家。对你的个案,专家们有什么算法推荐?给一个或多个算法领域的学术界专家写封简单的邮件,概述你的预测问题,以及你已经做出的尝试。这可能会让你获悉前沿工作,或者学术界不为你所知的新想法。

上面这些工作的期待结果是:你应该可以得到一个很短的清单,上面是经过精调的算法。也许甚至只剩下一个。



下一步:到这一步,对剩下的一个或多个模型进行最后的收尾,做出预测或者投放到产品中。更进一步的性能提升可以通过多个模型的融合来达到。




◆ ◆ ◆

4. 借助模型融合改善性能



你可以组合多个模型的预测。在算法调参之后,这是下一个大的改善空间。实际上,组合多个“够用”的模型,而不是多个精调(同时也非常脆弱,可能严重overfitting)的模型通常可以达到很好的性能提升。


策略:组合多个性能良好的模型预测结果。



组装策略


混合模型预测结果。 你是否可以直接组合多个模型的预测结果?也许你可以使用同样的或不同的算法来搭建多个模型。对各自的预测结果取均值,或者众数。

混合数据呈现方式。你是否可以组合用不同数据呈现方法得到的模型预测结果?也许你使用了不同的问题投射方法,来训练性能良好的的算法,那么这些预测结果可以组合起来。

混合数据样本。你是否可以组合不同数据角度(特征)训练的模型?也许你可以创造训练样本的多个子样本来训练一个性能良好的算法,然后把结果组合起来。这叫做自助聚集(bootstrap aggregation)或者bagging,当各个模型的预测都很高明而方法各异(不相关)时,效果最好。

纠正预测。你是否可以纠正性能良好模型的预测?也许你可以明确地纠正预测结果,或者通过像boosting这样的方法来学习如何纠正预测错误。

学习组合。你能否使用新的模型,学习如何将多个性能良好的预测结果以最佳方式组合起来?这叫做堆栈(stacked generalization or stacking),当各子模型都很高明而方法各异时,通常能产生不错的结果,聚集模型就是各预测结果的简单加权线性模型。这个过程可以在多个层面上重复进行。

上面这些工作的期待结果是:你应该可以得到一个或多个性能良好的模型的组装结果,比任何单一模型的结果都好。



下一步:可以把一个或多个组装最后定下来,进行预测,投入产品中。




◆ ◆ ◆

结语


本备忘单密集打包了各种改善性能的想法。如果你觉得这里提到的要点太多,你不必样样都做。提升性能,你只需要一个好的想法。你可以依照下序的建议试试:


1.选择一个组 

a.数据
b.算法
c.调参
d.组装


2.从组中选择一个方法

3.从选择的方法中挑一个去试

4.比较结果,如果有改进则留下

5.重复上述过程
 
 
 
 
来源: 大数据文摘
智造家 查看全部
机器学习最有价值(实际应用最广)的部分是预测性建模。也就是在历史数据上进行训练,在新数据上做出预测。 

4.1_.jpg

而预测性建模的首要问题是:


如何才能得到更好的结果?

这个备忘单基于本人多年的实践,以及我对顶级机器学习专家和大赛优胜者的研究。

有了这份指南,你不但不会再掉进坑里,而且会提升性能,甚至在你自己的一些预测难题中取得世界领先水平的结果。


让我们一起来看看吧!


4.2_.jpg



 ◆ ◆ ◆

概述


本备忘单的目的是为你提供一些提升机器学习性能的想法。要获得突破,你所需要的可能就是其中的一个。找到你要的那个,然后回来,再找下一个再提升。


我把这份清单分为4个子主题:
  1. 基于数据改善性能
  2. 借助算法改善性能
  3. 用算法调参改善性能
  4. 借助模型融合改善性能



清单越往下,你获得的增益可能越小。比如,对问题场景重新设立框架或者更多的数据通常比对最好的算法进行调参得到收益要多。 


不总是这样,但通常如此。




◆ ◆ ◆

1.基于数据改善性能


改变你的训练集数据以及问题定义方式,你能够得到很大提升,也许是最大的提升。


策略:从新的、不同的角度透视你的数据,以便将潜藏的问题结构充分暴露给算法。



数据策略


获得更多的数据:你能够拿到更多或者更高质量的数据么?对现代非线性机器学习模型如深度学习而言,数据越多,改进越多。

创造更多数据:如果你不能拿到更多数据,那么,你能创造出新的数据么?也许你可以填充或者重新排列现有数据,或者利用概率模型来产生新的数据。

清洁你的数据。你能否改善数据中的信号?也许可以纠正或删除一些缺失或错误的观测值,或者在合理范围外的离群点,从而提升数据质量。

数据重新取样。你能否对数据重新取样,以改变其大小或者分布?也许你可以用一个小得多的数据来实验,以提高实验的速度;或对某个特殊类型的观察值进行过采样/欠采样以使得它们更好地代表整个数据集。

重新界定问题:你能否改变你正试图解决的问题类型?重构数据,如回归,二项或多项分类,时间序列,异常检测,评分,推荐等问题类型。

重新缩放数据。你能否对数值型变量进行缩放处理?输入数据的归一化和标准化处理可以提升使用加权或距离度量的算法性能。

转化数据。你能否改变数据的分布形态?使得数据更服从高斯分布,或进行指数变换可能会暴露出数据更多的特征供算法学习。

数据投影(映射):你能否将数据投影到一个更低维的空间?你可以用无监督的聚类或投影方法,创造一个新的压缩数据集代表。

特征选择。所有的输入变量是否同等重要?使用特征选择和衡量特征重要性的方法,可以创造出数据的新视角,供模型算法探索。

特征工程。 你能够创造或者增加新的特征?也许有的属性可以分解为多个新的值(比如类别,日期或字符串)或者属性可以聚集起来代表一个事件(如一个计数,二进制标志或统计信息)

上面这些工作的期待结果是:你应该得到数据集的一批新视角和新版本。




下一步:你可以用预测性模型算法评估它们每一个的价值。




◆ ◆ ◆

2.借助算法改善性能



机器学习无外乎算法。 

调整的策略:找出那些性能高于基线水平,比平均水平要好的算法和数据呈现方式。对结果保持怀疑态度,设计实验,使得它很难愚弄你。



算法策略


重采样方法。要用什么样的重采样方法来估计其在新数据上的能力?使用一种能够最好地利用现有数据的方法和参数设置。K折交叉验证法,利用其中的一折作为验证集可能是最佳操作。

评价指标。用什么样的指标来评价预测能力?选择能够最好地体现问题和专业需求的指标。不要任何问题一上来就看分类准确率。

基线性能。比较算法时,什么是基线性能?通过随机算法或零规则算法(预测均值或众数)来建立一个基线,并以此对所有算法进行排序。

抽检线性算法。什么样的线性算法能有好结果?线性方法通常更容易产生偏倚,也易于理解,能快速训练。如果能达到好效果,则更容易被选中。评估多个不同的线性方法。

抽检非线性算法。哪些非线性算法能有好结果?非线性算法通常要求更多数据,有更高的复杂性,但是能获得更好的性能。评估多个不同的非线性方法。

从文献中偷师学艺。哪些文献报导的方法能很好地解决你的问题?也许你能从算法类型或传统方法的延伸中获取解决自己问题的灵感。

标准参数设置。评估算法时,什么是标准的参数设置?每一个算法都有机会解决你的问题,这不是说在现有基础上死磕调参,而是说,每一种算法都需要把参数调好,才能在算法“大赛”中有胜出的机会。

上面这些工作的期待结果是:你应该会得到性能良好的候选算法和数据呈现候选方法清单(不太长的有限个方法)。



下一步:通过算法调参改善性能



◆ ◆ ◆

3.用算法调参改善性能



算法调参可能是你花时间最多的地方。它可能非常耗时间,从算法抽检中很快能挖掘出一两个性能不错的算法,而把这一两个算法的潜力充分挖掘出来可能需要好几天,几周甚至几个月的时间。


调整的策略:充分挖掘性能良好的算法的潜力。

4.3_.gif

调参策略


诊断。对算法要做哪些诊断和回顾?也许可以回顾一下学习曲线,了解目前模型的状态是过拟合还是欠拟合,然后纠正它。不同的算法可能提供不同的可视化结果和诊断。检视算法得到正确预测结果和错误预测结果的样本。

试试直觉。你的直觉是什么?如果你琢磨参数的时间足够长,而反馈回路又很短,那么你会得到怎么调参的直觉。试一试,看看你遇到更大的难题时能不能再得到新的参数设置灵感。

学习文献。文献中用到了哪些参数,范围是多少?评估标准参数性能是调参的良好开端。

随机搜索。哪些参数可以用随机搜索?也许你可使用算法超参数的随机搜索,来发现那些你永远也想不到的参数设置。

网格搜索。哪些参数可以使用网格搜索?也许有一些标准超参数网格值,你可以拿来赋值,从而发现好的参数设置,重复这一过程,不断精调网格。

最优化。那些参数可以优化?也许有一些参数,如结构或者学习率,可以用直接搜索程序(如模式搜索)或随机优化(如遗传算法)来调整。

交替实施。算法有哪些其他的实施?也许其中的一个交替实施方法可以在同样的数据上得到更好的结果。每个算法都有无数的微决定由算法的使用者做出,其中的一些可能会影响到问题的解决。

算法延伸。哪些是常见的算法延伸?也许你可以通过评估常见的或标准的算法延伸而提高性能。这可能需要一些实施工作。

算法定制。对你的个案而言,需要做哪些算法定制?也许你可以为你的数据修饰算法,从损失函数,内部优化方法到算法的具体决定。

联系专家。对你的个案,专家们有什么算法推荐?给一个或多个算法领域的学术界专家写封简单的邮件,概述你的预测问题,以及你已经做出的尝试。这可能会让你获悉前沿工作,或者学术界不为你所知的新想法。

上面这些工作的期待结果是:你应该可以得到一个很短的清单,上面是经过精调的算法。也许甚至只剩下一个。



下一步:到这一步,对剩下的一个或多个模型进行最后的收尾,做出预测或者投放到产品中。更进一步的性能提升可以通过多个模型的融合来达到。




◆ ◆ ◆

4. 借助模型融合改善性能



你可以组合多个模型的预测。在算法调参之后,这是下一个大的改善空间。实际上,组合多个“够用”的模型,而不是多个精调(同时也非常脆弱,可能严重overfitting)的模型通常可以达到很好的性能提升。


策略:组合多个性能良好的模型预测结果。



组装策略


混合模型预测结果。 你是否可以直接组合多个模型的预测结果?也许你可以使用同样的或不同的算法来搭建多个模型。对各自的预测结果取均值,或者众数。

混合数据呈现方式。你是否可以组合用不同数据呈现方法得到的模型预测结果?也许你使用了不同的问题投射方法,来训练性能良好的的算法,那么这些预测结果可以组合起来。

混合数据样本。你是否可以组合不同数据角度(特征)训练的模型?也许你可以创造训练样本的多个子样本来训练一个性能良好的算法,然后把结果组合起来。这叫做自助聚集(bootstrap aggregation)或者bagging,当各个模型的预测都很高明而方法各异(不相关)时,效果最好。

纠正预测。你是否可以纠正性能良好模型的预测?也许你可以明确地纠正预测结果,或者通过像boosting这样的方法来学习如何纠正预测错误。

学习组合。你能否使用新的模型,学习如何将多个性能良好的预测结果以最佳方式组合起来?这叫做堆栈(stacked generalization or stacking),当各子模型都很高明而方法各异时,通常能产生不错的结果,聚集模型就是各预测结果的简单加权线性模型。这个过程可以在多个层面上重复进行。

上面这些工作的期待结果是:你应该可以得到一个或多个性能良好的模型的组装结果,比任何单一模型的结果都好。



下一步:可以把一个或多个组装最后定下来,进行预测,投入产品中。




◆ ◆ ◆

结语


本备忘单密集打包了各种改善性能的想法。如果你觉得这里提到的要点太多,你不必样样都做。提升性能,你只需要一个好的想法。你可以依照下序的建议试试:


1.选择一个组 

a.数据
b.算法
c.调参
d.组装


2.从组中选择一个方法

3.从选择的方法中挑一个去试

4.比较结果,如果有改进则留下

5.重复上述过程
 
 
 
 
来源: 大数据文摘
智造家
412 浏览

人工智能竟然可以“做梦”

机械自动化类 机械设计 2016-11-30 10:13 发表了文章 来自相关话题

 
近几年来,随着神经科学的不断发展,人们对许多新奇的未知领域有了新的探索和发现。在神经科学领域,其中有一项不得不提的就是,科学家们经过不断的研究,最终发现了“梦境”对于人类的记忆巩固,有着尤为重要的作用。


如今,谷歌的人工智能公司DeepMind就研发了一项新的技术,他们能够让机器人来“做梦”,通过对梦境的创建,能够达到提高学习速度的目的。 

 
该项目的诞生其实并没有让人们大跌眼镜,因为早在几年前,在该项目推出之前,就有了相关的铺垫。起初,研发人员们对这些人工智能梦境的创建也是花了很多时间和功夫,他们引进了许多不同的素材,最初这些梦境中的内容还包括著名的雅利达视频游戏。
 

一提到谷歌的这家人工智能公司DeepMind,我们首先想到的是它强大的人工智能教导模式,他们还教过人工智能玩不同的经典视频游戏,并且让这些AI还都能玩的有模有样。这也是DeepMind公司取得的最令人称叹的成就。
 


然而如今我们所提到的,是让机器人能够做真实的“梦”,就像人类所做的正常的梦一样,通过对真实场景的分析,就能够产生相应的“记忆”和“思维”,从中我们也可以发现,在学习和记忆各样的信息时,真实世界的场景往往占据着重要的作用。
 

为了更好地了解机器人做梦的重要性,我们首先需要了解梦在哺乳型物种的头脑中是如何工作的,就好比说在人类的头脑中,梦是怎样形成的,跟头脑思维又有哪些联系。我们可以从神经科学的角度来更好地理解这个问题,而科学家们也在该领域有了很多的发现,其中在了解梦境在整个思维机制中所担当的角色时,科学家们最重大的一个发现是,梦的主要内容都是一些负面的信息,并且都带有恐吓性的倾向。


你可以尝试做一件事,就是连续一个月将你所做的梦纪录下来,你会很奇妙地发现你的梦大多数都是负面和惊恐的的一些情景。虽然也会有一些很美好的梦境,但是相比而言还是略少一些。从这个简单的一项发现中,我们可以推论,在梦境中,噩梦的出现是一种正常现象,而不是我们所理解的非正常情境,从古至今一直都是这样。
 

这些过度负面的梦境内容,从表面上来看似乎不存在任何的意义,也无法看出其中的端倪。但是如果从神经科学的角度来分析,就能够查验出其中许多有用的信息。在众多的神经科学理论当中,有一个十分突出的理论则说明,梦境实则是对最近现实生活中所发生的事件的一个突出和强化。
 

在梦境中所经历的负面和惊恐的状况,实际上可以帮助大脑更好地消化这些记忆信息,能够更加深化现实中的经历,从而可以让头脑更加深刻地记得这些信息。如今,DeepMind就是使用梦境的这些特点,在一场视频游戏中,对AI进行不断地训练,让它们不断地熟悉这些内容,从而可以加快人工智能学习的速率,提升学习效果。
 

那么,对于机器人而言,它们要面临的挑战有哪些呢?到目前为止,世界上最先进的AI的也只能从一些较复杂的视频游戏中获得小部分的经验和技巧,例如《星际争霸2》和《迷宫》。
 

因此在目前这些境况下,要设置出一个更加具有威胁恐惧性的情境,就需要额外考虑一些特别的因素,例如可以在这些游戏中加入“大BOSS”等角色,或者是设置一些迷宫和蛊惑人心的环节,让人工智能在这个过程中,要费尽心力与其争战,在这个过程中会充满各样的挑战。而不是仅仅设置一些毫无意义的环节,让整个游戏的气氛很缓和轻松,不具备任何的挑战。


“梦境”式的训练方法可以让人工智能着重游戏中的某些特定部分,尤其是那些具有挑战性的环节,在这个过程中它们需要反复不断地练习,反复总结经验,直到修炼出专业技能为止。使用这种技术,在DeepMind的研究人员能够帮助人工智能实现10倍的学习速率。
 

也许你会问,为什么这些AI的思维会在某些游戏中比创造它们的人类还要厉害呢?要搞清楚这一点,就必须对监管式学习与非监管式学习进行区分。迄今为止,获得突出表现的AI都是在使用监管式学习的模式,在该模式中,程序员会对系统提供许多对“训练数据”,然后AI会学习这些数据并进行检测。


这是训练教导机器人最简单的方式,但这种方法与人类的学习模式不一样。目前我们在开发一种非监管式的学习模式,诚寻远门不需要对该系统进行相关的数据训练,它们可以自行学习,自行决定,从而达到某个目标。


DeepMind的研发人员们更加看重这种无监管式的学习,因为在这种模式下,人工智能更有潜力创造出与人类相似的东西。因此,虽然机器人在未来是否真的能够通过“做梦”来实现更快速率的学习,依然还有许多不确定之处,但是人工智能不久之后能够对现实情境有更加清晰的理解。虽然目前这些都是一些尝试和推测,但是这些生动的想法和理念,将会在不久的将来成为推动人工智能发展的绝佳动力。
 
 
 
 
 
来源:1号机器人网
智造家

  查看全部
3.1_.jpg

 
近几年来,随着神经科学的不断发展,人们对许多新奇的未知领域有了新的探索和发现。在神经科学领域,其中有一项不得不提的就是,科学家们经过不断的研究,最终发现了“梦境”对于人类的记忆巩固,有着尤为重要的作用。


如今,谷歌的人工智能公司DeepMind就研发了一项新的技术,他们能够让机器人来“做梦”,通过对梦境的创建,能够达到提高学习速度的目的。 

 
该项目的诞生其实并没有让人们大跌眼镜,因为早在几年前,在该项目推出之前,就有了相关的铺垫。起初,研发人员们对这些人工智能梦境的创建也是花了很多时间和功夫,他们引进了许多不同的素材,最初这些梦境中的内容还包括著名的雅利达视频游戏。
 

一提到谷歌的这家人工智能公司DeepMind,我们首先想到的是它强大的人工智能教导模式,他们还教过人工智能玩不同的经典视频游戏,并且让这些AI还都能玩的有模有样。这也是DeepMind公司取得的最令人称叹的成就。
 


然而如今我们所提到的,是让机器人能够做真实的“梦”,就像人类所做的正常的梦一样,通过对真实场景的分析,就能够产生相应的“记忆”和“思维”,从中我们也可以发现,在学习和记忆各样的信息时,真实世界的场景往往占据着重要的作用。
 

为了更好地了解机器人做梦的重要性,我们首先需要了解梦在哺乳型物种的头脑中是如何工作的,就好比说在人类的头脑中,梦是怎样形成的,跟头脑思维又有哪些联系。我们可以从神经科学的角度来更好地理解这个问题,而科学家们也在该领域有了很多的发现,其中在了解梦境在整个思维机制中所担当的角色时,科学家们最重大的一个发现是,梦的主要内容都是一些负面的信息,并且都带有恐吓性的倾向。


你可以尝试做一件事,就是连续一个月将你所做的梦纪录下来,你会很奇妙地发现你的梦大多数都是负面和惊恐的的一些情景。虽然也会有一些很美好的梦境,但是相比而言还是略少一些。从这个简单的一项发现中,我们可以推论,在梦境中,噩梦的出现是一种正常现象,而不是我们所理解的非正常情境,从古至今一直都是这样。
 

这些过度负面的梦境内容,从表面上来看似乎不存在任何的意义,也无法看出其中的端倪。但是如果从神经科学的角度来分析,就能够查验出其中许多有用的信息。在众多的神经科学理论当中,有一个十分突出的理论则说明,梦境实则是对最近现实生活中所发生的事件的一个突出和强化。
 

在梦境中所经历的负面和惊恐的状况,实际上可以帮助大脑更好地消化这些记忆信息,能够更加深化现实中的经历,从而可以让头脑更加深刻地记得这些信息。如今,DeepMind就是使用梦境的这些特点,在一场视频游戏中,对AI进行不断地训练,让它们不断地熟悉这些内容,从而可以加快人工智能学习的速率,提升学习效果。
 

那么,对于机器人而言,它们要面临的挑战有哪些呢?到目前为止,世界上最先进的AI的也只能从一些较复杂的视频游戏中获得小部分的经验和技巧,例如《星际争霸2》和《迷宫》。
 

因此在目前这些境况下,要设置出一个更加具有威胁恐惧性的情境,就需要额外考虑一些特别的因素,例如可以在这些游戏中加入“大BOSS”等角色,或者是设置一些迷宫和蛊惑人心的环节,让人工智能在这个过程中,要费尽心力与其争战,在这个过程中会充满各样的挑战。而不是仅仅设置一些毫无意义的环节,让整个游戏的气氛很缓和轻松,不具备任何的挑战。


“梦境”式的训练方法可以让人工智能着重游戏中的某些特定部分,尤其是那些具有挑战性的环节,在这个过程中它们需要反复不断地练习,反复总结经验,直到修炼出专业技能为止。使用这种技术,在DeepMind的研究人员能够帮助人工智能实现10倍的学习速率。
 

也许你会问,为什么这些AI的思维会在某些游戏中比创造它们的人类还要厉害呢?要搞清楚这一点,就必须对监管式学习与非监管式学习进行区分。迄今为止,获得突出表现的AI都是在使用监管式学习的模式,在该模式中,程序员会对系统提供许多对“训练数据”,然后AI会学习这些数据并进行检测。


这是训练教导机器人最简单的方式,但这种方法与人类的学习模式不一样。目前我们在开发一种非监管式的学习模式,诚寻远门不需要对该系统进行相关的数据训练,它们可以自行学习,自行决定,从而达到某个目标。


DeepMind的研发人员们更加看重这种无监管式的学习,因为在这种模式下,人工智能更有潜力创造出与人类相似的东西。因此,虽然机器人在未来是否真的能够通过“做梦”来实现更快速率的学习,依然还有许多不确定之处,但是人工智能不久之后能够对现实情境有更加清晰的理解。虽然目前这些都是一些尝试和推测,但是这些生动的想法和理念,将会在不久的将来成为推动人工智能发展的绝佳动力。
 
 
 
 
 
来源:1号机器人网
智造家

 
416 浏览

谷歌宣布机器学习图像锐化工具RAISR

机械自动化类 扳手哥 2016-11-15 13:59 发表了文章 来自相关话题

在今天的 Google Research 博客中,谷歌介绍了一种能够从低分辨率图像中生成高质量图像的技术 RAISR。
 
 
每天网络上都会分享和存储数百万张图片,人们可以在这些照片中探索世界、研究有趣的新话题、甚至是与亲朋分享自己的假期生活。然而,很多图片会受到拍摄设备像素的限制,或者会因为手机、平板电脑 h 网络的问题而导致图像质量的下降。随着家用和移动设备上高分辨率显示器的普及,对低分辨率图像的高质量版本、快速查看以及可从多种设备分享的需求已得到了前所未有的提升。


在论文《RAISR: Rapid and Accurate Image Super-Resolution(快速准确的图像超分辨率)》中,我们介绍了一种结合了机器学习的技术,它能够生成低分辨率图像的高质量版本。RAISR 生成的效果可以比肩甚至优于现有的超分辨率方法,而且处理速度要快上 10 倍到 100 倍;同时,它还可以在典型的移动设备上实时运行。此外,我们的技术还能避免低分辨率图像中存在的重塑走样问题。


上采样是一种从低质量图片中生成尺寸更大、像素更多、质量更高的图像的过程,已经存在相当长的一段时间了。上采样中一些众所周知的方法是线性方法,它通过使用附近现有像素值的简单固定组合来填充新的像素值。这些方法很快,因为它们是固定的线性过滤器(一个均匀应用于图像的恒定卷积核)。但是这种让上采样快速运行的原因也是让使得它们不能有效地在更高分辨率的结果中给出更生动的细节。在下面的例子中可以看到,上采样的图像看上去比较模糊,你很难说这样的图像是被增强过的。





左图:低分辨率原图,右图:简单的(双三次)上采样版本(2×)


有了 RAISR 之后,我们就可以使用机器学习,并且可在图像对上进行训练了,一个低质量,一个高质量,然后你会发现,当它可选择地应用在低分辨率图像的每个像素上时,它会重塑出与原图质量相当的细节。RAISR 可以用两种方法训练。第一种是「直接」的方法,其中过滤器是直接从低和高分辨率的图像对中被学习。另一种方法需要首先将一个低计算成本的升频器应用到低分辨率的图像上(如上图)然后从上采样和高分辨率的图像对中学习过滤器。虽然直接的方法计算的更快,但是第二种方法允许非整数比例系数(non-integer scale factors),同时能更好的利用基于硬件的上采样。


对于这两种方法,RAISR 过滤器都可以根据在图像块中找到的边特征(edge feature)来获得训练——即亮度/颜色梯度、平坦/有纹理的区域等等——其特征的确定是通过方向(direction,即一个边的角度)、强度(strength,锐利的边有更大的强度)和相干度(coherence,一种对边的状态的度量)。下面是一组 RAISR 过滤器,它们是从 10,000 对高和低分辨率图像对的数据集中学习到的(其中低分辨率图像首先会被上采样)。其训练过程大概用去了一个小时。





合并为 3 倍超分辨率图像学习的 11×11 过滤器。这些过滤器可以为超分辨率系数,包括分级系数。其中,当边缘角度改变时,我们看到过滤器的角度也随之旋转。同样的,随着强度增加,过滤器的锐度也随之增加,同时过滤器的各向异性也随着相干性的增加而增加。


从左到右,我们看到学习过滤器选择性地对应正在重建的下边缘方向。例如:底部行中间的过滤器最适合保持强水平边缘(梯度角 90°)同时具有高度相干性(一条直的,而不是弯曲的边缘)如果这条相同的水平边缘是低对比度的,则顶行中会有另一个过滤器被选中。


在实践中,运行时(at run-time)RAISR 会选择并应用学习到的过滤器中与低分辨率图像中每个相邻像素最相关的过滤器。当这些过滤器被应用于低品质的图像时,它们会重建具有原始高分辨率的的质量细节,对线性,双三次或 Lanczos 插值法等方式有显著的性能提升。





上图:RAISR 算法运行时,应用于低功耗的高效输出。下图:低分辨率原图(左),双三次上采样器 2×(中),RAISR 输出(右)。


一些 RAISR 应用的实例:





上图:原图像,下图:RAISR 超分辨率 2×





左图:原图,右图:RAISR 超分辨率 3×


超分辨率方式的复杂之处在于消除混叠效应,如在较低分辨率渲染高频内容时出现的轮廓图案和锯齿(有时图像会被刻意降低分辨率)。根据底层特性的形状,这些伪像(artifacts)变化复杂,还难以被还原。





图中右下是低光条件下的混叠效应的一个实例


线性方法不能修复底层结构,但是 RAISR 能够做到。下面就是一个例子,左边低分辨的原图在数字 3 和 5 下出现了明显的混淆空间频率(aliased spatial frequencies),而右边的 RAISR 图像修复了原始结构。RAISR 使用的这种过滤器学习方法的另外一个重要好处就是让其拥有专门化的降噪能力,即移除在其训练过程中针对单个压缩算法(例如 JPEG)的压缩失真(compression artifacts)。通过提供这样的人工样本,RAISR 能够学习消减除分辨率增强外的其他影响,就像在结果过滤器中调制一样。





左侧:有很强的混淆现象的低分辨率原图。右侧:RAISR 输出,消除了混淆现象


使用一个或多个画面的超分辨率技术,已经取得了很大的进展。如今,机器学习的使用串联了已经发展了数十年的图像技术,在图像处理方面取得了很大的进展并产出许多潜在的价值。例如,除了提升你在手机上双指放缩图像的质量外,你还可以捕捉、保存或者传输低分辨率图像并按照自己的需求超分辨这些图像,在质量上没有视觉上的降低。而且除了没有明显的质量损失,它也利用了更少的移动数据与储存方案。


下面是对该论文的摘要介绍:
 
论文:RAISR:快速且准确的图像超分辨率(RAISR: Rapid and Accurate Image Super Resolution)






给定一张图像,我们希望能得到一张其对应的更大尺寸、有显著更多像素、更高图像质量的版本。这个问题通常被称为单图像超像素问题(Single Image Super-Resolution (SISR) problem)。其思路是:使用足够多的训练数据(对应的低分辨率和高分辨率图像对),我们就可以训练出一组过滤器(filter,即一种映射),当我们将其应用于一张非训练集的图像时,它就能产生一张该图像的更高分辨率的版本,其中的学习(learning)部分最好应选择低复杂度(low complexity)的。在我们提出的方法中,运行时间(run-time)比目前可用的最佳竞争方法快 1 到 2 个数量级,同时我们的方法还能得到可与当前最佳结果媲美甚至更好的结果。


一个与上述问题紧密相关的主题是图像锐化(image sharpening)和对比度增强(contrast enhancement),即通过增强基本的细节(一个大范围的频率)来提升模糊图像的视觉质量。我们的方法还额外包含了一种极其有效的用来生成比输入模糊图像显著更加锐利的图像的方式,且不需要引入晕圈(halo)和噪声放大(noise amplification)。我们还阐释了:除了单纯的兴趣之外,这种有效的锐化算法还可被用作一种预处理步骤,可用于产生带有内置锐化和对比度增强效果的更有效的放大过滤器(upscaling filter)。





本文由机器之心编译
智造家提供 查看全部
在今天的 Google Research 博客中,谷歌介绍了一种能够从低分辨率图像中生成高质量图像的技术 RAISR。
 
 
每天网络上都会分享和存储数百万张图片,人们可以在这些照片中探索世界、研究有趣的新话题、甚至是与亲朋分享自己的假期生活。然而,很多图片会受到拍摄设备像素的限制,或者会因为手机、平板电脑 h 网络的问题而导致图像质量的下降。随着家用和移动设备上高分辨率显示器的普及,对低分辨率图像的高质量版本、快速查看以及可从多种设备分享的需求已得到了前所未有的提升。


在论文《RAISR: Rapid and Accurate Image Super-Resolution(快速准确的图像超分辨率)》中,我们介绍了一种结合了机器学习的技术,它能够生成低分辨率图像的高质量版本。RAISR 生成的效果可以比肩甚至优于现有的超分辨率方法,而且处理速度要快上 10 倍到 100 倍;同时,它还可以在典型的移动设备上实时运行。此外,我们的技术还能避免低分辨率图像中存在的重塑走样问题。


上采样是一种从低质量图片中生成尺寸更大、像素更多、质量更高的图像的过程,已经存在相当长的一段时间了。上采样中一些众所周知的方法是线性方法,它通过使用附近现有像素值的简单固定组合来填充新的像素值。这些方法很快,因为它们是固定的线性过滤器(一个均匀应用于图像的恒定卷积核)。但是这种让上采样快速运行的原因也是让使得它们不能有效地在更高分辨率的结果中给出更生动的细节。在下面的例子中可以看到,上采样的图像看上去比较模糊,你很难说这样的图像是被增强过的。

3.1_.jpg

左图:低分辨率原图,右图:简单的(双三次)上采样版本(2×)


有了 RAISR 之后,我们就可以使用机器学习,并且可在图像对上进行训练了,一个低质量,一个高质量,然后你会发现,当它可选择地应用在低分辨率图像的每个像素上时,它会重塑出与原图质量相当的细节。RAISR 可以用两种方法训练。第一种是「直接」的方法,其中过滤器是直接从低和高分辨率的图像对中被学习。另一种方法需要首先将一个低计算成本的升频器应用到低分辨率的图像上(如上图)然后从上采样和高分辨率的图像对中学习过滤器。虽然直接的方法计算的更快,但是第二种方法允许非整数比例系数(non-integer scale factors),同时能更好的利用基于硬件的上采样。


对于这两种方法,RAISR 过滤器都可以根据在图像块中找到的边特征(edge feature)来获得训练——即亮度/颜色梯度、平坦/有纹理的区域等等——其特征的确定是通过方向(direction,即一个边的角度)、强度(strength,锐利的边有更大的强度)和相干度(coherence,一种对边的状态的度量)。下面是一组 RAISR 过滤器,它们是从 10,000 对高和低分辨率图像对的数据集中学习到的(其中低分辨率图像首先会被上采样)。其训练过程大概用去了一个小时。

3.2_.jpg

合并为 3 倍超分辨率图像学习的 11×11 过滤器。这些过滤器可以为超分辨率系数,包括分级系数。其中,当边缘角度改变时,我们看到过滤器的角度也随之旋转。同样的,随着强度增加,过滤器的锐度也随之增加,同时过滤器的各向异性也随着相干性的增加而增加。


从左到右,我们看到学习过滤器选择性地对应正在重建的下边缘方向。例如:底部行中间的过滤器最适合保持强水平边缘(梯度角 90°)同时具有高度相干性(一条直的,而不是弯曲的边缘)如果这条相同的水平边缘是低对比度的,则顶行中会有另一个过滤器被选中。


在实践中,运行时(at run-time)RAISR 会选择并应用学习到的过滤器中与低分辨率图像中每个相邻像素最相关的过滤器。当这些过滤器被应用于低品质的图像时,它们会重建具有原始高分辨率的的质量细节,对线性,双三次或 Lanczos 插值法等方式有显著的性能提升。

3.3_.jpg

上图:RAISR 算法运行时,应用于低功耗的高效输出。下图:低分辨率原图(左),双三次上采样器 2×(中),RAISR 输出(右)。


一些 RAISR 应用的实例:

3.4_.jpg

上图:原图像,下图:RAISR 超分辨率 2×

3.5_.jpg

左图:原图,右图:RAISR 超分辨率 3×


超分辨率方式的复杂之处在于消除混叠效应,如在较低分辨率渲染高频内容时出现的轮廓图案和锯齿(有时图像会被刻意降低分辨率)。根据底层特性的形状,这些伪像(artifacts)变化复杂,还难以被还原。

3.6_.JPG

图中右下是低光条件下的混叠效应的一个实例


线性方法不能修复底层结构,但是 RAISR 能够做到。下面就是一个例子,左边低分辨的原图在数字 3 和 5 下出现了明显的混淆空间频率(aliased spatial frequencies),而右边的 RAISR 图像修复了原始结构。RAISR 使用的这种过滤器学习方法的另外一个重要好处就是让其拥有专门化的降噪能力,即移除在其训练过程中针对单个压缩算法(例如 JPEG)的压缩失真(compression artifacts)。通过提供这样的人工样本,RAISR 能够学习消减除分辨率增强外的其他影响,就像在结果过滤器中调制一样。

3.7_.jpg

左侧:有很强的混淆现象的低分辨率原图。右侧:RAISR 输出,消除了混淆现象


使用一个或多个画面的超分辨率技术,已经取得了很大的进展。如今,机器学习的使用串联了已经发展了数十年的图像技术,在图像处理方面取得了很大的进展并产出许多潜在的价值。例如,除了提升你在手机上双指放缩图像的质量外,你还可以捕捉、保存或者传输低分辨率图像并按照自己的需求超分辨这些图像,在质量上没有视觉上的降低。而且除了没有明显的质量损失,它也利用了更少的移动数据与储存方案。


下面是对该论文的摘要介绍:
 
  • 论文:RAISR:快速且准确的图像超分辨率(RAISR: Rapid and Accurate Image Super Resolution)


3.7_.jpg


给定一张图像,我们希望能得到一张其对应的更大尺寸、有显著更多像素、更高图像质量的版本。这个问题通常被称为单图像超像素问题(Single Image Super-Resolution (SISR) problem)。其思路是:使用足够多的训练数据(对应的低分辨率和高分辨率图像对),我们就可以训练出一组过滤器(filter,即一种映射),当我们将其应用于一张非训练集的图像时,它就能产生一张该图像的更高分辨率的版本,其中的学习(learning)部分最好应选择低复杂度(low complexity)的。在我们提出的方法中,运行时间(run-time)比目前可用的最佳竞争方法快 1 到 2 个数量级,同时我们的方法还能得到可与当前最佳结果媲美甚至更好的结果。


一个与上述问题紧密相关的主题是图像锐化(image sharpening)和对比度增强(contrast enhancement),即通过增强基本的细节(一个大范围的频率)来提升模糊图像的视觉质量。我们的方法还额外包含了一种极其有效的用来生成比输入模糊图像显著更加锐利的图像的方式,且不需要引入晕圈(halo)和噪声放大(noise amplification)。我们还阐释了:除了单纯的兴趣之外,这种有效的锐化算法还可被用作一种预处理步骤,可用于产生带有内置锐化和对比度增强效果的更有效的放大过滤器(upscaling filter)。





本文由机器之心编译
智造家提供
470 浏览

Facebook贾扬清宣布新机器学习系统Caffe2Go:可在移动设备上实现实时风格迁移

机械自动化类 扳手哥 2016-11-09 13:10 发表了文章 来自相关话题

   风格迁移一直是机器学习领域内的一项重要任务,很多研究机构和研究者都在努力打造速度更快、计算成本更低的风格迁移机器学习系统,比如《怎么让你的照片带上艺术大师风格?李飞飞团队开源快速神经网络风格迁移代码 》、《谷歌增强型风格迁移新算法:实现基于单个网络的多种风格实时迁移 》。
 
今天,Facebook 又在其官方博客上宣布了一种可以用在移动设备实现实时风格的深度学习系统 Caffe2Go,自称能在眨眼之间完成处理的任务,而且还能实现高质量的视频风格迁移。Facebook 还表示该项目将会在未来几个月内进行部分开源。


   随着视频通话逐渐成为人们交流的主要方式,Facebook 希望创造最新的视频创意工具来帮助人们表达自我。最近,他们在手机 app 中测试了新的相机应用,实时在视频中添加艺术元素。这项技术被称为「风格转换」。它可以将一张图片中的艺术风格,例如梵高的画作,加入普通的图片或视频中去。这是以往技术上难以实现的事,通常这需要将参考图和要处理的数据发送到数据中心,通过大型服务器进行处理。
 
Facebook 最新开发的移动端深度学习平台第一次摆脱了信号塔的束缚,可以实时捕捉、分析和处理图像,将最新技术放进人们的手中。这一新程序被称为 Caffe2Go,是一个完整的深度学习系统,它的架构已经嵌入手机 app 中。通过将处理图片和视频的人工智能模型压缩至百分之一大小,Facebook 现在已经可以在 iOS 和安卓系统中高效运行深度学习网络。最终,Facebook 公司的应用可以在部分手机中以不到 50 毫秒的速度完成人工智能任务的处理,而人眨眼需要的时间大约需要 300 毫秒。




相机风格转换工具是两种技术的结合:Caffe2Go 运行环境与风格转换模型。Facebook 的人工智能团队一直在处理算法与大规模系统,他们一直在致力于开发新模型,让风格转换更加快速稳定。于是,现在你拿起手机,开始摄像,梵高的绘画风格变得无处不在了。


Caffe2Go 项目在三个月前开始,目前没有其他公司的产品能够做到这样的效果:让人工智能风格转换变成创作工具。不仅如此,Facebook 做到了更多,他们让这种应用可以在手机中实时处理图像。该项目的研究者跨越产品、技术和研究者。FAIR 团队的 Justin Johnson 是一篇描述该项目技术基础论文(Perceptual Losses for Real-Time Style Transfer and Super-Resolution (https://arxiv.org/abs/1603.08155))的作者,他们在前人的努力基础之上开发了新的技术;应用机器学习团队则通过努力将 AI 引擎塞进手机设备中;相机团队负责满足用户需求;正是因为所有人的努力,这些团队构建了运行在移动设备上的高效神经网络。我们将解释如何思考和开发这一应用技术的,从 Caffe2Go 开始。



Caffe2Go

轻量快速

人工智能对计算机科学产生了深远的影响,但它的应用一直被局限在大型数据中心里,距离普通用户存在很长一段距离。大多数时候,人工智能「实时处理」应用将数据发送到远端数据中心,通过那里的 GPU 来处理,物理距离造成了不可避免的延迟。我们认为使用超级计算机进行实时处理是不实际的,于是我们转换思路,努力让人工智能在移动设备的 CPU 中运行。





没人想拖着一台超级计算机出门

手机可以拍照,通话,也可以实时理解用户所需,不需要连接远端服务器,但它们的性能有限。尽管近年来硬件设备的发展让移动设备的计算能力有了很大改进,手机 CPU 现在已经可以在一秒钟内进行数十亿次运算,但智能软件在设计中还要面对诸如功率,存储器和计算能力的各种资源限制。因此,移动设备环境对机器学习系统提出了机遇和挑战。

面对这些挑战,我们的解决方案是设计超轻量级模块化框架。为此,我们以开源的 Caffe2 项目为基础,遵循 Unix 理念开发了 Caffe2Go。我们确保了用于声明和连接组件的核心架构的轻量化,允许多种组件与其连接——包括对于移动设备的专用优化。我们保留了一个精巧的算法框架,允许工程人员将抽象概念描述成有向无环图(DAG),同时确保没有约束被强加在图中执行节点的输入和输出上。这允许我们的工程团队能够在不同平台上实现和优化模块,同时可以轻松地连接各种模块。当图像实时输入时,通过硬件功能进行自我实例化可以达到最大处理速度。

速度是计算密集型移动应用的关键,特别是对于图像和视频处理而言,框架的轻量级设计允许我们为特定的运算符执行平台进行特定的优化。NNPack 库是其中一个例子,Caffe2 集成在移动运行环境中时,通过使用移动 CPU 中被称为 NEON 的功能,可以显著提高运算速度。在 iOS 设备上,我们也正在着手集成加速功能如 Metal 语言。所有这些都是通过模块化设计完成的,无需改变一般模型定义。因此,算法端和运行环境可以互相依靠,不必担心兼容性的问题。


面向开发者

Caffe2 是我们的第一个产业级深度学习平台,它可以在服务器 CPU、GPU、iOS 和安卓四种平台上运行,使用同一种代码。因为我们的模块化设计,这种架构在不同平台上都使用同一种语言,但对每个平台都有优化。这是一个开发人员不必担心的细节;例如,可以在移动端 NNPack(iOS 和安卓)和服务器 GPU 的 CUDNN 中进行选择。在 Caffe2 中,算法开发者可以专注于算法,无需考虑如何运行卷积。

快速的部署设计也能使开发者受益。从开发者的角度看,调试移动设备的运行时间可能是一项挑战,因为移动端工具链(toolchain)并不如桌面的和服务器的工具链那么先进。我们通过从硬件上抽象神经网络的数学而解决了这个问题——一个 Caffe2go 中的串行化网络(serialized network)在被应用于移动手机和服务器时可以得到相同的数值输出。其结果是,我们可以将大部分工作(模型训练、性能评估、用户体验研究)移动到服务器环境中进行;当结果看起来不错了之后,就可以实现在移动环境中的一键式部署了。


训练风格迁移模型

风格迁移(style transfer)并不是什么新概念。它最早是由研究人员在发表于 2015 年 8 月的一篇题为《A Neural Algorithm for Artistic Style》的论文中引入的。但是,当时这项技术的速度还很慢,而且需要强大的服务器。后面的几个月,研究社区改进了这项技术,将其速度提升了几个数量级,但也还是需要依赖服务器上的大量计算能力。

Caffe2go 成功使人工智能实现了高速处理,并且可以集成到你手上的移动设备中。但该风格迁移模型仍然还需要优化,这样才能在确保实时体验的同时还能保证得到高质量、高分辨率的图像。


优化成有效的模型大小

传统的风格迁移研究得到的模型(甚至只是前馈变量)是很大(在参数的数量方面)很慢的。我们的目标是创造能够运行新的、更小的、更高效的模型的风格迁移应用——能够在 iPhone 6s 或以上的手机上不掉帧地提供 20 FPS 的高质量视频。

为了减小该模型的尺寸,我们应用了 3 种主要的方法:优化了卷积层的数量(这是处理中最耗时间的部分)、优化了每一层的宽度、以及调整了处理过程中的空间分辨率(spatial resolution)。卷积层的数量和宽度是可用于调整处理时间的单独指标——即调整图像有哪些方面需要处理,或调整一个单独的处理过程需要多少时间。对于空间分辨率,我们可以调整中间层中图像实际被处理的大小。通过较早地使用池化(pooling,缩小正被处理的图像的大小),我们可以加速处理时间,因为系统不再需要处理那么多的数据了。我们还发现,使用这些技术,我们可以极大地减少该网络的宽度和深度,同时还能保持合理的质量。


提升质量

图像质量是主观的,非常难以测量——尤其是对于风格迁移这样的东西。因此我们打造了一些可视化工具,其中包括 A/B tests;并训练了不同的模型以确保我们可以得到最高质量的图像结果。我们的大型 GPU 集群由 FBLearner Flow 驱动,让我们可以快速扫描大范围的超参数(比如模型架构、内容/风格权重、和下采样),从而找到满足我们的性能目标同时能保持和提升质量的训练良好的前向风格(feedforward style)。

在提升质量方面还有很多其它的技巧——比如,应用实例规范化(instance normalizatio)而不是常用的批规范化(batch normalization)能有助于多种风格,同样避免卷积层中的零填充(zero padding)可以减少伪像,也可以将不同的预处理或后处理过滤器应用到风格或内容图像上。但在我们的测试中,我们发现这些方法往往在一些风格上效果良好,在另一些风格上则效果不佳。

凭借在这项风格迁移技术上的速度和质量优化,使用 Caffe 2 框架,我们就可以将一种实时图像处理系统应用到移动设备上。


展望下一步

Caffe2go,加上 Torch 这样的研究工具链,是 Facebook 的机器学习产品的核心。因为其在大小、速度和灵活性上的优势,我们正在将 Caffe2go 推广到整个 Facebook 的 stack 中。

我们还在致力于和社区分享我们的软件和设计,从而让我们可以学习更好地利用多种硬件平台和算法设计的特性,这在跨平台机器学习系统中是尤其重要的。在未来的几个月,我们将会部分开源该人工智能框架。

随着我们的进步,你可以想象出设备上实时运行的人工智能可以如何帮助世界更加开放、人们更加互连。我们手中的智能设备将继续颠覆我们对「智能(intelligence)」的认知方式。有了像 Caffe2go 这样精巧的机器学习系统,我们将致力于为人们带来更赞的人工智能和增强现实体验——让你在拍视频的时候,设备里还有一把梵高的画刷。
 
 
 
 
 
 
转载:机器之心
智造家提供 查看全部
   风格迁移一直是机器学习领域内的一项重要任务,很多研究机构和研究者都在努力打造速度更快、计算成本更低的风格迁移机器学习系统,比如《怎么让你的照片带上艺术大师风格?李飞飞团队开源快速神经网络风格迁移代码 》、《谷歌增强型风格迁移新算法:实现基于单个网络的多种风格实时迁移 》。
 
今天,Facebook 又在其官方博客上宣布了一种可以用在移动设备实现实时风格的深度学习系统 Caffe2Go,自称能在眨眼之间完成处理的任务,而且还能实现高质量的视频风格迁移。Facebook 还表示该项目将会在未来几个月内进行部分开源。


   随着视频通话逐渐成为人们交流的主要方式,Facebook 希望创造最新的视频创意工具来帮助人们表达自我。最近,他们在手机 app 中测试了新的相机应用,实时在视频中添加艺术元素。这项技术被称为「风格转换」。它可以将一张图片中的艺术风格,例如梵高的画作,加入普通的图片或视频中去。这是以往技术上难以实现的事,通常这需要将参考图和要处理的数据发送到数据中心,通过大型服务器进行处理。
 
Facebook 最新开发的移动端深度学习平台第一次摆脱了信号塔的束缚,可以实时捕捉、分析和处理图像,将最新技术放进人们的手中。这一新程序被称为 Caffe2Go,是一个完整的深度学习系统,它的架构已经嵌入手机 app 中。通过将处理图片和视频的人工智能模型压缩至百分之一大小,Facebook 现在已经可以在 iOS 和安卓系统中高效运行深度学习网络。最终,Facebook 公司的应用可以在部分手机中以不到 50 毫秒的速度完成人工智能任务的处理,而人眨眼需要的时间大约需要 300 毫秒。




相机风格转换工具是两种技术的结合:Caffe2Go 运行环境与风格转换模型。Facebook 的人工智能团队一直在处理算法与大规模系统,他们一直在致力于开发新模型,让风格转换更加快速稳定。于是,现在你拿起手机,开始摄像,梵高的绘画风格变得无处不在了。


Caffe2Go 项目在三个月前开始,目前没有其他公司的产品能够做到这样的效果:让人工智能风格转换变成创作工具。不仅如此,Facebook 做到了更多,他们让这种应用可以在手机中实时处理图像。该项目的研究者跨越产品、技术和研究者。FAIR 团队的 Justin Johnson 是一篇描述该项目技术基础论文(Perceptual Losses for Real-Time Style Transfer and Super-Resolution (https://arxiv.org/abs/1603.08155))的作者,他们在前人的努力基础之上开发了新的技术;应用机器学习团队则通过努力将 AI 引擎塞进手机设备中;相机团队负责满足用户需求;正是因为所有人的努力,这些团队构建了运行在移动设备上的高效神经网络。我们将解释如何思考和开发这一应用技术的,从 Caffe2Go 开始。



Caffe2Go

轻量快速

人工智能对计算机科学产生了深远的影响,但它的应用一直被局限在大型数据中心里,距离普通用户存在很长一段距离。大多数时候,人工智能「实时处理」应用将数据发送到远端数据中心,通过那里的 GPU 来处理,物理距离造成了不可避免的延迟。我们认为使用超级计算机进行实时处理是不实际的,于是我们转换思路,努力让人工智能在移动设备的 CPU 中运行。

5.1_.jpg

没人想拖着一台超级计算机出门

手机可以拍照,通话,也可以实时理解用户所需,不需要连接远端服务器,但它们的性能有限。尽管近年来硬件设备的发展让移动设备的计算能力有了很大改进,手机 CPU 现在已经可以在一秒钟内进行数十亿次运算,但智能软件在设计中还要面对诸如功率,存储器和计算能力的各种资源限制。因此,移动设备环境对机器学习系统提出了机遇和挑战。

面对这些挑战,我们的解决方案是设计超轻量级模块化框架。为此,我们以开源的 Caffe2 项目为基础,遵循 Unix 理念开发了 Caffe2Go。我们确保了用于声明和连接组件的核心架构的轻量化,允许多种组件与其连接——包括对于移动设备的专用优化。我们保留了一个精巧的算法框架,允许工程人员将抽象概念描述成有向无环图(DAG),同时确保没有约束被强加在图中执行节点的输入和输出上。这允许我们的工程团队能够在不同平台上实现和优化模块,同时可以轻松地连接各种模块。当图像实时输入时,通过硬件功能进行自我实例化可以达到最大处理速度。

速度是计算密集型移动应用的关键,特别是对于图像和视频处理而言,框架的轻量级设计允许我们为特定的运算符执行平台进行特定的优化。NNPack 库是其中一个例子,Caffe2 集成在移动运行环境中时,通过使用移动 CPU 中被称为 NEON 的功能,可以显著提高运算速度。在 iOS 设备上,我们也正在着手集成加速功能如 Metal 语言。所有这些都是通过模块化设计完成的,无需改变一般模型定义。因此,算法端和运行环境可以互相依靠,不必担心兼容性的问题。


面向开发者

Caffe2 是我们的第一个产业级深度学习平台,它可以在服务器 CPU、GPU、iOS 和安卓四种平台上运行,使用同一种代码。因为我们的模块化设计,这种架构在不同平台上都使用同一种语言,但对每个平台都有优化。这是一个开发人员不必担心的细节;例如,可以在移动端 NNPack(iOS 和安卓)和服务器 GPU 的 CUDNN 中进行选择。在 Caffe2 中,算法开发者可以专注于算法,无需考虑如何运行卷积。

快速的部署设计也能使开发者受益。从开发者的角度看,调试移动设备的运行时间可能是一项挑战,因为移动端工具链(toolchain)并不如桌面的和服务器的工具链那么先进。我们通过从硬件上抽象神经网络的数学而解决了这个问题——一个 Caffe2go 中的串行化网络(serialized network)在被应用于移动手机和服务器时可以得到相同的数值输出。其结果是,我们可以将大部分工作(模型训练、性能评估、用户体验研究)移动到服务器环境中进行;当结果看起来不错了之后,就可以实现在移动环境中的一键式部署了。


训练风格迁移模型

风格迁移(style transfer)并不是什么新概念。它最早是由研究人员在发表于 2015 年 8 月的一篇题为《A Neural Algorithm for Artistic Style》的论文中引入的。但是,当时这项技术的速度还很慢,而且需要强大的服务器。后面的几个月,研究社区改进了这项技术,将其速度提升了几个数量级,但也还是需要依赖服务器上的大量计算能力。

Caffe2go 成功使人工智能实现了高速处理,并且可以集成到你手上的移动设备中。但该风格迁移模型仍然还需要优化,这样才能在确保实时体验的同时还能保证得到高质量、高分辨率的图像。


优化成有效的模型大小

传统的风格迁移研究得到的模型(甚至只是前馈变量)是很大(在参数的数量方面)很慢的。我们的目标是创造能够运行新的、更小的、更高效的模型的风格迁移应用——能够在 iPhone 6s 或以上的手机上不掉帧地提供 20 FPS 的高质量视频。

为了减小该模型的尺寸,我们应用了 3 种主要的方法:优化了卷积层的数量(这是处理中最耗时间的部分)、优化了每一层的宽度、以及调整了处理过程中的空间分辨率(spatial resolution)。卷积层的数量和宽度是可用于调整处理时间的单独指标——即调整图像有哪些方面需要处理,或调整一个单独的处理过程需要多少时间。对于空间分辨率,我们可以调整中间层中图像实际被处理的大小。通过较早地使用池化(pooling,缩小正被处理的图像的大小),我们可以加速处理时间,因为系统不再需要处理那么多的数据了。我们还发现,使用这些技术,我们可以极大地减少该网络的宽度和深度,同时还能保持合理的质量。


提升质量

图像质量是主观的,非常难以测量——尤其是对于风格迁移这样的东西。因此我们打造了一些可视化工具,其中包括 A/B tests;并训练了不同的模型以确保我们可以得到最高质量的图像结果。我们的大型 GPU 集群由 FBLearner Flow 驱动,让我们可以快速扫描大范围的超参数(比如模型架构、内容/风格权重、和下采样),从而找到满足我们的性能目标同时能保持和提升质量的训练良好的前向风格(feedforward style)。

在提升质量方面还有很多其它的技巧——比如,应用实例规范化(instance normalizatio)而不是常用的批规范化(batch normalization)能有助于多种风格,同样避免卷积层中的零填充(zero padding)可以减少伪像,也可以将不同的预处理或后处理过滤器应用到风格或内容图像上。但在我们的测试中,我们发现这些方法往往在一些风格上效果良好,在另一些风格上则效果不佳。

凭借在这项风格迁移技术上的速度和质量优化,使用 Caffe 2 框架,我们就可以将一种实时图像处理系统应用到移动设备上。


展望下一步

Caffe2go,加上 Torch 这样的研究工具链,是 Facebook 的机器学习产品的核心。因为其在大小、速度和灵活性上的优势,我们正在将 Caffe2go 推广到整个 Facebook 的 stack 中。

我们还在致力于和社区分享我们的软件和设计,从而让我们可以学习更好地利用多种硬件平台和算法设计的特性,这在跨平台机器学习系统中是尤其重要的。在未来的几个月,我们将会部分开源该人工智能框架。

随着我们的进步,你可以想象出设备上实时运行的人工智能可以如何帮助世界更加开放、人们更加互连。我们手中的智能设备将继续颠覆我们对「智能(intelligence)」的认知方式。有了像 Caffe2go 这样精巧的机器学习系统,我们将致力于为人们带来更赞的人工智能和增强现实体验——让你在拍视频的时候,设备里还有一把梵高的画刷。
 
 
 
 
 
 
转载:机器之心
智造家提供
501 浏览

业界 | 企业应用机器学习的主要障碍有哪些?

管理类 机械设计 2016-11-02 16:31 发表了文章 来自相关话题

如今机器学习的应用虽然越来越普遍,但如同其他新兴应用领域一样,一定会有一些障碍。对于企业来说,官僚化的批准流程、隐私保护、部门壁垒、价值周期长是其在部署机器学习时的主要障碍。


即使在分析工作复杂的组织中,机器学习也存在「专业孤立性」问题。例如,银行中的反金融犯罪部门可能使用先进的技术进行反洗钱;而信用风险团队使用完全不同的、不兼容的工具来预测贷款违约,并基于风险设定价位;而财政部门却又使用另一工具预测现金流。同时,消费服务和分行运作根本就不用机器学习,因为缺乏专业知识和软件。这些部门经常不彼此合作,使得难以为成员、流程和技术建立标准。这种软件的拼接集合提高了全公司应用机器学习的总体拥有成本(TCO)。从外,团队的孤立也使得高层难以开始机器学习。

为了支持数字化转型,机器学习必须要做三件事:
 
彻底的转换企业商业流程:市场、销售、财务、人力资源、供应链等等;在全企业支持数据、用户和负载;融合企业技术堆栈;

Carolina Healthcare System、Cisco 和 PayPal 的例子说明了机器学习转换业务流程的潜力。在许多企业中,这种转换仍处于早期阶段。从平台架构的角度来看,机器学习需要与支撑业务流程的软件平台融合,支持不同背景的众多用户,以及支持不同的项目。

扩展到企业级数据意味着许多不同的事。对支持全公司分析的数据仓库的看法迷惑着大部分公司。从实际来看,机器学习软件必须要能与不同的数据平台对接;消化不同格式的数据:有结构的、半结构的和无结构的;它必须能利用「高」(众多记录)和「宽」(许多列)的数据,并且能使用流数据。

最后,机器学习软件必须要与公司优选的技术堆栈融合。这意味着遵守安全协议;在优选的数据平台上的可操作性;符合操作系统的标准;虚拟化技术等等其他技术。



数据科学家的短缺

有一个普遍的认知就是企业缺乏数据科学家。麦肯锡的一份报告指出这种缺乏将会持续到 2018 年;Venture Beat、华尔街日报等多家媒体都曾报道过数据科学家的缺乏;哈佛商业评论表示要么不找要么降低对数据科学家的标准,因为真正的数据科学家都是独角兽。

招聘难的问题不只是简单的供应与需求的问题。麦肯锡几年前的报告预测缺乏理解大数据的管理层,只不过比数据科学家缺失的差额小而已。学位课程和 MOOC 公开课每年产出数千新鲜的数据科学家。公司可以将机器学习项目推送到中国和印度等国家,因为在其他国家中,咨询公司就掌握了大量的有先进水平的分析师团队。

缺乏专业标准和专业证书造成最大的招聘挑战。如今正在为数据科学家建立专业标准,却没有被普遍接受的标准。每个人都可以自称数据科学家。在 O'Reilly Media 发布的 2016 数据科学薪资调查报告中,29% 的调查对象自称数据科学家,但却说他们花费较少或不花费时间做机器学习项目,也不使用标准的机器学习工具。

对数据科学家合适的角色也不确定。在招聘经理找到带有机器学习技术和经验的人后,实际的工作可能完全不同。在许多公司中,带有数据科学家 title 的人的实际角色是信息检索:使用查询工具保证数据平台的数据安全,从而让用户能在 Tableau 或 Excel 上浏览(O'Reilly 的调查显示 SQL 是最流行的工具)。

这样的误解损害了团队的积极性和激励机制。Stack Overflow 最近的一项调查显示创新和「建立有极大意义的东西」是机器学习专业人士的关键动力,要比其他条例更有激励性。因为一个机器学习人员知道如何使用 SQL 就把他放到「data broker」的角色,这是一种人力资源的误用。



价值的体现需要长久时间

根据 Gartner 的调查,负责高级分析的管理层说建立一个预测模型大约花费 52 天。(Gartner 对高级分析的定义包括统计、描述、预测数据挖掘、模拟和优化。)报告时间线从几天到几月各有不同。管理层都把「开发模型的速度」作为选择高级分析平台的顶级标准,仅次于使用方便度。

管理层想知道:为什么建立且部署预测模型需要这么久的时间?其实有许多原因:​
 
数据难以获得数据污染;传统的机器学习工具不能扩展到大数据;管理部门批准部署模型的速度太慢,充满官僚主义;公司对模型部署缺乏明确的流程或技术标准;

大部分数据科学家花费较少的时间训练机器学习模型。在 2014 年,纽约时报报道根据采访和专业评测,数据科学家花费 50-80% 的时间收集并准备数据。今年早些时候,Gil Press 在 Forbes 上发表的文章称 CrowdFlower 的一份数据科学家的报告称调查对象花费 80% 的时间收集、清理和组织数据。

考虑到在企业数据仓库的投资,数据科学家需要花费如此多宝贵的时间来清洁数据是一件很惊人的事。有两个主要原因,首先,企业数据仓库注重对商业智能和性能管理使用案例的支持。这些使用案例是最容易获取的成果;他们有稳定的数据需求和大量的目标用户。然而,机器学习项目却要频繁处理企业数据库不支持的源数据。


第二,数据对机器学习项目的成果非常重要——「垃圾进入/垃圾清除」。有偏见或无效的数据产生有偏见或错误的预测。数据科学家的工作职责是高质量的输出,不能不理会数据问题说是「其他人的问题」。随着社会对算法中偏见的忧虑越来越多,我们期待对数据采集分析过程的可见性会成为普遍采用机器学习的重要因素。这种对责任的需求说明了数据科学家想要掌控数据的流程。

机器学习极其依赖计算基础设施,尤其是大数据。模型开发需要迭代测试和重复测试。2010 年之前,大部分基于机器学习软件的服务器都是单线程的,少有产品支持单机多核并行处理。(例如,SAS/STAT 中有超过 300 个程序,其中只有 22 个支持多线程处理。)

所有的这些顶级数据仓库提供商都在他们的分布式数据集中囊括机器学习引擎。Teradata 在 1989 年就引入了这一能力,IBM 在 1992 年做到这一点,微软 2000 年,Oracle 2003 年,Netezza 在 2006 年加入了机器学习。Greenplum 如今的品牌是 Apache MaDlib。2007 年独立的软件供应商 Fuzzy Logix 在多数据库平台上引入了机器学习库。嵌入 MPP 数据集中的机器学习引擎提供一些潜在的收益,包括减少数据移动,简化部署和一个 MPP 平台的性能。


然而,在实际中,少有数据科学家使用数据库内的机器学习工具。主要有几个原因:第一,减少数据移动意味着一个机器学习项目所需的所有数据就只能是数据库里面的,这很少出现;第二,如果该分析数据集支持消费者喜好的应用我们只能加快部署;MPP 数据仓库中的机器学习库也缺少可用特征,要么强制用户妥协,要么依赖自定义代码。最后,机器学习工作量会分散数据库管理员的注意力,因为它是一些粗笨的、难以预测的工作。许多公司降低数据库内机器学习的部署或者严格的将使用缩减到商业智能的精调上。

虽然关于公司审查模型的时间和通过流程的数据较少,但有证据显示机器学习很重要。负责的管理层要求将影响他们业务的机器学习透明化;没有银行会在不理解模型行为、测试并验证模型的情况下,冒险使用信用风险模型。

在受到监管的产业中,比如银行、保险、医疗中,法律审查是批准流程的一部分。例如在银行中,法律团队会评估信用风险模型从而保证模型没有显性或隐性的歧视效果,当然还有其他的合规问题。

机器学习经验较少的公司可能缺乏模型部署的明确流程。没有明确流程的情况下,每个项目就是一个自定义项目,所以每个 contributor 必须从头开始完成每个人物,缺少最佳实践和标准模块提供的指导。这会花费很长的时间,在一些公司中,不是一个预测模型可能要花费 6 个月或更长的时间。在如今快速前进的商业环境中,这是很长的一段时间。



企业机器学习的挑战

打破机器学习的各种「专业孤立性」是企业机器学习的关键目标。部门之间孤立行事会提高成本,阻碍投资,阻碍数字改革。

技术人员的短缺是管理者们普遍关心的首要问题,因为这阻碍了更广泛的机器学习部署。技术差距部分归因于对于数据科学家,缺少一个专业的标准,机器学习项目 contributor 的角色不清晰。这个技术差距在组织中产生了一个恶循环,因为招聘经理在之前成功案例的情况下可能会无法判断某个人是否胜任机器学习的工作。管理人员的报告中提到,机器学习项目的周期太长是一个关键问题。机器学习项目需要花很长的时间才能产生价值,因为数据中有很多杂乱的东西,而且很难获取;因为传统的机器学习工具无法升级;因为部署模型的批准过程可能很复杂很官僚化;还因为很多组织缺少确定的模型部署程序和标准。
 
 
 
 
 
来源:机器之心微信公众号
智造家提供 查看全部
如今机器学习的应用虽然越来越普遍,但如同其他新兴应用领域一样,一定会有一些障碍。对于企业来说,官僚化的批准流程、隐私保护、部门壁垒、价值周期长是其在部署机器学习时的主要障碍。


即使在分析工作复杂的组织中,机器学习也存在「专业孤立性」问题。例如,银行中的反金融犯罪部门可能使用先进的技术进行反洗钱;而信用风险团队使用完全不同的、不兼容的工具来预测贷款违约,并基于风险设定价位;而财政部门却又使用另一工具预测现金流。同时,消费服务和分行运作根本就不用机器学习,因为缺乏专业知识和软件。这些部门经常不彼此合作,使得难以为成员、流程和技术建立标准。这种软件的拼接集合提高了全公司应用机器学习的总体拥有成本(TCO)。从外,团队的孤立也使得高层难以开始机器学习。

为了支持数字化转型,机器学习必须要做三件事:
 
  • 彻底的转换企业商业流程:市场、销售、财务、人力资源、供应链等等;
  • 在全企业支持数据、用户和负载;
  • 融合企业技术堆栈;


Carolina Healthcare System、Cisco 和 PayPal 的例子说明了机器学习转换业务流程的潜力。在许多企业中,这种转换仍处于早期阶段。从平台架构的角度来看,机器学习需要与支撑业务流程的软件平台融合,支持不同背景的众多用户,以及支持不同的项目。

扩展到企业级数据意味着许多不同的事。对支持全公司分析的数据仓库的看法迷惑着大部分公司。从实际来看,机器学习软件必须要能与不同的数据平台对接;消化不同格式的数据:有结构的、半结构的和无结构的;它必须能利用「高」(众多记录)和「宽」(许多列)的数据,并且能使用流数据。

最后,机器学习软件必须要与公司优选的技术堆栈融合。这意味着遵守安全协议;在优选的数据平台上的可操作性;符合操作系统的标准;虚拟化技术等等其他技术。



数据科学家的短缺

有一个普遍的认知就是企业缺乏数据科学家。麦肯锡的一份报告指出这种缺乏将会持续到 2018 年;Venture Beat、华尔街日报等多家媒体都曾报道过数据科学家的缺乏;哈佛商业评论表示要么不找要么降低对数据科学家的标准,因为真正的数据科学家都是独角兽。

招聘难的问题不只是简单的供应与需求的问题。麦肯锡几年前的报告预测缺乏理解大数据的管理层,只不过比数据科学家缺失的差额小而已。学位课程和 MOOC 公开课每年产出数千新鲜的数据科学家。公司可以将机器学习项目推送到中国和印度等国家,因为在其他国家中,咨询公司就掌握了大量的有先进水平的分析师团队。

缺乏专业标准和专业证书造成最大的招聘挑战。如今正在为数据科学家建立专业标准,却没有被普遍接受的标准。每个人都可以自称数据科学家。在 O'Reilly Media 发布的 2016 数据科学薪资调查报告中,29% 的调查对象自称数据科学家,但却说他们花费较少或不花费时间做机器学习项目,也不使用标准的机器学习工具。

对数据科学家合适的角色也不确定。在招聘经理找到带有机器学习技术和经验的人后,实际的工作可能完全不同。在许多公司中,带有数据科学家 title 的人的实际角色是信息检索:使用查询工具保证数据平台的数据安全,从而让用户能在 Tableau 或 Excel 上浏览(O'Reilly 的调查显示 SQL 是最流行的工具)。

这样的误解损害了团队的积极性和激励机制。Stack Overflow 最近的一项调查显示创新和「建立有极大意义的东西」是机器学习专业人士的关键动力,要比其他条例更有激励性。因为一个机器学习人员知道如何使用 SQL 就把他放到「data broker」的角色,这是一种人力资源的误用。



价值的体现需要长久时间

根据 Gartner 的调查,负责高级分析的管理层说建立一个预测模型大约花费 52 天。(Gartner 对高级分析的定义包括统计、描述、预测数据挖掘、模拟和优化。)报告时间线从几天到几月各有不同。管理层都把「开发模型的速度」作为选择高级分析平台的顶级标准,仅次于使用方便度。

管理层想知道:为什么建立且部署预测模型需要这么久的时间?其实有许多原因:​
 
  • 数据难以获得
  • 数据污染;
  • 传统的机器学习工具不能扩展到大数据;
  • 管理部门批准部署模型的速度太慢,充满官僚主义;
  • 公司对模型部署缺乏明确的流程或技术标准;


大部分数据科学家花费较少的时间训练机器学习模型。在 2014 年,纽约时报报道根据采访和专业评测,数据科学家花费 50-80% 的时间收集并准备数据。今年早些时候,Gil Press 在 Forbes 上发表的文章称 CrowdFlower 的一份数据科学家的报告称调查对象花费 80% 的时间收集、清理和组织数据。

考虑到在企业数据仓库的投资,数据科学家需要花费如此多宝贵的时间来清洁数据是一件很惊人的事。有两个主要原因,首先,企业数据仓库注重对商业智能和性能管理使用案例的支持。这些使用案例是最容易获取的成果;他们有稳定的数据需求和大量的目标用户。然而,机器学习项目却要频繁处理企业数据库不支持的源数据。


第二,数据对机器学习项目的成果非常重要——「垃圾进入/垃圾清除」。有偏见或无效的数据产生有偏见或错误的预测。数据科学家的工作职责是高质量的输出,不能不理会数据问题说是「其他人的问题」。随着社会对算法中偏见的忧虑越来越多,我们期待对数据采集分析过程的可见性会成为普遍采用机器学习的重要因素。这种对责任的需求说明了数据科学家想要掌控数据的流程。

机器学习极其依赖计算基础设施,尤其是大数据。模型开发需要迭代测试和重复测试。2010 年之前,大部分基于机器学习软件的服务器都是单线程的,少有产品支持单机多核并行处理。(例如,SAS/STAT 中有超过 300 个程序,其中只有 22 个支持多线程处理。)

所有的这些顶级数据仓库提供商都在他们的分布式数据集中囊括机器学习引擎。Teradata 在 1989 年就引入了这一能力,IBM 在 1992 年做到这一点,微软 2000 年,Oracle 2003 年,Netezza 在 2006 年加入了机器学习。Greenplum 如今的品牌是 Apache MaDlib。2007 年独立的软件供应商 Fuzzy Logix 在多数据库平台上引入了机器学习库。嵌入 MPP 数据集中的机器学习引擎提供一些潜在的收益,包括减少数据移动,简化部署和一个 MPP 平台的性能。


然而,在实际中,少有数据科学家使用数据库内的机器学习工具。主要有几个原因:第一,减少数据移动意味着一个机器学习项目所需的所有数据就只能是数据库里面的,这很少出现;第二,如果该分析数据集支持消费者喜好的应用我们只能加快部署;MPP 数据仓库中的机器学习库也缺少可用特征,要么强制用户妥协,要么依赖自定义代码。最后,机器学习工作量会分散数据库管理员的注意力,因为它是一些粗笨的、难以预测的工作。许多公司降低数据库内机器学习的部署或者严格的将使用缩减到商业智能的精调上。

虽然关于公司审查模型的时间和通过流程的数据较少,但有证据显示机器学习很重要。负责的管理层要求将影响他们业务的机器学习透明化;没有银行会在不理解模型行为、测试并验证模型的情况下,冒险使用信用风险模型。

在受到监管的产业中,比如银行、保险、医疗中,法律审查是批准流程的一部分。例如在银行中,法律团队会评估信用风险模型从而保证模型没有显性或隐性的歧视效果,当然还有其他的合规问题。

机器学习经验较少的公司可能缺乏模型部署的明确流程。没有明确流程的情况下,每个项目就是一个自定义项目,所以每个 contributor 必须从头开始完成每个人物,缺少最佳实践和标准模块提供的指导。这会花费很长的时间,在一些公司中,不是一个预测模型可能要花费 6 个月或更长的时间。在如今快速前进的商业环境中,这是很长的一段时间。



企业机器学习的挑战

打破机器学习的各种「专业孤立性」是企业机器学习的关键目标。部门之间孤立行事会提高成本,阻碍投资,阻碍数字改革。

技术人员的短缺是管理者们普遍关心的首要问题,因为这阻碍了更广泛的机器学习部署。技术差距部分归因于对于数据科学家,缺少一个专业的标准,机器学习项目 contributor 的角色不清晰。这个技术差距在组织中产生了一个恶循环,因为招聘经理在之前成功案例的情况下可能会无法判断某个人是否胜任机器学习的工作。管理人员的报告中提到,机器学习项目的周期太长是一个关键问题。机器学习项目需要花很长的时间才能产生价值,因为数据中有很多杂乱的东西,而且很难获取;因为传统的机器学习工具无法升级;因为部署模型的批准过程可能很复杂很官僚化;还因为很多组织缺少确定的模型部署程序和标准。
 
 
 
 
 
来源:机器之心微信公众号
智造家提供
722 浏览

由深度神经网络想到的人生意义和哲理

机械自动化类 扳手哥 2016-10-24 14:59 发表了文章 来自相关话题

 ◆ ◆ ◆

导读

几周前,我经历工作项目的调动,恰好给了我空余时间重拾那些很久没有碰过的感兴趣的话题。机器学习是我兴趣列表中的第一项。这是一个已经广泛渗入科技领域的话题,但我对其一无所知。仅几周的泛读,已经让我相信我们正加速朝向一个通用人工智能的时代。随着物联网(IOT)设备的快速普及产生了极大量数据,在这方面深度挖掘的进步将会保证这一未来越来越近。

但是基于这篇文章的论述范围,我将把话题限制在讨论以下假设:围绕在我们周围的所有事情构成一张深度神经网络,以及这一观点带来的形而上学的意义。



◆ ◆ ◆

迁移学习

作为一个机器学习(ML)新手,我第一次接触到机器学习的经历是相当不可思议的。谷歌的新机器学习库(称为TensorFlow)让我有机会搭建一个深度神经网络(DNN)模型,它能在几个小时内通过从谷歌及我的MacBook Pro中抓取的图片来标记房子中不同房间的图像。我为这个全新的神奇力量感到惊喜,当夜兴奋到无法入睡。多读了一些这方面的资料后,我最初的兴奋渐渐平息下来,而一个关键词“迁移学习”这个有趣的概念留在了我的脑海里。如谷歌所说的那样——


“迁移学习是指利用在解决另一个问题时搭建的模型的技术。我们将会保留对已有模型的某些层,从而让优化后的新模型可以完全解决当下的新问题。从头搭建深度学习可能需要数天,但迁移学习可以在比较短的时间内实现。”


“深度学习”其名来源于深层神经网络(DNNs)这个算法和应用的学习。之所以“深”,是因为神经网络有很多层。每层神经网络(或一组神经网络)创建的输出,可以作为下一层的搭建基础。因此,在我上述列举的情形中,谷歌预先设置的图像模型已经搭建了可以识别如边界、角等图像元素的低级层次,以及可以识别形状的中级层次。我通过多次迭代训练而得到一个创造最高价值的输出层,因为只有它能最终识别和标记给定的图片。




◆ ◆ ◆

我们的大脑好比深度神经网络






以上有趣事情发生的几天后,我看了Ray Kurzweil在“加速的未来 (The Acceleration Future)”中很棒的演讲,演讲中他提到,人类大脑就像深度神经网络(DNN)模型的识别者,并且我们大脑的某些部分与蜥蜴的大脑是完全一样的。


结合“迁移学习”的概念,所提出的深度神经网络(DNN)的概念作为一个重要的架构,可以解释物种内一代一代的迁移学习,以及物种间的迁移学习。(我知道神经网络的架构显然是由研究大脑本身而启发得出的,但是这里的关键概念是“深度”)。


因此我们的大脑是一个(或一系列)深度神经网络,这个网络基于我们进化而来的前一个物种的学习模式搭建而成。我们应该记住,这种学习模式从基因上来看是从我们的祖父和其他祖先那转移过来的。除了关于对世界的了解和生存秘诀,这些模式可能也包含了我们在超过几百万年的试验中不断调整而形成的是非观(道德层面)。


甚至,在一个人的一生中,学习看上去也是一个深度学习网络的创造过程。在学习阶段,我们的大脑努力运作,创造可以持续输出预期结果(如:弹好吉他)的正确模式(通过引发不同种类的神经模式)。一旦深度学习网络模式被创建,在实际生活场景下运用训练过的模型(如:用吉他上弹奏新的歌曲)将是更快的。这也能解释为什么学习过程本身是很难的,但一旦习得,技能很容易被运用出来。


于是,我们可以将经历看做我们众多的神经网络在深度上的发展。


创造力也有可能是“迁移学习”的结果。一种极大的可能性是,创意工作者们利用在其他领域训练过的基础模型,同时保持他们的“深度神经网络”的最顶层。从另一方面来说,某一特别领域的专家已经将他们的深度神经网络(DNN)训练得更加深入,就为了在极端的细节上处理一个特殊问题。




◆ ◆ ◆

什么让深度神经网络变得特别

我认为深度神经网络的一个重要特征是他们同时具有机器处理能力和数据存储能力。因此当能量流通过他们时,他们是活的机器,指引能量去创造动态的模式,从而为了达到预期的结果而不断优化。不仅如此,当能量停止流动时,他们变成静态的模式,我们称之为模型(深度神经网络模型)。

那么,我们也是深度神经网络(DNN)吗?

有一个有趣的概念是这样的,把种子(可以是植物的种子,或者动物的“种子”等)看做深度神经网络(DNN)模型。那么本质上,种子就是在代际之间传递训练过的模型(学习和存储了的DNN模式),其中每一代都尝试着在上一代模型的基础上,通过提供更多的训练和优化,从而使自身在所处的环境中繁荣兴旺,进而改善模型。

想得更远一步——如果种子是模型,那么我们或许就成了机器。




◆ ◆ ◆

模型(种子) + 最佳的环境 + 能量 = 一个基于深度神经网络(DNN)的机器

这样看来,从种子成长起来的植物就是训练模型的具体表现。这种物理的表现本质上是一个DNN深度学习机器,它进行新的试验,为了改进那个创造了自身的潜在模型而向当前环境学习。而后,如果机器发现了某些能够帮助下一代更好地适应环境的新信息,那么就会给神经网络增加新的层。


如果由此更深入探索,就有可能认为,围绕在我们身边的一切事物其实都是建立在空间和时间上的一个深度神经模型。实际上,整个宇宙有可能就是一个巨大的DNN机器。这些DNN机器虽然理论上是建立在彼此的基础上的(一层层地),但实际上可能也是从属于彼此的。我们是DNN里的DNN里的DNN。这个理论唯一的问题在于我们还不能明确宇宙这个巨大的DNN机器最终优化的目标是什么。因为如果可以找到这个目标,或许我们就可以借此对宇宙万物存在的目的有一个更清晰的理解。




◆ ◆ ◆

生命存在的意义

如果我们正是存在于其他DNN机器内部的DNN机器(就好比地球),那么我们存在的意义是什么?我觉得我们生命的意义可能不会跟我们大脑里的电信号的意义有什么太大的差异。这个目的就是流动,无论这个流动的方向是否会成为最后胜利的神经网络模式(或者说模型)的一部分。我们的目标也不会跟水流中的水珠有太大的差异。我们作为个体是没什么所谓的。有所谓的是我们所有人作为一个集体,在宇宙深度神经网络的这一个层面上所自然而然发生的行为(神经模式)。物种、社会结构、文化、宗教、国家、语言,像荒芜的沙漠和丰饶的雨林这样的环境,本质上都是一种自我优化的试验性动态模式,而且它们一起服务于一个自然发生的、超大的、全宇宙的、为了“某个目的”自我优化模式。我仍然不明确这“某个目的”究竟是什么。但是如果缺少了这个我们依存的巨大机器,我们每个个体的存在将是无意义的。




◆ ◆ ◆

展望

这是关于这个思路的第一份初稿,虽然距离清晰明确的答案还有很长的一段距离,但是现在有这样几个原理是跟这个紧密内嵌在这个思路当中的:


1.深度神经网络为解释我们存在的机制提供了一种可理解的框架

2.我们身边的所有事物(包括我们自己)是一种自身的试验或者是另一个试验的一部分。这种试验会持续直到找到所需优化问题的一个最优解。一旦试验成功,这个模型就被存储起来,等待下一代在此基础上进一步提升。

3.深度神经网络需要不断的试验和报错耗费大量的时间和精力来获得最优解。模型的使用本身是一个更高效的过程,因为数据只需要通过一个确定的路径即可,即使这个路径在结构上非常复杂,但因为这只是一条路径,所以可快速通过。

4.事物的错综复杂性来源于各个模型总是建立在彼此的基础上,而后形成其他模型的基础这一事实。复杂模型是更简单模型的分层集合。

5.行为是自然发生的。单个神经元/单位致力于某些后天取得的,来源于它们的内在模型的规则,但是不会意识到它们是在为一个怎样的总体目标做出贡献。


有了上述的这几个概念,我接下来将计划将这个模型应用到一些形而上学的概念上去,例如:因缘、生与死、道德等等,看看能否发现有一些有趣的事情。
 
 
 
 
 
转自:大数据文摘|bigdatadigest
智造家提供 查看全部
2.1_.jpg

 ◆ ◆ ◆

导读

几周前,我经历工作项目的调动,恰好给了我空余时间重拾那些很久没有碰过的感兴趣的话题。机器学习是我兴趣列表中的第一项。这是一个已经广泛渗入科技领域的话题,但我对其一无所知。仅几周的泛读,已经让我相信我们正加速朝向一个通用人工智能的时代。随着物联网(IOT)设备的快速普及产生了极大量数据,在这方面深度挖掘的进步将会保证这一未来越来越近。

但是基于这篇文章的论述范围,我将把话题限制在讨论以下假设:围绕在我们周围的所有事情构成一张深度神经网络,以及这一观点带来的形而上学的意义。



◆ ◆ ◆

迁移学习

作为一个机器学习(ML)新手,我第一次接触到机器学习的经历是相当不可思议的。谷歌的新机器学习库(称为TensorFlow)让我有机会搭建一个深度神经网络(DNN)模型,它能在几个小时内通过从谷歌及我的MacBook Pro中抓取的图片来标记房子中不同房间的图像。我为这个全新的神奇力量感到惊喜,当夜兴奋到无法入睡。多读了一些这方面的资料后,我最初的兴奋渐渐平息下来,而一个关键词“迁移学习”这个有趣的概念留在了我的脑海里。如谷歌所说的那样——


“迁移学习是指利用在解决另一个问题时搭建的模型的技术。我们将会保留对已有模型的某些层,从而让优化后的新模型可以完全解决当下的新问题。从头搭建深度学习可能需要数天,但迁移学习可以在比较短的时间内实现。”


“深度学习”其名来源于深层神经网络(DNNs)这个算法和应用的学习。之所以“深”,是因为神经网络有很多层。每层神经网络(或一组神经网络)创建的输出,可以作为下一层的搭建基础。因此,在我上述列举的情形中,谷歌预先设置的图像模型已经搭建了可以识别如边界、角等图像元素的低级层次,以及可以识别形状的中级层次。我通过多次迭代训练而得到一个创造最高价值的输出层,因为只有它能最终识别和标记给定的图片。




◆ ◆ ◆

我们的大脑好比深度神经网络

2.2_.jpg


以上有趣事情发生的几天后,我看了Ray Kurzweil在“加速的未来 (The Acceleration Future)”中很棒的演讲,演讲中他提到,人类大脑就像深度神经网络(DNN)模型的识别者,并且我们大脑的某些部分与蜥蜴的大脑是完全一样的。


结合“迁移学习”的概念,所提出的深度神经网络(DNN)的概念作为一个重要的架构,可以解释物种内一代一代的迁移学习,以及物种间的迁移学习。(我知道神经网络的架构显然是由研究大脑本身而启发得出的,但是这里的关键概念是“深度”)。


因此我们的大脑是一个(或一系列)深度神经网络,这个网络基于我们进化而来的前一个物种的学习模式搭建而成。我们应该记住,这种学习模式从基因上来看是从我们的祖父和其他祖先那转移过来的。除了关于对世界的了解和生存秘诀,这些模式可能也包含了我们在超过几百万年的试验中不断调整而形成的是非观(道德层面)。


甚至,在一个人的一生中,学习看上去也是一个深度学习网络的创造过程。在学习阶段,我们的大脑努力运作,创造可以持续输出预期结果(如:弹好吉他)的正确模式(通过引发不同种类的神经模式)。一旦深度学习网络模式被创建,在实际生活场景下运用训练过的模型(如:用吉他上弹奏新的歌曲)将是更快的。这也能解释为什么学习过程本身是很难的,但一旦习得,技能很容易被运用出来。


于是,我们可以将经历看做我们众多的神经网络在深度上的发展。


创造力也有可能是“迁移学习”的结果。一种极大的可能性是,创意工作者们利用在其他领域训练过的基础模型,同时保持他们的“深度神经网络”的最顶层。从另一方面来说,某一特别领域的专家已经将他们的深度神经网络(DNN)训练得更加深入,就为了在极端的细节上处理一个特殊问题。




◆ ◆ ◆

什么让深度神经网络变得特别

我认为深度神经网络的一个重要特征是他们同时具有机器处理能力和数据存储能力。因此当能量流通过他们时,他们是活的机器,指引能量去创造动态的模式,从而为了达到预期的结果而不断优化。不仅如此,当能量停止流动时,他们变成静态的模式,我们称之为模型(深度神经网络模型)。

那么,我们也是深度神经网络(DNN)吗?

有一个有趣的概念是这样的,把种子(可以是植物的种子,或者动物的“种子”等)看做深度神经网络(DNN)模型。那么本质上,种子就是在代际之间传递训练过的模型(学习和存储了的DNN模式),其中每一代都尝试着在上一代模型的基础上,通过提供更多的训练和优化,从而使自身在所处的环境中繁荣兴旺,进而改善模型。

想得更远一步——如果种子是模型,那么我们或许就成了机器。




◆ ◆ ◆

模型(种子) + 最佳的环境 + 能量 = 一个基于深度神经网络(DNN)的机器

这样看来,从种子成长起来的植物就是训练模型的具体表现。这种物理的表现本质上是一个DNN深度学习机器,它进行新的试验,为了改进那个创造了自身的潜在模型而向当前环境学习。而后,如果机器发现了某些能够帮助下一代更好地适应环境的新信息,那么就会给神经网络增加新的层。


如果由此更深入探索,就有可能认为,围绕在我们身边的一切事物其实都是建立在空间和时间上的一个深度神经模型。实际上,整个宇宙有可能就是一个巨大的DNN机器。这些DNN机器虽然理论上是建立在彼此的基础上的(一层层地),但实际上可能也是从属于彼此的。我们是DNN里的DNN里的DNN。这个理论唯一的问题在于我们还不能明确宇宙这个巨大的DNN机器最终优化的目标是什么。因为如果可以找到这个目标,或许我们就可以借此对宇宙万物存在的目的有一个更清晰的理解。




◆ ◆ ◆

生命存在的意义

如果我们正是存在于其他DNN机器内部的DNN机器(就好比地球),那么我们存在的意义是什么?我觉得我们生命的意义可能不会跟我们大脑里的电信号的意义有什么太大的差异。这个目的就是流动,无论这个流动的方向是否会成为最后胜利的神经网络模式(或者说模型)的一部分。我们的目标也不会跟水流中的水珠有太大的差异。我们作为个体是没什么所谓的。有所谓的是我们所有人作为一个集体,在宇宙深度神经网络的这一个层面上所自然而然发生的行为(神经模式)。物种、社会结构、文化、宗教、国家、语言,像荒芜的沙漠和丰饶的雨林这样的环境,本质上都是一种自我优化的试验性动态模式,而且它们一起服务于一个自然发生的、超大的、全宇宙的、为了“某个目的”自我优化模式。我仍然不明确这“某个目的”究竟是什么。但是如果缺少了这个我们依存的巨大机器,我们每个个体的存在将是无意义的。




◆ ◆ ◆

展望

这是关于这个思路的第一份初稿,虽然距离清晰明确的答案还有很长的一段距离,但是现在有这样几个原理是跟这个紧密内嵌在这个思路当中的:


1.深度神经网络为解释我们存在的机制提供了一种可理解的框架

2.我们身边的所有事物(包括我们自己)是一种自身的试验或者是另一个试验的一部分。这种试验会持续直到找到所需优化问题的一个最优解。一旦试验成功,这个模型就被存储起来,等待下一代在此基础上进一步提升。

3.深度神经网络需要不断的试验和报错耗费大量的时间和精力来获得最优解。模型的使用本身是一个更高效的过程,因为数据只需要通过一个确定的路径即可,即使这个路径在结构上非常复杂,但因为这只是一条路径,所以可快速通过。

4.事物的错综复杂性来源于各个模型总是建立在彼此的基础上,而后形成其他模型的基础这一事实。复杂模型是更简单模型的分层集合。

5.行为是自然发生的。单个神经元/单位致力于某些后天取得的,来源于它们的内在模型的规则,但是不会意识到它们是在为一个怎样的总体目标做出贡献。


有了上述的这几个概念,我接下来将计划将这个模型应用到一些形而上学的概念上去,例如:因缘、生与死、道德等等,看看能否发现有一些有趣的事情。
 
 
 
 
 
转自:大数据文摘|bigdatadigest
智造家提供
2 回答

哪些是不平衡数据的最佳机器学习技术?

IT软件类 金榜题名 2017-04-21 17:14 回复了问题 • 3 人关注 来自相关话题

420 浏览

机器学习如何解决无线网络问题?

材料类 夜入西风 2017-04-24 13:58 发表了文章 来自相关话题

无线网络对每天的工作是至关重要的。企业运行中,快速、可靠、稳定的无线覆盖灰常重要,企业中的许多日常业务都要依赖于它。然而,很多时候,IT团队在个人经验方面都十分欠缺。谷歌的一位无线技术专家,Ajay Malik,发表了自己的观点。他觉得这主要来自于两个挑战:
1. 数据收集。我们想知道每个用户在每个特定时间的状态,但随着网络条件和用户位置的变化,这些状态也会不断变化。随着成千上万的设备被追踪,需要收集的信息的量就大大增加了。这些数据量无法接入点或在具有固定内存和CPU的设备上运行。
2. 数据分析。整理时间日志和数据转储需要大量的时间和精力,才能获得有意义的见解,而且需要有效的Wi-Fi智能。
Ajay相信,很快会有一天,大数据和机器学习将解决上述两个挑战。它会允许我们问我们的网络是什么感觉,然后它会告诉我们哪里出了问题,并提供详细的解决方案(或自动修复问题)。虽然这似乎是一个未来的愿景,但是通过大型数据工具和机器学习技术(比如无人值守训练算法),已经实现了基础。
使用这些技术,我们现在可以不断更新测量和实施无线用户体验的模型。比如,我们可以高精确度地实时确保特定的互联网速度。这使得IT人员了解到无线用户之前饱受速度慢、不稳定的网络环境时的痛苦了。
一旦检测到用户问题,机器学习分类算法可以隔离问题的根本原因。比如,由于干扰,容量或LAN/WAN问题导致的问题。隔离问题后,机器学习就可以自动重新配置资源来调节问题。这样可以最大限度地缩短IT团队在故障排除中花费的时间和精力,同时提供最佳的无线体验。
Ajay表示自己以前写过一篇关于人造智能将彻底改变Wi-Fi的文章。他希望能够通过扫描大量数据来释放IT团队,从而获取有意义的信息。但它就像在大海捞针,机器学习是自动执行数据包捕获、时间关联和根本原因分析等常规操作任务的关键。此外,它可以提供预测性的建议,让我们的无线网络摆脱麻烦。
这个愿景的关键还在于云元素带来的弹性尺度和可编程性。云是唯一适合处理Wi-Fi的媒体,比如大数据问题。它具有存储大量数据的能力,具有分布式架构,以及能够极快地分析这些数据。
Wi-Fi不是新鲜事物了。现在,Wi-Fi比以往任何时候都要更先进。我们处于无线网络需要像服务一样管理的时代,具有其他关键业务平台的所有灵活性、可靠性。通过机器学习、大数据和云计算,我们期望的正在快速成为现实。 查看全部
无线网络对每天的工作是至关重要的。企业运行中,快速、可靠、稳定的无线覆盖灰常重要,企业中的许多日常业务都要依赖于它。然而,很多时候,IT团队在个人经验方面都十分欠缺。谷歌的一位无线技术专家,Ajay Malik,发表了自己的观点。他觉得这主要来自于两个挑战:
1. 数据收集。我们想知道每个用户在每个特定时间的状态,但随着网络条件和用户位置的变化,这些状态也会不断变化。随着成千上万的设备被追踪,需要收集的信息的量就大大增加了。这些数据量无法接入点或在具有固定内存和CPU的设备上运行。
2. 数据分析。整理时间日志和数据转储需要大量的时间和精力,才能获得有意义的见解,而且需要有效的Wi-Fi智能。
Ajay相信,很快会有一天,大数据和机器学习将解决上述两个挑战。它会允许我们问我们的网络是什么感觉,然后它会告诉我们哪里出了问题,并提供详细的解决方案(或自动修复问题)。虽然这似乎是一个未来的愿景,但是通过大型数据工具和机器学习技术(比如无人值守训练算法),已经实现了基础。
使用这些技术,我们现在可以不断更新测量和实施无线用户体验的模型。比如,我们可以高精确度地实时确保特定的互联网速度。这使得IT人员了解到无线用户之前饱受速度慢、不稳定的网络环境时的痛苦了。
一旦检测到用户问题,机器学习分类算法可以隔离问题的根本原因。比如,由于干扰,容量或LAN/WAN问题导致的问题。隔离问题后,机器学习就可以自动重新配置资源来调节问题。这样可以最大限度地缩短IT团队在故障排除中花费的时间和精力,同时提供最佳的无线体验。
Ajay表示自己以前写过一篇关于人造智能将彻底改变Wi-Fi的文章。他希望能够通过扫描大量数据来释放IT团队,从而获取有意义的信息。但它就像在大海捞针,机器学习是自动执行数据包捕获、时间关联和根本原因分析等常规操作任务的关键。此外,它可以提供预测性的建议,让我们的无线网络摆脱麻烦。
这个愿景的关键还在于云元素带来的弹性尺度和可编程性。云是唯一适合处理Wi-Fi的媒体,比如大数据问题。它具有存储大量数据的能力,具有分布式架构,以及能够极快地分析这些数据。
Wi-Fi不是新鲜事物了。现在,Wi-Fi比以往任何时候都要更先进。我们处于无线网络需要像服务一样管理的时代,具有其他关键业务平台的所有灵活性、可靠性。通过机器学习、大数据和云计算,我们期望的正在快速成为现实。
377 浏览

必啃的101本机器学习经典书籍

IT软件类 dasBlauer 2017-01-11 11:31 发表了文章 来自相关话题

另外很多优秀书籍不详细介绍:

入门:
Pattern Recognition And Machine Learning
Christopher M. Bishop
Machine Learning : A Probabilistic Perspective
Kevin P. Murphy
The Elements of Statistical Learning : Data Mining, Inference, and Prediction
Trevor Hastie, Robert Tibshirani, Jerome Friedman
Information Theory, Inference and Learning Algorithms
David J. C. MacKay
All of Statistics : A Concise Course in Statistical Inference
Larry Wasserman
优化:
Convex Optimization
Stephen Boyd, Lieven Vandenberghe
Numerical Optimization
Jorge Nocedal, Stephen Wright
Optimization for Machine Learning
Suvrit Sra, Sebastian Nowozin, Stephen J. Wright
核方法:
Kernel Methods for Pattern Analysis
John Shawe-Taylor, Nello Cristianini
Learning with Kernels : Support Vector Machines, Regularization, Optimizatio 
n, and Beyond
Bernhard Schlkopf, Alexander J. Smola
半监督:
Semi-Supervised Learning
Olivier Chapelle
高斯过程:
Gaussian Processes for Machine Learning (Adaptive Computation and Machine Le 
arning)
Carl Edward Rasmussen, Christopher K. I. Williams
概率图模型:
Graphical Models, Exponential Families, and Variational Inference
Martin J Wainwright, Michael I Jordan
Boosting:
Boosting : Foundations and Algorithms
Schapire, Robert E.; Freund, Yoav
贝叶斯:
Statistical Decision Theory and Bayesian Analysis
James O. Berger
The Bayesian Choice : From Decision-Theoretic Foundations to Computational I 
mplementation
Christian P. Robert
Bayesian Nonparametrics
Nils Lid Hjort, Chris Holmes, Peter Müller, Stephen G. Walker
Principles of Uncertainty
Joseph B. Kadane
Decision Theory : Principles and Approaches
Giovanni Parmigiani, Lurdes Inoue
蒙特卡洛:
Monte Carlo Strategies in Scientific Computing
Jun S. Liu
Monte Carlo Statistical Methods
Christian P.Robert, George Casella
信息几何:
Methods of Information Geometry
Shun-Ichi Amari, Hiroshi Nagaoka
Algebraic Geometry and Statistical Learning Theory
Watanabe, Sumio
Differential Geometry and Statistics
M.K. Murray, J.W. Rice
渐进收敛:
Asymptotic Statistics
A. W. van der Vaart
Empirical Processes in M-estimation
Geer, Sara A. van de
不推荐:
Statistical Learning Theory
Vladimir N. Vapnik
Bayesian Data Analysis, Second Edition
Andrew Gelman, John B. Carlin, Hal S. Stern, Donald B. Rubin
Probabilistic Graphical Models : Principles and Techniques
Daphne Koller, Nir Friedman
除了以上推荐的书以外,出版在Foundations and Trends in Machine Learning上面的survey文章也都值得一看。 查看全部
另外很多优秀书籍不详细介绍:

入门:
Pattern Recognition And Machine Learning
Christopher M. Bishop
Machine Learning : A Probabilistic Perspective
Kevin P. Murphy
The Elements of Statistical Learning : Data Mining, Inference, and Prediction
Trevor Hastie, Robert Tibshirani, Jerome Friedman
Information Theory, Inference and Learning Algorithms
David J. C. MacKay
All of Statistics : A Concise Course in Statistical Inference
Larry Wasserman
优化:
Convex Optimization
Stephen Boyd, Lieven Vandenberghe
Numerical Optimization
Jorge Nocedal, Stephen Wright
Optimization for Machine Learning
Suvrit Sra, Sebastian Nowozin, Stephen J. Wright
核方法:
Kernel Methods for Pattern Analysis
John Shawe-Taylor, Nello Cristianini
Learning with Kernels : Support Vector Machines, Regularization, Optimizatio 
n, and Beyond
Bernhard Schlkopf, Alexander J. Smola
半监督:
Semi-Supervised Learning
Olivier Chapelle
高斯过程:
Gaussian Processes for Machine Learning (Adaptive Computation and Machine Le 
arning)
Carl Edward Rasmussen, Christopher K. I. Williams
概率图模型:
Graphical Models, Exponential Families, and Variational Inference
Martin J Wainwright, Michael I Jordan
Boosting:
Boosting : Foundations and Algorithms
Schapire, Robert E.; Freund, Yoav
贝叶斯:
Statistical Decision Theory and Bayesian Analysis
James O. Berger
The Bayesian Choice : From Decision-Theoretic Foundations to Computational I 
mplementation
Christian P. Robert
Bayesian Nonparametrics
Nils Lid Hjort, Chris Holmes, Peter Müller, Stephen G. Walker
Principles of Uncertainty
Joseph B. Kadane
Decision Theory : Principles and Approaches
Giovanni Parmigiani, Lurdes Inoue
蒙特卡洛:
Monte Carlo Strategies in Scientific Computing
Jun S. Liu
Monte Carlo Statistical Methods
Christian P.Robert, George Casella
信息几何:
Methods of Information Geometry
Shun-Ichi Amari, Hiroshi Nagaoka
Algebraic Geometry and Statistical Learning Theory
Watanabe, Sumio
Differential Geometry and Statistics
M.K. Murray, J.W. Rice
渐进收敛:
Asymptotic Statistics
A. W. van der Vaart
Empirical Processes in M-estimation
Geer, Sara A. van de
不推荐:
Statistical Learning Theory
Vladimir N. Vapnik
Bayesian Data Analysis, Second Edition
Andrew Gelman, John B. Carlin, Hal S. Stern, Donald B. Rubin
Probabilistic Graphical Models : Principles and Techniques
Daphne Koller, Nir Friedman
除了以上推荐的书以外,出版在Foundations and Trends in Machine Learning上面的survey文章也都值得一看。
761 浏览

纽约时报:了不起的AI觉醒

机械自动化类 料盘挡板 2016-12-26 16:59 发表了文章 来自相关话题

谷歌如何使用人工智能来改变谷歌翻译这项颇受欢迎的服务,以及机器学习如何重塑计算。






序言:你所读到的就是你自己


在十一月初的某个周五晚上,Jun Rekimoto(东京大学人机交互领域的杰出的教授)正准备在线演讲,他突然注意到社交媒体滚动条上有一些特别的内容。这些内容是关于谷歌翻译的,这项流行的机器翻译服务最近突然有了大幅改善。


Rekimoto开始研究谷歌翻译并用它做了一些测试,测试结果令他非常震惊。虽然已经夜深,但谷歌翻译取得的进展依然让Rekimoto久久无法入睡。


Rekimoto在一篇博客中写了他的初步发现。首先,他用谷歌翻译翻译了《了不起的盖茨比》中的一些句子,并与1957年Takashi Nozaki译版和最新的Haruki Murakami的译版进行对比。Rekimoto后来通过电子邮件向我解释,Murakami的版本语言非常细腻,具有独特的“Murakami风格”。相比之下,谷歌的翻译虽然有些不自然,但是对他来说“更透明”。


Rekimoto博客的后半部分从日译英的方向测试了谷歌翻译。他先是自己用日语翻译了海明威的《乞力马扎罗的雪》的开头部分,然后把这段话通过谷歌翻译转译成英语。他列出了此版本与海明威的原版,并让读者猜测哪个版本是机器完成的。


NO. 1:

Kilimanjaro is a snow-covered mountain 19,710 feet high, and is said to be the highest mountain in Africa. Its western summit is called the Masai “Ngaje Ngai,” the House of God. Close to the western summit there is the dried and frozen carcass of a leopard. No one has explained what the leopard was seeking at that altitude.


NO. 2:

Kilimanjaro is a mountain of 19,710 feet covered with snow and is said to be the highest mountain in Africa. The summit of the west is called “Ngaje Ngai” in Masai, the house of God. Near the top of the west there is a dry and frozen dead body of leopard. No one has ever explained what leopard wanted at that altitude.


即使是以英语为母语的人,也很难分辨出第二段是由机器完成的。这两段翻译是如此的相近,Rekimoto甚至觉得这很神奇。因为Rekimoto非常熟悉谷歌翻译之前的能力,甚至在24小时前,谷歌只能翻译成下面这段话:


Kilimanjaro is 19,710 feet of the mountain covered with snow, and it is said that the highest mountain in Africa. Top of the west, “Ngaje Ngai” in the Maasai language, has been referred to as the house of God. The top close to the west, there is a dry, frozen carcass of a leopard.Whether the leopard had what the demand at that altitude, there is no that nobody explained.


Rekimoto在Twitter上向他的十万个粉丝公布了他的发现,在接下来的几个小时里,成千上万的人发出他们使用机器翻译的结果。有些是比较成功的,但也有些是非常滑稽的。


在东京破晓之时,谷歌翻译登上了日本Twitter热度榜的第一位,甚至连人气动漫和人气偶像少女的被挤了下去。每个人都很惊奇:谷歌翻译为何能如此让人刮目相看?


四天之后,来自世界各地的上百名记者、企业家和广告客户齐聚于谷歌的伦敦办公室中,观看谷歌的特别发布会。客人们的甜点是印有翻译标志的幸运饼干,每个人的面前还放有一张纸条,一面写着不同国家的短语,另一面邀请客人们下载谷歌翻译的软件。桌子上还摆放了甜甜圈和冰沙盘,旁边的标语牌标注了各种国家的风味。过了一会,所有人来到了一个豪华的黑暗剧场中。





上图:Sundar Pichai,谷歌的首席执行官,在他加利福尼亚州山景城的办公室外。


伦敦市长Sadiq Khan首先上台演讲。演讲的开始,市长提到他有个朋友觉得市长就像谷歌一样。于是市长问朋友:“为什么?因为我什么都懂?”朋友否认道:“不是的,是因为你就像谷歌一样,总是试图把我的话补充完。”观众们纷纷被市长的幽默逗笑。随后,谷歌的首席执行官Sundar Pichai上台发表演讲。


Pichai此行的目的之一就是启动谷歌伦敦国王大道的新大楼,预示着公司完成了去年提出的转型计划的初始阶段。Pichai曾经多次在不同场合说过谷歌的未来将以“AI为先”,这在理论上听起来很复杂,引发了许多学者的推测。在实践生产中意味着,未来谷歌将不再依靠传统计算编程来生产产品,而是“机器学习”。


谷歌公司中有一个鲜少提及的部门,谷歌大脑。这个部门成立于五年前,一直遵循着一个原理:人工“神经网络”能够像婴儿一样,通过不断的尝试和犯错来认知这个世界,最终拥有像人类一样的灵活性。这其实并不是一个新理论,早在现代计算机初步发展的20世纪40年代就出现了。但当时大部分科学家并不看重,认为它过于深奥。直到2011年,谷歌大脑证明了将这个强大的方法运用在人工智能领域里可以解决此前几十年的棘手问题。例如,此前谷歌手机在语音识别方面一直效果不是很好,直到谷歌将机器学习算法移植到手机平台后,语音识别精度已经可以和人类媲美。而在图像识别领域也同样取得了良好的效果。一年前,谷歌大脑就已经将这些核心技术成功运用在消费级产品里。


谷歌翻译于2006年首次亮相,目前已经成为谷歌最可靠和最流行的应用之一。每天,谷歌翻译会面对 5 亿个月度活跃用户的 1400 亿个不同语种的单词。现在它已经不是座位一个独立的应用存在,更是已经集成到Gmail、Chrome 及许多其它谷歌产品中了,谷歌将它作为其数字商务中的一个无缝贴合的部分。Pichai在台上讲到,直至叙利亚难民危机之时,公司才意识地区间的翻译交流是何等重要。他背后屏幕的陡峭的曲线图显示,阿拉伯语与德语互译的翻译请求最近增长了五倍之多。(这个结果也符合Pichai的内心想法,他在印度出生成长,那里有几十种不同的语言。)谷歌翻译此后也在逐步增加新的语言和功能,但是过去的四年,发展速度正在逐年减缓。


截至到上个周末,谷歌翻译已经在美国、欧洲、亚洲等地区完成了基于人工智能的转换,包括西班牙语、葡萄牙语、法语、德语、中文、日语、韩语及土耳其语在内的语言与英语的互译。而其它上百种语言也即将实现互译,谷歌预计将会以每月八个的速度在年底前更新完毕。而对于谷歌工程而言,只花费九个月的时间就完成这一重大革新无疑是一个惊喜。AI系统一个通宵所取得的进展就相当于过去所取得的进展之和。


Pichai对含蓄的古典文学尤为偏爱,一个月前,他曾告诉我,在他加利福尼亚州山景城的办公室里,有些文字还是需要谷歌翻译来辅助显示,毕竟并不是所有人都像物理学家Robert Oppenheimer一样能读原版的《博伽梵歌》。因此在伦敦的发布会上,幻灯片上出现了博尔赫斯的经典名言:“Uno no es lo que es por lo que escribe, sino por lo que ha leído.”


Pichai大声地读出旧版谷歌翻译翻译出来的拙劣的句子:“One is not what is for what he writes, but for what he has read.”

而在大屏幕的右边,新的AI系统版本则翻译的更加优雅:“You are not what you write, but what you have read.”


这是有一个对新版的谷歌翻译非常恰当的描述:在某种意义上,谷歌翻译是第一条可以通过学习理解任何事物的机器。


谷歌以AI为中心重组公司。在过去的四年中,谷歌、Facebook、苹果、亚马逊、微软和中国百度等六家公司都围绕AI人才展开了一场军备竞赛,尤其是在大学。企业纷纷到顶尖的学术院校挖掘人才,给人才以丰富的资源和极大的自由。在硅谷,Facebook的CEO Mark Zuckerberg会亲自通过电话和视频聊天软件跟公司最优异的研究生进行会话,七位数的起薪根本不在话下。参加人工智能最重要的学术会议的人数增加了近四倍。大家所关注的不仅仅是小小的创新,还有该如何掌控全新的计算平台:无处不在的人工智能。


我们好像理所当然地就开始使用“人工智能”这一短语,但它其实一直是引发争议的根源。想象一下,如果你回到20世纪70年代,在大街上拦住一个路上,拿住智能手机并向她展示手机里的谷歌地图。你可能需要不停地向她解释,你并不是穿着奇怪的巫师,从口袋里掏出的手机也不是什么黑色护身符,它只是一个比阿波罗时光机更强大的电脑。实际上,谷歌地图就是能跟她展示什么是“人工智能”的例子。在某种意义上,谷歌地图确实是人工智能的例子。它能帮你规划从酒店到机场的路线,而且比人类能完成得更快更好。它还能做一些人类显然不能做的事情:它可以判断交通状况;规划最佳路线;在你走错路时,它能重新定位并进行路线的重新规划。


实际上,如今没有人会把谷歌地图跟高贵的“AI”相提并论。所以我们在使用“智能”这个词的时候,是带“情感”色彩的。人工智能可以区别HAL和其它任何用织机或手推车就可以做出的东西。我们能自动化一项任务,涉及到的相关技能会转变为单纯的机制。现在,谷歌地图似乎还不能称之为人工智能,充其量是机器人:它只接受一个明确的需求(从一个地方到另一个地方),并尽力满足这种需求。因此,“人工智能”的所对应的实际应用其实范围很小。


Pichai的终极目标是区分AI应用和“通用人工智能”。通用人工智能不涉及对显式指令的忠实遵守,它是为一般情况下的一般用途而设计通用工具。Pichai认为,他公司的未来取决于通用人工智能。想象一下,如果你告诉谷歌地图,“我想去机场,但需要在中途停一下给我的侄子买礼物。”一个通用的智能服务,就像三年前的电影《她》中,由Scarlett Johansson配音的那个无处不在的助手一样,她像好朋友一样了解你的情况:你侄子的年龄,你通常喜欢给孩子买什么礼物,以及哪里有能买礼物的商店。但是,一个真正聪明的地图能做一些好朋友考虑不到的事,比方说,你侄子学校的孩子里,最近流行什么玩具。如果聪明的机器能够辨别一些错综复杂的数据,从中找到过去我们做过的事情中暗藏的规律性,那么它就可以推断我们的想法。


AI助手是人工智能的新浪潮,苹果的Siri、Facebook的M,还有亚马逊的Echo都是机器学习的产物,作用都很相似。然而,机器学习并不一定只局限于此。今年,三星的医学成像子公司宣布其新的超声设备能够检测乳腺癌。公司也在招贤纳士,以扩大计算机的工业应用。DeepMind于2014年被谷歌收购,AlphaGo在围棋游戏中击败了人类围棋大师,尽管当时人类预测人工智能要想战胜人类还需要10年。


1950年,Alan Turi吴恩达在那篇著名的文章中提出了一个人工智能的测试:一台计算机是否能在5分钟的文本交流中成功地欺骗人类。一旦机器可以在两种自然语言之间流利地翻译,机器就能很好地“理解”人类语言,从而与人类进行对话。谷歌大脑的成员们正推动和协助监督翻译项目,他们相信这样的机器将会成为通用人工智能的助手。


谷歌的研究人员和工程师团队从最初的一两个人,扩大到三四人,甚至后来扩大到一百多人,他们在这一领域取得了巨大进步。接下来要讲的关于谷歌团队的故事非常少见,因为它跟我们对硅谷的通常印象有所不同。它并不是一些俗套的剧情。它不是一个关于技术能解决所有问题的故事,也不是一个技术会毁灭世界的故事。它跟颠覆无关,至少不是通常意义上的颠覆。


事实上,这个故事又包含了三个相关的故事,这三个故事在谷歌翻译成功转型为AI的过程中融合在一起,它们分别是:技术故事,制度故事和关于思想演变的故事。技术故事是关于一个公司的一个产品团队,以及他们对旧产品进行改进、测试并形成全新版本的过程,而且他们只用了别人预期的约为四分之一的时间就完成了这个过程。制度故事是关于该公司内的一个虽然规模不大但很有影响力的人工智能团队,以及他们凭借对一些旧的、未经证实的和广泛不适用的计算观念的直觉信念,超越了几乎其他所有公司的过程。思想的故事是关于坚持不懈的认知科学家、心理学家和工程师,他们长期以来用看似不合理的信念,最终激发了我们对技术和理论的理解,以及意识本身的范式转变。


第一个故事是谷歌翻译的故事,发生在山景城,时间跨度为九个月,故事解释了机器翻译发生的转变。第二个故事是谷歌大脑及其众多竞争对手的故事,发生在硅谷,时间跨度为五年,它解释了整个领域的转型。第三个故事是深度学习的故事,发生在苏格兰、瑞士、日本和加拿大等大部分地区的遥远实验室,时间跨度长达七十年,它可能非常有助于改变人类的自我认知。


这三个故事都跟人工智能有关。七十年的故事是关于我们对人工智能的期待。五年的故事是关于人工智能在不久的将来会带来什么。九个月的故事是关于人工智能现在可以做什么。这三个故事本身都是对概念的证明,而所有这一切都只是开始。




第一部分:学习机器


1、谷歌大脑的诞生

虽然Jeff Dean的职位是高级研究员,但是事实上,他才是谷歌大脑团队的领导者。 Dean有着长而窄的脸,深深的眼睛并且十分热情。作为医学人类学家和公共卫生流行病学家的儿子,Dean成长时期几乎周游了世界各地,包括明尼苏达州、夏威夷、波士顿、阿肯色州、日内瓦、乌干达、索马里、亚特兰大等地。在高中和大学期间,他写的软件就被世界卫生组织所采用。自1999年以来,他一直在谷歌工作,当时他才25岁,从那时起,他几乎参与了谷歌所有重大项目中核心软件系统的开发。作为公司的元老级人物,Jeff Dean Facts已经成了公司开玩笑的对象。以Chuck Norris的事实模式为例:“Jeff Dean的PIN是pi的最后四位数字。”“当Alexander Graham Bell发明电话时,他接到了一个来自Jeff Dean的未接来电。”“Jeff Dean在最高级别为10的系统中晋升到了11级。“(最后一个是真的。)





上图:谷歌工程师和谷歌大脑的领导者Jeff Dean。

来源:纽约时报的Brian Finke




2011年初的一天,Dean在谷歌校园的“微型车间”之一,也就是山景城大楼的共享休息室,遇见了年轻的斯坦福计算机科学家吴恩达教授,他兼任谷歌公司的顾问。吴恩达跟Dean介绍了Marvin项目(以著名的AI先锋Marvin Minsky命名),在这个项目中,他协助谷歌建立了一种基于大脑架构的柔韧的数字网格的“神经网络”。1990年,Dean在明尼苏达大学读本科的时候,也曾经研究过该技术的原始版本,当时神经网络的概念已经开始流行。在过去的五年中,神经网络领域从事相关研究工作的学者数量开始再次增长。吴恩达告诉Dean,Marvin项目是由谷歌的秘密X实验室负责研究的,目前已经取得了一些可观的进展。


Dean对此很感兴趣,决定花自己“20%”的时间来投入这个项目,每名谷歌员工都要将自己20%的时间贡献给他或她的核心工作以外的工作。很快,Dean向吴恩达推荐了有着神经科学背景的Greg Corrado。(在研究生院的课堂上,Corrado粗略地学习了该技术,但他对此很感兴趣,他开玩笑说道:“那天我上课的时候很专心。”)在春天,他们团队又多了一名吴恩达的得意研究生Quoc Le,他是项目团队的第一个实习生。在那之后,一些谷歌工程师用“谷歌大脑”来形容Marvin项目。


术语“人工智能”是在1956年夏天在达特茅斯的一种宪法惯例中诞生的,当时大多数研究人员认为创造AI的最佳方法是写一个非常大而全面的程序,将逻辑推理的规则和有关世界的知识写入其中。比方说,如果你想把英语翻译成日语,你需要把所有的英语语法规则、牛津英语词典中包含的所有定义、所有的日语语法规则,和日语字典中的所有单词都编入计算机。这种观点通常被称为“符号化AI”。因为它的认知定义是基于符号逻辑的,但它已经有些过时,只能算作是“好的老式的AI”。


这种老式方法有两个主要问题。一是,它非常耗费人力和时间;二是,它只有在规则和定义非常清楚的领域(比如数学或象棋)才真正起作用。然而,如果翻译采用这种方法,效果会很差,因为我们平时说的话没办法跟词典上的规则和定义完全对应。比方说,这样的系统可能会把“农业部长”翻译为“农业牧师”。但是,对于数学和国际象棋来说,这种老式方法就很奏效。


不过,这种老式方法的系统确实有限。在20世纪80年代,卡内基梅隆的机器人研究员指出,让计算机做成人能做的事情很简单,但让计算机做一个1岁的小孩可以做的事情却几乎是不可能的,比如拿起一个球或识别一只猫。到了20世纪90年代,尽管计算机能够在国际象棋上战胜世界冠军,我们离真正的人工智能还差得远。


关于AI,还有另外一种看法,计算机的学习是自下而上(从数据),而不是从上到下(从规则)学习。这个概念可追溯到20世纪40年代初,研究人员发现灵活自动智能的最佳模型就是人类大脑本身。毕竟,大脑只不过是很多神经元的集合体,神经元之间可能会相互传递电荷,或者不会传递。重要的不是单个神经元本身,而是它们之间的连接方式。这种结构很简单,为大脑提供了丰富的适应性优势。大脑可以在信息量少或缺失的情况下工作;它在承受重大的损害时,也不会完全失去控制;它可以用非常有效的方式存储大量的知识;它可以区分不同的模式,但同时保留必须的混乱来处理歧义。


所以人类开始试图用电子元件来模仿这种结构,1943年研究表明,简单的人工神经元排布可以执行基本的逻辑功能。至少在理论上,神经元可以模仿人类的方式。实际上,神经元会根据试错把相互之间的突触连接调节得更强或更弱。人工神经网络也可以做类似的事情,在不断试错的基础上逐步改变人工神经元之间的数字关系。人工神经网络不需要使用固定规则来预编程,相反,它会改变自身以反映所输入的数据中的模式。


这种观点认为人工智能是进化得来,而不是创造出来的。如果你想要一个灵活而且能适应环境的机制,不能一开始就教它国际象棋。必须从非常基本的能力,如感官知觉和运动控制开始,长此以往更先进的技能才有可能出现。人类并不是通过记忆字典和语法书来学习和理解语言的,所以我们有什么理由要让计算机通过这样的方式来学习呢?


谷歌大脑是第一个对这种思维方式进行商业投资的机构。Dean、Corrado和吴恩达利用闲暇时间进行合作并对此展开研究,很快他们便取得了进展。他们从最新的理论大纲和自20世纪八九十年代以来的已有框架中提取了他们的模型的搭建灵感,他们还利用了谷歌巨大的数据储备和庞大的计算基础设施。他们利用网络上大量的“标记”数据,让计算机不断改进从而更好地匹配现实。


某天,Dean告诉我说:“动物进化出眼睛是个巨大的发展。”我们像往常一样坐在会议室,他在白板画了一个复杂的时间线,展示了谷歌大脑以及它与神经网络的历史关系。“现在,计算机也有了眼睛,我们能够借助眼睛让计算机识别图片。机器人的能力将得到巨大提升。他们将能够在一个未知的环境中,处理各种不同的问题。”这些他们正在研发的能力可能看起来很原始,但它们的影响是深远的。





上图:Geoffrey Hinton,他在谷歌多伦多办事处提出的想法为谷歌翻译的神经网络方法奠定了基础。 图片来源:《纽约时报》的Brian Finke




2、重量级实习生


正如Dean所说,谷歌大脑诞生一年后,就在研发具有1岁小孩智力的机器中取得了不错的成绩。谷歌的语音识别团队将其旧系统的一部分转换为神经网络,并因此取得了该系统20年来的最好成效。该系统识别对象的能力提高了一个数量级。这不是因为谷歌大脑的研究人员在短短一年内就产生了很棒的新想法,而是因为谷歌终于在该领域投入了资源和人力。


Geoffrey Hinton的到来让谷歌大脑发展更为迅猛。在谷歌大脑成立的第二年,Hinton被招聘到了谷歌大脑,而吴恩达离开了谷歌(吴恩达现在领导百度1300人的AI团队)。Hinton只能离开多伦多大学在谷歌任职三个月,因此由于奥术合同的原因,他不得不被聘为实习生。在实习培训中,辅导人员说“输入您的LDAP(目录访问协议)”,他问道:“什么是LDAP?”在场其他所有25岁的职员,尽管他们可能刚刚弄清深度学习是人工智能的必要条件,都在想“那个老家伙是谁?为什么他连LDAP是什么都不知道?”


Hinton说道:“在午餐时间,团队成员里有个人惊呼‘Hinton教授!我选修了你的课程!你居然在这里?’”从那以后,大家才不对Hinton议论纷纷。


几个月后,Hinton和他的两个学生在一个称为ImageNet的开源集合运行的大型图像识别竞赛中展示了惊人的成果,他们让计算机不仅能识别猴子,而且能够区分蜘蛛猴和吼猴,以及各种不同品种的猫。谷歌很快就向Hinton和他的学生发起了聘用书,他们接收了谷歌的聘用。Hinton说道:“我本以为谷歌对我们的知识产权感兴趣,结果没想到是对我们这几个人感兴趣。”


Hinton来自英国的传统家族,像Darwins一样,他们家族非常注重教育。他伟大的曾祖父是George Boole,他在符号逻辑方面的基础工作为计算机打下基础;Hinton的祖父是一位著名的外科医生,Hinton的父亲是一位热爱冒险的昆虫学家,Hinton的父亲的表哥是洛斯阿拉莫斯研究所的研究员,等等。而Hinton曾在剑桥和爱丁堡大学读数,然后又到卡内基梅隆大学学习,最后他又到多伦多大学。(他的工作长期以来一直受到加拿大政府的慷慨支持。)我在他的办公室对他进行了采访,他顶着一头成熟的诺埃尔加拉格尔风格的黄到褪色的头发,穿着一件宽松的条纹衬衫,椭圆形的眼镜滑落到高挺的鼻子尖端。他开口说道:“计算机会比美国人更早地理解讽刺为何物。”


19世纪60年代末,Hinton在剑桥大学读本科时,就一直致力于研究神经网络,他是该领域的先驱。但大多数时候,每当他谈及机器学习,人们都觉得他在满口胡言。人们之所以觉得神经网络荒谬,主要是因为感知机(Perceptron)被过度炒作,感知机是一个人工神经网络,是康奈尔心理学家Frank Rosenblatt于20世纪50年代后期提出的。《纽约时报》曾报道,感知机的赞助商美国海军期望它“能够走路、说话、看、写作,甚至再造自己,并意识到自己的存在”。结果证明这是不切实际的。美国的Marvin Minsky曾在1954年的普林斯顿论文中研究过神经网络,但是他对于布朗克斯科学当代的Rosenblatt对神经范式的夸张描述已经厌倦了。(他也在争取国防部的投资。)Minsky与MIT的同事一起出版了一本书,来证明有一些简单问题是感知器永远不能解决的。


Minsky对感知机的抨击只是一个“层”的网络,在后来的生活中,他阐述了与当代深度学习非常相似的想法。Hinton认为,如果使用多层神经网络,就能够完成复杂的任务。神经网络的最简单的描述是,它是一个机器,能在数据中发现模式并进行分类或预测。如果只有一层神经网络,你可以找到简单的模式,但如果有多层神经网络,你应该去找模式中的模式。在图像识别的领域,主要使用的是“卷积神经网络”。(这是在1998年的一篇开创性论文中阐述的,其主要作是Yann LeCun,他在多伦多大学读博士后,是Hinton的学生,现在是Facebook人工智能实验室的负责人。)网络的第一层负责学习识别“边缘”的基本视觉效果,也就是判断一个东西(一个像素上)是否有东西。网络的每个连续层都在前一层中寻找模式。边缘的图案可以是圆形也可以是矩形,圆形或矩形的图案可能是面部。这种方法或多或少地以越来越抽象的方式将信息组合在一起,从视网膜中的光感受器将信息返回到大脑的视觉皮层。在每个步骤中,不相关的细节会被丢弃,因为如果几个边缘和圆圈合在一起成为一张面部,你无需知道发现面部的位置,只需要知道它是一张脸。


多层“深度”神经网络的问题是试错法部分非常复杂。对于单层神经网络来说,这很容易。想象一下,如果你正在和一个孩子玩。你告诉孩子,“拿起绿色的球,把它放入盒子A中”,孩子拿起一个绿色的球,但把它放入了盒子B。你会说,“再试一次把绿色球放在盒子A中”,孩子会再次尝试把球放入了盒子A中。


现在想象你告诉孩子,“拿起一个绿色的球,穿过三号门,然后把绿色的球放入盒子A。”孩子却拿起一个红色的球,穿过了二号门,把红色的球放入盒子B。那么你该如何纠正孩子呢?你不能只是不断重复初始指示,因为孩子不知道他到底错在哪一步。在现实生活中,你可以先举起红球和绿球,说“这是红球,这是绿球”。但是,机器学习的重点是避免这种明确的指导。Hinton和其他几个人研究了解决方案(或者,对旧的方案进行了改造)。对于这个分层错误问题,在20世纪70年代末和80年代初,计算机科学家重新开始对神经网络感兴趣。Hinton说道:“人们对此非常兴奋,但我们的研究超出了他们的兴趣。”很快,计算机科学家们又跟以前一样认为Hinton这样的人是怪人和神秘主义者。


这种想法在哲学家和心理学家中仍然很受欢迎,他们称之为“连接主义”或“并行分布式处理”。Hinton告诉我说,“有几个人对这个想法保持热情,这很好,因为这是真正的人工智能。但在心理学领域,很多人相信这种想法,但却没能力实现它。”尽管加拿大政府一直大力支持,但Hinton也没能实现这个想法。“因为没有足够的计算机资源或足够的数据,我们只能自我安慰道:‘是的,如果我们有这样的前提条件,这个想法肯定是行得通的。’但这却并不是一个非常有说服力的论据。”




3、深层解读深度学习


当Pichai提到“人工智能优先(A.I. First)”概念时,他不仅仅是在说谷歌的战略计划,更是把这个长期不可行的想法扔给了公司。Pichai在资源分配上,确保了像Dean和Hinton这样的人才有足够的计算资源和数据资源可用。每个大脑大约有1000亿个神经元,每个神经元与其他10000个神经元相连,这意味着大脑内突触的数量在100万亿和1000万亿之间。对于20世纪40年代提出的简单人工神经网络来说,根本不可能实现这样规模的网络。虽然目前我们也远没达到构建这种规模网络的能力,但谷歌Brain的投资让我们至少实现了可以媲美小鼠大脑的人工神经网络。


然而,理解网络规模的重要性之前,你必须了解一些技术细节,如机器智能究竟对数据做了什么。其实,我们对人工智能的恐惧,主要来自于我们认为它像一个反社会天才在图书馆挖掘知识,然后,或许某一天,曾经只会玩回形针的机器会像对待蚂蚁或莴苣一样轻松杀死人类。但这并不是人工智能的工作方式,它们所做的只是搜索并寻找共同点——首先是基本模式,然后逐渐变复杂。真正最大的危险在于,我们人类最初给它灌输的信息是否就包含个人偏见。


如果只是想了解一二,可以直接阅读下一节(内容是关于猫的),如果想理解相关技术,那请继续阅读。(当然,本节内容也是关于猫。)


如果你想在老式的符号化AI模型上生成一个“猫识别器”。那么首先,你必须花大量时间预先对机器详细明确地说明什么是“猫”。告诉机器,一只猫有四条腿、尖尖的的耳朵、晶须和尾巴等。机器将这些信息存储在内存中的“Cat”区域。接下来,提供一张图片,让机器判断是否是猫。判断过程中,首先,机器必须分离出图像中不同的元素;然后,利用内存中存储的规则处理这些元素。规则如下:如果(腿 = 4)且(耳朵 = 尖)且(胡须 = 有)且(尾巴 = 有)且(表情= 高傲),那么(猫 = 是)。但如果你提供一张苏格兰折耳猫的图片呢?我们符号化 AI模型就会根据“耳朵 != 尖”判断图片上不是猫。 这样的识别水平比蹒跚学步的小孩都差。


而现在,如果用神经网络做这个实验,就根本不需要通过一系列预先定义的规则进行判别,也根本不需要专门的空间来存储“猫”的信息,包含大量相互连接着的开关的大型blob会解决这一切。在blob的一端提供输入(待识别图像),另一端提供输出(标记信息)。然后,机器将自动化工作,通过不断调试相互连接的开关,最终将输入正确映射到对应的输出。训练过程就像是在迷宫中挖掘一系列隧道,隧道两端连接的是正确的输入和输出。可用的训练数据越多,挖掘的隧道数量和复杂性就越大。训练过程一旦完成,blob中有了足够多的隧道,神经网络就能稳定处理数据并作出可靠预测。这就是“监督学习(Supervised Learning)”。


神经网络之所以需要如此多的神经元和数据,因为它以一种类似民主的方式工作。例如,你想训练可识别五种类型物体的神经网络,它由数百万“选民”(神经元)组成,每位选民都有五张不同的卡片,分别是:猫、狗、蜘蛛猴、勺子、除颤器。拿出一张图片,问:“这是猫,狗,蜘蛛猴,勺子还是除颤器?”所有神经元分组进行投票,最终得票最多的作为最终结果:“一只狗?”


你告诉它:“不!是只猫。重新计算。”


然后,神经网络退回一步,确定哪些神经元投票“猫”,哪些不是。那些投票“猫”的神经元,下次如果还投“猫”,其权重加倍。除此之外,该神经网络也必须能准确判别其他物体类别,如狗和除颤器。而神经网络之所以如此灵活,是因为每个单独的个体针对不同的输出贡献的权重不一样。其实,最关键的不是个体投票,而是这种投票模式。如果Joe, Frank 和Mary一起投票,那就是一只狗;如果Joe, Kate和Jessica一起投票,那就是一只猫;而如果Kate, Jessica 和Frank一起投票,图片上就是一个除颤器。神经网络只需要注册大量可识别信号,这些信号表示:图片中该像素区域是“猫”。“选民”越多,投票次数就越多,微弱信号也越可能被注册。简单来说,就是如果只有Joe, Frank 和Mary三个选民,你可能仅限于区分猫、狗和除颤器;而如果有数百万选民,不同选民之间有数十亿连接,那么你就可以对数据精确分类。经过训练的“选民”组合甚至可以识别未标记图片(或许不那么精确)。


计算科学领域之所以不接受这些理念,部分原因在于机器的输出仅仅是基于模式的预测,它并不完美,而且机器永远无法确切地定义什么是“猫”。只有在看到猫的时候,机器才知道那是猫。神经元“选民”通过数百万张猫图像的训练,它们可以识别出在阳光下打盹的快乐小猫,和躲在垃圾箱阴影中的生气小猫。实际上,你需要大量的神经元“选民”和足够的已标记数据,前者用来确保神经网络可以捕捉到非常微弱的信号,如苏格兰折耳猫垂下的耳朵,后者用来尽可能确保神经网络已“见过”所有相似场景。


但是,需要注意的是,神经网络的输出结果具有概率性,这意味着它并不适用于所有任务。如果神经网路把猫误认为狗,或者偶尔推送了错误的电影,这都不是大事,但如果应用于无人驾驶,神经网络1%的失误率可能就酿成了悲剧。类似担忧还有很多。监督学习是基于已标记数据进行反复试验的过程。机器完成的只是学习过程,而人为因素仍然决定了最初对训练数据的分类。例如,训练数据中,图片上是一位男士和一位女士,某人将该图片标记为“一位女士和她的老板”,这种关系标记将影响所有后续的模式识别。因此,人类错误标记才会导致训练数据错误。机器可能通过重罪定罪数据,来确定信贷候选人贷款资格。但如果重罪定罪数据本身就是不公平的(如数据是基于歧视性禁毒法),那么机器输出的可贷款人名单也是不可靠的。


图像识别网络与我们的小猫识别器一样,也是深度学习的一种,但常常把它作为教学示例,因为人类可直观了解到图像识的具体过程:先找图像边缘,然后识别圆圈,接着识别脸。这意味着其中有错误保护措施。例如,早期,谷歌发现他们的图像识别软件无法单独识别出杠铃,哪怕用大规模运动器材图像集对其训练,结果也是一样。通过可视化工具观察发现,由于训练集中所有哑铃都是附在手臂上的,所以机器没有学习到“哑铃”的概念,而是“哑铃+手臂”的整体概念。改进一下,向训练集中加入单独的“杠铃”照片,问题就解决了。但并不是所有问题都这么容易。




4、猫识别论文


谷歌Brain部门在一到两年时间内,成功让机器具备了1岁小孩的智能。随后,该部门成功从谷歌X实验室“毕业”,并成为了更高级的研究机构。(谷歌X实验室负责人曾经指出,Brain取得的成就,让整个实验室的努力没有白费。)当时,谷歌Brain仍然只有10人不到,而对于未来,也只有一个模糊的概念。但即使在那时,他们都在积极思考接下来会发生什么。就像人一样,学会认识皮球后,我们会为之满足一段时间,但迟早,人类会产生关于皮球的问题。这就是语言产生的原因。


这一领域中,Brain迈出的第一步是发表了猫识别论文,正是这篇论文,Brain闻名世界。


这篇论文展示了一个具有超过十亿个“突触”连接的神经网络。虽然与人类大脑相比,它小了好几个数量级,但它比当时任何公开的神经网络都要大好几百倍。这个神经网络可以处理原始的、未标记数据,并识别高级的人类概念。谷歌Brain的研究人员向该神经网络展示了几百万的静态帧(来自YouTube视频),然后神经网络的感觉中枢开始运转,生成了一个稳定的模型。像小孩或花栗鼠一样聪明,该模型可以迅速识别出猫的脸。研究人员并没有预先向该神经网络输入关于“猫”概念,它直接与现实世界交互并获取“猫”这一定义。(研究人员发现,这一神经网络与核磁共振(M.R.I.)很相像,猫的脸部阴影会激发人工神经元“投票”的热情。)大多数机器学习都受限于已标记数据的数据量。但这篇论文却显示,该神经网络可以处理原始未标记数据,有时甚至是人类都还没建立起概念的数据。这不仅仅是猫识别研究的重大突破,更是整个人工智能的显著进步。


猫识别论文的第一作者是Quoc Le。Le个头不高,身形偏瘦,说话温和但语速很快,经常穿着闪亮的黑皮鞋,而且面带神秘的微笑。他在越南长大,父母都是农民,小时候家里甚至都没有电。他从小就表现出了过人的数学能力,后来,他就读于一所磁铁学校学习科学。上世纪90年代末,Le还在上学,那时候他就试图构建一个聊天机器人。他在想,这有多难呢?

“但实际上,”他告诉我,“非常不简单。”


毕业后,Le离开了越南,前往澳大利亚堪培拉的一所大学学习,主要研究机器视觉这类人工智能任务。当时人工智能的主要做法是,提前给机器灌输相关概念(如,边缘),这让他感觉像是在作弊。当时的Le不知道,全世界有很多计算机科学家和他的想法一样——机器可以从零开始学习。2006年,Le任职于德国的马克斯普朗克研究所生物控制部门。在当时的一个阅读小组中,他读到了Geoffrey Hinton写的两篇论文,他觉得自己豁然开朗。


“这两篇文章引起了争议,”他告诉我。“非常大的争议。”我们在一个小型内部会议室里,天花板又窄又高,屋子里有一张小桌子和两块白板。Le看了眼他画在背后白板上的曲线,又回过头来轻声地说,“我从没见到过这么大的争议”。


他记得,当时在阅读小组里站起来,然后说,“这就是未来。”但在当时,这是个不受欢迎的决定。Le在澳大利亚的导师不能完全理解他的想法,写邮件问到,“你为什么决定做这个?”


“那时,我想不到怎么回答这个问题,”Le说。“因为,我只是好奇。文章中提出了一个成功的范式,老实说,我只是对这个新范式感到好奇。那时还是2006年,这样的观点非常罕见。”然后,Le 加入了斯坦福的吴恩达团队,接着他开始沿着 Hinton 的道路探索。“到了2010年年底,我确信会有事情发生。”


不久之后,Le成为了Brain的首位实习生。在Brain,他继续着自己的论文工作,也就是后来发表的猫论文的前身。在一个简单层面上,Le只是想看看计算机能否被训练并自主识别给定图像中的绝对必要的信息。他向神经网络输入了一张YouTube上的静态图片。然后,指示神经网络丢弃一些信息,但并不说明哪些信息应该保留哪些应该丢弃。神经网络随机丢弃了一些信息。接着,Le又说:“刚刚是开玩笑的。现在基于你刚刚保留下来的信息,重新构建初始图像。”这种方式就像他先要求机器找到一种方式“总结”图像,然后,基于总结的信息回溯原始图像。如果总结的都是些不相关信息(如天空的颜色),而不是关键信息(如有没有胡须),计算机就无法有效重构原始图像。计算机的反应就像我们远古的祖先,他们在逃跑中建立起对剑齿虎的印象。而Le的神经网络与我们的祖先的方式不同,它需要不断地尝试。从数学角度来说,每次尝试后,它都选择不同的信息进行优化,而且表现地越来越好。然而,神经网络是个黑盒子,它确实生成了某种范式,但人类并不能直观地理解这些范式。


猫论文发表后,引起了极大凡响,而Le并未感觉到自己掌握了业界的话语权。但他强烈感觉到,应该继续自己早年聊天机器人的想法。发表了猫论文后,Le意识到,如果神经网络可以总结图片信息,那么它或许也可以总结语句信息。在接下来两年中,这一想法深深印在Le和Tomas Mikolov(Le在Brain的同事)的脑海中。


那段时间,Brain团队占据了好几个办公室,甚至一度占用了高管的地方。随后,他们收到了管理处的邮件,要求他们不要在Larry Page和Sergey Brin的 办公室门口的沙发上睡觉。后来,他们被安排到街对面的研究楼里工作,在那里,研究人员专心研究,而不必应付同事间礼貌而无效率的交谈。当然在这一过渡期,谷歌的竞争对手们也在奋力前行。(Le神情严肃地一遍一遍提及他与Tomas Mikolov的亲密合作。最后我忍不住问道,“他离开了?”Le点点头,回答道:“去了Facebook”。)





上图:2012年的谷歌 Brain团队。他们发表了著名的“猫论文”,演示论文中的神经网络处理未标记数据。研究人员向该神经网络提供几百万的静态帧(来自YouTube视频),神经网络生成了一个稳定的模型并且识别出猫。


那段时间,他们极力想构造出不仅能执行简单的静态图片分类任务,也能处理复杂的任务(如自然语言或音乐)的神经网络架构。他们的许多观点在上世纪九十年代就出现了,Le和他的同事们专门回顾了那些被忽略的概念,希望能从中得到启发。他们知道,一旦建立了一个具有基本语言预测功能的模型,也就可以基于此完成各种其他类型智能任务,如预测电子邮件的合适回复或者预测谈话过程。你可以侧重于那些从表面看起来很像思维过程的任务。
 
 
来源:人工智能学家
 
 
 
 
 
 
更多内容请关注:www.imefuture.com
 
北京大数据产业投资基金正式发布 扎克伯格启用AI“管家
圣诞节太多小孩被机器人吸引
 
智造家 查看全部
谷歌如何使用人工智能来改变谷歌翻译这项颇受欢迎的服务,以及机器学习如何重塑计算。

7.1_.jpg


序言:你所读到的就是你自己


在十一月初的某个周五晚上,Jun Rekimoto(东京大学人机交互领域的杰出的教授)正准备在线演讲,他突然注意到社交媒体滚动条上有一些特别的内容。这些内容是关于谷歌翻译的,这项流行的机器翻译服务最近突然有了大幅改善。


Rekimoto开始研究谷歌翻译并用它做了一些测试,测试结果令他非常震惊。虽然已经夜深,但谷歌翻译取得的进展依然让Rekimoto久久无法入睡。


Rekimoto在一篇博客中写了他的初步发现。首先,他用谷歌翻译翻译了《了不起的盖茨比》中的一些句子,并与1957年Takashi Nozaki译版和最新的Haruki Murakami的译版进行对比。Rekimoto后来通过电子邮件向我解释,Murakami的版本语言非常细腻,具有独特的“Murakami风格”。相比之下,谷歌的翻译虽然有些不自然,但是对他来说“更透明”。


Rekimoto博客的后半部分从日译英的方向测试了谷歌翻译。他先是自己用日语翻译了海明威的《乞力马扎罗的雪》的开头部分,然后把这段话通过谷歌翻译转译成英语。他列出了此版本与海明威的原版,并让读者猜测哪个版本是机器完成的。


NO. 1:

Kilimanjaro is a snow-covered mountain 19,710 feet high, and is said to be the highest mountain in Africa. Its western summit is called the Masai “Ngaje Ngai,” the House of God. Close to the western summit there is the dried and frozen carcass of a leopard. No one has explained what the leopard was seeking at that altitude.


NO. 2:

Kilimanjaro is a mountain of 19,710 feet covered with snow and is said to be the highest mountain in Africa. The summit of the west is called “Ngaje Ngai” in Masai, the house of God. Near the top of the west there is a dry and frozen dead body of leopard. No one has ever explained what leopard wanted at that altitude.


即使是以英语为母语的人,也很难分辨出第二段是由机器完成的。这两段翻译是如此的相近,Rekimoto甚至觉得这很神奇。因为Rekimoto非常熟悉谷歌翻译之前的能力,甚至在24小时前,谷歌只能翻译成下面这段话:


Kilimanjaro is 19,710 feet of the mountain covered with snow, and it is said that the highest mountain in Africa. Top of the west, “Ngaje Ngai” in the Maasai language, has been referred to as the house of God. The top close to the west, there is a dry, frozen carcass of a leopard.Whether the leopard had what the demand at that altitude, there is no that nobody explained.


Rekimoto在Twitter上向他的十万个粉丝公布了他的发现,在接下来的几个小时里,成千上万的人发出他们使用机器翻译的结果。有些是比较成功的,但也有些是非常滑稽的。


在东京破晓之时,谷歌翻译登上了日本Twitter热度榜的第一位,甚至连人气动漫和人气偶像少女的被挤了下去。每个人都很惊奇:谷歌翻译为何能如此让人刮目相看?


四天之后,来自世界各地的上百名记者、企业家和广告客户齐聚于谷歌的伦敦办公室中,观看谷歌的特别发布会。客人们的甜点是印有翻译标志的幸运饼干,每个人的面前还放有一张纸条,一面写着不同国家的短语,另一面邀请客人们下载谷歌翻译的软件。桌子上还摆放了甜甜圈和冰沙盘,旁边的标语牌标注了各种国家的风味。过了一会,所有人来到了一个豪华的黑暗剧场中。

7.2_.jpg

上图:Sundar Pichai,谷歌的首席执行官,在他加利福尼亚州山景城的办公室外。


伦敦市长Sadiq Khan首先上台演讲。演讲的开始,市长提到他有个朋友觉得市长就像谷歌一样。于是市长问朋友:“为什么?因为我什么都懂?”朋友否认道:“不是的,是因为你就像谷歌一样,总是试图把我的话补充完。”观众们纷纷被市长的幽默逗笑。随后,谷歌的首席执行官Sundar Pichai上台发表演讲。


Pichai此行的目的之一就是启动谷歌伦敦国王大道的新大楼,预示着公司完成了去年提出的转型计划的初始阶段。Pichai曾经多次在不同场合说过谷歌的未来将以“AI为先”,这在理论上听起来很复杂,引发了许多学者的推测。在实践生产中意味着,未来谷歌将不再依靠传统计算编程来生产产品,而是“机器学习”。


谷歌公司中有一个鲜少提及的部门,谷歌大脑。这个部门成立于五年前,一直遵循着一个原理:人工“神经网络”能够像婴儿一样,通过不断的尝试和犯错来认知这个世界,最终拥有像人类一样的灵活性。这其实并不是一个新理论,早在现代计算机初步发展的20世纪40年代就出现了。但当时大部分科学家并不看重,认为它过于深奥。直到2011年,谷歌大脑证明了将这个强大的方法运用在人工智能领域里可以解决此前几十年的棘手问题。例如,此前谷歌手机在语音识别方面一直效果不是很好,直到谷歌将机器学习算法移植到手机平台后,语音识别精度已经可以和人类媲美。而在图像识别领域也同样取得了良好的效果。一年前,谷歌大脑就已经将这些核心技术成功运用在消费级产品里。


谷歌翻译于2006年首次亮相,目前已经成为谷歌最可靠和最流行的应用之一。每天,谷歌翻译会面对 5 亿个月度活跃用户的 1400 亿个不同语种的单词。现在它已经不是座位一个独立的应用存在,更是已经集成到Gmail、Chrome 及许多其它谷歌产品中了,谷歌将它作为其数字商务中的一个无缝贴合的部分。Pichai在台上讲到,直至叙利亚难民危机之时,公司才意识地区间的翻译交流是何等重要。他背后屏幕的陡峭的曲线图显示,阿拉伯语与德语互译的翻译请求最近增长了五倍之多。(这个结果也符合Pichai的内心想法,他在印度出生成长,那里有几十种不同的语言。)谷歌翻译此后也在逐步增加新的语言和功能,但是过去的四年,发展速度正在逐年减缓。


截至到上个周末,谷歌翻译已经在美国、欧洲、亚洲等地区完成了基于人工智能的转换,包括西班牙语、葡萄牙语、法语、德语、中文、日语、韩语及土耳其语在内的语言与英语的互译。而其它上百种语言也即将实现互译,谷歌预计将会以每月八个的速度在年底前更新完毕。而对于谷歌工程而言,只花费九个月的时间就完成这一重大革新无疑是一个惊喜。AI系统一个通宵所取得的进展就相当于过去所取得的进展之和。


Pichai对含蓄的古典文学尤为偏爱,一个月前,他曾告诉我,在他加利福尼亚州山景城的办公室里,有些文字还是需要谷歌翻译来辅助显示,毕竟并不是所有人都像物理学家Robert Oppenheimer一样能读原版的《博伽梵歌》。因此在伦敦的发布会上,幻灯片上出现了博尔赫斯的经典名言:“Uno no es lo que es por lo que escribe, sino por lo que ha leído.”


Pichai大声地读出旧版谷歌翻译翻译出来的拙劣的句子:“One is not what is for what he writes, but for what he has read.”

而在大屏幕的右边,新的AI系统版本则翻译的更加优雅:“You are not what you write, but what you have read.”


这是有一个对新版的谷歌翻译非常恰当的描述:在某种意义上,谷歌翻译是第一条可以通过学习理解任何事物的机器。


谷歌以AI为中心重组公司。在过去的四年中,谷歌、Facebook、苹果、亚马逊、微软和中国百度等六家公司都围绕AI人才展开了一场军备竞赛,尤其是在大学。企业纷纷到顶尖的学术院校挖掘人才,给人才以丰富的资源和极大的自由。在硅谷,Facebook的CEO Mark Zuckerberg会亲自通过电话和视频聊天软件跟公司最优异的研究生进行会话,七位数的起薪根本不在话下。参加人工智能最重要的学术会议的人数增加了近四倍。大家所关注的不仅仅是小小的创新,还有该如何掌控全新的计算平台:无处不在的人工智能。


我们好像理所当然地就开始使用“人工智能”这一短语,但它其实一直是引发争议的根源。想象一下,如果你回到20世纪70年代,在大街上拦住一个路上,拿住智能手机并向她展示手机里的谷歌地图。你可能需要不停地向她解释,你并不是穿着奇怪的巫师,从口袋里掏出的手机也不是什么黑色护身符,它只是一个比阿波罗时光机更强大的电脑。实际上,谷歌地图就是能跟她展示什么是“人工智能”的例子。在某种意义上,谷歌地图确实是人工智能的例子。它能帮你规划从酒店到机场的路线,而且比人类能完成得更快更好。它还能做一些人类显然不能做的事情:它可以判断交通状况;规划最佳路线;在你走错路时,它能重新定位并进行路线的重新规划。


实际上,如今没有人会把谷歌地图跟高贵的“AI”相提并论。所以我们在使用“智能”这个词的时候,是带“情感”色彩的。人工智能可以区别HAL和其它任何用织机或手推车就可以做出的东西。我们能自动化一项任务,涉及到的相关技能会转变为单纯的机制。现在,谷歌地图似乎还不能称之为人工智能,充其量是机器人:它只接受一个明确的需求(从一个地方到另一个地方),并尽力满足这种需求。因此,“人工智能”的所对应的实际应用其实范围很小。


Pichai的终极目标是区分AI应用和“通用人工智能”。通用人工智能不涉及对显式指令的忠实遵守,它是为一般情况下的一般用途而设计通用工具。Pichai认为,他公司的未来取决于通用人工智能。想象一下,如果你告诉谷歌地图,“我想去机场,但需要在中途停一下给我的侄子买礼物。”一个通用的智能服务,就像三年前的电影《她》中,由Scarlett Johansson配音的那个无处不在的助手一样,她像好朋友一样了解你的情况:你侄子的年龄,你通常喜欢给孩子买什么礼物,以及哪里有能买礼物的商店。但是,一个真正聪明的地图能做一些好朋友考虑不到的事,比方说,你侄子学校的孩子里,最近流行什么玩具。如果聪明的机器能够辨别一些错综复杂的数据,从中找到过去我们做过的事情中暗藏的规律性,那么它就可以推断我们的想法。


AI助手是人工智能的新浪潮,苹果的Siri、Facebook的M,还有亚马逊的Echo都是机器学习的产物,作用都很相似。然而,机器学习并不一定只局限于此。今年,三星的医学成像子公司宣布其新的超声设备能够检测乳腺癌。公司也在招贤纳士,以扩大计算机的工业应用。DeepMind于2014年被谷歌收购,AlphaGo在围棋游戏中击败了人类围棋大师,尽管当时人类预测人工智能要想战胜人类还需要10年。


1950年,Alan Turi吴恩达在那篇著名的文章中提出了一个人工智能的测试:一台计算机是否能在5分钟的文本交流中成功地欺骗人类。一旦机器可以在两种自然语言之间流利地翻译,机器就能很好地“理解”人类语言,从而与人类进行对话。谷歌大脑的成员们正推动和协助监督翻译项目,他们相信这样的机器将会成为通用人工智能的助手。


谷歌的研究人员和工程师团队从最初的一两个人,扩大到三四人,甚至后来扩大到一百多人,他们在这一领域取得了巨大进步。接下来要讲的关于谷歌团队的故事非常少见,因为它跟我们对硅谷的通常印象有所不同。它并不是一些俗套的剧情。它不是一个关于技术能解决所有问题的故事,也不是一个技术会毁灭世界的故事。它跟颠覆无关,至少不是通常意义上的颠覆。


事实上,这个故事又包含了三个相关的故事,这三个故事在谷歌翻译成功转型为AI的过程中融合在一起,它们分别是:技术故事,制度故事和关于思想演变的故事。技术故事是关于一个公司的一个产品团队,以及他们对旧产品进行改进、测试并形成全新版本的过程,而且他们只用了别人预期的约为四分之一的时间就完成了这个过程。制度故事是关于该公司内的一个虽然规模不大但很有影响力的人工智能团队,以及他们凭借对一些旧的、未经证实的和广泛不适用的计算观念的直觉信念,超越了几乎其他所有公司的过程。思想的故事是关于坚持不懈的认知科学家、心理学家和工程师,他们长期以来用看似不合理的信念,最终激发了我们对技术和理论的理解,以及意识本身的范式转变。


第一个故事是谷歌翻译的故事,发生在山景城,时间跨度为九个月,故事解释了机器翻译发生的转变。第二个故事是谷歌大脑及其众多竞争对手的故事,发生在硅谷,时间跨度为五年,它解释了整个领域的转型。第三个故事是深度学习的故事,发生在苏格兰、瑞士、日本和加拿大等大部分地区的遥远实验室,时间跨度长达七十年,它可能非常有助于改变人类的自我认知。


这三个故事都跟人工智能有关。七十年的故事是关于我们对人工智能的期待。五年的故事是关于人工智能在不久的将来会带来什么。九个月的故事是关于人工智能现在可以做什么。这三个故事本身都是对概念的证明,而所有这一切都只是开始。




第一部分:学习机器


1、谷歌大脑的诞生

虽然Jeff Dean的职位是高级研究员,但是事实上,他才是谷歌大脑团队的领导者。 Dean有着长而窄的脸,深深的眼睛并且十分热情。作为医学人类学家和公共卫生流行病学家的儿子,Dean成长时期几乎周游了世界各地,包括明尼苏达州、夏威夷、波士顿、阿肯色州、日内瓦、乌干达、索马里、亚特兰大等地。在高中和大学期间,他写的软件就被世界卫生组织所采用。自1999年以来,他一直在谷歌工作,当时他才25岁,从那时起,他几乎参与了谷歌所有重大项目中核心软件系统的开发。作为公司的元老级人物,Jeff Dean Facts已经成了公司开玩笑的对象。以Chuck Norris的事实模式为例:“Jeff Dean的PIN是pi的最后四位数字。”“当Alexander Graham Bell发明电话时,他接到了一个来自Jeff Dean的未接来电。”“Jeff Dean在最高级别为10的系统中晋升到了11级。“(最后一个是真的。)

7.3_.jpg

上图:谷歌工程师和谷歌大脑的领导者Jeff Dean。

来源:纽约时报的Brian Finke




2011年初的一天,Dean在谷歌校园的“微型车间”之一,也就是山景城大楼的共享休息室,遇见了年轻的斯坦福计算机科学家吴恩达教授,他兼任谷歌公司的顾问。吴恩达跟Dean介绍了Marvin项目(以著名的AI先锋Marvin Minsky命名),在这个项目中,他协助谷歌建立了一种基于大脑架构的柔韧的数字网格的“神经网络”。1990年,Dean在明尼苏达大学读本科的时候,也曾经研究过该技术的原始版本,当时神经网络的概念已经开始流行。在过去的五年中,神经网络领域从事相关研究工作的学者数量开始再次增长。吴恩达告诉Dean,Marvin项目是由谷歌的秘密X实验室负责研究的,目前已经取得了一些可观的进展。


Dean对此很感兴趣,决定花自己“20%”的时间来投入这个项目,每名谷歌员工都要将自己20%的时间贡献给他或她的核心工作以外的工作。很快,Dean向吴恩达推荐了有着神经科学背景的Greg Corrado。(在研究生院的课堂上,Corrado粗略地学习了该技术,但他对此很感兴趣,他开玩笑说道:“那天我上课的时候很专心。”)在春天,他们团队又多了一名吴恩达的得意研究生Quoc Le,他是项目团队的第一个实习生。在那之后,一些谷歌工程师用“谷歌大脑”来形容Marvin项目。


术语“人工智能”是在1956年夏天在达特茅斯的一种宪法惯例中诞生的,当时大多数研究人员认为创造AI的最佳方法是写一个非常大而全面的程序,将逻辑推理的规则和有关世界的知识写入其中。比方说,如果你想把英语翻译成日语,你需要把所有的英语语法规则、牛津英语词典中包含的所有定义、所有的日语语法规则,和日语字典中的所有单词都编入计算机。这种观点通常被称为“符号化AI”。因为它的认知定义是基于符号逻辑的,但它已经有些过时,只能算作是“好的老式的AI”。


这种老式方法有两个主要问题。一是,它非常耗费人力和时间;二是,它只有在规则和定义非常清楚的领域(比如数学或象棋)才真正起作用。然而,如果翻译采用这种方法,效果会很差,因为我们平时说的话没办法跟词典上的规则和定义完全对应。比方说,这样的系统可能会把“农业部长”翻译为“农业牧师”。但是,对于数学和国际象棋来说,这种老式方法就很奏效。


不过,这种老式方法的系统确实有限。在20世纪80年代,卡内基梅隆的机器人研究员指出,让计算机做成人能做的事情很简单,但让计算机做一个1岁的小孩可以做的事情却几乎是不可能的,比如拿起一个球或识别一只猫。到了20世纪90年代,尽管计算机能够在国际象棋上战胜世界冠军,我们离真正的人工智能还差得远。


关于AI,还有另外一种看法,计算机的学习是自下而上(从数据),而不是从上到下(从规则)学习。这个概念可追溯到20世纪40年代初,研究人员发现灵活自动智能的最佳模型就是人类大脑本身。毕竟,大脑只不过是很多神经元的集合体,神经元之间可能会相互传递电荷,或者不会传递。重要的不是单个神经元本身,而是它们之间的连接方式。这种结构很简单,为大脑提供了丰富的适应性优势。大脑可以在信息量少或缺失的情况下工作;它在承受重大的损害时,也不会完全失去控制;它可以用非常有效的方式存储大量的知识;它可以区分不同的模式,但同时保留必须的混乱来处理歧义。


所以人类开始试图用电子元件来模仿这种结构,1943年研究表明,简单的人工神经元排布可以执行基本的逻辑功能。至少在理论上,神经元可以模仿人类的方式。实际上,神经元会根据试错把相互之间的突触连接调节得更强或更弱。人工神经网络也可以做类似的事情,在不断试错的基础上逐步改变人工神经元之间的数字关系。人工神经网络不需要使用固定规则来预编程,相反,它会改变自身以反映所输入的数据中的模式。


这种观点认为人工智能是进化得来,而不是创造出来的。如果你想要一个灵活而且能适应环境的机制,不能一开始就教它国际象棋。必须从非常基本的能力,如感官知觉和运动控制开始,长此以往更先进的技能才有可能出现。人类并不是通过记忆字典和语法书来学习和理解语言的,所以我们有什么理由要让计算机通过这样的方式来学习呢?


谷歌大脑是第一个对这种思维方式进行商业投资的机构。Dean、Corrado和吴恩达利用闲暇时间进行合作并对此展开研究,很快他们便取得了进展。他们从最新的理论大纲和自20世纪八九十年代以来的已有框架中提取了他们的模型的搭建灵感,他们还利用了谷歌巨大的数据储备和庞大的计算基础设施。他们利用网络上大量的“标记”数据,让计算机不断改进从而更好地匹配现实。


某天,Dean告诉我说:“动物进化出眼睛是个巨大的发展。”我们像往常一样坐在会议室,他在白板画了一个复杂的时间线,展示了谷歌大脑以及它与神经网络的历史关系。“现在,计算机也有了眼睛,我们能够借助眼睛让计算机识别图片。机器人的能力将得到巨大提升。他们将能够在一个未知的环境中,处理各种不同的问题。”这些他们正在研发的能力可能看起来很原始,但它们的影响是深远的。

7.4_.jpg

上图:Geoffrey Hinton,他在谷歌多伦多办事处提出的想法为谷歌翻译的神经网络方法奠定了基础。 图片来源:《纽约时报》的Brian Finke




2、重量级实习生


正如Dean所说,谷歌大脑诞生一年后,就在研发具有1岁小孩智力的机器中取得了不错的成绩。谷歌的语音识别团队将其旧系统的一部分转换为神经网络,并因此取得了该系统20年来的最好成效。该系统识别对象的能力提高了一个数量级。这不是因为谷歌大脑的研究人员在短短一年内就产生了很棒的新想法,而是因为谷歌终于在该领域投入了资源和人力。


Geoffrey Hinton的到来让谷歌大脑发展更为迅猛。在谷歌大脑成立的第二年,Hinton被招聘到了谷歌大脑,而吴恩达离开了谷歌(吴恩达现在领导百度1300人的AI团队)。Hinton只能离开多伦多大学在谷歌任职三个月,因此由于奥术合同的原因,他不得不被聘为实习生。在实习培训中,辅导人员说“输入您的LDAP(目录访问协议)”,他问道:“什么是LDAP?”在场其他所有25岁的职员,尽管他们可能刚刚弄清深度学习是人工智能的必要条件,都在想“那个老家伙是谁?为什么他连LDAP是什么都不知道?”


Hinton说道:“在午餐时间,团队成员里有个人惊呼‘Hinton教授!我选修了你的课程!你居然在这里?’”从那以后,大家才不对Hinton议论纷纷。


几个月后,Hinton和他的两个学生在一个称为ImageNet的开源集合运行的大型图像识别竞赛中展示了惊人的成果,他们让计算机不仅能识别猴子,而且能够区分蜘蛛猴和吼猴,以及各种不同品种的猫。谷歌很快就向Hinton和他的学生发起了聘用书,他们接收了谷歌的聘用。Hinton说道:“我本以为谷歌对我们的知识产权感兴趣,结果没想到是对我们这几个人感兴趣。”


Hinton来自英国的传统家族,像Darwins一样,他们家族非常注重教育。他伟大的曾祖父是George Boole,他在符号逻辑方面的基础工作为计算机打下基础;Hinton的祖父是一位著名的外科医生,Hinton的父亲是一位热爱冒险的昆虫学家,Hinton的父亲的表哥是洛斯阿拉莫斯研究所的研究员,等等。而Hinton曾在剑桥和爱丁堡大学读数,然后又到卡内基梅隆大学学习,最后他又到多伦多大学。(他的工作长期以来一直受到加拿大政府的慷慨支持。)我在他的办公室对他进行了采访,他顶着一头成熟的诺埃尔加拉格尔风格的黄到褪色的头发,穿着一件宽松的条纹衬衫,椭圆形的眼镜滑落到高挺的鼻子尖端。他开口说道:“计算机会比美国人更早地理解讽刺为何物。”


19世纪60年代末,Hinton在剑桥大学读本科时,就一直致力于研究神经网络,他是该领域的先驱。但大多数时候,每当他谈及机器学习,人们都觉得他在满口胡言。人们之所以觉得神经网络荒谬,主要是因为感知机(Perceptron)被过度炒作,感知机是一个人工神经网络,是康奈尔心理学家Frank Rosenblatt于20世纪50年代后期提出的。《纽约时报》曾报道,感知机的赞助商美国海军期望它“能够走路、说话、看、写作,甚至再造自己,并意识到自己的存在”。结果证明这是不切实际的。美国的Marvin Minsky曾在1954年的普林斯顿论文中研究过神经网络,但是他对于布朗克斯科学当代的Rosenblatt对神经范式的夸张描述已经厌倦了。(他也在争取国防部的投资。)Minsky与MIT的同事一起出版了一本书,来证明有一些简单问题是感知器永远不能解决的。


Minsky对感知机的抨击只是一个“层”的网络,在后来的生活中,他阐述了与当代深度学习非常相似的想法。Hinton认为,如果使用多层神经网络,就能够完成复杂的任务。神经网络的最简单的描述是,它是一个机器,能在数据中发现模式并进行分类或预测。如果只有一层神经网络,你可以找到简单的模式,但如果有多层神经网络,你应该去找模式中的模式。在图像识别的领域,主要使用的是“卷积神经网络”。(这是在1998年的一篇开创性论文中阐述的,其主要作是Yann LeCun,他在多伦多大学读博士后,是Hinton的学生,现在是Facebook人工智能实验室的负责人。)网络的第一层负责学习识别“边缘”的基本视觉效果,也就是判断一个东西(一个像素上)是否有东西。网络的每个连续层都在前一层中寻找模式。边缘的图案可以是圆形也可以是矩形,圆形或矩形的图案可能是面部。这种方法或多或少地以越来越抽象的方式将信息组合在一起,从视网膜中的光感受器将信息返回到大脑的视觉皮层。在每个步骤中,不相关的细节会被丢弃,因为如果几个边缘和圆圈合在一起成为一张面部,你无需知道发现面部的位置,只需要知道它是一张脸。


多层“深度”神经网络的问题是试错法部分非常复杂。对于单层神经网络来说,这很容易。想象一下,如果你正在和一个孩子玩。你告诉孩子,“拿起绿色的球,把它放入盒子A中”,孩子拿起一个绿色的球,但把它放入了盒子B。你会说,“再试一次把绿色球放在盒子A中”,孩子会再次尝试把球放入了盒子A中。


现在想象你告诉孩子,“拿起一个绿色的球,穿过三号门,然后把绿色的球放入盒子A。”孩子却拿起一个红色的球,穿过了二号门,把红色的球放入盒子B。那么你该如何纠正孩子呢?你不能只是不断重复初始指示,因为孩子不知道他到底错在哪一步。在现实生活中,你可以先举起红球和绿球,说“这是红球,这是绿球”。但是,机器学习的重点是避免这种明确的指导。Hinton和其他几个人研究了解决方案(或者,对旧的方案进行了改造)。对于这个分层错误问题,在20世纪70年代末和80年代初,计算机科学家重新开始对神经网络感兴趣。Hinton说道:“人们对此非常兴奋,但我们的研究超出了他们的兴趣。”很快,计算机科学家们又跟以前一样认为Hinton这样的人是怪人和神秘主义者。


这种想法在哲学家和心理学家中仍然很受欢迎,他们称之为“连接主义”或“并行分布式处理”。Hinton告诉我说,“有几个人对这个想法保持热情,这很好,因为这是真正的人工智能。但在心理学领域,很多人相信这种想法,但却没能力实现它。”尽管加拿大政府一直大力支持,但Hinton也没能实现这个想法。“因为没有足够的计算机资源或足够的数据,我们只能自我安慰道:‘是的,如果我们有这样的前提条件,这个想法肯定是行得通的。’但这却并不是一个非常有说服力的论据。”




3、深层解读深度学习


当Pichai提到“人工智能优先(A.I. First)”概念时,他不仅仅是在说谷歌的战略计划,更是把这个长期不可行的想法扔给了公司。Pichai在资源分配上,确保了像Dean和Hinton这样的人才有足够的计算资源和数据资源可用。每个大脑大约有1000亿个神经元,每个神经元与其他10000个神经元相连,这意味着大脑内突触的数量在100万亿和1000万亿之间。对于20世纪40年代提出的简单人工神经网络来说,根本不可能实现这样规模的网络。虽然目前我们也远没达到构建这种规模网络的能力,但谷歌Brain的投资让我们至少实现了可以媲美小鼠大脑的人工神经网络。


然而,理解网络规模的重要性之前,你必须了解一些技术细节,如机器智能究竟对数据做了什么。其实,我们对人工智能的恐惧,主要来自于我们认为它像一个反社会天才在图书馆挖掘知识,然后,或许某一天,曾经只会玩回形针的机器会像对待蚂蚁或莴苣一样轻松杀死人类。但这并不是人工智能的工作方式,它们所做的只是搜索并寻找共同点——首先是基本模式,然后逐渐变复杂。真正最大的危险在于,我们人类最初给它灌输的信息是否就包含个人偏见。


如果只是想了解一二,可以直接阅读下一节(内容是关于猫的),如果想理解相关技术,那请继续阅读。(当然,本节内容也是关于猫。)


如果你想在老式的符号化AI模型上生成一个“猫识别器”。那么首先,你必须花大量时间预先对机器详细明确地说明什么是“猫”。告诉机器,一只猫有四条腿、尖尖的的耳朵、晶须和尾巴等。机器将这些信息存储在内存中的“Cat”区域。接下来,提供一张图片,让机器判断是否是猫。判断过程中,首先,机器必须分离出图像中不同的元素;然后,利用内存中存储的规则处理这些元素。规则如下:如果(腿 = 4)且(耳朵 = 尖)且(胡须 = 有)且(尾巴 = 有)且(表情= 高傲),那么(猫 = 是)。但如果你提供一张苏格兰折耳猫的图片呢?我们符号化 AI模型就会根据“耳朵 != 尖”判断图片上不是猫。 这样的识别水平比蹒跚学步的小孩都差。


而现在,如果用神经网络做这个实验,就根本不需要通过一系列预先定义的规则进行判别,也根本不需要专门的空间来存储“猫”的信息,包含大量相互连接着的开关的大型blob会解决这一切。在blob的一端提供输入(待识别图像),另一端提供输出(标记信息)。然后,机器将自动化工作,通过不断调试相互连接的开关,最终将输入正确映射到对应的输出。训练过程就像是在迷宫中挖掘一系列隧道,隧道两端连接的是正确的输入和输出。可用的训练数据越多,挖掘的隧道数量和复杂性就越大。训练过程一旦完成,blob中有了足够多的隧道,神经网络就能稳定处理数据并作出可靠预测。这就是“监督学习(Supervised Learning)”。


神经网络之所以需要如此多的神经元和数据,因为它以一种类似民主的方式工作。例如,你想训练可识别五种类型物体的神经网络,它由数百万“选民”(神经元)组成,每位选民都有五张不同的卡片,分别是:猫、狗、蜘蛛猴、勺子、除颤器。拿出一张图片,问:“这是猫,狗,蜘蛛猴,勺子还是除颤器?”所有神经元分组进行投票,最终得票最多的作为最终结果:“一只狗?”


你告诉它:“不!是只猫。重新计算。”


然后,神经网络退回一步,确定哪些神经元投票“猫”,哪些不是。那些投票“猫”的神经元,下次如果还投“猫”,其权重加倍。除此之外,该神经网络也必须能准确判别其他物体类别,如狗和除颤器。而神经网络之所以如此灵活,是因为每个单独的个体针对不同的输出贡献的权重不一样。其实,最关键的不是个体投票,而是这种投票模式。如果Joe, Frank 和Mary一起投票,那就是一只狗;如果Joe, Kate和Jessica一起投票,那就是一只猫;而如果Kate, Jessica 和Frank一起投票,图片上就是一个除颤器。神经网络只需要注册大量可识别信号,这些信号表示:图片中该像素区域是“猫”。“选民”越多,投票次数就越多,微弱信号也越可能被注册。简单来说,就是如果只有Joe, Frank 和Mary三个选民,你可能仅限于区分猫、狗和除颤器;而如果有数百万选民,不同选民之间有数十亿连接,那么你就可以对数据精确分类。经过训练的“选民”组合甚至可以识别未标记图片(或许不那么精确)。


计算科学领域之所以不接受这些理念,部分原因在于机器的输出仅仅是基于模式的预测,它并不完美,而且机器永远无法确切地定义什么是“猫”。只有在看到猫的时候,机器才知道那是猫。神经元“选民”通过数百万张猫图像的训练,它们可以识别出在阳光下打盹的快乐小猫,和躲在垃圾箱阴影中的生气小猫。实际上,你需要大量的神经元“选民”和足够的已标记数据,前者用来确保神经网络可以捕捉到非常微弱的信号,如苏格兰折耳猫垂下的耳朵,后者用来尽可能确保神经网络已“见过”所有相似场景。


但是,需要注意的是,神经网络的输出结果具有概率性,这意味着它并不适用于所有任务。如果神经网路把猫误认为狗,或者偶尔推送了错误的电影,这都不是大事,但如果应用于无人驾驶,神经网络1%的失误率可能就酿成了悲剧。类似担忧还有很多。监督学习是基于已标记数据进行反复试验的过程。机器完成的只是学习过程,而人为因素仍然决定了最初对训练数据的分类。例如,训练数据中,图片上是一位男士和一位女士,某人将该图片标记为“一位女士和她的老板”,这种关系标记将影响所有后续的模式识别。因此,人类错误标记才会导致训练数据错误。机器可能通过重罪定罪数据,来确定信贷候选人贷款资格。但如果重罪定罪数据本身就是不公平的(如数据是基于歧视性禁毒法),那么机器输出的可贷款人名单也是不可靠的。


图像识别网络与我们的小猫识别器一样,也是深度学习的一种,但常常把它作为教学示例,因为人类可直观了解到图像识的具体过程:先找图像边缘,然后识别圆圈,接着识别脸。这意味着其中有错误保护措施。例如,早期,谷歌发现他们的图像识别软件无法单独识别出杠铃,哪怕用大规模运动器材图像集对其训练,结果也是一样。通过可视化工具观察发现,由于训练集中所有哑铃都是附在手臂上的,所以机器没有学习到“哑铃”的概念,而是“哑铃+手臂”的整体概念。改进一下,向训练集中加入单独的“杠铃”照片,问题就解决了。但并不是所有问题都这么容易。




4、猫识别论文


谷歌Brain部门在一到两年时间内,成功让机器具备了1岁小孩的智能。随后,该部门成功从谷歌X实验室“毕业”,并成为了更高级的研究机构。(谷歌X实验室负责人曾经指出,Brain取得的成就,让整个实验室的努力没有白费。)当时,谷歌Brain仍然只有10人不到,而对于未来,也只有一个模糊的概念。但即使在那时,他们都在积极思考接下来会发生什么。就像人一样,学会认识皮球后,我们会为之满足一段时间,但迟早,人类会产生关于皮球的问题。这就是语言产生的原因。


这一领域中,Brain迈出的第一步是发表了猫识别论文,正是这篇论文,Brain闻名世界。


这篇论文展示了一个具有超过十亿个“突触”连接的神经网络。虽然与人类大脑相比,它小了好几个数量级,但它比当时任何公开的神经网络都要大好几百倍。这个神经网络可以处理原始的、未标记数据,并识别高级的人类概念。谷歌Brain的研究人员向该神经网络展示了几百万的静态帧(来自YouTube视频),然后神经网络的感觉中枢开始运转,生成了一个稳定的模型。像小孩或花栗鼠一样聪明,该模型可以迅速识别出猫的脸。研究人员并没有预先向该神经网络输入关于“猫”概念,它直接与现实世界交互并获取“猫”这一定义。(研究人员发现,这一神经网络与核磁共振(M.R.I.)很相像,猫的脸部阴影会激发人工神经元“投票”的热情。)大多数机器学习都受限于已标记数据的数据量。但这篇论文却显示,该神经网络可以处理原始未标记数据,有时甚至是人类都还没建立起概念的数据。这不仅仅是猫识别研究的重大突破,更是整个人工智能的显著进步。


猫识别论文的第一作者是Quoc Le。Le个头不高,身形偏瘦,说话温和但语速很快,经常穿着闪亮的黑皮鞋,而且面带神秘的微笑。他在越南长大,父母都是农民,小时候家里甚至都没有电。他从小就表现出了过人的数学能力,后来,他就读于一所磁铁学校学习科学。上世纪90年代末,Le还在上学,那时候他就试图构建一个聊天机器人。他在想,这有多难呢?

“但实际上,”他告诉我,“非常不简单。”


毕业后,Le离开了越南,前往澳大利亚堪培拉的一所大学学习,主要研究机器视觉这类人工智能任务。当时人工智能的主要做法是,提前给机器灌输相关概念(如,边缘),这让他感觉像是在作弊。当时的Le不知道,全世界有很多计算机科学家和他的想法一样——机器可以从零开始学习。2006年,Le任职于德国的马克斯普朗克研究所生物控制部门。在当时的一个阅读小组中,他读到了Geoffrey Hinton写的两篇论文,他觉得自己豁然开朗。


“这两篇文章引起了争议,”他告诉我。“非常大的争议。”我们在一个小型内部会议室里,天花板又窄又高,屋子里有一张小桌子和两块白板。Le看了眼他画在背后白板上的曲线,又回过头来轻声地说,“我从没见到过这么大的争议”。


他记得,当时在阅读小组里站起来,然后说,“这就是未来。”但在当时,这是个不受欢迎的决定。Le在澳大利亚的导师不能完全理解他的想法,写邮件问到,“你为什么决定做这个?”


“那时,我想不到怎么回答这个问题,”Le说。“因为,我只是好奇。文章中提出了一个成功的范式,老实说,我只是对这个新范式感到好奇。那时还是2006年,这样的观点非常罕见。”然后,Le 加入了斯坦福的吴恩达团队,接着他开始沿着 Hinton 的道路探索。“到了2010年年底,我确信会有事情发生。”


不久之后,Le成为了Brain的首位实习生。在Brain,他继续着自己的论文工作,也就是后来发表的猫论文的前身。在一个简单层面上,Le只是想看看计算机能否被训练并自主识别给定图像中的绝对必要的信息。他向神经网络输入了一张YouTube上的静态图片。然后,指示神经网络丢弃一些信息,但并不说明哪些信息应该保留哪些应该丢弃。神经网络随机丢弃了一些信息。接着,Le又说:“刚刚是开玩笑的。现在基于你刚刚保留下来的信息,重新构建初始图像。”这种方式就像他先要求机器找到一种方式“总结”图像,然后,基于总结的信息回溯原始图像。如果总结的都是些不相关信息(如天空的颜色),而不是关键信息(如有没有胡须),计算机就无法有效重构原始图像。计算机的反应就像我们远古的祖先,他们在逃跑中建立起对剑齿虎的印象。而Le的神经网络与我们的祖先的方式不同,它需要不断地尝试。从数学角度来说,每次尝试后,它都选择不同的信息进行优化,而且表现地越来越好。然而,神经网络是个黑盒子,它确实生成了某种范式,但人类并不能直观地理解这些范式。


猫论文发表后,引起了极大凡响,而Le并未感觉到自己掌握了业界的话语权。但他强烈感觉到,应该继续自己早年聊天机器人的想法。发表了猫论文后,Le意识到,如果神经网络可以总结图片信息,那么它或许也可以总结语句信息。在接下来两年中,这一想法深深印在Le和Tomas Mikolov(Le在Brain的同事)的脑海中。


那段时间,Brain团队占据了好几个办公室,甚至一度占用了高管的地方。随后,他们收到了管理处的邮件,要求他们不要在Larry Page和Sergey Brin的 办公室门口的沙发上睡觉。后来,他们被安排到街对面的研究楼里工作,在那里,研究人员专心研究,而不必应付同事间礼貌而无效率的交谈。当然在这一过渡期,谷歌的竞争对手们也在奋力前行。(Le神情严肃地一遍一遍提及他与Tomas Mikolov的亲密合作。最后我忍不住问道,“他离开了?”Le点点头,回答道:“去了Facebook”。)

7.5_.jpg

上图:2012年的谷歌 Brain团队。他们发表了著名的“猫论文”,演示论文中的神经网络处理未标记数据。研究人员向该神经网络提供几百万的静态帧(来自YouTube视频),神经网络生成了一个稳定的模型并且识别出猫。


那段时间,他们极力想构造出不仅能执行简单的静态图片分类任务,也能处理复杂的任务(如自然语言或音乐)的神经网络架构。他们的许多观点在上世纪九十年代就出现了,Le和他的同事们专门回顾了那些被忽略的概念,希望能从中得到启发。他们知道,一旦建立了一个具有基本语言预测功能的模型,也就可以基于此完成各种其他类型智能任务,如预测电子邮件的合适回复或者预测谈话过程。你可以侧重于那些从表面看起来很像思维过程的任务。
 
 
来源:人工智能学家
 
 
 
 
 
 
更多内容请关注:www.imefuture.com
 
北京大数据产业投资基金正式发布 扎克伯格启用AI“管家
圣诞节太多小孩被机器人吸引
 
智造家
437 浏览

机器学习性能改善备忘单:32个帮你做出更好预测模型的技巧和窍门

机械自动化类 料盘挡板 2016-12-19 14:06 发表了文章 来自相关话题

机器学习最有价值(实际应用最广)的部分是预测性建模。也就是在历史数据上进行训练,在新数据上做出预测。 





而预测性建模的首要问题是:


如何才能得到更好的结果?

这个备忘单基于本人多年的实践,以及我对顶级机器学习专家和大赛优胜者的研究。

有了这份指南,你不但不会再掉进坑里,而且会提升性能,甚至在你自己的一些预测难题中取得世界领先水平的结果。


让我们一起来看看吧!








 ◆ ◆ ◆

概述


本备忘单的目的是为你提供一些提升机器学习性能的想法。要获得突破,你所需要的可能就是其中的一个。找到你要的那个,然后回来,再找下一个再提升。


我把这份清单分为4个子主题:
基于数据改善性能借助算法改善性能用算法调参改善性能借助模型融合改善性能


清单越往下,你获得的增益可能越小。比如,对问题场景重新设立框架或者更多的数据通常比对最好的算法进行调参得到收益要多。 


不总是这样,但通常如此。




◆ ◆ ◆

1.基于数据改善性能


改变你的训练集数据以及问题定义方式,你能够得到很大提升,也许是最大的提升。


策略:从新的、不同的角度透视你的数据,以便将潜藏的问题结构充分暴露给算法。



数据策略


获得更多的数据:你能够拿到更多或者更高质量的数据么?对现代非线性机器学习模型如深度学习而言,数据越多,改进越多。

创造更多数据:如果你不能拿到更多数据,那么,你能创造出新的数据么?也许你可以填充或者重新排列现有数据,或者利用概率模型来产生新的数据。

清洁你的数据。你能否改善数据中的信号?也许可以纠正或删除一些缺失或错误的观测值,或者在合理范围外的离群点,从而提升数据质量。

数据重新取样。你能否对数据重新取样,以改变其大小或者分布?也许你可以用一个小得多的数据来实验,以提高实验的速度;或对某个特殊类型的观察值进行过采样/欠采样以使得它们更好地代表整个数据集。

重新界定问题:你能否改变你正试图解决的问题类型?重构数据,如回归,二项或多项分类,时间序列,异常检测,评分,推荐等问题类型。

重新缩放数据。你能否对数值型变量进行缩放处理?输入数据的归一化和标准化处理可以提升使用加权或距离度量的算法性能。

转化数据。你能否改变数据的分布形态?使得数据更服从高斯分布,或进行指数变换可能会暴露出数据更多的特征供算法学习。

数据投影(映射):你能否将数据投影到一个更低维的空间?你可以用无监督的聚类或投影方法,创造一个新的压缩数据集代表。

特征选择。所有的输入变量是否同等重要?使用特征选择和衡量特征重要性的方法,可以创造出数据的新视角,供模型算法探索。

特征工程。 你能够创造或者增加新的特征?也许有的属性可以分解为多个新的值(比如类别,日期或字符串)或者属性可以聚集起来代表一个事件(如一个计数,二进制标志或统计信息)

上面这些工作的期待结果是:你应该得到数据集的一批新视角和新版本。




下一步:你可以用预测性模型算法评估它们每一个的价值。




◆ ◆ ◆

2.借助算法改善性能



机器学习无外乎算法。 

调整的策略:找出那些性能高于基线水平,比平均水平要好的算法和数据呈现方式。对结果保持怀疑态度,设计实验,使得它很难愚弄你。



算法策略


重采样方法。要用什么样的重采样方法来估计其在新数据上的能力?使用一种能够最好地利用现有数据的方法和参数设置。K折交叉验证法,利用其中的一折作为验证集可能是最佳操作。

评价指标。用什么样的指标来评价预测能力?选择能够最好地体现问题和专业需求的指标。不要任何问题一上来就看分类准确率。

基线性能。比较算法时,什么是基线性能?通过随机算法或零规则算法(预测均值或众数)来建立一个基线,并以此对所有算法进行排序。

抽检线性算法。什么样的线性算法能有好结果?线性方法通常更容易产生偏倚,也易于理解,能快速训练。如果能达到好效果,则更容易被选中。评估多个不同的线性方法。

抽检非线性算法。哪些非线性算法能有好结果?非线性算法通常要求更多数据,有更高的复杂性,但是能获得更好的性能。评估多个不同的非线性方法。

从文献中偷师学艺。哪些文献报导的方法能很好地解决你的问题?也许你能从算法类型或传统方法的延伸中获取解决自己问题的灵感。

标准参数设置。评估算法时,什么是标准的参数设置?每一个算法都有机会解决你的问题,这不是说在现有基础上死磕调参,而是说,每一种算法都需要把参数调好,才能在算法“大赛”中有胜出的机会。

上面这些工作的期待结果是:你应该会得到性能良好的候选算法和数据呈现候选方法清单(不太长的有限个方法)。



下一步:通过算法调参改善性能



◆ ◆ ◆

3.用算法调参改善性能



算法调参可能是你花时间最多的地方。它可能非常耗时间,从算法抽检中很快能挖掘出一两个性能不错的算法,而把这一两个算法的潜力充分挖掘出来可能需要好几天,几周甚至几个月的时间。


调整的策略:充分挖掘性能良好的算法的潜力。





调参策略


诊断。对算法要做哪些诊断和回顾?也许可以回顾一下学习曲线,了解目前模型的状态是过拟合还是欠拟合,然后纠正它。不同的算法可能提供不同的可视化结果和诊断。检视算法得到正确预测结果和错误预测结果的样本。

试试直觉。你的直觉是什么?如果你琢磨参数的时间足够长,而反馈回路又很短,那么你会得到怎么调参的直觉。试一试,看看你遇到更大的难题时能不能再得到新的参数设置灵感。

学习文献。文献中用到了哪些参数,范围是多少?评估标准参数性能是调参的良好开端。

随机搜索。哪些参数可以用随机搜索?也许你可使用算法超参数的随机搜索,来发现那些你永远也想不到的参数设置。

网格搜索。哪些参数可以使用网格搜索?也许有一些标准超参数网格值,你可以拿来赋值,从而发现好的参数设置,重复这一过程,不断精调网格。

最优化。那些参数可以优化?也许有一些参数,如结构或者学习率,可以用直接搜索程序(如模式搜索)或随机优化(如遗传算法)来调整。

交替实施。算法有哪些其他的实施?也许其中的一个交替实施方法可以在同样的数据上得到更好的结果。每个算法都有无数的微决定由算法的使用者做出,其中的一些可能会影响到问题的解决。

算法延伸。哪些是常见的算法延伸?也许你可以通过评估常见的或标准的算法延伸而提高性能。这可能需要一些实施工作。

算法定制。对你的个案而言,需要做哪些算法定制?也许你可以为你的数据修饰算法,从损失函数,内部优化方法到算法的具体决定。

联系专家。对你的个案,专家们有什么算法推荐?给一个或多个算法领域的学术界专家写封简单的邮件,概述你的预测问题,以及你已经做出的尝试。这可能会让你获悉前沿工作,或者学术界不为你所知的新想法。

上面这些工作的期待结果是:你应该可以得到一个很短的清单,上面是经过精调的算法。也许甚至只剩下一个。



下一步:到这一步,对剩下的一个或多个模型进行最后的收尾,做出预测或者投放到产品中。更进一步的性能提升可以通过多个模型的融合来达到。




◆ ◆ ◆

4. 借助模型融合改善性能



你可以组合多个模型的预测。在算法调参之后,这是下一个大的改善空间。实际上,组合多个“够用”的模型,而不是多个精调(同时也非常脆弱,可能严重overfitting)的模型通常可以达到很好的性能提升。


策略:组合多个性能良好的模型预测结果。



组装策略


混合模型预测结果。 你是否可以直接组合多个模型的预测结果?也许你可以使用同样的或不同的算法来搭建多个模型。对各自的预测结果取均值,或者众数。

混合数据呈现方式。你是否可以组合用不同数据呈现方法得到的模型预测结果?也许你使用了不同的问题投射方法,来训练性能良好的的算法,那么这些预测结果可以组合起来。

混合数据样本。你是否可以组合不同数据角度(特征)训练的模型?也许你可以创造训练样本的多个子样本来训练一个性能良好的算法,然后把结果组合起来。这叫做自助聚集(bootstrap aggregation)或者bagging,当各个模型的预测都很高明而方法各异(不相关)时,效果最好。

纠正预测。你是否可以纠正性能良好模型的预测?也许你可以明确地纠正预测结果,或者通过像boosting这样的方法来学习如何纠正预测错误。

学习组合。你能否使用新的模型,学习如何将多个性能良好的预测结果以最佳方式组合起来?这叫做堆栈(stacked generalization or stacking),当各子模型都很高明而方法各异时,通常能产生不错的结果,聚集模型就是各预测结果的简单加权线性模型。这个过程可以在多个层面上重复进行。

上面这些工作的期待结果是:你应该可以得到一个或多个性能良好的模型的组装结果,比任何单一模型的结果都好。



下一步:可以把一个或多个组装最后定下来,进行预测,投入产品中。




◆ ◆ ◆

结语


本备忘单密集打包了各种改善性能的想法。如果你觉得这里提到的要点太多,你不必样样都做。提升性能,你只需要一个好的想法。你可以依照下序的建议试试:


1.选择一个组 

a.数据
b.算法
c.调参
d.组装


2.从组中选择一个方法

3.从选择的方法中挑一个去试

4.比较结果,如果有改进则留下

5.重复上述过程
 
 
 
 
来源: 大数据文摘
智造家 查看全部
机器学习最有价值(实际应用最广)的部分是预测性建模。也就是在历史数据上进行训练,在新数据上做出预测。 

4.1_.jpg

而预测性建模的首要问题是:


如何才能得到更好的结果?

这个备忘单基于本人多年的实践,以及我对顶级机器学习专家和大赛优胜者的研究。

有了这份指南,你不但不会再掉进坑里,而且会提升性能,甚至在你自己的一些预测难题中取得世界领先水平的结果。


让我们一起来看看吧!


4.2_.jpg



 ◆ ◆ ◆

概述


本备忘单的目的是为你提供一些提升机器学习性能的想法。要获得突破,你所需要的可能就是其中的一个。找到你要的那个,然后回来,再找下一个再提升。


我把这份清单分为4个子主题:
  1. 基于数据改善性能
  2. 借助算法改善性能
  3. 用算法调参改善性能
  4. 借助模型融合改善性能



清单越往下,你获得的增益可能越小。比如,对问题场景重新设立框架或者更多的数据通常比对最好的算法进行调参得到收益要多。 


不总是这样,但通常如此。




◆ ◆ ◆

1.基于数据改善性能


改变你的训练集数据以及问题定义方式,你能够得到很大提升,也许是最大的提升。


策略:从新的、不同的角度透视你的数据,以便将潜藏的问题结构充分暴露给算法。



数据策略


获得更多的数据:你能够拿到更多或者更高质量的数据么?对现代非线性机器学习模型如深度学习而言,数据越多,改进越多。

创造更多数据:如果你不能拿到更多数据,那么,你能创造出新的数据么?也许你可以填充或者重新排列现有数据,或者利用概率模型来产生新的数据。

清洁你的数据。你能否改善数据中的信号?也许可以纠正或删除一些缺失或错误的观测值,或者在合理范围外的离群点,从而提升数据质量。

数据重新取样。你能否对数据重新取样,以改变其大小或者分布?也许你可以用一个小得多的数据来实验,以提高实验的速度;或对某个特殊类型的观察值进行过采样/欠采样以使得它们更好地代表整个数据集。

重新界定问题:你能否改变你正试图解决的问题类型?重构数据,如回归,二项或多项分类,时间序列,异常检测,评分,推荐等问题类型。

重新缩放数据。你能否对数值型变量进行缩放处理?输入数据的归一化和标准化处理可以提升使用加权或距离度量的算法性能。

转化数据。你能否改变数据的分布形态?使得数据更服从高斯分布,或进行指数变换可能会暴露出数据更多的特征供算法学习。

数据投影(映射):你能否将数据投影到一个更低维的空间?你可以用无监督的聚类或投影方法,创造一个新的压缩数据集代表。

特征选择。所有的输入变量是否同等重要?使用特征选择和衡量特征重要性的方法,可以创造出数据的新视角,供模型算法探索。

特征工程。 你能够创造或者增加新的特征?也许有的属性可以分解为多个新的值(比如类别,日期或字符串)或者属性可以聚集起来代表一个事件(如一个计数,二进制标志或统计信息)

上面这些工作的期待结果是:你应该得到数据集的一批新视角和新版本。




下一步:你可以用预测性模型算法评估它们每一个的价值。




◆ ◆ ◆

2.借助算法改善性能



机器学习无外乎算法。 

调整的策略:找出那些性能高于基线水平,比平均水平要好的算法和数据呈现方式。对结果保持怀疑态度,设计实验,使得它很难愚弄你。



算法策略


重采样方法。要用什么样的重采样方法来估计其在新数据上的能力?使用一种能够最好地利用现有数据的方法和参数设置。K折交叉验证法,利用其中的一折作为验证集可能是最佳操作。

评价指标。用什么样的指标来评价预测能力?选择能够最好地体现问题和专业需求的指标。不要任何问题一上来就看分类准确率。

基线性能。比较算法时,什么是基线性能?通过随机算法或零规则算法(预测均值或众数)来建立一个基线,并以此对所有算法进行排序。

抽检线性算法。什么样的线性算法能有好结果?线性方法通常更容易产生偏倚,也易于理解,能快速训练。如果能达到好效果,则更容易被选中。评估多个不同的线性方法。

抽检非线性算法。哪些非线性算法能有好结果?非线性算法通常要求更多数据,有更高的复杂性,但是能获得更好的性能。评估多个不同的非线性方法。

从文献中偷师学艺。哪些文献报导的方法能很好地解决你的问题?也许你能从算法类型或传统方法的延伸中获取解决自己问题的灵感。

标准参数设置。评估算法时,什么是标准的参数设置?每一个算法都有机会解决你的问题,这不是说在现有基础上死磕调参,而是说,每一种算法都需要把参数调好,才能在算法“大赛”中有胜出的机会。

上面这些工作的期待结果是:你应该会得到性能良好的候选算法和数据呈现候选方法清单(不太长的有限个方法)。



下一步:通过算法调参改善性能



◆ ◆ ◆

3.用算法调参改善性能



算法调参可能是你花时间最多的地方。它可能非常耗时间,从算法抽检中很快能挖掘出一两个性能不错的算法,而把这一两个算法的潜力充分挖掘出来可能需要好几天,几周甚至几个月的时间。


调整的策略:充分挖掘性能良好的算法的潜力。

4.3_.gif

调参策略


诊断。对算法要做哪些诊断和回顾?也许可以回顾一下学习曲线,了解目前模型的状态是过拟合还是欠拟合,然后纠正它。不同的算法可能提供不同的可视化结果和诊断。检视算法得到正确预测结果和错误预测结果的样本。

试试直觉。你的直觉是什么?如果你琢磨参数的时间足够长,而反馈回路又很短,那么你会得到怎么调参的直觉。试一试,看看你遇到更大的难题时能不能再得到新的参数设置灵感。

学习文献。文献中用到了哪些参数,范围是多少?评估标准参数性能是调参的良好开端。

随机搜索。哪些参数可以用随机搜索?也许你可使用算法超参数的随机搜索,来发现那些你永远也想不到的参数设置。

网格搜索。哪些参数可以使用网格搜索?也许有一些标准超参数网格值,你可以拿来赋值,从而发现好的参数设置,重复这一过程,不断精调网格。

最优化。那些参数可以优化?也许有一些参数,如结构或者学习率,可以用直接搜索程序(如模式搜索)或随机优化(如遗传算法)来调整。

交替实施。算法有哪些其他的实施?也许其中的一个交替实施方法可以在同样的数据上得到更好的结果。每个算法都有无数的微决定由算法的使用者做出,其中的一些可能会影响到问题的解决。

算法延伸。哪些是常见的算法延伸?也许你可以通过评估常见的或标准的算法延伸而提高性能。这可能需要一些实施工作。

算法定制。对你的个案而言,需要做哪些算法定制?也许你可以为你的数据修饰算法,从损失函数,内部优化方法到算法的具体决定。

联系专家。对你的个案,专家们有什么算法推荐?给一个或多个算法领域的学术界专家写封简单的邮件,概述你的预测问题,以及你已经做出的尝试。这可能会让你获悉前沿工作,或者学术界不为你所知的新想法。

上面这些工作的期待结果是:你应该可以得到一个很短的清单,上面是经过精调的算法。也许甚至只剩下一个。



下一步:到这一步,对剩下的一个或多个模型进行最后的收尾,做出预测或者投放到产品中。更进一步的性能提升可以通过多个模型的融合来达到。




◆ ◆ ◆

4. 借助模型融合改善性能



你可以组合多个模型的预测。在算法调参之后,这是下一个大的改善空间。实际上,组合多个“够用”的模型,而不是多个精调(同时也非常脆弱,可能严重overfitting)的模型通常可以达到很好的性能提升。


策略:组合多个性能良好的模型预测结果。



组装策略


混合模型预测结果。 你是否可以直接组合多个模型的预测结果?也许你可以使用同样的或不同的算法来搭建多个模型。对各自的预测结果取均值,或者众数。

混合数据呈现方式。你是否可以组合用不同数据呈现方法得到的模型预测结果?也许你使用了不同的问题投射方法,来训练性能良好的的算法,那么这些预测结果可以组合起来。

混合数据样本。你是否可以组合不同数据角度(特征)训练的模型?也许你可以创造训练样本的多个子样本来训练一个性能良好的算法,然后把结果组合起来。这叫做自助聚集(bootstrap aggregation)或者bagging,当各个模型的预测都很高明而方法各异(不相关)时,效果最好。

纠正预测。你是否可以纠正性能良好模型的预测?也许你可以明确地纠正预测结果,或者通过像boosting这样的方法来学习如何纠正预测错误。

学习组合。你能否使用新的模型,学习如何将多个性能良好的预测结果以最佳方式组合起来?这叫做堆栈(stacked generalization or stacking),当各子模型都很高明而方法各异时,通常能产生不错的结果,聚集模型就是各预测结果的简单加权线性模型。这个过程可以在多个层面上重复进行。

上面这些工作的期待结果是:你应该可以得到一个或多个性能良好的模型的组装结果,比任何单一模型的结果都好。



下一步:可以把一个或多个组装最后定下来,进行预测,投入产品中。




◆ ◆ ◆

结语


本备忘单密集打包了各种改善性能的想法。如果你觉得这里提到的要点太多,你不必样样都做。提升性能,你只需要一个好的想法。你可以依照下序的建议试试:


1.选择一个组 

a.数据
b.算法
c.调参
d.组装


2.从组中选择一个方法

3.从选择的方法中挑一个去试

4.比较结果,如果有改进则留下

5.重复上述过程
 
 
 
 
来源: 大数据文摘
智造家
412 浏览

人工智能竟然可以“做梦”

机械自动化类 机械设计 2016-11-30 10:13 发表了文章 来自相关话题

 
近几年来,随着神经科学的不断发展,人们对许多新奇的未知领域有了新的探索和发现。在神经科学领域,其中有一项不得不提的就是,科学家们经过不断的研究,最终发现了“梦境”对于人类的记忆巩固,有着尤为重要的作用。


如今,谷歌的人工智能公司DeepMind就研发了一项新的技术,他们能够让机器人来“做梦”,通过对梦境的创建,能够达到提高学习速度的目的。 

 
该项目的诞生其实并没有让人们大跌眼镜,因为早在几年前,在该项目推出之前,就有了相关的铺垫。起初,研发人员们对这些人工智能梦境的创建也是花了很多时间和功夫,他们引进了许多不同的素材,最初这些梦境中的内容还包括著名的雅利达视频游戏。
 

一提到谷歌的这家人工智能公司DeepMind,我们首先想到的是它强大的人工智能教导模式,他们还教过人工智能玩不同的经典视频游戏,并且让这些AI还都能玩的有模有样。这也是DeepMind公司取得的最令人称叹的成就。
 


然而如今我们所提到的,是让机器人能够做真实的“梦”,就像人类所做的正常的梦一样,通过对真实场景的分析,就能够产生相应的“记忆”和“思维”,从中我们也可以发现,在学习和记忆各样的信息时,真实世界的场景往往占据着重要的作用。
 

为了更好地了解机器人做梦的重要性,我们首先需要了解梦在哺乳型物种的头脑中是如何工作的,就好比说在人类的头脑中,梦是怎样形成的,跟头脑思维又有哪些联系。我们可以从神经科学的角度来更好地理解这个问题,而科学家们也在该领域有了很多的发现,其中在了解梦境在整个思维机制中所担当的角色时,科学家们最重大的一个发现是,梦的主要内容都是一些负面的信息,并且都带有恐吓性的倾向。


你可以尝试做一件事,就是连续一个月将你所做的梦纪录下来,你会很奇妙地发现你的梦大多数都是负面和惊恐的的一些情景。虽然也会有一些很美好的梦境,但是相比而言还是略少一些。从这个简单的一项发现中,我们可以推论,在梦境中,噩梦的出现是一种正常现象,而不是我们所理解的非正常情境,从古至今一直都是这样。
 

这些过度负面的梦境内容,从表面上来看似乎不存在任何的意义,也无法看出其中的端倪。但是如果从神经科学的角度来分析,就能够查验出其中许多有用的信息。在众多的神经科学理论当中,有一个十分突出的理论则说明,梦境实则是对最近现实生活中所发生的事件的一个突出和强化。
 

在梦境中所经历的负面和惊恐的状况,实际上可以帮助大脑更好地消化这些记忆信息,能够更加深化现实中的经历,从而可以让头脑更加深刻地记得这些信息。如今,DeepMind就是使用梦境的这些特点,在一场视频游戏中,对AI进行不断地训练,让它们不断地熟悉这些内容,从而可以加快人工智能学习的速率,提升学习效果。
 

那么,对于机器人而言,它们要面临的挑战有哪些呢?到目前为止,世界上最先进的AI的也只能从一些较复杂的视频游戏中获得小部分的经验和技巧,例如《星际争霸2》和《迷宫》。
 

因此在目前这些境况下,要设置出一个更加具有威胁恐惧性的情境,就需要额外考虑一些特别的因素,例如可以在这些游戏中加入“大BOSS”等角色,或者是设置一些迷宫和蛊惑人心的环节,让人工智能在这个过程中,要费尽心力与其争战,在这个过程中会充满各样的挑战。而不是仅仅设置一些毫无意义的环节,让整个游戏的气氛很缓和轻松,不具备任何的挑战。


“梦境”式的训练方法可以让人工智能着重游戏中的某些特定部分,尤其是那些具有挑战性的环节,在这个过程中它们需要反复不断地练习,反复总结经验,直到修炼出专业技能为止。使用这种技术,在DeepMind的研究人员能够帮助人工智能实现10倍的学习速率。
 

也许你会问,为什么这些AI的思维会在某些游戏中比创造它们的人类还要厉害呢?要搞清楚这一点,就必须对监管式学习与非监管式学习进行区分。迄今为止,获得突出表现的AI都是在使用监管式学习的模式,在该模式中,程序员会对系统提供许多对“训练数据”,然后AI会学习这些数据并进行检测。


这是训练教导机器人最简单的方式,但这种方法与人类的学习模式不一样。目前我们在开发一种非监管式的学习模式,诚寻远门不需要对该系统进行相关的数据训练,它们可以自行学习,自行决定,从而达到某个目标。


DeepMind的研发人员们更加看重这种无监管式的学习,因为在这种模式下,人工智能更有潜力创造出与人类相似的东西。因此,虽然机器人在未来是否真的能够通过“做梦”来实现更快速率的学习,依然还有许多不确定之处,但是人工智能不久之后能够对现实情境有更加清晰的理解。虽然目前这些都是一些尝试和推测,但是这些生动的想法和理念,将会在不久的将来成为推动人工智能发展的绝佳动力。
 
 
 
 
 
来源:1号机器人网
智造家

  查看全部
3.1_.jpg

 
近几年来,随着神经科学的不断发展,人们对许多新奇的未知领域有了新的探索和发现。在神经科学领域,其中有一项不得不提的就是,科学家们经过不断的研究,最终发现了“梦境”对于人类的记忆巩固,有着尤为重要的作用。


如今,谷歌的人工智能公司DeepMind就研发了一项新的技术,他们能够让机器人来“做梦”,通过对梦境的创建,能够达到提高学习速度的目的。 

 
该项目的诞生其实并没有让人们大跌眼镜,因为早在几年前,在该项目推出之前,就有了相关的铺垫。起初,研发人员们对这些人工智能梦境的创建也是花了很多时间和功夫,他们引进了许多不同的素材,最初这些梦境中的内容还包括著名的雅利达视频游戏。
 

一提到谷歌的这家人工智能公司DeepMind,我们首先想到的是它强大的人工智能教导模式,他们还教过人工智能玩不同的经典视频游戏,并且让这些AI还都能玩的有模有样。这也是DeepMind公司取得的最令人称叹的成就。
 


然而如今我们所提到的,是让机器人能够做真实的“梦”,就像人类所做的正常的梦一样,通过对真实场景的分析,就能够产生相应的“记忆”和“思维”,从中我们也可以发现,在学习和记忆各样的信息时,真实世界的场景往往占据着重要的作用。
 

为了更好地了解机器人做梦的重要性,我们首先需要了解梦在哺乳型物种的头脑中是如何工作的,就好比说在人类的头脑中,梦是怎样形成的,跟头脑思维又有哪些联系。我们可以从神经科学的角度来更好地理解这个问题,而科学家们也在该领域有了很多的发现,其中在了解梦境在整个思维机制中所担当的角色时,科学家们最重大的一个发现是,梦的主要内容都是一些负面的信息,并且都带有恐吓性的倾向。


你可以尝试做一件事,就是连续一个月将你所做的梦纪录下来,你会很奇妙地发现你的梦大多数都是负面和惊恐的的一些情景。虽然也会有一些很美好的梦境,但是相比而言还是略少一些。从这个简单的一项发现中,我们可以推论,在梦境中,噩梦的出现是一种正常现象,而不是我们所理解的非正常情境,从古至今一直都是这样。
 

这些过度负面的梦境内容,从表面上来看似乎不存在任何的意义,也无法看出其中的端倪。但是如果从神经科学的角度来分析,就能够查验出其中许多有用的信息。在众多的神经科学理论当中,有一个十分突出的理论则说明,梦境实则是对最近现实生活中所发生的事件的一个突出和强化。
 

在梦境中所经历的负面和惊恐的状况,实际上可以帮助大脑更好地消化这些记忆信息,能够更加深化现实中的经历,从而可以让头脑更加深刻地记得这些信息。如今,DeepMind就是使用梦境的这些特点,在一场视频游戏中,对AI进行不断地训练,让它们不断地熟悉这些内容,从而可以加快人工智能学习的速率,提升学习效果。
 

那么,对于机器人而言,它们要面临的挑战有哪些呢?到目前为止,世界上最先进的AI的也只能从一些较复杂的视频游戏中获得小部分的经验和技巧,例如《星际争霸2》和《迷宫》。
 

因此在目前这些境况下,要设置出一个更加具有威胁恐惧性的情境,就需要额外考虑一些特别的因素,例如可以在这些游戏中加入“大BOSS”等角色,或者是设置一些迷宫和蛊惑人心的环节,让人工智能在这个过程中,要费尽心力与其争战,在这个过程中会充满各样的挑战。而不是仅仅设置一些毫无意义的环节,让整个游戏的气氛很缓和轻松,不具备任何的挑战。


“梦境”式的训练方法可以让人工智能着重游戏中的某些特定部分,尤其是那些具有挑战性的环节,在这个过程中它们需要反复不断地练习,反复总结经验,直到修炼出专业技能为止。使用这种技术,在DeepMind的研究人员能够帮助人工智能实现10倍的学习速率。
 

也许你会问,为什么这些AI的思维会在某些游戏中比创造它们的人类还要厉害呢?要搞清楚这一点,就必须对监管式学习与非监管式学习进行区分。迄今为止,获得突出表现的AI都是在使用监管式学习的模式,在该模式中,程序员会对系统提供许多对“训练数据”,然后AI会学习这些数据并进行检测。


这是训练教导机器人最简单的方式,但这种方法与人类的学习模式不一样。目前我们在开发一种非监管式的学习模式,诚寻远门不需要对该系统进行相关的数据训练,它们可以自行学习,自行决定,从而达到某个目标。


DeepMind的研发人员们更加看重这种无监管式的学习,因为在这种模式下,人工智能更有潜力创造出与人类相似的东西。因此,虽然机器人在未来是否真的能够通过“做梦”来实现更快速率的学习,依然还有许多不确定之处,但是人工智能不久之后能够对现实情境有更加清晰的理解。虽然目前这些都是一些尝试和推测,但是这些生动的想法和理念,将会在不久的将来成为推动人工智能发展的绝佳动力。
 
 
 
 
 
来源:1号机器人网
智造家

 
416 浏览

谷歌宣布机器学习图像锐化工具RAISR

机械自动化类 扳手哥 2016-11-15 13:59 发表了文章 来自相关话题

在今天的 Google Research 博客中,谷歌介绍了一种能够从低分辨率图像中生成高质量图像的技术 RAISR。
 
 
每天网络上都会分享和存储数百万张图片,人们可以在这些照片中探索世界、研究有趣的新话题、甚至是与亲朋分享自己的假期生活。然而,很多图片会受到拍摄设备像素的限制,或者会因为手机、平板电脑 h 网络的问题而导致图像质量的下降。随着家用和移动设备上高分辨率显示器的普及,对低分辨率图像的高质量版本、快速查看以及可从多种设备分享的需求已得到了前所未有的提升。


在论文《RAISR: Rapid and Accurate Image Super-Resolution(快速准确的图像超分辨率)》中,我们介绍了一种结合了机器学习的技术,它能够生成低分辨率图像的高质量版本。RAISR 生成的效果可以比肩甚至优于现有的超分辨率方法,而且处理速度要快上 10 倍到 100 倍;同时,它还可以在典型的移动设备上实时运行。此外,我们的技术还能避免低分辨率图像中存在的重塑走样问题。


上采样是一种从低质量图片中生成尺寸更大、像素更多、质量更高的图像的过程,已经存在相当长的一段时间了。上采样中一些众所周知的方法是线性方法,它通过使用附近现有像素值的简单固定组合来填充新的像素值。这些方法很快,因为它们是固定的线性过滤器(一个均匀应用于图像的恒定卷积核)。但是这种让上采样快速运行的原因也是让使得它们不能有效地在更高分辨率的结果中给出更生动的细节。在下面的例子中可以看到,上采样的图像看上去比较模糊,你很难说这样的图像是被增强过的。





左图:低分辨率原图,右图:简单的(双三次)上采样版本(2×)


有了 RAISR 之后,我们就可以使用机器学习,并且可在图像对上进行训练了,一个低质量,一个高质量,然后你会发现,当它可选择地应用在低分辨率图像的每个像素上时,它会重塑出与原图质量相当的细节。RAISR 可以用两种方法训练。第一种是「直接」的方法,其中过滤器是直接从低和高分辨率的图像对中被学习。另一种方法需要首先将一个低计算成本的升频器应用到低分辨率的图像上(如上图)然后从上采样和高分辨率的图像对中学习过滤器。虽然直接的方法计算的更快,但是第二种方法允许非整数比例系数(non-integer scale factors),同时能更好的利用基于硬件的上采样。


对于这两种方法,RAISR 过滤器都可以根据在图像块中找到的边特征(edge feature)来获得训练——即亮度/颜色梯度、平坦/有纹理的区域等等——其特征的确定是通过方向(direction,即一个边的角度)、强度(strength,锐利的边有更大的强度)和相干度(coherence,一种对边的状态的度量)。下面是一组 RAISR 过滤器,它们是从 10,000 对高和低分辨率图像对的数据集中学习到的(其中低分辨率图像首先会被上采样)。其训练过程大概用去了一个小时。





合并为 3 倍超分辨率图像学习的 11×11 过滤器。这些过滤器可以为超分辨率系数,包括分级系数。其中,当边缘角度改变时,我们看到过滤器的角度也随之旋转。同样的,随着强度增加,过滤器的锐度也随之增加,同时过滤器的各向异性也随着相干性的增加而增加。


从左到右,我们看到学习过滤器选择性地对应正在重建的下边缘方向。例如:底部行中间的过滤器最适合保持强水平边缘(梯度角 90°)同时具有高度相干性(一条直的,而不是弯曲的边缘)如果这条相同的水平边缘是低对比度的,则顶行中会有另一个过滤器被选中。


在实践中,运行时(at run-time)RAISR 会选择并应用学习到的过滤器中与低分辨率图像中每个相邻像素最相关的过滤器。当这些过滤器被应用于低品质的图像时,它们会重建具有原始高分辨率的的质量细节,对线性,双三次或 Lanczos 插值法等方式有显著的性能提升。





上图:RAISR 算法运行时,应用于低功耗的高效输出。下图:低分辨率原图(左),双三次上采样器 2×(中),RAISR 输出(右)。


一些 RAISR 应用的实例:





上图:原图像,下图:RAISR 超分辨率 2×





左图:原图,右图:RAISR 超分辨率 3×


超分辨率方式的复杂之处在于消除混叠效应,如在较低分辨率渲染高频内容时出现的轮廓图案和锯齿(有时图像会被刻意降低分辨率)。根据底层特性的形状,这些伪像(artifacts)变化复杂,还难以被还原。





图中右下是低光条件下的混叠效应的一个实例


线性方法不能修复底层结构,但是 RAISR 能够做到。下面就是一个例子,左边低分辨的原图在数字 3 和 5 下出现了明显的混淆空间频率(aliased spatial frequencies),而右边的 RAISR 图像修复了原始结构。RAISR 使用的这种过滤器学习方法的另外一个重要好处就是让其拥有专门化的降噪能力,即移除在其训练过程中针对单个压缩算法(例如 JPEG)的压缩失真(compression artifacts)。通过提供这样的人工样本,RAISR 能够学习消减除分辨率增强外的其他影响,就像在结果过滤器中调制一样。





左侧:有很强的混淆现象的低分辨率原图。右侧:RAISR 输出,消除了混淆现象


使用一个或多个画面的超分辨率技术,已经取得了很大的进展。如今,机器学习的使用串联了已经发展了数十年的图像技术,在图像处理方面取得了很大的进展并产出许多潜在的价值。例如,除了提升你在手机上双指放缩图像的质量外,你还可以捕捉、保存或者传输低分辨率图像并按照自己的需求超分辨这些图像,在质量上没有视觉上的降低。而且除了没有明显的质量损失,它也利用了更少的移动数据与储存方案。


下面是对该论文的摘要介绍:
 
论文:RAISR:快速且准确的图像超分辨率(RAISR: Rapid and Accurate Image Super Resolution)






给定一张图像,我们希望能得到一张其对应的更大尺寸、有显著更多像素、更高图像质量的版本。这个问题通常被称为单图像超像素问题(Single Image Super-Resolution (SISR) problem)。其思路是:使用足够多的训练数据(对应的低分辨率和高分辨率图像对),我们就可以训练出一组过滤器(filter,即一种映射),当我们将其应用于一张非训练集的图像时,它就能产生一张该图像的更高分辨率的版本,其中的学习(learning)部分最好应选择低复杂度(low complexity)的。在我们提出的方法中,运行时间(run-time)比目前可用的最佳竞争方法快 1 到 2 个数量级,同时我们的方法还能得到可与当前最佳结果媲美甚至更好的结果。


一个与上述问题紧密相关的主题是图像锐化(image sharpening)和对比度增强(contrast enhancement),即通过增强基本的细节(一个大范围的频率)来提升模糊图像的视觉质量。我们的方法还额外包含了一种极其有效的用来生成比输入模糊图像显著更加锐利的图像的方式,且不需要引入晕圈(halo)和噪声放大(noise amplification)。我们还阐释了:除了单纯的兴趣之外,这种有效的锐化算法还可被用作一种预处理步骤,可用于产生带有内置锐化和对比度增强效果的更有效的放大过滤器(upscaling filter)。





本文由机器之心编译
智造家提供 查看全部
在今天的 Google Research 博客中,谷歌介绍了一种能够从低分辨率图像中生成高质量图像的技术 RAISR。
 
 
每天网络上都会分享和存储数百万张图片,人们可以在这些照片中探索世界、研究有趣的新话题、甚至是与亲朋分享自己的假期生活。然而,很多图片会受到拍摄设备像素的限制,或者会因为手机、平板电脑 h 网络的问题而导致图像质量的下降。随着家用和移动设备上高分辨率显示器的普及,对低分辨率图像的高质量版本、快速查看以及可从多种设备分享的需求已得到了前所未有的提升。


在论文《RAISR: Rapid and Accurate Image Super-Resolution(快速准确的图像超分辨率)》中,我们介绍了一种结合了机器学习的技术,它能够生成低分辨率图像的高质量版本。RAISR 生成的效果可以比肩甚至优于现有的超分辨率方法,而且处理速度要快上 10 倍到 100 倍;同时,它还可以在典型的移动设备上实时运行。此外,我们的技术还能避免低分辨率图像中存在的重塑走样问题。


上采样是一种从低质量图片中生成尺寸更大、像素更多、质量更高的图像的过程,已经存在相当长的一段时间了。上采样中一些众所周知的方法是线性方法,它通过使用附近现有像素值的简单固定组合来填充新的像素值。这些方法很快,因为它们是固定的线性过滤器(一个均匀应用于图像的恒定卷积核)。但是这种让上采样快速运行的原因也是让使得它们不能有效地在更高分辨率的结果中给出更生动的细节。在下面的例子中可以看到,上采样的图像看上去比较模糊,你很难说这样的图像是被增强过的。

3.1_.jpg

左图:低分辨率原图,右图:简单的(双三次)上采样版本(2×)


有了 RAISR 之后,我们就可以使用机器学习,并且可在图像对上进行训练了,一个低质量,一个高质量,然后你会发现,当它可选择地应用在低分辨率图像的每个像素上时,它会重塑出与原图质量相当的细节。RAISR 可以用两种方法训练。第一种是「直接」的方法,其中过滤器是直接从低和高分辨率的图像对中被学习。另一种方法需要首先将一个低计算成本的升频器应用到低分辨率的图像上(如上图)然后从上采样和高分辨率的图像对中学习过滤器。虽然直接的方法计算的更快,但是第二种方法允许非整数比例系数(non-integer scale factors),同时能更好的利用基于硬件的上采样。


对于这两种方法,RAISR 过滤器都可以根据在图像块中找到的边特征(edge feature)来获得训练——即亮度/颜色梯度、平坦/有纹理的区域等等——其特征的确定是通过方向(direction,即一个边的角度)、强度(strength,锐利的边有更大的强度)和相干度(coherence,一种对边的状态的度量)。下面是一组 RAISR 过滤器,它们是从 10,000 对高和低分辨率图像对的数据集中学习到的(其中低分辨率图像首先会被上采样)。其训练过程大概用去了一个小时。

3.2_.jpg

合并为 3 倍超分辨率图像学习的 11×11 过滤器。这些过滤器可以为超分辨率系数,包括分级系数。其中,当边缘角度改变时,我们看到过滤器的角度也随之旋转。同样的,随着强度增加,过滤器的锐度也随之增加,同时过滤器的各向异性也随着相干性的增加而增加。


从左到右,我们看到学习过滤器选择性地对应正在重建的下边缘方向。例如:底部行中间的过滤器最适合保持强水平边缘(梯度角 90°)同时具有高度相干性(一条直的,而不是弯曲的边缘)如果这条相同的水平边缘是低对比度的,则顶行中会有另一个过滤器被选中。


在实践中,运行时(at run-time)RAISR 会选择并应用学习到的过滤器中与低分辨率图像中每个相邻像素最相关的过滤器。当这些过滤器被应用于低品质的图像时,它们会重建具有原始高分辨率的的质量细节,对线性,双三次或 Lanczos 插值法等方式有显著的性能提升。

3.3_.jpg

上图:RAISR 算法运行时,应用于低功耗的高效输出。下图:低分辨率原图(左),双三次上采样器 2×(中),RAISR 输出(右)。


一些 RAISR 应用的实例:

3.4_.jpg

上图:原图像,下图:RAISR 超分辨率 2×

3.5_.jpg

左图:原图,右图:RAISR 超分辨率 3×


超分辨率方式的复杂之处在于消除混叠效应,如在较低分辨率渲染高频内容时出现的轮廓图案和锯齿(有时图像会被刻意降低分辨率)。根据底层特性的形状,这些伪像(artifacts)变化复杂,还难以被还原。

3.6_.JPG

图中右下是低光条件下的混叠效应的一个实例


线性方法不能修复底层结构,但是 RAISR 能够做到。下面就是一个例子,左边低分辨的原图在数字 3 和 5 下出现了明显的混淆空间频率(aliased spatial frequencies),而右边的 RAISR 图像修复了原始结构。RAISR 使用的这种过滤器学习方法的另外一个重要好处就是让其拥有专门化的降噪能力,即移除在其训练过程中针对单个压缩算法(例如 JPEG)的压缩失真(compression artifacts)。通过提供这样的人工样本,RAISR 能够学习消减除分辨率增强外的其他影响,就像在结果过滤器中调制一样。

3.7_.jpg

左侧:有很强的混淆现象的低分辨率原图。右侧:RAISR 输出,消除了混淆现象


使用一个或多个画面的超分辨率技术,已经取得了很大的进展。如今,机器学习的使用串联了已经发展了数十年的图像技术,在图像处理方面取得了很大的进展并产出许多潜在的价值。例如,除了提升你在手机上双指放缩图像的质量外,你还可以捕捉、保存或者传输低分辨率图像并按照自己的需求超分辨这些图像,在质量上没有视觉上的降低。而且除了没有明显的质量损失,它也利用了更少的移动数据与储存方案。


下面是对该论文的摘要介绍:
 
  • 论文:RAISR:快速且准确的图像超分辨率(RAISR: Rapid and Accurate Image Super Resolution)


3.7_.jpg


给定一张图像,我们希望能得到一张其对应的更大尺寸、有显著更多像素、更高图像质量的版本。这个问题通常被称为单图像超像素问题(Single Image Super-Resolution (SISR) problem)。其思路是:使用足够多的训练数据(对应的低分辨率和高分辨率图像对),我们就可以训练出一组过滤器(filter,即一种映射),当我们将其应用于一张非训练集的图像时,它就能产生一张该图像的更高分辨率的版本,其中的学习(learning)部分最好应选择低复杂度(low complexity)的。在我们提出的方法中,运行时间(run-time)比目前可用的最佳竞争方法快 1 到 2 个数量级,同时我们的方法还能得到可与当前最佳结果媲美甚至更好的结果。


一个与上述问题紧密相关的主题是图像锐化(image sharpening)和对比度增强(contrast enhancement),即通过增强基本的细节(一个大范围的频率)来提升模糊图像的视觉质量。我们的方法还额外包含了一种极其有效的用来生成比输入模糊图像显著更加锐利的图像的方式,且不需要引入晕圈(halo)和噪声放大(noise amplification)。我们还阐释了:除了单纯的兴趣之外,这种有效的锐化算法还可被用作一种预处理步骤,可用于产生带有内置锐化和对比度增强效果的更有效的放大过滤器(upscaling filter)。





本文由机器之心编译
智造家提供
470 浏览

Facebook贾扬清宣布新机器学习系统Caffe2Go:可在移动设备上实现实时风格迁移

机械自动化类 扳手哥 2016-11-09 13:10 发表了文章 来自相关话题

   风格迁移一直是机器学习领域内的一项重要任务,很多研究机构和研究者都在努力打造速度更快、计算成本更低的风格迁移机器学习系统,比如《怎么让你的照片带上艺术大师风格?李飞飞团队开源快速神经网络风格迁移代码 》、《谷歌增强型风格迁移新算法:实现基于单个网络的多种风格实时迁移 》。
 
今天,Facebook 又在其官方博客上宣布了一种可以用在移动设备实现实时风格的深度学习系统 Caffe2Go,自称能在眨眼之间完成处理的任务,而且还能实现高质量的视频风格迁移。Facebook 还表示该项目将会在未来几个月内进行部分开源。


   随着视频通话逐渐成为人们交流的主要方式,Facebook 希望创造最新的视频创意工具来帮助人们表达自我。最近,他们在手机 app 中测试了新的相机应用,实时在视频中添加艺术元素。这项技术被称为「风格转换」。它可以将一张图片中的艺术风格,例如梵高的画作,加入普通的图片或视频中去。这是以往技术上难以实现的事,通常这需要将参考图和要处理的数据发送到数据中心,通过大型服务器进行处理。
 
Facebook 最新开发的移动端深度学习平台第一次摆脱了信号塔的束缚,可以实时捕捉、分析和处理图像,将最新技术放进人们的手中。这一新程序被称为 Caffe2Go,是一个完整的深度学习系统,它的架构已经嵌入手机 app 中。通过将处理图片和视频的人工智能模型压缩至百分之一大小,Facebook 现在已经可以在 iOS 和安卓系统中高效运行深度学习网络。最终,Facebook 公司的应用可以在部分手机中以不到 50 毫秒的速度完成人工智能任务的处理,而人眨眼需要的时间大约需要 300 毫秒。




相机风格转换工具是两种技术的结合:Caffe2Go 运行环境与风格转换模型。Facebook 的人工智能团队一直在处理算法与大规模系统,他们一直在致力于开发新模型,让风格转换更加快速稳定。于是,现在你拿起手机,开始摄像,梵高的绘画风格变得无处不在了。


Caffe2Go 项目在三个月前开始,目前没有其他公司的产品能够做到这样的效果:让人工智能风格转换变成创作工具。不仅如此,Facebook 做到了更多,他们让这种应用可以在手机中实时处理图像。该项目的研究者跨越产品、技术和研究者。FAIR 团队的 Justin Johnson 是一篇描述该项目技术基础论文(Perceptual Losses for Real-Time Style Transfer and Super-Resolution (https://arxiv.org/abs/1603.08155))的作者,他们在前人的努力基础之上开发了新的技术;应用机器学习团队则通过努力将 AI 引擎塞进手机设备中;相机团队负责满足用户需求;正是因为所有人的努力,这些团队构建了运行在移动设备上的高效神经网络。我们将解释如何思考和开发这一应用技术的,从 Caffe2Go 开始。



Caffe2Go

轻量快速

人工智能对计算机科学产生了深远的影响,但它的应用一直被局限在大型数据中心里,距离普通用户存在很长一段距离。大多数时候,人工智能「实时处理」应用将数据发送到远端数据中心,通过那里的 GPU 来处理,物理距离造成了不可避免的延迟。我们认为使用超级计算机进行实时处理是不实际的,于是我们转换思路,努力让人工智能在移动设备的 CPU 中运行。





没人想拖着一台超级计算机出门

手机可以拍照,通话,也可以实时理解用户所需,不需要连接远端服务器,但它们的性能有限。尽管近年来硬件设备的发展让移动设备的计算能力有了很大改进,手机 CPU 现在已经可以在一秒钟内进行数十亿次运算,但智能软件在设计中还要面对诸如功率,存储器和计算能力的各种资源限制。因此,移动设备环境对机器学习系统提出了机遇和挑战。

面对这些挑战,我们的解决方案是设计超轻量级模块化框架。为此,我们以开源的 Caffe2 项目为基础,遵循 Unix 理念开发了 Caffe2Go。我们确保了用于声明和连接组件的核心架构的轻量化,允许多种组件与其连接——包括对于移动设备的专用优化。我们保留了一个精巧的算法框架,允许工程人员将抽象概念描述成有向无环图(DAG),同时确保没有约束被强加在图中执行节点的输入和输出上。这允许我们的工程团队能够在不同平台上实现和优化模块,同时可以轻松地连接各种模块。当图像实时输入时,通过硬件功能进行自我实例化可以达到最大处理速度。

速度是计算密集型移动应用的关键,特别是对于图像和视频处理而言,框架的轻量级设计允许我们为特定的运算符执行平台进行特定的优化。NNPack 库是其中一个例子,Caffe2 集成在移动运行环境中时,通过使用移动 CPU 中被称为 NEON 的功能,可以显著提高运算速度。在 iOS 设备上,我们也正在着手集成加速功能如 Metal 语言。所有这些都是通过模块化设计完成的,无需改变一般模型定义。因此,算法端和运行环境可以互相依靠,不必担心兼容性的问题。


面向开发者

Caffe2 是我们的第一个产业级深度学习平台,它可以在服务器 CPU、GPU、iOS 和安卓四种平台上运行,使用同一种代码。因为我们的模块化设计,这种架构在不同平台上都使用同一种语言,但对每个平台都有优化。这是一个开发人员不必担心的细节;例如,可以在移动端 NNPack(iOS 和安卓)和服务器 GPU 的 CUDNN 中进行选择。在 Caffe2 中,算法开发者可以专注于算法,无需考虑如何运行卷积。

快速的部署设计也能使开发者受益。从开发者的角度看,调试移动设备的运行时间可能是一项挑战,因为移动端工具链(toolchain)并不如桌面的和服务器的工具链那么先进。我们通过从硬件上抽象神经网络的数学而解决了这个问题——一个 Caffe2go 中的串行化网络(serialized network)在被应用于移动手机和服务器时可以得到相同的数值输出。其结果是,我们可以将大部分工作(模型训练、性能评估、用户体验研究)移动到服务器环境中进行;当结果看起来不错了之后,就可以实现在移动环境中的一键式部署了。


训练风格迁移模型

风格迁移(style transfer)并不是什么新概念。它最早是由研究人员在发表于 2015 年 8 月的一篇题为《A Neural Algorithm for Artistic Style》的论文中引入的。但是,当时这项技术的速度还很慢,而且需要强大的服务器。后面的几个月,研究社区改进了这项技术,将其速度提升了几个数量级,但也还是需要依赖服务器上的大量计算能力。

Caffe2go 成功使人工智能实现了高速处理,并且可以集成到你手上的移动设备中。但该风格迁移模型仍然还需要优化,这样才能在确保实时体验的同时还能保证得到高质量、高分辨率的图像。


优化成有效的模型大小

传统的风格迁移研究得到的模型(甚至只是前馈变量)是很大(在参数的数量方面)很慢的。我们的目标是创造能够运行新的、更小的、更高效的模型的风格迁移应用——能够在 iPhone 6s 或以上的手机上不掉帧地提供 20 FPS 的高质量视频。

为了减小该模型的尺寸,我们应用了 3 种主要的方法:优化了卷积层的数量(这是处理中最耗时间的部分)、优化了每一层的宽度、以及调整了处理过程中的空间分辨率(spatial resolution)。卷积层的数量和宽度是可用于调整处理时间的单独指标——即调整图像有哪些方面需要处理,或调整一个单独的处理过程需要多少时间。对于空间分辨率,我们可以调整中间层中图像实际被处理的大小。通过较早地使用池化(pooling,缩小正被处理的图像的大小),我们可以加速处理时间,因为系统不再需要处理那么多的数据了。我们还发现,使用这些技术,我们可以极大地减少该网络的宽度和深度,同时还能保持合理的质量。


提升质量

图像质量是主观的,非常难以测量——尤其是对于风格迁移这样的东西。因此我们打造了一些可视化工具,其中包括 A/B tests;并训练了不同的模型以确保我们可以得到最高质量的图像结果。我们的大型 GPU 集群由 FBLearner Flow 驱动,让我们可以快速扫描大范围的超参数(比如模型架构、内容/风格权重、和下采样),从而找到满足我们的性能目标同时能保持和提升质量的训练良好的前向风格(feedforward style)。

在提升质量方面还有很多其它的技巧——比如,应用实例规范化(instance normalizatio)而不是常用的批规范化(batch normalization)能有助于多种风格,同样避免卷积层中的零填充(zero padding)可以减少伪像,也可以将不同的预处理或后处理过滤器应用到风格或内容图像上。但在我们的测试中,我们发现这些方法往往在一些风格上效果良好,在另一些风格上则效果不佳。

凭借在这项风格迁移技术上的速度和质量优化,使用 Caffe 2 框架,我们就可以将一种实时图像处理系统应用到移动设备上。


展望下一步

Caffe2go,加上 Torch 这样的研究工具链,是 Facebook 的机器学习产品的核心。因为其在大小、速度和灵活性上的优势,我们正在将 Caffe2go 推广到整个 Facebook 的 stack 中。

我们还在致力于和社区分享我们的软件和设计,从而让我们可以学习更好地利用多种硬件平台和算法设计的特性,这在跨平台机器学习系统中是尤其重要的。在未来的几个月,我们将会部分开源该人工智能框架。

随着我们的进步,你可以想象出设备上实时运行的人工智能可以如何帮助世界更加开放、人们更加互连。我们手中的智能设备将继续颠覆我们对「智能(intelligence)」的认知方式。有了像 Caffe2go 这样精巧的机器学习系统,我们将致力于为人们带来更赞的人工智能和增强现实体验——让你在拍视频的时候,设备里还有一把梵高的画刷。
 
 
 
 
 
 
转载:机器之心
智造家提供 查看全部
   风格迁移一直是机器学习领域内的一项重要任务,很多研究机构和研究者都在努力打造速度更快、计算成本更低的风格迁移机器学习系统,比如《怎么让你的照片带上艺术大师风格?李飞飞团队开源快速神经网络风格迁移代码 》、《谷歌增强型风格迁移新算法:实现基于单个网络的多种风格实时迁移 》。
 
今天,Facebook 又在其官方博客上宣布了一种可以用在移动设备实现实时风格的深度学习系统 Caffe2Go,自称能在眨眼之间完成处理的任务,而且还能实现高质量的视频风格迁移。Facebook 还表示该项目将会在未来几个月内进行部分开源。


   随着视频通话逐渐成为人们交流的主要方式,Facebook 希望创造最新的视频创意工具来帮助人们表达自我。最近,他们在手机 app 中测试了新的相机应用,实时在视频中添加艺术元素。这项技术被称为「风格转换」。它可以将一张图片中的艺术风格,例如梵高的画作,加入普通的图片或视频中去。这是以往技术上难以实现的事,通常这需要将参考图和要处理的数据发送到数据中心,通过大型服务器进行处理。
 
Facebook 最新开发的移动端深度学习平台第一次摆脱了信号塔的束缚,可以实时捕捉、分析和处理图像,将最新技术放进人们的手中。这一新程序被称为 Caffe2Go,是一个完整的深度学习系统,它的架构已经嵌入手机 app 中。通过将处理图片和视频的人工智能模型压缩至百分之一大小,Facebook 现在已经可以在 iOS 和安卓系统中高效运行深度学习网络。最终,Facebook 公司的应用可以在部分手机中以不到 50 毫秒的速度完成人工智能任务的处理,而人眨眼需要的时间大约需要 300 毫秒。




相机风格转换工具是两种技术的结合:Caffe2Go 运行环境与风格转换模型。Facebook 的人工智能团队一直在处理算法与大规模系统,他们一直在致力于开发新模型,让风格转换更加快速稳定。于是,现在你拿起手机,开始摄像,梵高的绘画风格变得无处不在了。


Caffe2Go 项目在三个月前开始,目前没有其他公司的产品能够做到这样的效果:让人工智能风格转换变成创作工具。不仅如此,Facebook 做到了更多,他们让这种应用可以在手机中实时处理图像。该项目的研究者跨越产品、技术和研究者。FAIR 团队的 Justin Johnson 是一篇描述该项目技术基础论文(Perceptual Losses for Real-Time Style Transfer and Super-Resolution (https://arxiv.org/abs/1603.08155))的作者,他们在前人的努力基础之上开发了新的技术;应用机器学习团队则通过努力将 AI 引擎塞进手机设备中;相机团队负责满足用户需求;正是因为所有人的努力,这些团队构建了运行在移动设备上的高效神经网络。我们将解释如何思考和开发这一应用技术的,从 Caffe2Go 开始。



Caffe2Go

轻量快速

人工智能对计算机科学产生了深远的影响,但它的应用一直被局限在大型数据中心里,距离普通用户存在很长一段距离。大多数时候,人工智能「实时处理」应用将数据发送到远端数据中心,通过那里的 GPU 来处理,物理距离造成了不可避免的延迟。我们认为使用超级计算机进行实时处理是不实际的,于是我们转换思路,努力让人工智能在移动设备的 CPU 中运行。

5.1_.jpg

没人想拖着一台超级计算机出门

手机可以拍照,通话,也可以实时理解用户所需,不需要连接远端服务器,但它们的性能有限。尽管近年来硬件设备的发展让移动设备的计算能力有了很大改进,手机 CPU 现在已经可以在一秒钟内进行数十亿次运算,但智能软件在设计中还要面对诸如功率,存储器和计算能力的各种资源限制。因此,移动设备环境对机器学习系统提出了机遇和挑战。

面对这些挑战,我们的解决方案是设计超轻量级模块化框架。为此,我们以开源的 Caffe2 项目为基础,遵循 Unix 理念开发了 Caffe2Go。我们确保了用于声明和连接组件的核心架构的轻量化,允许多种组件与其连接——包括对于移动设备的专用优化。我们保留了一个精巧的算法框架,允许工程人员将抽象概念描述成有向无环图(DAG),同时确保没有约束被强加在图中执行节点的输入和输出上。这允许我们的工程团队能够在不同平台上实现和优化模块,同时可以轻松地连接各种模块。当图像实时输入时,通过硬件功能进行自我实例化可以达到最大处理速度。

速度是计算密集型移动应用的关键,特别是对于图像和视频处理而言,框架的轻量级设计允许我们为特定的运算符执行平台进行特定的优化。NNPack 库是其中一个例子,Caffe2 集成在移动运行环境中时,通过使用移动 CPU 中被称为 NEON 的功能,可以显著提高运算速度。在 iOS 设备上,我们也正在着手集成加速功能如 Metal 语言。所有这些都是通过模块化设计完成的,无需改变一般模型定义。因此,算法端和运行环境可以互相依靠,不必担心兼容性的问题。


面向开发者

Caffe2 是我们的第一个产业级深度学习平台,它可以在服务器 CPU、GPU、iOS 和安卓四种平台上运行,使用同一种代码。因为我们的模块化设计,这种架构在不同平台上都使用同一种语言,但对每个平台都有优化。这是一个开发人员不必担心的细节;例如,可以在移动端 NNPack(iOS 和安卓)和服务器 GPU 的 CUDNN 中进行选择。在 Caffe2 中,算法开发者可以专注于算法,无需考虑如何运行卷积。

快速的部署设计也能使开发者受益。从开发者的角度看,调试移动设备的运行时间可能是一项挑战,因为移动端工具链(toolchain)并不如桌面的和服务器的工具链那么先进。我们通过从硬件上抽象神经网络的数学而解决了这个问题——一个 Caffe2go 中的串行化网络(serialized network)在被应用于移动手机和服务器时可以得到相同的数值输出。其结果是,我们可以将大部分工作(模型训练、性能评估、用户体验研究)移动到服务器环境中进行;当结果看起来不错了之后,就可以实现在移动环境中的一键式部署了。


训练风格迁移模型

风格迁移(style transfer)并不是什么新概念。它最早是由研究人员在发表于 2015 年 8 月的一篇题为《A Neural Algorithm for Artistic Style》的论文中引入的。但是,当时这项技术的速度还很慢,而且需要强大的服务器。后面的几个月,研究社区改进了这项技术,将其速度提升了几个数量级,但也还是需要依赖服务器上的大量计算能力。

Caffe2go 成功使人工智能实现了高速处理,并且可以集成到你手上的移动设备中。但该风格迁移模型仍然还需要优化,这样才能在确保实时体验的同时还能保证得到高质量、高分辨率的图像。


优化成有效的模型大小

传统的风格迁移研究得到的模型(甚至只是前馈变量)是很大(在参数的数量方面)很慢的。我们的目标是创造能够运行新的、更小的、更高效的模型的风格迁移应用——能够在 iPhone 6s 或以上的手机上不掉帧地提供 20 FPS 的高质量视频。

为了减小该模型的尺寸,我们应用了 3 种主要的方法:优化了卷积层的数量(这是处理中最耗时间的部分)、优化了每一层的宽度、以及调整了处理过程中的空间分辨率(spatial resolution)。卷积层的数量和宽度是可用于调整处理时间的单独指标——即调整图像有哪些方面需要处理,或调整一个单独的处理过程需要多少时间。对于空间分辨率,我们可以调整中间层中图像实际被处理的大小。通过较早地使用池化(pooling,缩小正被处理的图像的大小),我们可以加速处理时间,因为系统不再需要处理那么多的数据了。我们还发现,使用这些技术,我们可以极大地减少该网络的宽度和深度,同时还能保持合理的质量。


提升质量

图像质量是主观的,非常难以测量——尤其是对于风格迁移这样的东西。因此我们打造了一些可视化工具,其中包括 A/B tests;并训练了不同的模型以确保我们可以得到最高质量的图像结果。我们的大型 GPU 集群由 FBLearner Flow 驱动,让我们可以快速扫描大范围的超参数(比如模型架构、内容/风格权重、和下采样),从而找到满足我们的性能目标同时能保持和提升质量的训练良好的前向风格(feedforward style)。

在提升质量方面还有很多其它的技巧——比如,应用实例规范化(instance normalizatio)而不是常用的批规范化(batch normalization)能有助于多种风格,同样避免卷积层中的零填充(zero padding)可以减少伪像,也可以将不同的预处理或后处理过滤器应用到风格或内容图像上。但在我们的测试中,我们发现这些方法往往在一些风格上效果良好,在另一些风格上则效果不佳。

凭借在这项风格迁移技术上的速度和质量优化,使用 Caffe 2 框架,我们就可以将一种实时图像处理系统应用到移动设备上。


展望下一步

Caffe2go,加上 Torch 这样的研究工具链,是 Facebook 的机器学习产品的核心。因为其在大小、速度和灵活性上的优势,我们正在将 Caffe2go 推广到整个 Facebook 的 stack 中。

我们还在致力于和社区分享我们的软件和设计,从而让我们可以学习更好地利用多种硬件平台和算法设计的特性,这在跨平台机器学习系统中是尤其重要的。在未来的几个月,我们将会部分开源该人工智能框架。

随着我们的进步,你可以想象出设备上实时运行的人工智能可以如何帮助世界更加开放、人们更加互连。我们手中的智能设备将继续颠覆我们对「智能(intelligence)」的认知方式。有了像 Caffe2go 这样精巧的机器学习系统,我们将致力于为人们带来更赞的人工智能和增强现实体验——让你在拍视频的时候,设备里还有一把梵高的画刷。
 
 
 
 
 
 
转载:机器之心
智造家提供
501 浏览

业界 | 企业应用机器学习的主要障碍有哪些?

管理类 机械设计 2016-11-02 16:31 发表了文章 来自相关话题

如今机器学习的应用虽然越来越普遍,但如同其他新兴应用领域一样,一定会有一些障碍。对于企业来说,官僚化的批准流程、隐私保护、部门壁垒、价值周期长是其在部署机器学习时的主要障碍。


即使在分析工作复杂的组织中,机器学习也存在「专业孤立性」问题。例如,银行中的反金融犯罪部门可能使用先进的技术进行反洗钱;而信用风险团队使用完全不同的、不兼容的工具来预测贷款违约,并基于风险设定价位;而财政部门却又使用另一工具预测现金流。同时,消费服务和分行运作根本就不用机器学习,因为缺乏专业知识和软件。这些部门经常不彼此合作,使得难以为成员、流程和技术建立标准。这种软件的拼接集合提高了全公司应用机器学习的总体拥有成本(TCO)。从外,团队的孤立也使得高层难以开始机器学习。

为了支持数字化转型,机器学习必须要做三件事:
 
彻底的转换企业商业流程:市场、销售、财务、人力资源、供应链等等;在全企业支持数据、用户和负载;融合企业技术堆栈;

Carolina Healthcare System、Cisco 和 PayPal 的例子说明了机器学习转换业务流程的潜力。在许多企业中,这种转换仍处于早期阶段。从平台架构的角度来看,机器学习需要与支撑业务流程的软件平台融合,支持不同背景的众多用户,以及支持不同的项目。

扩展到企业级数据意味着许多不同的事。对支持全公司分析的数据仓库的看法迷惑着大部分公司。从实际来看,机器学习软件必须要能与不同的数据平台对接;消化不同格式的数据:有结构的、半结构的和无结构的;它必须能利用「高」(众多记录)和「宽」(许多列)的数据,并且能使用流数据。

最后,机器学习软件必须要与公司优选的技术堆栈融合。这意味着遵守安全协议;在优选的数据平台上的可操作性;符合操作系统的标准;虚拟化技术等等其他技术。



数据科学家的短缺

有一个普遍的认知就是企业缺乏数据科学家。麦肯锡的一份报告指出这种缺乏将会持续到 2018 年;Venture Beat、华尔街日报等多家媒体都曾报道过数据科学家的缺乏;哈佛商业评论表示要么不找要么降低对数据科学家的标准,因为真正的数据科学家都是独角兽。

招聘难的问题不只是简单的供应与需求的问题。麦肯锡几年前的报告预测缺乏理解大数据的管理层,只不过比数据科学家缺失的差额小而已。学位课程和 MOOC 公开课每年产出数千新鲜的数据科学家。公司可以将机器学习项目推送到中国和印度等国家,因为在其他国家中,咨询公司就掌握了大量的有先进水平的分析师团队。

缺乏专业标准和专业证书造成最大的招聘挑战。如今正在为数据科学家建立专业标准,却没有被普遍接受的标准。每个人都可以自称数据科学家。在 O'Reilly Media 发布的 2016 数据科学薪资调查报告中,29% 的调查对象自称数据科学家,但却说他们花费较少或不花费时间做机器学习项目,也不使用标准的机器学习工具。

对数据科学家合适的角色也不确定。在招聘经理找到带有机器学习技术和经验的人后,实际的工作可能完全不同。在许多公司中,带有数据科学家 title 的人的实际角色是信息检索:使用查询工具保证数据平台的数据安全,从而让用户能在 Tableau 或 Excel 上浏览(O'Reilly 的调查显示 SQL 是最流行的工具)。

这样的误解损害了团队的积极性和激励机制。Stack Overflow 最近的一项调查显示创新和「建立有极大意义的东西」是机器学习专业人士的关键动力,要比其他条例更有激励性。因为一个机器学习人员知道如何使用 SQL 就把他放到「data broker」的角色,这是一种人力资源的误用。



价值的体现需要长久时间

根据 Gartner 的调查,负责高级分析的管理层说建立一个预测模型大约花费 52 天。(Gartner 对高级分析的定义包括统计、描述、预测数据挖掘、模拟和优化。)报告时间线从几天到几月各有不同。管理层都把「开发模型的速度」作为选择高级分析平台的顶级标准,仅次于使用方便度。

管理层想知道:为什么建立且部署预测模型需要这么久的时间?其实有许多原因:​
 
数据难以获得数据污染;传统的机器学习工具不能扩展到大数据;管理部门批准部署模型的速度太慢,充满官僚主义;公司对模型部署缺乏明确的流程或技术标准;

大部分数据科学家花费较少的时间训练机器学习模型。在 2014 年,纽约时报报道根据采访和专业评测,数据科学家花费 50-80% 的时间收集并准备数据。今年早些时候,Gil Press 在 Forbes 上发表的文章称 CrowdFlower 的一份数据科学家的报告称调查对象花费 80% 的时间收集、清理和组织数据。

考虑到在企业数据仓库的投资,数据科学家需要花费如此多宝贵的时间来清洁数据是一件很惊人的事。有两个主要原因,首先,企业数据仓库注重对商业智能和性能管理使用案例的支持。这些使用案例是最容易获取的成果;他们有稳定的数据需求和大量的目标用户。然而,机器学习项目却要频繁处理企业数据库不支持的源数据。


第二,数据对机器学习项目的成果非常重要——「垃圾进入/垃圾清除」。有偏见或无效的数据产生有偏见或错误的预测。数据科学家的工作职责是高质量的输出,不能不理会数据问题说是「其他人的问题」。随着社会对算法中偏见的忧虑越来越多,我们期待对数据采集分析过程的可见性会成为普遍采用机器学习的重要因素。这种对责任的需求说明了数据科学家想要掌控数据的流程。

机器学习极其依赖计算基础设施,尤其是大数据。模型开发需要迭代测试和重复测试。2010 年之前,大部分基于机器学习软件的服务器都是单线程的,少有产品支持单机多核并行处理。(例如,SAS/STAT 中有超过 300 个程序,其中只有 22 个支持多线程处理。)

所有的这些顶级数据仓库提供商都在他们的分布式数据集中囊括机器学习引擎。Teradata 在 1989 年就引入了这一能力,IBM 在 1992 年做到这一点,微软 2000 年,Oracle 2003 年,Netezza 在 2006 年加入了机器学习。Greenplum 如今的品牌是 Apache MaDlib。2007 年独立的软件供应商 Fuzzy Logix 在多数据库平台上引入了机器学习库。嵌入 MPP 数据集中的机器学习引擎提供一些潜在的收益,包括减少数据移动,简化部署和一个 MPP 平台的性能。


然而,在实际中,少有数据科学家使用数据库内的机器学习工具。主要有几个原因:第一,减少数据移动意味着一个机器学习项目所需的所有数据就只能是数据库里面的,这很少出现;第二,如果该分析数据集支持消费者喜好的应用我们只能加快部署;MPP 数据仓库中的机器学习库也缺少可用特征,要么强制用户妥协,要么依赖自定义代码。最后,机器学习工作量会分散数据库管理员的注意力,因为它是一些粗笨的、难以预测的工作。许多公司降低数据库内机器学习的部署或者严格的将使用缩减到商业智能的精调上。

虽然关于公司审查模型的时间和通过流程的数据较少,但有证据显示机器学习很重要。负责的管理层要求将影响他们业务的机器学习透明化;没有银行会在不理解模型行为、测试并验证模型的情况下,冒险使用信用风险模型。

在受到监管的产业中,比如银行、保险、医疗中,法律审查是批准流程的一部分。例如在银行中,法律团队会评估信用风险模型从而保证模型没有显性或隐性的歧视效果,当然还有其他的合规问题。

机器学习经验较少的公司可能缺乏模型部署的明确流程。没有明确流程的情况下,每个项目就是一个自定义项目,所以每个 contributor 必须从头开始完成每个人物,缺少最佳实践和标准模块提供的指导。这会花费很长的时间,在一些公司中,不是一个预测模型可能要花费 6 个月或更长的时间。在如今快速前进的商业环境中,这是很长的一段时间。



企业机器学习的挑战

打破机器学习的各种「专业孤立性」是企业机器学习的关键目标。部门之间孤立行事会提高成本,阻碍投资,阻碍数字改革。

技术人员的短缺是管理者们普遍关心的首要问题,因为这阻碍了更广泛的机器学习部署。技术差距部分归因于对于数据科学家,缺少一个专业的标准,机器学习项目 contributor 的角色不清晰。这个技术差距在组织中产生了一个恶循环,因为招聘经理在之前成功案例的情况下可能会无法判断某个人是否胜任机器学习的工作。管理人员的报告中提到,机器学习项目的周期太长是一个关键问题。机器学习项目需要花很长的时间才能产生价值,因为数据中有很多杂乱的东西,而且很难获取;因为传统的机器学习工具无法升级;因为部署模型的批准过程可能很复杂很官僚化;还因为很多组织缺少确定的模型部署程序和标准。
 
 
 
 
 
来源:机器之心微信公众号
智造家提供 查看全部
如今机器学习的应用虽然越来越普遍,但如同其他新兴应用领域一样,一定会有一些障碍。对于企业来说,官僚化的批准流程、隐私保护、部门壁垒、价值周期长是其在部署机器学习时的主要障碍。


即使在分析工作复杂的组织中,机器学习也存在「专业孤立性」问题。例如,银行中的反金融犯罪部门可能使用先进的技术进行反洗钱;而信用风险团队使用完全不同的、不兼容的工具来预测贷款违约,并基于风险设定价位;而财政部门却又使用另一工具预测现金流。同时,消费服务和分行运作根本就不用机器学习,因为缺乏专业知识和软件。这些部门经常不彼此合作,使得难以为成员、流程和技术建立标准。这种软件的拼接集合提高了全公司应用机器学习的总体拥有成本(TCO)。从外,团队的孤立也使得高层难以开始机器学习。

为了支持数字化转型,机器学习必须要做三件事:
 
  • 彻底的转换企业商业流程:市场、销售、财务、人力资源、供应链等等;
  • 在全企业支持数据、用户和负载;
  • 融合企业技术堆栈;


Carolina Healthcare System、Cisco 和 PayPal 的例子说明了机器学习转换业务流程的潜力。在许多企业中,这种转换仍处于早期阶段。从平台架构的角度来看,机器学习需要与支撑业务流程的软件平台融合,支持不同背景的众多用户,以及支持不同的项目。

扩展到企业级数据意味着许多不同的事。对支持全公司分析的数据仓库的看法迷惑着大部分公司。从实际来看,机器学习软件必须要能与不同的数据平台对接;消化不同格式的数据:有结构的、半结构的和无结构的;它必须能利用「高」(众多记录)和「宽」(许多列)的数据,并且能使用流数据。

最后,机器学习软件必须要与公司优选的技术堆栈融合。这意味着遵守安全协议;在优选的数据平台上的可操作性;符合操作系统的标准;虚拟化技术等等其他技术。



数据科学家的短缺

有一个普遍的认知就是企业缺乏数据科学家。麦肯锡的一份报告指出这种缺乏将会持续到 2018 年;Venture Beat、华尔街日报等多家媒体都曾报道过数据科学家的缺乏;哈佛商业评论表示要么不找要么降低对数据科学家的标准,因为真正的数据科学家都是独角兽。

招聘难的问题不只是简单的供应与需求的问题。麦肯锡几年前的报告预测缺乏理解大数据的管理层,只不过比数据科学家缺失的差额小而已。学位课程和 MOOC 公开课每年产出数千新鲜的数据科学家。公司可以将机器学习项目推送到中国和印度等国家,因为在其他国家中,咨询公司就掌握了大量的有先进水平的分析师团队。

缺乏专业标准和专业证书造成最大的招聘挑战。如今正在为数据科学家建立专业标准,却没有被普遍接受的标准。每个人都可以自称数据科学家。在 O'Reilly Media 发布的 2016 数据科学薪资调查报告中,29% 的调查对象自称数据科学家,但却说他们花费较少或不花费时间做机器学习项目,也不使用标准的机器学习工具。

对数据科学家合适的角色也不确定。在招聘经理找到带有机器学习技术和经验的人后,实际的工作可能完全不同。在许多公司中,带有数据科学家 title 的人的实际角色是信息检索:使用查询工具保证数据平台的数据安全,从而让用户能在 Tableau 或 Excel 上浏览(O'Reilly 的调查显示 SQL 是最流行的工具)。

这样的误解损害了团队的积极性和激励机制。Stack Overflow 最近的一项调查显示创新和「建立有极大意义的东西」是机器学习专业人士的关键动力,要比其他条例更有激励性。因为一个机器学习人员知道如何使用 SQL 就把他放到「data broker」的角色,这是一种人力资源的误用。



价值的体现需要长久时间

根据 Gartner 的调查,负责高级分析的管理层说建立一个预测模型大约花费 52 天。(Gartner 对高级分析的定义包括统计、描述、预测数据挖掘、模拟和优化。)报告时间线从几天到几月各有不同。管理层都把「开发模型的速度」作为选择高级分析平台的顶级标准,仅次于使用方便度。

管理层想知道:为什么建立且部署预测模型需要这么久的时间?其实有许多原因:​
 
  • 数据难以获得
  • 数据污染;
  • 传统的机器学习工具不能扩展到大数据;
  • 管理部门批准部署模型的速度太慢,充满官僚主义;
  • 公司对模型部署缺乏明确的流程或技术标准;


大部分数据科学家花费较少的时间训练机器学习模型。在 2014 年,纽约时报报道根据采访和专业评测,数据科学家花费 50-80% 的时间收集并准备数据。今年早些时候,Gil Press 在 Forbes 上发表的文章称 CrowdFlower 的一份数据科学家的报告称调查对象花费 80% 的时间收集、清理和组织数据。

考虑到在企业数据仓库的投资,数据科学家需要花费如此多宝贵的时间来清洁数据是一件很惊人的事。有两个主要原因,首先,企业数据仓库注重对商业智能和性能管理使用案例的支持。这些使用案例是最容易获取的成果;他们有稳定的数据需求和大量的目标用户。然而,机器学习项目却要频繁处理企业数据库不支持的源数据。


第二,数据对机器学习项目的成果非常重要——「垃圾进入/垃圾清除」。有偏见或无效的数据产生有偏见或错误的预测。数据科学家的工作职责是高质量的输出,不能不理会数据问题说是「其他人的问题」。随着社会对算法中偏见的忧虑越来越多,我们期待对数据采集分析过程的可见性会成为普遍采用机器学习的重要因素。这种对责任的需求说明了数据科学家想要掌控数据的流程。

机器学习极其依赖计算基础设施,尤其是大数据。模型开发需要迭代测试和重复测试。2010 年之前,大部分基于机器学习软件的服务器都是单线程的,少有产品支持单机多核并行处理。(例如,SAS/STAT 中有超过 300 个程序,其中只有 22 个支持多线程处理。)

所有的这些顶级数据仓库提供商都在他们的分布式数据集中囊括机器学习引擎。Teradata 在 1989 年就引入了这一能力,IBM 在 1992 年做到这一点,微软 2000 年,Oracle 2003 年,Netezza 在 2006 年加入了机器学习。Greenplum 如今的品牌是 Apache MaDlib。2007 年独立的软件供应商 Fuzzy Logix 在多数据库平台上引入了机器学习库。嵌入 MPP 数据集中的机器学习引擎提供一些潜在的收益,包括减少数据移动,简化部署和一个 MPP 平台的性能。


然而,在实际中,少有数据科学家使用数据库内的机器学习工具。主要有几个原因:第一,减少数据移动意味着一个机器学习项目所需的所有数据就只能是数据库里面的,这很少出现;第二,如果该分析数据集支持消费者喜好的应用我们只能加快部署;MPP 数据仓库中的机器学习库也缺少可用特征,要么强制用户妥协,要么依赖自定义代码。最后,机器学习工作量会分散数据库管理员的注意力,因为它是一些粗笨的、难以预测的工作。许多公司降低数据库内机器学习的部署或者严格的将使用缩减到商业智能的精调上。

虽然关于公司审查模型的时间和通过流程的数据较少,但有证据显示机器学习很重要。负责的管理层要求将影响他们业务的机器学习透明化;没有银行会在不理解模型行为、测试并验证模型的情况下,冒险使用信用风险模型。

在受到监管的产业中,比如银行、保险、医疗中,法律审查是批准流程的一部分。例如在银行中,法律团队会评估信用风险模型从而保证模型没有显性或隐性的歧视效果,当然还有其他的合规问题。

机器学习经验较少的公司可能缺乏模型部署的明确流程。没有明确流程的情况下,每个项目就是一个自定义项目,所以每个 contributor 必须从头开始完成每个人物,缺少最佳实践和标准模块提供的指导。这会花费很长的时间,在一些公司中,不是一个预测模型可能要花费 6 个月或更长的时间。在如今快速前进的商业环境中,这是很长的一段时间。



企业机器学习的挑战

打破机器学习的各种「专业孤立性」是企业机器学习的关键目标。部门之间孤立行事会提高成本,阻碍投资,阻碍数字改革。

技术人员的短缺是管理者们普遍关心的首要问题,因为这阻碍了更广泛的机器学习部署。技术差距部分归因于对于数据科学家,缺少一个专业的标准,机器学习项目 contributor 的角色不清晰。这个技术差距在组织中产生了一个恶循环,因为招聘经理在之前成功案例的情况下可能会无法判断某个人是否胜任机器学习的工作。管理人员的报告中提到,机器学习项目的周期太长是一个关键问题。机器学习项目需要花很长的时间才能产生价值,因为数据中有很多杂乱的东西,而且很难获取;因为传统的机器学习工具无法升级;因为部署模型的批准过程可能很复杂很官僚化;还因为很多组织缺少确定的模型部署程序和标准。
 
 
 
 
 
来源:机器之心微信公众号
智造家提供
722 浏览

由深度神经网络想到的人生意义和哲理

机械自动化类 扳手哥 2016-10-24 14:59 发表了文章 来自相关话题

 ◆ ◆ ◆

导读

几周前,我经历工作项目的调动,恰好给了我空余时间重拾那些很久没有碰过的感兴趣的话题。机器学习是我兴趣列表中的第一项。这是一个已经广泛渗入科技领域的话题,但我对其一无所知。仅几周的泛读,已经让我相信我们正加速朝向一个通用人工智能的时代。随着物联网(IOT)设备的快速普及产生了极大量数据,在这方面深度挖掘的进步将会保证这一未来越来越近。

但是基于这篇文章的论述范围,我将把话题限制在讨论以下假设:围绕在我们周围的所有事情构成一张深度神经网络,以及这一观点带来的形而上学的意义。



◆ ◆ ◆

迁移学习

作为一个机器学习(ML)新手,我第一次接触到机器学习的经历是相当不可思议的。谷歌的新机器学习库(称为TensorFlow)让我有机会搭建一个深度神经网络(DNN)模型,它能在几个小时内通过从谷歌及我的MacBook Pro中抓取的图片来标记房子中不同房间的图像。我为这个全新的神奇力量感到惊喜,当夜兴奋到无法入睡。多读了一些这方面的资料后,我最初的兴奋渐渐平息下来,而一个关键词“迁移学习”这个有趣的概念留在了我的脑海里。如谷歌所说的那样——


“迁移学习是指利用在解决另一个问题时搭建的模型的技术。我们将会保留对已有模型的某些层,从而让优化后的新模型可以完全解决当下的新问题。从头搭建深度学习可能需要数天,但迁移学习可以在比较短的时间内实现。”


“深度学习”其名来源于深层神经网络(DNNs)这个算法和应用的学习。之所以“深”,是因为神经网络有很多层。每层神经网络(或一组神经网络)创建的输出,可以作为下一层的搭建基础。因此,在我上述列举的情形中,谷歌预先设置的图像模型已经搭建了可以识别如边界、角等图像元素的低级层次,以及可以识别形状的中级层次。我通过多次迭代训练而得到一个创造最高价值的输出层,因为只有它能最终识别和标记给定的图片。




◆ ◆ ◆

我们的大脑好比深度神经网络






以上有趣事情发生的几天后,我看了Ray Kurzweil在“加速的未来 (The Acceleration Future)”中很棒的演讲,演讲中他提到,人类大脑就像深度神经网络(DNN)模型的识别者,并且我们大脑的某些部分与蜥蜴的大脑是完全一样的。


结合“迁移学习”的概念,所提出的深度神经网络(DNN)的概念作为一个重要的架构,可以解释物种内一代一代的迁移学习,以及物种间的迁移学习。(我知道神经网络的架构显然是由研究大脑本身而启发得出的,但是这里的关键概念是“深度”)。


因此我们的大脑是一个(或一系列)深度神经网络,这个网络基于我们进化而来的前一个物种的学习模式搭建而成。我们应该记住,这种学习模式从基因上来看是从我们的祖父和其他祖先那转移过来的。除了关于对世界的了解和生存秘诀,这些模式可能也包含了我们在超过几百万年的试验中不断调整而形成的是非观(道德层面)。


甚至,在一个人的一生中,学习看上去也是一个深度学习网络的创造过程。在学习阶段,我们的大脑努力运作,创造可以持续输出预期结果(如:弹好吉他)的正确模式(通过引发不同种类的神经模式)。一旦深度学习网络模式被创建,在实际生活场景下运用训练过的模型(如:用吉他上弹奏新的歌曲)将是更快的。这也能解释为什么学习过程本身是很难的,但一旦习得,技能很容易被运用出来。


于是,我们可以将经历看做我们众多的神经网络在深度上的发展。


创造力也有可能是“迁移学习”的结果。一种极大的可能性是,创意工作者们利用在其他领域训练过的基础模型,同时保持他们的“深度神经网络”的最顶层。从另一方面来说,某一特别领域的专家已经将他们的深度神经网络(DNN)训练得更加深入,就为了在极端的细节上处理一个特殊问题。




◆ ◆ ◆

什么让深度神经网络变得特别

我认为深度神经网络的一个重要特征是他们同时具有机器处理能力和数据存储能力。因此当能量流通过他们时,他们是活的机器,指引能量去创造动态的模式,从而为了达到预期的结果而不断优化。不仅如此,当能量停止流动时,他们变成静态的模式,我们称之为模型(深度神经网络模型)。

那么,我们也是深度神经网络(DNN)吗?

有一个有趣的概念是这样的,把种子(可以是植物的种子,或者动物的“种子”等)看做深度神经网络(DNN)模型。那么本质上,种子就是在代际之间传递训练过的模型(学习和存储了的DNN模式),其中每一代都尝试着在上一代模型的基础上,通过提供更多的训练和优化,从而使自身在所处的环境中繁荣兴旺,进而改善模型。

想得更远一步——如果种子是模型,那么我们或许就成了机器。




◆ ◆ ◆

模型(种子) + 最佳的环境 + 能量 = 一个基于深度神经网络(DNN)的机器

这样看来,从种子成长起来的植物就是训练模型的具体表现。这种物理的表现本质上是一个DNN深度学习机器,它进行新的试验,为了改进那个创造了自身的潜在模型而向当前环境学习。而后,如果机器发现了某些能够帮助下一代更好地适应环境的新信息,那么就会给神经网络增加新的层。


如果由此更深入探索,就有可能认为,围绕在我们身边的一切事物其实都是建立在空间和时间上的一个深度神经模型。实际上,整个宇宙有可能就是一个巨大的DNN机器。这些DNN机器虽然理论上是建立在彼此的基础上的(一层层地),但实际上可能也是从属于彼此的。我们是DNN里的DNN里的DNN。这个理论唯一的问题在于我们还不能明确宇宙这个巨大的DNN机器最终优化的目标是什么。因为如果可以找到这个目标,或许我们就可以借此对宇宙万物存在的目的有一个更清晰的理解。




◆ ◆ ◆

生命存在的意义

如果我们正是存在于其他DNN机器内部的DNN机器(就好比地球),那么我们存在的意义是什么?我觉得我们生命的意义可能不会跟我们大脑里的电信号的意义有什么太大的差异。这个目的就是流动,无论这个流动的方向是否会成为最后胜利的神经网络模式(或者说模型)的一部分。我们的目标也不会跟水流中的水珠有太大的差异。我们作为个体是没什么所谓的。有所谓的是我们所有人作为一个集体,在宇宙深度神经网络的这一个层面上所自然而然发生的行为(神经模式)。物种、社会结构、文化、宗教、国家、语言,像荒芜的沙漠和丰饶的雨林这样的环境,本质上都是一种自我优化的试验性动态模式,而且它们一起服务于一个自然发生的、超大的、全宇宙的、为了“某个目的”自我优化模式。我仍然不明确这“某个目的”究竟是什么。但是如果缺少了这个我们依存的巨大机器,我们每个个体的存在将是无意义的。




◆ ◆ ◆

展望

这是关于这个思路的第一份初稿,虽然距离清晰明确的答案还有很长的一段距离,但是现在有这样几个原理是跟这个紧密内嵌在这个思路当中的:


1.深度神经网络为解释我们存在的机制提供了一种可理解的框架

2.我们身边的所有事物(包括我们自己)是一种自身的试验或者是另一个试验的一部分。这种试验会持续直到找到所需优化问题的一个最优解。一旦试验成功,这个模型就被存储起来,等待下一代在此基础上进一步提升。

3.深度神经网络需要不断的试验和报错耗费大量的时间和精力来获得最优解。模型的使用本身是一个更高效的过程,因为数据只需要通过一个确定的路径即可,即使这个路径在结构上非常复杂,但因为这只是一条路径,所以可快速通过。

4.事物的错综复杂性来源于各个模型总是建立在彼此的基础上,而后形成其他模型的基础这一事实。复杂模型是更简单模型的分层集合。

5.行为是自然发生的。单个神经元/单位致力于某些后天取得的,来源于它们的内在模型的规则,但是不会意识到它们是在为一个怎样的总体目标做出贡献。


有了上述的这几个概念,我接下来将计划将这个模型应用到一些形而上学的概念上去,例如:因缘、生与死、道德等等,看看能否发现有一些有趣的事情。
 
 
 
 
 
转自:大数据文摘|bigdatadigest
智造家提供 查看全部
2.1_.jpg

 ◆ ◆ ◆

导读

几周前,我经历工作项目的调动,恰好给了我空余时间重拾那些很久没有碰过的感兴趣的话题。机器学习是我兴趣列表中的第一项。这是一个已经广泛渗入科技领域的话题,但我对其一无所知。仅几周的泛读,已经让我相信我们正加速朝向一个通用人工智能的时代。随着物联网(IOT)设备的快速普及产生了极大量数据,在这方面深度挖掘的进步将会保证这一未来越来越近。

但是基于这篇文章的论述范围,我将把话题限制在讨论以下假设:围绕在我们周围的所有事情构成一张深度神经网络,以及这一观点带来的形而上学的意义。



◆ ◆ ◆

迁移学习

作为一个机器学习(ML)新手,我第一次接触到机器学习的经历是相当不可思议的。谷歌的新机器学习库(称为TensorFlow)让我有机会搭建一个深度神经网络(DNN)模型,它能在几个小时内通过从谷歌及我的MacBook Pro中抓取的图片来标记房子中不同房间的图像。我为这个全新的神奇力量感到惊喜,当夜兴奋到无法入睡。多读了一些这方面的资料后,我最初的兴奋渐渐平息下来,而一个关键词“迁移学习”这个有趣的概念留在了我的脑海里。如谷歌所说的那样——


“迁移学习是指利用在解决另一个问题时搭建的模型的技术。我们将会保留对已有模型的某些层,从而让优化后的新模型可以完全解决当下的新问题。从头搭建深度学习可能需要数天,但迁移学习可以在比较短的时间内实现。”


“深度学习”其名来源于深层神经网络(DNNs)这个算法和应用的学习。之所以“深”,是因为神经网络有很多层。每层神经网络(或一组神经网络)创建的输出,可以作为下一层的搭建基础。因此,在我上述列举的情形中,谷歌预先设置的图像模型已经搭建了可以识别如边界、角等图像元素的低级层次,以及可以识别形状的中级层次。我通过多次迭代训练而得到一个创造最高价值的输出层,因为只有它能最终识别和标记给定的图片。




◆ ◆ ◆

我们的大脑好比深度神经网络

2.2_.jpg


以上有趣事情发生的几天后,我看了Ray Kurzweil在“加速的未来 (The Acceleration Future)”中很棒的演讲,演讲中他提到,人类大脑就像深度神经网络(DNN)模型的识别者,并且我们大脑的某些部分与蜥蜴的大脑是完全一样的。


结合“迁移学习”的概念,所提出的深度神经网络(DNN)的概念作为一个重要的架构,可以解释物种内一代一代的迁移学习,以及物种间的迁移学习。(我知道神经网络的架构显然是由研究大脑本身而启发得出的,但是这里的关键概念是“深度”)。


因此我们的大脑是一个(或一系列)深度神经网络,这个网络基于我们进化而来的前一个物种的学习模式搭建而成。我们应该记住,这种学习模式从基因上来看是从我们的祖父和其他祖先那转移过来的。除了关于对世界的了解和生存秘诀,这些模式可能也包含了我们在超过几百万年的试验中不断调整而形成的是非观(道德层面)。


甚至,在一个人的一生中,学习看上去也是一个深度学习网络的创造过程。在学习阶段,我们的大脑努力运作,创造可以持续输出预期结果(如:弹好吉他)的正确模式(通过引发不同种类的神经模式)。一旦深度学习网络模式被创建,在实际生活场景下运用训练过的模型(如:用吉他上弹奏新的歌曲)将是更快的。这也能解释为什么学习过程本身是很难的,但一旦习得,技能很容易被运用出来。


于是,我们可以将经历看做我们众多的神经网络在深度上的发展。


创造力也有可能是“迁移学习”的结果。一种极大的可能性是,创意工作者们利用在其他领域训练过的基础模型,同时保持他们的“深度神经网络”的最顶层。从另一方面来说,某一特别领域的专家已经将他们的深度神经网络(DNN)训练得更加深入,就为了在极端的细节上处理一个特殊问题。




◆ ◆ ◆

什么让深度神经网络变得特别

我认为深度神经网络的一个重要特征是他们同时具有机器处理能力和数据存储能力。因此当能量流通过他们时,他们是活的机器,指引能量去创造动态的模式,从而为了达到预期的结果而不断优化。不仅如此,当能量停止流动时,他们变成静态的模式,我们称之为模型(深度神经网络模型)。

那么,我们也是深度神经网络(DNN)吗?

有一个有趣的概念是这样的,把种子(可以是植物的种子,或者动物的“种子”等)看做深度神经网络(DNN)模型。那么本质上,种子就是在代际之间传递训练过的模型(学习和存储了的DNN模式),其中每一代都尝试着在上一代模型的基础上,通过提供更多的训练和优化,从而使自身在所处的环境中繁荣兴旺,进而改善模型。

想得更远一步——如果种子是模型,那么我们或许就成了机器。




◆ ◆ ◆

模型(种子) + 最佳的环境 + 能量 = 一个基于深度神经网络(DNN)的机器

这样看来,从种子成长起来的植物就是训练模型的具体表现。这种物理的表现本质上是一个DNN深度学习机器,它进行新的试验,为了改进那个创造了自身的潜在模型而向当前环境学习。而后,如果机器发现了某些能够帮助下一代更好地适应环境的新信息,那么就会给神经网络增加新的层。


如果由此更深入探索,就有可能认为,围绕在我们身边的一切事物其实都是建立在空间和时间上的一个深度神经模型。实际上,整个宇宙有可能就是一个巨大的DNN机器。这些DNN机器虽然理论上是建立在彼此的基础上的(一层层地),但实际上可能也是从属于彼此的。我们是DNN里的DNN里的DNN。这个理论唯一的问题在于我们还不能明确宇宙这个巨大的DNN机器最终优化的目标是什么。因为如果可以找到这个目标,或许我们就可以借此对宇宙万物存在的目的有一个更清晰的理解。




◆ ◆ ◆

生命存在的意义

如果我们正是存在于其他DNN机器内部的DNN机器(就好比地球),那么我们存在的意义是什么?我觉得我们生命的意义可能不会跟我们大脑里的电信号的意义有什么太大的差异。这个目的就是流动,无论这个流动的方向是否会成为最后胜利的神经网络模式(或者说模型)的一部分。我们的目标也不会跟水流中的水珠有太大的差异。我们作为个体是没什么所谓的。有所谓的是我们所有人作为一个集体,在宇宙深度神经网络的这一个层面上所自然而然发生的行为(神经模式)。物种、社会结构、文化、宗教、国家、语言,像荒芜的沙漠和丰饶的雨林这样的环境,本质上都是一种自我优化的试验性动态模式,而且它们一起服务于一个自然发生的、超大的、全宇宙的、为了“某个目的”自我优化模式。我仍然不明确这“某个目的”究竟是什么。但是如果缺少了这个我们依存的巨大机器,我们每个个体的存在将是无意义的。




◆ ◆ ◆

展望

这是关于这个思路的第一份初稿,虽然距离清晰明确的答案还有很长的一段距离,但是现在有这样几个原理是跟这个紧密内嵌在这个思路当中的:


1.深度神经网络为解释我们存在的机制提供了一种可理解的框架

2.我们身边的所有事物(包括我们自己)是一种自身的试验或者是另一个试验的一部分。这种试验会持续直到找到所需优化问题的一个最优解。一旦试验成功,这个模型就被存储起来,等待下一代在此基础上进一步提升。

3.深度神经网络需要不断的试验和报错耗费大量的时间和精力来获得最优解。模型的使用本身是一个更高效的过程,因为数据只需要通过一个确定的路径即可,即使这个路径在结构上非常复杂,但因为这只是一条路径,所以可快速通过。

4.事物的错综复杂性来源于各个模型总是建立在彼此的基础上,而后形成其他模型的基础这一事实。复杂模型是更简单模型的分层集合。

5.行为是自然发生的。单个神经元/单位致力于某些后天取得的,来源于它们的内在模型的规则,但是不会意识到它们是在为一个怎样的总体目标做出贡献。


有了上述的这几个概念,我接下来将计划将这个模型应用到一些形而上学的概念上去,例如:因缘、生与死、道德等等,看看能否发现有一些有趣的事情。
 
 
 
 
 
转自:大数据文摘|bigdatadigest
智造家提供
554 浏览

机器学习菜鸟最常犯的5个错误,以及如何避免

机械自动化类 其中之一 2016-10-12 14:36 发表了文章 来自相关话题

 我常帮助菜鸟们学习机器学习。

但是我看到,他们在思维模式上和行动上,经常犯同样的错误。

本文我要指出他们经常栽跟头的5个地方。

我发自肺腑地相信,对于应用机器学习,任何人都可以学,并且学得很好。

希望你能够意识到自己已经毫无悬念地掉进了以下的某个坑里,然后果断采取行动,回到正路上。

让我们开始吧。








◆ ◆ ◆

不要从理论开始 
传统的方法教机器学习是自下而上的——

step1:努力学习数学。

step2:努力学习机器学习理论。

step3:努力从头开始实现算法。

stepX???(等等等等,自行脑补。。。)


终于,开始使用机器学习(你的目标在此!)


这条路漫长,艰难。

然而,这是为想要摘金夺银的学术界大神们设计的。

你,只想要一个结果的吃瓜群众,凑什么热闹!


陷阱

如果你有以下想法或者说法,你已不幸落井——

我得先完成这门线性代数的课才行。

我得回学校先读个博士学位。 

我得先啃完这本教科书。


出路

耗费4年在数学或者深奥的算法上,能将你带到目标么?

更大的可能是然并卵。你停步不前。或者知难而退。反正离你的目标不会越来越近。

出路是——立正,稍息,向后转!

如果机器学习的价值在于准确的预测,那么要学的就是如何将问题模式化并做出准确的预测。就从这开始。

然后把这件事儿弄好,好得不要不要的!

在你需要的时候,去阅读、截取、武装理论知识,但仅限于为你的目标服务,仅限于这样做会使你传递出更大价值。



◆ ◆ ◆

不要去学所有的机器学习 

机器学习浩瀚无边啊。

它是计算机的自动学习过程,与人工智能多有交集。

从机器人的深奥学习理论算起,这个领域真的很大。

大得你无法一一收入囊中。



陷阱

如果你有下面的想法,你已不幸落井——

我得学会某个网页上提到的所有新技术。

我得学会计算机视觉,自然语言处理,语音处理,等。

首先。我得学会所有的所有。



出路

找个小旮旯,集中于此。

进一步缩小范围。

机器学习最有价值的部分是预测性建模。从数据创建模型进行预测。

从这里开始。

接下来,集中在某种与你最相关,或者你最感兴趣的模型。

然后死缠烂打。

也许你选择了某种技术,比如深度学习。也许你选择了某种问题,比如推荐系统。

也许你还没拿定主意,那么就选一个先。学好它。或者基本精通。

然后,转战到另一个领域。



◆ ◆ ◆

不要在算法上虚度光阴  

机器学习确实关乎算法。

好多好多好多算法。

每个算法都是一个复杂的系统

是一个学习的小宇宙,有它自己的生态系统。

在算法的世界里你会迷路。所有人都会。

那些人叫做学术界。



陷阱

如果你有下面的说法,那么你已不幸落井——

我得弄明白它怎么工作的,在我使用它之前。

我得深入理解超参数先。

我调参的时候得解释清楚因果关系。



出路

算法不是结果。它们是得到结果的方法。

实际上,机器学习算法只是一堆商品。换掉它们。试用几十个。拿一些出来调调参数。接着换。一个更好的结果会让你对算法更有感觉,但是要知道什么时候止步。系统化这个过程。设计调参实验,让它们自动执行和分析。

机器学习无外乎算法的正确应用。但是应用机器学习不只是在算法里虚度光阴。集中火力在每个项目要得到的结果,即一系列的预测,或者一个可以得到这些预测的模型。








◆ ◆ ◆

不要从头开始实现一切   

从头开始实现算法,你可以学到很多。

有时候你甚至需要去实现一项技术

因为没有合适的,

或者找不到现成的实现方案。

但是,一般来说,你不必如此,你也不该如此。

你的实现可能糟透了。抱歉——

它可能有小错误。

它可能很慢。

它可能太占内存。

它可能处理不好边界情形。

它甚至可能压根儿就错了。



陷阱

如果有以下情形,不幸你已落井——

你在写代码导入CSV文件(到底怎么回事!)

你在写代码做一个标准的算法,比如线性回归

你在写代码做交叉验证或者超参数调节。



出路

停下来!

使用一个通用的,已知是正确的,成千上万的程序猿都在用的库来处理边界情形。

使用一个高度优化的库,哪怕最后一个循环,最后一个字节都已经挤干净,最小限度占用内存。

使用图形化的用户界面,避免不必要的编程。

每次你想要用的时候都实现所有一切,对机器学习菜鸟而言,是一个非常慢的方法。

如果你想学习实现,那么,诚实一点,把它和学习利用应用机器学习来传递价值区分开来。



◆ ◆ ◆

不要总是换工具 

有很多非常伟大的机器学习工具。

实际上,伟大的工具,连同数据和高性能硬件,

是机器学习得以复兴的原因。

但是,当你遇到接踵而至的新工具时

你就掉进流连忘返的坑里了。


陷阱

如果你有如下情形,不幸你已落井——

使用你听说过的新工具。

发现你每周或每月都在学习新的工具或者语言。

学一个库,见新思迁,半途而废。


出路

学习和使用新工具。

但是要有策略。

把新工具整合到解决问题的系统过程里。

如果你选好一个主打平台并坚守不移,你会高效得多。至少坚持到你能擅长或者精通一个。

你的领域内还会有其它的平台和专业工具,坚持到底是爱好者与专业人士的区别。



◆ ◆ ◆

总结 

本文你见识了我所见识到的机器学习菜鸟常犯的5大错误。重要的事再说一遍,它们是:

1. 不要从理论开始
2. 不要去学机器学习的所有东西
3. 不要在算法里虚度光阴
4. 不要从头实现一切
5. 不要总是换工具。
 
 
来源大数据文摘智造家提供 查看全部
2.1_.jpg

 我常帮助菜鸟们学习机器学习。

但是我看到,他们在思维模式上和行动上,经常犯同样的错误。

本文我要指出他们经常栽跟头的5个地方。

我发自肺腑地相信,对于应用机器学习,任何人都可以学,并且学得很好。

希望你能够意识到自己已经毫无悬念地掉进了以下的某个坑里,然后果断采取行动,回到正路上。

让我们开始吧。

2.2_.jpg




◆ ◆ ◆

不要从理论开始 
传统的方法教机器学习是自下而上的——

step1:努力学习数学。

step2:努力学习机器学习理论。

step3:努力从头开始实现算法。

stepX???(等等等等,自行脑补。。。)


终于,开始使用机器学习(你的目标在此!)


这条路漫长,艰难。

然而,这是为想要摘金夺银的学术界大神们设计的。

你,只想要一个结果的吃瓜群众,凑什么热闹!


陷阱

如果你有以下想法或者说法,你已不幸落井——

我得先完成这门线性代数的课才行。

我得回学校先读个博士学位。 

我得先啃完这本教科书。


出路

耗费4年在数学或者深奥的算法上,能将你带到目标么?

更大的可能是然并卵。你停步不前。或者知难而退。反正离你的目标不会越来越近。

出路是——立正,稍息,向后转!

如果机器学习的价值在于准确的预测,那么要学的就是如何将问题模式化并做出准确的预测。就从这开始。

然后把这件事儿弄好,好得不要不要的!

在你需要的时候,去阅读、截取、武装理论知识,但仅限于为你的目标服务,仅限于这样做会使你传递出更大价值。



◆ ◆ ◆

不要去学所有的机器学习 

机器学习浩瀚无边啊。

它是计算机的自动学习过程,与人工智能多有交集。

从机器人的深奥学习理论算起,这个领域真的很大。

大得你无法一一收入囊中。



陷阱

如果你有下面的想法,你已不幸落井——

我得学会某个网页上提到的所有新技术。

我得学会计算机视觉,自然语言处理,语音处理,等。

首先。我得学会所有的所有。



出路

找个小旮旯,集中于此。

进一步缩小范围。

机器学习最有价值的部分是预测性建模。从数据创建模型进行预测。

从这里开始。

接下来,集中在某种与你最相关,或者你最感兴趣的模型。

然后死缠烂打。

也许你选择了某种技术,比如深度学习。也许你选择了某种问题,比如推荐系统。

也许你还没拿定主意,那么就选一个先。学好它。或者基本精通。

然后,转战到另一个领域。



◆ ◆ ◆

不要在算法上虚度光阴  

机器学习确实关乎算法。

好多好多好多算法。

每个算法都是一个复杂的系统

是一个学习的小宇宙,有它自己的生态系统。

在算法的世界里你会迷路。所有人都会。

那些人叫做学术界。



陷阱

如果你有下面的说法,那么你已不幸落井——

我得弄明白它怎么工作的,在我使用它之前。

我得深入理解超参数先。

我调参的时候得解释清楚因果关系。



出路

算法不是结果。它们是得到结果的方法。

实际上,机器学习算法只是一堆商品。换掉它们。试用几十个。拿一些出来调调参数。接着换。一个更好的结果会让你对算法更有感觉,但是要知道什么时候止步。系统化这个过程。设计调参实验,让它们自动执行和分析。

机器学习无外乎算法的正确应用。但是应用机器学习不只是在算法里虚度光阴。集中火力在每个项目要得到的结果,即一系列的预测,或者一个可以得到这些预测的模型。

2.3_.jpg




◆ ◆ ◆

不要从头开始实现一切   

从头开始实现算法,你可以学到很多。

有时候你甚至需要去实现一项技术

因为没有合适的,

或者找不到现成的实现方案。

但是,一般来说,你不必如此,你也不该如此。

你的实现可能糟透了。抱歉——

它可能有小错误。

它可能很慢。

它可能太占内存。

它可能处理不好边界情形。

它甚至可能压根儿就错了。



陷阱

如果有以下情形,不幸你已落井——

你在写代码导入CSV文件(到底怎么回事!)

你在写代码做一个标准的算法,比如线性回归

你在写代码做交叉验证或者超参数调节。



出路

停下来!

使用一个通用的,已知是正确的,成千上万的程序猿都在用的库来处理边界情形。

使用一个高度优化的库,哪怕最后一个循环,最后一个字节都已经挤干净,最小限度占用内存。

使用图形化的用户界面,避免不必要的编程。

每次你想要用的时候都实现所有一切,对机器学习菜鸟而言,是一个非常慢的方法。

如果你想学习实现,那么,诚实一点,把它和学习利用应用机器学习来传递价值区分开来。



◆ ◆ ◆

不要总是换工具 

有很多非常伟大的机器学习工具。

实际上,伟大的工具,连同数据和高性能硬件,

是机器学习得以复兴的原因。

但是,当你遇到接踵而至的新工具时

你就掉进流连忘返的坑里了。


陷阱

如果你有如下情形,不幸你已落井——

使用你听说过的新工具。

发现你每周或每月都在学习新的工具或者语言。

学一个库,见新思迁,半途而废。


出路

学习和使用新工具。

但是要有策略。

把新工具整合到解决问题的系统过程里。

如果你选好一个主打平台并坚守不移,你会高效得多。至少坚持到你能擅长或者精通一个。

你的领域内还会有其它的平台和专业工具,坚持到底是爱好者与专业人士的区别。



◆ ◆ ◆

总结 

本文你见识了我所见识到的机器学习菜鸟常犯的5大错误。重要的事再说一遍,它们是:

1. 不要从理论开始
2. 不要去学机器学习的所有东西
3. 不要在算法里虚度光阴
4. 不要从头实现一切
5. 不要总是换工具。
 
 
  • 来源大数据文摘
  • 智造家提供