干货 | 非常详细的有向图模型与无向图模型原理总结

数据结构邻接矩阵详解:从原理到C语言实现与图算法应用 邻接矩阵是图论与数据结构中用于表示顶点间连接关系的基础数据结构,其核心原理是使用二维数组来存储图中顶点之间的边或权值。这种表示方法直观体现了图的数学本质,便于进行快速的边存在性查询(O(1)时间复杂度)和顶点的度计算。在工程实践中,邻接矩阵是实现众多经典图算法的基石,尤其适用于稠密图。其技术价值在于为深度优先搜索(DFS)、广度优先搜索(BFS)、最小生成树(Prim算法)和最短路径(Floyd算法)等算法提供了清晰、高效的底层支持。应用场景广泛,从社交网络分析到路径规划、状态机建模都离不开对图的表示与操作 阅读详情
AI摘要

本文深入浅出地介绍了图模型在机器学习中的应用,探讨了有向图模型和无向图模型的条件独立性假设,以及如何利用这些模型简化高维特征空间的联合概率建模。通过贝叶斯网络、隐马尔科夫模型和马尔科夫随机场等实例,展示了图模型在实际项目中的强大功能。

本文是小编结合了多个图模型的经典文章所作的一个总结,对于一谈到图模型和马尔科夫知识就产生厌恶的同学,本文会带你循序渐进的去理解图模型的算法原理。

目录

1. 为什么要用有向图模型和无向图模型

2. 有向图模型的条件独立概率表示方法

3. 无向图模型的条件独立概率表示方法

4. 有向图模型举例——贝叶斯网络

5. 有向图模型举例——隐马尔科夫模型

6. 无向图模型举例——马尔科夫随机场

7. 小结

概率建模在机器学习领域有着广泛的应用,如贝叶斯分类、隐马尔可夫模型和条件随机场。

 

在实际的人工智能项目中,我们常常面对高维空间的特征,若以概率的角度去构建机器学习模型,你首先需要做的就是分析高维特征空间的联合概率

举例来说,对于K维随机向量,其联合概率为高维空间的分布,一般难以建模。假设每个随机变量为离散值并有m个取值,下面开始介绍如何估计随机向量X的联合概率P(X)。

1)最直接的方法是分析随机变量中所有可能的组合,每个随机变量有m个取值,K维随机向量X共有的可能取值,若要通过该方法正确的构建模型,则需要大量的训练数据。若每一个可能的随机向量X的联合分布用一个参数表示,那么构建该模型需要参数,当m=2,K=100时,模型参数的大小约为,这大大超出了目前计算机的存储能力。这里需要提醒的一点是随机向量X共有的可能取值,而模型参数个数是的原因是所有可能取值的概率和等于1,即自由度降低了1。

2)我们对模型结构进行独立性假设,假设随机变量是相互独立的,那么随机向量X的联合概率为:

独立性假设相比于第一种方法大大的减少了模型参数个数,如m=2,K=100时,模型参数个数是100,第一种方法的模型参数约为。

3)针对前两种估计联合概率方法的缺点,我们对模型结构进行了条件独立性假设,如果在给定的条件下相互独立,则联合概率有:

上式是条件独立性的一个例子,独立性假设大大的减少了模型参数量,举个例子来说:

假设有四个二值变量,用第一种方法计算联合概率,那么模型需要个参数。

假设随机变量存在条件独立的关系,已知时,和独立,则有:

已知和时,和独立,则有:

那么其联合概率p(x)可以分解为:

可得:

我们逐一分析上式所需要的模型参数:

式所需要的模型参数:

式所需要的模型参数:

式所需要的模型参数:

式所需要的模型参数:

由上面每一式的分析可知,联合概率需要9个模型参数,相比于第一种方法,大大的减少了模型参数。因此在实际项目实践中,我们常常会对特征空间作条件独立性假设。

基于条件独立性假设的优点,实际应用中的概率模型大多采用这一假设,图模型以一种可视化的方式描述变量间复杂的条件独立关系,并可以将一个复杂的联合概率分解为多个简单条件概率的乘积。图模型包含有向图模型和无向图模型,这也就是我们为什么要用有向图模型和无向图模型的原因。

2.有向图模型的条件独立概率表示方法

有向图结构包含了有向边(Edge)和节点(随机变量集合V),有向边连接各节点,表示随

机变量间的条件独立关系。如下图,随机变量集,有向边表示随机变量间的条件独立关系。

有向图结构包括下面三个基本结构:

1)同父结构

随机变量间的条件独立关系:给定变量,变量和变量相互独立。

