深度学习基础指南

2017 年 11 月 15 日 大数据技术
来自:开源中国社区

链接:www.oschina.net/translate/how-deep-learning-works

原文:https://medium.freecodecamp.org/want-to-know-how-deep-learning-works-heres-a-quick-guide-for-everyone-1aedeca8807



人工智能和机器学习是现如今最热门的话题了。


“人工智能”这个词每天被到处乱用。你听到开发者们说他们要学习人工智能。你也会听到管理者说他们要把人工智能技术应用他们的服务中。但他们往往并不了解人工智能。


读完这篇文章,你将会了解到人工智能和机器学习的基础知识。更重要的是你将会了解到最流行的一种机器学习技术——深度学习是如何工作的。


这篇指引是面向大众的,所以文中不会出现高等数学的内容。


背景知识


理解学习深度的第一步是掌握重要术语之间的差异。


人工智能与机器学习

人工智能是人类智能在计算机中的复现。


在人工智能研究的起步阶段,研究人员正试图在计算机上复现人类智能的具体任务 —— 比如玩游戏。


他们引入了计算机需要遵守的大量规则。计算机有一个具体的可能行动清单,并根据这些规则做出决定。

机器学习指的是机器学习使用大数据集而不是硬编码规则的能力。


机器学习允许计算机自己学习。这种学习利用了现代计算机的处理能力,它可以很容易地处理大型数据集。


监督学习与无监督学习

监督学习涉及使用具有输入和期望输出的标记数据集。


当你使用监督学习训练人工智能时,你给计算机一个输入内容并告诉计算机预期的输出内容。


如果人工智能产生的输出是错误的,它将调整计算方法。这个过程在数据集上迭代完成,直到 AI 不再犯错误为止。


监督学习的一个例子是天气预报人工智能。它学习用历史数据预测天气。训练数据有输入(压力、湿度、风速)和输出(温度)。

无监督学习是使用没有特定结构的数据集进行机器学习的任务。


当你使用无监督学习训练人工智能时,你让人工智能对数据进行逻辑分类。

无监督学习的一个例子是一个电子商务网站的行为预测人工智能。它不会通过使用标记的输入和输出数据集来学习。


相反,它将创建自己的输入数据分类。它会告诉你哪种用户最有可能购买不同的产品。


那么,深度学习是怎样工作的?


现在你有了足够的预备知识去理解深度学习是什么,以及深度学习是怎样工作的。


深度学习是一种机器学习的方法。深度学习允许我们训练一个人工智能系统通过给定一个输入数据集,去预测输出数据。监督和无监督学习都可以运用到训练人工智能上。


我们将会通过一个飞机票价评估服务来学习深度学习是如何工作的。我们会使用监督学习方法来训练这个系统。


我们希望我们的飞机票价评估系统通过以下数据来预测票价(为了系统的简单,我们没有使用返程票价的数据):


  • 始发机场

  • 目的地机场

  • 启程日期

  • 航空公司


神经网络


让我们看看人工智能的大脑。


像动物一样,我们的评估系统 AI 的大脑有神经元。它们以圆圈表示。这些神经元之间相互连接。



神经元被分成三组不同的层级:


1、输入层

2、隐含层

3、输出层


输入层接收输入数据。在我们的例子中,输入层有四个神经元:始发机场、目的地机场、启程日期和航空公司。输入层将输入传递给第一个隐含层。


隐含层对输入数据进行数学计算。创建神经网络所面临的挑战之一是决定隐含层的数目,以及每个层的神经元数目。


深度学习中的“深度”指的就是因为它有一个以上的隐藏层。


输出层返回输出数据。在我们的例子中,它给了我们对于价格的预测。



那么深度学习系统如何给出对于价格的预测呢?


这就是深度学习的魔力所在。


在每个神经元之间都有一个“权重”。这个权重描述了输入数据的重要性,初始权重是随机设置的。


当预测机票价格的时候,启程日期是一个重要的因素。因此,启程日期神经元连接将会有高的权重。



每个神经元都有一个激活函数。如果没有数学推到,这些函数很难理解。


简单来说,激活函数的目的是标准化来自神经元的输出。


一旦一个数据集被传入到神经网络的所有的层,激活函数将通过输出层返回数据。

这没什么难的,对吧?


训练神经网络


训练人工智能是深度学习中最困难的部分。为什么?


1、你需要一个很大的数据集。

2、你需要强大的计算能力。


对于我们的机票价格估计系统,我们需要找到机票价格的历史数据。由于机场和起飞日期的可能组合有很多,因此我们需要一个非常大的机票价格清单。


为了训练人工智能,我们需要从数据集中输入它,并将其输出与数据集的输出进行比较。由于人工智能还未经训练,其输出将是错误的。


一旦我们完成了整个数据集,我们就可以创建一个函数,告诉我们人工智能系统的输出与我们需要的输出的差距有多大。这个函数叫做成本函数。


理想情况下,我们希望我们的成本函数为零。这要求人工智能的输出数据和数据集的输出数据完全相同。


如何降低成本函数?


我们可以改变神经元之间的权重。我们可以随机地改变权重,直到我们的成本函数是低的,但这个方法效率不高。


相反,我们将使用一种称为梯度下降的技术。


梯度下降是一种允许我们找到函数最小值的技术。在我们的例子中,我们在寻找最小的成本函数。


它通过在每次数据集迭代后以较小的增量改变权重。在一定的权重集上通过计算成本函数曲线的导数(或梯度),我们可以看到降低成本函数的方向是什么。




