一 线性回归 (本文是看cs229后自己的理解,不足之处,请多多指教,若想看详细的请找机器学习笔记和视频)
线性回归就是先写出假设函数,然后找到代价函数(一般是平方求和),再对代价函数求偏导,得到了梯度,梯度负方向是下降速度最快的方向(梯度的方向是上升最快的方向)。求最小值就选择梯度的负方向进行迭代(最大值则选择梯度的方向进行迭代),再将代入假设函数得到了线性回归函数。(1)批梯度在更新
的时候,用到了全部样本的数据来进行一次更新,即:
。(2)而随机梯度也就是增量梯度则只用到了一个样本的数据来更
的,即:
,更新的时候,
是第i个训练数据,并且
是一个列向量,
也是一个列向量,每次迭代可以对全部的
更新。(3)最小二乘法估计:写出了平方损失函数后,直接对损失函数求导,得到最小值
,然后代入
即可,更新
,要求
必须是满秩的。
为什么要选用误差的平方和作为平方损失函数呢?这是因为满足了高斯分布,写出它的条件概率,由极大似然估计求得极值,当使平方和最小时,就求得了相应的
值。
局部加权线性回归中的误差函数,其中
,x为要预测数据的特征,对于线性回归算法,一旦拟合出适合训练数据的参数θ,保存这些参数θ,对于之后的预测,不需要再使用原始训练数据集,所以是参数学习算法。对于局部加权线性回归算法,每次进行预测都需要全部的训练数据(没有对全部的数据,只对预测周围的数据进行训练)(每次进行的预测得到不同的参数θ),没有固定的参数θ,所以是非参数算法。
二 逻辑回归
逻辑回归的二分类问题,假设函数为,
,然后求极大似然函数,求梯度,因为是最大化似然函数,所有是梯度上升的方向,就得到了更新
的结果。判断边界的确定,给一个阈值,就可以得到一个对应的signoid的b值,然后再将
,就可以解出边界线了。在将任意一个预测值代入就可以发现是负样本还是正样本了。
以前迭代的时候可以看作是得到极大似然估计后,利用梯度法来进行迭代得到最终的值,现在可以利用牛顿法来进行迭代,
是极大似然函数,当
是向量的
时候,
,其中
是
的Hessian矩阵。
广义线性模型的介绍, softmax 回归,一种广义线性模型的例子,可用于多分类问题,首先将概率化成指数分布族概率的模式,求出概率,然后运用梯度上升法求值。