【DataWhale Day1】算法实践任务1

0.问题描述

这份数据集是金融数据(非原始数据,已经处理过了),我们要做的是预测贷款用户是否会逾期。表格中 “status” 是结果标签:0表示未逾期,1表示逾期。

1.评价指标

评价指标暂时选定为准确率值

通常金融的是否预期问题为不平衡数据,因此选区AUC为评价指标比较有参考意义

2.模型构建

模型构建的流程如下:

Created with Raphaël 2.2.0 数据导入 切分数据集,本地建模验证 模型评价(选区AUC值) 模型应用预测 yes no
2.1数据导入
# 导入数据处理和建模需要使用的python包
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LogisticRegression
from sklearn.tree import DecisionTreeClassifier
from sklearn import svm
from sklearn import cross_validation, metrics
# 读取数据
data = pd.read_csv("../input/datawhale2246/data_all.csv")
#确认下目标变量得分布情况
data.status.value_counts()
项目Value
03561
11193

跟之前猜测差不多,并没有特别均衡,后续再优化,建议可以采用auc-roc指标替换

2.2数据切分
# 切分数据集,引入随机数,以便模型结果复线
x = data.drop(['status'], axis=1)
y = data['status']
x_train, x_test, y_train, y_test = train_test_split(x, y, test_size=0.3, random_state=2018)
2.3模型训练
# 代入3个模型,引入随机数,以便模型结果复线
#逻辑回归
lr = LogisticRegression(random_state=2018)
lr.fit(x_train, y_train)
#SVM
svc = svm.SVC(random_state=2018)
svc.fit(x_train, y_train)
#决策树
dt = DecisionTreeClassifier(random_state=2018)
dt.fit(x_train, y_train)
2.3模型评价
#利用上述训练得模型,预测test数据,并查看模型指标
print(lr.score(x_test, y_test))
print(dt.score(x_test, y_test))
print(svc.score(x_test, y_test))

最后结果如下:
0.7484232655921513
0.6846531184302733
0.7484232655921513

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值