0
点赞
收藏
分享

微信扫一扫

深度学习随便解解

摘要:本文全网基于深度学习的资料,综合整理了一篇全网最全最详细的深度学习的简介。所谓简介就是让不懂深度学习的人或者想要学习深度学习的人一个参考。由于网上的资料参差不齐,作者也是能力有限,如有错误,请及时指正。本文所有的参考资料都在文末。

文章目录

前言

人工智能的浪潮席卷全球,很多词汇时刻萦绕在我们的耳边,人工智能,AI,机器学习,深度学习,神经网络,卷积,反卷积,池化,反池化。今天主要针对这几个概念,做一个详细的解释。

人工智能

人工智能(Artificial Intelligence),英文缩写为AI。它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。
人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器,该领域的研究包括机器人、语言识别、图像识别、自然语言处理和专家系统等。人工智能从诞生以来,理论和技术日益成熟,应用领域也不断扩大,可以设想,未来人工智能带来的科技产品,将会是人类智慧的“容器”。人工智能可以对人的意识、思维的信息过程的模拟。人工智能不是人的智能,但能像人那样思考、也可能超过人的智能。
人工智能是一门极富挑战性的科学,从事这项工作的人必须懂得计算机知识,心理学和哲学。人工智能是包括十分广泛的科学,它由不同的领域组成,如机器学习,计算机视觉等等,总的说来,人工智能研究的一个主要目标是使机器能够胜任一些通常需要人类智能才能完成的复杂工作。但不同的时代、不同的人对这种“复杂工作”的理解是不同的

这段文字来源于百度百科,人工智能大家不管是从平时的电影,游戏,小说中都了解颇多,这里就不做过多的解释了。下面主要是对机器学习和深度学习的解释。

机器学习

机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。
它是人工智能核心,是使计算机具有智能的根本途径。

机器学习(Machine Learning)是一门专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能的学科。机器能否像人类一样能具有学习能力呢?1959年美国的塞缪尔(Samuel)设计了一个下棋程序,这个程序具有学习能力,它可以在不断的对弈中改善自己的棋艺。4年后,这个程序战胜了设计者本人。又过了3年,这个程序战胜了美国一个保持8年之久的常胜不败的冠军。这个程序向人们展示了机器学习的能力,提出了许多令人深思的社会问题与哲学问题(呵呵,人工智能正常的轨道没有很大的发展,这些什么哲学伦理啊倒发展的挺快。什么未来机器越来越像人,人越来越像机器啊。什么机器会反人类啊,ATM是开第一枪的啊等等。人类的思维无穷啊)。

机器学习虽然发展了几十年,但还是存在很多没有良好解决的问题:

在这里插入图片描述

例如图像识别、语音识别、自然语言理解、天气预测、基因表达、内容推荐等等。目前我们通过机器学习去解决这些问题的思路都是这样的(以视觉感知为例子):

在这里插入图片描述

从开始的通过传感器(例如CMOS)来获得数据。然后经过预处理、特征提取、特征选择,再到推理、预测或者识别。最后一个部分,也就是机器学习的部分,绝大部分的工作是在这方面做的,也存在很多的paper和研究。

而中间的三部分,概括起来就是特征表达。良好的特征表达,对最终算法的准确性起了非常关键的作用,而且系统主要的计算和测试工作都耗在这一大部分。但,这块实际中一般都是人工完成的。靠人工提取特征。

在这里插入图片描述

截止现在,也出现了不少NB的特征(好的特征应具有不变性(大小、尺度和旋转等)和可区分性):例如Sift的出现,是局部图像特征描述子研究领域一项里程碑式的工作。由于SIFT对尺度、旋转以及一定视角和光照变化等图像变化都具有不变性,并且SIFT具有很强的可区分性,的确让很多问题的解决变为可能。但它也不是万能的。
在这里插入图片描述

然而,手工地选取特征是一件非常费力、启发式(需要专业知识)的方法,能不能选取好很大程度上靠经验和运气,而且它的调节需要大量的时间。既然手工选取特征不太好,那么能不能自动地学习一些特征呢?答案是能!Deep Learning就是用来干这个事情的,看它的一个别名UnsupervisedFeature Learning,就可以顾名思义了,Unsupervised的意思就是不要人参与特征的选取过程。
那它是怎么学习的呢?怎么知道哪些特征好哪些不好呢?我们说机器学习是一门专门研究计算机怎样模拟或实现人类的学习行为的学科。好,那我们人的视觉系统是怎么工作的呢?为什么在茫茫人海,芸芸众生,滚滚红尘中我们都可以找到另一个她(因为,你存在我深深的脑海里,我的梦里 我的心里 我的歌声里……)。人脑那么NB,我们能不能参考人脑,模拟人脑呢?(好像和人脑扯上点关系的特征啊,算法啊,都不错,但不知道是不是人为强加的,为了使自己的作品变得神圣和高雅。)
近几十年以来,认知神经科学、生物学等等学科的发展,让我们对自己这个神秘的而又神奇的大脑不再那么的陌生。也给人工智能的发展推波助澜。

