在 Python 中使用 sklearn 使用 MAE 训练线性模型
Posted
技术标签:
【中文标题】在 Python 中使用 sklearn 使用 MAE 训练线性模型【英文标题】:Training Linear Models with MAE using sklearn in Python 【发布时间】:2018-10-27 19:13:21 【问题描述】:我目前正在尝试在 python 中使用 sklearn 训练线性模型,但不使用均方误差 (MSE) 作为误差度量 - 但使用平均绝对误差 (MAE)强>。我特别需要我大学教授的 MAE 线性模型。
我研究了 sklearn.linear_model.LinearRegression,因为它是一个 OLS 回归量,所以它不提供替代的错误度量。
因此,我检查了其他可用的回归器并偶然发现了 sklearn.linear_model.HuberRegressor 和 sklearn.linear_model.SGDRegressor。他们都提到 MAE 作为他们错误测量的一部分——但似乎没有提供简单的 MAE。有没有办法为这些回归量之一选择参数,以便得到的误差度量是一个简单的 MAE?或者我忽略了sklearn中的另一个回归器?
或者,是否有另一个(易于使用)python 3.X 包可以提供我需要的东西?
感谢您的帮助!
【问题讨论】:
【参考方案1】:在 SGD 中,如果您使用 'epsilon_insensitive'
和 epsilon=0,它应该像使用 MAE 一样工作。
你也可以看看 statsmodels quantile regression(使用 MAE 也称为中值回归,中值是分位数)。
【讨论】:
以上是关于在 Python 中使用 sklearn 使用 MAE 训练线性模型的主要内容,如果未能解决你的问题,请参考以下文章
Python 导入错误:无法从“sklearn.externals”导入名称“六”
在 spark ML 2.2.0 中使用 sklearn-python 模型进行预测
如何在 Python 中使用 sklearn 对模型进行单一预测?