2.2 机器学习的常用术语

在学习机器学习的具体方法之前,我们需要掌握一些常用的机器学习术语。

(1)标签(label)。标签通常表现为简短的描述性词语,是对事物进行标记的一种符号。在机器学习中,标签通常用于监督学习中的分类或回归。① 在分类任务中,标签是一组离散值,表示数据所属的类别。例如,图像分类的标签可能是“猫”“狗”“鸟”等。② 在回归任务中,标签是一组连续值,表示数据的实际值。例如,在预测房价变化时,标签可能是房屋的实际销售价格。

(2)特征(feature)。特征指输入数据中的属性或变量,通常会把一个数据集表示为一组特征和相应的标签。特征可以是任何形式的数据,包括数字、文本、图像等。例如,区分苹果的种类,需要考虑的特征有颜色、形状、产地等;要分辨出一个人,可以从外貌、声音、走路姿势等方面来衡量。所谓的特征工程,实际上就是使用数学、统计学和领域知识从原始数据中提取有用特征。

(3)特征向量(feature vector)。特征向量简单来说就是特征的集合,通常使用一个向量表示,用来描述一个实例。由于每一个实例都有自己不同的特征,这些特征又有不同的值,多个值组合起来用一个向量表示就是特征向量。例如,一个苹果的颜色特征是红色,质量特征是500 g,味道特征是甘甜,则描述该苹果的特征向量为(红色,500 g,甘甜)。

(4)特征空间(feature space)。如果分别以每个特征作为一个坐标轴,所有特征所在坐标轴组成一个用于描述不同样本的空间,称为特征空间。继续以苹果为例,苹果的颜色有红色、绿色,质量是一个连续值,味道可以是甘甜、苦涩、平淡等,如果将颜色、质量、味道分别作为坐标轴组成一个三维空间,那这个三维空间就是描述苹果的特征空间。

(5)样本(sample)。样本是指输入数据中的某条数据或者实例,一般每个样本都由一个或多个特征以及一个标签组成,即(xi, yi),其中xi为第i个样本所有特征组成的特征向量,yi为第i个样本的标签。样本是机器学习模型训练的基础,通过处理大量的样本,机器学习模型可以从中学习特征及其与输出的关系,并通过这些经验来进行预测、分类、聚类等任务。

(6)模型(model)。模型是指一种数学或统计学方法,用于对数据进行学习、预测和分类。模型可以看作是对数据的简化和抽象,是从已有数据中学习到的一种函数关系,即定义了特征与标签之间的关系。在人工智能领域,模型与算法有所区别。简单来说,对于海量数据采用何种方式去学习,这个方式就称为算法。而通过算法最终学习到的结果,也就是后期用于预测的那一套规则就是模型。

(7)分类(classification)与回归(regression)。根据输出的类型,机器学习可分成分类和回归。分类是针对有限个可能的问题,预测出一个离散的、明确的变量;回归是针对无限个可能的问题,预测出一个连续的、逼近的变量。图2-2(a)中医生判断患者是否健康,对于这一问题的预测值只有真或假两种情况,因此这一过程可以看作是分类;图2-2(b)中医生对患者开出药方,其中药剂的用量以及服用次数并不能完全列举出来,只能根据患者情况寻找最优的方案,因此这一过程可以看作是回归。

图2-2 分类与回归
(a)分类;(b)回归

(8)聚类(clustering)。聚类是将物理或抽象对象的集合分成由类似的对象组成的多个类的过程。所谓“物以类聚,人以群分”就是一个典型的聚类问题。聚类过程将数据集划分成若干互不相交的子集,而这里的子集就是“簇”。在聚类中,模型试图找到一些特定属性或特征,使得同一簇内的数据点更加相似,而不同簇之间的数据点差异更大。如图2-3所示,聚类将一组看似毫无关系的点分成了两个簇,进一步又分成了四个簇。

图2-3 聚类的效果

(9)训练(training)与训练集(training set)。训练过程又称为学习过程,是指利用样本来调整模型的参数,使其能够在新样本上预测出正确的输出。用于训练过程的样本的集合就叫做训练集。在神经网络中,训练一般就是确定网络中权重和偏置的值,使其能够实现特定的功能。

(10)验证(validation)与验证集(validation set)。由于训练过程中模型参数调整的不同会导致最终模型预测效果有好有坏,这时就需要在每个训练轮次结束后验证当前模型的性能,这一过程就称为验证。验证的目的是评估模型的泛化能力,即模型对新数据的适应能力。用于验证过程,为进一步优化模型样本的集合就叫做验证集。

(11)推理(inference)与测试集(testing set)。推理又称为预测或推断,是借助在训练中已确定参数的模型进行运算,利用输入的新数据预测结果。一般在进行模型推理前,需要对已确定参数的模型检验其性能,而用来测试模型的样本的集合就叫做测试集。

(12)部署(deployment)。模型部署是指将最终的模型运用在特定环境中,利用新的数据进行推理的过程。对于一个项目而言,建立并训练好一个模型并不是项目的结束,需要将模型部署到实际应用中。根据需求,部署阶段可以像生成报告一样简单,也可以像实施可重复的数据科学过程一样复杂。在很多情况下,将由客户而不是数据分析员来执行部署步骤。

(13)损失函数(loss function)。损失函数又叫做代价函数,是用来评估模型的预测值与真实值的不一致程度。损失函数是一个非负值函数,损失函数越小,模型的鲁棒性也就越好。常见的损失函数包括均方误差(mean squared error)、交叉熵(cross entropy)、0-1损失函数等。