自然语言处理task5

1基本概念

前馈神经网络
前馈神经网络是一种最简单的神经网络,各神经元分层排列。每个神经元只与前一层的神经元相连。接收前一层的输出,并输出给下一层.各层间没有反馈。是目前应用最广泛、发展最迅速的人工神经网络之一。
常见的前馈神经网络有:
感知器网络
感知器(又叫感知机)是最简单的前馈网络,它主要用于模式分类,也可用在基于模式分类的学习控制和多模态控制中。感知器网络可分为单层感知器网络和多层感知器网络。
BP网络
BP网络是指连接权调整采用了反向传播(Back Propagation)学习算法的前馈网络。与感知器不同之处在于,BP网络的神经元变换函数采用了S形函数(Sigmoid函数),因此输出量是0~1之间的连续量,可实现从输入到输出的任意的非线性映射。
RBF网络
RBF网络是指隐含层神经元由RBF神经元组成的前馈网络。RBF神经元是指神经元的变换函数为RBF(Radial Basis Function,径向基函数)的神经元。典型的RBF网络由三层组成:一个输入层,一个或多个由RBF神经元组成的RBF层(隐含层),一个由线性神经元组成的输出层。
神经网络基本组成如下图:

  • 每层神经元与下一层神经元全部连接

  • 同层神经元之间不存在连接

  • 跨层神经元之间也没有连接
    这样的神经网络结构通常称为“多层前馈神经网络”,其中输入层与输出层之间的神经元被称为隐含层。多层前馈神经网络有一下特点:

  • 隐含层和输出层都是拥有激活函数的功能神经元

  • 输入层接收外界输入信号,不进行激活函数处理

  • 最终结果由输出神经元给出
    在这里插入图片描述

  • 输入层(input layer)
    输入层对应的是输入实例的特征向量;

  • 输出层(out put layer)
    输出层是经过多层神经网络计算之后得出的计算结果向量;

  • 隐含层(hidden layer)
    在神经网络的结构中,除了输入层与输出层以外的都叫隐含层,因为他计算结果是中间结果,对用户来说是不可见的,因此叫隐含层;

  • 输入层是由训练集的样本特征向量传入,一个神经元对应一个属性

  • 经过连接节点的权重传入下一层(hidden layer1),上一层的输出是下一层的输入

  • 上一层中的加权求和,然后根据非线性方程转化为下一层的输入

2激活函数

上述的非线性方程就是我们常说的激活函数,如果不用激活函数,由于线性变换的线性变换还是线性变换,有再多的中间层也没什么作用,我们想要网络能够逼近任意的函数,为了解决这个问题,需要找出一个函数实现线性到非线性的转化,它需要满足一下两个条件:
1.它不能是线性变换函数;
2.这个函数一定要是可微的,这样才能使用梯度下降算法;
隐含层加入激活函数可以实现线性到非线性的转化,使网络具有分层的非线性学习能力;

sigmoid函数

sigmoid函数式常用的非线性激活函数,数学表达式为 f ( x ) = 1 1 + e − x f(x)=\frac{1}{1+e^{-x}} f(x)=1+ex1
函数图像如下
在这里插入图片描述
特点:
它能够把输入的连续实值变换为0和1之间的输出,特别的,如果是非常大的负数,那么输出就是0;如果是非常大的正数,输出就是1.
缺点:
sigmoid函数曾经被使用的很多,不过近年来,用它的人越来越少了。主要是因为它固有的一些 缺点。
缺点1:在深度神经网络中梯度反向传递时导致梯度爆炸和梯度消失,其中梯度爆炸发生的概率非常小,而梯度消失发生的概率比较大。首先来看Sigmoid函数的导数,如下图所示:
在这里插入图片描述
如果我们初始化神经网络的权值为 [0,1] [0,1][0,1] 之间的随机值,由反向传播算法的数学推导可知,梯度从后向前传播时,每传递一层梯度值都会减小为原来的0.25倍,如果神经网络隐层特别多,那么梯度在穿过多层后将变得非常小接近于0,即出现梯度消失现象;当网络权值初始化为 (1,+∞) (1,+∞)(1,+∞) 区间内的值,则会出现梯度爆炸情况。
详细数学分析见文章:http://neuralnetworksanddeeplearning.com/chap5.html 中文译文:深度神经网络为何很难训练
缺点2:Sigmoid 的 output 不是0均值(即zero-centered)。这是不可取的,因为这会导致后一层的神经元将得到上一层输出的非0均值的信号作为输入。 产生的一个结果就是:如x>0, f=wTx+b x>0, \ f= w^Tx+bx>0, f=w
T
x+b,那么对w求局部梯度则都为正,这样在反向传播的过程中w要么都往正方向更新,要么都往负方向更新,导致有一种捆绑的效果,使得收敛缓慢。 当然了,如果按batch去训练,那么那个batch可能得到不同的信号,所以这个问题还是可以缓解一下的。因此,非0均值这个问题虽然会产生一些不好的影响,不过跟上面提到的梯度消失问题相比还是要好很多的。
缺点3:其解析式中含有幂运算,计算机求解时相对来讲比较耗时。对于规模比较大的深度网络,这会较大地增加训练时间

