吃瓜学习
Posted 王多头发
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了吃瓜学习相关的知识,希望对你有一定的参考价值。
【吃瓜之旅】本系列是针对datawhale《吃瓜教程-西瓜书和南瓜书》的学习笔记。本次是对西瓜书第五章的个人学习总结。本次学习的是神经网络,因为之前深度学习学过这里的相关内容,以及西瓜书第三章的铺垫。本章相对比较好理解~不过也拓展了一些知识,除了介绍神经元、感知机、多层网络、BP算法,也介绍了一些其他的神经网络开了开眼,BP成功的背后也有很多神经网络模型,也许他们也有绽放的一天吧。本章也介绍了老朋友深度学习。打算学完这本书,把代码录一遍就投入花书的世界。加油加油,本次学习快结束了。不过这样的生活才刚开始。
目录
第五章:神经网络
5.1神经元模型
本节介绍了神经网络模型中最小组成部分,神经元模型。神经网络是通过计算机和神经科学交叉学科研究的成果。最小单元神经元模型类似神经,在接收外部信号后将信号传递到其他神经元。神经元模型(M-P神经元):当神经元模型在接收外部数据后,对每个数据属性接受的权重不同,以W标记。同时需要通过神经元的阈值,经过“激活函数”后对通过的信号进行反馈。
这里的激活函数情况是(a)所示,但由于这样的阶跃函数存在不连续,不光滑的特点。为了激活函数更容易处理,选择sigmoid函数,保证输出区间在(0,1)。
5.2 感知机与多层神经网络
值得注意的是这里的数据前提书线性可分,也就是二维环境下有直线可以区分样本,
这里将w转x-θ变为w转x 由于将θ看做亚节点。
看完感知机的概念后回到那个线性不可分的问题,也就是如下图所示的异或问题,你没办法找到一条直线去解决:
这里就需要我们采用多层神经网络去处理。
以上为解决异或问题的多层神经网络。有了多层神经网络,就可以解决更复杂的问题。但是多层神经网络的参数计算也更困难,该如何计算呢?
5.3 误差逆传播算法
误差逆传播算法就是鼎鼎大名的BP算法,也就是深度学习的鼻祖吧。最成功的深度学习算法,理论上可以解决所有分类和回归问题。不过……
革命尚未成功,同志仍需努力!
回到BP模型:
通过对上图的推到,得到bp网络每个参数的梯度计算方法,也就是知道每个参数的优化方向。在训练模型时,不断训练E,在学习率η控制下使其得到最小值。
上图就是上述推导后用法的计算图,也就是BP算法的计算图。
书上介绍了两种BP算法 累计和标注,标准对每个X都会做一次更新参数,而累计对训练数据做完后再更新参数。一般建议先累计,到差不多后做标准BP。
对于神经网络也会带来过拟合问题,以下是过拟合定义:
解决过拟合采用如下两个方法:
- 早停
- “正则化”
5.4 全局最小与局部最小
一般我们计算可能到局部最小,因为η学习率的存在,可能得到一个损失函数最低的参数组后不会再变动。可能跳不出这个坑。但是大家还是没有放弃找到全局最小,这里给出三种解决办法:
5.5 其他神经网络
这里介绍了几种别的神经网络,感觉后面可能用得到:
5.5.1RBF
RBF特点就是需要一个中心,用于聚类。
5.5.2 ART
ART是自己和自己竞争的模型,可以做到学且不忘。
5.5.3 SOM
SOM特点就是高维向二维无监督抽象,感觉不错也可以用于无监督聚类。
5.5.4 级联相关网络
级联相关网络,特点就是自己给自己分层。
5.5.5 Elman
这个Elman就是RNN,对于时间序列和语言处理有很好的效果。
5.5.6 Boltzmann机
Boltzmann机是输入和输出互相训练隐藏层,好奇怪的计算。是基础退火算法的升级版。可以求得全局最优的一种BP替代方法,但是计算消耗较大。不过我觉得国内量子计算发展的可以,这个东西将来可能也会替代BP这样的网络吧。这块做了解学习啦。
5.6深度学习
这里主要说了深度学习中随着层数增加较少过拟合问题,但是计算复杂度也变多。
引出“预训练+微调”的方法及“权共享”的方法提升网络计算效率。
玉汝于成,功不唐捐。
以上是关于吃瓜学习的主要内容,如果未能解决你的问题,请参考以下文章