自动求导框架
简单线性回归:
y = b0 + b1*x + e
b0称为截距,显示估算回归线与y轴交叉的点
b1的值确定了估算回归的斜率
e表示随机误差,描述因变量和自变量之间的扰动,不符线性关机的随机分量无法解释
输入层->隐含层->输出层
一个基本的神经元:
激活函数示例如下:
这个“神经元”是一个以 x1,x2,x3x1,x2,x3 及截距 +1+1 为输入值的运算单元,其输出为 hW,b(x)=f(WTx)=f(∑3i=1Wixi+b)hW,b(x)=f(WTx)=f(∑i=13Wixi+b) ,其中函数 f:R↦Rf:ℜ↦ℜ被称为“激活函数”。
激活函数中比较常用的sigmoid函数
图像如下:
1 值域在0和1之间
2 函数具有非常好的对称性
函数对输入超过一定范围就会不敏感
sigmoid的输出在0和1之间,我们在二分类任务中,采用sigmoid的输出的是事件概率,也就是当输出满足满足某一概率条件我们将其划分正类
通过初始权重,输入数据,激活函数,我们通过正向传播可以得到一个输出数据
但此时输出数据与原始输出差距不匹配,所以这时我们就使用反向传播
1.首先使用方差公式计算总误差,此时我们有o1,o2两个输出,所以我们要分别计算两个误差后,进行相加,得到的值才是总误差
MSE 顾名思义 平均 平方 误差
X是真实数据 Y是预测数据 共有N个
那么 MSE = sum((X-Y).^2)/N
可得以下公式,计算出总误差:
再使用链式法则,就可得到某个权重参数对总误差产生多少影响:
例如:x,y两个输入变量,可得z
当固定x,z的增量除以y的增量,我们可称他为z对于y的偏导数
通过求偏导来确认每个权重对总误差的影响,在进行权重更新(这里具体公式不太能理解)
最后进行迭代不断更新参数即可
