Google | 机器学习小白教程

对机器如何自学感到很困惑?这里提供对机器学习的综述以供参考。

最近谷歌的深度学习第二代引擎“TensorFlow”引来众人的关注,但也引来了关于人工智能领域的疑惑。机器学习究竟是什么?如何让机器自学?这里是一些谷歌内部人员提供的教程。

昨天,谷歌为众多的科技记者举办了一个第101期“机器学习”大会(Machine Learning 101)的活动。我是其中一员。虽然此次会议只是一个简要介绍,但是大部分涉及的内容仍然是很有技术性并且对于我以及在座的其他的一些记者来说还是很难完全掌握。

例如,当演讲者告诉你机器学习涉及的数学是很“简单”的时候或者以同样的方式来描述微积分的时候,他们口中的“容易”对于一个像我一样的外行来说是很困难的。

但是,我仍然找到一种方式来理解机器——电脑——是如何教自己识别物体、理解文本和口语等等。以下是我的笔记。

机器学习的构成部分

机器学习系统有三个主要部分组成,他们是:

· 模型:用来预测或者识别的系统

· 参数:模型执行决策时使用到的因子或者信息

· 学习者:一个能够首先调整这些参数,接着观察预测结果与实际结果之间的差异的系统

现在让我依据昨天Greg Gorrado讲到的东西,解释一下现实世界中实际存在的问题。Greg Corrado是谷歌的高级研究科学家,也是谷歌深度学习团队的共同创立者。

想像你是一个老师,你想要找到学生学习的最佳时间,同时保证他们在考试中得到最好的成绩。你求助于机器学习。是的,这个问题对于它来说有点大材小用了。但是这只是一个简化的情况。

构造模型

所有的一切都起源于这个模型,一个机器学习系统会使用的预测方式。这个模型起初会被交给人来完成,至少对于这个简化的例子来说。在本例中,老师会告诉机器学习模型假定5个小时的学习时间能够保证一个完美的测试成绩。

模型本身依据这些参数来完成它的计算。在本例中,这些参数就是在学习中投入的时间和得到的测验成绩。可以用下面的方式来理解这些参数:

· 0 hours= 50% score

· 1 hour=60% score

· 2 hour=70% score

· 3 hour=80% score

· 4 hour=90% score

· 5 hour=100% score

机器学习系统会自动使用数学方程来找到方式表达以上的数据,从而有限的找到数据中的趋势线。这个昨天演讲中的一个例子:

提供初始输入

既然模型已经设定好了,基本数据输入完毕。接着,老师可能要输入不同学生在不同学习时间下的测试成绩。

在本例中,结果发现,这些分数与模型并不匹配,有的分数在预测的趋势线之上,有的分数在趋势线之下,如图:

现在,是时候让机器学习的“学习者”登场了。

学习者的学习过程

各个分数数据输入系统了,像这样的被输入到机器学习系统的数据通常被称为训练集或者训练数据,因为这些数据被机器学习系统的学习者部分使用来训练自己从而创造一个更好的模型。

这个学习者浏览数据,并且看到各个数据与初始模型之间的差距。然后他们使用更多的数据工具来调试其初始假设。例如,之前的理解方式可能会被改变为这样:

· 0 hours= 45% score

· 1 hour=55% score

· 2 hour=65% score

· 3 hour=75% score

· 4 hour=95% score

· 5 hour=100% score

这种新的预测重新生成以投入更多的学习时间来得到更好的分数。

这只是这种处理的一个例子,一个完全编造出来的例子。目的是为了阐述学习者对参数进行了小的调整来调节模型。我待会再解释这个部分。

调整和重复

现在系统又重新运作了,这次有了新的分数数据。而那些真实的分数数据将会被学习者用来校正修改后的模型。如果成功的话,这些分数会更靠近预测趋势线:

然而,这次过程不会达到完美。于是学习者再次调整参数,改变模型。新的数据会被输入,再次比较,学习者再次调试模型。

这种循环会持续重复直到最终模型有足够的理由相信它真的是在根据学习时间来预测测试成绩。

梯度下降法:机器学习如何保证预测得越来越好

谷歌的高级研究科学家Greg Corrado强调了大部分机器学习的很重要的部分是一个被称为“梯度下降”或者“梯度学习”的算法。它能够使系统一次又一次的做出小的调整直到得到正确的模型。

Corrado将其比作为爬一个很陡峭的山。你不想跑或者调,因为那样会很危险,并且容易犯错。相应地,你每次只向山顶移动一点。

记得我刚才说的“这涉及到的数学很容易”的那部分吗?显然对于那些懂得微积分和数学的人,这确实非常容易这其中涉及到了方程。

这其中真正的挑战是“计算马力”。这需要计算机很长的时间来完成刚刚提到的所有步骤。但是随着计算机运算越来越快,过去看起来不可能的机器学习已经变得很寻常。

如何识别猫

上面的例子很简单。正如我所说,让机器学习来预测测试成绩只是牛刀小试。但是同样的系统能够被用来做很复杂的事情,例如识别图片中的猫。

