学习任一门知识都应该先从其历史开始,把握了历史,也就抓住了现在与未来 ———by BryantLJ¶
<http://localhost:8888/notebooks/week_1/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0_1.ipynb#%E5%AD%A6%E4%B9%A0%E4%BB%BB%E4%B8%80%E9%97%A8%E7%9F%A5%E8%AF%86%E9%83%BD%E5%BA%94%E8%AF%A5%E5%85%88%E4%BB%8E%E5%85%B6%E5%8E%86%E5%8F%B2%E5%BC%80%E5%A7%8B%EF%BC%8C%E6%8A%8A%E6%8F%A1%E4%BA%86%E5%8E%86%E5%8F%B2%EF%BC%8C%E4%B9%9F%E5%B0%B1%E6%8A%93%E4%BD%8F%E4%BA%86%E7%8E%B0%E5%9C%A8%E4%B8%8E%E6%9C%AA%E6%9D%A5-%E2%80%94%E2%80%94%E2%80%94by-BryantLJ>
学习深度学习也需要了解深度学习的经历过程,能够更好的帮助我们理解深度学习的变更和趋势。



深度学习经过3次浪潮,起起伏伏,目前处于第三次浪潮中,也是风口上的猪。其历史时间轴偷图如下:                
那么是什么原因让深度学习起起落落呢?我们将通过几个关键节点给出答案,同时认识深度学习的变更和历史趋势。



第一次兴起--神经网络启蒙



1943年由神经科学家麦卡洛克(W.S.McCilloch)
和数学家皮兹(W.Pitts)在《数学生物物理学公告》上发表论文《神经活动中内在思想的逻辑演算》(A Logical Calculus of the
Ideas Immanent in Nervous
Activity)。建立了神经网络和数学模型,称为MCP模型。所谓MCP模型,其实是按照生物神经元的结构和工作原理构造出来的一个抽象和简化了的模型,也就诞生了所谓的“模拟大脑”,人工神经网络的大门由此开启。MCP当时是希望能够用计算机来模拟人的神经元反应的过程,该模型将神经元简化为了三个过程:输入信号线性加权,求和,非线性激活(阈值法)。如下图所示
该模型建立了深度学习的基本思想,在后面的课程中我们将不断遇到。



1958年计算机科学家罗森布拉特( Rosenblatt)提出了两层神经元组成的神经网络,称之为“感知器
”(Perceptrons)。第一次将MCP用于机器学习(machine
learning)分类(classification)。“感知器”算法算法使用MCP模型对输入的多维数据进行二分类,且能够使用梯度下降法从训练样本中自动学习更新权值。1962年,该方法被证明为能够收敛,理论与实践效果引起第一次神经网络的浪潮。
第一次低谷---成也萧何败也萧何
1969年,美国数学家及人工智能先驱 Marvin Minsky 在其著作中证明了感知器本质上是一种线性模型(linear
model),只能处理线性分类问题,就连最简单的XOR(亦或)问题都无法正确分类。这等于直接宣判了感知器的死刑,神经网络的研究也陷入了将近20年的停滞。
第二次兴起--BP网络与激活函数


1986年由神经网络之父 Geoffrey Hinton 在1986年发明了适用于多层感知器(MLP)的BP
(Backpropagation)算法,并采用Sigmoid进行非线性映射,有效解决了非线性分类和学习的问题。该方法引起了神经网络的第二次热潮。注:Sigmoid
函数是一个在生物学中常见的S型的函数,也称为S型生长曲线。在信息科学中,由于其单增以及反函数单增等性质,Sigmoid函数常被用作神经网络的阈值函数,将变量映射到0,1之间。
S(x)=1(1+e−x)S(x)=1(1+e−x)声量
第二次低谷--屋漏偏逢连夜雨




1991年BP算法被指出存在梯度消失问题
,也就是说在误差梯度后项传递的过程中,后层梯度以乘性方式叠加到前层,由于Sigmoid函数的饱和特性,后层梯度本来就小,误差梯度传到前层时几乎为0,因此无法对前层进行有效的学习,该问题直接阻碍了深度学习的进一步发展。
此外90年代中期,支持向量机算法
诞生(SVM算法)等各种浅层机器学习模型被提出,SVM也是一种有监督的学习模型,应用于模式识别,分类以及回归分析等。支持向量机以统计学为基础,和神经网络有明显的差异,支持向量机等算法的提出再次阻碍了深度学习的发展。
第三次兴起--待到秋来九月八,我花开后百花杀。冲天香阵透长安,满城尽带黄金甲。发展期 2006年 - 2012年
2006年,加拿大多伦多大学教授、机器学习领域泰斗、神经网络之父—— Geoffrey Hinton 和他的学生 Ruslan Salakhutdinov
在顶尖学术刊物《科学》上发表了一篇文章,该文章提出了深层网络训练中梯度消失问题的解决方案:无监督预训练对权值进行初始化+有监督训练微调。斯坦福大学、纽约大学、加拿大蒙特利尔大学等成为研究深度学习的重镇,至此开启了深度学习在学术界和工业界的浪潮。
2011年,ReLU激活函数被提出,该激活函数能够有效的抑制梯度消失问题。2011年以来,微软首次将DL应用在语音识别上,取得了重大突破。微软研究院和Google的语音识别研究人员先后采用DNN技术降低语音识别错误率20%~30%,是语音识别领域十多年来最大的突破性进展。2012年,DNN技术在图像识别领域取得惊人的效果,在ImageNet评测上将错误率从26%降低到15%。
在这一年,DNN还被应用于制药公司的DrugeActivity预测问题,并获得世界最好成绩。爆发期 2012 - 2017
2012年,Hinton课题组为了证明深度学习的潜力,首次参加ImageNet图像识别比赛,其通过构建的CNN网络AlexNet一举夺得冠军,且碾压第二名(SVM方法)的分类性能。也正是由于该比赛,CNN吸引到了众多研究者的注意。



