真的还是很棒的一本书,卷积网络的概念/推导当年东拼西凑学了一箩筐,但终究有部分知识还一直处在知其然不知所以然的阶段,比如一直说kernel是获取特征的,到底啥是特征在一些简单的模型又是如何work的当时一直没搞明白:( 反向传播也终于从推导层面一步步搞出来了,真的还蛮棒的一本书 how to do和how it work+例子非常浅显易懂的能带大家入门呢,入门神经网络的新手看这本妥妥够用,老做调参侠的回来巩固了解一些知识也很棒。(不过这个微信读书的版本我是发现印的公式有蛮多符号错误的,和前段时间看的推荐系统那本书一样,感觉是微信读书的问题,所以还是推荐买实体书看了) 想起15年苏老师让我给网易云录个神经网络入门教程,要是在那之前就看了这本书该多好,一切没有如果,只能说现在做的每个选择都是最早最好的那个啦
本文开篇就介绍了啥是深度学习?深度学习是人工智能的一种具有代表性的实现方法,然后又引出了神经网络,深度学习是以神经网络为出发点的。作者用我们以前学的生物知识来解释神经网络。 (i) 神经元形成网络。 (ii) 对于从其他多个神经元传递过来的信号,如果它们的和不超过某个固定大小的值(阈值),则神经元不做出任何反应。 (iii) 对于从其他多个神经元传递过来的信号,如果它们的和超过某个固定大小的值(阈值),则神经元做出反应(称为点火),向另外的神经元传递固定强度的信号。 (iv) 在 (ii) 和 (iii) 中,从多个神经元传递过来的信号之和中,每个信号对应的权重不一样。 将神经元的工作在数学上抽象化,并以其为单位人工地形成网络,这样的人工网络就是神经网络。将构成大脑的神经元的集合体抽象为数学模型,这就是神经网络的出发点。 紧接着又说了神经元工作的数学表示,如果输入信号之和超过神经元固有的边界值(也就是阈值),细胞体就会做出反应,向与轴突连接的其他神经元传递信号,这称为点火。那么,点火时神经元的输出信号是什么样的呢?有趣的是,信号的大小是固定的。即便从邻近的神经元接收到很大的刺激,或者轴突连接着其他多个神经元,这个神经元也只输出固定大小的信号。点火的输出信号是由 0 或 1 表示的数字信息。 点火条件的图形表示单位阶跃函数,该函数当z<0时,u(z)=0,当z>=0时,u(z)=1。然后激活函数将神经元的工作一般化,激活函数的代表例子是 Sigmoid 函数,该函数连续、光滑,也就是说可导。这两种性质使得 Sigmoid 函数很容易处理。单位阶跃函数的输出值为 1 或 0,表示点火与否。然而,Sigmoid 函数的输出值大于 0 小于 1,这就有点难以解释了。如果用生物学术语来解释的话,可以认为输出值表示神经单元的兴奋度等。输出值接近 1 表示兴奋度高,接近 0 则表示兴奋度低。 单位阶跃函数引入了神经元的加权输入,Sigmoid 函数引入了偏置。 激活函数 y = a(w1x1 + w2x2 + w3x3 - Q) 把-Q替换b,y = a(w1x1 + w2x2 + w3x3 + b),加权输入w1x1 + w2x2 + w3x3 + b,整理下w1x1 + w2x2 + w3x3 + 1×b,增加一个虚拟输入,可以理解1作为输入值,加权输入z可以看作两个向量的内积 (w1,w2,w3,b)(x1,x2,x3,1),计算机擅长内积的运算。 然后介绍了什么是神经网络,网络的连接方法多种多样,本书将主要考察作为基础的阶层型神经网络以及由其发展而来的卷积神经网络。深度学习,顾名思义,是叠加了很多层的神经网络。叠加层有各种各样的方法,其中著名的是卷积神经网络。作者很有意思的用恶魔来讲解神经网络的结构,隐藏层肩负着特征提取(feature extraction)的重要职责,恶魔组织实现了手写数字的模式识别。我们应该关注到,是恶魔之间的关系(也就是交情)和各个恶魔的个性(也就是心的偏置)协力合作推导出了答案。也就是说,网络作为一个整体做出了判断。 神经网络的参数确定方法分为有监督学习和无监督学习。本书只介绍有监督学习。有监督学习是指,为了确定神经网络的权重和偏置,事先给予数据,这些数据称为学习数据。根据给定的学习数据确定权重和偏置,称为学习。那么,神经网络是怎样学习的呢?思路极其简单:计算神经网络得出的预测值与正解的误差,确定使得误差总和达到最小的权重和偏置。这在数学上称为模型的最优化。关于预测值与正解的误差总和,有各种各样的定义。本书采用的是最古典的定义:针对全部学习数据,计算预测值与正解的误差的平方(称为平方误差),然后再相加。这个误差的总和称为代价函数(cost function),用符号 [插图] 表示(T 是 Total 的首字母)。利用平方误差确定参数的方法在数学上称为最小二乘法,它在统计学中是回归分析的常规手段。 神经网络的数列和递推关系式,熟悉递推关系式,对于用计算机进行实际计算有很大的帮助。这是因为计算机不擅长导数计算,但擅长处理递推关系式。还介绍了向量、内积的坐标表示、张量(tensor,是向量概念的推广)、矩阵、导数、偏导数、多变量函数的近似公式、梯度下降法、最优化问题和回归分析等相关的知识。都是为了后面有助于理解神经网络的数学知识。 神经网络的代价函数,向神经网络提供学习数据,并确定符合学习数据的权重和偏置,这个过程称为学习。这在数学上一般称为最优化,最优化的目标函数是代价函数。误差反向传播法的特点是将繁杂的导数计算替换为数列的递推关系式,而提供这些递推关系式的就是名为神经单元误差(error)的变量 δ。 然后小恶魔来讲解卷积神经网络的结构,池化层的神经单元中浓缩了作为考察对象的图像中包含了多少小恶魔所偏好的模式这一信息。 最后不得不说作者高屋建瓴,在我看来,能把数学知识能讲的明白并不无聊并非一件易事,里面不管用了生物学的神经元还是小恶魔都很形象的把数学公式层层推进,让数学公式不那么单调,不管是让你体验神经网络、神经网络的误差反向传播法还是卷积神经网络的误差反向传播法,作者都很用心的用Excel对数据层层推进与计算,以前我直接看花书来入门深度学习,理论太干,看着看着就看不下去了,《深度学习的数学》很好的为想接触深度学习的小伙伴提供了一个入门的机会,十分推荐此书!!!
很好的一本书,内容很简单,适合初学者阅读,难度两星。有一定基础的读者,也可以通过本书加深对反向传播算法的理解,读完本书,手推BP不是难事。 一些很好的概念—— 隐藏层肩负着特征提取(feature extraction)的重要职责。 这是我看到过的,关于偏置bias最好的解释。 在像这个神经网络那样前一层与下一层全连接的情况下,在输入0的图像时,原本不希望做出反应的隐藏层神经单元B以及输出层神经单元1也有信号传递,因此需要禁止这样的信号并使信号变清晰,这样的功能就是偏置,在恶魔组织中表现为“心的偏置”。 这种细胞被命名为特征提取细胞。 对某种模式做出强烈反应的视神经细胞有助于动物的模式识别。想到本节考察的“恶魔”在大脑中实际存在,这真是非常有意思的事情。 误差反向传播法以梯度下降法为基础,它通过递推关系式越过导数计算。 误差反向传播法的特点是将繁杂的导数计算替换为数列的递推关系式。 只要求出输出层的神经单元误差,其他的神经单元误差就不需要进行偏导数计算! 幽默的解释—— 本节登场的恶魔与之前的恶魔性格稍微有点不同。虽然他们的共同点都是具有自己偏好的模式,但是相比第3章登场的恶魔坐着一动不动,这里的恶魔是活跃的,他们会积极地从图像中找出偏好的模式,我们称之为小恶魔。 每个小恶魔都有自己偏好的模式S,每个过滤器也都有自己的偏好模式。通过卷积操作,得到每个区域内,小恶魔(过滤器)和图片的相似度。 各个图像下面的“相似度”表示过滤器S的灰色格子部分与扫描图像块的灰色格子部分吻合的地方的个数。这个值越大,就说明越符合小恶魔偏好的模式。 过滤器S对手写数字“2”的检测发挥了作用。 数字“2”的图像的池化结果是由比数字“1”“3”的图像的池化结果大的值构成的。如果池化层神经单元的输出值较大,就表示原始图像中包含较多的过滤器S的模式。
对我来说是很及时的科普。 计算机和数据的世界里,模式识别问题是很重要的问题。 神经网络(其实就是一种数学方法,将模拟动物的神经细胞的神经元聚集起来形成网络,用网络去观察,去学习)就是来解决模式识别逻辑的。 深度学习:利用卷积神经网络的多层结构的神经网络,可以实现人工智能,也就是识别人和猫。 神经网络:将构成大脑的神经元的集合体抽象为数学模型。Sigmoid函数,是激活函数的代表隐藏层:肩负着特征提取的重要职责监督学习的过程就是优化,给定学习数据确定权重和偏置。针对全部学习数据,计算预测值与正解的误差的平方(平方误差),然后再相加,称为代价函数。利用平方误差确定参数的方法在数学上称为最小二乘法(二次函数中),它在统计学上是回归分析的常规手段。內积最小(向量相反),梯度下降(寻找最小值的点的方法)人工智能学习tensorflow,google的定义,tensor张力的概念误差方向传播方法(将繁杂的导数计算为数列的递推关系式),求梯度的有效方法,确定网络的权重和偏置。池化(max pooling):是信息压缩方法,具体来说就是将划分好的各区域最大值提取出来。
这本书真的是一本好书!它深入浅出地讲解了深度学习中的数学,尤其是关于神经网络以及其中的卷积神经网络的介绍,解决了自己的很多疑惑。数学,之前曾是我一直觉得很难的东西,尤其是在学习深度学习的时候有的时候看公式觉得很难看懂,无法理解其中的缘由。而此书将神经网络中的很多原理用简单的数学的方式为我们解答出来,让自己理解了很多原理。以梯度下降法为例,之前自己只是知道要往梯度的反方向走,这样下降的速度才是最快的。但是为什么这样做下降速度最快呢?此书从最开始简单的数学知识比如向量,内积等知识一步一步做铺垫,最后以相似公式和向量内积的性质解答了这个问题,让自己产生恍然大悟的感觉!真的是让自己感觉茅塞顿开,读起来酣畅淋漓!
特别推荐涌井良幸等著的这本小册子《深度学习的数学》,有大学一年级的高数基础,应该都能看懂,它是不可多得的深度学习入门书籍。 这本书比较大的亮点有几个: 1. 有关深度学习的数学模型和数学解释,还简要说明了数学模型与生物模型的异同。 2. 特别简洁说明了梯度下降法和偏导数在深度学习中的基础作用,但是也指出,求导方法在计算上太复杂,消耗算力太多,不是高效甚至有效的方法。 3.反向传播算法(BP)非常巧妙把求导法,转变为递推数列法,大大简化了计算过程,从而变成高效的深度学习方法。 4. 非常精炼介绍了卷积神经网络和经典神经网络的异同。从数学上来说,卷积神经网络通过过滤比较以及卷积层和池化层的设计,大大提升了复杂深度学习的效率。 看完以后有种感觉,在深度学习中,通过算法优化提升学习效率特别重要,但是别没有改变最底层的数学逻辑,梯度下降法和求导实际上是这些不同方法的底层逻辑。
较简洁的入门读物,又巩固了下如下思路: 最优值,梯度下降,以及利用链式法则简化计算产生的反向传播,反向传播通过迭代的方式从最后一层向前逐层计算出误差导数,摆脱了复杂的求导运算,大幅提升运算效率。这样每一次计算梯度,设置步长,重新算出迭代的值,重复此过程找到所有权重以及偏移值,直到损失函数值几乎不变化终止搜索。
非常好的一本书,深度学习必读书籍。但是建议找pdf看,微信读书里面的数学公式基本都是截图,排版看着比较难受。 看过不少关于深度学习的书和教程,大体上分为两种,一种是直接甩一沓数学公式和证明,也不管你懂不懂,另一种会避免涉及过多的公式,用代码来解释原理。机器学习领域要想深耕,是避免不了跟数学公式打交道的,但是很少有书会一步一步的解释公式背后的原理。这本书呢就填补了这个空白,从最基础的数学原理开始解释,一步步的引入深度学习的数学公式,还给了一些数学计算题,跟着算一算就能很深刻的理解公式的用法了,很贴近高中时候的学习模式。只需要有基本的高中数学知识就能读得很轻松了。 这本书还有个特点,就是完全不需要任何代码基础,涉及到的一些循环推导,都是由excel表格来推演的。 都毕业十多年了,再重新跟着这本书回顾一遍数学知识,第一次发现原来当年学的导数,数列还有这么深的应用,这些数学公式不再是学习的阻碍,而是帮助你理解世界的工具。
真的还是很棒的一本书,卷积网络的概念/推导当年东拼西凑学了一箩筐,但终究有部分知识还一直处在知其然不知所以然的阶段,比如一直说kernel是获取特征的,到底啥是特征在一些简单的模型又是如何work的当时一直没搞明白:( 反向传播也终于从推导层面一步步搞出来了,真的还蛮棒的一本书 how to do和how it work+例子非常浅显易懂的能带大家入门呢,入门神经网络的新手看这本妥妥够用,老做调参侠的回来巩固了解一些知识也很棒。(不过这个微信读书的版本我是发现印的公式有蛮多符号错误的,和前段时间看的推荐系统那本书一样,感觉是微信读书的问题,所以还是推荐买实体书看了) 想起15年苏老师让我给网易云录个神经网络入门教程,要是在那之前就看了这本书该多好,一切没有如果,只能说现在做的每个选择都是最早最好的那个啦
序号:2021.02 本书主要使用图片数字识别作为例子,来讲述阶层神经网络,和卷积神经网络模型。 下面是本人基础本书,百度百科,以及个人理解写的读书笔记,以便后续查阅。 关键名词 1. 所谓模式识别的问题就是用计算的方法根据样本的特征将样本划分到一定的类别中去。模式识别就是通过计算机用数学技术方法来研究模式的自动处理和判读,把环境与客体统称为“模式”。模式识别的难点在于答案不标准。 2. 阶层神经网络:按照层(layer)划分神经单元,通过这些神经单元处理信号,并从输出层得到结果。构成这个网络的各层称为输入层、隐藏层、输出层,其中隐藏层也被称为中间层。输入层负责读取给予神经网络的信息;隐藏层实际处理信息;输出层显示计算结果。 3. 卷积神经网络(Convolutional Neural Networks, CNN)是一类包含卷积计算且具有深度结构的前馈神经网络(Feedforward Neural Networks),是深度学习(deep learning)的代表算法之一。 4. 神经网络的参数确定方法分为有监督学习和无监督学习。深度神经网络是隐藏层比较多的神经网络。 5. 向神经网络提供学习数据,并确定符合学习数据的权重和偏置,这个过程称为学习。这在数学上一般称为最优化,最优化的目标函数是代价函数。 6. 在数学中,用模型参数表示的总体误差的函数称为代价函数,此外也可以称为损失函数、目的函数、误差函数等。 7. 回归分析定义:由多个变量组成的数据中,着眼于其中一个特定的变量,用其余的变量来解释这个特定的变量,这样的方法称为回归分析。 阶层神经网络 1. 从数学角度来理解阶层神经网络模型,可以表述为:将输入层数据加权处理,得到加权后的输入信息;然后还加权输入利用激活函数处理以后,得到输出结果。 2. 利用神经网络解决实际问题时,需要解决的问题有:建立模型、数据预处理、训练数据求解模型参数、用数据验证模型准确性等。 3. 阶层神经网络,在建立模型的时候,需要考虑结果如何表示,参数加权函数、激活函数、代价函数等如何选择的问题。 4. 神经网络模型确立之后,就需要解决模型求解问题。模型求解需要解决,参数初始化、参数如果计算获得等。 5. 从数学上来说,确定神经网络的参数是一个最优化问题,具体就是对神经网络的参数(即权重和偏置)进行拟合,使得神经网络的输出与实际数据相吻合。 6. 梯度下降法是确定神经网络的一种代表性的方法。它是著名的寻找最小值的点的方法。在神经网络参数计算时,我们常常利用梯度下降法来计算代价函数的最小值。 7. 用计算机实际确定神经网络时,必须设定权重和偏置的初始值。求初始值时,正态分布(normal distribution)是一个有用的工具。 8. 计算机不擅长导数计算,但擅长处理递推关系式。在导出函数的递推关系时,我们可以借助近似函数、泰勒公式、数值分析计算等手段。我们在求解梯度下降算法的最优解时,需要大量的导数求解,这就导致最小值的求解很难进行。为此,提出了误差反向传播法。 卷积神经网络 1. 卷积神经网络的隐含层包含卷积层、池化层和全连接层3类常见构筑,在一些更为现代的算法中可能有Inception模块、残差块(residual block)等复杂构筑。在常见构筑中,卷积层和池化层为卷积神经网络特有。卷积层中的卷积核包含权重系数,而池化层不包含权重系数,因此在文献中,池化层可能不被认为是独立的层。 2. 卷积层的功能是对输入数据进行特征提取,其内部包含多个卷积核,组成卷积核的每个元素都对应一个权重系数和一个偏差量(bias vector),类似于一个前馈神经网络的神经元(neuron)。 3. 卷积层在特征提取的时候,常使用特征映射。 4. 在卷积层进行特征提取后,输出的特征图会被传递至池化层,进行特征选择和信息压缩过滤。 5. 常见的池化层有:最大池化、平均池化、L2池化等。 6. 卷积神经网络中的全连接层等价于传统前馈神经网络中的隐含层。全连接层位于卷积神经网络隐含层的最后部分,并只向其它全连接层传递信号。特征图在全连接层中会失去空间拓扑结构,被展开为向量并通过激励函数。 7. 卷积神经网络的整个过程,可以简单讲述为:将输入层数据进行特征映射,剔除不重要的特征信息,然后经过信息压缩过滤以后,得到加权的输入层。然后利用激活函数处理,得到最终的输出结果。从数学的角度来讲,就是将一个M*N的超大型矩阵,经过一系列的矩阵运算之后,变成一个结果向量。 整本书讲阶层神经网络、卷积神经网络的最基本最常见模型讲的很清楚,适合初学者。不足的地方是,模型求解使用的Excel,建议作者可以学习一下TensorFlow工具。
这书可以作为学习深度学习的基础读物。 感谢作者意识到作为基础读物而有时先采用一种大家比较好理解的说法来解释,后面再慢慢更正,采用更具数学性更严谨的说法。重点介绍了数学基础,本书的公式希望可以设置成链接跳转的,不然读起来是有点费劲的。
之前翻过几本讲解深度学习的书籍,书是好书,也都号称是入门书籍,但专业性还是太强,对于已把高数线代忘光了的我来说看到一堆偏导、矩阵计算有点些头晕脑胀看不下去。这本书却是循序渐进,虽然公式也很多,到最后一章也是长长的各种偏导、各种上下角标的符号,但是本书按照逻辑一步步介绍,不管是公式还是变量的定义,都从浅入深,例子也很合适。并且没有使用Python做演示,而是用了更直观的excel,这种让人耳目一新的方式,不用陷于对代码的研究,Excel的方式对于理解深度学习的概念很有帮助。
近期看过的最佳入门书籍,越来越喜欢微信阅读了,评论功能可以看到各个阅读者从不同学科、不同角度提出想法和理解,思路一下就打开了,阅读乐趣超级加倍。感觉这本书适合成为大学必读书,大学的时候理解不了学习高数、线性代数、统计学……的意义,这本书就提供了极好的应用场景,理论结合实际,学习才不枯燥啊。请入门书籍的作者参照此书撰写,小白体验感极佳。(鞠躬🙇)
作为人工智能大白,读此书的动机是想了解一下人们常说的人工智能到底是什么东西,舍友大佬平常交流的专业名词实在懵圈,在人工智能爆火的时代,十分有必要了解。契机是首页推荐了这个书,显示了我的一位朋友在读。 此书充斥着大量的数学符号公式,刚开始不到反向传播的时候,我还能耐心去理解公式的含义,但后来就顶不住了,看到公式只想跳过,excel演示实例的初衷是想教大家理解,但这也不是我的目的,也没怎么细看。 说说这本书的优点,刚开始从自然神经网络引入到人工神经网络确实很形象,也容易理解深度学习的概念,进而抽象出数学语言来描述人工神经网络,便于学术之间的交流,由此可以推断出,我朋友圈读的这位大哥,一定在产出SCI的路上!
挺简单的科普,全书框架也很清晰,没有太多废话。让神经网络和卷积神经网络的误差函数取到最小值,一般采用梯度下降法。仔细阅读,理解每个参数,搞懂每个步骤其实挺花时间的。但是个人认为可以关注框架而非细节,其实到最后,解决问题的思路已经在几次实践中很清晰了,真正落手到项目时,再去关注这些参数细节就好了。 看完能让人明白大概什么是神经网络、深度学习了,作为入门读物很不错,各种地方的解释也都很清晰。 个人认为“小恶魔”那里的解释类比有点牵强,像是刻意为之不够形象,作为读者难以通过这种“小恶魔”的行为类比理解神经网络的原理。
写得非常通俗易懂,适合小白自学,推荐阅读。