如何理解贷款审批机器学习项目中Linear Regression的预测结果
问题解答
关于输出值的理解
你的猜测是错误的。你当前使用的*线性回归(Linear Regression)*属于回归类算法,设计目标是预测连续数值,并不适用于你当前的二分类(放贷/不放贷)场景,因此它的输出没有「置信度」的含义:
- 这类输出是模型基于特征拟合得到的连续数值,没有上下限约束,所以会出现大于1或者小于0的结果(比如你遇到的1.034)
- 该数值无法直接对应放贷的概率高低,不能作为分类决策的依据。
适配场景的方案调整
你当前的需求是典型的二分类任务,建议换用分类类算法,最基础的适配方案是改用逻辑回归(Logistic Regression),这个算法的输出天然落在0~1区间内,代表样本属于正类(即你定义的发放贷款=1的类别)的概率,这时候你设置一个阈值(常用阈值为0.5),大于阈值判定为符合放贷条件,小于则判定为不符合,对应的数值就可以理解为置信度。
你可以直接修改代码中的模型定义部分即可:
# 把原来的线性回归替换为逻辑回归即可,其余数据处理部分无需改动 regr = linear_model.LogisticRegression()
如果你的数据集是按固定规则生成的,还可以选择决策树、随机森林这类树模型,拟合效果会更贴合你预设的规则,可解释性也更强。
基础实践建议
- 模型训练完成后,使用准确率、精确率、召回率、F1值等分类任务专用指标评估效果,不要使用回归任务的误差指标
- 分类结果判定阈值可以根据业务需求调整,比如要严格控制放贷风险,可以把阈值调高到0.7甚至更高,只有模型认为放贷概率足够高的时候才通过申请。
内容的提问来源于stack exchange,提问作者S Andrew
相关产品推荐
相关产品推荐

