机器学习之信用卡欺诈案例(混淆矩阵、数据预处理、模型评估) |
您所在的位置:网站首页 › 机器诈骗案例 › 机器学习之信用卡欺诈案例(混淆矩阵、数据预处理、模型评估) |
在有监督(supervise)的机器学习中,数据集常被分成2~3个,即:训练集(train set),验证集(validation set),测试集(test set) 一个形象的比喻: **训练集-----------**学生的课本;学生 根据课本里的内容来掌握知识。 验证集------------作业,通过作业可以知道 不同学生学习情况、进步的速度快慢。 测试集-----------考试,考的题是平常都没有见过,考察学生举一反三的能力。 传统上,一般三者切分的比例是:6:2:2,验证集并不是必须的。 为什么要测试集 a)训练集直接参与了模型调参的过程,显然不能用来反映模型真实的能力(防止课本死记硬背的学生拥有最好的成绩,即防止过拟合) b)验证集参与了人工调参(超参数)的过程,也不能用来最终评判一个模型(刷题库的学生不能算是学习好的学生)。 c) 所以要通过最终的考试(测试集)来考察一个学(模)生(型)真正的能力**(期末考试)** 但是仅凭一次考试就对模型的好坏进行评判显然是不合理的,所以接下来就要介绍交叉验证法 from sklearn.model_selection import train_test_split # Whole dataset X_train, X_test, y_train, y_test = train_test_split(X,y,test_size = 0.3, random_state = 0) print("Number transactions train dataset: ", len(X_train)) print("Number transactions test dataset: ", len(X_test)) print("Total number of transactions: ", len(X_train)+len(X_test)) # Undersampled dataset X_train_undersample, X_test_undersample, y_train_undersample, y_test_undersampl |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |