探索性数据分析

结构化数据的组成

  • 连续型数据 (区间数据、浮点型数据、数值数据)
    数据可在一个区间内取任何值。

  • 离散型数据 (整数型数据、计数型数据)
    数据只能取整数,例如计数。

  • 分类型数据 (枚举数据、列举数据、因子数据、标称数据、多分支数据)
    数据只能从特定集合中取值,表示一系列可能的分类。

  • 二元数据 (二分数据、逻辑型数据、指示器数据、布尔型数据)
    一种特殊的分类数据,数据值只能从两个值中取其一(例如0或1, True或False)。

  • 有序数据 (有序因子数据)
    具有明确排序的分类数据。

在软件中,数据通常按类型分类。
数据类型包括连续型数据、离散型数据、分类数据(其中包括二进制数据)和有序数据。
数据分类为软件指明了数据的处理方式。

矩形数据

  • 数据框
    电子表格等矩形数据是统计和机器学习模型中的基本数据结构。

  • 数据特征 (属性、输入、预测因子、变量)
    通常称数据表中的一列为一个特征。

  • 结果 (因变量、响应、目标、输出)
    不少数据科学项目涉及对结果的预测,常见的结果为“是”或“否”。特征有时在实验或研究中用于预测结果。

  • 记录 (事例、例子、实例、观察、模式、样本)
    通常称数据表中的一行为一条记录。

矩阵是数据科学中的基本数据结构。在矩阵中,行是记录,列是变量(特征)。
术语中会存在一些令人困惑之处。在与数据科学相关的各学科中,例如统计学、计算机科学和信息技术等,存在着一系列的同义词。

位置估计

  • 均值 (平均值)
    所有数据值之和除以数值的个数。

  • 加权均值 (加权平均值)
    各数值乘以相应的权重值,然后加总求和,再除以权重的总和。

  • 中位数 (第50百分位数)
    使得数据集中分别有一半数据位于该值之上和之下。

  • 加权中位数
    使得排序数据集中分别有一半的权重之和位于该值之上和之下。

  • 切尾均值 (截尾均值)
    在数据集剔除一定数量的极值后,再求均值。

  • 稳健 (耐抗性)
    对极值不敏感。

  • 离群值 (极值)
    与大部分数据值差异很大的数据值。

均值是一种基本的位置度量,但是对极值(离群值)敏感。
其他一些度量更为稳健,例如中位数和切尾均值。

变异性估计

  • 偏差 (误差、残差)
    位置的观测值与估计值的直接差异。

  • 方差 (均方误差)
    对于n个数据值,方差是对距离均值的偏差平方后求和,再除以n-1。

    计算方差时的被除数为什么是n-1,而不是n?这一讨论引出了自由度的概念。
    如果在方差公式中使用了直观的除数n,那么就会低估方差的真实值和总体的标准偏差。这被称为有偏估计。
    但是,如果除以n-1而不是n,这时标准偏差就是无偏估计。
    自由度考虑了计算估计量中的限制个数。在这种情况下,自由度是n-1,因为其中有一个限制:
    标准偏差依赖于计算样本的均值。

  • 标准偏差 (L2范数、欧几里得范数)
    方差的平方根。

  • 平均绝对误差 (L1范数、曼哈顿范数)
    对数据值与均值间偏差的绝对值计算均值。

  • 中位数绝对偏差
    数据值与中位数间绝对偏差的均值。

  • 极差
    数据集中最大值和最小值间的差值。

  • 顺序统计量 (秩)
    基于从大到小排序的数据值的度量。

  • 百分位数 (四分位数)
    表示一个数据集中,P%的值小于或等于第P百分位数,(100-P)%的值大于或等于第P百分位数。

  • 四分位距 (四分位差)
    第75百分位数和第25百分位数间的差值。

方差和标准偏差是日常最广为使用的变异性统计量。
方差和标准偏差都对离群值敏感。
更稳健的度量包括偏离均值(百分位数、四分位距)的平均(中位数)绝对偏差。

探索数据分布

  • 箱线图 (箱形图、箱须图)
    图基提出的一种绘图,是一种快速可视化数据分布情况的方法。

  • 频数表
    将数值型数据的计数情况置于一组间隔(组距)中。

  • 直方图
    对频数表的绘图,其中x轴是组距,y轴是计数(或比例)。

  • 密度图
    直方图的平滑表示,通常基于某种核密度估计。

频数直方图在y轴上绘制频数计数,在x轴上绘制变量值。它提供了对数据分布的概览。
频数表是直方图中频数计数的表格形式。
在箱线图中,箱子的顶部和底部分别表示第75百分位数和第25百分位数。箱线图也提供了数据分布的基本情况。多个箱线图通常是并排展示的,以便于比较分布情况。
密度图是直方图的一种平滑表示。它需要一个基于数据估计绘图的函数(当然也可以做多个估计)。

探索二元数据和分类数据

  • 众数
    数据集中出现次数最多的类别或值。

  • 期望值
    如果类别可以与一个数值相关联,可以根据类别的出现概率计算一个平均值。

  • 条形图
    在绘图中,以条形表示每个类别出现的频数或占比情况。

  • 饼图
    在绘图中,圆饼中的一个扇形部分表示每个类别出现的频数或占比情况。

分类数据通常按比例总结,可以使用条形图将它可视化。
类别用于表示不同类型的事物(例如苹果和橘子,男性和女性)、因子变量的等级(例如低、中和高),或由组距分隔的数值型数据。
期望值是对每个数值与该数值出现概率的乘积求和,通常用于总结因子变量的等级

相关性

  • 相关系数
    一种用于测量数值变量间相关程度的度量,取值范围在-1到+1之间。

  • 相关矩阵
    将变量在一个表格中按行和列显示,表格中每个单元格的值是对应变量间的相关性。

  • 散点图
    在绘图中,x轴显示一个变量的值,y轴显示另一个变量的值。

相关系数测量了两个变量间相互关联的程度。
如果变量v1的高值随变量v2的高值的变化而变化,那么v1和v2是正相关的。
如果变量v1的高值与变量v2的低值的变化相关联,那么v1和v2是负相关的。
相关系数是一种标准化的度量,因此其值的范围处于-1(完全负相关)和+1(完全正相关)之间。
如果相关系数为0,那么表示两个变量间没有相关性。但是注意,数据的随机排列将会随机生成正的或负的相关系数。

探索两个及以上变量

  • 列联表
    一种对两个或两个以上分类变量做计数的表格。

  • 六边形图
    一种用于两个数值变量的绘图,图中使用六边形表示记录的组距。

  • 等势线图
    一种类似于地形图的绘图,显示了两个数值型变量的密度情况。

  • 小提琴图
    一种类似于箱线图的绘图,但是显示的是密度估计量。

六边形图和等势线图是有用的工具,它们支持以图形方式同时查看两个数值型变量,不会受数据规模的影响。
列联表是一种查看两个分类变量计数情况的标准工具。
箱线图和小提琴图允许根据分类变量绘制数值型变量。

数据和抽样分布

随机抽样和样本偏差

  • 样本
    大型数据集的一个子集。

  • 总体
    一个大型数据集,或是一个构想的数据集。

  • N(或n)
    一般用N表示总体的规模,n表示样本的规模。

  • 随机抽样
    从总体中随机抽取元素到样本中。

  • 分层抽样
    对总体分层,并在每层中做随机抽样。

  • 简单随机抽样
    在不对总体分层的情况下,做随机抽样所得到的样本。

  • 样本偏差
    样本对总体做出了错误的解释。

即便是在大数据时代,随机抽样依然是数据科学家的一种重要手段。
由于测量或观测不能代表总体而出现系统性误差时,就会产生偏差。
数据的质量通常比数量更重要,而随机抽样可以降低偏差,提高数据的质量(否则,实现成本可能很高)。

选择偏差

  • 偏差
    系统性误差。

  • 数据窥探
    为得到感兴趣的结果,在数据中做大量的查找。

  • 大规模搜索效应
    由于重复的数据建模,或使用大量的预测变量对数据建模所导致的偏差或非可重现性。

指定一个假设,然后遵循随机化和随机抽样的原则收集数据,可以确保不会产生偏差。
所有其他类型的数据分析都有产生偏差的风险,风险来自数据的采集和分析过程,包括在数据挖掘中反复地运行模型、在研究中窥探数据,以及事后选取有意义的事件。

统计量的抽样分布

  • 样本统计量
    对抽取自大规模总体中的样本做计算,所得到的一些度量值。数据分布

  • 数据分布
    单个值在数据集中的频数分布。

  • 抽样分布
    一个样本统计量在多个样本或重抽样中的频数分布。

  • 中心极限定理
    当样本的规模增大时,抽样分布呈正态分布的趋势。

  • 标准误差
    多个样本间样本统计量的变异性(标准偏差)。不要与标准偏差混淆,后者指的是个体数据值间的变异性。

样本统计量的频数分布表明了度量在各个不同抽样间的变化情况。
抽样分布可以使用自助法估计,也可以通过依赖于中心极限定理的公式计算得到。
标准误差是一个关键的度量,它汇总了抽样统计量的变异性。

自助法

  • 自助样本(bootstrap sample)
    从观测数据集中做有放回的抽取而得到的样本。

  • 重抽样
    在观测数据中重复抽取样本的过程,其中包括自助过程和置换(混洗)过程。

