一、数据读取Load Data

二、数据分析EDA

三、数据预处理

四、特征工程Feature engineering

五、modeling & Tuning

六、Result

七、other theory

L1 or L2? 

------------------------------------------------

一、数据读取Load Data

二、数据分析EDA

import matplotlib.pyplot as plt

import seaborn as sns

sns.stripplot()  分类散点图

sns.distplot()  直方图

sns.barplot()  条形图

sns.pairplot()  散点图矩阵

三、数据预处理

1.缺失值

2.离群值

3.标准化

数据的标准化是一个比较常用的数据预处理方法,其目的是处理不同量纲的数据,使其缩放到相同的数据区间和范围,以减少规模,特征、分布差异对模型的影响。标准化后的数据还具有了直接计算并生成符合指标的意义。

encoder = LabelEncoder()

encoder.fit_transform(train[your_feature + "_qbinned"].values.reshape(-1, 1))  :  归一化

np.round(train.loc[:, your_feature].values)  :  标准化

数据的标准化:Z-score、Max-Min、MaxAbs、RobustScaler  https://blog.csdn.net/weixin_37536446/article/details/81435461

from sklearn import preprocessing
#scaler = preprocessing.StandardScaler()
#scaler = preprocessing.MaxAbsScaler()
scaler = preprocessing.RobustScaler()
all_data.loc[:,numcols] = scaler.fit_transform(all_data[numcols])

4.降维技术

PCA 主成分分析 、factor analysis 因子分析 、ICA 独立成分分析 ,(KernelPCA、IncrementalPCA、Sparse PCA)

矩阵分解:SVD(奇异值分解)

四、特征工程Feature engineering

1.分箱:

pd.qcut(train.loc[:, your_feature].values,q=10,labels=False)  :  quantile based binning(基于分位数的分箱,等分)

卡方分箱

2.标准化

3.删掉高相关性变量

all_data.corr()

corr_matrix = all_data.corr().abs()   #相关系数的绝对值

upper = corr_matrix.where(np.triu(np.ones(corr_matrix.shape), k=1).astype(np.bool))

to_drop = [c for c in upper.columns if any(upper[c] > 0.95)]   #相关系数大于0.95的删掉

4.kmeans ,对自变量进行聚类

5.LDA ,线性判别分析

6.NB 朴素贝叶斯算法:GaussianNB  ,BernoulliNB ,MultinomialNB

bnb = BernoulliNB(fit_prior=True)
bnb.fit(X_train, Y_train)
X_train_bnb = bnb.predict_log_proba(X_train)[:,1]
X_test_bnb = bnb.predict_log_proba(X_test)[:,1]
在scikit-learn中,一共有3个朴素贝叶斯的分类算法类。分别是GaussianNB,MultinomialNB和BernoulliNB。其中GaussianNB就是先验为高斯分布的朴
素贝叶斯,MultinomialNB就是先验为多项式分布的朴素贝叶斯,而BernoulliNB就是先验为伯努利分布的朴素贝叶斯。
https://www.cnblogs.com/pinard/p/6074222.html

7.LogisticRegression

8.SGDClassifier,梯度下降分类法

9.from sklearn.feature_selection import SelectKBest

10.Data augmentation  数据增强

数据增强程序 (数据增强就是过采样,此程序实现了对y=1的样本增加了2倍,对y=0的样本增加了1倍。中间对行数据进行了shuffle随机排列。)

五、modeling & tuning

5.1  modeling

LightGBM

GBDT

XGBoost

训练、测试样本的产生:Kfold、StratifiedKFold

GridSearch

5.2  Tuning 参数调优(精度、效率)

1.网络超参数自动化搜索 【调超参数】

Grid Search、Random Search、Heuristic Tuning启发式(手动调参)、

Automatic Hyperparameter Tuning 自动超参数调优(贝叶斯优化搜索、SMAC、TPE)

贝叶斯优化 https://www.cnblogs.com/marsggbo/p/9866764.html

                   https://www.cnblogs.com/marsggbo/p/10242962.html

2.最优化理论  【调模型参数】

BGD批量梯度下降、SGD随机梯度下降、MBGD小批量梯度下降 、

牛顿法、拟牛顿法、共轭梯度法

六、Result

roc curve / auc

ks

