MATLAB激光通信和-积消息传递算法(Python图形模型算法)模拟调制
🎯要点
🎯概率论和图论数学形式和图结构 | 🎯数学形式、图结构和代码验证贝叶斯分类器算法:🖊多类型:朴素贝叶斯,求和朴素贝叶斯、高斯朴素贝叶斯、树增强贝叶斯、贝叶斯网络增强贝叶斯和半朴素贝叶斯 | 🖊多维型:贝叶斯链 | 🖊分层型:贝叶斯网络和链式分类器复合式 | 🖊数学形式、图结构和代码验证贝叶斯分类器算法 | 🎯数学形式、图结构和代码验证隐马尔可夫模型算法 | 🎯数学形式、图结构和代码验证马尔可夫随机场模型算法 | 🎯数学形式、图结构和代码验证贝叶斯网络算法:🖊学习树和有向无环图:Chow-Liu 算法、PC 算法 | 🎯数学形式、图结构和代码验证马尔可夫决策过程算法
🎯算法实现: 🖊结构学习算法:爬坡搜索、树搜索、最大-最小爬坡,穷举搜索 | 🖊参数学习算法:最大似然、贝叶斯估计器、期望最大化 | 🖊概率推理算法:变量消除、置信传播、最大乘积线性规划、取样方式 | 🖊因果推理算法:执行操作、调整套
🎯GPU多线程并行概率模型 | 🎯激光通信和-积消息传递算法模拟调制
📜Python和R和MATLAB图形模型用例
📜Python | R | MATLAB群体消息和遗传病筛选多元统计模型
📜Python神经模型评估微分方程图算法
🍪语言内容分比
🍇Python图挖掘潜在关系
PC 算法利用对撞机和有向无环图的原理来挖掘潜在的前后关系,从而快速消除数据集中的不相关链接。然而,由此产生的因果图通常是完整的部分有向无环图,其特点是边缘方向不确定,而不是确定的有向无环图。
在我的方法中,我使用 PC 算法生成一个图,然后利用 NetworkX 的 is_directed
和 is_directed_acyclic_graph
函数来确定该图是否符合有向无环图的条件。通常情况下,我们不会直接获得有向无环图。为了解决不确定的边,我们可以依靠人工干预或先验知识,尽管这需要额外的努力。
探索从酒类数据集开始,包含 178 个条目和 15 个不同的特征,如酒精、苹果酸和类黄酮。
import utils, pc_algorithm, random, copy, statistics
import pandas as pd
import numpy as np
import networkx as nx
from itertools import product
from pgmpy.estimators import BicScoredata = utils.get_data_from_ucirepo(109)
data.info()labels = data.columns.tolist()
data = np.array(data)
我使用自定义 PC 算法生成完整的部分有向无环图。
graph, sepetated_set = pc_algorithm.pc_get_graph(data)
cpdag_graph = pc_algorithm.pc_apply_rules(graph, sepetated_set)
然后使用 NetworkX 的有向图将完整的部分有向无环图转换为网络图。在此表示中,方向未确定的边标记为红色,突出显示图从完整的部分有向无环图到非有向无环图状态的转变。
network_graph = nx.DiGraph(cpdag_graph)
pos = nx.kamada_kawai_layout(network_graph)
print("Is Directed?: " + str(nx.is_directed(network_graph)))
print("Is DAG?: " + str(nx.is_directed_acyclic_graph(network_graph)))
undirected_edges = {frozenset(i) for i in network_graph.edges() if network_graph.has_edge(*i[::-1])}
edge_colors = ["red" if frozenset(edge) in undirected_edges else "gray" for edge in network_graph.edges()]nx.draw(network_graph, pos,edge_color = edge_colors,width=1,linewidths = 1,node_size = 600,font_size = 6,node_color="pink",alpha=0.9,labels=dict(zip(range(len(labels)), labels)))
当此类边的数量可控时,我们可以从完整的部分有向无环图中枚举所有可能的有向无环图。在本例中,从 128 个潜在配置中,出现了 60 个有效的 有向无环图。
possible_edges = list(product([0, 1], repeat = len(undirected_edges)))
print("All posiible graphs: " + str(len(possible_edges)))dags = []for i in possible_edges:network = nx.DiGraph(cpdag_graph)for j, k in enumerate(i):l = [*list(undirected_edges)[j]][0]m = [*list(undirected_edges)[j]][1]network.remove_edge(l, m)network.remove_edge(m , l)if k == 0:network.add_edge(l, m)else:network.add_edge(m , l)if nx.is_directed_acyclic_graph(network):dags.append(network)print("All DAGs: " + str(len(dags))
下一步是确定这些可能性中最适合的有向无环图。这是使用贝叶斯信息准则实现的,该准则使用 pgmpy 的 BicScore 计算。BIC 得分最低的有向无环图可能是我们数据集底层因果结构的最准确表示。
bic_calculator = BicScore(pd.DataFrame(data))
bics = [bic_calculator.score(i) for i in dags]nx.draw(dags[bics.index(min(bics))], pos,edge_color = edge_colors,width=1,linewidths = 1,node_size = 600,font_size = 6,node_color = "pink",alpha=0.9,labels=dict(zip(range(len(labels)), labels)))
通过这一探索,我们展示了如何将 PC 算法与 NetworkX 结合起来有效地识别复杂数据集中的潜在前后关系。
👉参阅&更新:计算思维 | 亚图跨际
相关文章:

MATLAB激光通信和-积消息传递算法(Python图形模型算法)模拟调制
🎯要点 🎯概率论和图论数学形式和图结构 | 🎯数学形式、图结构和代码验证贝叶斯分类器算法:🖊多类型:朴素贝叶斯,求和朴素贝叶斯、高斯朴素贝叶斯、树增强贝叶斯、贝叶斯网络增强贝叶斯和半朴素…...

初识HTML
一 HTML HTML(Hyper Text Markup Language),超⽂本标记语⾔.超文本:⽐⽂本要强⼤.通过链接和交互式⽅式来组织和呈现信息的⽂本形式.不仅仅有⽂本,还可能包含图⽚,⾳频,或者⾃已经审阅过它的学者所加的评注、补充或脚注等等.标记语言:由标签构成的语⾔。 1.HTML代码是由“标签…...

基于Rspack实现大仓应用构建提效实践|得物技术
一、实践背景 随着项目的逐步迭代,代码量和依赖的逐渐增长,应用的构建速度逐步进入缓慢期。以目前所在团队的业务应用来看(使用webpack构建),应用整体构建耗时已经普遍偏高,影响日常开发测试的使用效率&am…...

什么是MOW,以bitget钱包为例
元描述:MOW凭借其富有创意的故事情节和广阔的潜力在Solana上脱颖而出。本文深入探讨了其独特的概念和光明的未来。 Mouse in a Cats World (MOW)是一个基于Solana区块链的创新meme项目,它重新构想了一个异想天开且赋予权力的故事。在这个奇幻的宇宙中&am…...

pytorch说明
深度学习中的重要概念: 激活函数: 激活函数的必要性:激活函数不是绝对必须的,但在深度学习中,它们几乎总是被使用。激活函数可以引入非线性,这使得神经网络能够学习更复杂的模式。 激活函数的位置&#x…...

AI语音机器人是否可以设计开放式问题
什么叫开放式提问? 是指提出比较概括、广泛、范围较大的问题,对回答的内容限制不严格,给对方充分自由发挥的余地。 试想一下,就算不是语音机器人,是一个真人销售,和客户沟通时提的问题是开放式的…...

ModuleNotFoundError: No module named
python脚本执行出现这个错误,检查是否安装了对应的模块,确认已经安装,执行还是出错 原因是我时在c程序中启动执行的python脚本,c程序执行是使用了sudo权限,此时会报错,而在shell中执行python(下…...

【操作系统】进程管理——用信号量机制解决问题,以生产者-消费者问题为例(个人笔记)
学习日期:2024.7.10 内容摘要:利用信号量机制解决几个经典问题模型 目录 引言 问题模型 生产者-消费者问题(经典) 多生产者-多消费者问题 吸烟者问题 读者写者问题(难点) 哲学家进餐问题࿰…...

算法刷题笔记 KMP字符串(C++实现,并给出了求next数组的独家简单理解方式)
文章目录 题目描述基本思路实现代码 题目描述 给定一个字符串S,以及一个模式串P,所有字符串中只包含大小写英文字母以及阿拉伯数字。模式串P在字符串S中多次作为子串出现。求出模式串P在字符串S中所有出现的位置的起始下标。 输入格式 第一行输入整数…...

SpringCloud架构师面试
一、微服务是什么 1、基本概念 微服务是一种架构风格(区别于单体架构、垂直架构、分布式架构、SOA架构),应用程序被划分为更小的、流程驱动的服务。 2、微服务的特征 轻量化:将复杂的系统或者服务进行纵向拆分,每个…...

C语言 | Leetcode C语言题解之第228题汇总区间
题目: 题解: char** summaryRanges(int* nums, int numsSize, int* returnSize) {char** ret malloc(sizeof(char*) * numsSize);*returnSize 0;int i 0;while (i < numsSize) {int low i;i;while (i < numsSize && nums[i] nums[i …...

入职前回顾一下git-01
git安装 Linux上安装git 在linux上建议用二进制的方式来安装git,可以使用发行版包含的基础软件包管理工具来安装。 红帽系 sudo yum install gitDebian系 sudo apt install gitWindows上安装git 去官网下载和操作系统位数相同的安装包.或者可以直接安装GitHub…...

this指向解析
先看题目: 第一题: var name window var person1 { name: person1, show1: function () { console.log(this.name) }, show2: () > console.log(th show3: function () { return function () { …...

学习小记-Nacos的服务注册与发现原理
服务注册: 当一个服务实例启动时,它会向 Nacos 服务器注册自己的信息,包括 IP 地址、端口号、元数据(如服务版本、区域信息等)。服务实例使用 Nacos API 发送注册请求,Nacos 服务器接收请求并存储服务实例信…...

视频号矩阵系统源码,实现AI自动生成文案和自动回复私信评论,支持多个短视频平台
在当今短视频蓬勃发展的时代,视频号矩阵系统源码成为了自媒体人争相探索的宝藏。这一强大的技术工具不仅能帮助我们高效管理多个短视频平台,更能通过AI智能生成文案和自动回复私信评论,为自媒体运营带来前所未有的便利与效率。 一、视频号矩…...

[Spring] SpringBoot基本配置与快速上手
🌸个人主页:https://blog.csdn.net/2301_80050796?spm1000.2115.3001.5343 🏵️热门专栏: 🧊 Java基本语法(97平均质量分)https://blog.csdn.net/2301_80050796/category_12615970.html?spm1001.2014.3001.5482 🍕 Collection与…...

tomcat的优化、动静分离
tomcat的优化 tomcat自身的优化 tomcat的并发处理能力不强,大项目不适应tomcat做为转发动态的中间件(k8s集群,pytnon rubby),小项目会使用(内部使用的)动静分离 默认配置不适合生产环境&…...

Python与自动化脚本编写
Python与自动化脚本编写 Python因其简洁的语法和强大的库支持,成为了自动化脚本编写的首选语言之一。在这篇文章中,我们将探索如何使用Python来编写自动化脚本,以简化日常任务。 一、Python自动化脚本的基础 1. Python在自动化中的优势 Pyth…...

树与二叉树
前言: 树这个结构想必在日常生活中很常见到,而现在要介绍的是一种独特的数据结构--二叉树。 1.树 (1)定义: 是一种非线性结构,有一个特殊的节点叫做根节点,树没有前驱节点;树是递…...

SpringBoot+Vue实现简单的文件上传(Excel篇)
SpringBootVue实现简单的文件上传 1 环境 SpringBoot 3.2.1,Vue 2,ElementUI 2 页面 3 效果:只能上传xls文件且大小限制为2M,选择文件后自动上传。 4 前端代码 <template><div class"container"><el…...

科研绘图系列:R语言金字塔图(pyramid plot)
介绍 金字塔图(Pyramid chart)是一种用于展示人口统计数据的图表,特别是用于展示不同年龄段的人口数量。这种图表通常用于展示人口结构,比如性别和年龄的分布。 特点: 年龄分层:金字塔图按年龄分层,每一层代表一个年龄组。性别区分:通常,男性和女性的数据会被分别展…...

Tomcat多实例
一、Tomcat多实例 Tomcat多实例是指在同一台服务器上运行多个独立的tomcat实例,每个tomcat实例都具有独立的配置文件、日志文件、应用程序和端口,通过配置不同的端口和文件目录,可以实现同时运行多个独立的Tomcat服务器,每个服务…...

前端Vue组件化实践:自定义加载组件的探索与应用
在前端开发领域,随着业务逻辑复杂度的提升和系统规模的不断扩大,传统的开发方式逐渐暴露出效率低下、维护困难等问题。为了解决这些挑战,组件化开发作为一种高效、灵活的开发模式,受到了越来越多开发者的青睐。本文将结合实践&…...

半小时获得一张ESG入门证书【详细中英文笔记一】
前些日子,有朋友转发了一则小红书的笔记给我, 标题是《半小时获CFI官方高颜值免费证书 ESG认证》。这对考证狂魔的我来说,必然不能错过啊,有免费的羊毛不薅白不薅。 ESG课程的 CFI 官方网址戳这里:CFI 于是信心满满的…...

类形断言和和类型推导的区别是什么?
类型断言(Type Assertion)和类型推导(Type Inference)在TypeScript中的区别 如下: 定义: 类型断言:是程序员明确指定一个值的类型,即允许变量从一种类型更改为另一种类型。它不会进行…...

Spring-Spring、IoC、DI、注解开发
1、Spring是什么 Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器(框架)。 Spring整体架构 Spring优点: Spring属于低侵入设计。IOC将对象之间的依赖关系交给Spring,降低组件之间的耦合,实现各个层之间的解耦,让我们更专注于业务…...

Facebook的未来蓝图:从元宇宙到虚拟现实的跨越
随着科技的不断演进和社会的数字化转型,虚拟现实(VR)和增强现实(AR)作为下一代计算平台正逐渐走进人们的视野。作为全球领先的科技公司之一,Facebook正在积极探索并推动这一领域的发展,以实现其…...

Redis6.2.1版本集群新加副本
测试数据 通过redis-benchmark生成测试数据 ./bin/redis-benchmark -h 172.31.4.18 -p 6381 -a Redis_6.2.1_Sc --cluster -t set -d 128 -n 10000000 -r 100000000 -c 200新加节点 172.31.4.18:6381> AUTH Redis_6.2.1_Sc OK172.31.4.18:6381> cluster meet 172.31.4…...

2.The DispatcherServlet
The DispatcherServlet Spring的Web MVC框架与许多其他Web MVC框架一样,是请求驱动的,围绕一个中央Servlet(即DispatcherServlet)设计,该Servlet将请求分派给控制器,并提供其他功能以促进Web应用程序的开发…...

bug定位策略
前提--用户环境层面 hosts异常:hosts文件主要是加快某个域名或者网站的解析速度,从而达到快速访问的作用,也可以屏蔽网站。hosts异常可能会导致部分网页无法访问,能够加载,但是网页无法正常显示;测试环境脏…...