假设,对于给定一个样本集
现需要找到一条线去尽可能拟合这些点,对于某一点x(i),满足设这条线的方程是,:
我们引入 表示第
个输入值,每个输入值有
个数据,我们假设一共有
个输入值,完整的输入值
就是一个
的矩阵,
表示未知参数,
表示输出值。
因为输入值 与输出值
呈现一定的线性关系,所以:
,其中
是截距(误差项)。
接着,我们假设所有的 都服从期望为
,方差为
的正态分布,并相互独立,得到:
即:
我们期望得到的概率最大,这里使用了最大似然估计。似然函数 :
接下来,求 的最大值,对两边取对数
要使 最大,只要使
最大,所以代价函数为:
通常,为了方便计算:
way1:梯度下降法:
计算偏导数(Gradient)
对 关于
的求导数为:
我们循环以下算法直到到达局部最小值:
Repeat{
[for every j]
}
特征缩放:
学习率alpha的选择
随机梯度下降:
普通的梯度下降算法更新一次theta需要载入所有样本,也就是说一次更新的计算量为m*n^2(m为样本数量,n为参数数量)。这样如果m 非常大,我们需要把所有样本都载入,才能更新一次参数theta,更新一次theta的时间太久了。
而随机梯度下降算法是每次只取一个样本,马上就更新theta
way2:正规方程
正规方程、梯度下降的选择、比较
ps:本文参考:
https://blog.youkuaiyun.com/Antsypc/article/details/74391257
https://zhuanlan.zhihu.com/p/33526940