W3School TIY Editor

  • W3School 在线教程
  • 改变方向
  • 暗黑模式
​x
 
import numpy as np
from sklearn.metrics import accuracy_score, confusion_matrix, roc_auc_score, roc_curve
​
n = 10000
ratio = 0.95
n_0 = int((1-ratio) * n)  # 少数类样本数
n_1 = int(ratio * n)      # 多数类样本数
​
y = np.array([0] * n_0 + [1] * n_1)  # 真实标签
​
# 从不会总是预测众数类的假设模型中获取的概率值:
y_proba_2 = np.array(
    np.random.uniform(0, 0.7, n_0).tolist() +  # 类别 0 的预测概率
    np.random.uniform(0.3, 1, n_1).tolist()    # 类别 1 的预测概率
)
y_pred_2 = y_proba_2 > 0.5  # 以 0.5 为阈值生成预测标签
​
# 输出模型评估结果:
print(f'准确率: {accuracy_score(y, y_pred_2)}')
cf_mat = confusion_matrix(y, y_pred_2)
print('混淆矩阵')
print(cf_mat)
print(f'类别0准确率: {cf_mat[0][0]/n_0}')
print(f'类别1准确率: {cf_mat[1][1]/n_1}')