购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

1.1 无监督学习与生成模型

在介绍无监督学习与生成模型之前,我们先来了解什么是监督学习,什么是无监督学习。

1.1.1 监督学习与无监督学习

监督学习的任务是学习一个模型(也可以理解为一个映射函数),使模型能够对任意给定的输入生成一个相应的预测输出。模型的输入为随机变量 X ,输出为一个随机变量 Y 。每个具体的输入都是一个实例,由一个特征向量 x 表示,实例对应的输出由向量 y 表示。我们将所有可能的输入特征向量构成的集合称为特征空间(输入空间),将所有可能的输出向量构成的集合称为输出空间。一般输出空间的大小远远小于输入空间。监督学习的本质是学习从输入到输出的映射的统计规律。

我们列举3种常见的监督学习任务——回归、分类和标注,它们主要的区别在于变量的取值类型。

1)当输入变量和输出变量均为连续值变量时对应回归任务,它主要用于学习输入变量和输出变量之间的数值映射关系。常见的回归任务有价格预测、趋势预测等。常见的处理回归任务的机器学习模型有最小二乘回归、非线性回归等。

2)无论输入变量是离散值还是连续值,当输出变量为有限个离散值时对应分类任务。分类任务是人们讨论和应用得最广泛的任务,它通常用于分门别类。常见的分类任务有图像类别识别、音频分类、文本分类等。常见的处理分类任务的机器学习模型有 k 近邻、朴素贝叶斯、决策树、逻辑回归、支持向量机、神经网络等。

3)当输入变量和输出变量均为变量序列时对应标注任务,它是分类问题的一种推广,用于学习输入序列和输出序列的映射关系。典型的标注任务有自然语言处理中的词性标注、信息抽取等。常见的处理标注任务的机器学习模型有隐马尔可夫模型和条件随机场等。

无监督学习和监督学习最大的区别就是有无标签信息。在监督学习中,训练模型的任务是学习输入特征 x 到标签 y 的映射,而无监督学习中只有样本的特征向量 x ,故无监督学习的任务是对数据进行深入“挖掘”,其本质是学习数据中的统计规律或潜在结构。对于无监督学习的深入研究对深度学习的复兴起到了关键的作用。

我们列举3种常见的无监督学习任务:降维、聚类、概率模型估计。

1)降维任务主要用于处理数据的高维度问题。真实数据的特征维度过大容易造成模型的拟合度与可用性降低,我们可以通过降维算法对高维度数据进行“压缩”,使之变成低维度向量,从而提高数据的可用性。常用的算法有主成分分析、因子分析、隐含狄利克雷分布等,早期的自编码器也可用于数据降维。

2)聚类任务主要用于将样本依据一定的规则进行类别分配,即通过衡量样本之间的距离、密度等指标,将关系“近”的样本聚为同一类,以此实现样本的自动分类。常用的算法有层次聚类、 k -means聚类、谱聚类等。

3)在概率模型估计任务中,对于一个可以生成样本的概率模型,我们使用样本对概率模型的结构、参数进行学习,使得概率模型生成的样本与训练样本最相似。其中概率密度估计任务便是对随机变量 X 的概率密度函数 p X )进行学习,常用的算法有极大似然估计、生成对抗网络、变分自编码器等。这部分内容非常丰富,是本书关注的核心内容。

与无监督学习相比,监督学习除了拥有额外的标签信息外,还需要有测试样本。也就是说,机器学习模型在训练集中学习“规律”,然后对测试集使用这种“规律”来评价模型的效果。另外,无监督学习拥有比监督学习更好的拓展性,它能够在完成训练目标的同时,额外学习到样本的表示,而这些表示可以直接用于其他任务。

半监督学习是介于监督学习和无监督学习之间的一种方式,即只有小部分训练样本带有标签信息,而大多数训练样本的标签信息空缺。半监督学习包括直推和归纳两类模式。两者的区别在于需要预测标签的样本是否出现在训练集中。直推半监督学习只对给定的训练数据进行处理,它使用训练数据集中有类别标签和无类别标签的样本进行训练,预测其中无标签样本的标签信息;归纳半监督学习不仅预测训练数据集中无标签样本的标签,还预测未知样本的标签。半监督学习一般用于四类学习场景:半监督分类、半监督回归、半监督聚类、半监督降维。

1.1.2 判别模型与生成模型

为了避免读者对几个常见概念产生混淆,本节我们仅限于在监督学习的范围内介绍判别模型与生成模型。根据1.1.1节可知,监督学习是指学习一个模型,然后利用该模型对给定的输入预测相应的输出。我们可将模型写成函数形式 Y = f X )或条件概率分布形式 p Y|X ),并根据条件概率分布的计算方式将其分为判别模型与生成模型。

