最近从实例中提取出回归模型探索过程,现使用xmind暂时如下,可以指导作为回归模型探索的流程,从数据探索、特征工程、模型训练、模型验证、特征优化、模型融合六个方面来进行简单阐述。在遇到回归模型时,可以根据这个步骤来完成一系列分析和检查。
1、数据探索
1.1变量分析
散点图、相关性、卡方检验、小提琴图
1.2缺失值处理
测量、实验、处理和采样会造成异常值
异常值检测:箱线图、直方图、散点图
一般采用删除、转换、填充、区别对待进行处理
1.3变量转换
对数变换、平方立方根、变量分组
1.4新变量生成
派生变量、哑变量
1.5查看数据
读取数据集pandas.readcsv()
查看数据特征pandas.columns
查看基本信息pandas.info()
查看统计信息pandas.describe()
探索前五行数据pandas.head()
探索后五行数据pandas.tail()
探索数据是否有缺失pandas.isnull().sum()
1.6可视化数据
箱型图查看偏离值
模型预测找出异常值
直方图和Q-Q图查看是否正态分布
KDE分布图查看特征变量分布情况
线性回归关系图分析变量之间的线性回归关系
1.7特征变量相关性
相关性系数corr()
相关性热力图heatmap
根据相关性系数筛选特征变量
筛选最大的K个
相关性大于某个值
Box-Cox变换,数据转换使其符合正态分布
2、特征工程
2.1特征处理
标准化StandardScaler
区间缩放MaxMinScaler
归一化Normalizer
定量特征二值化Binarizer
定性特征哑编码
缺失值处理
数据转换
多项式转换PolynomialFeatures
对数转换FunctionTransformer
2.2特征降维
方差选择法VarianceThreshold
SelectKbest
相关系数法
卡方检验
最大信息系数法
RFE递归消除特征法
SelectFromModel
基于惩罚项
基于树模型
2.3线性降维
主成分分析PCA
线性判别分析法LDA
3、模型训练
3.1线性回归模型
一元线性回归,单一特征来预测响应量
多元线性回归,多个自变量估计因变量
3.2K近邻回归KNN
3.3决策树回归模型
3.4集成学习回归模型
随机森林回归模型
LightGBM回归模型
4、模型验证
4.1欠拟合与过拟合
4.2泛化与正则化
泛化是模型处理新样本的能力
正则化是训练的目标函数上加上一些规则限制,防止过拟合
岭回归(L2范数正则化)
LASSO回归(L1范数正则化)
4.3回归模型的评估指标
平均绝对值误差mean_absolute_error
均方误差mean_squared_error
均方根误差mean_squared_error
R平方值r2_score
4.4交叉验证
简单交叉验证train_test_split
K折交叉验证Kfold
留一法交叉验证LeaveOneOut
留P法交叉验证LeavePOut
其他交叉验证
基于类标签
基于分组数据
时间序列分割
4.5模型调差
网格搜索GridSearchCV
学习曲线和验证曲线
5、特征优化
5.1简单的特征变换
5.2用决策树创造新特征
5.3特征组合
非线性规律进行编码
使用独热矢量
使用分桶特征
6、模型融合
6.1模型优化
研究学习曲线,判断过拟合或者欠拟合并作出调整
调节模型权重参数,调整特征权重和特征组合
bad-case分析,错误例子挖掘
模型融合,取长补短
6.2voting投票机制
硬投票,投票数最多的为被预测的类
软投票,为不同模型设置权重,区别重要性
数据和特征决定机器学习的上限,模型和算法只是逼近这个上限。
网友评论