自助法(即对数据集做有放回的抽样)是一种评估样本统计量变异性的强大工具。
自助法可以类似的方式应用于各种场景中,无须深入探究抽样分布的数学近似。
自助法可以在不使用数学近似的情况下,估计统计量的抽样分布。
用于预测模型时,聚合多个自助样本的预测(即Bagging方法),要优于使用单个模型的预测。

置信区间

  • 置信水平
    以百分比表示的置信区间。该区间是从同一总体中以同一方式构建的,可以包含我们感兴趣的统计量。

  • 区间端点
    置信区间的两端。

置信区间是一种以区间范围表示估计量的常用方法。
数据越多,样本估计量的变异性越小。
所能容忍的置信水平越低,置信区间就越狭小。
自助法是一种构建置信区间的有效方法。

正态分布

  • 误差
    数据点与预测值或均值间的差异。

  • 标准化
    数据值减去均值,再除以标准偏差。

  • z分数
    单个数据点标准化的结果。

  • 标准正态分布
    均值为0、标准偏差为1的正态分布。

  • QQ图
    对样本分布与正态分布间接近程度的可视化绘图。

在统计学的发展史中,正态分布有着十分重要的地位,因为它允许从数学上近似不确定性和变异性。
虽然原始数据通常并不符合正态分布,但误差通常是符合正态分布的。对于大规模样本的均值和总数,也是一样的。
要将数据转换为z分数,需要减去数据的均值,再除以标准偏差。这样,所生成的数据才可以与正态分布进行对比。

长尾分布


  • 一个频数分布的狭长部分,其中相对极值出现的频数很低。

  • 偏斜
    分布的一个尾部长于另一个尾部。

大部分数据是不符合正态分布的。
假设数据符合正态分布,这可导致对极端事件产生错误的估计(即“黑天鹅”现象)。

学生t分布

  • n
    表示一个样本的规模。

  • 自由度
    自由度是一个参数,允许根据不同的样本规模、统计量和组数对t分布进行调整。

t分布实际上是一个分布家族。它们与正态分布相似,但是尾部略厚。
t分布被广泛地用作样本均值分布、两个样本均值间的差异、回归参数等的参考基础。

二项分布

  • 试验
    一次输出离散值的事件,例如,一次硬币抛掷。

  • 成功
    一次试验的输出为我们感兴趣的结果。

  • 二项 (二元)
    具有两个输出

  • 二项试验 (伯努利试验)
    有两种输出的试验。

  • 二项分布 (伯努利分布)
    在多次试验中(例如x次),成功次数的分布。

二项输出在建模中十分重要,因为它们表示了基本的决策情况,例如是否购买、是否点击、存活还是死亡等。
二项试验是一种具有两种可能结果的试验,其中一种结果的概率为p,另一种结果的概率为1-p。
当n很大并且p不接近于0(或1)时,二项分布可使用正态分布近似。

泊松分布及其相关分布

  • lambda
    单位时间内或单位空间中的事件发生率。

  • 泊松分布
    单位时间内或单位空间中事件数量的频数分布。

  • 指数分布
    在时间或距离上,从一个事件到下一个事件的频数分布。

  • 韦伯分布
    泛化版本的指数分布。韦伯分布允许事件发生的速率随时间变化。

如果事件发生率为常数,那么可以用泊松分布对单位时间或空间内的事件数量进行建模。
这种场景下,可以用指数分布对两个事件间的时间间隔或距离建模。
如果事件发生率会随时间变化(例如,设备故障率的增大),可以使用韦伯分布建模。

统计实验与显著性检验

A/B测试

  • 处理
    实验对象所接触的东西,例如药品、价格、Web标题等。

  • 实验组
    行特定处理的一组对象。

  • 对照组
    执行标准处理或不执行处理的一组对象。

  • 随机化
    随机地分配实验对象以进行处理的过程。

  • 实验对象
    接受处理者,例如Web访问者、病人等。

  • 检验统计量
    用于检验处理效果的度量。

将实验对象分配给两组或更多组,各组的条件完全相同,只是要接受的处理不同。
在理想情况下,实验对象是随机分配给各组的。

假设检验

  • 零假设
    完全归咎于偶然性的假设。

  • 备择假设
    与零假设相反,即实验者希望证实的假设。

  • 单向检验
    在假设检验中,只从一个方向上计数偶然性结果。

  • 双向检验
    在假设检验中,从正反两个方向上计数偶然性结果。

零假设的逻辑理念体现为没有特殊事件发生,任何观察到的效果都是由随机偶然导致的。
假设检验假定零假设为真,创建“零模型”(一种概率模型),并检验所观察到的效果是否是该模型的合理结果。

