神经网络概念基础总结

1.使用softmax作为最终层输出。


计算每一个输出的比例,最大概率的作为最终预测的结果。

2、梯度下降 损失函数、、
J为定义的损失函数
分别求权重矩阵w和偏置值b的梯度(偏导数),梯度下降可能进入局部最优解

3、fat+short VS. Thin+tall
扁平或者深层对比
一般来说深层 好于扁平的网络
深层可以使用更多的特征进行分类,每一层一个特征

4、选择适当的的损失函数
Square Error(平方差) 或者Cross Entropy(交叉熵)

分类问题一般交叉熵好于平方均差

交叉熵是计算两个分别间的差距的方法,例如对于3分类问题,结果进行one-hot编码后的标签值可能是(1,0,0), 表示属于第一个分类,

使用softmax的预测值可能是(0.3,0.5,0.2),这两个都能看成是分布(概率和为1),交叉熵用来计算这 两个分布之间的差距。

5、mini-bath

epoch表示训练轮数

一个epoch包含多个MIni-Bath
Mini-Bath 随机选取训练数据(可以指定bath_size 大小)
Mini-Bath训练更快 更好

6、更深的网络层通常不意味着更好
深层网络会产生消失的梯度问题(vanishing gradient problem)
越接近输出层的梯度变化越小,学习速率缓慢,接近随机
(smaller gradients 问题)
7、ReLu (Rectified Linear Unit) 修正线性单元 maxout激活函数
原因:1.更快计算,2.生物因素;3.infinite sigmoid with different biases ;4.梯度消失问题
没有smaller gradients 问题;
Maxout (ReLu is a special cases of Maxout)
可学习激活函数
maxout的拟合能力是非常强的,它可以拟合任意的的凸函数。

z=W*X+b
out=f(z)
其中f就是我们所谓的激活函数,比如Sigmod、Relu、Tanh等。
在一个组中(组大小可以定义)选择需要输出,maxout的大小设置为5的情况如下所示:
相当于在每个输出神经元前面又多了一层。
relu、abs激活函数,看成是分成两段的线性函数,如下示意图所示:
maxout取最大值 因此会取线段上半部分,它可以拟合任意的的凸函数;

8、学习率设置
如果学习率太大,每次更行总体损失可能不会下降,如果太小,训练速度会减慢

不同的参数给不同的学习率
方法:Adagrad
同一个更新速率不一定适合所有参数。比如有的参数可能已经到了仅需要微调的阶段,但又有些参数由于对应样本少等原因,还需要较大幅度的调动。
Adagrad就是针对这一问题提出的,自适应地为各个参数分配不同学习率的算法。其公式如下:

此处,对
进行一个递推形成一个约束项regularizer,


用来保证分母非0
其他的自动调节学习率的方法:
RMSprop,Adadelta,AdaSecant。Adam,Nadam等

9、Monentum 动量
SGD方法的一个缺点是,其更新方向完全依赖于当前的batch,因而其更新十分不稳定。解决这一问题的一个简单的做法便是引入momentum。
它模拟的是物体运动时的惯性,即更新的时候在一定程度上保留之前更新的方向,同时利用当前batch的梯度微调最终的更新方向。这样一来,可以在一定程度上增加稳定性,从而学习地更快,并且还有一定摆脱局部最优的能力:
Adam (RMSprop (Advanced Adagrad) + Monentum)

10、overfitting 过拟合
测试数据与训练数据不同 ,测试数据有噪音,当学习到过多的噪音时,会是模型过拟合

Early Stopping 提前结束模型

11、weight decay 权重萎缩
减少权重个数是一种正则化方式
实现方法是在更新权重时,适当缩减权重值(w<----0.99w-ngi)

10.dropout
Dropout是指在模型训练时随机让网络某些隐含层节点的权重不工作,不工作的那些节点可以暂时认为不是网络结构的一部分,但是它的权重得保留下来(只是暂时不更新而已),因为下次样本输入时它可能又得工作了(有点抽象,具体实现看后面的实验部分)。
有百分之p的概率丢弃神经节点,使网络变的thinner
dropout is a kind of ensemble
可以训练出不同结构的神经网络
虽然dropout在训练集上的准确率低于NO Dropout方法,但其在测试集上的表象比No Dropout 更优秀,即dropout具有更好的泛化能力。
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值