本文重点
前面的课程中,我们学习了逻辑回归算法和线性回归算法,这两种算法通俗来说就是一个解决分类问题,一个解决回归问题,两个算法目标函数不一样,然后损失函数也不一样,但是模型优化的本质都是一样的,都是最小化损失函数,本文学习一下如何编程实现梯度下降算法?
核心
假设我们现在有一个代价函数J(θ),而我们想要使用梯度下降算法使其最小化,我们需要编写一个代码,这个代码就是,当我们输入θ时,它会计算两样东西:
第一个:计算此时参数θ对应的损失J(θ)
第二个:此时J(θ)对此时参数θ的偏导数
假如我们已经完成了这两项,那么梯度下降算法就是反复执行下面参数更新
其实,就上图而言,对于梯度下降来说,其实我们并不需要编写代码来计算代价函数J(θ)。