机器学习及应用(在线实验+在线自测)
上QQ阅读APP看书,第一时间看更新

1.2 基本术语

要进行机器学习,首先需要有数据。考虑手写体数字识别的问题,假设每个数字对应一个28像素×28像素的灰度图像,依照矩阵逐列首尾相接拼成向量的方式,每一幅数字图像可以表示为一个由784个实数组成的向量x。假定收集了一组手写体数字的图像,均以向量的形式表示,这组图像向量的集合称为一个数据集(Data Set),其中的每个向量是关于一幅手写体数字图像的描述,称为一个实例(Instance)或样本(Sample)。784维向量中的每一维反映了图像在某个特定方面的表现性质,称为属性(Attribute)或特征(Feature);属性的取值,也就是向量中每个元素对应的实数值,称为属性值(Attribute Value)。这些属性所张成的空间称为属性空间(Attribute Space),也叫样本空间(Sample Space)或输入空间(Input Space)。由此,所有特征张成一个用于描述手写体数字的784维空间,在这个属性空间中,每一幅图像对应了该空间中的一个点。由于空间中的每个点可以用一个坐标向量来表示,因此也把一个样本称为一个特征向量(Feature Vector)。

一般的,令D={x1,x2,…,xm}表示包含m个样本的数据集,每个样本由d个属性描述,则每个样本d维属性空间X中的一个向量,xiX,其中xijxi在第j个属性上的取值,d称为样本xi的维数(Dimensionality)。

手写体数字识别问题的目标是建立一个机器,能够以代表一幅手写体数字图像的向量x作为输入,以0~9中的某一个数字作为输出。这不是一个简单的问题。通过人工编写规则解决这样的问题经常会给出较差的结果,原因是手写体数字形态变化多端。而使用机器学习的方法可以得到好得多的结果。

机器学习试图从数据中寻找特定的模型,这种从数据中学得模型的过程称为学习(Learning)或训练(Training)。在学习算法中,一个由N个数字组成的大的集合{x1,x2,…,xN}被称作训练集(Training Set),用来调节模型的参数。这些在训练过程中使用的数据也称为训练数据(Training Data),其中的每个样本称为一个训练样本(Training Sample)。训练集就是所有训练样本组成的集合。训练集中数字的类别称为目标向量(Target Vector),用来代表训练数据的标记信息或标签(Label)。拥有了标记信息的样本称为样例(Example)。一般的,用(xi,yi)表示第i个样例,其中,yiYyi是样本xi的标记,Y是所有标记的集合,亦称标记空间(Label Space)或输出空间(Output Space)。依据训练数据是否拥有标记信息,机器学习任务可大致划分为监督学习(Supervised Learning)和无监督学习(Unsupervised Learning)两大类。

机器学习算法可以表示为一个函数y=f(x),假设以手写体图像x作为输入,向量y作为输出,其中,向量y的形式与目标向量的形式相同。在训练数据的基础上,函数f(x)的精确形式在训练阶段或学习阶段被确定。一旦模型被训练出来,它就能确定新的手写体数字集合中的图像标签。这些新的手写体数字图像组成的集合称为测试集(Test Set)。使用学习得到的模型进行预测的过程称为测试(Testing),被预测的样本称为测试样本(Testing Sample)。学习得到的模型适用于新样本的能力称为泛化(Generalization)能力。

如果希望预测的结果是离散值,如这里的0~9这10个数字,此类学习任务称为分类(Classification);如果希望预测的结果是连续值,此类学习任务称为回归(Regression)。在分类任务中,将只涉及两个类别的学习任务称为二分类(Binary Classification)任务。通常称其中一个类为正类(Positive Class),相应的样例称为正例(Positive Example);称另一个类为负类或反类(Negative Class),相应的样例称为负例或反例(Negative Example)。当涉及多个类别时,学习任务则称为多分类(Multi-Class Classification)任务。如果在学习过程中使用的训练样本不具备标记信息,我们依然希望可以将训练集中的数据分成若干组,这样的学习任务称为聚类(Clustering)。聚类任务中的每个组称为一个簇(Cluster),这些自动形成的簇对应一些潜在概念的划分,有助于我们了解数据内在的规律。从训练数据是否拥有标记信息的角度我们可以知道,分类和回归是监督学习的代表,而聚类则是非监督学习的代表。