在判别模型中,我们直接对 p Y|X )进行建模,试图描述在给定输入特征 X 的情况下标签信息 Y 的分布。典型的判别模型包括 k 近邻法、感知机、决策树、逻辑回归和条件随机场等。判别模型对条件概率模型直接建模,无法反映训练数据本身的概率特性,但是以分类问题为例,判别模型在寻找最优分类面的过程中,学习了不同类别数据之间的差异。另外,判别模型可以对数据进行各种程度上的抽象、降维,因此可以简化学习问题,提高学习准确率。

在生成模型中,对数据特征 X 和标签 Y 的联合分布 p X Y )进行建模,然后利用条件概率公式,即可计算 p Y|X ),如下所示:

实际上,我们通常将联合分布变换成易于求解的形式:

其中, p Y )为标签信息 Y 的先验概率,描述了在对样本特征 X 一无所知的情况下 Y 的概率分布。 p Y|X )为标签 Y 的后验概率,描述了在明确样本特征 X Y 的概率分布。典型的生成模型有朴素贝叶斯方法和隐马尔可夫模型等。在朴素贝叶斯方法中,我们通过训练集学习到先验概率分布 p Y )和条件概率分布 p X|Y ),即可得到联合概率分布 p X Y );在隐马尔可夫模型中,我们通过训练集学习到初始概率分布、状态转移概率矩阵和观测概率矩阵,即可得到一个表示状态序列与观测序列联合分布的马尔可夫模型。

生成模型直接学习联合分布,可以更好地表示数据的分布,反映同类数据的相似度。当样本数量比较大时,生成模型往往可以更快、更好地收敛到真实模型上。另外,生成模型可以处理含有隐变量的情况,而判别模型对此无能为力。生成模型也可以通过计算边缘分布 P ( X )来检测某些异常值。但在实践中,生成模型的计算开销一般比较大,而且多数情况下其效果不如判别模型。

1.1.3 无监督生成模型

根据前两节内容可知,生成模型意味着对输入特征 X 和标签信息 Y 的联合分布进行建模,无监督学习意味着不存在标签信息,所以无监督生成模型是对输入特征 X 的概率密度函数 p X )建模。假设存在一个由 N 个训练样本{ x (1) , x (2) ,…, x N }构成的训练集( N 足够大),则可以使用训练集训练一个概率模型 X ),训练完成后,概率模型 X )应接近于 X 的概率密度函数 p X ),接着我们就可以从概率模型 X )中采样来“生成”高质量的样本了。

无监督生成模型是近些年深度学习的热门方向,其具有较长的发展历史 2 。在经典的统计机器学习中,对生成模型的主要问题——概率密度函数的估计有着丰富的讨论。概率密度函数的估计方法主要分为参数估计和非参数估计。参数估计通常对研究的问题已知某种数学模型(例如混合高斯分布、伯努利分布等),然后利用样本估计模型中的未知参数,常用的估计方法有极大似然估计、贝叶斯估计、最大后验估计等;非参数估计对数学模型没有先验知识,直接使用样本估计数学模型,常见的方法有直方图估计、核概率密度估计(Parzen窗)、 k 近邻估计等。

同样地,基于神经网络方法的生成模型也已被研究许久,例如20世纪80年代Hinton已经使用玻尔兹曼机 3 学习二值向量的任意概率分布。截至目前,已经涌现出许多非常优秀的深度生成模型,例如深度信念网络 4 、神经自回归网络 5-6 、深度玻尔兹曼机 7 、流模型等,其中2013年提出的变分自编码器模型和2014年提出的生成对抗网络是里面最优秀的两个代表。需要说明的是,包括生成对抗网络在内的大多数深度生成模型仍属于参数估计的范畴,即使用样本估计神经网络模型的权重参数。

生成模型的研究对人工智能技术的发展具有重要的意义。它不仅可以产生逼真的图像、视频、文本或语音等,在图像转换、超分辨率图像、目标检测、文本转图像等领域也取得了满意的效果。生成模型和强化学习、半监督学习、多模输出问题等均有密切联系,另外,生成模型的训练和采样是对我们表达和处理高维概率分布问题能力的非常好的测试。本书将围绕生成对抗网络展开。 MK7gTFFd44TlXOCKc9juycEMsIsUZ1LkgnRj65xo9xfem4IMxBJI1i3AtJhXTimS

点击中间区域
呼出菜单
上一章
目录
下一章
×