单个感知器的学习规则:
序号 | 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)=1/2*(d-y)^2——沿误差函数得负梯度前进,定义为Δw——w=w0+Δw。
3.变化的学习率
答:学习率可以设置为变化的w=w0+n*Δw
资料可见https://www.csdn.net/tags/MtTaMgzsMjA0NjQtYmxvZwO0O0OO0O0O.html