线性回归
定义:利用数理统计中回归分析,来确定两种或两种以上变量间相互依赖的定量关系的一种统计分析方法。
要素:训练集、输出数据、拟合的函数、训练数据的条目数。
损失函数:
![](https://i-blog.csdnimg.cn/blog_migrate/0c637fa11c36ab2a3e58807705fdbc9e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/c3045215f0d7264bb88c0ada8d65a325.png)
目标:求解
方法:求解
,可得
,其中x,y为给定样本数据,X,Y为这些数据组成的向量。
![](https://i-blog.csdnimg.cn/blog_migrate/8fee517315f4b6f13987a1982205b2ac.png)
![](https://i-blog.csdnimg.cn/blog_migrate/4a3fc4e2cfee30415fb52c6a81e38d35.png)
线性分类
定义:线性分类器则透过特征的线性组合来做出分类决定,以达到此种目的。简言之,样本通过直线(或超平面)可分
线性分类与线性回归差别:
输出意义不同:属于某类的概率<->回归具体值
参数意义不同:最佳分类直线<->最佳拟合直线
维度不同:前面的例子中,一个是一维的回归,一个是二维的分类
思路:构造一条二分类的“分界直线”,每个点相对于该直线的位置决定了其分类及归属度。为保证最终结果在0-1之间,需要对结果进行如下变换:
Sigmoid函数:
,其中
![](https://i-blog.csdnimg.cn/blog_migrate/6236f198d7640db68faba8bcdb8dc0b7.png)
![](https://i-blog.csdnimg.cn/blog_migrate/52efa9ff4dd71a7c0cf94ba9e8f6aa49.png)
损失函数:
![](https://i-blog.csdnimg.cn/blog_migrate/806d02bdc1f7622845c0c1e34bc0dc7e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/331daf49c1a932abee0cb52654655103.png)
目标:求解
![](https://i-blog.csdnimg.cn/blog_migrate/a1c45b99547d9c79cd7f791b1c11798f.png)
方法:求解 ,但由于J为非线性,采用迭代方法,令J(θ)趋近于零,可利用梯度下降法构造:
指数回归
利用条件概率描述,二分类问题可以描述为:
对其最小化,可得
假设各样本相互独立,即服从Bernoulli分布。则的合理估计值应当是让所有样本事件产生的几率最大,即应当是极大似然的,,去似然函数:
多分类回归
分类函数
对于多分类回归问题,需要多个超平面来分割,因此代价函数:
,又称交叉熵损失
对应梯度
这种方法又称Softmax
神经元模型
其中,
,f(x)为作用函数,可以取阶跃函数:
作用函数:
非对称型Sigmoid函数(Log Sigmoid),简称S型作用函数,可微。可表示为:
或
(β>0)
对称型Sigmoid函数(Tangent Sigmoid),可微。可表示为:
或
(β>0)
对称型阶跃函数,即具有阶跃作用函数的神经元,称为阈值逻辑单元,表示为:
Hebb规则:连接权值的调整量与输入与输出的乘积成正比:
感知机模型
是神经网络和支持向量机的基础。用于解决线性分类问题。
原理:直线方程ax+by+c=0,任意一点到该直线的距离为
。
![](https://i-blog.csdnimg.cn/blog_migrate/9abf66f0b9745f1dd711634f7a6cf729.png)
在高维度下距离公式为:
感知机从输入到输出的模型为:,
其中sign(x)为符号函数
定义损失函数为:
因此最终相当于寻找超平面参数满足
多层前馈网络
为解决线性不可分问题,在输入层和输出层之间加一或多层隐单元,构成多层感知机(多层前馈神经网络)。
多层前馈网络的反向传播学习算法,简称BP算法,是有导师的学习,它是梯度下降法在多层前馈网中的应用。
网络结构:见图,u、y是网络的输入、输出向量,神经元用节点表示,网络由输入层、隐层和输出层节点组成,隐层可一层,也可多层(图中是单隐层),前层至后层节点通过权联接。由于用BP学习算法,所以常称BP神经网络。
BP学习算法由正向传播和反向传播组成:
① 正向传播是输入信号从输入层经隐层,传向输出层,若输出层得到了期望的输出,则学习算法结束;否则,转至反向传播。
② 反向传播是将误差(样本输出与网络输出之差)按原联接通路反向计算,由梯度下降法调整各层节点的权值和阈值,使误差减小。
基本思想:
网络训练的目的,是使对每一个输入样本,调整网络参数,使输出均方误差最小化。这是一个最优化问题。
选取:
![](https://i-blog.csdnimg.cn/blog_migrate/134be5bec60509b461ba2c807a9692d1.png)
选择
,保证每一步J(W)都逐渐减小,从而使J最终可收敛到最小。 即梯度下降算法,也是BP学习算法的基本思想。
![](https://i-blog.csdnimg.cn/blog_migrate/798e13553b3540bf55684e1df612ec0d.png)
步骤:
① 设置初始权系数W0为较小的随机非零值;
② 给定输入/输出样本对,计算网络输出, 完成前向传播
③ 计算目标函数J。如J < ε, 训练成功,退出;否则转入④
④ 反向传播计算,由输出层,按梯度下降法将误差反向传播,逐层调整权值。
前向传播
隐含层输出:
![](https://i-blog.csdnimg.cn/blog_migrate/e6b5cb5b336207a0b915be45414d266d.png)
其中f为作用函数,可选取为Log Sigmoid函数
当只有一层隐层时,输出,
此时误差为
由于我们要计算
,因此需要求取
![](https://i-blog.csdnimg.cn/blog_migrate/49e2cbb580fe1bcbc6a02d9dc1de2cf3.png)
![](https://i-blog.csdnimg.cn/blog_migrate/4b7d228a53a98ee018d6529f95c88797.png)
![](https://i-blog.csdnimg.cn/blog_migrate/7e2fc1043ebd84ef42695cde0c4e6320.png)
误差反传
如果在输出层上,则
如果在隐含层上
然后更新权值
算法拓展
若输出层为线性节点(单输出),则
若考虑二分类问题(单输出)
权值正则化,加入正则化项
可以得到结果:
优点:
学习完全自主; 可逼近任意非线性函数;
缺点:算法非全局收敛;收敛速度慢;学习速率α选择;神经网络如何设计