Python Scikit在混淆矩阵中学习更改阈值

Python Scikit在混淆矩阵中学习更改阈值,python,machine-learning,scikit-learn,confusion-matrix,Python,Machine Learning,Scikit Learn,Confusion Matrix,对于二进制分类器,我需要在不同的阈值下有多个混淆矩阵 我到处都查过了,但找不到一个简单的实现方法 有人能提供一种设置scikit学习混淆矩阵阈值的方法吗 我知道scikit learn的混淆矩阵使用0.5作为阈值 model = LogisticRegression(random_state=0).fit(X_train, y_train) y_pred = model.predict(X_test) confusion_matrix(y_test, y_pred) Output: array(

对于二进制分类器,我需要在不同的阈值下有多个混淆矩阵

我到处都查过了,但找不到一个简单的实现方法

有人能提供一种设置scikit学习混淆矩阵阈值的方法吗

我知道scikit learn的混淆矩阵使用0.5作为阈值

model = LogisticRegression(random_state=0).fit(X_train, y_train)
y_pred = model.predict(X_test)
confusion_matrix(y_test, y_pred)
Output: array([[24705,     8],
              [  718,     0]])

谢谢

我明白了,只是:

threshold = 0.2
y_pred = (model.predict_proba(X_test)[:, 1] > threshold).astype('float')
confusion_matrix(y_test, y_pred)

希望这有助于其他人寻找一个简单的方法来改变阈值

混淆矩阵的阈值是什么意思?请给出您期望的输入和输出的示例。@MathiasMüller我添加了代码片段,基本上我使用的是scikitlearn的混淆矩阵方法,但如何更改其阈值?