Sklearn RANSAC 没有拦截

our*_*nos 3 python linear-regression scikit-learn

我正在尝试使用 sklearn 的RANSAC: RANdom SAmple Consensus算法拟合一个没有截距的线性模型(强制截距为 0)。在LinearRegression 中,可以轻松设置fit_intercept=False. 但是,RANSAC 的可能参数列表中似乎不存在此选项。这个功能没有实现吗?应该怎么做?sklearn 的 RANSAC 有哪些替代方法可以客观地选择内点和离群点,允许将截距设置为 0?

实现应该是这样的,但它引发了一个错误:

from sklearn.linear_model import RANSACRegressor

ransac_regressor = RANSACRegressor(fit_intercept=False)
Run Code Online (Sandbox Code Playgroud)

Sco*_*y1- 5

RANSAC是其他线性回归器的包装器,可以使用随机抽样共识来实现它们,因此您可以简单地将其设置base_estimatorfit_intercept=False

from sklearn.linear_model import RANSACRegressor, LinearRegression

ransac_lm = RANSACRegressor(base_estimator=LinearRegression(fit_intercept=False))
Run Code Online (Sandbox Code Playgroud)