概述
文章目录
- 第2章 数据的类型
- 第7章 统计学入门
- 如何描述统计量?
- 经验法则
- 第8章 高等统计学
- 点估计法
- 置信区间
- 假设检验
- 第9章 数据可视化
- 第10章 机器学习
- 监督学习
- 无监督学习
- 强化学习
- 线性回归
- Logistic回归
- 哑变量
- 第11章 树上无预言,真的吗?
- 朴素贝叶斯分类
- 决策树
- 分类树
- 无监督学习
- 特征提取和主成分分析
- 第12章 超越精要
- 偏差-方差权衡
- K层交叉验证
- 网格搜索算法
- 集成技术
- 神经网络
第2章 数据的类型
1.结构化数据:指特征和观察值以表格形式存储(行列结构)
2.数据预处理:将数据转化为结构化数据。
3.定量数据:通常用数字表示,并支持包括加法在内的数学运算。(缺一不可,既要是数字又要能运算才行)
离散型数据:通常指计数类数据,取值只能是自然数或整数。
连续型数据:通常指测量类数据,取值为无限范围区间。
4.结构化数据的四个尺度
(1)定类尺度:主要指名称或类别数据,如性别、国籍、种类和啤酒的酵母菌种类等。无法用数字表示,属于定性数据。
测度中心:是一个描述数据趋势的数值,有时也被称为数据平衡点。常见的测度中心有平均值、中位数和模。定类尺度的测度中心通常用模,因为也无法计算平均值和中位数。
(2)定序尺度:是指对事物之间等级差或顺序差别的一种测度。不仅可以将事物分成不同的类别,而且还可以确定这些类别的优劣或顺序。为数据提供一个等级次序,根据它可以对观测值进行排序,但它仍然不支持计算两个观测值间的相对差异,也就是观测值之间的相加或者相减得到的结果没有意义。比如考试成绩就是定序尺度数据。
适用的数学运算:排序和比较。
测度中心:通常用中位数,而不是平均值表示测度中心,因为定序尺度数据不支持触发。也可以用模作为测度中心。
(3)定距尺度:是指对事物类别或次序之间间距的测度,该尺度通常使用自然或物理单位作为计量尺度。定距尺度不锦囊将事物区分为不同类型并进行排序,而且可以准确地之处类别之间的差距是多少。可以用均值和其他更复杂的数学公式描述数据。温度就是最常见的定距尺度数据。
适用的数学计算:排序、比较、加法、减法等。
测度中心:中位数和模,更准确的是算术平均值,通常简称为均值。
变差测度:描述数据分布的广度的度量,即是一个描述数据分散程度的数字,比如标准差。
标准差:是定距尺度和更高尺度数据中应用最为广泛的变差测度。可以被理解为数据点到均值点的平均距离。计算步骤:
1)计算数据的均值;
2)计算数据集中的每一个值和均值的差,并将其平方;
3)计算第 2)的平均值,得到方差;
4)对第 3)步得到的值开平方,得到标准差。
计算标准差时,没有直接使用数据点和平均值的差,而是将差值平方后使用。这样做是为了突出离群值——哪些明显原理平均值的数据点。
定距尺度没有自然的起始点或者自然的零点。
(4)定比尺度:定比尺度是类似于定距尺度、又高于定距尺度的一种计量方法,两者的主要区别在于“0”的涵义。在定距尺度中,“0”表示一个有特定内涵的数值,不表示“没有”,在定比尺度中,“0”表示“没有”或该事物不存在未发生。具有定距尺度所拥有的同样的属性,同时还具有绝对或自然的起点,即存在可以作为比较的共同起点或基数。
测度中心:算术平均值对定比尺度仍然有效,同时还增加一种叫几何平均值的新均值类型。它是指n个观察值连乘积的n次方根。
定比尺度数据通常是非负数。
数据归属的层次必须在开始分析之前确定好,否则会犯原理性的错误。
第7章 统计学入门
如何描述统计量?
(1)测度中心:数据集的中心是测度中心,测度中心是对(大型)数据集进行归纳、概括,以便能够方便进行交流的一种方式。比如某市的平均降水量和亚洲男性的平均身高。常见的测度中心的计算方法有:
算术平均值,等于数据集中所有元素之和除以元素的个数。但是它对离群值非常敏感。
中位数:是已排序数据集中处于中间位置的值。它对离群值不敏感。当数据集中有较多的离群值时,使用中位数作为测度中心比较合适。相反,则采用平均值更好。
(2)变异测度:量化数据离散程度的方法。常见的变异测度方法有:
区间,等于数据集最大值减去最小值,它量化了两个极值之间的距离,在非常关心离群值的离散程度的场景中应用较多,例如安全气囊的打开时间。
标准差,计算方法上面有。标准差的单位与数据集本身的单位一致。
方差,与标准差的区别是它没有开方。
(3)比较两个完全不同的数据集的离散程度,甚至连数据尺度都不同。需要用到变异系数:
变异系数是样本标准差除以样本均值得到的比率。通过该比率,我们可以对标准差进行标准化,从而对多个数据集进行横向比较。
(4)相对位置测度,用于度量数据点相对整个数据集的位置。
z分数,用于描述单个数据点和均值之间的距离。用数据点减去均值,再除以标准差得到z分数。
相关系数,是描述两个变量之间相关性强弱关系的量化指标。
相关系数值介于-1~1.
相关系数绝对值越大(接近-1或1),变量间的相关性越强。最强的相关性为-1和1.最弱为0.
正相关意味着一个指标增加,另一个指标也增加。
负相关意味着一个指标增加,另一个指标却下降。
用pandas快速计算各个特征之间的相关系数:df.corr()
经验法则
经验法则指我们可以推算出标准正态分布中每个标准差区间所含有的数据量。
根据经验法则:
接近68%的数据点和均值相差1个标准差以内。
接近95%的数据点和均值相差2个标准差以内。
接近99%的数据点和均值相差3个标准差以内。
第8章 高等统计学
点估计法
通过计算样本的统计量得到总体参数的方法,即通过样本数据估计总体参数叫做点估计法。
例如统计9000名员工的平均休息时长,就难以对所有员工均进行统计,这时就可以抽取其中的100名进行统计,计算他们的平均休息时长,用这个值来替代总体的值。
抽样分布
多个大小相同的样本的点估计的分布。
抽样分布之所以呈正态分布是因为中心极线定理。随着我们增大样本的数量,抽样分布(点估计的分布)将逐渐趋向正态分布。而且,随着样本数量越来越多,样本均值的分布将越来越接近真实的均值。
置信区间
用点估计来估算总体的参数和抽样分布,存在两个问题:
(1)单个点估计非常容易出错。
(2)计算多个固定大小样本的抽样分布是不可行的,有时甚至比直接计算总体参数还难。
置信区间是一个区间值,是指在给定置信水平下,该区间将包含总体参数。
置信水平不是结果“正确的概率”,相反,它表示结果“准确的频率”。比如,假设我们希望每一次点估计都能以95%的概率得到准确的总体参数,那么置信水平需要设置为95%。较高的置信水平将导致置信区间变得更广。
误差幅度值我们能够接受的点估计的误差范围,它依赖于置信区间、数据的方差和样本大小。
假设检验
假设检验是统计学中应用最广泛的检验方法之一。用来确定总体中给定的样本,我们是否能够接受某一特定假设。
假设检验通常有两个相反的假设,我们称之为原假设和北泽假设。原假设是被检验的假设,也是默认正确的假设,它是试验的出发点。备择假设通常是与原假设相反的假设。我们通常基于p值(依赖于置信水平)做出决定。
(1)实施假设检验
明确假设
形成两个假设:原假设和备择假设。
通常用H0表示原假设,符号Ha表示备择假设。
决定被检验样本的大小
样本大小取决于被选择的检验类型。样本大小必须合适,并服从中心极线定理和数据正态性假设。
选择置信水平(通常叫做阿尔法α)
通常0.05的显著性水平
收集数据
决定是否接受或拒绝原假设
取决于假设检验的类型
如何选择假设检验的类型?
最需要考虑的因素是被检验数据的类型——连续型还是分类数据。
(2)单样本t检验
对于连续型数据,选择t检验。(t检验是否只能用于对均值进行检验?t检验主要用于样本含量较小,总体标准差未知的正态分布,是用t分布理论来推论差异发生的概率,从而比较两个平均数的差异是否显著。)
单样本t检验是一种用于检验样本(数值型)是否和另一个数据集(总体或其他样本)具有显著性差异的统计检验方法。
t检验需要满足的条件:
总体要满足正态分布,或样本大小至少大于30(是指数据最少有30个吗?是的,比如一共9000人,样本有400人>30人)(这是为了确保数据的正态性)(为什么样本大于30个就能确保正态性了?这个30是怎么来的?)
总体大小至少是样本大小的10倍,以确保样本是独立随机样本。
样本在保持正态性的同时,还要样本独立,这可以通过取少量样本实现。
双尾假设和单尾假设:假设原假设是工程部的平均休息时长和公司平均休息时长相同,那么备择假设可以是:a.工程部平均休息时长不等于公司的平均休息时长,这就是双尾检验。b.工程部平均休息时长低于公司的平均休息时长,或者工程部平均休息时长高于公司的平均休息时长,这就是单尾检验。
t检验的步骤:
明确假设
决定被检验样本的大小
选择显著性水平,显著性水平95%,意味着α=1-0.95=0.05
收集数据
决定是否接受或拒绝原假设:需要计算检验统计量和p值。
检验统计量是根据样本数据计算的一个数值,我们通常根据它决定是否应该拒绝原假设。这里是t检验,t值就是检验统计量。它表示原假设中样本均值的偏离程度。
p值是观测值出现的概率,它通常和检验统计量一起使用。p值用于体现检查结果是否可靠,他们我们最终做出结论的依据。如果p值等于0.06,说明我们有6%的概率得到这个结果,即有6%的样本可以得出这样的结果。
当有强烈的证据拒绝原假设的时候,检验统计量通常非常大(正负皆可),p值通常非常小,这意味着检验结果是非常可靠的,而不是随机出现的。
如果p值低于显著性水平,则拒绝原假设;如果p值高于显著性水平,则接受原假设。
(3)Ⅰ型错误和Ⅱ型错误
当原假设正确,而我们却拒绝了原假设时称为Ⅰ型错误,过假阳性;
当原假设错误,但我们没有拒绝原假设时称为Ⅱ型错误,或假阴性;我们设置的置信水平越高,越容易遇到假阴性。
(4)分类变量的假设检验
卡方检验适用于定性数据,主要用于:
检验样本中的分类变量是否来自于某个特定总体(和t检验类似)
检验两个分类变量是否彼此影响。
卡方拟合度检验
t检验用于检验样本均值是否等于总体均值。卡方拟合度检验和t检验类似,用于检验样本分布是否符合预期。两者最大的不同在于卡方检验的对象是分类变量。
通常情况下,卡方拟合度检验用于:
- 分析总体中的某个分类变量;
- 分析某个分类变量是否符合预期的分布。(将观察到的结果和希望得到的结果做对比)
比如,卡房拟合度检验可以检测你们公司雇员的种族分布是否和美国人口的种族分布一直,或者检验你们的网站用户是否和整个互联网的用户具有相同特征。
卡方拟合度检验需要满足以下两个条件:
- 期望频数不低于5个;
- 每个观测值都是独立的,且总体大小至少是样本的10倍。
对于卡方检验,我们的检验统计量是卡方(chi-square),利用卡方计算相应的p值,根据p值是否低于显著性水平,决定是否拒绝原假设(低了拒绝)。
卡方相关性/独立性检验
独立性指变量间互不影响。例如,你出生的国家和出生的月份是相互独立的。
卡方相关性/独立性检验用于检验两个分类变量是否互相独立。
卡方相关性/独立性需要满足以下两个条件:
- 每个分类的频数至少是5;
- 每个观测值都是独立的,且总体大小至少是样本的10倍。
第9章 数据可视化
散点图(scatter plots):体现变量间的相关性,适用于具有高相关性的变量。
折线图(line graphs):展示变量随时间变化的最好方式之一,适用于定量类型的变量。
条形图(bar charts):用于对比不同的数据组。x轴不再是定量变量,而(通常)是分类变量,y轴依然是定量变量。
直方图(histogram):通常用来表示定量变量被拆分为等距数据桶(bin)后的频率分布,柱子的高度表示数据桶含有的元素数量。直方图的x轴表示数据桶,y轴表示数量。柱子之间是紧贴的,不隔开。
箱型图(box plots):通常用于表示变量值的分布情况,制作前需要计算5个指标——最小值,第一个四分位,中位数,第3个四分位,最大值。
相关性和因果性
相关性(correlation):介于-1~1的定量指标,它用于衡量两个变量之间的相关性。如果变量的相关性接近于-1,意味着一个变量增加,另一个变量减少。
因果性(causation):一个变量影响另一个变量的定性指标。
相关系数是衡量变量家相关性的最好方式,它能够量化变量间的相关性和强度。
相关性并不等价于因果关系,部分原因是:
变量之间存在混淆因子(confounding factor),即存在第3个隐蔽的变量将另外两个变量连接起来。例如看电视时间与工作表现呈负相关,并不意味着是看电视导致了工作表现下降,而有可能是因为睡眠减少。
变量之间也许不存在任何的因果关系,仅仅是巧合。例如奶酪的消费量与工程学博士数量之间,其实并没有关系。
辛普森悖论(simpson’s paradox)
指变量之间的相关性会随着参与考虑的因素的变化而发生根本性的变化。这意味着,即便图表显示变量间存在正相关性,当加入新的因子(通常是混淆因子)后,变量之间可能就不存在相关性了。
辛普森悖论出现的原因是不均等的分类。
辛普森悖论告诉我们,从变量的相关性中推导因果关系时要谨慎,要考虑混淆因子。如果已经发现了相关性,可以试着从中分离出更多的变量,也许这些新的变量才是产生相关性的根本原因,至少他们能让你更深入的分析问题。
确定因果关系的最好方式是不断地试验,将总体拆分为多个随机样本,并进行各种假设检验,才能确信变量间是否真的存在因果关系。
如何将分析成果说给别人?
(1)总结问题的现状(问题是什么?如何引起团队的注意)
(2)定义问题的本质(深入分析问题,包括问题产生的原因,解决方案,如何改变这种情况,以及已经完成的工作)
(3)透露初始假设(阐明我们的初始想法,站在团队/全局的角度看问题)
(4)介绍你的解决方案,或者解决问题的工具
(5)介绍解决方案能够带来的影响或价值(对比你的解决方案和初始假设的区别,介绍在未来能够带来哪些影响或价值)
(6)未来行动方案
第10章 机器学习
机器学习是赋予机器从数据中学习的能力,而不需要程序员给出明确的规则的模型。
从宏观角度看机器学习模型,主要分为以下3类:
- 监督学习
- 无监督学习
- 强化学习
监督学习
目的是寻找数据集中各个特征和目标变量之间的关系。特征和目标变量之间隐含的关系,使得机器学习模型可以依据历史数据进行预测。
监督机器学习模型通常被称为预测分析模型,因为它能够根据历史数据预测未来。
监督机器学习模型需要输入有标记数据。这意味着我们必须通过被正确标记的历史案例对模型进行训练。
使用模型之前,我们需要将数据分为两部分:
- 预测因子:只用于进行预测的列,有时也被称为特征、输入变量或自变量。
- 响应值:指需要进行预测的列,有时也被称为输出、标签、目标或因变量。
监督机器学习尝试寻找预测因子和响应值之间的关系,然后进行预测。模型的核心思想是未来的预测值可以自我表示,因此我们只需要知道预测因子,模型就可以根据预测因子对响应值做出准确的预测。(什么是自我表示?自己表示自己?)
监督学习模型的一个最大的缺点是需要有标记数据,而这些数据通常很难获取。
监督机器学习拥有理解预测因子和结果只是否存在关系,以及如何产生影响的能力。
监督学习的类型:
回归模型:用于预测连续型响应变量,响应值可以取无穷大。例如,金额,温度,时间等。
分类模型:用于预测分类响应变量,响应变量只有有限个取值。例如,癌症级别,真假问题等。
无监督学习
用于解决更加开放的而问题,而不仅仅是预测。通过输入一系列预测因子,识别预测因子间隐藏的关系或模式,完成某项任务。例如,聚类和降维。因此,无监督学习模型输出结果通常是我们事先不知道的。
无监督学习模型的一个优势是它不需要标签数据,这意味着准备模型数据相对容易。但是标签数据缺失也导致模型失去了相应的预测能力。
无监督学习模型的另一个缺点是我们很难评价模型的执行效果。
简单总结,无监督学习模型的主要用途是发现数据点的相似性和差异。
强化学习
在强化学习中,算法需要在特定环境中选择一种行为,并得到相应的奖励或惩罚。算法根据奖励或惩罚进行自我调整,通过改变策略完成某项目标——通常是得到更多的奖励。
这类模型在机器人,特别是在自动化机械方面同样非常流行,比如自动驾驶汽车。
强化学习和监督学习的主要区别在于奖励。
三类学习模型的优缺点
- 监督学习:
优势:可以对未来进行预测;可以量化预测因子和被预测对象之间的关系;可以表示变量之间互相影响的强度。
劣势:需要标签数据,而这些数据很难得到。 - 无监督学习:
优势:可以从数据点中找出人类无法察觉的相似性,对数据点进行聚类;可以是监督学习的前置处理步骤,比如的一批数据点进行聚类后,将聚类结果作为监督学习模型的预测结果;可以使用无标签数据,而这些数据很容易得到。
劣势:无法进行预测;无法决定结果是否准确;过多依赖于人的解释能力。 - 强化学习
优势:复杂的奖惩系统能够产生复杂的AI系统;可以在任何环境中学习,包括我们的生活。
劣势:模型在初期是不稳定的,在他意识到哪些选择会得到惩罚之前,它可能会做出糟糕的选择;模型测试完所有的可能性需要花费一点时间;模型只选择最安全的策略,因为它会机理避免得到惩罚。
线性回归
线性回归模型是回归模型的一种,它是一种通过预测因子和响应变量之间的关系进行预测的机器学习模型。响应变量通常是连续型变量。模型会寻找最合适的拟合线。
每个数据点和最佳拟合线之间都有残差,或者说都有一段距离。对所有残差平方后再相加得到残差平方和,残差平方和最小的拟合线就是最佳拟合线。
线性回归模型有3种主要指标:
- 平均绝对误差(MAE):误差绝对值之和的平均值
- 均方误差(MSE):误差平方之和的平均值
- 均方根误差(RMSE):误差平方之和的平均值的平方根
对于回归模型,推荐使用均方根误差。无论使用何种指标,它们都属于损失函数,越小越好。
使用训练集和测试集的目的是避免陷入模型反刍已知数据,无法对新数据进行预测的陷阱。
空模型:完全靠瞎猜得到的预测结果。
Logistic回归
Logistic回归模型是线性回归模型的泛化,用以解决分类问题。用一系列定量特征预测观测对象属于某一分类的概率。概率又可以映射到类型标签,最终实现对观测对象进行分类。
无法用线性回归模型预测概率的原因是线性回归模型的预测结果可以逼近无穷小和无穷大。线性回归预测的对象是连续型变量,但概率的范围只能是0~1,
几率(odds)等于事件发生的次数除以其他所有可能的结果,而不是所有可能的结果。odds=p/(1-p)
当概率接近于1时,几率接近于无穷大。
当给定底数时,指数和对数是相通的,二者之间可以认为是一样的。
Logistic 回归用特征X预测观测对象属于某一特定类别的对数几率。
Logistic函数的特征是,它能将任何连续型变量x,通过平滑的概率曲线映射到最小为0,最大为1的概率区间上,且随着变量x的增加,概率自然平滑地增加到1.
哑变量
将分类特征转换为定量特征要用到哑变量。哑变量指的是定性数据被重新编码后的新数据,它将定性数据的每个值变换为由真(1)或假(0)组成的新数据。
第11章 树上无预言,真的吗?
朴素贝叶斯分类
贝叶斯推理:
P
(
H
∣
D
)
=
P
(
D
∣
H
)
P
(
H
)
P
(
D
)
P(H|D)=frac{P(D|H)P(H)}{P(D)}
P(H∣D)=P(D)P(D∣H)P(H)
- P(H)是在观察数据前,假设发生的概率,称为先验概率(prior probability)
- P(H|D)是在已知观察数据后,假设发生的概率,也是我们想要计算的结果,称为后验概率(posterior probability)
- P(D|H)是已知假设条件下数据的概率,称为似然度(likelihood)
- P(D)是在任何假设条件下数据的概率,称为归一化常数(normalizing constant)
空准确率(null accuracy rate)是指完全靠瞎猜预测的准确率。
朴素贝叶斯分类器使用贝叶斯理论,根据各类别的先验概率,预测数据点最有可能属于哪个类别。
决策树
决策树(decision trees)属于监督学习模型,可以用于回归和分类。其原理是对训练数据进行分拆,将数据点按照相似程度分成若干片。
现代的决策树算法倾向于使用递归的二元分割方法。
(1)流程从树的顶端开始;
(2)对于每一个特征,算法检验每一个可能的分拆方法,选择均方差(MSE)最小的分拆方法。
(3)对于生成的两个结果集,在其中一个继续进行分拆,使得均方差(MSE)最小;
(4)重复第(3)步,直到遇到停止条件,比如:
- 达到树的深度的最大值;
- 达到分支节点所含数据点的最小值。
分类树算法与决策树过程类似,知识优化的指标不同。均方差(MSE)只能再回归问题中使用,而不能在分类问题中使用。除了准确率指标,分类树还使用指标——基尼指数和熵值进行优化。
分类树
通常来说,对于树的任何节点都将执行以下操作:
(1)计算数据的纯度;
(2)选择一个备选的分拆方式;
(3)计算分拆后数据的纯度;
(4)对所有变量重复以上操作;
(5)选择对数据纯度增长贡献最大的变量;
(6)对每个分支执行以上操作,知道遇到停止条件。
对于决策树模型,无论是分类树和回归树,我们都可以计算每个太正对预测值的重要程度。特征的重要性得分是每个特征变量的平均基尼指数差异,分支越高则与预测值的关系越紧密。我们可以利用以上信息减少模型所需要特征数量。
回归树 | 分类树 |
---|---|
预测定量响应变量 | 预测定性响应变量 |
预测值为所有分支的平均值 | 预测值为所有分支中出现次数最多的标签 |
根据MSE最小化进行分拆 | 根据基尼指数最小化进行分拆 |
什么是基尼指数?
- 是一种不等性度量;
- 通常用来度量收入不平衡,可以用来度量任何不均匀分布;
- 是介于0~1之间的数,0-完全相等,1-完全不相等;
- 总体内包含的类别越杂乱,基尼指数就越大;基尼指数越小表示集合中被选中的样本被分错的概率越小,也就是说集合的纯度越高。
在CART算法中, 基尼不纯度表示一个随机选中的样本在子集中被分错的可能性。基尼不纯度为这个样本被选中的概率乘以它被分错的概率。当一个节点中所有样本都是一个类时,基尼不纯度为零。
计算方法是样本被选中的概率 * 样本被分错的概率。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9AOCDE9G-1589493054321)(en-resource://database/3938:1)]
无监督学习
无监督学习适用场景:
- 无明确的相应变量,不需要根据数据集预测或找出相关变量时,例如,仅仅想知道数据点的相似度(或差异度)的时候;
- 需要根据现有数据提取不明显的特征或模式时,当数据维度不断增加,只有依靠机器学习识别数据点点相似程度;
- 当使用无监督学习的特征提取(feature extraction)方法时。
k均值聚类(K-means clustering)
聚类是根据数据中心将数据点分为多个簇的一种机器学习模型。
簇(cluster):一组行为相似的数据点。
中心(centroid):簇的中心点,可以想象成簇中数据点的平均值。
相似性:通常我们通过将数据转换到n维空间,用数据点间的距离作为相似度。簇的中心通常是簇中数据点在每个维度(列)上的平均值。
聚类分析的目的,是通过将数据集拆分为多个组,增强我们对数据集的理解。聚类算法从独立的数据点中生成了一个抽象层,展示了数据点间新的自然结构。
K均值聚类算法通过迭代方法将数据集分为k个簇,它的工作方法如下:
(1)选取k个初始化中心点(k是输入的值);大部分K均值聚类算法都是随机选取中心,也存在预先计算初始化中心的方法。
(2)将每个数据点分配到最近的中心;
(3)重新计算中心的位置;
(4)重复(2)、(3)步骤,知道遇到停止条件。
选取和评价最佳的K值方法(簇数):
轮廓系数(silhouette coefficient)是衡量聚类算法效果的通用指标。计算方法如下:
S
C
=
b
−
a
m
a
x
(
a
,
b
)
SC=frac{b-a}{max(a,b)}
SC=max(a,b)b−a
其中:
- a是数据点到本簇中所有数据点的平均距离;
- b是数据点到最近簇中所有数据点的平均距离。
轮廓系数的取值范围是-1(最差)~1(最好)。对所有观测点的轮廓系数求平均值,即可得到整体的轮廓系数。
K均值聚类算法对数据尺度非常敏感,不适合分布广泛、密度稀薄的数据集。
特征提取和主成分分析
维度灾难指当我们在数据集中增加新特征列时,为了填补产生的空缺位置,需要补充的行数(数据点)成指数级增长。
避免维度灾难的方法:增加数据点(并不总可行)或者维度缩减。维度缩减是减少数据集中列的数量,而不是行数。常见的维度缩减的方法有:
- 特征选取:从所有的特征列中选择最重要的特征列;
- 特征提取:从现有特征中推理出新特征。
主成分分析(principle component analysis, PCA)
是从原始列中提取出一组超列(在模型中的表现比任何原始列都要好的列)集合,用更少的特征列取代原始所有特征列。
特征提取通过数学公式从原始列中提取新的特征列,新特征列在模型中的表现往往比原始列好。
特征提取的优点:
- 可以提升模型速度;
- 可以提升模型的预测准确率;
- 可以从提取后的特征值获得新洞察。
缺点:
- 失去了对特征的解释能力,因为他们是数学推导的结果,不是原始的特征列;
- 可能丧失一部分的预测能力,因为在特征提取时丢失了部分信息。
第12章 超越精要
偏差-方差权衡
偏差导致的误差指模型得到的预测值和实际值之间的差异。偏差用于衡量模型预测值和实际值之间的距离。
如果机器学习模型能够进行准确预测(回归或分类),我们称它是低偏差模型。反之则是高偏差模型。
方差导致的误差指对于给定数据点,模型预测结果的变异性。
对于随机抽取的一个总体中的新数据点,模型的预测结果如果没有较大的变化,就称它是地方插模型,反之是高方差模型。如果一个模型具有较低的方差,我们可以认为模型具有较高的稳定性。
理想情况是模型既有低偏差又有低方差。
欠拟合——高偏差,低方差
解决方法:
- 使用更多特征:在模型中引入能够提升模型预测能力的新特征;
- 使用更复杂的模型:增加模型的复杂度可能会降低偏差,但过于复杂将得不偿失。
过拟合——低偏差,高方差
解决方法:
- 使用更少特征:在模型中使用更少特征以降低方差,避免过拟合。
- 使用更多的训练样本:使用更多训练数据进行交叉验证,可以降低过拟合的影响,提升方差估计量。
误差函数用于评价模型的误差,它由偏差、方差和不可避免错误的而误差组成。其数学表达式如下:
E
r
r
o
r
(
x
)
=
B
i
a
s
2
+
V
a
r
i
a
n
c
e
+
I
r
r
e
d
u
c
i
b
l
e
E
r
r
o
r
Error(x)=Bias^2+Variance+Irreducible Error
Error(x)=Bias2+Variance+IrreducibleError
B
i
a
s
2
Bias^2
Bias2 是偏差的平方,Variance是衡量模型随样本数据变化的方差。
模型的总误差受偏差和方差的双重影响。当增加模型复杂度时,偏差下降,方差增加。
K邻近(K-Nearest Neighbors, KNN)算法通过从历史数据点中寻找相似点进行预测,它属于监督机器学习模型。KNN模型中的K表示相似点的数量。如果K=3,那么在做任何预测时,模型将血爪醉相思等而3个数据点,并根据这3个数据点进行预测。另外,K也表示了模型的复杂度。
K层交叉验证
是评价模型质量的更好方式,它比人为将数据集拆分为训练集和测试集的方法更好。其工作原理如下:
(1)首先将数据等分为有限份(通常是3、5或10),假设分为K份;
(2)对于K层的交叉验证,我们将其中的K-1份作为训练集,剩下的部分作为测试集;
(3)对于后续的K-1层交叉验证,我们将另一组K-1份作为训练集,剩余部分作为测试集;
(4)用一组指标记录各层交叉验证结果;
(5)计算指标的平均得分。
网格搜索算法
通过暴力测试不同的模型参数,找出符合给定条件的最佳选择。它是一种简单(但是低效)的参数调优方法。
集成技术
集成学习通过将多种预测模型合并在一起生成超级模型,使得超级模型的预测准确率高于任意单一模型。
- 对于回归问题,集成学习取每个模型预测值的平均值;
- 对于分类问题,集成学习对预测值进行投票,取投票数最多的值,或者取预测概率的平均值。
集成技术要发挥作用,各个模型必须满足以下两个特点:
- 准确性:每个模型都要优于空模型;
- 独立性:模型的预测结果不受其他模型的影响;
模型集成的方法:
- 手动将多个模型的代码合并;
- 通过模型自动进行合并。
随机森林
决策树模型的缺点之一是训练集不同的分叉结果会生成不同的决策树。Bagging方法是常用的降低机器学习模型方差的方法,特别适合于决策树模型。
Bagging是自助聚合法的缩写,它是自助样本聚合的结果。自助样本是采用放回抽样方法得到的样本。
bagging方法其实就是生成N个决策树,之后用自助样本训练这些决策树,并进行预测,最后将预测的结果合并。
要注意的地方:
- 自助样本的大小需要和初始训练集大小保持一致;
- 决策树模型数量N应该足够大,使得总误差趋于稳定;
- 决策树应该尽可能深,保持低偏差、高方差。因为bagging方法本身有降低方差、提高准确性的特性,这和交叉验证方法降低方差的效果类似。
随机森林是bagging的一种变异,每一次生成树的时候,都需要对原始特征进行分拆,从包含p个特征的数据集中提取m个特征组成的随机样本。分拆后的样本需要满足:
- 每棵树随机使用随机样本中的特征;
- 对于分类树,m值一般等于p的平方根;
- 对于回归树,m值一般介于p/3~p之间
随机森林通过随机选取特征,可以避免数据集中的一些非常重要的特征被多个决策树重复使用而使得平均值无法显著降低模型方差。
随机森林的优点:
- 和监督学习相比,随机森林的模型效果具有很强的竞争力;
- 随机森林给出的特征重要程度更加可靠;
- 无需使用训练集/测试集和交叉验证方法,随机森林就能估计样本外的误差。
缺点
- 随机森林很难进行解释(因为不能可视化所有的决策树);
- 随机森林进行训练和预测的速度较慢(不适合实时分析需求)。
神经网络
优点
- 适用于任何函数形态(也叫作“非参数”)
- 神经网络可以根据所处环境的不同,对内部结构进行自我调整
基本结构
神经网络由相互连接的节点(感知机)组成,每个节点输入一个数值,同时输出另一个数值。信号在神经网络中传输直至到达最后一个预测节点。
神经网络可以用来解决监督学习、无监督学习和强化学习等问题。适用于以下领域:
- 模式识别(Pattern recognition)
- 实体运动:包括自动驾驶汽车、机器人和无人机。
- 异常侦测:神经网络特别擅长发现模式,因此它也能够很容易发现不符合模式的数据点。例如,在股票价格发生不寻常变化时通知你。
输入信号经过权重调整后传递给激活函数。
多层感知机是一种有限无环的图,节点是含有激活函数的神经元。
在模型训练中,模型会更新连接权重以得到最佳的预测效果。如果输入观测值后得到的输出信号为假,那么感知机中的Logistic函数将会发生一些改变,这叫做反向传播。
通过将多个复杂神经网络进行组合,我们可以很容易得到含有多个隐含层的深度神经网络,此时就是深度学习的领域了。
深度神经网络可以适应任意函数形态,理论上还可以找到最优特征组合,并使用最优特征组合最大化预测能力。
最后
以上就是长情野狼为你收集整理的《深入浅出数据科学》[美]斯楠·奥兹德米尔(Sinan Ozdemir)读书笔记第2章 数据的类型第7章 统计学入门第8章 高等统计学第9章 数据可视化第10章 机器学习第11章 树上无预言,真的吗?第12章 超越精要的全部内容,希望文章能够帮你解决《深入浅出数据科学》[美]斯楠·奥兹德米尔(Sinan Ozdemir)读书笔记第2章 数据的类型第7章 统计学入门第8章 高等统计学第9章 数据可视化第10章 机器学习第11章 树上无预言,真的吗?第12章 超越精要所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复