深度学习(deep learning)是机器学习的分支,是一种以人工神经网络为架构,对数据进行表征学习的算法。
深度学习
观测值(例如一幅图像)可以使用多种方式来表示,如每个像素强度值的向量,或者更抽象地表示成一系列边、特定形状的区域等。而使用某些特定的表示方法更容易从实例中学习任务(例如,人脸识别或面部表情识别)。深度学习的好处是用非监督式或半监督式的特征学习和分层特征提取高效算法来替代手工获取特征。
表征学习的目标是寻求更好的表示方法并创建更好的模型来从大规模未标记数据中学习这些表示方法。表示方法来自神经科学,并松散地创建在类似神经系统中的信息处理和对通信模式的理解上,如神经编码,试图定义拉动神经元的反应之间的关系以及大脑中的神经元的电活动之间的关系。
至今已有数种深度学习模型,如深度神经网络、卷积神经网络和深度置信网络和循环神经网络已被应用在计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。
神经网络
所谓的神经网络(Neural Network,NN)是人工神经网络(Artificial Neural Network,ANN)的简称,在机器学习和认知科学领域,是一种模仿生物神经网络(动物的中枢神经系统,特别是大脑)的结构和功能的数学模型或计算模型,用于对函数进行估计或近似。
神经网络由大量的人工神经元联结进行计算。大多数情况下人工神经网络能在外界信息的基础上改变内部结构,是一种自适应系统,通俗的讲就是具备学习功能。现代神经网络是一种非线性统计性数据建模工具,神经网络通常是通过一个基于数学统计学类型的学习方法(Learning Method)得以优化,所以也是数学统计学方法的一种实际应用,通过统计学的标准数学方法我们能够得到大量的可以用函数来表达的局部结构空间。
&npsp;
另一方面在人工智能学的人工感知领域,我们通过数学统计学的应用可以来做人工感知方面的决定问题(也就是说通过统计学的方法,人工神经网络能够类似人一样具有简单的决定能力和简单的判断能力),这种方法比起正式的逻辑学推理演算更具有优势。
神经元 :神经元是神经网络的重要组成部分。所谓的神经元,其示意如下图神经元简图1所示:
图1-1 神经元简图
该图所表达的是一系列的数学计算。如果简单的描述,可以将其看作是简单的乘累加运算。当多个神经元按照一定的规则和顺序进行连接和叠加,便形成了神经网络。在深度学习神经网络当中,最普通最简单的神经网络为全连接神经网络。全连接神经网络,即上一层的神经元与下一层的神经元之间都有相互的连接关系,具体可以参考下图全连接神经网络所示:
图1-2 全连接神经网络
如果简单的对全连接神经网络进行数学的描述,可以认为,全连接神经网络实际上是上一层神经元与下一层神经元的矩阵乘法计算。
最后,我们稍作总结:
在这一章节中,我们了解到深度学习是机器学习中一种基于对数据进行表征学习的算法,而表征学习的目标是寻求更好的表示方法并创建更好的模型,这就有赖于神经网络的搭建计算。
《FPGA 在深度神经网络当中的应用》一文将分为三个章节发布,下一篇文章,我们将详细解读第二章节——卷积神经网络。
张家龙
海云捷迅资深架构师
张家龙,海云捷迅资深架构师,10余年开发和架构经验,对Linux、云计算、虚拟化、人工智能与深度学习,及人工智能算法有深入研究和见解,并在云计算和人工智能方面具备丰富的开发和实战经验。