为什么不进行feature scaling,会导致梯度下降不收敛?

来源:6-5 梯度下降法的向量化和数据标准化

chanchan666

2020-01-31

老师,您能从数学层面,直观解释下,为什么不进行数据归一化,导致theta值过大吗?

写回答

1回答

liuyubobobo

2020-01-31

更准确的说,是在有限迭代次数下,不收敛的概率变高了。


这是因为不进行数值归一化,数据点的分布可能很广,所以会加大搜索时间。


但是,是否归一化,是不影响梯度下降法的收敛性的。如果归一化以后能收敛,那么不归一化一定也能收敛,只不过可能需要的迭代时间更长。在 sklearn 中,迭代次数是一个参数,可调节(max_iter)


这也就是我在课程中说的,归一化能提高梯度下降的速度。


继续加油!:)

0
3
chanchan666
非常感谢!
2020-01-31
共3条回复

Python3入门机器学习 经典算法与应用  

Python3+sklearn,兼顾原理、算法底层实现和框架使用。

5839 学习 · 2437 问题

查看课程