sklearn 线性回归中没有学习率和迭代次数
Posted
技术标签:
【中文标题】sklearn 线性回归中没有学习率和迭代次数【英文标题】:Abscence of Learning rate and number of iterations in sklearn Linear Regression 【发布时间】:2020-09-01 05:19:04 【问题描述】:我发现 scikit-learn 中的 Linear、Lasso 和 Ridge 都没有使用学习率(我们称之为 alpha)或迭代次数。
考虑到它是梯度下降的核心,我想知道他们是如何在没有学习率的情况下在底层实现线性回归的?
【问题讨论】:
您在这里做了一个隐含但明确的假设,即这些模型的底层优化算法是梯度下降。你确定吗? 不确定。您能否提及 sklearn 中使用了哪种算法? 【参考方案1】:这些方法通过最小化目标函数来工作,但线性回归和正则化回归之间的区别就在这里。一方面,线性回归通过最小化真实值和预测值之间的残差平方和来拟合最优系数,即它是最小化和目标函数,如 ||y - X||^2,其中 y 是您的真实值,X 是预测值。 有关该过程的更多详细信息,请参阅Understanding OLS estimation。
另一方面,Lasso and Ridge Regression 包含了另一个解释该系数的术语,例如,在 Ridge Regression 中,要最小化的函数是 ||y - X||^2 + alpha * ||w||^2,其中 alpha 是通常所说的学习率,w 表示拟合系数,有关正则化如何缩小系数值的更多详细信息,请参阅此answer。
【讨论】:
以上是关于sklearn 线性回归中没有学习率和迭代次数的主要内容,如果未能解决你的问题,请参考以下文章