吐血整理:机器学习的30个基本概念,都在这里了(手绘图解)

简介: 导读:本文主要介绍机器学习基础知识,包括名词解释(约30个)、基础模型的算法原理及具体的建模过程。

云栖号资讯:【点击查看更多行业资讯
在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来!

导读:本文主要介绍机器学习基础知识,包括名词解释(约30个)、基础模型的算法原理及具体的建模过程。
F051193F_0661_4bd0_BE22_E33F1FDA0713
57A5050E_DD66_428e_8872_D91095C53A07
其中,X是定义在输入空间X上的随机变量,Y是定义在输出空间Y上的随机变量。

上述公式理解起来可能较为抽象,接下来我们通过一个实际的例子来理解相关概念。

首先,在建立模型前,一定会有一个由多个样例组成的样本集,比如:

(用户A,{年龄:29,身高:185,年收入:70,婚姻状况:未婚,状态:逾期})
(用户B,{年龄:24,身高:167,年收入:31,婚姻状况:已婚,状态:未逾期})
(用户C,{年龄:46,身高:177,年收入:50,婚姻状况:离异,状态:未逾期})

其中每一个用户及其属性对称为一个样本(或观测)。这样的一系列用户及其自身的属性构成了样本集,其中用户“A”“B”“C”构成了样本空间,“特征年龄”“身高”“年收入”“婚姻状况”构成了特征空间。

此外还有一个空间叫作参数空间,即由组成预测函数的参数的所有取值所组成的空间。“状态”这个字段则代表着样本的标签,也就是需要模型来判别的结果。

这个例子中特征空间有4个取值:年龄、身高、年收入、婚姻状况。这4个取值就代表着特征空间中的4个维度,或者说这个特征空间的维度是4。在良好的假设条件下,模型期望每个特征之间互不干扰,然而在实际情况下,通常每个特征之间都有可能存在关系。

比如我们可以将其中两个维度(年龄和身高)画出来。当处于低龄时(即0~8岁),我们可以明显地观察到身高的取值随着年龄增长也在不断地变大,如图3-1所示。

2CD3A6D0_2DCC_4aa5_87D8_4B7587C3202B

婚姻状况这个特征可能取值为{未婚、已婚、离异},那么这3个取值就限制住了特征空间在婚姻状况这个维度上的取值。

如果数据中只有{未婚、离异}这2种取值的样本,则称这个数据集不能完整表征它所在的样本空间,即在它的某一特征维度上,有一些值没有被观测到,不能很好地观察到这个维度特征的真实分布。

通过已观察的样本点,只能表征出阴影部分的空间,如图3-2所示。

D638CDF5_0E7E_443b_B26C_F1ECEA062473

02 模型学习

模型的训练(又叫学习或者拟合),是指通过将数据传入模型,从而使模型学习到数据的潜在规律(如数据的分布)的过程。而建立模型的本质,可以理解为从数据分布中抽象出一个决策函数。

决策函数(非概率模型)的定义为从输入空间X到输出空间Y的映射f:X→Y。

假设空间F定义为决策函数的集合,其形式如下:

F={f|Y=f(X)}

其中,X是定义在输入空间X上的变量,X∈X;Y是定义在输出空间Y上的变量。

当想要预测的是离散值时,比如一个人是男或是女,或者一个用户还钱与否,这样的任务称为分类(Classification)。与之相对应的,如果想预测一个人的年龄是多少岁,或者一个用户具体会在未来的哪一天还款,这样的任务称为回归(Regression)。

当一个任务只有两个取值时称之为二分类任务。评分卡模型就是一种典型的二分类任务,即预测一个用户是否会产生逾期。而当任务涉及多个类别的时候,称之为多分类任务。

一个典型的例子是在做欺诈检测时预测一个用户是否进行欺诈,这看似是一个二分类任务(预测是否欺诈),但其实用户的欺诈手段各不相同,每一个欺诈方法都是一个单独的类别,因此它本质上是一个多分类任务。

从数据是否带有标签的角度来看,又可以将模型划分成三大类:监督学习(Supervised Learning,SL)、半监督学习(Semi-Supervised Learning,SSL)和无监督学习(Unsupervised Learning,UL)。

