1. 获得数据

总数据量超过 120w,包含47列变量信息,其中15列为匿名变量。其中抽取80万条作为训练集,20 万条作为测试集A,20万条作为测试集B。

2. 查看数据

2.1 读取数据

train = pd.read_csv('dataset/train.csv')
testA = pd.read_csv('dataset/testA.csv')

2.2 查看数据

train.head()

head()函数可以部分数据,默认读取前五行数据。

train.shape()

shape函数是numpy中的函数,它的功能是查看矩阵或者数组的维数。

3. 评价指标

3.1 混淆矩阵

import numpy as np
from sklearn.metrics import confusion_matrix

sklearn库是第三方模块

y_pred = [1, 0, 1, 0]
y_true = [0, 0, 1, 1]
confusion_matrix(y_true, y_pred)
confusion_matrix(y_true,y_pred,*,labels=None,sample_weight=None,normalize=None,
)

`(1)若一个实例是正类,并且被预测为正类,即为真正类TP(True Positive )

(2)若一个实例是正类,但是被预测为负类,即为假负类FN(False Negative )

(3)若一个实例是负类,但是被预测为正类,即为假正类FP(False Positive )

(4)若一个实例是负类,并且被预测为负类,即为真负类TN(True Negative )

混淆矩阵的每一列代表了预测类别,每一列的总数表示预测为该类别的数据的数目;每一行代表了数据的真实归属类别,每一行的数据总数表示该类别的数据实例的数目。每一列中的数值表示真实数据被预测为该类的数目。

3.2 准确率

from sklearn.metrics import accuracy_score
accuracy_score(y_true, y_pred)

0.5

准确率是常用的一个评价指标,但是不适合样本不均衡的情况。
Acc=TP+TNTP+FN+FP+TNAcc=\frac{TP+TN}{TP+FN+FP+TN} Acc=TP+FN+FP+TNTP+TN​

3.3 precision recall f1

from sklearn import metrics
metrics.precision_score(y_true, y_pred)

精确率又称查准率,正确预测为正样本(TP)占预测为正样本(TP+FP)的百分比。
precision=TPTP+FPprecision=\frac{TP}{TP+FP} precision=TP+FPTP​

metrics.recall_score(y_true, y_pred)

召回率又称为查全率,正确预测为正样本(TP)占正样本(TP+FN)的百分比。
recall=TPTP+FNrecall=\frac{TP}{TP+FN} recall=TP+FNTP​

metrics.f1_score(y_true, y_pred)

精确率和召回率是相互影响的,精确率升高则召回率下降,召回率升高则精确率下降,如果需要兼顾二者,就需 要精确率、召回率的结合F1 Score。
F1−score=21precision+1recallF1-score=\frac{2}{\frac{1}{precision}+\frac{1}{recall}} F1−score=precision1​+recall1​2​

3.4 P-R曲线

import matplotlib.pyplot as plt
from sklearn.metrics import precision_recall_curve
y_pre = [1, 1, 0, 1, 0, 0, 0, 1, 0, 1]
y_tru = [1, 0, 1, 0, 0, 0, 1, 1, 1, 0]
precision, recall,thresholds = precision_recall_curve(y_tru, y_pre)
plt.plot(precision, recall)

P-R曲线是描述精确率和召回率变化的曲线

3.5 ROC曲线

from sklearn.metrics import roc_curve
FPR, TPR, thersholds = roc_curve(y_tru, y_pre)
plt.title('ROC')
plt.plot(FPR, TPR, 'r')
plt.plot([0,1], [0,1], 'b--')
plt.xlabel('FPR')
plt.ylabel('TPR')
  1. ROC空间将假正例率(FPR)定义为 X 轴,真正例率(TPR)定义为 Y 轴。

  2. TPR:在所有实际为正例的样本中,被正确地判断为正例之比率。
    TPR=TPTP+FNTPR = \frac{TP}{TP+FN} TPR=TP+FNTP​

  3. FPR:在所有实际为负例的样本中,被错误地判断为正例之比率。
    FPR=FPFP+TNFPR=\frac{FP}{FP+TN} FPR=FP+TNFP​

注:(颜色)

b: blue
g: green
r: red
c: cyan
m: magenta
y: yellow
k: black
w: white

3.6 AUC

import numpy as np
from sklearn.metrics import roc_auc_score
y_True = np.array[1, 0, 0, 1]
y_scores = np.array[0.2, 0.55, 0.4, 0.7]
roc_auc_score(y_True, y_scores)

AUC(Area Under Curve)被定义为 ROC曲线 下与坐标轴围成的面积,显然这个面积的数值不会大于 1。又由于 ROC曲线一般都处于y=x这条直线的上方,所以AUC的取值范围在0.5和1之间。AUC越接近1.0,检测方法真实性越 高;等于0.5时,则真实性最低,无应用价值。

3.7 KS值

from sklearn.metrics import roc_curve
FPR, TPR, thresholds = roc_curve(y_tru, y_pre)
ks = abs(FPR-TPR).max()
ks

在实际操作时往往使用ROC曲线配合求出KS值。

【李小丫的笔记】DataWhale金融风控预测Task1相关推荐

  1. 金融风控训练营Task1学习笔记

    参考链接:https://tianchi.aliyun.com/notebook-ai/detail?spm=5176.20850282.J_3678908510.2.30a54d57TxIeDz&a ...

  2. 数据挖掘实践(金融风控)——task1:赛题理解

    文章目录 数据概况 数据读取 评估指标 数据概况 数据量超过120w,包含47列变量信息,其中15列为匿名变量.80万条作为训练集,20万条作为测试集A,20万条作为测试集B,变量含义如下: id 为 ...

  3. 金融风控数据挖掘-Task1

    本学习笔记为阿里云天池龙珠计划Docker训练营的学习内容,学习链接为:https://tianchi.aliyun.com/specials/activity/promotion/aicampdoc ...

  4. 金融风控数据挖掘--Task1

    赛题分析: 通过给定训练集数据训练得模型,利用AUC作为评测指标,预测测试集中数据评判各属性金融风险. 一.学习内容: 金融风控预测类常见的评估指标 1.ROC曲线 在信号检测理论中,接收者操作特征曲 ...

  5. 【天池】金融风控数据挖掘task1

    天池金融风控数据挖掘task1 1.赛题理解 赛题以预测金融风险为任务,数据集报名后可见并可下载,该数据来自某信贷平台的贷款记录,总数据量超过120w,包含47列变量信息,其中15列为匿名变量.为了保 ...

  6. 阿里云天池 金融风控训练营Task1 广东工业站

    Task1  赛题理解 一.学习知识点概要 本次学习先是介绍了赛题的背景和概况,题目以金融风控中的个人信贷为背景,给所给的47列特征中,根据贷款申请人的数据信息预测其是否有违约的可能,以此判断是否通过 ...

  7. 笔记之零基础入门金融风控-贷款违约预测

    零基础入门金融风控-贷款违约预测 赛题描述 赛题概况 数据概况 合理的创建标题,有助于目录的生成 预测指标 赛题流程 评分卡 笔记记录转载 赛题描述 赛题以金融风控中的个人信贷为背景,要求选手根据贷款 ...

  8. 数据挖掘机器学习[六]---项目实战金融风控之贷款违约预测

    相关文章: 特征工程详解及实战项目[参考] 数据挖掘---汽车车交易价格预测[一](测评指标:EDA) 数据挖掘机器学习---汽车交易价格预测详细版本[二]{EDA-数据探索性分析} 数据挖掘机器学习 ...

  9. 数据竞赛入门-金融风控(贷款违约预测)一、赛题介绍

    赛题概况 比赛要求参赛选手根据给定的数据集,建立模型,预测金融风险. 赛题以预测金融风险为任务,数据集报名后可见并可下载,该数据来自某信贷平台的贷款记录,总数据量超过120w,包含47列变量信息,其中 ...

  10. 金融风控(贷款违约预测)

    Task1赛题理解 Tip:本次新人赛是Datawhale与天池联合发起的0基础入门系列赛事第四场 -- 零基础入门金融风控之贷款违约预测挑战赛. 赛题以金融风控中的个人信贷为背景,要求选手根据贷款申 ...

最新文章

  1. 免费CDN加速隐藏你的服务器原ip以防别人攻击
  2. python123平台作业答案第十一周_第十一周作业
  3. HTML 5新增的元素
  4. b端 ux 设计思维_借助系统思维从视觉设计过渡到UX
  5. 国科金:共融机器人基础理论与关键技术研究重大研究计划
  6. JS数据分组[JSON]
  7. sscanf 连续相同编辑符_【第1995期】钉钉文档编辑器的前世今生
  8. 面向对象(基础oop)之继承总结
  9. c语言求闰年平年的计算方法,C语言平年闰年问题
  10. python hello world程序编写_自动编写Python程序的神器,Python 之父都发声力挺
  11. 信息理论-信源及信源熵
  12. java邮箱格式校验
  13. linux下卫士软件,Linux系统卫士
  14. 中国慕课moocpython答案_中国大学慕课moocPython编程基础章节测试答案
  15. MFC程序的生死因果
  16. pandas系列学习(五):数据连接
  17. 微信小程序文件直接上传阿里云OSS
  18. ORA-01109:数据库未打开 解决办法
  19. Ubuntu 文件同步工具 rsync
  20. GPRS模块--完整的内核修改兼容GPRS模块

热门文章

  1. Minecraft整合包 [GTNH]格雷科技:新视野 服务器搭建教程
  2. 考研备考建议篇——论文怎么投稿
  3. 利用PicGo快速获得图片外链(七牛云图床)
  4. 小武匠师PPT 基础篇(一)-武文杰-专题视频课程
  5. “海尔”业务流程再造给我们的启示(转载)
  6. java练手代码大全手机版_Java版打字练习游戏源码
  7. hardfault常见原因_stm32 HardFault_Handler调试及问题查找方法
  8. image not loaded  try to open it externally to fix format problem
  9. 统计push点击次数的shell脚本最初版本1
  10. 小白入门之HTML--第四章 CSS样式深入