生啃深度学习英文版1A Concise History of Neural Networks and Deep Learning

网友投稿 748 2022-10-17

生啃深度学习英文版1A Concise History of Neural Networks and Deep Learning

生啃深度学习英文版1A Concise History of Neural Networks and Deep Learning

欢迎Python 深度学习,这本书将指导你掌握深度学习并实践,使用 python 编程语言和 keras + mxnet 库解决现实世界中的计算机视觉问题。 在这本书中,你将学习如何应用深度学习来承担项目,如图像分类,目标检测,大规模数据集上的训练网络,等等。 基于python的机器视觉深度学习要求你在掌握理论知识的同时也要成功的进行实际操作。 为了达成这一目标。你将通过在自己的自定义数据集上训练网络,甚至在具有挑战性的最先进的图像分类挑战和竞赛中,以实用的、应用的方式学习。 呃,好像没啥用,不翻了。看完前面的,我都困了,怎么就介绍个没完了呢,心好痛。

神经网络和深度学习的历史很长,有点令人困惑。令人惊讶的是,自20世纪40年代以来,“深度学习”一直以不同的名字存在变化,包括控制论、连接论和最常见的人工神经网络。当受到人脑及其神经元相互作用的启发时,神经网络是不应该是真实的大脑模型。相反,它们是一种灵感,一个非常基本的大脑模型和我们如何模仿这种行为之间的相似之处通过人工神经网络。我们将在第十章讨论神经网络和大脑的关系。第一个神经网络模型来自于1943年的McCulloch和Pitts[11]。这个网络是一个二进制分类器,能够根据一些输入识别两个不同的类别。这个问题是用于确定给定输入的类标签的权重需要由人工调整-如果人工操作员需要干预。然后,在20世纪50年代,Rosenblatt发表了开创性的感知器算法[12,13]——这是模型可以自动学习分类输入所需的权重(无需人工干预必须)。感知器架构的一个例子如图2.2所示。

事实上,这个自动训练程序构成了随机梯度下降(SGD)的基础今天用来训练很深的神经网络。在此期间,基于感知器的技术在神经网络中风靡一时社区。然而,1969年明斯基和佩尔特发表的一篇文章[14]有效地抑制了神经近十年的网络研究。他们的工作证明了活函数(不考虑深度)只是一个线性分类器,无法解决非线性问题问题。非线性问题的典型例子是图2.3中的XOR数据集,不可能用一条线来区分蓝色

