判别模型与生成模型
人类思维启发了机器学习 (ML) 和深度学习 (DL) 技术,我们如何从经验中学习,以便在现在和未来做出更好的选择。这些技术是最具活力和不断变化的研究领域,虽然我们已经在以多种方式使用它们,但可能性是无穷无尽的。
这些进步使机器能够从过去的数据中学习,甚至可以从看不见的数据输入中进行预测。为了从原始数据中提取有意义的见解,机器依赖于数学、模型/算法和数据处理方法。我们可以通过两种方式提高机器效率;一种是增加数据量,另一种是开发新的、更强大的算法。
获取新数据非常容易,因为每天都会生成数以万亿的数据。但要处理如此庞大的数据,我们需要构建新的模型/算法或扩展现有的模型/算法。数学是这些模型/算法的支柱,它们大致可分为两类,即判别模型和生成模型。
在本章中,我们将研究判别和生成 ML 模型以及它们之间的核心区别。
什么是判别模型?
判别模型是 ML 模型,顾名思义,它专注于使用概率估计和最大似然对几类数据之间的决策边界进行建模。这些类型的模型主要用于监督学习,也称为条件模型。
判别模型受异常值的影响不大。虽然这使得它们成为比生成模型更好的选择,但它也会导致误分类问题,这可能是一个很大的缺点。
从数学角度来看,训练分类器的过程涉及估计,
- 表示为f的函数:X → Y,或
- 概率P(Y│X)。
然而,判别分类器−
- 假设概率P(Y|X)的特定函数形式,并且
- 直接从训练数据集估计概率P(Y|X)的参数。
流行的判别模型
下面讨论的是一些广泛使用的例子使用判别模型 −
逻辑回归
逻辑回归是一种用于二元分类任务的统计技术。它使用逻辑函数对因变量和一个或多个自变量之间的关系进行建模。它产生 0 到 1 之间的输出。
逻辑回归可用于各种问题的分类,如癌症检测、糖尿病预测、垃圾邮件检测等。
支持向量机
支持向量机 (SVM) 是一种功能强大且灵活的监督 ML 算法,可应用于回归和分类场景。支持向量使用决策边界将 n 维数据空间在超平面中划分为多个类。
K 最近邻 (KNN)
KNN 是一种监督 ML 算法,它使用特征相似性来预测新数据点的值。分配给新数据点的值取决于它们与训练集中的点的匹配程度。
决策树、神经网络、条件随机场 (CRF)、随机森林是其他一些常用判别模型的例子。
什么是生成模型?
生成模型是 ML 模型,顾名思义,旨在捕获数据的底层分布,并生成与原始训练数据相当的新数据。这些类型的模型主要用于无监督学习,被归类为能够生成新数据实例的一类统计模型。
与判别模型相比,生成模型的唯一缺点是它们容易出现异常值。
如上所述,从数学角度来看,训练分类器的过程涉及估计,
- 表示为 f : X → Y 的函数,或
- 概率 P(Y│X)。
但是,生成分类器 −
- 假设概率的特定函数形式,例如 P(Y)、P(X|Y)
- 直接从训练数据集估计概率参数,例如 P(X│Y)、P(Y)。
- 使用贝叶斯定理计算后验概率 P(Y|X)。
流行的生成模型
下面重点介绍了一些广泛使用的生成模型 −
的示例贝叶斯网络
贝叶斯网络,也称为贝叶斯网络,是一种概率图形模型,使用有向无环图 (DAG) 表示变量之间的关系。它在医疗保健、金融和自然语言处理等各个领域有许多应用,可用于决策、风险评估和预测等任务。
生成对抗网络 (GAN)
它们基于深度神经网络架构,由两个主要组件组成,即生成器和鉴别器。生成器训练并创建新的数据实例,鉴别器将这些生成的数据评估为真实或虚假的实例。
变分自动编码器 (VAE)
这些模型是一种自动编码器,经过训练可以学习输入数据的概率潜在表示。它通过从学习到的概率分布中抽样来学习生成与输入数据类似的新样本。 VAE 可用于执行诸如从文本描述生成图像(如 DALL-E-3 中所示)或制作类似人类的文本响应(如 ChatGPT 中所示)等任务。
自回归模型、朴素贝叶斯、马尔可夫随机场、隐马尔可夫模型 (HMM)、潜在狄利克雷分配 (LDA) 是其他一些常用生成模型的示例。
判别式和生成式模型之间的区别
数据科学家和机器学习专家需要了解这两种模型之间的区别,以便为特定任务选择最合适的模型。
下表描述了判别式和生成式模型之间的核心区别−
特征 | 判别模型 | 生成模型 |
---|---|---|
目标 | 专注于直接从数据中学习不同类别之间的边界。其主要目标是根据学习到的决策边界准确地对输入数据进行分类。 | 旨在了解底层数据分布并生成类似于训练数据的新数据点。它们专注于对数据生成过程进行建模,从而允许它们创建合成数据实例。 |
概率分布 | 从训练数据集估计概率 P(Y|X) 的参数。 | 使用贝叶斯定理计算后验概率 P(Y|X)。 |
处理异常值 | 对异常值具有相对稳健性 | 容易出现异常值 |
属性 | 它们不具备生成属性。 | 它们具有判别属性。 |
应用 | 常用于分类任务,例如图像识别和情感分析。 | 常用于数据生成、异常检测和数据增强等任务,超越了传统的分类任务。 |
示例 | 逻辑回归、支持向量机、决策树、神经网络等。 | 变分自动编码器 (VAE)、生成对抗网络 (GAN)、朴素贝叶斯等。 |
结论
判别模型在类别之间创建边界,使其成为分类任务的理想选择。相比之下,生成模型了解底层数据分布并生成新样本,使其适合数据生成和异常检测等任务。
我们还解释了判别模型和生成模型之间的一些核心区别。这些差异使数据科学家和机器学习专家能够为特定任务选择最合适的方法,并提高机器学习系统的效率。