重抽样

  • 置换检验 (随机化检验、随机置换检验、准确检验)
    将两组或多组样本组合在一起,并将观测值随机地(或穷尽地)重新分配给重抽样。

  • 有放回,无放回
    在抽样时,所抽取的元素在下一次抽取前是否放回样本中。

置换检验将多个样本组合在一起,并做随机混洗。
对混洗后的值做分组并重抽样,计算我们感兴趣的统计量。
重复上述过程,并在表格中记录重抽样统计量的情况。
对比统计量的观测值与重抽样分布,就可以判定观测到的样本间差异是否由偶然性导致的。

统计显著性和p值

  • p值
    对于一个加入了零假设的偶然性模型,p值指得到与观测结果一样不寻常或极端的结果的概率。

  • α值
    在实际结果的确是统计显著的情况下,α值指偶然性结果必须超出的“不寻常性”概率的阈值。

  • 第一类错误
    错误地将一个由随机导致的效果归结为真。

  • 第二类错误
    错误地将一个为真的效果归结为由随机导致的。

显著性检验可以用于确定观测到的效果是否落在零假设模型的随机变异范围内。
给定一个零假设模型,p值表示模型所生成的结果与观测到的结果同样极端的概率。
α值是零假设随机模型“不寻常性”的阈值。
相对于数据科学而言,显著性检验在正式的研究报告中更加重要。但是近年来,即便是对于研究报告,p值的重要性也一直在下降。

t检验

  • 检验统计量
    对我们所关注的差异或效果的度量。

  • t统计量
    归一化的检验统计量。

  • t分布
    一种用于比较所观测到的t统计量的参考分布。对于t检验,参考分布是从零假设生成的。

在计算机出现之前,重抽样检验并不实用,统计人员使用标准参考分布。
检验统计量应该做归一化,这样才能与参考分布做比较。
t统计量是一种广为使用的归一化统计量。

多重检验

  • 第一类错误
    错误地得出一个效果是统计显著的结论。

  • 错误发现率
    在多重检验中,犯第一类错误的比率。

  • p值校正
    用于在同一数据上做多重检验。

  • 过拟合
    拟合了噪声。

在研究工作或数据挖掘项目中,多重性(多重比较、多变量、多模型等)增加了仅根据随机对某个结果得出显著性结论的风险。
对于涉及多重统计比较的情况(即显著性的多重检验),可以使用统计校正过程。
在数据挖掘中使用结果变量带标记的验证样本,有助于避免得到误导性的结果。

自由度

  • n (样本规模)
    在数据中,观测(也称为行或记录)的数量。

  • d.f.
    degrees of freedom(自由度)的简写。

自由度是归一化检验统计量计算的一部分。它使得归一化后的结果可以与参考分布(例如t分布、F分布等)进行对比。
在回归中,为避免出现多重共线性问题,在将分类变量因子化为n-1个标识或虚拟变量时,应考虑其中隐含的自由度概念。

方差分析

  • 两两对比
    对于有多个组的情况,在两个组之间做假设检验(比如对均值)。

  • 多项检验(omnibus test)
    一种可以测定多个组均值间方差的单一假设检验。

  • 方差分解
    从整体统计量中(例如,从整体均值、处理均值以及残差中),分离出单个值的贡献情况。

  • F统计量
    一种归一化统计量,用于衡量多个组均值间的差异是否会超过随机模型的预期。

  • SS
    sum of square(平方和)的简写,指与某一均值的偏差。

方差分析是一种用于分析多组处理结果的统计过程。
方差分析是对A/B测试中类似过程的一种扩展,用于评估各组之间的整体方差是否落在随机变异范围内。
方差分析的一个有用结果是识别出与组处理、交互效果和误差相关的方差成分。

卡方检验

  • 卡方统计量
    观测数据偏离预期程度的量度。

  • 期望值 (期望)
    在某种假设(通常是零假设)下,我们期望数据能给出的结果。

  • d.f.
    自由度。

统计学中一个常见的过程是检验观测情况与独立性假设是否一致,例如购买特定产品的倾向是否与性别无关。
卡方分布是一种加入了独立性假设的参考分布。由观测情况计算得到的卡方统计量,必须与卡方分布进行对比。

多臂老虎机算法

  • 多臂老虎机
    一种假想的老虎机,提供多个拉杆供用户选择,每个拉杆对应不同的收益,用于模拟多处理实验。


  • 表示实验中的一个处理,例如Web测试中的标题A。

  • 获胜
    通过实验模拟老虎机上的获胜,例如客户点击了链接。

传统的A/B测试基于随机抽样过程,会导致过度地使用非最优处理。
相比而言,多臂老虎机算法改进了抽样过程,加入了在实验过程中学到的信息,减少了非最优处理的频数。
多臂老虎机算法还有助于有效地应对两种以上的处理。
多臂老虎机具有多种不同的算法,能够解决如何将抽样概率从非最优处理转移到(假设的)最优处理的问题。

