机器学习笔记之生成模型综述(一)生成模型介绍

这篇具有很好参考价值的文章主要介绍了机器学习笔记之生成模型综述(一)生成模型介绍。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

引言

从本节开始,将介绍生成模型的相关概念。

生成模型介绍

生成模型,单从名字角度,可以将其认识为:生成样本的模型。从流程的角度,它可以理解为:

  • 给定一个数据集合,基于该数据集合进行建模,并通过数据集合学习出模型的参数信息;
  • 根据已学习出的参数信息,使用模型构建出新的数据

但生成新的数据仅是生成模型的一个任务/目标,通过生成新数据的模型对生成模型进行判别可能是很片面的。

例如之前介绍的高斯混合模型( Gaussain Mixture Model,GMM \text{Gaussain Mixture Model,GMM} Gaussain Mixture Model,GMM),它的概率图结构可表示为:
生成模型,深度学习,机器学习,聚类,人工智能,生成模型综述,隐变量模型
其中 Z \mathcal Z Z是一个一维、离散型随机变量,对应的 X ∣ Z \mathcal X \mid \mathcal Z XZ服从高斯分布:
Z ∼ Discrete Distribution ( 1 , 2 , ⋯   , K ) X ∣ Z ∼ N ( μ k , Σ k ) k ∈ { 1 , 2 , ⋯   , K } \begin{aligned} \mathcal Z & \sim \text{Discrete Distribution}(1,2,\cdots,\mathcal K) \\ \mathcal X \mid \mathcal Z & \sim \mathcal N(\mu_{k},\Sigma_k) \quad k \in \{1,2,\cdots,\mathcal K\} \end{aligned} ZXZDiscrete Distribution(1,2,,K)N(μk,Σk)k{1,2,,K}
只要能够确定隐变量 Z \mathcal Z Z的概率分布 P Z \mathcal P_{\mathcal Z} PZ,以及高斯分布参数 ( μ Z , Σ Z ) (\mu_{\mathcal Z},\Sigma_{\mathcal Z}) (μZ,ΣZ),就可以从概率模型中源源不断生成出样本:
这里 μ Z , Σ Z , P Z \mu_{\mathcal Z},\Sigma_{\mathcal Z},\mathcal P_{\mathcal Z} μZ,ΣZ,PZ均表示模型参数。
{ ∀ z ( i ) ∈ Z z ( i ) ∼ P z ( i ) x ( i ) ∣ z ( i ) ∼ N ( μ z ( i ) , Σ z ( i ) ) \begin{cases} \forall z^{(i)} \in \mathcal Z \\ z^{(i)} \sim \mathcal P_{z^{(i)}}\\ x^{(i)} \mid z^{(i)} \sim \mathcal N(\mu_{z^{(i)}},\Sigma_{z^{(i)}}) \end{cases} z(i)Zz(i)Pz(i)x(i)z(i)N(μz(i),Σz(i))
不可否认的是,高斯混合模型就是一个生成模型。它所处理的任务主要是无监督的聚类任务
相反,监督学习中,是否也存在生成模型呢?例如:朴素贝叶斯分类器(Naive Bayes Classifier),它的概率图结构表示如下:
生成模型,深度学习,机器学习,聚类,人工智能,生成模型综述,隐变量模型
这是一个基于朴素贝叶斯假设的分类模型:
文字描述是:在标签 Y \mathcal Y Y确定的条件下,随机变量集合 X \mathcal X X内各随机变量相互独立。 p p p表示 X \mathcal X X内随机变量的数量; k k k表示随机变量 Y \mathcal Y Y划分类的数量。
x i ⊥ x j ∣ Y = l { i , j ∈ { 1 , 2 , ⋯   , p } i ≠ j l ∈ { 1 , 2 , ⋯   , k } x_i \perp x_j \mid \mathcal Y=l \quad \begin{cases} i,j \in \{1,2,\cdots,p\} \\ i \neq j \\ l \in \{1,2,\cdots,k\} \end{cases} xixjY=l i,j{1,2,,p}i=jl{1,2,,k}
关于 P ( X ∣ Y ) \mathcal P(\mathcal X \mid \mathcal Y) P(XY)可表示为:
P ( X ∣ Y ) = ∏ i = 1 p P ( x i ∣ Y ) \mathcal P(\mathcal X \mid \mathcal Y) = \prod_{i=1}^p \mathcal P(x_i \mid \mathcal Y) P(XY)=i=1pP(xiY)
在分类过程中,通过软分类 Y \mathcal Y Y的后验概率进行判别,并进行分类
将后验概率 P ( Y ∣ X ) \mathcal P(\mathcal Y \mid \mathcal X) P(YX)通过贝叶斯定理转化为似然 P ( X ∣ Y ) \mathcal P(\mathcal X \mid \mathcal Y) P(XY) × 先验概率 P ( Y ) \mathcal P(\mathcal Y) P(Y)的形式。
P ( Y = m ∣ X ) ⇔ ? P ( Y = n ∣ X ) ∝ P ( X ∣ Y = m ) ⋅ P ( Y = m ) ⇔ ? P ( X ∣ Y = n ) ⋅ P ( Y = n ) \begin{aligned} \mathcal P(\mathcal Y = m \mid \mathcal X) & \overset{\text{?}}{\Leftrightarrow} \mathcal P(\mathcal Y = n \mid \mathcal X) \\ \propto \mathcal P(\mathcal X \mid \mathcal Y = m) \cdot \mathcal P(\mathcal Y = m) & \overset{\text{?}}{\Leftrightarrow} \mathcal P(\mathcal X \mid \mathcal Y = n) \cdot \mathcal P(\mathcal Y = n) \end{aligned} P(Y=mX)P(XY=m)P(Y=m)?P(Y=nX)?P(XY=n)P(Y=n)
显然,我们也无法从监督/无监督的角度对生成模型进行定义。再举一个例子:逻辑回归(Logistic Regression),虽然它和朴素贝叶斯分类器一样,也是软分类的经典算法,但它不是生成模型。因为它的核心是 通过 Sigmoid,Softmax \text{Sigmoid,Softmax} Sigmoid,Softmax函数直接对标签 Y \mathcal Y Y的后验概率进行比较
这里以二分类为例,对应的是 Sigmoid \text{Sigmoid} Sigmoid函数。
{ P ( Y = 1 ∣ X ) = Sigmoid ( W T X + b ) P ( Y = 0 ∣ X ) = 1 − Sigmoid ( W T X + b ) P ( Y = 1 ∣ X ) ⇔ ? P ( Y = 0 ∣ X ) \begin{aligned} & \begin{cases} \mathcal P(\mathcal Y = 1 \mid \mathcal X) = \text{Sigmoid}(\mathcal W^T\mathcal X + b) \\ \mathcal P(\mathcal Y = 0 \mid \mathcal X) = 1 - \text{Sigmoid}(\mathcal W^T \mathcal X + b) \end{cases} \\ & \mathcal P(\mathcal Y = 1 \mid \mathcal X) \overset{\text{?}}{\Leftrightarrow} \mathcal P(\mathcal Y = 0 \mid \mathcal X) \end{aligned} {P(Y=1X)=Sigmoid(WTX+b)P(Y=0X)=1Sigmoid(WTX+b)P(Y=1X)?P(Y=0X)
从这里可以看出朴素贝叶斯分类器逻辑回归的差别:

  • 关于逻辑回归,直接对条件概率 P ( Y ∣ X ) \mathcal P(\mathcal Y \mid \mathcal X) P(YX)进行建模,也就是说,逻辑回归中只关注 Sigmoid \text{Sigmoid} Sigmoid函数的返回结果,对 X \mathcal X X的特征并不关心
  • 相反,朴素贝叶斯分类器不仅没有直接比较 P ( Y ∣ X ) \mathcal P(\mathcal Y \mid \mathcal X) P(YX),而是通过贝叶斯定理转化成 P ( X ∣ Y ) ⋅ P ( Y ) \mathcal P(\mathcal X \mid \mathcal Y) \cdot \mathcal P(\mathcal Y) P(XY)P(Y)进行比较。并且它对 X \mathcal X X的特征提出了严苛的条件独立性假设

综上,生成模型的关注点均在样本分布本身,并根据样本分布的特点进行建模。和具体的任务之间没有具体关联关系:

  • 如果是包含标签信息 Y \mathcal Y Y监督学习任务,如朴素贝叶斯分类器。直接对 P ( X , Y ) \mathcal P(\mathcal X,\mathcal Y) P(X,Y)进行建模:
    P ( Y ∣ X ) = P ( X , Y ) P ( X ) ∝ P ( X , Y ) = P ( X ∣ Y ) ⋅ P ( Y ) P ( X ∣ Y = m ) ⋅ P ( Y = m ) ⇔ ? P ( X ∣ Y = n ) ⋅ P ( Y = n ) \begin{aligned} \mathcal P(\mathcal Y \mid \mathcal X) = \frac{\mathcal P(\mathcal X,\mathcal Y)}{\mathcal P(\mathcal X)} \propto \mathcal P(\mathcal X,\mathcal Y) & = \mathcal P(\mathcal X \mid \mathcal Y) \cdot \mathcal P(\mathcal Y) \\ \mathcal P(\mathcal X \mid \mathcal Y = m) \cdot \mathcal P(\mathcal Y = m) & \overset{\text{?}}{\Leftrightarrow} \mathcal P(\mathcal X \mid \mathcal Y = n) \cdot \mathcal P(\mathcal Y = n) \end{aligned} P(YX)=P(X)P(X,Y)P(X,Y)P(XY=m)P(Y=m)=P(XY)P(Y)?P(XY=n)P(Y=n)

  • 如果是无监督学习任务,如隐变量模型( Latent Variable Model,LVM \text{Latent Variable Model,LVM} Latent Variable Model,LVM),可以通过构造隐变量 Z \mathcal Z Z,通过对 P ( X , Z ) \mathcal P(\mathcal X,\mathcal Z) P(X,Z)进行建模。

    • 在无监督模型中,这种思想更加深刻。由于至始至终仅有样本特征是我们能够观测到的已知信息。无论是隐变量,还是模型,都是基于样本特征的性质构建的合理假设。
    • 当然,针对无监督学习任务,不是仅有隐变量模型一种选择。如‘自回归模型’(AutoRegressive,AR),它就是一种直接对 P ( X ) \mathcal P(\mathcal X) P(X)建模的方法。

    如:玻尔兹曼机系列的能量模型:
    其中 v v v表示观测变量; h h h表示隐变量。
    P ( v , h ) = 1 Z exp ⁡ { − E [ v , h ] } \begin{aligned} \mathcal P(v,h) = \frac{1}{\mathcal Z} \exp \{-\mathbb E[v,h]\} \end{aligned} P(v,h)=Z1exp{E[v,h]}
    高斯混合模型
    P ( X ) = ∑ Z P ( X , Z ) = ∑ Z P ( X ∣ Z ) ⋅ P ( Z ) = ∑ k = 1 K p k ⋅ N ( μ k , Σ k ) ∑ k = 1 K p k = 1 \begin{aligned} \mathcal P(\mathcal X) & = \sum_{\mathcal Z}\mathcal P(\mathcal X,\mathcal Z) \\ & = \sum_{\mathcal Z} \mathcal P(\mathcal X \mid \mathcal Z) \cdot \mathcal P(\mathcal Z) \\ & = \sum_{k=1}^{\mathcal K} p_k \cdot \mathcal N(\mu_k,\Sigma_k) \quad \sum_{k=1}^{\mathcal K} p_k = 1 \end{aligned} P(X)=ZP(X,Z)=ZP(XZ)P(Z)=k=1KpkN(μk,Σk)k=1Kpk=1

通常也称生成模型概率生成模型
生成对抗网络中的样本生成过程表示为 x = G ( Z ; θ g e n e ) x = \mathcal G(\mathcal Z;\theta_{gene}) x=G(Z;θgene),其中 Z \mathcal Z Z是一个简单分布。虽然这里 G ( Z ; θ g e n e ) \mathcal G(\mathcal Z;\theta_{gene}) G(Z;θgene)是一个由前馈神经网络构成的计算图,但它依然描述的是样本自身的概率模型/概率分布。因此,生成对抗网络是一个概率生成模型。

下一节将从监督与无监督的角度介绍现阶段经典的概率模型

相关参考:
生成模型1-定义文章来源地址https://www.toymoban.com/news/detail-745025.html

到了这里,关于机器学习笔记之生成模型综述(一)生成模型介绍的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【机器学习合集】模型设计之网络宽度和深度设计 ->(个人学习记录笔记)

    在深度学习中,网络的宽度和深度是两个重要的超参数,它们对模型的性能和训练过程有重要影响。以下是有关网络宽度和深度的设计考虑: 网络宽度: 网络宽度指的是 每个层中的神经元数量 。增加宽度可以增加模型的 表示能力 ,有助于学习更复杂的模式。但要注意,增

    2024年02月08日
    浏览(26)
  • 机器学习笔记 - 学习图像生成模型在医疗行业用例的思路

            合成图像生成是使用算法或模拟来替换真实世界数据创建新图像的过程。         与数据隐私、有限的数据可用性、数据标签、无效的数据治理、高成本以及对大量数据的需求相关的挑战正在推动使用合成数据来满足各行各业对人工智能解决方案的高需求。

    2024年02月09日
    浏览(34)
  • 深度学习模型压缩方法综述

    深度学习因其计算复杂度或参数冗余,在一些场景和设备上限制了相应的模型部署,需要借助 模型压缩 、系统优化加速等方法突破瓶颈,本文主要介绍模型压缩的各种方法,希望对大家有帮助。 我们知道,一定程度上, 网络越深,参数越多,模型也会越复杂,但其最终效果

    2024年02月10日
    浏览(26)
  • 深度生成模型之GAN优化目标设计与改进 ->(个人学习记录笔记)

    1. JS散度度量问题 不合适的度量准则 2. 梯度问题 梯度消失与不稳定 1. 最小二乘损失GAN Least Squares GAN, 惩罚生成器生成的远离决策面的样本,即可将样本拉近决策面,从而可避免梯度消失问题 2. Energy-based GAN(EBGAN) 使用自编码器学习样本重建,生成器作为自编码器的正则项,

    2024年02月03日
    浏览(35)
  • 【机器学习笔记】12 聚类

    监督学习 在一个典型的监督学习中, 训练集有标签𝑦 ,我们的目标是找到能够区分正样本和负样本的决策边界,需要据此拟合一个假设函数。 无监督学习 与此不同的是,在无监督学习中,我们的数据 没有附带任何标签𝑦 ,无监督学习主要分为聚类、降维、关联规则、推

    2024年02月21日
    浏览(27)
  • 机器学习自学笔记——聚类

    聚类的基本概念 聚类,顾名思义,就是将一个数据集中各个样本点聚集成不同的“类”。每个类中的样本点都有某些相似的特征。比如图书馆中,会把成百上千的书分成不同的类别:科普书、漫画书、科幻书等等,方便人们查找。每一种类别的书都有相似之处:比如科普书类

    2023年04月08日
    浏览(23)
  • 稀疏光流法跟中移动物体、监督学习聚类、K均值聚类、加载深度神经网络模型、深度神经网络模型的使用

    目录 1、稀疏光流法跟中移动物体 2、监督学习聚类 3、K均值聚类 4、加载深度神经网络模型 5、深度神经网络模型的使用          

    2024年02月16日
    浏览(37)
  • PyTorch深度学习实战 | 高斯混合模型聚类原理分析

    为理解高斯混合模型解决聚类问题的原理,本实例采用三个一元高斯函数混合构成原始数据,再采用GMM来聚类。 1) 数据 三个一元高斯组件函数可以采用均值和协方差表示如表1所示: ▍表1 三个一元高斯组件函数的均值和协方差 每个高斯组件函数分配不同的权重,其中1号组

    2024年02月01日
    浏览(35)
  • 深度学习模型部署综述(ONNX/NCNN/OpenVINO/TensorRT)

    点击下方 卡片 ,关注“ 自动驾驶之心 ”公众号 ADAS巨卷干货,即可获取 今天自动驾驶之心很荣幸邀请到 逻辑牛 分享深度学习部署的入门介绍,带大家盘一盘ONNX、NCNN、OpenVINO等框架的使用场景、框架特点及代码示例。如果您有相关工作需要分享,请在文末联系我们! 点击

    2024年02月08日
    浏览(37)
  • python机器学习——聚类评估方法 & K-Means聚类 & 神经网络模型基础

    1、随机设置K个特征空间内的点作为初始的聚类中心 2、对于其他每个点计算到K个中心的距离,未知的点选择最近的一个聚类中心点作为标记类别 3、接着对着标记的聚类中心之后,重新计算出每个聚类的新中心点(平均值) 4、如果计算得出的新中心点与原中心点一样,那么

    2024年02月12日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包