AI 入门 101
生成式与判别式机器学习模型

一些机器学习模型属于“生成式”或“判别式”模型类别。然而,这两类模型之间有什么区别?什么是生成式模型和判别式模型的含义?
简而言之,生成式模型是指那些包含数据集分布的模型,返回给定示例的概率。生成式模型通常用于预测序列中的下一个事件。另一方面,判别式模型用于分类或回归,返回基于条件概率的预测。让我们更详细地探讨生成式和判别式模型之间的区别,以便我们能够真正理解这两类模型之间的区别以及何时使用每种类型的模型。
生成式与判别式模型
机器学习模型可以通过多种方式进行分类。一个模型可以被归类为属于不同的类别,如:生成式模型、判别式模型、参数模型、非参数模型、树型模型、非树型模型。
本文将重点介绍生成式模型和判别式模型之间的区别。我们将首先定义生成式和判别式模型,然后探讨每种类型的模型示例。
生成式模型
生成式模型是指那些关注数据集类别分布的模型。机器学习算法通常对数据点的分布进行建模。生成式模型依赖于联合概率。创建点,其中给定的输入特征和期望输出/标签同时存在。
生成式模型通常用于估计概率和可能性,通过这些概率对类别进行建模和区分。由于模型学习了数据集的概率分布,因此可以引用此概率分布来生成新的数据实例。生成式模型通常依赖于贝叶斯定理来找到联合概率,找到p(x,y)。本质上,生成式模型模拟数据的生成过程,回答以下问题:
“这个类或其他类生成此数据点/实例的可能性是多少?”
生成式机器学习模型的示例包括线性判别分析(LDA)、隐马尔可夫模型和贝叶斯网络,如朴素贝叶斯。
判别式模型
虽然生成式模型学习数据集的分布,判别式模型学习数据集类别之间的边界。判别式模型的目标是确定决策边界,以便为数据实例应用可靠的类标签。判别式模型使用条件概率分离类别,不对个别数据点进行任何假设。
判别式模型旨在回答以下问题:
“此实例位于决策边界的哪一侧?”
机器学习中判别式模型的示例包括支持向量机、逻辑回归、决策树和随机森林。
生成式和判别式模型之间的区别
以下是生成式和判别式模型之间的主要区别的快速概述。
生成式模型:
- 生成式模型旨在捕获数据集类别的实际分布。
- 生成式模型预测联合概率分布 – p(x,y) – 使用贝叶斯定理。
- 生成式模型计算成本高于判别式模型。
- 生成式模型适用于无监督机器学习任务。
- 生成式模型比判别式模型更容易受到异常值的影响。
判别式模型:
- 判别式模型模拟数据集类别的决策边界。
- 判别式模型学习条件概率 – p(y|x)。
- 判别式模型计算成本低于生成式模型。
- 判别式模型适用于监督机器学习任务。
- 判别式模型比生成式模型更能抵御异常值的影响。
- 判别式模型比生成式模型更能抵御异常值的影响。
现在,让我们简要探讨一些生成式和判别式机器学习模型的示例。
生成式模型示例
线性判别分析(LDA)
LDA模型通过估计数据集每个类的方差和均值来工作。计算出每个类的均值和方差后,可以通过估计给定输入属于某个类的概率来进行预测。
隐马尔可夫模型
马尔可夫链可以被认为是带有概率的图,指示从一个状态(“状态”)移动到另一个状态的可能性。马尔可夫链用于确定从状态j移动到状态i的概率,可以表示为p(i,j)。这就是上面提到的联合概率。隐马尔可夫模型是指使用不可见的、不可观察的马尔可夫链。数据输入被提供给模型,并使用当前状态和前一个状态的概率来计算最可能的结果。
贝叶斯网络
贝叶斯网络是一种概率图模型。它们表示变量之间的条件依赖关系,如有向无环图(DAG)所示。在贝叶斯网络中,图中的每个边代表条件依赖关系,每个节点对应一个唯一的变量。图中独特关系的条件独立性可用于确定变量的联合分布并计算联合概率。换句话说,贝叶斯网络捕获特定联合概率分布中的独立关系的一个子集。
创建并正确定义贝叶斯网络后,具有随机变量、条件关系和概率分布,之后可以用来估计事件或结果的概率。
贝叶斯网络中最常用的类型之一是朴素贝叶斯模型。朴素贝叶斯模型通过将所有特征视为相互独立来处理计算具有许多参数/变量的数据集的概率的挑战。
判别式模型示例
支持向量机
支持向量机通过绘制数据点之间的决策边界来工作,找到最佳分离数据集类别的决策边界。支持向量机算法绘制线或超平面来分离点,对于二维空间和三维空间分别如此。支持向量机模型还可以使用“核技巧”来识别非线性决策边界,在数据集不是线性可分的情况下。
逻辑回归
逻辑回归是一种使用对数几率(log-odds)函数来确定输入属于两种状态之一的概率的算法。使用sigmoid函数将概率“压缩”到0或1,即真或假。概率大于0.50的值被假定为类1,而0.49或更低的概率被假定为类0。因此,逻辑回归通常用于二元分类问题。然而,逻辑回归可以通过创建每个类的二元分类模型并确定示例是目标类或数据集中另一个类的概率来应用于多类问题。
决策树
决策树模型通过将数据集分解为越来越小的部分来工作,一旦子集不能再分割,结果就是一个具有节点和叶子的树。决策树中的节点是对数据点进行决策的位置,使用不同的过滤标准。决策树中的叶子是已经分类的数据点。决策树算法可以处理数值和分类数据,树中的分割基于特定的变量/特征。
随机森林
随机森林模型基本上就是一组决策树,其中个别树的预测被平均以得出最终决策。随机森林算法随机选择观察值和特征,基于这些选择构建个别树。
本教程文章将探讨如何在Matplotlib中创建箱线图。箱线图用于可视化数据集的摘要统计,显示分布的属性,如数据的范围和分布。