检验效能和样本规模

  • 效果规模
    在统计检验中,期望能检测到的效果的最小规模,例如点击率提高20%。

  • 检验效能
    给定样本规模,检测到给定效果规模的概率。

  • 显著性水平
    在检验中所使用的统计显著性水平。

在确定样本的规模之前,需提前确定要执行的统计检验。
必须指定要检测效果的最小规模。
还必须指定检测这一效果规模(检验效能)所需的概率。
最后,还必须指定执行检验的显著性水平(α值)。

回归与预测

简单线性回归

  • 响应变量 (因变量、变量Y、目标、结果)
    想要预测的变量。

  • 自变量 (自变量、变量X、特征、属性)
    用于预测响应的变量。

  • 记录 (行、案例、实例、示例)
    一个表示特定个体或实例的向量,由因子和结果值组成。

  • 截距 ($ b_0 $、$ β_0 $)
    回归线的截距,即当X = 0时的预测值。

  • 回归系数 (斜率、$ b_1 $、$ β_1 $、参数估计值、权重)
    回归线的斜率。

  • 拟合值 (预测值)
    从回归线获得的估计值[插图]。

  • 残差 (误差)
    观测值和拟合值之间的差异。

  • 最小二乘法 (普通最小二乘法)
    一种通过最小化残差的平方和而拟合回归的方法。

回归方程将响应变量Y和预测变量X间的关系建模为一条直线。
回归模型给出了拟合值和残差,即响应的预测值和预测的误差。
回归模型通常使用最小二乘法拟合。
回归可用于预测和解释。

多元线性回归

  • 均方根误差 (RMSE)
    回归均方误差的平方根,它是比较回归模型时使用最广泛的度量。

  • 标准残差 (RSE)
    与均方根误差的计算一样,只是根据自由度做了调整。

  • R方 (决定系数、$ R^2 $)
    可以被模型解释的变异的比例,值介于0到1之间。

  • t统计量
    预测因子的系数,除以系数的标准误差。它提供了一种比较模型中变量重要性的度量。

  • 加权回归
    在回归中,记录具有不同的权重。

多元线性回归建模了响应变量Y与多个预测变量$ X_1, …, X_p $之间的关系。
均方根误差(RMSE)和R2是评价模型最重要的度量。
回归系数的标准误差可用于度量变量对模型的贡献的可靠性。
逐步回归是一种自动确定模型中应包括哪些变量的方法。
加权回归用于拟合函数中,可以对特定记录给予更大或更小的权重。

使用回归做预测

  • 预测区间
    个体预测值的不确定区间范围。

  • 外推法
    将模型扩展到拟合所用的数据范围之外。

超出数据范围的外推会导致误差。
置信区间量化了回归系数的不确定度。
预测区间量化了单个预测中的不确定度。
包括R在内的很多统计软件,都会使用公式在默认或指定输出中给出预测区间和置信区间。
也可以使用自助法确定置信区间,该做法的解释和理念同上。

回归中的因子变量

  • 虚拟变量
    二元的0/1变量,通过对因子数据重新编码得到,可用于回归模型或其他模型。

  • 参考编码 (编码处理)
    统计学家最常使用的编码类型。它以因子的一层作为参考层,并将其他因子与参考层进行对比。

  • 独热编码(one hot encoder)
    机器学习领域中常用的一种编码。它保留了所有的因子层。虽然该编码适用于部分机器学习算法,但并不适用于多元线性回归。

  • 偏差编码 (总和对照编码)
    在编码中用于对比的并不是参考层,而是将每一层与整体均值进行对比。

因子变量需要转换为数值变量,才能在回归中使用。
要编码一个具有P个不同值的因子变量,最常用的方法是表示为P-1个虚拟变量。
即便是在规模非常大的数据集中,多层因子变量也需整合为具有更少层的变量。
一些因子的层是有序的,可以表示为单一的数值变量。

解释回归方程

  • 相关变量
    当预测变量高度相关时,难以解释单个回归系数。

  • 多重共线性 (共线性)
    当预测变量间存在完美的或近乎完美的相关性时,回归是不稳定的,或者说是不可能计算的。

  • 混淆变量
    一种重要的预测变量。忽视该变量可导致回归方程给出伪关系。

  • 主效应
    预测变量和结果变量之间的关系,该关系独立于其他的变量。

  • 交互作用
    两个或两个以上预测变量和响应之间的相互依赖关系。

