打字猴:1.700508329e+09
1700508329 数据科学家养成手册 [:1700503592]
1700508330 数据科学家养成手册 11.9 神经网络——深度学习
1700508331
1700508332 神经网络是一种成熟时间相对较晚的算法体系,是机器学习的一个分支领域。其实直到现在,对各种神经网络模型的研究仍在继续,包括其底层实现的数学层面理论依据和推导过程等也在研究过程中。由于神经网络的实验效果比较好,所以在各个深层领域有越来越多成熟的产品落地。
1700508333
1700508334 数据科学家养成手册 [:1700503593]
1700508335 11.9.1 神经元
1700508336
1700508337 神经网络的设计思路源于对人脑神经网络的一种模拟尝试。
1700508338
1700508339 人的大脑皮层中大约有140亿个神经元细胞,而人的全身有数百亿到上千亿个神经元细胞,这是一个非常复杂的神经网络。与计算机不同,神经网络虽然工作频率非常低,但是具有独特的大规模并行分布式结构,因此擅长对抽象事物的学习和模式识别,这些都是神经网络非常吸引人的地方。
1700508340
1700508341 如图11-39所示,人的神经细胞枝杈很多,一边比较粗大,另一边比较纤细。上端粗大的部分就是细胞体。细胞体上有一些小枝杈,叫作“树突”。细胞体下方像尾巴一样细长的东西叫作“轴突”。不同细胞之间通过树突和轴突传递信息,它们的接触点叫作“突触”。准确地说,一个细胞的轴突通过突触将信号传递给另一个细胞的树突。大量细胞连在一起,形成了复杂的神经网络。
1700508342
1700508343 神经细胞通过化学信号进行信息的传递,其传递机制非常复杂。我们使用二进的电子计算机对这一机制进行模拟,就是希望通过一种类似的方式获得像神经细胞那样强大的数据处理效果。
1700508344
1700508345
1700508346
1700508347
1700508348 图11-39 单个神经元细胞
1700508349
1700508350 为了模拟神经元细胞,人们设计了一种单个神经元模型(如图11-40所示),叫作“Rosenblatt感知器”,它几乎是最简单的、不可再分的数字神经元。其中,有n个维度的输入,每个维度的输入对应一个权重,这样就有n个权重,再加上一个偏置b,最后是一个激活函数。
1700508351
1700508352
1700508353
1700508354
1700508355
1700508356
1700508357
1700508358 图11-40 神经元模型
1700508359
1700508360 这样,(φ)x分类器函数里的x就是一个线性分类器,激活函数则用来对这个输出的“波幅”进行限制,通常限制在 [0, 1]。当然,也会根据不同的需求产生其他激活函数。
1700508361
1700508362 在这个表达式中,wT是一个n维的向量,x也是一个n维的向量,这两个向量做内积再加b,就形成了一个有关n维的x向量的线性分类器。如果不约束后面函数值的输出,那么只要给定一个wT和一个x,就会产生一个实数范围内的数值。一般来说,对于简单场景下的分类模型,可以只尝试使用一个线性分类器来实现,这相当于在一个n维空间中寻找一个超平面,并尝试用这个超平面把空间中的向量分成两类。
1700508363
1700508364 例如,在一个二维空间中有一个分类器
1700508365
1700508366
1700508367
1700508368
1700508369
1700508370 97 x和y分别是向量的两个维度。
1700508371
1700508372 相当于在一个二维空间中画一条直线,处于直线两侧的二维向量各属于一个分类(如图11-41所示)。
1700508373
1700508374
1700508375
1700508376
1700508377 图11-41 超平面2x – y+2=0
1700508378
[ 上一页 ]  [ :1.700508329e+09 ]  [ 下一页 ]