人工智能---D分离
D分离(D-Separation)是一种用来判断变量是否条件独立的图形化方法。相比于非图形化方法,D-Separation更加直观,且计算简单。对于一个DAG(有向无环图)E,D-Separation方法可以快速的判断出两个节点之间是否是条件独立的。
概念:很多的机器学习模型都可以用概率的角度去解释,其中一类重要的模型就是概率图模型,而是概率图模型的灵魂就是模型变量间的条件独立性。 因为有了独立性,才有了各种不同的概率图模型,比如LDA,HMM等等模型。在概率图中,变量间的独立性是怎么体现的呢?D-分离准则就是一种简单的技巧去判断一个概率图中的独立性的。
简单的说,如果在概率图模型中,比如说X,Y两个节点没有边,使得X和Y之间肯定存在某种独立性,这种独立性可以是在某个子集Z的条件下使得他们独立,也可能是他们两个本身就是独立的,这时我们称X,Y之间是D-分离的。现在先给出D-分离的准则:
定义: 当路径p被结点集Z,d-分离(或被blocked掉)时,当且仅当以下条件成立:
① 若p包含形式如下的链i->m->j 或i<-m->j,则结点m在集合Z中。
② 若p中包含collider(碰撞点)i->m<-j,则结点m不在Z中且m的子代也不在Z中。
更具体地讲,如果Z将X和Y d-separate,当且仅当Z将X,Y之间的每一条路径都block掉。
接下来逐步的介绍上述的准则,我们可以拆分成3个规则来考虑:
首先,这里我们先说明一下path,我们说两个结点之间的path的时候是不管他们之间边的方向的。
没有条件集的独立性
规则:如果x到y的任一path(路径)都经过collider(碰撞点),则x和y独立。注意,这里的路径是忽略边的方向的,而碰撞点是指有多个箭头指向的它的节点,即类似于下图的A->B<-C
head-to-head:A,C 独立

如果这个模型一旦在那里面见到了,认为他们是联通的,就认为他们是独立的,
 但是如果它们的中心节点B 属于条件的一部分,那就和他们的原先属性相反了,他们就是不联通的
 就变成了有独立性的了。
规则2:当x到y的之间的任一路径都经过Z中的节点,且Z并不包含碰撞点或碰撞点的子代,则x和y独立。
tail-to-tail:A<-B->C: A,C并不独立

head-to-tail :A->B->C:A、C并不独立

注意, 如果这两个模型一旦在那里面见到了,就认为他们是联通的,即认为他们是不独立的,
 但是如果它们的中心节点B 属于条件的一部分,那就和他们的原先属性相反了,他们就是不联通的
 就变成了有独立性的了。
实例:

1. 
 
2. 
 
3. 
 
4. 
相关文章:
 
人工智能---D分离
D分离(D-Separation)是一种用来判断变量是否条件独立的图形化方法。相比于非图形化方法,D-Separation更加直观,且计算简单。对于一个DAG(有向无环图)E,D-Separation方法可以快速的判断出两个节点…...
 
java spring cloud 企业工程项目管理系统源码-全面的工程项目管理
 工程项目管理系统是指从事工程项目管理的企业(以下简称工程项目管理企业)受业主委托,按照合同约定,代表业主对工程项目的组织实施进行全过程或若干阶段的管理和服务。 如今建筑行业竞争激烈,内卷严重,…...
 
2023最新软件测试面试题【1000道题含答案】
1、自动化代码中,用到了哪些设计模式? 单例设计模式 工厂模式PO设计模式数据驱动模式面向接口编程设计模式 2、什么是断言( Assert) ? 断言Assert用于在代码中验证实际结果是不是符合预期结果,如果测试用例执行失败会抛出异常并提供断言日志 3、什么是web自动化测…...
 
【目标跟踪】MOT数据集GroundTruth可视化
MOT数据集格式简介 MOT15数据集下载:https://pan.baidu.com/s/1foGrBXvsanW8BI4eybqfWg?pwd8888 以下为一行gt示例: 1,1,1367,393,73,225,1,-1,-1,-1 各列数据对应含义如下 <frame>,<id>,<bb_left>,<bb_top>,<bb_width&g…...
 
软件测试的概念与过程----学习软件测试前的思考
软件测试的概念与过程----学习软件测试前的思考 1、软件测试工作是做什么的?2、那我做软件测试拿到一个软件产品我应该从哪里测试,怎末开始工作?3、测试早做好还是晚一些做好?4、软件测试能将软件测试的一点问题都没有嘛ÿ…...
 
