阮亮亮
(四川大学经济学院 四川 成都 610000)
近年来,计算机相关理论和技术快速发展,特征工程和机器学习算法在金融科技行业应用广泛。信贷业务是银行的重要业务之一,金融机构重点关注信贷业务过程中产生的信用风险,金融系统需要对信用风险进行有效的防范。学者和金融机构研究者在构建模型和模型应用于实际业务的过程中,信贷数据集一般具有高维稀疏和正负样本不均衡的特点。如何对信贷业务数据集进行特征工程,并应用到具体的机器学习算法中提高评估和预测信用风险的能力,成为学者和各家金融机构积极探索的方向。
逻辑回归模型常用于分类任务,对于二分类问题,一般用0和1表示类别。模型的表达式如下:
其中P(y=1|x;θ)表示给定输入x条件下预测类别为1的概率,θ是条件概率的参数。
XGBoost模型是将K个树的结果进行求和作为最终的预测值,是树集成模型。表达式如下:
模型的目标函数如下:
通过拟合上次学习的残差,并用泰勒展开得到如下公式:
移除常数项后,目标函数如下:
本文研究的数据来源于某银行大数据比赛,数据集为该银行实际业务场景中的信贷数据。数据集中包括用户基本信息、借贷相关信息和其它信息,共104个特征。对原始数据集进行数据预处理,如数据清洗和数据对数变换等。根据业务场景构建信用等级特征等。数据集中贷款违约人数占比少,样本数据不平衡。运用分层采样进行划分训练集和测试集。
ROC表示“受试者工作特征”曲线,后被引入机器学习领域。ROC曲线的横轴是“假正例率”(False Positive Rate,简称FPR),纵轴是“真正例率”(True Positive Rate,简称TPR),以FPR和 TPR为坐标轴作图就得到了ROC曲线。对于样本不均衡数据集,评价指标一般采用AUC,AUC值是ROC曲线下与坐标轴围成的面积大小,取值范围一般为0.5到1。预测结果的AUC值越接近1,表示学习器的效果越好。
运用python中scikit-learn框架,选择相应的模型进行学习并进行参数优化。将训练好的模型分别对测试集进行预测,绘制ROC曲线图,如下:
图1 ROC曲线图
从图1可以看出,XGBoost模型ROC曲线下与坐标轴围成的面积大于逻辑回归模型。其中,XGBoost预测结果的AUC值为0.83,逻辑回归预测结果AUC值为0.77。结果表明,两种机器学习模型都能有效的对银行客户借款违约情况进行预测,XGBoost模型预测效果较好。
本文以某银行数据建模比赛数据集为研究对象,根据用户基本信息等104个特征进行数据建模。在进行特征工程后,运用两种不同的机器学习算法构建客户贷款违约概率预测模型评估信用风险,分析对比预测效果然后得出结论。实证结果表明,XGBoost模型和逻辑回归模型均能有效地预测信用风险,但从AUC指标来看,相比之下XGBoost模型的预测效果要优于逻辑回归模型。机器学习算法可以有效地预测借款人的违约情况并进行信用分析评估,使得金融机构平台能够进行风险控制。