在 Python 中使用 sklearn 使用 MAE 训练线性模型

Training Linear Models with MAE using sklearn in Python

我目前正在尝试 在 python 中使用 sklearn 训练线性模型,但不使用均方误差 (MSE) 作为误差度量 - 但 平均绝对误差 (MAE)。根据我大学教授的要求,我特别需要一个带有 MAE 的线性模型。

我调查了 sklearn.linear_model.LinearRegression,因为它是一个 OLS 回归器,所以不提供替代错误度量。

因此,我检查了其他可用的回归量并偶然发现了 sklearn.linear_model.HuberRegressorsklearn.linear_model.SGDRegressor。他们都提到 MAE 作为他们错误度量的一部分——但似乎没有提供简单的 MAE。有没有办法为其中一个回归变量选择参数,以便生成的误差度量是一个简单的 MAE?或者我忽略了 sklearn 中的另一个回归器?

或者,是否有另一个(易于使用)python 3.X 包提供我需要的东西?

感谢您的帮助!

在 SGD 中,如果您将 'epsilon_insensitive' 与 epsilon=0 一起使用,它应该像您使用 MAE 一样工作。

你也可以看看statsmodelsquantile regression(用MAE也叫中值回归,median是分位数)