首页 / 行业
入门深度学习工作原理都能看懂吗
2019-07-08 11:11:00
入门学习深度学习之前,有必要先了解一下深度学习的工作原理。著名程序猿小哥 Radu Raicea 特意为入门学习者写了一篇文章,利用一个票价预测工具的例子解释深度学习的工作原理,不需要有多高深的数学知识,人人都能看懂。
当前,人工智能和机器学习应该是最火爆的话题了,你估计经常听到有很多程序猿朋友说要去学 AI,很多公司宣布要应用AI技术,可是很多人其实并没有完全理解人工智能和机器学习。因此 Radu Raicea 觉得在解释深度学习原理之前,我们有必要了解几个基本术语,就当一个入门小测验好了:
你知道啥是机器学习吗?
机器学习指机器能够学习利用大数据集学习而不是硬编码规则,它是人工智能的核心,是使计算机具有智能的根本途径,主要使用归纳、综合而不是演绎。
机器学习能让电脑自我学习,这种学习类型得益于现代计算机强大的处理能力,可以轻易地处理大数据集。
你知道啥是监督学习吗?
监督学习应用了包含输入值和期望输出值的标记数据集。
当用监督学习训练AI的时候,我们需要给它输入值,并告诉它期望输出值。如果AI生成的输出值有误,它会调整自身计算。这个过程会随着数据集的更新而不断迭代,直到AI不再犯错。
监督学习的一个典型应用就是天气预报AI应用。AI利用历史数据学习如何预测天气。训练数据包括输入值(气压、湿度、风速等)和输出值(温度等)。
你知道啥是无监督学习吗?
无监督学习就是使用没有具体结构的数据集。
当使用无监督学习方法训练AI时,需要让AI对数据进行分类。
无监督学习的一个应用例子就是为电商网站预测消费行为。AI没有利用标记过的输入值和输出值数据集,相反它会对输入数据自己分类,从而能让网站知道顾客最喜欢买什么东西。
为啥要讲这两个概念呢?
因为监督学习和无监督学习正是深度学习中的两种学习方法。
祝贺你通过入门小测验,现在我们开启深度学习的大门。
深度学习的概念源于人工神经网络的研究,是机器学习研究中的一个新的领域,目的是建立、模拟人脑进行分析学习的神经网络,它模仿人脑的机制来解释数据,例如图像,声音和文本。
作为一种机器学习方法,深度学习能让我们用给定的输入值训练AI预测输出值。监督学习和无监督学习都能用来训练AI。
我们来看看 Radu Raicea 怎样用制作一个票价预测小工具的例子解释深度学习的工作原理,然后用监督式学习的方法训练它。
首先我们希望这个票价预测工具能用以下输入值预测票价(在这里先不考虑往返机票):
出发机场
到达机场
出发时间
航线
神经网络
我们来看看AI的大脑——神经网络。 和动物一样,这个票价预测AI的大脑也有神经元。下图中的圆圈代表神经元,它们相互连接:
神经元被分为三种不同的层级:
输入层(input layer)
隐藏层(可能有多个)(hidden layer)
输出层(output layer)
输入层接收输入数据。在我们的票价预测AI中,输入层有4个神经元:出发机场,到达机场,出发日期和航线。输入层收到这些信息后会传递给第一个隐藏层。
隐藏层会对输入数据进行数学运算。如何决定隐藏层的数量、以及每层神经元的数量仍是构建神经网络的挑战。
深度学习中的“深度”俩字指的就是神经元中有不止一个隐藏层。
最后,输出层会返回输出数据,在这个例子中,就是AI预测出票价。
所以,这个AI工具到底是怎么计算出预测票价的呢?
当然是靠神奇的深度学习。
神经元之间的每个连接都和权重(weight)紧密相关,它决定了输入值的重要性。初始权重是随机设置的。 当预测某个航班的机票价格时,出发日期是最重要的因素之一,因此,出发日期神经元之间的连接会有很大的权重。
每个神经元都有一个激活函数。如果没有一定的数学知识,很难理解这些函数。不过,这篇文章面向入门者的,所以这里不再讲解深奥的数学知识。
简单来说,这些函数的目标之一就是将神经元的输出值“标准化”。
一旦一组输入数据通过神经网络的所有层级,AI会通过输出层返回输出值。
这不难理解,对吧?
训练神经网络
深度学习中最难的部分就是训练AI,为什么?
你需要大数据集。
你需要有满足训练所需的强大的计算能力。
拿我们要做的票价预测AI来说,我们需要有历史机票价格的数据。而且因为机场和出发日期的组合有很多种可能,因此这个票价列表信息会非常庞大。
要训练AI,我们需要为它提供来自数据集中的输入值,然后将AI的输出值与数据集的输出值相比较。由于AI还没有接受训练,因此输出值会有很多错误。
一旦将整个数据集中的所有数据输入完成,我们可以创建一个函数,为我们展示AI的输出值与真正的输出值差距有多大。这个函数就叫做“代价函数”(Cost Function)。
理想状态下,我们希望代价函数为零,但是只有AI的输出值和数据集的输出值一样的时候,才代表达到了这个状态。
那问题来了,怎样降低代价函数?
我们上文中提到了“权重”这个东东,还记得吗?在减少代价函数的操作中,权重起着至关重要的作用。改变神经元间的权重可以调整代价函数,我们可以随机改变它们直到代价函数接近0,但这种方法效率很低。
在这种情况下,一种叫做梯度下降(Gradient Descent)的神器隆重出场。
梯度下降是一种寻找函数最小值的方法,我们要找到机票价格模型中代价函数的最小值,就要靠梯度下降。
梯度下降的工作原理是在数据集的每次迭代后,以很小的增量改变权重。通过计算确定权重代价函数的导数(或梯度),我们就能发现朝哪个方向可以找到最小值。
要想将代价函数最小化,我们需要多次迭代数据集,这就是为什么刚才说需要有强大的计算能力。
利用梯度下降更新权重可以自动完成,这就是深度学习的魔力所在!等我们训练完机票价格预测AI工具后,我们就可以用它来预测未来的机票价格了!
哦对了,神经网络也有很多类型,不同的AI使用的神经网络也不同,比如计算机视觉技术采用的是卷积神经网络(Convolutional Neural Networks),自然语言处理用的是循环神经网络(Recurrent Neural Networks)。
最后对深度学习做个总结:
深度学习需要神经网络模仿动物的智力。
一个神经网络中有三种神经元层,即输入层、隐藏层(可有多个层级)和输出层。
神经元之间的连接与权重有关,它决定了输入值的重要性。
将激活函数应用到数据中,可以使神经元的输出值“标准化”。
要训练神经网络,你需要一个大数据集。
迭代数据集和将AI输出与数据集输出进行对比,将产生一个代价函数,显示AI的输出与真实输出之间的差异。
数据集的每一次迭代后,神经元之间的权重会通过梯度下降的方式,降低代价函数的值。
最新内容
手机 |
相关内容
微软Ignite 2023技术大会:人工智能
微软Ignite 2023技术大会:人工智能转型,技术驱动变革,人工智能,趋势,智能,数据隐私,企业,解决方案,人工智能(Artificial Intelligence,A什么是带阻三极管,带阻三极管的基本
什么是带阻三极管,带阻三极管的基本结构、工作原理、电阻比率、常用型号、应用、检测、操作规程及发展历程,三极管,检测,工作原理,什么是射流继电器,射流继电器的基本
什么是射流继电器,射流继电器的基本结构、技术参数、工作原理、负载分类、如何选用、操作规程及发展历程,继电器,工作原理,分类,负什么是互感器,互感器的组成、特点、
什么是互感器,互感器的组成、特点、原理、分类、操作规程及发展趋势,发展趋势,分类,输入,计量,用于,信号,AD574AKD互感器是一种用于什么是NFC控制器,NFC控制器的组成、
什么是NFC控制器,NFC控制器的组成、特点、原理、分类、常见故障及预防措施,控制器,分类,模式,移动支付,数据,信号,NFC(Near Field Com什么是电机启动器,电机启动器的基本
什么是电机启动器,电机启动器的基本结构、优缺点、工作原理、类型、检测、操作规程及发展历程,工作原理,类型,检测,结构,启动,断开,什么是真空接触器,真空接触器的基本
什么是真空接触器,真空接触器的基本结构、优缺点、工作原理、应用、安装、检测、故障原因及发展历程,原因,故障,检测,安装,结构,工位移传感器结构类型及工作原理与应
位移传感器结构类型及工作原理与应用,工作原理,类型,结构,位移传感器,常见,效应,FDV302P位移传感器是一种用于测量物体位移或位置的