即:

2)顺序结构

随机变量间的条件独立关系:给定变量的值,变量和变量相互独立。

即:

3)V型结构

随机变量间的条件独立关系:若变量未知,则变量和变量相互独立。

即:

给定一个复杂有向图,如何分析变量间的条件独立关系,如下图:

我们采用“有向分离”分析变量间的条件独立关系:

1) 找出有向图的所有V型结构,连接V型结构的所有父节点;

2)将所有有向边改为无向边;

3)若去掉某一节点,另两个节点和是不连通的,称变量和在

已知的条件下是相互独立的,即:

如,等。

3. 无向图模型的条件独立概率表示方法

无向图的边是无方向的,如下图:

对应的条件独立关系为:随机变量组和在的条件下是相互独立的。

即:

4.无向图模型的概率因子分解算法

首先介绍下无向图中的团与最大团的定义,无向图G中任何两个均有边连接的结点子集称为团。若C是无向图G的一个团,并且不能加进任何一个G的结点使其成为一个更大的团,则称此C为最大团。

根据团和最大团的定义,下图中由边连接的两个结点组成的团有4个:

最大团有2个:

不是团的原因是结点和没有边连接。

无向图模型的联合概率可分解为多个最大团上随机变量组的势函数乘积,称为无向图模型的

概率因子分解。

步骤为:

1)找到无向图结构中的最大团集;

2)求每个最大团的势函数;

3)所有势函数相乘并归一化;

【例】用概率因子分解算法求解随机变量组的联合概率:

根据定义可得此图包含三个最大团:

对应的势函数为:

因此随机变量组X的联合概率为:

其中Z是规范化因子,使联合概率的范围为[0,1],即:

上式的为最大团的随机变量组。

5.有向图模型举例:朴素贝叶斯分类算法

朴素贝叶斯分类算法利用了条件独立性假设去建模,如下图:

根据有向图的条件独立性假设,即:

通过最大似然方法对上式建模,求解模型参数。

利用上式模型对输入的特征空间进行分类,即:

6.有向图模型举例:隐马尔科夫模型

隐马尔科夫模型常用于语音识别和语义标记,有如下模型图:

随机变量组和随机变量组的联合概率为:

其中是初始状态概率分布,是状态转移概率,是观测概率,深入理解隐马尔可夫模型请参考此文。

上式联合概率的推导是基于条件独立概率进行的,用“有向分离”算法去分析变量间的条件独立关系,如:

7.无向图模型举例:马尔科夫随机场

马尔科夫随机场的核心思想是当前观测变量的值受到当前状态和其他状态的影响,用伊辛铁磁(Ising ferromagnetic model)模型的例子阐述马尔科夫随机场的场景问题。

 

伊辛磁铁模型是一个空间随机场,每个原子受到两种力,一种是周围原子的力和外场的力,一种是环境噪声的扰动而产生随机偏转,即每个原子的方向受到这两种力的影响。为了便于介绍,本节的模型不考虑温度的影响。

假设我们用变量表示每个原子的方向,如下图:

根据铁磁模型中原子受到力的描述,所有原子的联合概率表示为:

其中Z含义为规范化因子。

上式第一项的表示原子受到周围原子力的影响,当时,相邻的原子倾向于有相同的旋转方向;时,相邻的原子倾向于有相反的旋转方向。

第二项的表示原子受到外场的力。

无磁场时的原子方向:

外部磁场作用后的原子方向:

下篇原创文章会有马尔科夫随机场原理的详细介绍,请持续关注小编吧。

8.小结

图模型可视化了多维随机变量间的条件独立关系,图模型的一个基础问题是如何求随机变量组的联合概率,文章结构清晰,希望初学者根据本文的内容能够理解图模型的算法思想。

欢迎扫码关注:

浅谈概率图模型(二):无向图模型 文章目录1.引入无向图1.1有向图的困境1.2有向图和无向图得粗略对比2. 无向图的一些条件独立性质2.1 全局马尔可夫性质(关键性质)2.2 无向图的局部马尔科夫性质2.3 成对马尔科夫性质2.4 性质总结3. 无向图模型的参数3.1 无向图模型的一个弊端3.2 解决方案3.2.1 团与最大团的定义3.2.2 势函数(potential function)3.2.3 Hammersley-Cli... 阅读详情

相关推荐

1004. 有向图边的分类