Streamlit基础教程
streamlit是什么 streamlit是一个开源的python库,它能够快速的帮助我们创建定制化的web应用,而且还非常便于和他人分享,特别是在机器学习和数据科学领域。整个过程不需要你了解任何前端的知识,包括html、css、javascript等&#x…...
 
内网穿透技术
文章目录 前言1. 安装JAVA2. MCSManager安装3.局域网访问MCSM4.创建我的世界服务器5.局域网联机测试6.安装cpolar内网穿透7. 配置公网访问地址8.远程联机测试9. 配置固定远程联机端口地址9.1 保留一个固定tcp地址9.2 配置固定公网TCP地址9.3 使用固定公网地址远程联机 转载自内…...
计算机网络笔记:内部网关协议RIP
文章目录 1.协议RIP的工作原理2.距离向量算法3.坏消息传播得慢 1.协议RIP的工作原理 RIP的地位:RIP是内部网关协议IGP中最先得到广泛使用的协议,其中文译名为路由信息协议。 RIP概述: RIP是一种分布式的基于距离向量的路由选择协议&#x…...
 
基于Java学生信息管理系统设计实现(源码+lw+部署文档+讲解等)
博主介绍: ✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战 ✌ 🍅 文末获取源码联系 🍅 👇🏻 精…...
 
PHP简单入门
PHP是一种流行的服务器端编程语言,被广泛用于Web开发。许多著名的网站和应用程序都是使用PHP编写的,例如Facebook、Wikipedia和WordPress等。本篇文章将为您介绍如何入门PHP编程。 环境配置 在开始使用PHP之前,需要先配置开发环境。要在本…...
java 客户端操作HDFS
1、windows上部署hadoop包 部署包win版本 源码包zip包 lib整合:共121个jar包 $HADOOP_PREFIX/share/hadoop/{common,hdfs,mapreduce,yarn,tools}/{lib,.}*.jar 将windows版本hadoop/bin/hadoop.dll 放到c:/windows/system32下 2、windows环境变量配置 hadoop的…...
区块链中的共识机制以及共识算法
目录 什么是共识 什么是共识机制 共识机制类型 1、基于工作证明(Proof of Work PoW)...
【计算机网络自顶向下】DNS简答题总结
主要功能:将域名解析为主机能识别的IP地址 DNS实现的功能 主机到IP地址的转换主机别名的转换邮件服务器别名负载均衡 DNS实现冗余服务器:一个IP地址集合对应同一个规范主机名 域名系统 分布式数据库:一个由多层DNS服务器实现的分布式数据库应…...
 
【QQ界面展示-实现自动回复 Objective-C语言】
一、刚才咱们监听键盘弹出事件,是怎么监听的, 1.监听键盘弹出事件的步骤 1)首先,在控制器的viewDidLoad方法中,创建一个NotificationCenter对象啊 2)通过center,让当前控制器的这个方法,监听这个通知, 3)然后,我们在这个通知里面,获取到键盘的Y值, 4)对我们的…...
-bash: ssh: command not found
解决方法: 命令安装SSH: yum -y install openssh-clients [roothad2 ~]# yum -y install openssh-clients Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: mirrors.qlu.edu.cn * extras: mirrors.ustc.edu.cn …...
 
ansible的部署和模块
一、 ansible 的概述 1、ansible简介 Ansible是一款为类Unix系统开发的自由开源的配置和自动化工具。 它用Python写成,类似于saltstack和Puppet,但是有一个不同和优点是我们不需要在节点中安装任何客户端。 它使用SSH来和节点进行通信。Ansible基于 …...
 
nginx的优化
目录 一 隐藏版本号在网页上面有nginx的版本号会让别人攻击你的服务器 二 nginx的优化之日志分割 三 nginx的优化之页面压缩 四 连接超时 五 nginx的并发设置 七总结:nginx的优化 一 隐藏版本号在网页上面有nginx的版本号会让别人攻击你的服务器 如图所示 第一种方法是关…...
 
MySQL8超详细安装教程
MySQL的下载与安装 一、MySQL8下载 MySQL Community Server 社区版本,开源免费,自由下载,但不提供官方技术支持,适用于大多数普通用户。 MySQL Enterprise Edition 企业版本,需付费,不能在线下载&#x…...
 
