关于机器学习:生成式模型与辨别式模型

41次阅读

共计 2139 个字符,预计需要花费 6 分钟才能阅读完成。

分类模型能够分为两大类: 生成式模型与分别式模型。本文解释了这两种模型类型之间的区别,并探讨了每种办法的优缺点。

分别式模型

分别式模型是一种可能学习输出数据和输入标签之间关系的模型,它通过学习输出数据的特色来预测输入标签。在分类问题中,咱们的指标是将每个输出向量 x 调配给标签 y。判断模型试图间接学习将输出向量映射到标签的函数 f(x)。这些模型能够进一步分为两个子类型:

分类器试图找到 f(x)而不应用任何概率分布。这些分类器间接为每个样本输入一个标签,而不提供类的概率预计。这些分类器通常称为确定性分类器或无散布分类器。此类分类器的例子包含 k 近邻、决策树和 SVM。

分类器首先从训练数据中学习后验类概率 P(y = k|x),并依据这些概率将一个新样本 x 调配给其中一个类(通常是后验概率最高的类)。

这些分类器通常被称为概率分类器。这种分类器的例子包含逻辑回归和在输入层中应用 sigmoid 或 softmax 函数的神经网络。

在所有条件雷同的状况下,我个别都应用概率分类器而不是确定性分类器,因为这个分类器提供了对于将样本调配给特定类的置信度的额定信息。

个别的判别式模型包含:

  • 逻辑回归(Logistic Regression,LR)
  • 反对向量机(Support Vector Machine,SVM)
  • 决策树(Decision Tree,DT)

生成式模型

生成式模型在预计类概率之前学习输出的散布。生成式模型是一种可能学习数据生成过程的模型,它能够学习输出数据的概率分布,并生成新的数据样本。

更具体地说生成模型首先从训练数据中预计类别的条件密度 P(x|y = k)和先验类别概率 P(y = k)。他们试图理解每个分类的数据是如何生成的。

而后利用贝叶斯定理预计后验类概率:

贝叶斯规定的分母能够用分子中呈现的变量来示意:

生成式模型也能够先学习输出和标签 P(x, y)的联结散布,而后将其归一化以失去后验概率 P(y = k|x)。一旦咱们有了后验概率,咱们就能够用它们将一个新的样本 x 调配给其中一个类(通常是后验概率最高的类)。

例如, 思考一个图像分类工作中, 咱们须要辨别图像狗 (y = 1) 和猫(y = 0)。生成模型首先会建设一个狗 P(x|y = 1) 的模型,以及猫 P(x|y = 0) 的模型。而后在对新图像进行分类时,它会将其与两个模型进行匹配,以查看新图像看起来更像狗还是更像猫。

为生成模型容许咱们从学习的输出散布 P(x|y)中生成新的样本。所以咱们将其称之为生成式模型。最简略的例子是,对于下面的模型咱们能够通过从 P(x|y = 1)中采样来生成新的狗的图像。

个别的生成模型包含

  • 奢侈贝叶斯(Naïve Bayes)
  • 高斯混合模型(GMMs)
  • 隐马尔可夫模型(hmm)
  • 线性判别分析 (LDA)

深度生成模型 (DGMs) 联合了生成模型和深度神经网络:

  • 自编码器(Autoencoder,AE)
  • 生成式反抗网络(Generative Adversarial Network,GAN)
  • 自回归模型,例如 GPT(Generative Pre-trained Transformer)是一种蕴含数十亿参数的自回归语言模型。

区别和优缺点

生成式模型和分别式模型的次要区别在于它们学习的指标不同。生成式模型学习输出数据的散布,能够生成新的数据样本。分别式模型学习输出数据和输入标签之间的关系,能够预测新的标签。

生成式模型:

生成模型给了咱们更多的信息,因为它们同时学习输出散布和类概率。能够从学习的输出散布中生成新的样本。并且能够解决缺失的数据,因为它们能够在不应用缺失值的状况下预计输出散布。然而大多数判断模型要求所有的特色都存在。

训练复杂度高,因为生成式模型要建设输出数据和输入数据之间的联结散布,须要大量的计算和存储资源。对数据分布的假如比拟强,因为生成式模型要建设输出数据和输入数据之间的联结散布,须要对数据的散布进行假如和建模,因而对于简单的数据分布,生成式模型在小规模的计算资源上并不实用。

生成模型能够解决多模态数据,因为生成式模型能够建设输出数据和输入数据之间的多元联结散布,从而可能解决多模态数据。

分别式模型:

如果不对数据做一些假如,生成式模型学习输出散布 P(x|y)在计算上是艰难的,例如,如果 x 由 m 个二进制特色组成,为了对 P(x|y)建模,咱们须要从每个类的数据中预计 2 个ᵐ参数(这些参数示意 m 个特色的 2 个ᵐ组合中的每一个的条件概率)。而 Naïve Bayes 等模型对特色进行条件独立性假如,以缩小须要学习的参数数量,因而训练复杂度低。然而这样的假如通常会导致生成模型比判断模型体现得更差。

对于简单的数据分布和高维数据具备很好的体现,因为分别式模型能够灵便地对输出数据和输入数据之间的映射关系进行建模。

分别式模型对噪声数据和缺失数据敏感,因为模型只思考输出数据和输入数据之间的映射关系,不利用输出数据中的信息填补缺失值和去除噪声。

总结

生成式模型和分别式模型都是机器学习中重要的模型类型,它们各自具备长处和实用场景。在理论利用中,须要依据具体任务的需要抉择适合的模型,并联合混合模型和其余技术手段来进步模型的性能和成果。

https://avoid.overfit.cn/post/9dc20966c4824be18ef7e9fd1acabe51

作者:Roi Yehoshua

正文完
 0