题目 Time Limit: 1sec Memory Limit:256MB Description 输入一个有向图,从顶点1开始做dfs对边进行分类。 Input 输入的第一行包含两个整数n和m,n是图的顶点数,m是边数。1<=n<=100,0<=m<=10000。 接下来的m行,每行是一个数对u v,表示存在有向边(u,v)。顶点编号从1开始。 接下来的1行,包含...

zz9629的博客 1252

算法:图模型

现实场景 图模型在现实中有很多应用场景,例如交通网络、商业交易、通信网络等。一般有四种比较重要的图模型:无向图、有向图、加权图和加权有向图。所谓图是由一组顶点和能够将两个顶点相连接的边构成。 图的相关概念 如果两个顶点通过一条边相连,我们称这两个顶点相邻。子图是由一幅图所有边的子集构成。需要注意的是很多具体问题中是需要识别各种类型的子图。路径是由边顺序连接的一系列顶点。 连通图:如果从这幅图的任意一个顶点都可以找到一条路径达到另外一个顶点,那这幅图是连通图。一个非连通图是由多个连通图构成,每一个连通图都是

algTopD的博客 3202

避坑指南:海康威视Java SDK在SpringBoot中的5个常见错误及解决方案

本文深入剖析了在SpringBoot项目中集成海康威视Java SDK进行二次开发时常见的五大陷阱,包括动态库加载、JNA内存管理、时间处理、多线程回调及Linux部署问题,并提供了详细的解决方案与最佳实践,帮助开发者高效避坑,实现稳定可靠的设备集成。

yhn456789的博客 734

一. 图模型(graphical model, GM)的表示

<br />图模型(graphical model)是一类用图来表示概率分布的一类技术的总称。<br />它的主要优点是把概率分布中的条件独立用图的形式表达出来,从而可以把一个概率分布(特定的,和应用相关的)表示为很多因子的乘积,从而简化在边缘化一个概率分布的计算,这里的边缘化指的是给定n个变量的概率分布,求取其中m个变量的概率分布的计算(m<n)。<br />图模型主要有两大类,一类是贝叶斯网络(又称有向图模型);另外一类是马尔可夫网络(又称无向图模型)。<br />谈到一个图模型,主要有三个主要的关注点

Xianling Mao的专栏 3万+

养生主——离散数学篇

五行八卦 《周易》有八卦: 乾为天,坤为地; 坎为水,离为火; 震为雷,艮为山; 巽为风,兑为泽。 八卦进而有五行: 木生火,火生土,土生金,金生水,水生木; 木克土,土克水,水克火,火克金,金克木。 五行相生相克,若将这五行视为五个元素,其相生相克关系用有向连线表示,则其构成的图为五阶竞赛图(即其基图为五阶无向完全图)。 中医入门便是将人体脏腑化为五行: 肝胆免疫系统、筋、目属木,与其对应的绿色...

道法自然 557

SpyGlass Lint脚本实战:如何用TCL自动化RTL代码检查(附完整配置模板)

本文详细介绍了如何利用TCL脚本实现SpyGlass Lint工具的自动化RTL代码检查。通过构建模块化、工程化的脚本框架,文章提供了从环境搭建、核心配置、规则定制到豁免管理的完整实战指南,并附有可复用的配置模板,旨在帮助IC设计工程师构建高效、一致的代码质量检查流水线。

weixin_29204205的博客 136

深度学习的图原理

点击上方“小白学视觉”,选择加"星标"或“置顶”重磅干货,第一时间送达1. 图论(Graph Theory)1.1 什么是图(graph)?在图论的上下文中,图是一种结构化数据类型,具有节点(nodes)(保存信息的实体)和边缘(edges)(连接节点的连接,也可以保存信息)。图是一种数据结构的方式,但它本身可以是一个数据点。图是一种非欧几里得数据类型,这意味着它们存在于三维空间,不像其他数据类...

小白学视觉 170

告别环境配置烦恼:Docker容器化一站式搭建Zephyr RTOS开发环境

本文详细介绍了如何使用Docker容器化技术一站式搭建Zephyr RTOS开发环境,彻底解决环境配置不一致、依赖冲突等难题。通过预构建镜像、数据卷挂载和实战编译示例,帮助开发者快速获得隔离、一致且可复现的嵌入式开发环境,大幅提升开发效率和团队协作体验。

n8m7b6v5c4的博客 189

louvain算法_干货分享|全面介绍金融风控反欺诈之图算法

分享嘉宾: 张行军 Abakus 高级风控算法经理内容来源: DataFun AI+ Talk出品社区: DataFun注:欢迎转载,转载请注明出处。先介绍下金融借贷业务流程:用户前来申请借贷,会先经过欺诈识别,把欺诈团伙和主观欺诈的个人拒绝掉,然后对通过的人做信用评估,最后根据额度模型,算出利润最大化时放款金额。刚才提到了团队欺诈,举个真实的例子。宜人贷在他们的财报中公布的,他们被一个团伙成功撸...

