机器学习中的批量梯度下降与线性代数应用
1. 批量梯度下降
在机器学习中,传统的随机下降方法是基于单个观测值来更新模型,目标是最小化单个观测值的误差,其成本函数定义如下:
[
cost(\theta_0, \theta_1) = (obs.Cnt - (\theta_0 + \theta_1 \times obs.Instant))^2
]
而批量梯度下降则聚焦于整个数据集上的平均误差,即所有单个误差的平均值。此时成本函数变为:
[
cost(\theta_0, \theta_1) = \frac{1}{N} \left[ (obs_1.Cnt - (\theta_0 + \theta_1 \times obs_1.Instant))^2 + \cdots + (obs_N.Cnt - (\theta_0 + \theta_1 \times obs_N.Instant))^2 \right]
]
要更新参数 $\theta_1$,需要计算成本函数关于 $\theta_0$ 和 $\theta_1$ 的导数。根据导数的性质,$f(x) + g(x)$ 的导数是它们各自导数的和,所以聚合误差的导数就是每个单个观测值导数的和。$\theta_1$ 的更新公式如下:
[
\theta_1 \leftarrow \theta_1 - \alpha \times \frac{1}{N} \left[ obs_1.Instant \times (obs_1.Instant \times \theta_1 + \theta_0 - obs_1.Cnt) + \cdots + obs_N.Instant \times
超级会员免费看
订阅专栏 解锁全文
203

被折叠的 条评论
为什么被折叠?



