单层感知器

1,040 阅读2分钟

这是我参与11月更文挑战的第2天,活动详情查看:2021最后一次更文挑战

单层感知器是最简单的神经网络,它的作用呢就是可以高效快速地解决线性可分的问题。

一、单层感知器的结构

单层感知器的结构图如下:

image.png

它包含如下内容:

  • 输入节点:x1,x2,x3
  • 输出节点:y
  • 权向量:w1,w2,w3
  • 偏置因子:b
  • 激活函数:sign(x)

为了便于用矩阵计算,上图的结构常会转换为下图:

image.png

其中,w0w_0相当于b,它的值是不变的。

二、感知器学习规则

假设感知器采用的是与阈值转移函数相类似的符号转移函数,其表达式为:

image.png

image.png

权值调整公式应为:

image.png

三、 学习率

  • 𝜂取值一般取0-1之间
  • 学习率太大容易造成权值调整不稳定
  • 学习率太小,权值调整太慢,迭代次数太多

四、模型收敛条件

  • 误差小于某个预先设定的较小的值
  • 两次迭代之间的权值变化已经很小
  • 设定最大迭代次数,当迭代超过最大次数就停止

五、单层感知器应用举例

(一)题目

假设平面坐标系上有四个点,(3,3),(4,3)这两个点的标签为1, (1,1),(0,2)这两个点的标签为-1。构建神经网络来分类。

(二)思路

我们要分类的数据是2维数据,所以只需要2个输入节点,我们可 以把神经元的偏置值也设置成一个节点,这样我们需要3个输入节点,网络结构图如下:

image.png

(三)代码

1、输入数据

image.png

2、标签

image.png

3、权值初始化

3行1列,取值范围-1到1

image.png

4、参数设置

image.png

5、权值更新函数

image.png

6、训练

image.png