考虑到预测因子之间的相关性,在多元线性回归中,必须注意如何解释回归系数。
多重共线性可能导致拟合回归方程中存在数值不稳定的问题。
混淆变量是指在模型中遗漏的重要预测因子,它可以导致存在虚假关系的回归方程。
如果变量和响应之间存在相互依赖的关系,那么需要在两个变量间添加一个交互项。

回归诊断

  • 标准残差
    残差除以残差的标准误差。

  • 离群值
    距离其他记录(或预测结果)很远的记录(或结果值)。

  • 强影响值 (influential value)
    一个值或记录,其存在与否会使回归方程有很大差异。

  • 杠杆 (hat-value)
    单个记录对回归方程的影响程度。

  • 非正态残差
    非正态分布的残差可能会导致一些对回归的技术需求失效。但在数据科学中,通常并不会关注该问题。

  • 异方差性
    在输出的部分范围中具有较高变异性的残差。这可能表明在回归方程中缺失了某个预测变量。

  • 偏残差图 (变量添加图、added-variable-plot)
    展示结果变量和单个预测变量之间关系的一种诊断图。

鉴于离群值可能会在小规模数据集中导致问题,关注离群值主要是为了发现数据中存在的问题,或是确定异常所在。
单个记录(包括回归离群值)可以对小规模数据集的回归方程产生很大的影响。但是在大数据中,这种效果却荡然无存。
如果将回归模型用于形式推断(如p值等),那么应该检验对残差分布的一些假设。但是对于数据科学而言,残差分布通常无关紧要。
偏残差图可以用于定性地评估每个回归项的拟合情况,这可能会得出另一种模型声明。

多项式回归和样条回归

  • 多项式回归
    在回归方程中添加了多项式项,例如平方项、三次方项等。

  • 样条回归
    使用一系列多项式片段去拟合一条平滑曲线。

  • 结点
    分隔样条片段的值。

  • 广义加性模型 (GAM)
    可以自动选择结点的样条模型。

在回归中,离群值表现为具有很大残差的记录。
多重共线性会导致拟合回归方程中存在数值不稳定的问题。
混淆变量是一种重要的预测变量。如果在一个模型中忽略了混淆变量,将会导致回归方程给出伪关系。
如果一个变量的效果依赖于另一个变量(因子变量)的层级,那么在两个变量之间需要有交互项。
多项式回归可以拟合预测变量和结果变量之间的非线性关系。
样条是一组连接在一起的多项式片段,连接点被称为结点。
广义加性模型可以自动指定样条函数中的结点。

分类

朴素贝叶斯算法

  • 条件概率
    在给定另一个事件(比如Y = i)的条件下,观测到某个事件(比如X = i)的概率,记作 $ P(X_i | Y_i) $。

  • 后验概率
    在给定预测因子的情况下,出现某一结果的概率(后验概率不同于结果的先验概率,后者并未考虑预测因子的信息)。

朴素贝叶斯适用于分类的(因子型的)预测和结果。
朴素贝叶斯要解答的问题是:“在每个结果类别中,哪些预测类别是最可能发生的?”
该问题可以转化为,在给定预测值的情况下,估计结果属于不同类别的概率。

判别分析

  • 协方差
    对一个变量相对于另一个变量的一致程度(幅度和方向类似)的度量。

  • 判别函数
    当应用于预测变量上时,该函数可以使类之间的分离度最大化。

  • 判别权重
    应用判别函数得到的分值,用于估计记录属于某个类的概率。

判别分析适用于连续预测因子或分类预测因子,也适用于分类结果。
判别分析使用协方差矩阵计算线性判别函数,该函数用于区分属于不同类的记录。
线性判别函数对每个记录生成一个权重或分值(每个可能的类对应一个权重),以此来确定记录的估计类。

逻辑回归

  • Logit函数 (对数函数)
    一种能将属于某个类的概率映射到 ±∞ 范围上(而不是0到1之间)的函数。

  • 几率
    “成功”(1)与“不成功”(0)之间的比率。

  • 对数几率
    转换后的模型(即线性模型)中的响应。该响应已被映射回概率值。

逻辑回归和线性回归类似,只不过其结果是二元变量。
在逻辑回归中需要做多次转换,以将模型转化为一种可以像线性模型一样拟合的形式,并使用对数优势比作为响应变量。
通过迭代过程拟合了线性模型之后,应将对数几率映射回概率值。
逻辑回归的计算快速,并且生成的模型可以在不重新计算的情况下对新数据打分,因此它得到了广泛的使用。

