我们可以更改Logistic回归采用的默认截止值(0.5),而不是在计算分类错误时

时间:2018-02-20 10:01:19

标签: logistic-regression

我们知道逻辑回归的工作流程是首先根据某些方程获得概率,并使用默认截止值进行分类。

所以,我想知道是否可以根据我的要求将默认截止值(0.5)更改为0.75。如果是,有人可以帮我处理R或Python或SAS中的代码。如果否,有人可以提供相关证明。

在我查找此查询的答案的过程中,我发现: - 1.)我们可以找到可以提供最佳准确度的最佳截止值,并相应地构建混淆矩阵: -

找到最优截止值和构建混淆矩阵的R代码: - 库(InformationValue) optCutOff< - optimalCutoff(testData $ ABOVE50K,预测)[1] confusionMatrix(testData $ ABOVE50K,预测,阈值= optCutOff)

错误分类错误: - misClassError(testData $ ABOVE50K,预测,阈值= optCutOff)

注意: - 我们看到在计算混淆矩阵时更改了截止值,但在构建模型时却没有。有人可以帮我这个。

参考链接: - http://r-statistics.co/Logistic-Regression-With-R.html

1 个答案:

答案 0 :(得分:1)

from sklearn.linear_model import LogisticRegression
lr=LogisticRegression()

lr.fit(x_train, y_train)

我们发现第一次使用

lr.predict_proba(x_test)

获得每个类的概率,例如,第一列是y = 0的概率,第二列是y = 1的概率。

# the probability of being y=1
prob1=lr.predict_proba(X_test)[:,1]

如果我们使用0.25作为截止值,那么我们预测如下

predicted=[1 if i > 0.25 else 0 for i in prob1]