连续目标上的 predict_proba() 二进制

数据挖掘 机器学习 分类 回归 统计数据
2022-02-14 07:13:47

我正在建立一个牛顿引力方程模型。它接收两个质量和一个半径,并输出它从公式中生成的内容。

F=Gm1·m2r2

我现在想将其转换为二元分类模型,为此我选择了一个阈值。如果力高于则 1 如果低于 0。

问题

鉴于上述问题,如何创建 predict_proba 函数?

1个回答

您可以在 Force 值上使用 Sigmoid 函数(根据最大值缩放到 [0-10]
缩放后阈值应变为 5。

def predict_proba(y_pred):

    y_pred = y_pred*10/100000  # scaled to [0-10]
    thresold = 5

    proba = np.exp(y_pred - threshold)/(1 + np.exp(y_pred - threshold))

    return proba

predict_proba(100000), predict_proba(80000), predict_proba(50000), predict_proba(40000), predict_proba(10000), predict_proba(2000)

(0.9933, 0.9525, 0.5, 0.2689, 0.0179, 0.0081)