您的位置:首页 > 理论基础 > 计算机网络

数据挖掘学习------------------4-分类方法-4-神经网络(ANN)

2017-12-21 15:15 756 查看

4.4神经网络

它是一种应用类似于大脑神经突触联接的结构进行信息处理的数学模型。

神经网络通常需要训练,训练的过程就是网络进行学习的过程。训练改变了网络节点的连接权的值使其具有分类的功能,经过训练的网络就可用于对象的识别。

1、感知器



由图可知:①几个输入结点,用来表示输入属性;②一个输出点,用来提供模型输出。

③在感知器中,每个输入结点都需要经过一个加权wi的连接到输出结点。模拟神经元间神经键连接强度。

④像生物神经系统一样,训练一个感知器模型相当于不断调整链的权值,直到能模拟训练数据的输入、输出关系为止。

⑤感知器对于输入加权求和,在减去偏置因子t,然后考察结果的符号,得到输出值Y。

例如:3个输入点,每个输入点权值都是0.3,偏置因子t = 0.4。

y = { 1,(0.3x1 + 0.3x2 + 0.3x3 - 0.4)  >  0

      {-1,(0.3x1 + 0.3x2 + 0.3x3 - 0.4) <  0

因此,感知器模型输出可以用如下数学方程式表示:

Y = sign(w1x1 + w2x2 +...+wnxn - t)

其中,wi:输入链的权值,xi:输入属性值,sign:符号函数作为输出神经元的激活函数,t:偏置因子。

因此可以更加简化为y = sign(wx - t)。

2、步骤

感知器训练阶段:

权值w不断调整指导输出和训练样例的实际输出一致,感知器具体学习算法如下:

①令 D = {(xi,yi),i = 1,2,....N}是训练样例集。

②用随机值初始化权值向量w(0)。

③对每个训练样例(xi,yi),计算预测输出Y(k)。

④对每个权值w更新权值。

⑤重复③④直到满足条件终值。

对于④步的权值更新公式:w(k+1) = w(k) + λ(y - Y(k))Xij

其中,w(k)是第k次循环后第i个输入链上的权值,则w(k+1)就是k的下一次。

λ成为学习率,其值在0,1之间,接近0,那么新权值主要受旧权值的影响,接近1,新权值对当前循环中的调整量更加敏感。在某些情况下,可以使用一个自适应的λ:在前几次循环时值相对较大,而在接下来的循环中逐渐减小。

Xij是训练样例xi的第j个属性值。

Y(k)是③步第k次xi对应的预测输出Y(k)。

y是③步的真实输出。

(y-y(k))是预测误差。

则,该公式可以表示为:新权值w(k+1)等于旧权值w(k)加上一个正比于预测误差(y -Y(k))的学习率λ。

(1)预测正确,即预测误差为零,那么保持权值保持不变。

(2)预测错误,则比如:

如果y=1,Y=-1,那么预测误差(y-Y)=2。为
4000
了补偿这个误差,需要通过提高所有正输入链的权值,降低所有负输入链的权值来提高预测输出值。

在权值更新公式时,对误差影响最大的链需要的调整最大。

然而,权值不能改变太大,因为仅仅对当前训练样例计算了误差项。

3、分类:

BP神经网络,RBP网络、Hopfield网络、自组织特征映射神经网络、学习适量化神经网络。

目前最多的是BP网络。当前的神经网络仍然普遍存在收敛速度慢、计算量大、训练时间长、不可解释等缺点。

4、特点

①至少含有一个隐藏层的多层神经网络是一个普适近似,即可以用来近似任何目标函数。

②由于ANN具有丰富的假设空间,因此对于给定的问题,选择合适的拓扑结构来防止模型的过分拟合是很重要的。

③ANN可以处理冗余特征,因为权值在训练过程中自动学习。冗余特征的权值非常小。

④神经网络对训练数据中的噪声非常敏感。处理噪声问题的一种方法是使用确认集来确定模型的泛华误差,另一种方法是每次迭代将权值减少一个因子。

⑤ANN权值学习使用的是梯度下降方法经常会收敛到局部极小值。避免局部极小值得方法是在权值更新公式中加上一个动量项。

⑥训练ANN是一个很耗时的过程,特别是当隐藏结点数量很大时,然而测试样例分类时非常快。

5、实例

基于4.2银行市场调查的分类器

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: