问题就像标题一样简单。
我想根据我的得分函数而不是使用的最小二乘距离来训练模型LinearRegression
。
我发现声明自己的分数函数的唯一地方是模型评估算法。
我要使用的 score 函数是一个根据两个数据集的单调性(一个测试,一个训练)的接近程度返回分数的函数。
def monotony_score_signed(y_true, y_pred):
assert y_true.ndim == 1
assert y_true.shape == y_pred.shape
true_order = y_true.argsort(0);
pred_sign = np.sign(np.diff(y_pred[true_order]))
true_sign = np.sign(np.diff(y_true[true_order]))
accuracy = float(np.count_nonzero(pred_sign == true_sign)/float(pred_sign.shape[0] - 1))
return accuracy