深度学习

先来看下百度百科的解释吧,深度学习(DL, Deep Learning)是机器学习(ML, Machine Learning)领域中一个新的研究方向,它被引入机器学习使其更接近于最初的目标——人工智能(AI, Artificial Intelligence)。
深度学习是学习样本数据的内在规律和表示层次,这些学习过程中获得的信息对诸如文字,图像和声音等数据的解释有很大的帮助。它的最终目标是让机器能够像人一样具有分析学习能力,能够识别文字、图像和声音等数据。深度学习是一个复杂的机器学习算法,在语音和图像识别方面取得的效果,超过先前相关技术。所以深度学习会替代先前所有的学习方法吗?呵呵理想总是要丰满些的。
深度学习就是通过多层神经网络运用各种机器学习算法学习机器样本数据的规律,在计算机视觉,数据挖掘,语音识别,自然语言处理等方面处理任务。

所以,要理解深度学习,必须先了解多层的神经网络。

从广义上说深度学习的网络结构也是多层神经网络的一种。更简单来说,多层神经网络 做的步骤是:特征映射到值。特征是 人工 挑选。深度学习 做的步骤是 信号->特征->值。 特征是由 网络自己 选择。
深度学习的核心是 特征学习,旨在通过分层网络获取分层次的特征信息,从而解决以往需要人工设计特征的重要难题。深度学习是一个框架,包含多个重要算法:

Convolutional Neural Networks(CNN)卷积神经网络
AutoEncoder自动编码器
Sparse Coding稀疏编码
Restricted Boltzmann Machine(RBM)限制波尔兹曼机
Deep Belief Networks(DBN)深度信念网络
Recurrent neural Network(RNN)多层反馈循环神经网络神经网络
对不同的任务(图像,语音,文本),需要选用不同的网络模型才能达到更好的效果。

由于本博是讲深度学习的基础内容,所以以后一些算法都不深度去讲。

下面来看下深度学习的发展史,Artificial Intelligence,也就是人工智能,就像长生不老和星际漫游一样,是人类最美好的梦想之一。虽然计算机技术已经取得了长足的进步,但是到目前为止,还没有一台电脑能产生“自我”的意识。是的,在人类和大量现成数据的帮助下,电脑可以表现的十分强大,但是离开了这两者,它甚至都不能分辨一个喵星人和一个汪星人。
图灵(图灵,大家都知道吧。计算机和人工智能的鼻祖,分别对应于其著名的“图灵机”和“图灵测试”)在 1950 年的论文里,提出图灵试验的设想,即,隔墙对话,你将不知道与你谈话的,是人还是电脑。这无疑给计算机,尤其是人工智能,预设了一个很高的期望值。但是半个世纪过去了,人工智能的进展,远远没有达到图灵试验的标准。这不仅让多年翘首以待的人们,心灰意冷,认为人工智能是忽悠,相关领域是“伪科学”。
但是自 2006 年以来,机器学习领域,取得了突破性的进展。图灵试验,至少不是那么可望而不可及了。至于技术手段,不仅仅依赖于云计算对大数据的并行处理能力,而且依赖于算法。这个算法就是,Deep Learning。借助于 Deep Learning 算法,人类终于找到了如何处理“抽象概念”这个亘古难题的方法。
在这里插入图片描述

2012年6月,《纽约时报》披露了Google Brain项目,吸引了公众的广泛关注。这个项目是由著名的斯坦福大学的机器学习教授Andrew Ng和在大规模计算机系统方面的世界顶尖专家JeffDean共同主导,用16000个CPU Core的并行计算平台训练一种称为“深度神经网络”(DNN,Deep Neural Networks)的机器学习模型(内部共有10亿个节点。这一网络自然是不能跟人类的神经网络相提并论的。要知道,人脑中可是有150多亿个神经元,互相连接的节点也就是突触数更是如银河沙数。曾经有人估算过,如果将一个人的大脑中所有神经细胞的轴突和树突依次连接起来,并拉成一根直线,可从地球连到月亮,再从月亮返回地球),在语音识别和图像识别等领域获得了巨大的成功。
项目负责人之一Andrew称:“我们没有像通常做的那样自己框定边界,而是直接把海量数据投放到算法中,让数据自己说话,系统会自动从数据中学习。”另外一名负责人Jeff则说:“我们在训练的时候从来不会告诉机器说:‘这是一只猫。’系统其实是自己发明或者领悟了“猫”的概念。”

