机器学习几个重要概念
统计学习的算法可以分为以下几个类别:监督学习、非监督学习、半监督学习以及强化学习。
监督学习的输入数据都有对应的类标签或是一个输出值,其任务是学习一个模型,使模型能够对任意给定的输入,对其相应的输出做出一个好的预测。
非监督学习就是没有对应的类标签或是输出值。学习中并没有任何标准来告诉你,某个概念是否正确,需要学习器自身形成和评价概念。就是自动地从数据中挖掘出结构信息或是抽取出一些规则。近年来,非监督学习被认为是解决一些重要问题的突破口所在。因为科学的产生就是人类中无监督学习的最佳案例。
半监督学习就是介于监督学习和非监督学习之间。这在最近的研究领域也是被大家所热烈探讨的,因为对于现实数据来说,有标签的数据总是少量的,往往都需要人工来进行标注。而无标签数据是能够大量获得的。
增强学习强调如何基于环境而行动,以取得最大化的预期利益。其灵感来源于心理学中的行为主义理论,即有机体如何在环境给予的奖励或惩罚的刺激下,逐步形成对刺激的预期,产生能获得最大利益的习惯性行为。强化学习和标准的监督式学习之间的区别在于,它并不需要出现正确的输入/输出对,也不需要精确校正次优化的行为。(以上内容摘自维基百科)这在机器人、无人机领域中应用的还是非常广泛的。
在线学习与离线学习
对于机器学习算法的分类,站在不同的角度就能有不同的分类方法。在具体的应用中还有一种常用的分类方法是:在线学习与离线学习。
在线学习,是在获取到新的数据后就能够输入到模型中进行学习。这需要学习算法能够在处于任何状态时都能进行参数的更新。而且需要算法对噪声数据有很好的鲁棒性。
离线学习就正好与在线学习相反,当数据有更新时,需要将其与原来的数据一起对模型的参数进行重新地训练。这时,整个训练的过程能够被很好的控制,因为所有的数据都是已知的,能够对数据进行细致的预处理过程。
生成模型与判别模型
这种分类方式是针对于监督学习来进行分类的。这个在我腾讯面试的时候还被问到过这个问题。
生成模型
生成方法由数据学习联合概率分布P(X,Y)
,然后求出条件概率分布P(Y|X)
作为预测的模型,即生成模型:
模型表示了给定输入X产生输出Y的生成关系。典型的生成模型有:朴素贝叶斯方法和隐马尔可夫模型。
生成模型能够还原出联合概率分布P(X,Y)
;生成模型的收敛速度快,当样本容量增加的时候,学到的模型可以更快地收敛于真实模型;当存在隐变量时,仍可以使用生成学习方法,此时判别方法就不能用。
判别模型
判别方法由数据直接学习决策函数f(x)
或者条件概率分布P(Y|X)
作为预测的模型,即判别模型。典型的判别模型包括:k近邻法、感知机、决策树、logistic回归模型、最大熵模型、支持向量机、提升方法和条件随机场。
判别模型直接面对预测,往往学习的准确率越高。可以对数据进行各种程度上的抽象、定义特征并使用特征,因此可以简化学习问题。
算法的归纳偏好
机器学习算法在学习过程中对某种类型假设的偏好称为『归纳偏好』。这个『假设』包含了一个算法方方面面的内容。
任何一个有效的机器学习算法必有其归纳的偏好,否则它将被假设空间中看似在训练集上『等效』的假设所迷惑,而无法产生确定的学习结果。例如在分类问题中,如果随机抽选训练集上等效的假设(可以认为所有的正反例并没有区别),那么它的分类结果其实是不确定的,这要根据它所选取的样本来决定,这样的学习显然是没有意义的。
归纳偏好对应了学习算法本身所做出的关于『什么样的模型更好』的假设。在具体的问题中,这个假设是否成立,即算法的归纳偏好是否与问题本身匹配,大多数时候直接决定了算法能否取得好的性能。
『奥卡姆剃刀』就是一个常用的原则,『若有多个假设与观察一致,则选择最简单的那个』。对于一些以简洁为美的人来说是再正确不过了。在一些工程技术中有一些问题也确实是这样,一个较为简单的方法所取得的效果虽然不是最好,但是它的代价与其效果之比已然是最优。
对于一个线性回归问题,如下图所示:
根据『奥卡姆剃刀』原则,你肯定会选择中间那条经过回归处理之后的直线作为之后预测的标准。在一些场景下,这样选择自然是正确的。如果再给你更多的数据点,你发现这些点正好是在穿过所有红色点的曲线之上,你还会选择那条回归的直线吗?这就牵扯出一个非常有意思的定理,『没有免费的午餐』。
这个定理所描述的是,对于任意两个学习算法A和B,它们在任意分布数据上的误差其实是相等的。仔细想想的话确实是那么回事。这个定理有一个重要的前提:所有问题出现的机会相同或是所有问题都是同等重要的。
这时候你肯定会有疑问,既然所有的学习算法的期望性能都和随机猜测差不多,那学习的过程岂不是并没有什么用。注意到一点,上面所说的相等是在所有数据的分布之下,但是我们所处理的问题的数据往往是某一特定分布的。
当目标函数给定时,基于目标函数的模型训练误差和模型测试误差就自然成为学习方法的评估标准。注意,学习方法具体采用的目标函数未必是评估时所使用的标准。关于评估标准这一问题会在之后的博客中提到。
假设学习到的模型是Y=f^(x)
,训练误差是模型关于训练数据数据集的平均损失:
其中N是训练样本容量。
测试误差是模型关于测试数据集的平均损失:
其中N’是测试样本容量。
通常将学习方法对未知数据的预测能力称为泛化能力。显然,我们希望得到泛化误差小的学习器。然而,事先我们并不知道新样本是什么样的,实际能做的是努力使在训练集上的误差最小化。
如果一味追求提高对训练数据的预测能力,所选模型的复杂度往往会比真模型要高。这种现象称为过拟合。过拟合是指学习时选择的模型包含参数过多,以致于出现这一模型对已知数据预测的很好,但对未知数据预测得很差的现象。与过拟合相对的是欠拟合,这是指对训练样本的一般性质尚未学好。
欠拟合比较容易克服,一般只需要增加训练的次数。而过拟合是机器学习面临的关键障碍,各类学习算法都必然带有一些针对过拟合的措施;然而必须认识到,过拟合是无法彻底避免的,我们所能做的只是缓解。这是因为,机器学习面临的问题一般是NP难甚至是更难的,而有效的学习算法必然是在多项式时间内完成的。若可以彻底避免过拟合,这就意味着我们构造性地证明了『NP = P』,那么你就可以获得图灵奖了。只要相信『P != NP』,过拟合就无法避免。
方差与偏差
偏差方差-分解试图对学习算法的期望泛化误差进行分解。推导的过程这里就不写了,直接给出公式。
这个式子表示的是泛化误差可以分解为偏差、方差与噪声之和。偏差度量了学习算法的期望预测与真实结果的偏离程度,即刻画了学习算法本身的拟合能力。为什么一个算法会有偏差呢,下面这句话给出了答案:
Biases are introduced by the generalizations made in the model including the configuration of the model and the selection of the algorithm to generate the model.
我个人的理解是,因为对于算法的选择乃至于调整参数方法的选择导致了算法是有偏差的。因为算法的选择中就蕴含着偏好。
方差度量了同样大小的训练集的变动所导致的学习性能的变化,即刻画了数据扰动所造成的影响;噪声则表达了在当前任务上任何学习算法所能到达的期望泛化误差的下界,即刻画了问题本身的难度。
泛化能力是由学习算法的能力、数据的充分性以及学习任务本身的难度所共同决定的。给定学习任务,为了取得好的泛化性能,则需使偏差较小,即能充分拟合数据,并且使方差较小,即使得数据扰动产生的影响小。
这个图所表达的含义相信不用过多地解释了吧。
数据分析咨询请扫描二维码
在准备数据分析师面试时,掌握高频考题及其解答是应对面试的关键。为了帮助大家轻松上岸,以下是10个高频考题及其详细解析,外加 ...
2024-12-20互联网数据分析师是一个热门且综合性的职业,他们通过数据挖掘和分析,为企业的业务决策和运营优化提供强有力的支持。尤其在如今 ...
2024-12-20在现代商业环境中,数据分析师是不可或缺的角色。他们的工作不仅仅是对数据进行深入分析,更是协助企业从复杂的数据信息中提炼出 ...
2024-12-20随着大数据时代的到来,数据驱动的决策方式开始受到越来越多企业的青睐。近年来,数据分析在人力资源管理中正在扮演着至关重要的 ...
2024-12-20在数据分析的世界里,表面上的技术操作只是“入门票”,而真正的高手则需要打破一些“看不见的墙”。这些“隐形天花板”限制了数 ...
2024-12-19在数据分析领域,尽管行业前景广阔、岗位需求旺盛,但实际的工作难度却远超很多人的想象。很多新手初入数据分析岗位时,常常被各 ...
2024-12-19入门数据分析,许多人都会感到“难”,但这“难”究竟难在哪儿?对于新手而言,往往不是技术不行,而是思维方式、业务理解和实践 ...
2024-12-19在如今的行业动荡背景下,数据分析师的职业前景虽然面临一些挑战,但也充满了许多新的机会。随着技术的不断发展和多领域需求的提 ...
2024-12-19在信息爆炸的时代,数据分析师如同探险家,在浩瀚的数据海洋中寻觅有价值的宝藏。这不仅需要技术上的过硬实力,还需要一种艺术家 ...
2024-12-19在当今信息化社会,大数据已成为各行各业不可或缺的宝贵资源。大数据专业应运而生,旨在培养具备扎实理论基础和实践能力,能够应 ...
2024-12-19阿里P8、P9失业都找不到工作?是我们孤陋寡闻还是世界真的已经“癫”成这样了? 案例一:本硕都是 985,所学的专业也是当红专业 ...
2024-12-19CDA持证人Louis CDA持证人基本情况 我大学是在一个二线城市的一所普通二本院校读的,专业是旅游管理,非计算机非统计学。毕业之 ...
2024-12-18最近,知乎上有个很火的话题:“一个人为何会陷入社会底层”? 有人说,这个世界上只有一个分水岭,就是“羊水”;还有人说,一 ...
2024-12-18在这个数据驱动的时代,数据分析师的技能需求快速增长。掌握适当的编程语言不仅能增强分析能力,还能帮助分析师从海量数据中提取 ...
2024-12-17在当今信息爆炸的时代,数据分析已经成为许多行业中不可或缺的一部分。想要在这个领域脱颖而出,除了热情和毅力外,你还需要掌握 ...
2024-12-17数据分析,是一项通过科学方法处理数据以获取洞察并支持决策的艺术。无论是在商业环境中提升业绩,还是在科研领域推动创新,数据 ...
2024-12-17在数据分析领域,图表是我们表达数据故事的重要工具。它们不仅让数据变得更加直观,也帮助我们更好地理解数据中的趋势和模式。相 ...
2024-12-16在当今社会,我们身处着一个飞速发展、变化迅猛的时代。不同行业在科技进步、市场需求和政策支持的推动下蓬勃发展,呈现出令人瞩 ...
2024-12-16在现代商业世界中,数据分析师扮演着至关重要的角色。他们通过解析海量数据,为企业战略决策提供有力支持。要有效完成这项任务, ...
2024-12-16在当今数据爆炸的时代,数据分析师是组织中不可或缺的导航者。他们通过从大量数据中提取可操作的洞察力,帮助企业在竞争激烈的市 ...
2024-12-16