Python与机器学习之优化算法

Python与机器学习之优化算法

回顾圣经,在监督学习中优化算法是关键的步骤——分析模型并得到最优模型,才是最终的目的。

基于梯度下降的学习

对于一个简单的机器学习算法,每一个样例包含了一个(x,y)对,其中输入x和一个数值输出y。我们考虑损失函数 l(y^,y) ,它描述了预测值 y^ 和实际值y之间的损失。预测值是我们选择从一函数族F中选择一个以w为参数的函数 fw(x) 的到的预测结果。
我们的目标是寻找这样的函数f,能够在训练集中最小化平均损失函数

Q(z,w)=l(fw(x),y)

由于我们不知道数据的真实分布,所以我们通常使用
En(f)=1ni=1nl(f(xi),yi)

来代替
E(f)=l(f(x),y)dP(z)

经验风险用来衡量训练集合的效果。期望风险E(f)描述了泛化(generation)的效果,预测未知样例的能力
如果函数族F进行足够的限制(sufficiently restrictive),统计机器学习理论使用 经验风险来代替期望风险。

优化算法

1. batch gradient descent

这里写图片描述

2. stochastic gradient descent

这里写图片描述

3. newton’s method

这里写图片描述

总结

上述例举的只是简单常见的优化算法,初学者掌握也需要一定的时间,也能解决常见的实际问题。

最后,如果您觉得有用或者有想法的话,欢迎点赞或者评论。

python:190341254

丁。

你可能感兴趣的:(Python与数据分析,python,机器学习)