在这里插入图片描述

2012年11月,微软在中国天津的一次活动上公开演示了一个全自动的同声传译系统,讲演者用英文演讲,后台的计算机一气呵成自动完成语音识别、英中机器翻译和中文语音合成,效果非常流畅。据报道,后面支撑的关键技术也是DNN,或者深度学习(DL,DeepLearning)。

2013年1月,在百度年会上,创始人兼CEO李彦宏高调宣布要成立百度研究院,其中第一个成立的就是“深度学习研究所”(IDL,Institue of Deep Learning)。

神经网络

首先什么是神经网络呢?神经网络也指的是 人工神经网络(Artificial Neural Networks,简称ANNs),是一种模仿生物神经网络行为特征的算法数学模型,由 神经元、节点与节点之间的连接(突触) 所构成,如下图所示:

在这里插入图片描述

每个神经网络单元抽象出来的数学模型如下,也叫感知器,这就好比神经末梢感受到各种外部环境的变化,产生电信号,以便于转到神经细胞

在这里插入图片描述

卷积神经网络

在这里插入图片描述

重点来了,什么是卷积神经网络呢?

CNN的定义

先来看百度百科的定义

卷积神经网络(Convolutional Neural Networks, CNN)是一类包含卷积计算且具有深度结构的前馈神经网络(Feedforward Neural Networks),是深度学习(deep learning)的代表算法之一 。卷积神经网络具有表征学习(representation learning)能力,能够按其阶层结构对输入信息进行平移不变分类(shift-invariant classification),因此也被称为“平移不变人工神经网络(Shift-Invariant Artificial Neural Networks, SIANN)

卷积神经网络仿造生物的视知觉(visual perception)机制构建,可以进行监督学习和非监督学习,其隐含层内的卷积核参数共享和层间连接的稀疏性使得卷积神经网络能够以较小的计算量对格点化(grid-like topology)特征,例如像素和音频进行学习、有稳定的效果且对数据没有额外的特征工程(feature engineering)要求

卷积网络通过一系列方法,讲数据量庞大的图片信息不断降维,变成可以识别,训练的

卷积

卷积的简单定义

卷积神经网络中的卷积操作可以看做是输入和卷积核的内积运算。其运算过程非常容易理解,

卷积运算

如图,左侧为输入矩阵M,中间为过滤器F(也叫卷积核),F以一定步长在M上进行移动,进行点积运算,得到右侧的输出矩阵O。这个就是卷积神经网络中卷积层最基础的运算。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

理解卷积

从模版匹配的角度理解。 前面我们已经知道,卷积与相关在计算上可以等价,相关运算常用模板匹配,即认为卷积核定义了某种模式,卷积(相关)运算是在计算每个位置与该模式的相似程度,或者说每个位置具有该模式的分量有多少,当前位置与该模式越像,响应越强

在这里插入图片描述

池化

池化的定义

池化的定义比较简单,最直观的作用便是降维,常见的池化有最大池化、平均池化和随机池化。
池化层不需要训练参数。

三种池化方法

最大池化是对局部的值取最大;平均池化是对局部的值取平均;随机池化是根据概率对局部的值进行采样,采样结果便是池化结果。概念非常容易理解,其示意图如下所示:

在这里插入图片描述

三种池化的意义

(1)最大池化可以获取局部信息,可以更好保留纹理上的特征。如果不用观察物体在图片中的具体位置,只关心其是否出现,则使用最大池化效果比较好。

(2)平均池化往往能保留整体数据的特征,能凸出背景的信息。
(3)随机池化中元素值大的被选中的概率也大,但不是像最大池化总是取最大值。随机池化一方面最大化地保证了Max值的取值,一方面又确保了不会完全是max值起作用,造成过度失真。除此之外,其可以在一定程度上避免过拟合。

反池化

池化操作中最常见的最大池化和平均池化,因此最常见的反池化操作有反最大池化和反平均池化,其示意图如下:

在这里插入图片描述

视觉原理(随聊)

由于深度学习在计算机视觉方面应用很广,所有视觉的原理还是很有必要了解的。