监督学习是指在一个申请评分卡建模中,已经明确知道样本集中每个用户的标签,即随便取一个人出来,都可以知道他的逾期状态。
无监督学习是指在建模时,完全没有当前样本集的任何标签信息,即完全不知道哪些人是逾期的。
而半监督学习介于两者之间,对于当前的样本集,知道其中一部分样本的标签,另一部分则不知道其是否已逾期。

通常情况下,模型的效果排序如下:

监督学习>半监督学习>无监督学习

在绝大多数情况下,应该尽可能利用标签信息,这样得到的模型效果会更好。但是很多时候,是否能拥有标签并不是由个体决定的。例如,很多平台是没有欺诈用户的标签的,此时训练一个监督模型就很困难,而半监督及无监督学习可以起到一定的作用。

03 模型评价

对于模型学习的结果,主要关心两件事:欠拟合(underfit)和过拟合(overfit)。

欠拟合是指模型拟合程度不高,数据距离拟合曲线较远,或指模型没有很好地捕捉到数据特征,不能很好地拟合数据。换言之,模型在学习的过程中没有很好地掌握它该掌握的知识,模型学习的偏差较大。

过拟合是指为了得到一致假设而使假设变得过度严格,即模型学习得太过详细,把一些个例的特点作为共性,使得模型的泛化能力较低。

图3-3很好地解释了过拟合与欠拟合的含义,a图表示欠拟合,b图表示一个良好的拟合,c图则表示过拟合。通俗理解,过拟合就是模型学得过于细致,欠拟合就是学得过于粗糙。

CC0FD166_5DE6_4f01_BF83_EAC1A7F989BC

模型结构越复杂,通常越倾向于过拟合。而样本量越大,数据分布得到越充分的曝光,模型越不容易过拟合。为了更好地表示过拟合和欠拟合,通常建模的时候会将样本集划分为训练集(Train)和测试集(Test)。

训练集就是用来带入模型训练的集合,而测试集主要是待模型训练好之后,对模型做测试,以检验模型的效果。一般认为,训练集上表现好但在测试集上表现不好的模型,有过拟合的风险;而模型在训练集上效果明显差于测试集,则有欠拟合的风险。

在训练一个模型的时候,我们不只希望模型在训练集上的表现足够好,还希望模型在其他数据集上的表现也很好。训练集上的表现与测试集上的表现的差值称为泛化误差,而泛化误差由3部分组成:偏差(bias)、方差(variance)、噪声(noise)。

偏差度量了模型的期望预测与真实结果的偏离程度,也就是模型本身的拟合能力。
方差度量了同样大小的训练集的变动所导致的学习能力的变化,也就是数据扰动所造成的影响。
而噪声则刻画了问题本身的拟合难度。

图3-4所示为训练程度与误差的关系。

EC2436E7_E4F2_4017_86DE_EF8A552FCF76

通常离线模型训练完成后,在最终模型上线前,会将测试集和训练集整合,重新对模型的系数做拟合,进而得到最终的模型。这是因为人为数据集越大,对样本空间的表征可能越充分。某些曝光不充分的特征值所对应的标签分布,在数据量增加时,可能有更高的曝光率。比如之前例子中的数据集如下所示:

(用户A,{年龄:29,身高:185,年收入:70,婚姻状况:未婚,状态:逾期})
(用户B,{年龄:24,身高:167,年收入:31,婚姻状况:已婚,状态:未逾期})
(用户C,{年龄:46,身高:177,年收入:50,婚姻状况:离异,状态:未逾期})

如果训练集中婚姻状况有一个值没有取到,只存在于测试集中,那么将测试集和训练集合并得到最终模型时,对未来的用户进行预测时偏差就会更小。

然而部分模型,如极端梯度提升机(eXtreme Gradient Boosting,XGBoost)需要利用测试样本集实现训练过程的提前停止,因此需要额外选择部分样本不参与训练,比如从原始训练集中选择少部分样本作为提前停止的依据。

【云栖号在线课堂】每天都有产品技术专家分享!
课程地址:https://yqh.aliyun.com/zhibo

