当我想向sklearn.linear_model.HuberRegressor
添加另一种计分方法时出现了问题。为此,我尝试定义另一个继承HuberRegressor
的回归器。我的代码如下所示:
class my_linear(HuberRegressor):
def __init__(self, *args, **kwargs):
super(my_linear, self).__init__(*args, **kwargs)
def my_score(self):
pass
linear = my_linear(epsilon = 1.35)
linear.fit(X, y)
拟合后,会引发异常:RuntimeError:scikit-learn估计器应始终在其__init__的签名中指定其参数(无变量)。带有构造函数(自身,* args,** kwargs)的对象不遵循此约定。如果删除超级功能中的“ * args,** kwargs”,则不会发生此错误。
我不知道为什么会发生此错误。您能否解释一下并提供一些可能的解决方案?谢谢!