Keras深度学习实战 - (EPUB全文下载)
文件大小:0.25 mb。
文件格式:epub 格式。
书籍内容:
Keras深度学习实战
第1章 神经网络基础
第2章 Keras安装和API
第3章 深度学习之卷积网络
第4章 生成对抗网络和WaveNet
第5章 词嵌入
第6章 循环神经网络——RNN
第7章 其他深度学习模型
第8章 游戏中的AI
第9章 结束语
第1章 神经网络基础
人工神经网络表示一类机器学习的模型,最初是受到了哺乳动物中央神经系统研究的启发。网络由相互连接的分层组织的神经元组成,这些神经元在达到一定条件时就会互相交换信息(专业术语是激发(fire))。最初的研究开始于20世纪50年代后期,当时引入了感知机(Perceptron)模型(更多信息请参考文章《The Perceptron: A Probabilistic Model for Information Storage and Organization in the Brain》,作者F. Rosenblatt,Psychological Review,vol. 65,pp. 386~408,1958)。感知机是一个可以实现简单操作的两层网络,并在20世纪60年代后期引入反向传播算法(backpropagation algorithm)后得到进一步扩展,用于高效的多层网络的训练(据以下文章《Backpropagation through Time: What It Does and How to Do It》,作者P. J. Werbos,Proceedings of the IEEE, vol. 78,pp. 1550~1560,1990;《A Fast Learning Algorithm for Deep Belief Nets》,作者G. E. Hinton,S. Osindero,Y. W. Teh,Neural Computing,vol. 18,pp. 1527~1554,2006)。有些研究认为这些技术起源可以追溯到比通常引述的更早的时候(更多信息,请参考文章《Deep Learning in Neural Networks: An Overview》,作者J. Schmidhuber,Neural Networks,vol. 61,pp. 85~117,2015)。直到20世纪80年代,人们才对神经网络进行了大量的学术研究,那时其他更简单的方法正变得更加有用。然后,由于G.Hinton提出的快速学习算法(更多信息,请参考文章《The Roots of Backpropagation: From Ordered Derivatives to Neural Networks and Political Forecasting》,作者S. Leven,Neural Networks,vol. 9,1996;《Learning Representations by Backpropagating Errors》,作者D. E. Rumelhart,G. E. Hinton,R. J. Williams,Nature,vol. 323,1986),以及2011年前后引入GPU后使大量数值计算成为可能,开始再度出现了神经网络研究的热潮。
这些进展打开了现代深度学习的大门。深度学习是以一定数量网络层的神经元为标志的神经网络,它可以基于渐进的层级抽象学习相当复杂的模型。几年前,3~5层的网络就是深度的,而现在的深度网络已经是指100~200层。
这种渐进式抽象的学习模型,模仿了历经几百万年演化的人类大脑的视觉模型。人类大脑视觉系统由不同的层组成。我们人眼关联的大脑区域叫作初级视觉皮层V1,它位于大脑后下方。视觉皮层为多数哺乳动物所共有,它承担着感知和区分视觉定位、空间频率以及色彩等方面的基本属性和微小变化的角色。据估计,初级视觉层包含了1亿4000万个神经元,以及100亿个神经元之间的连接。V1层随后和其他视觉皮层V2、V3、V4、V5和V6连接,以进一步处理更复杂的图像信息,并识别更复杂的视觉元素,如形状、面部、动物等。这种分层组织是1亿年间无数次尝试的结果。据估计,人类大脑包含大约160亿个脑皮质神经细胞,其中10%~25%是负责视觉信息处理的(更多信息,请参考文章《The Human Brain in Numbers: A Linearly Scaled-up Primate Brain》,作者 S. Herculano-Houzel,vol. 3,2009)。深度学习就是从人类大脑视觉系统的层次结构中获得了启发,前面的人工神经网络层负责学习图像基本信息,更深的网络层负责学习更复杂的概念。
本书涵盖了神经网络的几个主要方面,并提供了基于Keras和最小有效Python库作为深度学习计算的可运行网络实例编码,后端基于谷歌的TensorFlow或者蒙特利尔大学的Theano框架。
好的,让我们切入正题。
在本章,我们将介绍以下内容:
感知机
多层感知机
激活函数
梯度下降
随机梯度下降
反向传播算法
1.1 感知机
感知机是一个简单的算法,给定n维向量x(x1, x2, …, xn)作为输入,通常称作输入特征或者简单特征,输出为1(是)或0(否)。数学上,我们定义以下函数:
这里,w是权重向量,wx是点积(译者注:也称内积、数量积或标量积),b是偏差。如果你还记得基础的几何知识,就应该知道wx+b定义了一个边界超平面,我们可以通过设置w和b的值来改变它的位置。如果x位于直线之上,则结果为正,否则为负。非常简单的算法!感知机不能表示非确定性答案。如果我们知道如何定义w和b,就能回答是(1)或否(0)。接下来我们将讨论这个训练过程。
第一个Keras代码示例
Keras的原始构造模块是模型,最简单的模型称为序贯模型,Keras的序贯模型是神经网络层的线性管道(堆栈)。以下代码段定义了一个包含12个人工神经元的单层网络,它预计有8个输入变量(也称为特征):
from keras.models import Sequential
model ............
以上为书籍内容预览,如需阅读全文内容请下载EPUB源文件,祝您阅读愉快。
书云 Open E-Library » Keras深度学习实战 - (EPUB全文下载)