weixin_39834090的博客 1927

Modem2G/3G/4G/5G:RFFE Driver(射频前端驱动):高通平台GRFC配置方法

文 | GentlemanTsao 文章目录前言1.什么是GRFC2.GRFC的配置流程概览3.msm_sig_info的配置与分析msm_sig_info Table位置:msm_sig_info Table示例:Table元素解读:rfc_msm_sig_info_type结构体signal typemsm_gpio |grfc_num:GPIO到GRFC的映射output_typefunction_select4._sig_cfg的配置与分析_sig_cfg table位置:_sig_cfg tabl

GentelmanTsao的博客 7315

生成式深度学习(第二版)-第一章-Conda环境下TensorFlow和Keras的安装和配置

按照书籍中的代码运行提示,需要配置Docker。个人的机器上正好有 conda4.14.0,索性就在本地环境进行配置。

GarryWang1248的博客 399

origin如何将多个曲线放在一张图_解密!SCI论文中那些高大上的插图是如何绘制的...

超长干货文章预警!!!多图杀猫!!! 理工科菜鸟级Python 有个著名的库叫 Matplotlib, 主要用来数据作图,但本身带有层次较低的 API, 原则上可以用来画任意种类的图。这玩意自带 TeX 数学语法。数据作图效果这样:要是更加离谱点可以这样,我自己做过的,其实也没有多难,自带批量操作:Gnuplot. 纯画图方面与 Matplotlib 不相上...

weixin_39530833的博客 3969

1、网站可靠性工程(SRE):原理、实践与转型指南

本文深入探讨了网站可靠性工程(SRE)的核心原理、实践方法以及组织转型策略。从SRE的基本概念如服务水平指标(SLI)、服务水平目标(SLO)和错误预算入手,详细解析了如何通过SRE实现产品开发、运营和管理团队的高效协作。此外,还涵盖了SRE的实施步骤,包括现状评估、组织认同、基础设施建设、事件响应、错误预算政策制定以及组织结构设计等内容。最后,文章展望了SRE的未来发展,强调了服务目录、合规监管及SRE文化建设的重要性,为企业的现代化运营体系转型提供了全面指南。

xk7n92h3p5m的博客 147

贝叶斯网络,看完这篇我终于理解了!

点击上方“视学算法”,选择加"星标"或“置顶”重磅干货,第一时间送达作者丨mantch@知乎来源丨https://zhuanlan.zhihu.com/p/7341594...

zandaoguang的博客 6153

FOC高频注入量产级C语言实现方案

高频注入技术是无传感器FOC实现零速和低速控制的关键方法,解决了传统反电动势观测器在低速失效的问题。该技术通过向电机注入高频电压信号,利用永磁同步电机凸极性特性,从高频电流响应中解调出转子位置信息。文章详细介绍了三种主流高频注入方法(旋转电压注入、脉振电压注入和脉振电流注入)的原理及实现流程,重点分析了脉振电压注入的信号处理步骤和位置观测器设计。同时提供了完整的C语言实现代码,包括硬件抽象层、核心算法模块(坐标变换、电流环、SVPWM等)和系统集成方案,并给出量产优化建议和安全保护机制。这套方案适用于要求高

汽车软件开发 795

PCB高速信号换层孔新技术:VECS(Vertical Conductive Structure Technology)解析

摘要:垂直导电结构(VeCS)是一种新型PCB互连技术,由平板信号走线和椭圆形接地层构成半同轴结构,相比传统过孔具有显著优势。通过全波仿真和实测验证,VeCS展现出更好的阻抗连续性、更低的插入损耗和回波损耗,以及优异的串扰抑制能力。其椭圆形接地结构能有效隔离电磁干扰,在相同布线密度下远端串扰比传统过孔降低约50%。VeCS制备工艺与传统PCB工艺兼容,无需新增设备,且能实现更高密度互连。测试结果显示,2.5英寸带状线通道中VeCS结构的信号完整性表现明显优于传统过孔,为高速数字系统提供了更可靠的垂直互连解决

小孟同学的博客 202

本科必学Dijkstra算法被超越!清华段然团队打破图灵奖得主证明的普遍最优性

