神经网络——(1)单个感知器的学习规则

单个感知器的学习规则:

点的分类问题
序号 x y 所属类型
1 -9 15 0
2 1 8 1
3 -12 4 0
4 -4 5 0

定义函数类型为阈值型函数

现在认为有一个函数为w1*x+w2*y+b=0可以将所属类型划分为1或0。

用矩阵定义为w=[w1 w2 b]; p=[x y 1]'。


第一步定义一个可以变化(学习的w矩阵):期望输出为d=[0 1 0 0] ,实际输出为y,e=d-y(用于调整方向);w1=w0+n*e*p (n为学习效率)(p如何解释?)

第二步  迭代第一次:w0=【0 0 0】,公式y=f(w*p),  d=[0 1 0 0],  e=d-y,  看e是否为0,为0停止不为0继续计算w1=w0+n*e*p

迭代第二次:公式y=f(w1*p),  d=[0 1 0 0],  e=d-y,  看e是否为0,为0停止不为0继续计算w2=w1+n*e*p,假设为0了。输出w1=[w1 w2 b], 这时w1*x+w2*y+b=0 可以将点1 2 3 4根据所属类型分开为2类。

就这想,我们不知道函数的[w1 w2 b]但可以通过自主学习,让其自动计算出[w1 w2 b]的值。


优点:结构简单,是入门机器学习的简单思想。

局限性:1.只有当全部点是线性可分时能够使用。


思考:1.损失值如何影响权值和阈值更新?

答:通过定义误差函数影响权值阈值更新

2.权值阈值如何更新?

答:1.定义一个误差函数E(wi)=\sum1/2*(d-y)^2——沿误差函数得负梯度前进,定义为Δw——w=w0+Δw。

3.变化的学习率

答:学习率可以设置为变化的w=w0+n*Δw

资料可见https://www.csdn.net/tags/MtTaMgzsMjA0NjQtYmxvZwO0O0OO0O0O.html

你可能感兴趣的:(机器学习,神经网络)