我们知道逻辑回归的工作流程是首先根据某些方程获得概率,并使用默认截止值进行分类。
所以,我想知道是否可以根据我的要求将默认截止值(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
答案 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]