三步曲简单介绍至此,你可能有了一些认识但是还是不禁问一声深度学习到底是什么鬼?有什么用?
这里先用一些概念来说明(虽然很烦概念但是还要提一提),再借用一个别人有趣的例子来说明。《Deep
Learning》(深度学习)一书中说,深度学习是机器学习的一种,一种能够使计算机系统从经验和数据中得到提高的技术。
具有强大的能力和灵活性,它将大千世界表示为嵌套的层次概念体系(由较简单概念间的联系定义复杂概念、从一般抽象概括到高级抽象表示)。(PS:学习深度学习的小伙伴如果没有学过机器学习记得回头恶补哦)
用下图来说明深度学习与机器学习及人工智能的关系。从图中可以看出,人工智能是一个大方向,而机器学习是实现人工智能的一种方法,深度学习则是机器学习的一个分支。



所以,深度学习就是目前实现人工智能的一条路,只是目前这条路表现最好所以被大家热捧。
这里简单从百科上搬几个概念,能够帮助我们理解深度学习的用处。



人工智能(Artificial Intelligence)
,英文缩写为AI。它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器,该领域的研究包括机器人、语言识别、图像识别、自然语言处理和专家系统等。
机器学习(Machine Learning, ML)
是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。
    它是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域,它主要使用归纳、综合而不是演绎。
    个人更喜欢的说法是:机器学习是用数据或以往的经验,以此优化计算机程序的性能标准。深度学习(Deep Learning,DL)
是机器学习中一种基于对数据进行表征学习的方法。观测值(例如一幅图像)可以使用多种方式来表示,如每个像素强度值的向量,或者更抽象地表示成一系列边、特定形状的区域等。而使用某些特定的表示方法更容易从实例中学习任务(例如,人脸识别或面部表情识别)。深度学习的好处是用非监督式或半监督式的特征学习和分层特征提取高效算法来替代手工获取特征。
        深度学习是机器学习研究中的一个新的领域,其动机在于建立、模拟人脑进行分析学习的神经网络,它模仿人脑的机制来解释数据,例如图像,声音和文本。

        同机器学习方法一样,深度机器学习方法也有监督学习与无监督学习之分.不同的学习框架下建立的学习模型很是不同.例如,卷积神经网络(Convolutional
neural networks,简称CNNs)就是一种深度的监督学习下的机器学习模型,而深度置信网(Deep Belief
Nets,简称DBNs)就是一种无监督学习下的机器学习模型。估计按照上面的说法可能你还不能够生动形象的明白深度学习是个什么样子,当然如果你已经学习过了不说




我找了网上一个很有意思的例子(PS:摘自到底什么是深度学习?
<http://http//baijiahao.baidu.com/s?id=1589541751160646250&wfr=spider&for=pc>
-猎奇古今),感觉可以让你生动形象明白深度学习是什么?在干啥?
比如你需要挑选芒果,你并不知道什么样的芒果最好吃,所以你就尝遍了所有的芒果,然后自己总结出个大深黄色的比较好吃,以后再去买的时候,就可以直接挑选这种。

那什么是机器学习呢,就是你让机器“尝”一遍所有芒果,当然,也假设它知道哪些好吃,让机器去总结一套规律(个大深黄色),这就是机器学习。

具体操作,就是你描述给机器每一个芒果的特征(颜色,大小,软硬……),描述给机器其输出(味道如何,是否好吃),剩下的就等机器去学习出一套规则。

那机器是怎么学习到这个规则(个大深黄色的好吃)的呢?

没错,是通过机器学习算法。而神经网络,恰好就是一种机器学习算法。

近些年来,由于深度学习概念的兴起,神经网络又成为了机器学习领域最热门的研究方法。


神经网络就像是一个刚开始学习认东西的小孩子,而大人是作为一个监督者,来告诉他所看到的东西是什么,至于如果判定这是狗还是猫,还是其他的动物的方法,则由小孩自行去学习。

第一天,他看见一只京巴狗,你告诉他这是狗;

第二天,他看见一只波斯猫,他开心地说,这是狗,但你纠正他,这是猫;

第三天,他看见一只蝴蝶犬,他又迷惑了,你告诉他这是狗;


直到有一天,他可以分清任何一只猫或者狗。




本人应该从历史中的一点收获:1. 人工神经网络,这是打开深度学习大门的基石2. 有一种算法叫BP算法,很牛逼的样子3.
原来还有一种问题叫梯度消失,是否已经解决了,我们遇到了该怎么办呢?据说还有一种叫梯度爆炸,会不会有生命危险啊4.
激活函数是个好东西,线性不再是局限,看来要了解下激活函数




最后列一下深度学习技术,听说学完了就可以打通任督二脉,成为深度学习高手。线性代数、概率和信息论欠拟合、过拟合、正则化最大似然估计和贝叶斯统计随机梯度下降
监督学习和无监督学习深度前馈网络、代价函数和反向传播正则化、稀疏编码和dropout自适应学习算法卷积神经网络循环神经网络递归神经网络深度神经网络和深度堆叠网络
LSTM长短时记忆主成分分析正则自动编码器表征学习蒙特卡洛受限波兹曼机深度置信网络softmax回归、决策树和聚类算法KNN和SVM生成对抗网络和有向生成网络
机器视觉和图像识别自然语言处理语音识别和机器翻译有限马尔科夫动态规划梯度策略算法增强学习(Q-learning)

友情链接
KaDraw流程图
API参考文档
OK工具箱
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:[email protected]
QQ群:637538335
关注微信