此外,作者认为(当时)我们没有计算资源构建大而深的神经网络(事后看来,它们是绝对正确的)。单凭一篇论文就几乎扼杀了神经网络的研究。幸运的是,反向传播算法和Werbos(1974)[15]、Rumelhart(1986)[16]LeCun(1998)[17]的研究能够使神经网络从本可以提前消亡的状态中复苏。他们对反向传播算法的研究使多层前向神经网络得以训(图2.4。

结合非线性激活函数,研究人员现在可以学习非线性函数并解决异或问题,为神经网络的一个全新研究领域打开大门。进一步的研究表明,神经网络是通用的逼近器[18],能够近似任何连续函数(但不保证网络是否实际上可以学习表示函数所需的参数)。

反向传播算法是现代神经网络的基石有效地训练神经网络,教他们从错误中吸取教训。但即便如此这一次,由于(1)计算机速度慢(与现代机器相比)和(2)缺少大型计算机,有标签的训练集,研究人员无法(可靠地)训练神经网络两个隐藏层——在计算上是不可的。今天,我们所知道的神经网络的最新化身被称为深度学习。与以往不同的是,我们拥有更快、更专业的硬件

提供更多可用的培训数据。我们现在可以训练更多隐藏层的网络能够在较低层次和更多层次上学习简单概念的层次学习网络上层的抽象模式。

也许将深度学习应用于特征学习的典型例子是神经网络。应用于手写字符识别通过顺序叠加自动从图像中学习区分模式(称为“过滤器”)。网络中较低级别的过滤器表示边和角,而更高层的层使用边和角来学习更抽象的概念区分图像类别。在许多应用中,CNNs被认为是最强大的图像分类器,并且目前负责推动最先进的计算机视觉子领域,为了更彻底地回顾神经网络的历史学习,请参考古德费罗等人。[10] 以及Jason Brownlee的优秀的博客文章在掌握机器学习方面[20]

2.2、Hierarchical Feature Learning 机器学习算法(通常)分为三个阵营:有监督的、无监督的和半监督学习。我们将在本章讨论有监督和无监督学习保留半监督学习以备将来讨论。在有监督的情况下,机器学习算法同时给出一组输入和目标输出。然后,该算法尝试学习可用于自动映射输入数据的模式 指向正确的目标输出。有人监督的学习类似于有老师监视你做个测试。鉴于你以前的知识,你尽最大努力在你的考试;但是,如果你不正确,你的老师会引导你做出一个更好的、猜测下一次。 在无监督的情况下,机器学习算法试图在不提示输入内容的情况下自动发现分类特征。在这种情况下,我们的学生试图将相似的问题和答案组合在一起,即使学生不知道正确答案是,老师不在那里给他们提供真实的答案。无监督学习显然是一个比有监督学习更具挑战性的问题,因为通过知道答案,我们可以更容易地定义可以将输入数据映射到正确的目标分类。

在过去,我们使用手工设计的特征来量化图像的内容-我们很少使用原始像素强度作为机器学习模型的输入,这深度学习。对于数据集中的每个图像,我们执行特征提取,或者

获取输入图像,根据某种算法对其进行量(称为特征提取器图像描述符),并返回用于量化内容的向量(即数字列表)一个形象。下面的图2.5描述了对包含处方的图像进行量化的过程通过一系列的黑盒颜色、纹理和形状图像描述符进行药丸治疗。

我们的手工设计功能试图对纹理进行编码(局部二进制模式[21],Haralick 纹理[22]、形状(Hu矩[23]、Zernike矩[24])和颜色(颜色矩、颜色直方图,颜色相关图[25])。

其他方法,如关键点检测器(FAST[26]、Harris[27]、DoG[28]等等)局部不变描述符(SIFT[28]、SURF[29]、BRIEF[30]、ORB[31]等)描述图像的显著(即最“有趣”的)区域如图2.6所示,我们检测到图像中存在停车标志。一段时间以来,图像中目标检测的研究是以HOG及其变体为指导的,包括计算上昂贵的方法,如可变形零件模型[34]和样本支持向量机[35]。

在每种情况下,手工定义一个算法来量化和编码特定的图像的方面(即形状、纹理、颜色等)。定像素的输入图像,我们将应用

我们对像素进行手工定义的算法,然后接收一个特征向量来量化图像内容–图像像素本身除了作为我们的特征提取过程。深度学习,特别是卷积神经网络,采取了不同的方法。不是手工定义一组规则和算法来从图像中提取特征,而是相反,特征是从训练过程中自动学习的。

通过深入学习,我们试图从概念层次的角度来理解这个问题。每个

概念建立在其他概念之上。网络底层的概念编码了一些问题的基本表示,而较高级别的层使用这些基本层来形成更多抽象概念。这种分层学习使我们能够完全去除手工设计的特征提取过程,并CNNs作为端到端的学习者。给定一幅图像,我们提供像素强度值作为CNN的输入。一系列隐藏的层用于从输入图像中提取特征。这些隐藏的层彼此建立在一起以等级的方式。首先,在网络。这些边区域用于定义角(边相交处)和等高线(物体的轮廓)。结合角和轮廓可以在下一步中产生抽象的“对象部分”层。

请记住,这些过滤器正在学习检测的概念类型是自动学习的,我们在学习过程中没有干预。最后,输出层用于对图像进行分类并获得输出类标签-输出层可以是直接的,也可以是受到网络中其他节点的间接影响。

我们可以将此过程视为分层学习:网络中的每个层都使用以前的层作为“构建块”来构建越来越抽象的概念。这些层是自动学习的–在我们的网络。图2.7将使用手工制作的特征的经典图像分类算法与通过深度学习和卷积神经网络进行表征学习。深度学习和卷积神经网络的主要好处之一是允许我们跳过特征提取步骤,而专注于训练网络的过程学习这些过滤器。然而,正如我们将在本书后面发现的,训练一个网络来获得在给定的图像数据集上保持合理的精度并不总是一件容易的事情。

深度学习和卷积神经网络的主要好处之一是允许我们跳过特征提取步骤,而专注于训练网络的过程学习这些过滤器。然而,正如我们将在本书后面发现的,训练一个网络来获得在给定的图像数据集上保持合理的精度并不总是一件容易的事情。

2.3 How “Deep” Is Deep?

引用杰夫·迪恩2016年演讲《建筑智能计算机系统的深度学习》 [36]: “当你听到“深度学习”这个词时,想想一个大而深的神经网络。 Deep通常指的是层的数量,这种流行的术语已被媒体采纳。” 这是一个很好的引用,因为它允许我们将深度学习概念化为大型神经网络层层叠加,逐渐加深。问题是我们仍然对于“一个神经网络需要多少层”才能被认为是深的而无法解释。 有时间再翻吧,我得抓紧看了

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:使用Criteria进行分组求和、排序、模糊查询的实例
下一篇:微信小程序专用的二维码组件,支持base64输出和canvas绘制两种方式
相关文章

 发表评论

暂时没有评论,来抢沙发吧~