立即加入社群,与专家面对面,及时了解课程最新动态!
【云栖号在线课堂 社群】https://c.tb.cn/F3.Z8gvnK

原文发布时间:2020-06-01
本文作者: 梅子行 毛鑫宇​
本文来自:“大数据DT 微信公众号”,了解相关信息可以关注“大数据DT

相关文章
|
6月前
|
机器学习/深度学习 人工智能 算法
详解机器学习概念、算法
详解机器学习概念、算法
详解机器学习概念、算法
|
1月前
|
机器学习/深度学习 自然语言处理 JavaScript
信息论、机器学习的核心概念:熵、KL散度、JS散度和Renyi散度的深度解析及应用
在信息论、机器学习和统计学领域中,KL散度(Kullback-Leibler散度)是量化概率分布差异的关键概念。本文深入探讨了KL散度及其相关概念,包括Jensen-Shannon散度和Renyi散度。KL散度用于衡量两个概率分布之间的差异,而Jensen-Shannon散度则提供了一种对称的度量方式。Renyi散度通过可调参数α,提供了更灵活的散度度量。这些概念不仅在理论研究中至关重要,在实际应用中也广泛用于数据压缩、变分自编码器、强化学习等领域。通过分析电子商务中的数据漂移实例,展示了这些散度指标在捕捉数据分布变化方面的独特优势,为企业提供了数据驱动的决策支持。
58 2
信息论、机器学习的核心概念:熵、KL散度、JS散度和Renyi散度的深度解析及应用
|
1月前
|
机器学习/深度学习 传感器 算法
机器学习入门(一):机器学习分类 | 监督学习 强化学习概念
机器学习入门(一):机器学习分类 | 监督学习 强化学习概念
|
6月前
|
机器学习/深度学习 自然语言处理 算法
|
3月前
|
机器学习/深度学习 算法 搜索推荐
【机器学习】机器学习的基本概念、算法的工作原理、实际应用案例
机器学习是人工智能的一个分支,它使计算机能够在没有明确编程的情况下从数据中学习并改进其性能。机器学习的目标是让计算机自动学习模式和规律,从而能够对未知数据做出预测或决策。
92 2
|
3月前
|
机器学习/深度学习 人工智能 算法
【人工智能】机器学习、分类问题和逻辑回归的基本概念、步骤、特点以及多分类问题的处理方法
机器学习是人工智能的一个核心分支,它专注于开发算法,使计算机系统能够自动地从数据中学习并改进其性能,而无需进行明确的编程。这些算法能够识别数据中的模式,并利用这些模式来做出预测或决策。机器学习的主要应用领域包括自然语言处理、计算机视觉、推荐系统、金融预测、医疗诊断等。
66 1
|
3月前
|
机器学习/深度学习 算法
【机器学习】解释对偶的概念及SVM中的对偶算法?(面试回答)
解释了对偶的概念,指出对偶性在优化问题中的重要性,尤其是在强对偶性成立时可以提供主问题的最优下界,并且详细阐述了支持向量机(SVM)中对偶算法的应用,包括如何将原始的最大间隔优化问题转换为对偶问题来求解。
84 2
|
3月前
|
机器学习/深度学习
【机器学习】准确率、精确率、召回率、误报率、漏报率概念及公式
机器学习评估指标中的准确率、精确率、召回率、误报率和漏报率等概念,并给出了这些指标的计算公式。
590 0
|
3月前
|
机器学习/深度学习 算法 搜索推荐
【机器学习】凸集、凸函数、凸优化、凸优化问题、非凸优化问题概念详解
本文解释了凸集、凸函数、凸优化以及非凸优化的概念,并探讨了它们在机器学习中的应用,包括如何将非凸问题转化为凸问题的方法和技术。
241 0
|
4月前
|
机器学习/深度学习 人工智能 自然语言处理
机器学习之深度学习算法概念
深度学习算法是一类基于人工神经网络的机器学习方法,其核心思想是通过多层次的非线性变换,从数据中学习表示层次特征,从而实现对复杂模式的建模和学习。深度学习算法在图像识别、语音识别、自然语言处理等领域取得了巨大的成功,成为人工智能领域的重要技术之一。
88 3