评估分类模型

  • 正确率(accuracy)
    正确分类的百分比(或比例)。

  • 混淆矩阵
    按预测分类和实际分类情况对记录分别计数,将计数结果以表格形式显示。例如,对于二元变量,使用的是2×2的表格。

  • 灵敏度 (召回率)
    在预测结果中,1被正确分类的百分比(或比例)。

  • 特异性
    在预测结果中,0被正确分类的百分比(或比例)。

  • 准确率(precision)
    预测结果为1、真实值也为1的百分比(或比例)。

  • ROC曲线
    灵感度与特异性的绘图。

  • 提升(lift)
    在不同截止概率的情况下,衡量模型在识别(相对罕见的)1上的有效性。

正确率(即预测分类正确的百分比)可以用于评估模型,但只是评估的第一步。
其他度量(召回率、特异性、准确率)侧重于更具体的性能特征。例如,召回率测定了模型正确识别1的良好程度。
AUC(ROC曲线下的面积)是对模型区分1与0能力的一种常用度量。
提升衡量了一个模型在识别1上的有效性,并且常常是按十分位数逐个计算的,从分类为1可能性最大之处开始。

不平衡数据的处理策略

  • 欠采样 (下采样)
    在分类模型中,使用更少的多数类记录。

  • 过采样 (上采样)
    在分类模型中,更多地使用稀有类记录。必要时可以使用自助法。

  • 上权重、下权重
    在模型中,对稀有类赋予更大的权重,对多数类赋予更小的权重。

  • 数据生成
    类似于自助法,只是每个新的自助记录与原记录略有不同。

  • z分数
    对结果做归一化所生成的值。

  • K
    在最近邻计算中使用的近邻个数。

分类算法在高度不平衡数据(其中感兴趣的结果“1”十分罕见)中会存在问题。
平衡训练数据的一种策略是,对多数类做欠采样,或者对稀有类做过采样。
如果使用了数据中所有的“1”依然不够,可以对稀有类做自助法,或使用SMOTE算法创建与稀有类相似的合成数据。
不平衡数据通常表明正确的分类(即“1”)具有更高的价值。我们应将这种值的比率纳入到评估度量中。

统计机器学习

K最近邻算法

  • 近邻
    具有相似预测值的两个记录。

  • 距离度量
    以单一数值的形式,测量两个记录之间的距离。

  • 标准化 (归一化)
    减去均值,并除以标准偏差。

  • z分数
    标准化后得到的值。

  • K
    在最近邻计算中考虑的近邻个数。

KNN通过指定与一条记录相似的记录所属的类,实现对该记录的分类。
可以使用欧氏距离或其他相关度量判定相似度(距离)。
与一条记录进行比较的最近邻数(即K值),取决于使用不同K值时,算法在训练数据上的性能。
预测变量通常需要做标准化,以避免大尺度变量主导了距离度量。
KNN常常作为预测建模过程的第一个阶段。KNN的预测值会作为一个预测变量添加回数据中,进而用于第二阶段(非KNN)的建模。

树模型

  • 递归分区(recursive partition)
    反复对数据进行划分和细分,目的是使每个最终细分内的结果尽可能同质。

  • 拆分值(split value)
    一个预测变量值,它将一组记录分为两部分,使得一部分中的预测变量小于拆分值,而另一部分中的预测变量大于拆分值。

  • 节点
    在决策树中(或在一组相应的分支规则中),节点是拆分值的图形化表示(或规则表示)。

  • 叶子
    一组if-then规则的终点,或一个树分支的终点。在树中访问叶子的规则,构成了对树中一条记录的分类规则。

  • 损失
    在拆分过程的某一阶段中误分类的个数。损失越大,不纯度越高。

  • 不纯度 (异质性)
    表示在数据的一个细分中发现多个类混杂的程度。细分中混杂的类越多,该细分的不纯度就越高。

  • 剪枝
    为了降低过拟合,对一棵完全长成树逐步剪枝的过程。

决策树生成一组规则,用于分类或预测结果。
规则对应于如何将数据划分为连续的子分区。
每个分区或拆分指定一个预测变量值(即拆分值),将分区中数据拆分为高于和低于该拆分值的两组记录(即子分区)。
在每个阶段,树算法选择使每个子分区内结果的不纯度最小的拆分。
一旦算法不能做进一步的拆分,就得到了一棵完全长成树。每个末端节点或叶子内的记录属于相同的类。此后,遵循该规则(拆分)路径的新记录,将会分配为该类。
完全长成树会过产生拟合,因此为了使模型捕获信号而非噪声,必须做剪枝。
虽然随机森林和Boosting等多树模型算法具有更好的预测性能,但失去了单个树模型基于规则的交流能力。

Bagging和随机森林

  • 集成 (模型平均)
    使用一组模型给出预测。

  • Bagging (自助法聚合)
    对数据使用自助法构建一组模型的通用方法。

  • 随机森林 (自助法聚合决策树)
    使用决策树的一类自助法聚合估计。

  • 变量重要性
    对预测变量在模型性能中重要性的测量。