为了最小化成本函数,你需要多次迭代你的数据集。这就是为什么你需要大量的计算能力。


使用梯度下降调整权重是自动完成的。这就是深度学习的魔力!


一旦我们训练了我们的机票价格估计AI,我们就可以用它来预测机票未来的价格。

哪里可以学到更多深度学习知识?


还有许多其他类型的神经网络:用于计算机视觉的卷积神经网络和用于自然语言处理的递归神经网络。


如果你想学习深度学习的技术方面,我建议你参加一个在线网络课程。


目前,学习深度学习最好的课程是吴恩达(Andrew Ng)的深度学习课程。如果你对获得证书不感兴趣,你不需要为课程付钱。你可以免费旁听。


如果你有任何的问题,或者需要更多的技术概念的解释,请在下面询问。


总结


  • 深度学习利用神经网络来模仿动物的智力。

  • 一个神经网络钟有三种类型的层级神经元:输入层,隐含层和输出层。

  • 神经元之间的联系与权重有关,权重来指示输入值的重要性。

  • 神经元在数据上应用一个激活函数来“标准化”神经元的输出。

  • 训练一个神经网络,你需要一个很大数据集。

  • 迭代数据集和比较输出将产生一个成本函数,表明人工智能与实际输出有多大的差距。

  • 每次迭代后,通过梯度下降调整神经元之间的权值,降低代价函数。


如果你喜欢这篇文章请给我一些掌声,让更多的人看到它。谢谢!



●本文编号452,以后想阅读这篇文章直接输入452即可

●输入m获取文章目录

推荐↓↓↓
 

算法与数据结构

更多推荐18个技术类微信公众号

涵盖:程序人生、算法与数据结构、黑客技术与网络安全、大数据技术、前端开发、Java、Python、Web开发、安卓开发、iOS开发、C/C++、.NET、Linux、数据库、运维等。

登录查看更多
2

相关内容

监督学习是指:利用一组已知类别的样本调整分类器的参数,使其达到所要求性能的过程,也称为监督训练或有教师学习。 监督学习是从标记的训练数据来推断一个功能的机器学习任务。训练数据包括一套训练示例。在监督学习中,每个实例都是由一个输入对象(通常为矢量)和一个期望的输出值(也称为监督信号)组成。监督学习算法是分析该训练数据,并产生一个推断的功能,其可以用于映射出新的实例。一个最佳的方案将允许该算法来正确地决定那些看不见的实例的类标签。这就要求学习算法是在一种“合理”的方式从一种从训练数据到看不见的情况下形成。
【实用书】Python机器学习Scikit-Learn应用指南,247页pdf
专知会员服务
257+阅读 · 2020年6月10日
【强化学习】深度强化学习初学者指南
专知会员服务
178+阅读 · 2019年12月14日
【书籍】深度学习框架:PyTorch入门与实践(附代码)
专知会员服务
160+阅读 · 2019年10月28日
【开源书】PyTorch深度学习起步,零基础入门(附pdf下载)
专知会员服务
107+阅读 · 2019年10月26日
【干货】机器学习和深度学习概念入门(下)
机器学习研究会
6+阅读 · 2017年12月31日
迁移学习在深度学习中的应用
专知
23+阅读 · 2017年12月24日
深度学习基础之LSTM
全球人工智能
27+阅读 · 2017年12月18日
资源 | 一文读懂深度学习(附学习资源)
AI100
14+阅读 · 2017年11月30日
【2万赞】一文读懂深度学习(附学习资源)
新智元
7+阅读 · 2017年11月10日
一文读懂深度学习(附学习资源)
深度学习世界
6+阅读 · 2017年11月9日
独家 | 一文读懂深度学习(附学习资源)
THU数据派
4+阅读 · 2017年11月8日
How to Fine-Tune BERT for Text Classification?
Arxiv
13+阅读 · 2019年5月14日
Arxiv
13+阅读 · 2019年1月26日
Arxiv
3+阅读 · 2018年11月14日
Paraphrase Generation with Deep Reinforcement Learning
Arxiv
5+阅读 · 2018年4月22日
Arxiv
4+阅读 · 2018年4月9日
Arxiv
21+阅读 · 2018年2月14日
Arxiv
10+阅读 · 2017年12月29日
VIP会员
相关VIP内容
相关资讯
【干货】机器学习和深度学习概念入门(下)
机器学习研究会
6+阅读 · 2017年12月31日
迁移学习在深度学习中的应用
专知
23+阅读 · 2017年12月24日
深度学习基础之LSTM
全球人工智能
27+阅读 · 2017年12月18日
资源 | 一文读懂深度学习(附学习资源)
AI100
14+阅读 · 2017年11月30日
【2万赞】一文读懂深度学习(附学习资源)
新智元
7+阅读 · 2017年11月10日
一文读懂深度学习(附学习资源)
深度学习世界
6+阅读 · 2017年11月9日
独家 | 一文读懂深度学习(附学习资源)
THU数据派
4+阅读 · 2017年11月8日
相关论文
How to Fine-Tune BERT for Text Classification?
Arxiv
13+阅读 · 2019年5月14日
Arxiv
13+阅读 · 2019年1月26日
Arxiv
3+阅读 · 2018年11月14日
Paraphrase Generation with Deep Reinforcement Learning
Arxiv
5+阅读 · 2018年4月22日
Arxiv
4+阅读 · 2018年4月9日
Arxiv
21+阅读 · 2018年2月14日
Arxiv
10+阅读 · 2017年12月29日
Top
微信扫码咨询专知VIP会员