深度学习中的结构化概率模型 - 结构化概率模型的深度学习方法篇

序言

在深度学习的广阔领域中,结构化概率模型( Structured Probabilistic Model \text{Structured Probabilistic Model} Structured Probabilistic Model)扮演着至关重要的角色。这类模型利用图论中的图结构来表示概率分布中随机变量之间的复杂关系,为处理高维、结构丰富的数据(如图像、语音、文本等)提供了强有力的工具。结构化概率模型不仅降低了表示概率分布所需的参数数量,还显著提升了模型的学习与推断效率,成为深度学习研究中的关键组成部分。

结构化概率模型的深度学习方法

  • 深度学习实践者通常使用与从事结构化概率模型研究的其它机器学习研究者相同的基本计算工具。然而,在深度学习中,我们通常对如何组合这些工具做出不同的设计,导致总体算法、模型与更传统的图模型具有非常不同的风格。

  • 深度学习并不总是涉及特别深的图模型知识。

    • 在图模型中,我们可以根据图模型的图而不是计算图来定义模型的深度。
    • 如果从潜变量 h i h_i hi 到可观察变量的最短路径是 j j j 步,我们可以认为潜变量 h j h_j hj 处于深度 j j j
    • 我们通常将模型的深度描述为任何这样的 h j h_j hj 的最大深度。
    • 这种深度不同于由计算图定义的深度。
    • 用于深度学习的许多生成模型没有潜变量或只有一层潜变量,但使用深度计算图来定义模型中的条件分布。
  • 深度学习基本上总是利用分布式表示的思想。即使是用于深度学习目的的浅层模型(例如预训练浅层模型,稍后将形成深层模型),也几乎总是具有单个大的潜变量层。 深度学习模型通常具有比可观察变量更多的潜变量。变量之间复杂的非线性相互作用通过多个潜变量的间接连接来实现。

  • 相比之下,传统的图模型通常包含至少是偶尔观察到的变量,即使一些训练样本中的许多变量随机地丢失。传统模型大多使用高阶项和结构学习来捕获变量之间复杂的非线性相互作用。如果有潜变量,它们通常数量很少。

  • 潜变量的设计方式在深度学习中也有所不同。

    • 深度学习实践者通常不希望潜变量提前包含了任何特定的含义——训练算法可以自由地开发对特定数据集建模所需要的概念。
    • 在事后解释潜变量通常是很困难的,但是可视化技术可以得到它们表示的一些粗略表征。
    • 当潜变量在传统图模型中使用时,它们通常被赋予具有一些特定含义——比如文档的主题、学生的智力、导致患者症状的疾病等。
    • 这些模型通常由研究者解释,并且通常具有更多的理论保证,但是不能扩展到复杂的问题,并且不能像深度模型一样在许多不同背景中重复使用。
  • 另一个明显的区别是深度学习方法中经常使用的连接类型。

    • 深度图模型通常具有大的与其他单元组全连接的单元组,使得两个组之间的相互作用可以由单个矩阵描述。
    • 传统的图模型具有非常少的连接,并且每个变量的连接选择可以单独设计。
    • 模型结构的设计与推断算法的选择紧密相关。
    • 图模型的传统方法通常旨在保持精确推断的可追踪性。
    • 当这个约束太强的时候,我们可以采用一种流行的被称为是环状信念传播 ( loopy belief propagation \text{loopy belief propagation} loopy belief propagation) 的近似推断算法。
    • 这两种方法通常在稀疏连通图上有很好的效果。
    • 相比之下,在深度学习中使用的模型倾向于将每个可见单元 v i \text{v}_i vi 连接到非常多的隐藏单元 h j \text{h}_j hj 上,从而使得 h \textbf{h} h 可以获得一个 v i \text{v}_i vi 的分布式表示(也可能是其他几个可观察变量)。
    • 分布式表示具有许多优点,但是从图模型和计算复杂性的观点来看,分布式表示有一个缺点就是对于精确推断和环状信念传播等传统技术来说很难使用不够稀疏的图。
    • 结果,大尺度图模型和深度图模型最大的区别之一就是深度学习中几乎从来不会使用环状信念传播。
    • 相反的,许多深度学习模型可以用来加速 Gibbs \text{Gibbs} Gibbs 采样或者变分推断。
    • 此外,深度学习模型包含了大量的潜变量,使得高效的数值计算代码显得格外重要。
    • 除了选择高级推断算法之外,这提供了另外的动机,用于将结点分组成层,相邻两层之间用一个矩阵来描述相互作用。
    • 这要求实现算法的单个步骤可以实现高效的矩阵乘积运算,或者专门适用于稀疏连接的操作,例如块对角矩阵乘积或卷积。
  • 最后,图模型的深度学习方法的一个主要特征在于对未知量的较高容忍度。

    • 与简化模型直到它的每一个量都可以被精确计算不同的是,我们仅仅直接使用数据运行或者是训练,以增强模型的威力。
    • 我们一般使用边缘分布不能计算但是可以简单从中采样的模型。
    • 我们经常训练具有难以处理的目标函数的模型,我们甚至不能在合理的时间内近似,但是如果我们能够高效地获得这样一个函数的梯度估计,我们仍然能够近似训练模型。
    • 深度学习方法通常是找出我们绝对需要的最小量信息,然后找出如何尽快得到该信息的合理近似。

