一、前言
机器学习的算法有很多种,学习算法中主要的两种类型是监督学习和无监督学习。简单来说,监督学习就是教计算机如何完成任务,无监督学习使让计算机自行学习完成。
简言之,机器学习就是让机器从大量的数据集中学习,进而得到一个更加符合现实规律的模型,通过对模型的使用使得机器比以往表现的更好。
1.1 基本术语
- 数据集(data set): 数据集中每条数据记录是关于一个时间或对象的描述,称为一个示例(instance)或样本(sample)。
- 属性(attribute)/特征(feature): 反映事件或对象在某方面的表现或性质的事项。
- 属性值(attribute value): 属性上的取值。
- 属性空间(attribute space)/样本空间(sample value): 属性张成的空间,类似于线性代数中一组线性无关的基底张成的线性空间。
- 特征向量(feature vector): 每条数据可以在样本空间中找到自己的坐标位置,空间中每个点对应的坐标向量即特征向量。
1.2 表示方法
一般的,令$D=\left\{\boldsymbol{x}_1,\boldsymbol{x}_2,\cdots,\boldsymbol{x}_{\boldsymbol{m}}\right\}$ 表示包含m个示例的数据集,每个示例有d个属性描述,则每个示例$\boldsymbol{x}_{\boldsymbol{i}}=\left(x_{i1};x_{i2};\cdots;x_{id}\right)$ 是d维样本空间$\mathcal X $中的一个向量,$x_{ij} $是$\boldsymbol{x}_i$ 在第j个属性上的取值,d称为样本$\boldsymbol{x}_i$ 的维数。
1.3 何为学习
从数据中学得模型的过程称为“学习”(learning)或“训练”(training),通过执行某个学习算法完成此过程。训练过程中使用的数据称为“训练数据”(training data),其中每个样本称为一个“训练样本”(training data),训练样本组成的集合称为“训练集”(training set)。
如果我们需要判断一个新的示例是好是坏,仅有示例数据是不够的,需要建立关于“预测”(prediction)的模型。对于有预测结果的新示例,关于结果的信息称之为“标记”(label);拥有标记信息的示例,称之为“样例”(example)。
一般的,用$\left(\boldsymbol{x}_i,y_i\right)$表示第i个样例,其中$y_i\in \mathcal{Y}$是示例$\boldsymbol{x}_i$的标记,$\mathcal{Y}$是所有标记的集合,亦称为“标记空间”(label space)或“输出空间”。
其实所谓的学习,其本质就是找到特征和标签间的关系(mapping)。这样当有特征而无标签的未知数据输入时,我们就可以通过已有的关系预测未知数据标签。在上述的分类过程中,如果所有训练数据都有标签,则为有监督学习(supervised learning)。如果数据没有标签,显然就是无监督学习(unsupervised learning)了,也即聚类(clustering)。无监督学习会在下一部分讲解,聚类算法见另一篇博客。
二、监督学习
2.1 何为监督学习
根据已有的数据集,知道输入和输出结果之间的关系。根据这种已知的关系,训练得到一个最优的模型。 也就是说,在监督学习中训练数据既有特征(feature) 又有 标签(label),通过训练,让机器可以自己找到特征和标签之间的联系,在面对只有特征没有标签的数据时,可以判断出标签。
监督学习分为:连续型的回归问题(Regression)、离散型的分类问题(Classification)。
2.2 回归问题
如果我们预测的结果是以连续数字进行表示,即我们将在连续函数中对多个输入变量建立映射关系时,并根据回归关系预测欲预测值时,则这样的问题称之为回归问题。
2.3 分类问题
如果我们预测的结果是以离散形式表示的,即我们将多个输入变量与多个不同的类别建立映射关系时,即通过映射关系预测离散值,则这样的问题称之为分类问题。
只涉及两个类别的分类问题为“二分类”(binary classification),通常其中一个称为“正类”(positive class),另一个称为“反类”(negative class),
三、无监督学习
3.1 何为无监督学习
相对于监督学习中,每个数据均有标签。无监督学习中,没有任何标签或者是有相同标签或者就是没标签。针对数据集,无监督学习可能把数据分成好多不同的簇,这就是聚类算法。即算法需要自己将不同的个体划分进不同的类中,而不是依赖数据输入时已经提供的标签。
3.2 聚类算法的例子
在网页搜索中,我们每次的搜索,都是将相关联的新闻进行分类并展示,搜索引擎需要搜索相应的内容,并自动的聚集在一起。