机器学习笔记
1. EDA(Explore Data Analysis)
EDA 是 Explore Data Analysis 的缩写,是机器学习处理数据的第一步。它影响建模的质量或准确性。
- 首先,确定Predictor(输入)和Target(输出)变量。 接下来,确定变量的数据类型和类别。
- 单变量分析
在此阶段,我们逐一探讨变量。 执行单变量分析的方法将取决于变量类型是分类类型还是连续类型。
连续变量:-在连续变量的情况下,我们需要了解变量的集中趋势和分布。
使用各种统计指标可视化方法对这些指标进行测量.
分类变量:-对于分类变量,我们将使用频率表来了解每个类别的分布。我们还可以将其理解为每个类别下的值的百分比。可以使用两个指标(针对每个类别的计数和计数%)进行度量。条形图可以用作可视化。
- 双变量分析
双变量分析找出两个变量之间的关系,可以对分类变量和连续变量的任何组合执行双变量分析。
分类和分类,分类和连续以及连续和连续。
分类和分类:
a. Two way Table(双向表)
b. Chi-Square Test(卡方检验):该检验用于得出变量之间关系的统计显着性
概率为0:表示两个类别变量都是因变量
概率为1:表明两个变量都是独立的。
概率小于0.05:表明变量之间的关系在95%置信度下很显着。
用于检验两个类别变量的独立性的卡方检验统计量如下:
其中O代表观察到的频率。
E是零假设下的期望频率,
并通过以下公式计算:
)
连续和连续:可以使用以下公式得出相关性:
相关 = 协方差(X,Y) / SQRT(Var(X)* Var(Y) )
协方差公式参考:)
方差公式参考
在Excel中,函数CORREL()用于返回两个变量之间的相关性,而SAS使用过程PROC CORR来识别相关性。 这些函数返回Pearson Correlation值以标识两个变量之间的关系
-1:完美的负线性相关
+1:完美的正线性相关和
0:无相关
相关性分析python实现np.corrcoef(df, rowvar=False)
热力图
import matplotlib.pyplot as plt figure, ax = plt.subplots(figsize=(12, 12)) sns.heatmap(df.corr(), square=True, annot=True, ax=ax)
分类和连续:
Z 检验、T 检验或方差分析
- 数据缺失处理
a) Mean/ Mode/ Median Imputation (均值/众数/中位数插补)
b) 预测模型
c)KNN插补
5. 异常值检测与处理
检测异常值的最常用方法是可视化。我们使用各种可视化方法,例如箱形图,直方图,散点图
处理异常值的大多数方法与缺失值的方法类似:
- 删除观察值
- 转换和合并值
- 估算
- 单独处理:如果存在大量异常值,则应在统计模型中对其进行单独处理。 一种方法是将两个组视为两个不同的组,并为两个组建立单独的模型,然后组合输出。
- 特征工程
变量转换
对数:变量的对数是一种常用的转换方法,用于更改变量在分布图中的分布形状。通常用于减少变量的右偏度。不过,它也不能应用于零或负值。
平方根/立方根:变量的平方根和立方根对变量分布具有良好的影响。但是,它不如对数转换那么重要。多维数据集根有其自身的优势。它可以应用于包括零在内的负值。平方根可以应用于包括零的正值。
分档:用于对变量进行分类。它是对原始值,百分位数或频率执行的
特征/变量创建
创建派生变量:这是指使用一组函数或不同方法从现有变量中创建新变量
创建虚拟变量:虚拟变量最常见的应用之一是将分类变量转换为数字变量