计算机不能像人类那样看事物。那么谷歌是如何让其识别物体的呢?

机器学习起到了至关重要的作用!这其中用到了同样的原理。你构建相似的能够识别图片中的猫的因素,颜色、形状等等。然后你将一些有猫的图片给计算机,然后观察模型的效果。

学习者然后进行调整,接着训练循环往复。但是猫或者其他物体的识别是很复杂的。为了模型的构建,这其中会涉及到很多的参数,你可能会发现为了让系统识别图像,这些参数的复杂性是难以想象的。

例如,这里是系统最终如何识别图片中地毯上的猫:

那个像画出来一样的图片被称为深度梦境(deep dream),它是在谷歌发布并公开关于机器学习如何识别物体的信息的深度梦境的代码中产生的图片。

这幅图片是当电脑识别出一只猫时,它的寻找模式,而不是实际的学习过程。但是如果机器真的能够看事物,这将会是对它如何看事物的一种提示。

顺便提一句,图片中对原始图片的改变是模型自己而不是研究人员创造的。它们首先试图找到一个事物的颜色、形状和其他特征集合并使用训练集来调整。

识别事件

为了说明这其中的复杂性,考虑一个这样的情况,如果你想要不仅仅识别物体,还要识别事件。谷歌解释说你不得不加入一些常识,一些人类的操作过程能够使机器学习理解各种各样的事物是如何添加到事件上的。

例如,像这样:

这里说明一下,机器学习看到了一个小人,一个篮子和一个鸡蛋。但是人们看到这些并知道这是一个寻找复活节彩蛋活动。

RankBrain 是什么情况

这些机器学习都适用于RankBrain吗?谷歌并没有涉及具体细节,事实上,在整个讨论过程中并没有提到。但在会谈中提到了之前没有发布的内容。

为什么?基本来说,为了竞争。谷歌分享了其中很多机器学习的内容,甚至在某些领域中涉及到了具体细节。但是对于机器学习在搜索中的工作谷歌并没有任何表示,这是为了避免泄露重要和独特的信息。

想要知道更多吗?

如果你希望知道更多,这里有谷歌的研究博文,文献和一些概要视频。

研究博文:http://googleresearch.blogspot.com/

文献:http://research.google.com/pubs/ArtificialIntelligenceandMachineLearning.html

视频:https://www.youtube.com/watch?v=l95h4alXfAA

原文发布于微信公众号 - 新智元(AI_era)

原文发表时间:2015-11-11

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

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏大数据文摘

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

1333
来自专栏机器之心

CVPR 2018 | 商汤科技提出GeoNet:用无监督学习感知3D场景几何

选自arXiv 作者:Zhichao Yin等 机器之心编译 参与:Panda 有效的无监督学习方法能缓解对有标注数据的需求,无监督学习技术与视觉感知领域的结合...

2593
来自专栏专知

【深度前沿】基于深度学习的智能视频分析,微软亚洲研究院梅涛博士ACM MM 2017 Tutorial解读

【导读】第25届ACM国际多媒体会议(ACM Multimedia, 简称ACM MM)于2017年10月23日至27日在美国硅谷Mountain View隆重...

3665
来自专栏AI科技评论

干货 | 极限元算法专家:深度学习在语音生成问题上的典型应用 | 分享总结

AI 科技评论按:深度学习在2006年崭露头角后,近几年取得了快速发展,在学术界和工业界均呈现出指数级增长的趋势;伴随着这项技术的不断成熟,深度学习在智能语音领...

3659
来自专栏机器之心

CVPR2018 | 直接建模视觉智能体?让「小狗」动起来~

选自arXiv 作者:Kiana Ehsani 等 机器之心编译 参与:Pedro、路 近日,来自华盛顿大学和艾伦人工智能研究所的研究者在 arXiv 上发布论...

3336
来自专栏AI科技评论

干货 | DeepMind 提出 GQN,神经网络也有空间想象力

AI 科技评论按:人类理解一个视觉场景的过程远比看上去复杂,我们的大脑能够根据已有的先验知识进行推理,推理的结果所能涵盖的内容也要远超出视网膜接收到的光线模式的...

933
来自专栏华章科技

LeCun:智能的精华在于预测能力!“预测学习”了解一下!

导读:在NIPS 2016大会上,著名研究者LeCun提出了预测学习(predictive learning)概念。在他的讲稿中,将机器学习比喻为“蛋糕”:

783
来自专栏AI研习社

采用通用语言模型的最新文本分类介绍

这篇文章向零基础同学介绍我们最新的论文,和以前的方法相比,该论文展示了如何采用更高的精度和更少的数据自动地进行文档分类。我们将使用简单的方式解释几种方法:自然语...

952
来自专栏UAI人工智能

UAI AlphaGo 系列—— AlphaGo 的确是一个大事件

1184
来自专栏机器之心

观点 | 我们该如何学习机器学习中的数学

数学达到什么水平才可以开始机器学习?人们并不清楚,尤其是那些在校期间没有研究过数学或统计学的人。

471

扫描关注云+社区