而更快的最短路径算法,不管是在理论上和实际应用中都有很大意义,参考Dijkstra算法就知道了。去年,图灵奖得主Robert Tarjan及合作者发表的论文证明了Dijkstra算法对于“最短路径排序问题”的普遍最优性,获得了FOCS 2024的最佳论文奖。2022年秋天,他找了三位研究生来帮助解决细节问题,几个月后得到部分解决方案:新算法可以打破任何权重的排序障碍,但仅限于无向图。直到现在清华大学段然团队的新算法打破了这一局面,新算法避免了整体排序,得到了比Dijkstra算法更快的最短路径问题的算法。

阿木寺的博客 359

网络流量异常信息分析方法研究

本课题针对网络安全中网络流量异常的分析方法进行研究,提出一种基于机器学习和深度学习的异常检测算法。该算法采用卷积神经网络(CNN)和长短时记忆神经网络(LSTM)结合的方式,通过训练得到二分类模型,从而实现对网络流量异常的检测。随着互联网的飞速发展,网络攻击事件日益增多,网络安全问题成为了亟待解决的问题之一。常见的网络攻击手段包括 DDoS 攻击、SQL 注入、XSS 攻击等,这些攻击手段可能导致网络系统发生异常,给网络运维、数据安全带来极大的挑战。

肥晨开发的学习之路 1037

精心整理 | 机器学习初学者完全入门指南

目前人工智能(AI)是非常热门的话题,各行各业的产品也尽量与AI挂钩,使产品更具有竞争性和创造性。高级AI程师与调参工程师的最大区别是前者对机器学习算法原理有一定程度的理解,今天小编推荐...

苏克的博客 1028

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

数学大佬的机器学习算法完全入门指南

目前人工智能(AI)是非常热门的话题,各行各业的产品也尽量与AI挂钩,使产品更具有竞争性和创造性。高级AI程师与调参工程师的最大区别是前者对机器学习算法原理有一定程度的理解,今天小编推荐...

涛哥聊Python 811

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

图数据结构核心算法详解:存储、遍历与最短路径

图数据结构是计算机科学中用于建模多对多关系的基础工具,它将实体抽象为顶点,将关系抽象为边,为解决路由规划、社交网络分析、任务调度等复杂关系型问题提供了统一框架。在工程实践中,图的存储方式直接影响算法性能,邻接矩阵适合稠密图,邻接表则更适配稀疏图,合理选型是高效实现的前提。在此基础上,深度优先搜索和广度优先搜索是图遍历的两大基石,Dijkstra算法通过松弛操作解决带权图的最短路径问题,而最小生成树、拓扑排序与关键路径分别应对连通代价、依赖顺序与项目工期等经典场景。掌握这些核心思想,能够帮助开发者从更高维度分

weixin_33483304的博客 168

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

首篇 NLP 领域图神经网络综述:127 页,从图构建到实际应用面面观

点击下面卡片,关注我呀,每天给你送来AI技术干货!选自 | arXiv作者 |Lingfei Wu等转自 | 机器之心编辑 |Panda在 Transformer 推动自然语言处理领域...

zenRRan的博客 502

excel中如何对矩阵得对角线进行求和_实战 | 如何入门图卷积网络GCN

点击上方“计算机视觉life”,选择“星标”快速获得最新干货我们面对的很多数据其实是图(graph),图在生活中无处不在,如社交网络,知识图谱,蛋白质结构等。在2020年这个寒冬,窝在家里的小编终于打算入门GNN(Graph Neural Networks)中的分支:GCN(Graph Convolutional Networks)。图的概念对于图,我们习惯上用表示。这里是图中节点的集合...

weixin_39643338的博客 824

图论最短路径算法全解析:从Dijkstra到A*的工程实践与选型指南

图论是计算机科学中研究图结构及其性质的基础领域,它通过顶点和边抽象表示实体间的关系。最短路径问题是图论的核心应用之一,其核心原理是在带权图中寻找两点间总权重最小的通路,这一原理构成了网络优化、资源调度等众多技术方案的基石。该问题的技术价值在于,它将复杂的现实世界优化问题(如物流配送、网络路由、社交网络分析)转化为可计算的数学模型,为自动化决策提供了高效、精确的算法支持。在工程实践中,针对不同应用场景需选用合适的算法:Dijkstra算法适用于边权非负的单源最短路径问题,是地图导航和网络路由的基石;而A*搜索

weixin_33857679的博客 429
上一篇: 超生动图解LSTM和GRU,一文读懂循环神经网络!
下一篇: 四个小项目完全解读支持向量机 | 文末附代码下载方法
机器学习算法那些事
博客等级 码龄9年 1633粉丝 62原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值