最近看了一本什么自然图像统计的书本来是想着要好好研究一下每天翻译几页的但最近实在太忙没什么时间,只能翻译个目录了哈哈。至于为什么标题叫做感受野因为标题党罢了这本书叫Natural image statistics:a probalilistic approach to early clmputational vision.看到里面讲人类视觉的地方也想扯点野棉花可能也是因为我废话太多按耐不住?书里说视觉基本分为生物视觉和机器视觉人脑的视觉也就是生物视觉它实在过于强大人们对它的研究也只是管中窥豹但了解一些感觉可以受用一生哈哈哈人脑70%的信息来自眼睛20%左右的皮层生物视觉的最终目标是要将人类视觉系统彻底告破于天下嗯理想是要丰满些的机器视觉就是让机器人电脑和人一样会看会说会学习但是由于光线阴影天亮天暗等影响不是件轻松的事确实不是件轻松的事人从呱呱坠地开始花了十几年建立自己强大的大脑也就是硬件的设施硬件是个伟大的东西据了解(据了解这三个字就说明了也不知道对不对是吧呵呵)人脑的CPU主频是320GHZ目前电脑由于半导体的限制能做到3GHZ所以咱就等于100个CPU嘛NoNoNo要运算每个CPU得通信人脑的存储得按斤算哈哈头大的人能存储10^15GB所以他们聪明?最牛的是这些存储还可以用来当做内存和缓存怪不得小爷天天忘记东西明明昨天还记得的这海马体废了!哈哈可能晚上睡觉忘关机保存到硬盘然后电脑一死机啥都没了所以要宝贝要记得好好吃饭哈哈人眼是不可思议的精密仪器它能自动对焦曝光补偿设置ios和快门速度自动运动模糊处理目前所有单反都望尘莫及的而且不需要Windows自动更新安装驱动不用电池!所有好好珍惜不要熬夜不要追剧不要夜晚玩手机还有,多滴眼药水。

人脑视觉原理

1981 年的诺贝尔医学奖,颁发给了 David Hubel(出生于加拿大的美国神经生物学家) 和TorstenWiesel,以及 Roger Sperry。前两位的主要贡献,是“发现了视觉系统的信息处理”:可视皮层是分级的:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IoO0VEBy-1648865446083)(2ba0d42427f9dc105a551e843066c568.png)]

我们看看他们做了什么。1958 年,DavidHubel 和Torsten Wiesel 在 JohnHopkins University,研究瞳孔区域与大脑皮层神经元的对应关系。他们在猫的后脑头骨上,开了一个3 毫米的小洞,向洞里插入电极,测量神经元的活跃程度。

然后,他们在小猫的眼前,展现各种形状、各种亮度的物体。并且,在展现每一件物体时,还改变物体放置的位置和角度。他们期望通过这个办法,让小猫瞳孔感受不同类型、不同强弱的刺激。

之所以做这个试验,目的是去证明一个猜测。位于后脑皮层的不同视觉神经元,与瞳孔所受刺激之间,存在某种对应关系。一旦瞳孔受到某一种刺激,后脑皮层的某一部分神经元就会活跃。经历了很多天反复的枯燥的试验,同时牺牲了若干只可怜的小猫,David Hubel 和Torsten Wiesel 发现了一种被称为“方向选择性细胞(Orientation Selective Cell)”的神经元细胞。当瞳孔发现了眼前的物体的边缘,而且这个边缘指向某个方向时,这种神经元细胞就会活跃。

这个发现激发了人们对于神经系统的进一步思考。神经-中枢-大脑的工作过程,或许是一个不断迭代、不断抽象的过程。

这里的关键词有两个,一个是抽象,一个是迭代。从原始信号,做低级抽象,逐渐向高级抽象迭代。人类的逻辑思维,经常使用高度抽象的概念。

例如,从原始信号摄入开始(瞳孔摄入像素 Pixels),接着做初步处理(大脑皮层某些细胞发现边缘和方向),然后抽象(大脑判定,眼前的物体的形状,是圆形的),然后进一步抽象(大脑进一步判定该物体是只气球)。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5xkrU9IH-1648865446083)(a11eba56eac8c79310bc28e21b6723e3.png)]

总的来说,人的视觉系统的信息处理是分级的。从低级的V1区提取边缘特征,再到V2区的形状或者目标的部分等,再到更高层,整个目标、目标的行为等。也就是说高层的特征是低层特征的组合,从低层到高层的特征表示越来越抽象,越来越能表现语义或者意图。而抽象层面越高,存在的可能猜测就越少,就越利于分类。例如,单词集合和句子的对应是多对一的,句子和语义的对应又是多对一的,语义和意图的对应还是多对一的,这是个层级体系。

结束语

这是一篇深度学习的入门博客,接下来也会不断更新后续的文章,我尽量做到能让大多数人理解,且富含真正的内容,因为需要保证博文的质量,以及不断的查找合适的资料,所以更新不会太快。由于博主能力有限,博文中提及的概念方法,也难免会有疏漏之处。希望您能热心指出其中的错误,以便下次修改时能以一个更完美更严谨的样子,呈现在大家面前。同时如果有更好的解释也请您不吝赐教。

参考文章:

人脑视觉原理

卷积神经网络

卷积、反卷积、池化、反池化

一篇文章看懂人工智能、机器学习和深度学习

大话神经网络CNN

举报

相关推荐

0 条评论