【FPGA入门】第五篇、按键消抖
目录 第一部分、按键抖动现象 第二部分、消抖思路及代码 1、简单的按键消抖思路 2、实际按键消抖思路 3、实际按键消抖模块代码 第三部分、总结 第一部分、按键抖动现象 只要学习过单片机的都会知道,按键在按下去和松开的那个瞬间都存在抖动,在单片…...
 
【MySql】MySql的事务基础篇
文章目录 CURD加控制什么是事物为什么会出现事务事务的版本支持事务的提交方式 CURD加控制 模拟一个买票系统的场景如下所示: MySQL注定会被多个客户端进行访问的,这个是肯定的,存储的都是数据,数据在上层可能有一个线程在用&…...
SkyWalking 10.2.0 SWCK 配置过程
SkyWalking 10.2.0 & SWCK 配置过程 skywalking oap-server & ui 使用Docker安装在K8S集群以外,K8S集群中的微服务使用initContainer按命名空间将skywalking-java-agent注入到业务容器中。 SWCK有整套的解决方案,全安装在K8S群集中。 具体可参…...
golang循环变量捕获问题
在 Go 语言中,当在循环中启动协程(goroutine)时,如果在协程闭包中直接引用循环变量,可能会遇到一个常见的陷阱 - 循环变量捕获问题。让我详细解释一下: 问题背景 看这个代码片段: fo…...
 
Zustand 状态管理库:极简而强大的解决方案
Zustand 是一个轻量级、快速和可扩展的状态管理库,特别适合 React 应用。它以简洁的 API 和高效的性能解决了 Redux 等状态管理方案中的繁琐问题。 核心优势对比 基本使用指南 1. 创建 Store // store.js import create from zustandconst useStore create((set)…...
 
Python:操作 Excel 折叠
💖亲爱的技术爱好者们,热烈欢迎来到 Kant2048 的博客!我是 Thomas Kant,很开心能在CSDN上与你们相遇~💖 本博客的精华专栏: 【自动化测试】 【测试经验】 【人工智能】 【Python】 Python 操作 Excel 系列 读取单元格数据按行写入设置行高和列宽自动调整行高和列宽水平…...
【算法训练营Day07】字符串part1
文章目录 反转字符串反转字符串II替换数字 反转字符串 题目链接:344. 反转字符串 双指针法,两个指针的元素直接调转即可 class Solution {public void reverseString(char[] s) {int head 0;int end s.length - 1;while(head < end) {char temp …...
 
ElasticSearch搜索引擎之倒排索引及其底层算法
文章目录 一、搜索引擎1、什么是搜索引擎?2、搜索引擎的分类3、常用的搜索引擎4、搜索引擎的特点二、倒排索引1、简介2、为什么倒排索引不用B+树1.创建时间长,文件大。2.其次,树深,IO次数可怕。3.索引可能会失效。4.精准度差。三. 倒排索引四、算法1、Term Index的算法2、 …...
Swagger和OpenApi的前世今生
Swagger与OpenAPI的关系演进是API标准化进程中的重要篇章,二者共同塑造了现代RESTful API的开发范式。 本期就扒一扒其技术演进的关键节点与核心逻辑: 🔄 一、起源与初创期:Swagger的诞生(2010-2014) 核心…...
2023赣州旅游投资集团
单选题 1.“不登高山,不知天之高也;不临深溪,不知地之厚也。”这句话说明_____。 A、人的意识具有创造性 B、人的认识是独立于实践之外的 C、实践在认识过程中具有决定作用 D、人的一切知识都是从直接经验中获得的 参考答案: C 本题解…...
Java + Spring Boot + Mybatis 实现批量插入
在 Java 中使用 Spring Boot 和 MyBatis 实现批量插入可以通过以下步骤完成。这里提供两种常用方法:使用 MyBatis 的 <foreach> 标签和批处理模式(ExecutorType.BATCH)。 方法一:使用 XML 的 <foreach> 标签ÿ…...
 
【C++进阶篇】智能指针
C内存管理终极指南:智能指针从入门到源码剖析 一. 智能指针1.1 auto_ptr1.2 unique_ptr1.3 shared_ptr1.4 make_shared 二. 原理三. shared_ptr循环引用问题三. 线程安全问题四. 内存泄漏4.1 什么是内存泄漏4.2 危害4.3 避免内存泄漏 五. 最后 一. 智能指针 智能指…...
