本文是对《阿里云天池大赛赛题解析-机器学习篇》中理论的摘取。看完大概能对一个完整的机器许欸项目的流程有个印象,但是其中有很多细节我都略过了,后面有时间再补充。
02 数据分析
什么是回归预测模型?
- 回归预测模型的预测结果是一个连续域上的任意值,回归可以具有实值或离散的输入变量。多个输入变量的回归模型叫多元回归问题,输入变量按时间排序的回归问题成为时间序列预测模型。
- 回归模型算法包括:线性回归(Linear Regression)、岭回归(Ridge Regression)、LASSO回归(Least Absolute Shrinkage and Selection Operator)回归、决策树回归(Decision Tree Regressor)、梯度提升树回归(Gradient Boosting Decision Tree Regressor)
什么是分类预测模型?
- 分类预测模型就是按要求将实例分为两个或多个类中的一个,并具有实值或离散的输入变量。两个类别的叫二元分类问题,多于2的叫做多类别分类问题。
数据分析
- 单变量
- 连续型:需要统计数据的中心分布趋势和变量分布。
- 类别型:类别的频次和频率
- 双变量
- 连续型与连续型:
- 绘制散点图-能反应变量之间是线性还是非线性的
- 计算相关性-关系强弱的量化分析,相关性系数公式:,取值范围[-1,1]
import numpy as np
np.corrcoef(X,Y)
- 类别型与类别型
- 双向表:建立频次、频率的表来表示两个变量之间的关系
- 堆叠柱状图:直观
- 卡方检验 :主要用于两个和两个以上样本率(构成比)以及两个二值型离散变量的关联性分析,即比较理论频次与实际频次的吻合程度或拟合优度
- 类别型与连续型
- 绘制小提琴图,Seaborn包里的violinplot()函数
- 连续型与连续型:
缺失值处理
- 缺失值产生的分类:完全随机丢失、随机丢失、不可预测因子导致的丢失、取决于自身的丢失
- 缺失值的处理方法:
- 删除:成列删除、成对删除
- 均值、中值、众数填充
- 预测模型填充
异常值处理
- 异常值产生的原因:数据输入的误差、测量误差、实验误差、有意造成的异常值、数据处理误差、采样误差
- 异常值检测:箱线图,也可以结合散点图看。
- 异常值处理:删除、转换、填充、区别对待
变量转换
- 原因:变量取值分布不均匀,转换后使其分布在合理范围内。
- 变量转换方法:缩放比例或标准化、非线性关系转换成线性(对数变换)、使倾斜分布对称(取平方根或立方根)、变量分组
新变量生成
- 创建派生变量:用一组函数或现有变量创建新变量
- 创建哑变量:哑变量方法可将类别型变量转换成数值型变量。
Q-Q图和直方图
- Q-Q图是指数据的分位数和正态分布的分位数对比参照的图,如果数据符合正态分布,所有的点都会落在直线上。
KDE分布图
- kernel density Estimation 核密度估计,可以理解为是对直方图的加窗平滑。可以查看并对比训练集和测试集的分布情况,发现两个数据集中分布不一致的特征变量。
- 因为测试集和训练集的数据分布不一致会导致模型泛化能力变差,所以需要删除此类特征。
线性回归关系图
- 线性回归关系图主要用于分析变量之间的线性回归关系。
查看特征变量的相关性
- 计算相关性系数:删除训练集和测试集中分布不一致的特征变量后,计算剩余特征变量的相关性系数。
- 画出相关性热力图:所有特征变量和target变量之间的相