通过组合多个模型的结果,集成模型提高了模型正确率。
Bagging是一类特殊的集成模型,它使用数据的自助法抽样拟合多个模型,并对模型取平均值。
随机森林是一种应用于决策树的特殊Bagging方法。除了对数据重抽样之外,随机森林算法还在拆分树时对预测变量做抽样。
对变量重要性的一种度量是随机森林的一种有用输出。变量重要性根据变量对模型正确率的贡献度,对变量排序。
随机森林具有一组超参数。可以使用交叉验证调整超参数,以避免产生过拟合。

Boosting

  • Boosting
    在拟合一组模型时所使用的一种通用方法。Boosting在每轮连续的拟合中,会对具有更大残差的记录赋予更大的权重。

  • Adaboost
    Boosting算法的一种早期实现,它根据残差的情况对数据重新加权。

  • 梯度提升
    一种更通用的Boosting算法。它将问题转化为代价函数最小化的问题。

  • 随机梯度提升(SGD)
    最常用的Boosting算法。它在每轮拟合中加入了对记录和数据列的重抽样。

  • 正则化
    通过在代价函数中对模型参数的数量添加惩罚项,避免产生过拟合。

  • 超参数
    在拟合算法之前就需要设定的参数。

Boosting是一类基于对一组模型做拟合的集成模型。在连续的每轮拟合中,Boosting算法会为具有更大残差的记录赋予更大的权重。
随机梯度提升是最通用的Boosting算法,具有最佳性能。随机梯度提升最常见的形式是使用树模型。
XGBoost是一种广为使用的随机梯度提升软件包,它计算高效。所有数据科学常用的语言中都提供了XGBoost。
Boosting容易过拟合数据。为了避免产生过拟合,需要调整超参数。
正则化通过在模型的参数数量(例如,树的规模)上添加惩罚项,避免产生过拟合。
鉴于Boosting算法需要设置大量的超参数,交叉验证尤为重要。

无监督学习

主成分分析

  • 主成分
    预测变量的一种线性组合。

  • 载荷 (权重)
    将预测因子转换为成分的过程中所使用的权重值。

  • 陡坡图
    一种展示各成分方差的绘图,图中显示了各成分的相对重要性。

主成分是预测变量的线性组合,但仅限于数值型预测变量。
主成分计算的原则是使成分之间的相关性最小化,进而减少冗余。
通常,有限数量的成分就可以解释结果变量的大部分方差。
这样就可以使用一组有限的主成分代替(更多的)原始预测变量,从而降低维度。

K-Means聚类

  • 类(cluster)
    一组类似的记录。

  • 类均值
    表示类内记录变量均值的向量。

  • K
    类的个数。

所需的类数K由用户决定。
K-Means算法通过迭代地将记录分配给最近的类均值,直到类的分配情况不再发生改变,实现了类的生成。
通常,出于实际的考虑决定了K的选择。在统计学上不存在最优的类数。

层次聚类

  • 树状图
    一种可视化表示,显示了记录及其所属类的层次结构。

  • 距离
    测量两个记录之间的接近程度。

  • 相异性
    测量两个类之间的接近程度。

层次聚类算法开始时,每条记录单独构成一个类。
在凝聚算法中,类逐步与相邻的类合并,直到所有记录属于单一类。
凝聚算法的类历史可以被保留并绘制出来。用户(无须预先指定类数)可以在算法执行的各个阶段,可视化地查看类数和类的结构。
有多种方法可以计算类之间的距离。这些方法都依赖于所有记录间距离。

基于模型的聚类

基于模型的聚类方法假设类是由不同数据生成过程所生成的,各个数据生成过程具有不同的概率分布。
基于模型的聚类方法拟合了不同的模型,假设有不同数量的分布(通常是正态分布)。
基于模型的聚类方法无须使用过多的参数(即过拟合),就能选出一个能很好地拟合数据的模型(以及类数)。

变量的缩放和分类变量

  • 缩放
    缩小或放大数据的方法,常用于将多个变量缩放到同一尺度上。

  • 归一化 (标准化)
    一种通过减去均值并除以标准偏差进行缩放的方法。

  • 高氏距离(Gower’s distance)
    一种应用于数值数据和类别数据相混合的缩放算法。它可以将所有变量缩放到[0, 1]范围内。

以不同尺度测量的变量,需要转换到相似的尺度上。这样,变量对算法的影响不会主要由变量的尺度决定。
归一化(标准化)是一种常用的缩放方法——减去均值再除以标准偏差计算。
另一种缩放方法是高氏距离,它将所有的变量缩放到[0, 1]范围内。高氏距离通常用于含有数值型数据和分类数据的混合数据。

Reference 参考

[1] 面向数据科学家的实用统计学