神经网络讲义

神经网络的介绍:神经网络是一种运算模型,由大量的节点(或称神经元)之间相互联接构成。每个节点代表一种特定的输出函数,称为激励函数(activation function)。每两个节点间的连接都代表一个对于通过该连接信号的加权值,称之为权重,这相当于人工神经网络的记忆。

这是人类神经元:
在这里插入图片描述
模拟人类神经元,我们建立一种特殊的模型,这就是神经网络
在这里插入图片描述
神经网络的发展一波三折,每一次改变都伴随着技术的革新
在这里插入图片描述
这是神经网络的发展过程
在这里插入图片描述
线性不可分问题:
在这里插入图片描述

M-P模型

在这里插入图片描述 在这里插入图片描述
举个例子

对于一个双输入单输出的模型,设定W1=1,W2=1,h=0.5’;则y=f(x1+x2-0.5)在这里插入图片描述
感知器
与M-P模型不同的是,感知器可以通过训练自动设定参数

感知器训练方式为有监督学习,即需要设定训练样本和期望输出,然后调整实际输出和期望输出之差的方式(误差修正学习)。 误差修正学习可用公式
在这里插入图片描述
注:这里 α可以看作学习率,太大会影响训练的稳定性,但速度较快,太小则相反

感知器参数调整的具体实例:
在这里插入图片描述
激活函数:激活函数类似于人类神经元,对输入信号进行线性或非线性变 换。 M-P 模型型使用 step 函数作为激活函数,即大于阈值输出1,小于阈值输出0,这种激活函数是不连续也是不可导的
注:激活函数可以向所建立的模型中添加非线性因素,有助与解决非线性问题,下面是一篇很好的文章,大家可以看一下
https://blog.csdn.net/u011832926/article/details/80347571

然而,感知器并不能解决线性不可分问题,为了解决这一问题,人们提出了多层感知器和误差反向传播算法

多层感知器指的是由多层结构的感知器递阶组成的输入值向前传播的网络,也被称为前馈网络或 正向传播网络。多层感知器通常采用三层结构,由输入层、中间层及输出层组成,如图所示:
在这里插入图片描述
对于单层感知机来说,我们可以使用误差修正学习的方法确定输入层与输出层之间的权重,那么在多层感知机中,我们是如何确定各层之间的权重的呢
在这里插入图片描述
因为多层感知机不能进行跨层调整,误差修正学习只能确定中间层与输出层之间的连接权重,而输入层与中间层的连接权重却无法确定,这就需要用到我们的误差反向传播算法了

误差反向传播算法就是通过比较实际输出和期望输出得到误差信号,把误差信号从输出层逐层向后传播得到各层的误差信 号,再通过调整各层的连接权重以减小误差,这样不仅是中间层与输出层,各层间的连接权重都得以确定。

下面我们就来看看误差和权重调整值的计算方法。 计算误差可以使 用最小二乘误差函数。 通过期望输 r 和实际输 y 计算最小二乘误差函数 E。 E 趋近于 0,表示实际输出与期望输出更加接近。 所以, 多层感知器的训练过程就是不断调整连接权重 w, 以使最小二乘误差趋近于0.

首先得到误差E与权值间的关系
在这里插入图片描述
连接权重的调整值与误差E的关系为

在这里插入图片描述
通过计算就可以得到权重调整值,完成对权值的更新,误差函数E得以减小

下面就以单层感知器为例,对上述计算过程进行说明:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_43264420/article/details/90444609