ML modeling process的更多相关文章

  1. Scoring and Modeling—— Underwriting and Loan Approval Process

    https://www.fdic.gov/regulations/examinations/credit_card/ch8.html Types of Scoring FICO Scores    V ...

  2. Threat Risk Modeling Learning

    相关学习资料 http://msdn.microsoft.com/en-us/library/aa302419(d=printer).aspx http://msdn.microsoft.com/li ...

  3. 2016年美国数学建模比赛(MCM/ICM) E题环境科学 Are we heading towards a thirsty planet? 人工精准翻译。

    第二次参加建模,觉得建模太有趣了,用几天的时间,迅速学习新知识,并解决实际问题. ——————————————————————————————————————————————————————————— ...

  4. UNIX标准及实现

    UNIX标准及实现 引言     在UNIX编程环境和C程序设计语言的标准化方面已经做了很多工作.虽然UNIX应用程序在不同的UNIX操作系统版本之间进行移植相当容易,但是20世纪80年代UNIX版本 ...

  5. Data Visualization – Banking Case Study Example (Part 1-6)

    python信用评分卡(附代码,博主录制) https://study.163.com/course/introduction.htm?courseId=1005214003&utm_camp ...

  6. PID控制器(比例-积分-微分控制器)- II

    Table of Contents Practical Process Control Proven Methods and Best Practices for Automatic PID Cont ...

  7. UV mapping

    [UV mapping] UV mapping is the 3D modeling process of making a 2D image representation of a 3D model ...

  8. kaggle Cross-Validation

    The Cross-Validation Procedure In cross-validation, we run our modeling process on different subsets ...

  9. (翻译)2016美国数学建模MCM E题(环境)翻译:我们朝向一个干旱的星球?

    PROBLEM E: Are we heading towards a thirsty planet? Will the world run out of clean water? According ...

随机推荐

  1. idea拉取git项目并创建为maven项目(新创建github项目)

    0 环境 系统环境:win10 编辑器:idea 1 正文 1 clone项目 跟着提示yes 下一步 2 在根节点添加pom.xml(maven) <?xml version="1. ...

  2. 干货 | DRDS 与TiDB浅析

    干货 | DRDS 与TiDB浅析 北京it爷们儿 京东云开发者社区  4月17日 在谈论数据库架构和数据库优化的时候,会常听到"分库分表"."分片".&quo ...

  3. 吴裕雄--天生自然TensorFlow2教程:前向传播(张量)- 实战

    手写数字识别流程 MNIST手写数字集7000*10张图片 60k张图片训练,10k张图片测试 每张图片是28*28,如果是彩色图片是28*28*3-255表示图片的灰度值,0表示纯白,255表示纯黑 ...

  4. Codeforces Round #620 (Div. 2)E LCA

    题:https://codeforces.com/contest/1304/problem/E 题意:给定一颗树,边权为1,m次询问,每次询问给定x,y,a,b,k,问能否在原树上添加x到y的边,a到 ...

  5. [极客大挑战 2019]EasySQL

    万能密码直接登陆得到flag admin' or 1=1 #

  6. UML的用例图

    1.概念理解 (1)用例图是UML多种图形语言的一种,最能体现系统结构,直观展现系统功能模块模型 (2)用例图用于描述用户与用例(角色与功能模块)之间的关联关系 (3)常用Power Designer ...

  7. Window Mysql5.7免安装版配置

    1.下载mysql 5.7 32位:https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.19-win32.zip 5.7 64位:https ...

  8. Vue 源码学习(1)

    概述 我在闲暇时间学习了一下 Vue 的源码,有一些心得,现在把它们分享给大家. 这个分享只是 Vue源码系列 的第一篇,主要讲述了如下内容: 寻找入口文件 在打包的过程中 Vue 发生了什么变化 在 ...

  9. 将iso mount 到nfs 目录问题

    最近有个需求,需要在多台系统安装程序,安装文件是iso 格式的,最普通的办法就是拷贝到其它系统,然后mount loop 到本地目录. 但是比较麻烦,而且当前已经有一个nfs 服务端了,于是想出一个办 ...

  10. sklearn连续型数据离散化

    二值化 设置一个condition,把连续型的数据分类两类.比如Age,大于30,和小于30. from sklearn.preprocessing import Binerize as Ber x ...