深度学习之从零带你入门(扫盲篇)

一、基本概念扫盲
人工智能、机器学习、神经网络、深度学习这些字眼相信一些人都见过,但是并不知道他们之间的关系,这里本人整理相关资料后给出较为准确的定义。

这里大家先看如下一张图:



正如上图所示,人工智能指的是整个领域,它包含了机器学习这个概念,而深度学习则又包含在机器学习的概念范畴当中。三个概念在时间顺序上依次发展,逐渐细化和深入。


人工智能(AI)
人工智能的范围是相当广的,
泛指人造的智能机器或智能系统,能够模拟人的智慧活动。像智能家电,智能机器人,无人驾驶,人机下棋等等都是人工智能的体现。大致可以分为两大类型:

  • 第一类以专家系统为代表。它把人类以及专家的知识和智慧输入到计算机的程序系统中,使用时根据知识库对问题进行推理和决策。
  • 第二类以机器学习为代表,不再仅仅依靠人类向系统直接输入知识,而是由系统根据实际的经验(数据)不断的自我学习,通过完善预测模型参数或者提炼出深层次的抽象认知来对新的问题进行判断和求解。

显然,具有自我学习能力的人工智能更有潜力,更有可能超越人类。

机器学习(Machine learn):

分为两大类型:

  • 第一类采用近乎纯数学的方法,即推断统计学的方法,从已知数据(样本)中学习到问题模型和参数,外加各种技巧,对新的问题进行预测。线性回归,逻辑回归,支持向量机,决策树,k 近邻,k 平均,EM 算法,以及和贝叶斯推断和马尔科夫过程相关的算法都属于这一类。
  • 第二类采用人工神经网络(简称 ANN)的方法。以人的认知系统和神经系统为出发点,通过研究人的神经元系统的认知规律,用计算机模拟人的神经系统,以达到学习和求解问题的能力。感知机,反向传播算法,Hopfield 网络,玻尔兹曼机,受限波尔茨曼机,深度置信网,卷积神经网络,循环神经网络都属于这个领域。

数学的方法,更注重背后的原理和证明,比较严谨。人工神经网络的方法更接近人的智能处理方式。但是,由于人的认知方式并没有完全搞清楚,这使得人工神经网络的方法就没数学方法那么严谨。很多实用的算法至今都缺乏严谨的证明(这在数学家眼里是不能容忍的)。

深度学习(Deep learn):

深度学习使得机器学习能够实现众多的应用,并拓展了人工智能的领域范围深度学习摧枯拉朽般地实现了各种任务,使得似乎所有的机器辅助功能都变为可能。无人驾驶汽车,预防性医疗保健,甚至是更好的电影推荐,都近在眼前,或者即将实现。
深度学习是机器学习的许多方法之一。其他方法包括决策树学习、归纳逻辑编程、聚类、强化学习和贝叶斯网络等。深度学习的灵感来自大脑的结构和功能,即许多神经元的互连。人工神经网络(ANN)就是模拟大脑生物结构的算法。


神经网络(ANN):

分为两个类型:

  • 第一类是浅层的网络。如早期的感知机,它只有一个输入层和输出层组成。另外,上面提到的推断统计类型的机器学习方法从广义上说基本都可以归到这一类。

  • 第二类就是深层的网络,即深度学习网络。它除了输出层和输出层之外,还有一个或多个隐层。通过学习算法,在隐层实现了对数据的抽象表达,如同人的认知系统。

显然,深度学习能够实现更高的智能。人总能根据经验从表现获取的信息,即感知里面抽象出更深层的认知。深度学习追求的正是这个目标。



二、常见的学习方式

根据数据类型的不同,对一个问题的建模有不同的方式。在机器学习或者人工智能领域,人们首先会考虑算法的学习方式。在机器学习领域,有几种主要的学习方式。将算法按照学习方式分类是一个不错的想法,这样可以让人们在建模和算法选择的时候能根据输入数据来选择最合适的算法来获得最好的结果。

监督式学习

在监督式学习下,输入数据被称为“训练数据”,每组训练数据有一个明确的标识或结果,如对防垃圾邮件系统中“垃圾邮件”“非垃圾邮件”,对手写 数字识别中的“1“,”2“,”3“,”4“等。在建立预测模型的时候,监督式学习建立一个学习过程,将预测结果与“训练数据”的实际结果进行比较,不断 的调整预测模型,直到模型的预测结果达到一个预期的准确率。监督式学习的常见应用场景如分类问题和回归问题。常见算法有逻辑回归(Logistic Regression)和反向传递神经网络(Back Propagation Neural Network)

非监督式学习:

在非监督式学习中,数据并不被特别标识,学习模型是为了推断出数据的一些内在结构。常见的应用场景包括关联规则的学习以及聚类等。常见算法包括Apriori算法以及k-Means算法。

半监督式学习:

在此学习方式下,输入数据部分被标识,部分没有被标识,这种学习模型可以用来进行预测,但是模型首先需要学习数据的内在结构以便合理的组织数据 来进行预测。应用场景包括分类和回归,算法包括一些对常用监督式学习算法的延伸,这些算法首先试图对未标识数据进行建模,在此基础上再对标识的数据进行预 测。如图论推理算法(Graph Inference)或者拉普拉斯支持向量机(Laplacian SVM.)等。

强化学习:

在这种学习模式下,输入数据作为对模型的反馈,不像监督模型那样,输入数据仅仅是作为一个检查模型对错的方式,在强化学习下,输入数据直接反馈 到模型,模型必须对此立刻作出调整。常见的应用场景包括动态系统以及机器人控制等。常见算法包括Q-Learning以及时间差学习(Temporal difference learning)

在企业数据应用的场景下, 人们最常用的可能就是监督式学习和非监督式学习的模型。 在图像识别等领域,由于存在大量的非标识的数据和少量的可标识数据, 目前半监督式学习是一个很热的话题。 而强化学习更多的应用在机器人控制及其他需要进行系统控制的领域。





三、常见的神经网络

BP神经网络

BP是后向传播的英文缩写,那么传播对象是什么?传播的目的是什么?传播的方式是后向,可这又是什么意思呢。

传播的对象是误差,传播的目的是得到所有层的估计误差,后向是说由后层误差推导前层误差:

即BP的思想可以总结为

利用输出后的误差来估计输出层的直接前导层的误差,再用这个误差估计更前一层的误差,如此一层一层的反传下去,就获得了所有其他各层的误差估计。 “BP神经网络模型拓扑结构包括输入层(input)、隐层(hide layer)和输出层(output layer)

深度神经网络DNN

2006年,Hinton利用预训练方法缓解了局部最优解问题,将隐含层推动到了7层,神经网络真正意义上有了深度。深度没有固定定义,在语音识别中4层神经网络就被认为是较深的,而在图像识别中20层以上的网络屡见不鲜。为了克服梯度消失,ReLU、maxout等传输函数代替了sigmoid,形成了如今DNN的基本形式。单从结构上来说全连接的DNN和多层感知机是没有任何区别的。

全连接DNN的结构里下层神经元和所有的上层神经元都能够形成连接,带来的潜在问题是参数数量的膨胀。

卷积神经网络CNN

对于CNN来说,并不是所有上下层神经元都能直接相连,而是通过卷积作为中介,同一个卷积核在所有图像内是共享的,图像通过卷积操作后仍然保留原先的位置关系。

循环神经网络RNN

全连接的DNN还存在另一个问题,无法对时间序列上的变化进行建模。然而,样本出现的时间顺序对于自然语言处理、语音识别、手写体识别等应用非常重要。为了适应这种需求,就出现了循环神经网络。 
在普通的全连接网络或CNN中,每层神经元的信号只能向上一层传播,样本的处理在各个时刻独立,因此又被称为前向神经网络(Feed-forward Neural Network)。而在RNN中,神经元的输出可以在下一个时间戳直接作用到自身。


猜你喜欢

转载自blog.csdn.net/z4909801/article/details/78398284
今日推荐