阈值如何影响模型表现
将阈值设为 0.4 后,模型评估结果看起来不错。现在,您可以使用分类报告中的违约召回率(通过函数 precision_recall_fscore_support() 获取)来评估财务影响。
为此,您将利用违约召回率来估算意外损失:用它来找出在新阈值下您没有捕获到的违约占比。这将对应一个美元金额,表示如果所有未识别的违约样本同时违约,您将遭受多少损失。
平均贷款金额 avg_loan_amnt 已经计算好,并与 preds_df 和 y_test 一起提供在工作区中。
本练习是课程的一部分
Python 信用风险建模
练习说明
- 使用阈值
0.4重新赋值loan_status。 - 在
preds_df中使用 value counts 的第二个值作为违约数量,并存入num_defaults。 - 从分类矩阵中获取违约召回率,并存入
default_recall。 - 用新的违约召回率估算意外损失:计算
1 - default_recall与平均贷款金额及违约贷款数量的乘积。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Reassign the values of loan status based on the new threshold
____[____] = ____[____].____(lambda x: 1 if x > ____ else 0)
# Store the number of loan defaults from the prediction data
____ = preds_df[____].____()[1]
# Store the default recall from the classification report
____ = ____(____,preds_df[____])[1][1]
# Calculate the estimated impact of the new default recall rate
print(____ * ____ * (1 - ____))