受限玻尔兹曼机实例



  • RBM \text{RBM} RBM结构的限制产生了好的属性:
    p ( h ∣ v ) = ∏ i p ( h i ∣ v ) p(\textbf{h}\mid\textbf{v})=\prod\limits_i p(\text{h}_i\mid\text{v}) p(hv)=ip(hiv) — 公式2 \quad\textbf{---\footnotesize{公式2}} 2

  • 以及: p ( v ∣ h ) = ∏ i p ( v i ∣ h ) p(\textbf{v}\mid\textbf{h})= \prod\limits_i p(\text{v}_i\mid\textbf{h}) p(vh)=ip(vih) — 公式3 \quad\textbf{---\footnotesize{公式3}} 3

  • 独立的条件分布很容易计算。对于二元的受限玻尔兹曼机,我们可以得到:
    { p ( h i = 1 ∣ v ) = σ ( v ⊤ W : , i + b i ) — 公式4 p ( h i = 0 ∣ v ) = 1 − σ ( v ⊤ W : , i + b i ) — 公式5 \begin{cases}\begin{aligned} p(\text{h}_i=1\mid\textbf{v})&=\sigma(\textbf{v}^\top\boldsymbol{W}_{:,i}+b_i) &\quad\textbf{---\footnotesize{公式4}}\\ p(\text{h}_i=0\mid\textbf{v})&=1-\sigma(\textbf{v}^\top\boldsymbol{W}_{:,i}+b_i) &\quad\textbf{---\footnotesize{公式5}} \end{aligned} \end{cases} {p(hi=1v)p(hi=0v)=σ(vW:,i+bi)=1σ(vW:,i+bi)45

  • 结合这些属性可以得到高效的块吉布斯采样 ( block Gibbs Sampling \text{block Gibbs Sampling} block Gibbs Sampling),它在同时采样所有 h \boldsymbol{h} h 和同时采样所有 v \boldsymbol{v} v 之间交替。

    • RBM \text{RBM} RBM模型通过 Gibbs \text{Gibbs} Gibbs 采样产生的样本在图例2中。

  • 图例2: 训练好的 RBM \text{RBM} RBM样本及其权重。
    • 训练好的 RBM \text{RBM} RBM样本及其权重
      在这里插入图片描述

    • 说明:

      • (左)
        • MNIST \text{MNIST} MNIST 训练模型,然后用 Gibbs \text{Gibbs} Gibbs 采样进行采样。
        • 每一列是一个单独的 Gibbs \text{Gibbs} Gibbs 采样过程。
        • 每一行表示另一个 1000 步后 Gibbs \text{Gibbs} Gibbs 采样的输出。
        • 连续的样本之间彼此高度相关。
      • (右)
        • 对应的权重向量。
        • 将本图结果与线性因子模型 - 稀疏编码篇 - 图例1中描述的线性因子模型的样本和权重相比。
        • 由于 RBM \text{RBM} RBM的先验 p ( h ) p(\boldsymbol{h}) p(h) 没有限制为因子,这里的样本表现得更好。
        • 采样时 RBM \text{RBM} RBM能够学习到哪些特征需要一起出现。
        • 另一方面说, RBM \text{RBM} RBM后验 p ( h ∣ v ) p(\boldsymbol{h} \mid \boldsymbol{v}) p(hv) 是因子的,而稀疏编码的后验并不是,所以在特征提取上稀疏编码模型表现得更好。
        • 其他的模型可以使用非因子的 p ( h ) p(\boldsymbol{h}) p(h) 和非因子的 p ( h ∣ h ) p(\boldsymbol{h} \mid \boldsymbol{h}) p(hh)
        • 图片的复制经过 LISA (2008) \text{LISA (2008)} LISA (2008) 的允许。

  • 由于能量函数本身只是参数的线性函数,很容易获取能量函数的导数。例如,
    ∂ ∂ W i , j E ( v , h ) = − v i h j \frac{\partial}{\partial W_{i,j}}E(\textbf{v},\textbf{h})=-\text{v}_i\text{h}_j Wi,jE(v,h)=vihj — 公式6 \quad\textbf{---\footnotesize{公式6}} 6
  • 这两个属性,高效的 Gibbs \text{Gibbs} Gibbs 采样和导数计算,使训练过程非常方便。在后续篇章:面对配分函数中,我们将看到,可以通过计算应用于这种来自模型样本的导数来训练无向模型。
  • 训练模型可以得到数据 v \boldsymbol{v} v 的表示 h \boldsymbol{h} h。我们可以经常使用 E h ∼ p ( h ∣ v ) [ h ] \mathbb{E}_{\textbf{h}\sim p(\textbf{h}\mid\boldsymbol{v})}[\boldsymbol{h}] Ehp(hv)[h] 作为一组描述 v \boldsymbol{v} v 的特征。
  • 总的来说, RBM \text{RBM} RBM展示了典型的图模型深度学习方法:结合由矩阵参数化的层之间的高效相互作用通过多层潜变量完成表示学习。
  • 图模型的语言为描述概率模型提供了一种优雅、灵活、清晰的语言。在前面的章节中,我们使用这种语言,以其他视角来描述各种各样的深概率模型。

总结

深度学习中的结构化概率模型深度学习方法,通过构建复杂的图结构来捕捉变量间的非线性相互作用。这些方法不仅利用分布式表示的思想,还通过引入大量潜变量来增强模型的表达能力。与传统的图模型相比,深度学习模型在设计上更加灵活,能够处理更加复杂的问题。在深度学习中,模型的深度并非仅由计算图决定,而是根据图模型中潜变量到可观察变量的最短路径来定义。此外,深度学习模型还采用了高效的数值计算技术和优化算法,以加速模型的训练和推断过程。通过这些深度学习方法,结构化概率模型在图像识别、语音识别、自然语言处理等多个领域取得了显著进展,为人工智能的发展注入了新的活力。

往期内容回顾

应用数学与机器学习基础 - 概率与信息论篇
深度学习中的结构化概率模型 - 从图模型中采样篇
线性因子模型 - 稀疏编码篇

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/887368.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Spring Boot ⽇志

目录 1.⽇志使⽤ 2.⽇志级别 3.⽇志配置 3.1配置⽇志级别 3.2⽇志持久化 3.3配置⽇志⽂件分割 4.更简单的⽇志输出 1.⽇志使⽤ 在使用之前我们先来了解一下为什么要使用? ⽇志的⽤途 1.系统监控 我们可以通过⽇志记录这个系统的运⾏状态,对数…

20款奔驰CLS300升级原厂抬头显示HUD 23P智能辅助驾驶 触摸屏人机交互系统

以下是为您生成的一份关于 18 款奔驰 CLS 老款改新款的改装文案: 18 款奔驰 CLS 老款改新款:科技升级,畅享极致驾驶体验 在汽车改装的世界里,每一次的升级都是对卓越的追求。今天,让我们一同探索 18 款奔驰 CLS 老款改…

在登陆功能中添加Redis缓存

目录 基于Redis实现短信登录 实现流程图 实现代码 解决登录状态刷新问题 初始方案思路: 实现代码 发送验证码 登陆实现 如果是新用户则自动创建 运行测试 基于Redis实现短信登录 实现流程图 实现代码 Overridepublic Result login(LoginFormDTO loginForm…

Thinkphp/Laravel旅游景区预约系统的设计与实现

目录 技术栈和环境说明具体实现截图设计思路关键技术课题的重点和难点:框架介绍数据访问方式PHP核心代码部分展示代码目录结构解析系统测试详细视频演示源码获取 技术栈和环境说明 采用PHP语言开发,开发环境为phpstudy 开发工具notepad并使用MYSQL数据库…

【深度学习】— 多层感知机介绍、 隐藏层、从线性到非线性、线性模型的局限性

【深度学习】— 多层感知机介绍 4.1 多层感知机4.1.1 隐藏层线性模型的局限性引入隐藏层 4.2 从线性到非线性线性组合的局限性引入非线性堆叠更多隐藏层 4.1 多层感知机 在第 3 节中,我们介绍了 softmax 回归,并实现了其从零开始的实现和基于高级 API 的…

如何在dblp官网下载外文文献

文章目录 零、dblp官网一、直接下载pdf二、Zotero 零、dblp官网 ①老域名:https://dblp.uni-trier.de/ ②简化域名:dblp.org 一、直接下载pdf 1.举例,搜索 image matching 2.直接点击红色的PDF按钮 (可能会因为卡,点了没反应。…

No.3 笔记 | Web安全基础:Web1.0 - 3.0 发展史

大家好!作为一个喜欢探索本质的INTP,我整理了一份简明易懂的Web安全笔记。希望能帮助你轻松掌握这个领域的核心知识。 这份笔记涵盖了Web发展的历程,从静态的Web 1.0到智能化的Web 3.0。我们将探讨URL和HTTP协议,揭示它们在网络中…

24-10-2-读书笔记(二十二)-《契诃夫文集》(一)上([俄] 契诃夫 [译] 汝龙)啊!真想生活。

文章目录 《契诃夫文集》(一)上([俄] 契诃夫 [译] 汝龙 )早期生活——塔甘罗格(人物家庭简介)学生时期——莫斯科(写作与学习)流浪时期——哈萨林(游历与流浪&#xff09…

Java中的封装、继承、多态

目录 封装 概念 包 继承 多态 向上转型 一、直接赋值 二、方法传参 三、返回值 向上转型注意事项 向下转型 格式 重写 重写和重载的区别 动态绑定 静态绑定和动态绑定 封装 概念 简单来说就是套壳屏蔽细节。 举例: 想要访问它们时需要一些“接口”…

Java项目实战II基于Java+Spring Boot+MySQL的大创管理系统(源码+数据库+文档)

目录 一、前言 二、技术介绍 三、系统实现 四、文档参考 五、核心代码 六、源码获取 全栈码农以及毕业设计实战开发,CSDN平台Java领域新星创作者 一、前言 在当前创新创业氛围浓厚的背景下,大学生创新创业项目(简称“大创”&#xff0…

国内旅游:现状与未来趋势分析

在当今社会快速发展的背景下,国内旅游更是呈现出蓬勃的发展态势。中国,这片拥有悠久历史、灿烂文化和壮丽山河的广袤土地,为国内旅游的兴起与发展提供了得天独厚的条件。 本报告将借助 DataEase 强大的数据可视化分析能力,深入剖…

基于SpringBoot的学习资源共享平台

运行环境: jdk8tomcat9mysqlIntelliJ IDEAmavennodejs 设计选用前后端分离的单体架构方式 后端:SpringBootMybatis-PluslogbackElasticsearchRedisMySQLJwtsmtp阿里云OSS 前端:WebPackVueJsAnt Designaxios 主要模块:反馈管理、资源管理、…

【最新】微信小程序连接onenet——stm32+esp8266+onenet实现查看温湿度,控制单片机

微信小程序——stm32esp8266onenet实现查看温湿度,控制单片机 (最新已验证)stm32 新版 onenet dht11esp8266/01s mqtt物联网上报温湿度和控制单片机(保姆级教程) :↓↓👇 👇 👇 &#x1f447…

unreal engine5制作动作类游戏时,我们使用刀剑等武器攻击怪物或敌方单位时,发现攻击特效、伤害等没有触发

UE5系列文章目录 文章目录 UE5系列文章目录前言一、问题分析二、解决方法1. 添加项目设置碰撞检测通道2.玩家角色碰撞设置3.怪物角色碰撞预设 最终效果 前言 在使用unreal engine5制作动作类游戏时,我们使用刀剑等武器攻击怪物或敌方单位时,发现攻击特效…

(17)MATLAB使用伽马(gamma)分布生成Nakagami-m分布的方法1

文章目录 前言一、使用伽马分布生成Nakagami分布随机变量的方法一二、MATLAB仿真代码后续 前言 MATLAB在R2013a版本中引入Nakagami分布对象,可以用来生成Nakagami随机变量。但是在更早的MATLAB版本中,并没有可以直接生成 Nakagami分布的随机变量的内置的…

51单片机系列-按键检测原理

🌈个人主页:羽晨同学 💫个人格言:“成为自己未来的主人~” 独立按键是检测低电平的。 下面我们来看一张对应的电路原理图: 在这张图当中,P1,P2,P3内部都上拉了电阻,但是P0没有&am…

一款基于.NET开发的简易高效的文件转换器

前言 今天大姚给大家分享一款基于.NET开发的免费(GPL-3.0 license)、简易、高效的文件转换器,允许用户通过Windows资源管理器的上下文菜单来转换和压缩一个或多个文件:FileConverter。 使用技术栈 ffmpeg:作为文件转换…

知识图谱入门——10:使用 spaCy 进行命名实体识别(NER)的进阶应用:基于词袋的实体识别与知识抽取

在构建知识图谱的过程中,如何准确地识别和提取实体是关键。spaCy 提供了强大的命名实体识别(NER)功能,我们可以结合自定义规则和工具来实现更精准的实体抽取。本文将详细探讨如何在 spaCy 中实现自定义实体抽取,包括使…

【Nacos 架构 原理】服务发现模块之Nacos注册中心服务数据模型

文章目录 服务(Service)和服务实例(Instance)定义服务服务元数据定义实例实例元数据持久化属性 集群定义集群 生命周期服务的生命周期实例的生命周期集群的生命周期元数据的生命周期 服务(Service)和服务实…

[Meachines] [Easy] Sea WonderCMS-XSS-RCE+System Monitor 命令注入

信息收集 IP AddressOpening Ports10.10.11.28TCP:22,80 $ nmap -p- 10.10.11.28 --min-rate 1000 -sC -sV PORT STATE SERVICE VERSION 22/tcp open ssh OpenSSH 8.2p1 Ubuntu 4ubuntu0.11 (Ubuntu Linux; protocol 2.0) | ssh-hostkey: | 3072 e3:54:…