课程笔记 | Andrew Ng 深度学习课程笔记1

2017 年 9 月 10 日 黑龙江大学自然语言处理实验室 黄海广团队

第一周:深度学习引言( ( Introduction to Deep Learning)


1.1 什么是 神经网络?(What is a Neural Network)


我们常常用深度学习这个术语来指训练神经网络的过程。有时它指的是特别大规模的神经网络训练。那么神经网络究竟是什么呢?在这个视频中,我会讲解一些直观的基础知识。


让我们从一个房价预测的例子开始讲起。假设你有一个数据集,它包含了六栋房子的信息。所以,你知道房屋的面积是多少平方英尺或者平方米,并且知道房屋价格。这时,你想要拟合一个根据房屋面积预测房价的函数。如果你对线性回归很熟悉,你可能会说:“好吧,让我们用这些数据拟合一条直线。”于是你可能会得到这样一条直线。



但有点奇怪的是,你可能也发现了,我们知道价格永远不会是负数的。因此,为了替代一条可能会让价格为负的直线,我们把直线弯曲一点,让它最终在零结束。这条粗的蓝线最终就是你的函数,用于根据房屋面积预测价格。有部分是零,而直线的部分拟合的很好。你也许认为这个函数只拟合房屋价格。


作为一个神经网络,这几乎可能是最简单的神经网络。我们把房屋的面积作为神经网络的输入(我们称之为 x),通过一个节点(一个小圆圈),最终输出了价格(我们用 y 表示)。其实这个小圆圈就是一个单独的神经元。接着你的网络实现了左边这个函数的功能。在有关神经网络的文献中,你经常看得到这个函数。从趋近于零开始,然后变成一条直线。这个函数被称作 ReLu 激活函数,它的全称是 Rectified Linear Unit。rectify(修正)可以理解成 max(0,x),这也是你得到一个这种形状的函数的原因。



你现在不用担心不理解 ReLU 函数,你将会在这门课的后面再次看到它。如果这是一个单神经元网络,不管规模大小,它正是通过把这些单个神经元叠加在一起来形成。如果你把这些神经元想象成单独的乐高积木,你就通过搭积木来完成一个更大的神经网络。


让我们来看一个例子,我们不仅仅用房屋的面积来预测它的价格,现在你有了一些有关房屋的其它特征,比如卧室的数量,或许有一个很重要的因素,一家人的数量也会影响房屋价格,这个房屋能住下一家人或者是四五个人的家庭吗?而这确实是基于房屋大小,以及真正决定一栋房子是否能适合你们家庭人数的卧室数。


换个话题,你可能知道邮政编码或许能作为一个特征,告诉你步行化程度。比如这附近是不是高度步行化,你是否能步行去杂货店或者是学校,以及你是否需要驾驶汽车。有些人喜欢居住在以步行为主的区域,另外根据邮政编码还和富裕程度相关(在美国是这样的)。但在其它国家也可能体现出附近学校的水平有多好。



在图上每一个画的小圆圈都可以是 ReLU 的一部分,也就是指修正线性单元,或者其它稍微非线性的函数。基于房屋面积和卧室数量,可以估算家庭人口,基于邮编,可以估测步行化程度或者学校的质量。最后你可能会这样想,这些决定人们乐意花费多少钱。


对于一个房子来说,这些都是与它息息相关的事情。在这个情景里,家庭人口、步行化程度以及学校的质量都能帮助你预测房屋的价格。以此为例,x 是所有的这四个输入,y 是你尝试预测的价格,把这些单个的神经元叠加在一起,我们就有了一个稍微大一点的神经网络。这显示了神经网络的神奇之处,虽然我已经描述了一个神经网络,它可以需要你得到房屋面积、步行化程度和学校的质量,或者其它影响价格的因素。



神经网络的一部分神奇之处在于,当你实现它之后,你要做的只是输入 x,就能得到输出 y。因为它可以自己计算你训练集中样本的数目以及所有的中间过程。所以,你实际上要做的就是:这里有四个输入的神经网络,这输入的特征可能是房屋的大小、卧室的数量、邮政编码和区域的富裕程度。给出这些输入的特征之后,神经网络的工作就是预测对应的价格。同时也注意到这些被叫做隐藏单元圆圈 ,在一个神经网络中,它们每个都从输入的四个特征获得自身输入,比如说,第一个结点代表家庭人口,而家庭人口仅仅取决于 x1 和 x2 特征,换句话说,在神经网络中,你决定在这个结点中想要得到什么,然后用所有的四个输入来计算想要得到的。因此,我们说输入层和中间层被紧密的连接起来了。


值得注意的是神经网络给予了足够多的关于 x 的数据,和 y 给予了足够的训练样本有关 x 和 y。神经网络非常擅长计算从 x 到 y 的精准映射函数。


这就是一个基础的神经网络。你可能发现你自己的神经网络在监督学习的环境下是如此的有效和强大,也就是说你只要尝试输入一个 x,即可把它映射成 y,就好像我们在刚才房价预测的例子中看到的效果。



1.2 神经网络的监督学习( Supervised Learning with Neural Networks )


关于神经网络也有很多的种类,考虑到它们的使用效果,有些使用起来恰到好处,但事实表明,到目前几乎所有由神经网络创造的经济价值,本质上都离不开一种叫做监督学习的机器学习类别,让我们举例看看。


在监督学习中你有一些输入 x,你想学习到一个函数来映射到一些输出 y,比如我们之前提到的房价预测的例子,你只要输入有关房屋的一些特征,试着去输出或者估计价格 y。我们举一些其它的例子,来说明神经网络已经被高效应用到其它地方。



如今应用深度学习获利最多的一个领域,就是在线广告。这也许不是最鼓舞人心的,但真的很赚钱。具体就是通过在网站上输入一个广告的相关信息,因为也输入了用户的信息,于是网站就会考虑是否向你展示广告。


神经网络已经非常擅长预测你是否会点开这个广告,通过向用户展示最有可能点开的广告,这就是神经网络在很多家公司难以置信地提高获利的一种应用。因为有了这种向你展示你最有可能点击的广告的能力,而这一点击的行为的改变会直接影响到一些大型的在线广告公司的收入。


计算机视觉在过去的几年里也取得了长足的进步,这也多亏了深度学习。你可以输入一个图像,然后想输出一个索引,范围从 1 到 1000 来试着告诉你这张照片,它可能是,比方说,1000 个不同的图像中的任何一个,所以你可能会选择用它来给照片打标签。


深度学习最近在语音识别方面的进步也是非常令人兴奋的,你现在可以将音频片段输入神经网络,然后让它输出文本记录。得益于深度学习,机器翻译也有很大的发展。你可以利用神经网络输入英语句子,接着输出一个中文句子。


在自动驾驶技术中,你可以输入一幅图像,就好像一个信息雷达展示汽车前方有什么,据此,你可以训练一个神经网络,来告诉汽车在马路上面具体的位置,这就是神经网络在自动驾驶系统中的一个关键成分。


那么深度学习系统已经可以创造如此多的价值,通过智能的选择,哪些作为 x 哪些作为y,来针对于你当前的问题,然后拟合监督学习部分,往往是一个更大的系统,比如自动驾驶。这表明神经网络类型的轻微不同,也可以产生不同的应用,比如说,应用到我们在上一个视频提到的房地产领域,我们不就使用了一个普遍标准神经网络架构吗?


也许对于房地产和在线广告来说可能是相对的标准一些的神经网络,正如我们之前见到的。对于图像应用,我们经常在神经网络上使用卷积(Convolutional Neural Network),通常缩写为 CNN。对于序列数据,例如音频,有一个时间组件,随着时间的推移,音频被播放出来,所以音频是最自然的表现。作为一维时间序列(两种英文说法 one-dimensional time series/ temporal sequence).对于序列数据,经常使用 RNN,一种递归神经网络(Recurrent Neural Network),语言,英语和汉语字母表或单词都是逐个出现的,所以语言也是最自然的序列

数据,因此更复杂的 RNNs 版本经常用于这些应用。


对于更复杂的应用比如自动驾驶,你有一张图片,可能会显示更多的 CNN 卷积神经网络结构,其中的雷达信息是完全不同的,你可能会有一个更定制的,或者一些更复杂的混合的神经网络结构。所以为了更具体地说明什么是标准的 CNN 和 RNN 结构,在文献中你可能见过这样的图片,这是一个标准的神经网络。



你也可能见过这样的图片,这是一个卷积神经网络的例子。



我们会在后面的课程了解这幅图的原理和实现,卷积网络(CNN)通常用于图像数据。你可能也会看到这样的图片,而且你将在以后的课程中学习如何实现它。



递归神经网络(RNN)非常适合这种一维序列,数据可能是一个时间组成部分。


你可能也听说过机器学习对于结构化数据和非结构化数据的应用,结构化数据意味着数据的基本数据库。例如在房价预测中,你可能有一个数据库,有专门的几列数据告诉你卧室的大小和数量,这就是结构化数据。或预测用户是否会点击广告,你可能会得到关于用户的信息,比如年龄以及关于广告的一些信息,然后对你的预测分类标注,这就是结构化数据,意思是每个特征,比如说房屋大小卧室数量,或者是一个用户的年龄,都有一个很好的定义。相反非结构化数据是指比如音频,原始音频或者你想要识别的图像或文本中的内容。这里的特征可能是图像中的像素值或文本中的单个单词。



从历史经验上看,处理非结构化数据是很难的,与结构化数据比较,让计算机理解非结构化数据很难,而人类进化得非常善于理解音频信号和图像,文本是一个更近代的发明,但是人们真的很擅长解读非结构化数据。


神经网络的兴起就是这样最令人兴奋的事情之一,多亏了深度学习和神经网络,计算机现在能更好地解释非结构化数据,这是与几年前相比的结果,这为我们创造了机会。许多新的令人兴奋的应用被使用,语音识别、图像识别、自然语言文字处理,甚至可能比两三年前的还要多。因为人们天生就有本领去理解非结构化数据,你可能听说了神经网络更多在媒体非结构化数据的成功,当神经网络识别了一只猫时那真的很酷,我们都知道那意味着什么。


但结果也表明,神经网络在许多短期经济价值的创造,也是基于结构化数据的。比如更好的广告系统、更好的利润建议,还有更好的处理大数据的能力。许多公司不得不根据神经网络做出准确的预测。


因此在这门课中,我们将要讨论的许多技术都将适用,不论是对结构化数据还是非结构化数据。为了解释算法,我们将在使用非结构化数据的示例中多画一点图片,但正如你所想的,你自己团队里通过运用神经网络,我希望你能发现,神经网络算法对于结构化和非结构化数据都有用处。


神经网络已经改变了监督学习,正创造着巨大的经济价值,事实证明,基本的神经网络背后的技术理念大部分都离我们不遥远,有的是几十年,那么为什么他们现在才刚刚起步,效果那么好,下一集视频中我们将讨论为什么最近的神经网络已经成为你可以使用的强大工具。




         欢迎关注公众号学习交流~          


登录查看更多
1

相关内容

2019->2020必看的十篇「深度学习领域综述」论文
专知会员服务
270+阅读 · 2020年1月1日
专知会员服务
115+阅读 · 2019年12月24日
深度学习面试100题(第6-10题)
七月在线实验室
7+阅读 · 2018年7月9日
这份深度学习课程笔记获吴恩达点赞
全球人工智能
4+阅读 · 2018年3月13日
【吴恩达deeplearning.ai笔记二】通俗讲解神经网络上
机器学习研究会
4+阅读 · 2018年3月10日
入门 | 一文概览深度学习中的激活函数
深度学习世界
4+阅读 · 2017年11月3日
课程笔记|吴恩达Coursera机器学习 Week1 笔记-机器学习基础
机器学习研究会
4+阅读 · 2017年10月18日
笔记 | 吴恩达Coursera Deep Learning学习笔记
AI100
4+阅读 · 2017年9月27日
课程 | Andrew Ng 深度学习课程笔记3
黑龙江大学自然语言处理实验室
3+阅读 · 2017年9月15日
Deep Learning for Energy Markets
Arxiv
10+阅读 · 2019年4月10日
Arxiv
21+阅读 · 2019年3月25日
Arxiv
5+阅读 · 2017年10月27日
VIP会员
相关资讯
深度学习面试100题(第6-10题)
七月在线实验室
7+阅读 · 2018年7月9日
这份深度学习课程笔记获吴恩达点赞
全球人工智能
4+阅读 · 2018年3月13日
【吴恩达deeplearning.ai笔记二】通俗讲解神经网络上
机器学习研究会
4+阅读 · 2018年3月10日
入门 | 一文概览深度学习中的激活函数
深度学习世界
4+阅读 · 2017年11月3日
课程笔记|吴恩达Coursera机器学习 Week1 笔记-机器学习基础
机器学习研究会
4+阅读 · 2017年10月18日
笔记 | 吴恩达Coursera Deep Learning学习笔记
AI100
4+阅读 · 2017年9月27日
课程 | Andrew Ng 深度学习课程笔记3
黑龙江大学自然语言处理实验室
3+阅读 · 2017年9月15日
Top
微信扫码咨询专知VIP会员