tanh函数

tanh函数表达式为 t a n h ( x ) = e x − e − x e x + e − x tanh(x)=\frac{e^x-e^{-x}}{e^x+e^{-x}} tanh(x)=ex+exexex
tanh函数及其导数图像如下图所示:
在这里插入图片描述
tanh读作Hyperbolic Tangent,它解决了Sigmoid函数的不是zero-centered输出问题,然而,梯度消失(gradient vanishing)的问题和幂运算的问题仍然存在。

Relu函数

Relu函数表达式 R e l u ( x ) = m a x { 0 , x } Relu(x)=max\left\{0,x\right\} Relu(x)=max{0,x}
Latex括号总结
Relu函数及其导数图像如下图所示:
在这里插入图片描述
ReLU函数其实就是一个取最大值函数,注意这并不是全区间可导的,但是我们可以取sub-gradient,如上图所示。ReLU虽然简单,但却是近几年的重要成果,有以下几大优点:
1) 解决了gradient vanishing问题 (在正区间)
2)计算速度非常快,只需要判断输入是否大于0
3)收敛速度远快于sigmoid和tanh

ReLU也有几个需要特别注意的问题:
1)ReLU的输出不是zero-centered
2)Dead ReLU Problem,指的是某些神经元可能永远不会被激活,导致相应的参数永远不能被更新。有两个主要原因可能导致这种情况产生: (1) 非常不幸的参数初始化,这种情况比较少见 (2) learning rate太高导致在训练过程中参数更新太大,不幸使网络进入这种状态。解决方法是可以采用Xavier初始化方法,以及避免将learning rate设置太大或使用adagrad等自动调节learning rate的算法。

尽管存在这两个问题,ReLU目前仍是最常用的activation function,在搭建人工神经网络的时候推荐优先尝试!上课sklearn中的神经网络默认选择的就是Relu。
学习自

3深度学习中的正则化

正则化项的作用:在所有可能的模型中选择能够很好的解释数据且十分简单的模型。防止过拟合,提高泛化能力。

3.1L1、L2正则

L1和L2正则都是比较常见和常用的正则化项,L1是绝对距离,L2是平方距离,都可以达到防止过拟合的效果。L1正则化的解具有稀疏性,可用于特征选择。L2正则化的解都比较小,抗扰动能力强。
损失函数在二维空间上L1正则
图中彩色实线是等值线,黑色实线是L1正则等值线。在二维空间(权重向量只有w1,w2)上,L1正则的等值线是方形,它与的等值线相交时交点为顶点的概率很大,因此w1或w2等于0的概率很大。所以使用L1正则项的解具有稀疏性,可以用于特征选择。
L2正则
图中彩色实线是等值线,黑色实线是L2正则等值线。在二维空间(权重向量只有)上,L2正则的等值线是圆,它与的等值线相交时w1或w2等于0的概率很小。在求解过程中,L2正则通常倾向让权值尽可能小,最后构造出一个所有参数比较小的模型。因为一般认为参数值小的模型比较简单,能适应不同的数据集,也在一定程度上避免了过拟合现象。参数足够小,数据偏移多一点也不会对结果造成什么影响,所以说抗扰动能力强。

3.2数据增强

数据增强是提升算法性能、满足深度学习模型对大量数据的需求的重要工具。数据增强通过向训练数据添加转换或扰动来人工增加训练数据集。数据增强技术如水平或垂直翻转图像、裁剪、色彩变换、扩展和旋转通常应用在视觉表象和图像分类中。

3.3Early stop

早停法可以限制模型最小化代价函数所需的训练迭代次数。早停法通常用于防止训练中过度表达的模型泛化性能差。如果迭代次数太少,算法容易欠拟合(方差较小,偏差较大),而迭代次数太多,算法容易过拟合(方差较大,偏差较小)。早停法通过确定迭代次数解决这个问题,不需要对特定值进行手动设置。

3.4drop out随机失活

训练中随机让一些神经元的输出设为0,失活率一般为0.5。

4深度学习优化方法

这部分还没来得急学习到。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值