功能脑网络较新的方法[和ai讨论的方向和学习资源]
文章目录
- 前言和回顾
- 代码实现
- ai 提问
- 大脑连通性分析方法扩展与分类指南
- 一、现有方法的补充与分类
- 1. 补充的其他连通性方法
- 2. 分类框架
- 二、近年来的新方法(2019年后)
- 1. 相位动力学扩展
- 2. 信息论与复杂度
- 3. 基于图论与网络科学
- 4. 动态系统与因果推断
- 三、方法选择建议
- 四、参考文献示例
- 图神经网络自动提取隐含连接模式
- 1. 基于GNN的脑网络建模基础方法
- (1) 《BrainGB: A Benchmark for Brain Network Analysis with Graph Neural Networks》
- (2) 《Spatio-Temporal Graph Convolution for Resting-State fMRI Analysis》
- 2. 动态功能连接与自适应图学习
- (3) 《Dynamic Adaptive Spatio-Temporal Graph Convolution for fMRI Analysis》
- (4) 《Learning Dynamic Functional Connectivity with Graph Transformer》
- Parkinson
- (5)《EEG-Based Parkinson's Disease Recognition via Attention-Based Sparse Graph Convolutional Neural Network》
- (6) 《An Enhanced EEG Microstate Recognition Framework Based on Deep Neural Networks: An Application to Parkinson's Disease》
- 3. 多模态脑网络融合与解释性
- (5) 《Multi-modal Brain Graph Fusion via Adversarial Graph Alignment》
- (6) 《Explainable Graph Neural Networks for Neurodegenerative Disease Diagnosis》
- 4. 挑战与未来方向
- 当前局限性:
- 前沿研究方向:
- 文献获取建议
前言和回顾
在了解了功能脑网络文献中的功能连接构建的相关方法。
线性或非线性关系、时域或频域分析、使用基于振幅或相位的度量、获取有向或无向信息,以及是否包括间接关系(即多元或双变量)
Connectivity measure 连通性度量 | Property measured 性质测量 | Advantage(s) 优点 | Disadvantage | Key reference(s) 关键参考文献 |
---|---|---|---|---|
Correlation 相关 | 时域中两个信号振幅的线性关系 | 常用且简单的方法 | 非线性未考虑,无法区分直接关系和间接关系 对体积传导敏感 | 相关分析在脑电图临床的应用 |
Coherence 一致性 | 频率域中两个信号振幅的线性关系 | 常用且简单的方法 | 非线性未考虑,无法区分直接关系和间接关系 对体积传导敏感 | 神经元群体在睡眠和精神任务中的协同行为。 |
Granger causality 格兰杰因果关系 | 当包含信号 Y 的过去时,可以更精确地预测信号 X 的未来,反之亦然 | 估计因果交互,因此评估了方向性,已在许多研究领域中得到确立和广泛应用 | 非线性未考虑,方法选择(例如,在脑电图中的参考选择)以及其他混杂因素(例如,体积传导)可能会干扰实际的因果关系 | 维纳-格兰杰因果性:一种成熟的方法时间变异性脑电图格兰杰因果性在检查神经网络集合的定向相互依赖中的应用 |
Directed coherence 定向相干性 | 基于格兰杰因果原理的频域中两个信号之间的有向线性关系 | 信息流的方向性 | 非线性未考虑,无法区分直接关系和间接关系 对体积传导敏感 | 定向一致性作为脑电图半球间相关性的衡量指标 |
Directed transfer function 有向传递函数 | 给出基于格兰杰因果原理,在频域内节点 X 向节点 Y 的流出与节点 Y 所有流入的归一化因果关系 | 信息流的方向性,常见源与相互连接之间的区别 | 非线性未考虑 无法区分直接关系和间接关系 噪声信道影响方向性 难以估计多元模型的最优阶数 | 描述脑结构信息流的新方法 |
Partial directed coherence 部分有向一致性 | 给出基于格兰杰因果原理,在频域内节点 X 向节点 Y 的流出因果关系的度量,并按节点 X 的所有流出进行归一化 | 信息流的方向 对体积传导不敏感 | 非线性未考虑无法区分直接关系和间接关系 由于归一化,未得出耦合强度的结论 难以估计多元模型的最优阶数 | 神经结构确定中的部分定向一致性:一个新概念 |
Imaginary part of coherency 虚部(相干度) | 基于相干性 ⁎ ,但通过仅包括相干性的虚部来排除体积传导的影响 | 对体积传导的敏感性较低 | 未考虑非线性 虚部通常较小,因此可能错过有意义的相互作用,无法区分直接关系和间接关系 | 利用相干性的虚部从脑电图数据中识别真正的脑交互 |
Mutual information 互信息 | 信号 X 中可由信号 Y 解释的信息量以及反之,基于 X 和 Y 的概率分布以及 X 和 Y 的联合概率分布 | 在窄频带分析中,互信息非常敏感 | 交互无方向性,弱耦合可能被忽略,从实验时间序列中获得复杂计算度量,无法区分直接关系和间接关系 | 独立坐标:奇异吸引子的互信息 |
Synchronization likelihood 同步概率 | 描述信号 X 与信号 Y 在状态空间中相互信息的标准化强度 | 有效地处理由相互作用系统引起的复杂性 对非线性关系敏感 非线性被考虑在内 | 对体积传导敏感 无法区分直接关系和间接关系 | 同步概率:多远数据集中广义同步的无偏度量 |
Phase locking value 相位锁定值 | 给出两个时间序列之间平均瞬时相位差的模 | 非线性被考虑在内 | 无交互方向性 对体积传导敏感 瞬时相位差的大小被包括在内 无法区分直接关系和间接关系 | 测量脑信号中的相位同步 |
Phase Slope Index (PSI) 相位斜率指数 | 估计信息流的方向,基于信号 X 和 Y 之间的交叉谱密度相位差斜率 | - 权衡不同时间序列的贡献 - 不受独立来源混合(例如,背景活动)的影响 | - 无法区分直接关系和间接关系 - 复杂的计算方法 | Nolte et al. (2008) |
Phase Lag Index (PLI) 相位滞后指数 | 两个信号之间相位差分布的不对称性 | - 对体积传导、常见源和蒙片敏感度较低 | - 可能错过线性但功能上有意义的相互作用 - 瞬时相位差被二值化,噪声条件下可能遗漏小相位差 - 无法区分直接关系和间接关系 | Stam et al. (2007b) |
Weighted Phase Lag Index (wPLI) 加权相位滞后指数 | 观测到的相位领先和滞后对贡献的权重由相干性的虚部幅度决定 | - 对噪声敏感性降低(相比PLI) - 提高相位同步变化检测(相比PLI) | - 包含瞬时相位差大小,但无证据表明其对耦合强度重要 - 对0°和180°附近相位差不敏感 - 混合相位差一致性和幅度信息,阻碍解释 - 无法区分直接关系和间接关系 | 存在体积传导、噪声和样本量偏差时电生理数据相位同步改进指数 Vinck et al. (2011) |
Directed Phase Lag Index (dPLI) 有向相位滞后 | 信号 X 的瞬时相位在时间上小于信号 Y 的相位(模π)的概率 | - 反映信息流的方向性 - 对体积传导和共同源敏感度更低(相比PLI) | - 方向性可能模糊(小幅领先与大幅滞后相似) - 无法区分直接关系和间接关系 | 跟随潮流:使用定向相位滞后指数(dPLI)来表征大脑动力学大规模模型中相位关系模式 |
代码实现
可以使用mne的功能连接。是对epochs的处理。
另起一些章节,回头补上,更新后再填。
主要就是功能矩阵的计算。之后再选择可视化的方法:
下面给出链接:
询问ai,是否有新的方法,用于脑网络构建和连通性分析。
ai 提问
我在研究大脑的连通性。Correlation 相关,Coherence 一致性,Granger causality 格兰杰因果关系,Directed coherence 定向相干性,Directed transfer function 有向传递函数,Partial directed coherence 部分有向一致性,Imaginary part of coherency 虚部(相干度),Mutual information 互信息,Synchronization likelihood 同步概率,Phase locking value 相位锁定值,Phase Slope Index (PSI) 相位斜率指数,Phase Lag Index (PLI) 相位滞后指数,Weighted Phase Lag Index (wPLI) 加权相位滞后指数,Directed Phase Lag Index (dPLI) 有向相位滞后;请帮我思考还有其它的连通算法吗,此外对于这些方法该按照啊什么划分,比如有线性和非线性,、时域或频域分析、使用基于振幅或相位的度量、获取有向或无向信息,以及是否包括间接关系(即多元或双变量)。这些方法是在论文中找到的,我想知道有更新的方法吗
大脑连通性分析方法扩展与分类指南
一、现有方法的补充与分类
1. 补充的其他连通性方法
以下方法可进一步扩展您的分析工具箱:
方法名称 | 类型/原理 | 分类属性 | 关键特点 |
---|---|---|---|
Transfer Entropy (TE) | 信息论(非线性) | 非线性、时域、有向、双变量 | 基于信息传递,抗噪声能力强 |
Dynamic Causal Modeling (DCM) | 贝叶斯网络(多元) | 非线性、时域/频域、有向、多元 | 建模动态因果,需假设网络结构 |
Cross-Recurrence Quantification (CRQA) | 非线性动力学 | 非线性、时域、无向、双变量 | 分析时间序列的递归模式 |
Symbolic Transfer Entropy (STE) | 符号动力学(非线性) | 非线性、时域、有向、双变量 | 对数据符号化处理,降低计算复杂度 |
Compression-Complexity (CCM) | 复杂度分析 | 非线性、时域、无向、双变量 | 基于时间序列压缩的因果推断 |
Mutual Information in Frequency (MIF) | 频域信息论 | 线性/非线性、频域、无向、双变量 | 频带间互信息计算 |
Partial Mutual Information on Mixed Embedding (PMIME) | 多元信息论 | 非线性、时域、有向、多元 | 解决间接连接干扰,优于传统TE |
Nonlinear Granger Causality | 非线性扩展 | 非线性、时域、有向、双变量 | 基于核方法或神经网络改进传统GC |
State-Space Granger Causality | 状态空间模型 | 线性、时域、有向、多元 | 处理高维数据,避免双变量局限性 |
2. 分类框架
根据属性划分现有方法:
分类维度 | 方法举例 |
---|---|
线性 vs 非线性 | 线性:Correlation, Coherence, Granger Causality 非线性:TE, STE, CCM, PLV |
时域 vs 频域 | 时域:Granger Causality, TE 频域:Coherence, DTF, PDC 跨域:Wavelet Coherence |
振幅 vs 相位 | 振幅:Correlation, Mutual Information 相位:PLV, PLI, dPLI, PSI |
有向 vs 无向 | 无向:Correlation, Coherence 有向:Granger, DTF, TE, PSI |
双变量 vs 多元 | 双变量:Correlation, PLV 多元:PDC, PMIME, DCM |
二、近年来的新方法(2019年后)
1. 相位动力学扩展
- Time-Varying Phase Lag Index (TV-PLI)
- 特点:动态追踪相位关系的时变特性,适用于非稳态信号(如EEG任务态分析)1。
- Adaptive Directed Transfer Function (ADTF)
- 特点:结合时变参数模型,改进DTF对瞬态因果关系的捕捉能力2。
2. 信息论与复杂度
- Partial Mutual Information from Mixed Embedding (PMIME)
- 特点:通过混合嵌入策略解决间接连接干扰,优于传统传递熵3。
- Permutation Conditional Mutual Information (PCMI)
- 特点:结合排列熵与条件互信息,提升非线性因果检测鲁棒性4。
3. 基于图论与网络科学
- High-Order Functional Connectivity
- 特点:分析高阶交互(如三节点相互作用),超越传统成对连接5。
- Deep Learning-Based Functional Connectivity
- 特点:利用自编码器或图神经网络自动提取隐含连接模式6。
4. 动态系统与因果推断
- Convergent Cross Mapping (CCM)
- 特点:基于动力系统理论,通过吸引子几何结构推断因果关系(常用于生态学,近年引入神经科学)[^7]。
- Causal Influence Score (CIS)
- 特点:结合格兰杰因果与信息论,量化多变量系统中的因果贡献度[^8]。
三、方法选择建议
-
根据数据特性选择
- 稳态信号:传统Granger、Coherence。
- 非稳态/高噪声:TV-PLI、STE、CCM。
- 多元系统:PMIME、DCM、High-Order FC。
-
研究目标驱动
- 因果方向:Granger、DTF、ADTF、CIS。
- 相位同步:wPLI、dPLI、PSI。
- 非线性关系:TE、PMIME、CRQA。
-
计算资源权衡
- 快速计算:PLV、Correlation。
- 高精度需求:DCM、Deep Learning-Based FC(需GPU加速)。
四、参考文献示例
图神经网络自动提取隐含连接模式
以下是近年来关于图神经网络(GNN)在自动提取大脑功能连接模式中的关键文献及其核心贡献的梳理,涵盖方法创新与应用场景:
1. 基于GNN的脑网络建模基础方法
(1) 《BrainGB: A Benchmark for Brain Network Analysis with Graph Neural Networks》
- 期刊/会议: KDD 2023
- 核心贡献:
- 提出首个脑网络分析的GNN统一框架 BrainGB,整合多种GNN模型(如GCN、GAT、GraphSAGE),支持功能连接(fMRI)和结构连接(DTI)数据的端到端学习。
- 提供标准化数据集(ADNI、ABCD)和评估指标(分类精度、解释性可视化)。
- 创新点: 通过自适应图学习模块,自动优化脑区节点间的连接权重,替代传统预定义的静态连接矩阵。
- 代码开源: GitHub链接
(2) 《Spatio-Temporal Graph Convolution for Resting-State fMRI Analysis》
- 期刊: Medical Image Analysis, 2020
- 核心贡献:
- 设计 时空图卷积网络(ST-GCN),同时捕捉脑区空间连接(图结构)和时间动态变化(BOLD信号)。
- 在自闭症(ASD)分类任务中,AUC达0.89,优于传统机器学习方法(如SVM、随机森林)。
- 关键优势: 直接处理原始时间序列,无需预计算功能连接矩阵(如Pearson相关系数)。
2. 动态功能连接与自适应图学习
(3) 《Dynamic Adaptive Spatio-Temporal Graph Convolution for fMRI Analysis》
- 期刊: IEEE Transactions on Medical Imaging, 2022
- 方法:
- 提出 动态自适应图卷积(DAST-GCN),通过可学习参数实时调整脑区连接强度,捕捉任务态fMRI中的时变网络特性。
- 引入多头注意力机制,区分不同频带(如低频振荡与高频噪声)对功能连接的贡献。
- 实验: 在HCP数据集上,运动任务分类准确率提升12%(对比静态GCN)。
(4) 《Learning Dynamic Functional Connectivity with Graph Transformer》
- 会议: MICCAI 2023
- 创新点:
- 将 图Transformer 应用于动态功能连接(dFC)建模,通过自注意力机制捕捉跨时间窗的长程依赖。
- 提出动态图池化层(Dynamic Graph Pooling),自动识别关键脑网络(如默认模式网络DMN)的时变重要性。
- 应用: 阿尔茨海默病(AD)早期诊断,敏感度达91.2%。
下面这两个文献回头研究一下
Parkinson
(5)《EEG-Based Parkinson’s Disease Recognition via Attention-Based Sparse Graph Convolutional Neural Network》
https://ieeexplore.ieee.org/document/10173532
(6) 《An Enhanced EEG Microstate Recognition Framework Based on Deep Neural Networks: An Application to Parkinson’s Disease》
https://ieeexplore.ieee.org/abstract/document/10002848
3. 多模态脑网络融合与解释性
(5) 《Multi-modal Brain Graph Fusion via Adversarial Graph Alignment》
- 期刊: NeuroImage, 2021
- 方法:
- 开发 对抗性图对齐网络(MAGAN),融合fMRI(功能)、DTI(结构)和基因表达数据,生成统一的多模态脑图表示。
- 通过对抗训练消除模态间分布差异,保留跨模态一致性特征。
- 结果: 在精神分裂症分类中,多模态融合模型F1-score比单模态提升8%。
(6) 《Explainable Graph Neural Networks for Neurodegenerative Disease Diagnosis》
- 会议: AAAI 2023
- 贡献:
- 提出可解释GNN框架 BrainExplainer,结合梯度类激活图(Grad-CAM)和图注意力(GAT),可视化关键致病脑区(如海马体萎缩)。
- 在帕金森病(PD)与健康对照组分类中,模型AUC为0.93,并提供病理学可解释的连接模式。
4. 挑战与未来方向
当前局限性:
- 数据稀缺性: 脑影像数据标注成本高,小样本场景下GNN易过拟合。
- 动态建模复杂度: 高时间分辨率数据(如EEG/MEG)的实时图更新计算开销大。
- 生理可解释性: GNN的“黑箱”特性与神经科学机制的对齐仍存挑战。
前沿研究方向:
- 自监督图学习: 利用对比学习(如GraphCL)从无标签数据中预训练通用脑网络表示。
- 因果图网络: 结合Granger因果与GNN,推断干预下的脑网络因果效应(如DeepCausalNet, Nature Machine Intelligence 2024)。
- 类脑脉冲图网络(SNN-GNN): 模拟生物神经元脉冲传递机制,提升能耗效率与时间序列建模能力。
文献获取建议
- 数据库: PubMed、IEEE Xplore、arXiv(关注"graph neural network" + “fMRI”/"brain network"关键词)。
- 工具:
- BrainNet Viewer: 可视化GNN输出的脑网络(支持节点重要性着色)。
- PyTorch Geometric (PyG): 快速实现自定义GNN模型(内置脑网络数据集加载接口)。
基于动态的fmri血氧数据来进行脑网络动态参数捕捉,并进行脑因果联系网络的构建。
Nature Methods | 扰动AI孪生脑,刻画脑网络因果
《Mapping effective connectivity by virtually perturbing a surrogate brain》
本文提出了一种数据驱动的AI孪生脑构建方法,并通过虚拟扰动AI孪生脑来推断脑网络因果关系。该方法被称为神经扰动推断(Neural Perturbational Inference, NPI)。首先,NPI以自监督的形式训练人工神经网络来建模脑网络动力学,将其作为AI孪生脑。然后,通过对AI孪生脑的每个脑区施加虚拟扰动,预测其他脑区的响应,从而刻画全脑有效连接关系。
该文章可以作为一个进行扩展的方法的基点。
此外,推荐蒋田仔老师的主页的一些内容,对与脑网络的连接组,模板,想要进行开放性探索的知识关联。
在相关下载中有一些有用的学习资源,可以进行了解。
关于脑科学研究的关键词索引和知识图库
可以选中相关的概念,进行知识关联,然后再点击最底部的来进行关联文章搜索。
可以扩展我们不知道的相关脑科学和结构的名词。
García-Prieto, J. et al. (2021). TV-PLI: A time-varying phase lag index for dynamic connectivity analysis. NeuroImage. ↩︎
Wang, Y. et al. (2020). Adaptive Directed Transfer Function for time-varying causal inference. Journal of Neuroscience Methods. ↩︎
Kugiumtzis, D. (2019). PMIME: A robust partial mutual information estimator for multivariate time series. Physical Review E. ↩︎
Li, X. et al. (2022). Permutation-based conditional mutual information for nonlinear causality detection. Chaos. ↩︎
Battaglia, D. et al. (2020). Beyond pairwise interactions: Higher-order functional connectivity in brain networks. Trends in Cognitive Sciences. ↩︎
Zhang, Z. et al. (2023). DeepFCN: A deep learning framework for functional connectivity network construction. IEEE Transactions on Neural Systems and Rehabilitation Engineering. ↩︎
相关文章:
功能脑网络较新的方法[和ai讨论的方向和学习资源]
文章目录 前言和回顾代码实现ai 提问大脑连通性分析方法扩展与分类指南一、现有方法的补充与分类1. 补充的其他连通性方法2. 分类框架 二、近年来的新方法(2019年后)1. 相位动力学扩展2. 信息论与复杂度3. 基于图论与网络科学4. 动态系统与因果推断 三、…...
【MongoDB + Spark】 技术问题汇总与解决方案笔记
场景背景 最近练手项目:Spark 结合 MongoDB 构建商品推荐系统的过程中,过程中出现多种环境配置与兼容性问题,主要涉及 MongoDB 连接、版本兼容性、Casbah 驱动使用问题等。汇总调试过程中遇到的常见错误及其解决方案,供参考复用。…...
给git配置SSH(github,gitee)
更多个人笔记:(仅供参考,非盈利) gitee: https://gitee.com/harryhack/it_note github: https://github.com/ZHLOVEYY/IT_note 本文基于mac,linux和win可以参考 个人同时配置gitee和github的ss…...
Linux基础使用-笔记
1. 文件和目录操作 查看当前目录:pwd 命令用于显示当前工作目录的完整路径。 pwd切换目录:cd 命令用于切换工作目录。 # 切换到指定目录 cd /home/user/Documents # 切换到上一级目录 cd .. # 切换到用户主目录 cd ~列出目录内容:ls 命令用…...
什么是Maven
Maven的概念 Maven是一个一键式的自动化的构建工具。Maven 是 Apache 软件基金会组织维护的一款自动化构建工具,专注服务于Java 平台的项目构建和依赖管理。Maven 这个单词的本意是:专家,内行。Maven 是目前最流行的自动化构建工具࿰…...
DNS主从同步及解析
DNS 域名解析原理 域名系统的层次结构 :DNS 采用分层树状结构,顶级域名(如.com、.org、.net 等)位于顶层,下面是二级域名、三级域名等。例如,在域名 “www.example.com” 中,“com” 是顶级域名…...
Git 的基本概念和使用方式
Git 是一种分布式版本控制系统,广泛用于跟踪文件的变化和协作开发项目。以下是 Git 的基本概念和使用方式: 仓库(Repository):Git 用来存储项目文件和历史记录的地方。可以是本地仓库(Local Repository)或远程仓库(Remote Repository)。 工作区(Working Directory):…...
【C++】二叉树进阶面试题
根据二叉树创建字符串 重点是要注意括号省略问题,分为以下情况: 1.左字树为空,右子树不为空,左边括号保留 2.左右子树都为空,括号都不保留 3。左子树不为空,右子树为空,右边括号不保留 如果根节…...
时序数据库IoTDB构建的能源电力解决方案
随着能源格局的快速变化与“双碳”战略的逐步践行,电力系统的绿色低碳转型已成为重要发展趋势。在这一背景下,数字化、智能化技术正逐步扩大在新型电力系统发电侧、电网侧、储能侧的应用,以推动传统电力发输配用向全面感知、双向互动、智能高…...
【KWDB 创作者计划】_上位机知识篇---Github
文章目录 前言1. GitHub 核心功能(1) 代码托管(Git 仓库)存储代码版本控制代码浏览(2) 协作开发Pull RequestlssuesProjectsDiscussions(3) 自动化与 CI/CDGitHub ActionsGitHub PagesDependabot(4) 社区与开源ForkStarWatchSponsor2. GitHub 基本使用方法(1) 创建仓库(Repo…...
vxe-table封装表头
待补充使用说明,但是可以用 一.效果二.封装MyTable.vue1.封装index.vue2.日期选择筛选3.输入筛选4.下拉筛选5.多选筛选6.远程多选筛选7.远程单选筛选 三、页面使用1.具体页面使用2./utils/filter.js 注意:需要使用jsx、vxe-table、element-plus 一.效果 …...
力扣hot100 91-100记录
91-100 (动态规划) class Solution { public:int uniquePaths(int m, int n) {vector<vector<int>> f(m, vector<int>(n, 1));for(int i 1; i < m; i){for(int j 1; j < n; j){f[i][j] f[i-1][j] f[i][j-1];} }return f[…...
SpringMVC处理请求映射路径和接收参数
目录 springmvc处理请求映射路径 案例:访问 OrderController类的pirntUser方法报错:java.lang.IllegalStateException:映射不明确 核心错误信息 springmvc接收参数 一 ,常见的字符串和数字类型的参数接收方式 1.1 请求路径的…...
ESP32上C语言实现JSON对象的创建和解析
在ESP32上使用C语言实现JSON对象的创建和解析,同样可以借助cJSON库。ESP-IDF(Espressif IoT Development Framework)本身已经集成了cJSON库,你可以直接使用。以下是详细的步骤和示例代码。 1. 创建一个新的ESP-IDF项目 首先&…...
关于Qt对Html/CSS的支持
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、原生控件二、QtWebEngine总结 前言 最近遇到了一些问题需要使用Qt加载Html发现一些特性不能使用,估计很多人也和我一样遇到这种情况。需要说明…...
Python 读取 txt 文件详解 with ... open()
文章目录 1 概述1.1 注意事项1.2 模式说明1.3 文件准备 2 读文件2.1 读取整个文件2.2 逐行读取2.3 读取所有行到列表 3 写文件3.1 覆盖写入3.2 追加写入3.3 写入多行 4 实用技巧4.1 检查文件是否存在4.2 异常处理 1 概述 1.1 注意事项 文件编码:建议指定编码&…...
[Mac] 使用homebrew安装miniconda
使用虚拟环境可以对不同项目的依赖进行隔离。可以使用venv或者conda来创建和使用虚拟环境。 venv是Python内置的虚拟环境管理模块,适合纯Python项目以及快速轻量级的开发和部署。conda具备更强大的版本管理能力,但是占用较大的磁盘空间。 考虑到我基本不…...
如何获取适用于广告过滤增强的Chrome浏览器版本【广告净化】
不少人使用浏览器时,会遇到广告弹窗、视频前贴广告或页面跳转。这些情况会影响上网体验。想要改善,可以从选择合适版本的谷歌浏览器开始,并加上合理设置。 先打开电脑上的浏览器,在搜索栏中输入“谷歌浏览器官方下载页面”。找到带…...
JVM(Java虚拟机)详解
目录 1 JVM执行流程 2 JVM运行时数据区(内存布局) 2.1 堆 2.2 栈 2.3 方法区 2.4 程序计数器 2.5 Java和运行时数据区相关的异常 3 JVM类加载(Class Loading) 3.1 加载Loading 3.2 连接Linking 3.2.1 验证Verification…...
Vue3 + TypeScript,使用provide提供只读的响应式数据的详细分析与解决方法
原始无类型写法(不报错) typescript const applySampleTableData ref<ApplySample[]>([]); const applySampleListSymbol Symbol("applySampleList"); provide(applySampleListSymbol, readonly(applySampleTableData)); 类型推断&a…...
深入理解 BLE PHY 模式:1M、2M 与 Coded 的演进与应用
随着蓝牙技术不断演进,BLE(Bluetooth Low Energy)在物联网、可穿戴设备、智能家居等领域的应用愈发广泛。BLE 中的 PHY(Physical Layer,物理层)是决定无线传输速率、覆盖范围和功耗的核心因素。本文将以浅显易懂的语言,结合示意图和代码示例,系统梳理 BLE 三种 PHY 模式…...
人工智能与机器学习:二元分类决策树构建指南
引言 在人工智能与机器学习的领域里,算法犹如智慧的钥匙,开启着数据洞察的大门。决策树作为其中一颗璀璨的明珠,以其独特的非线性处理能力和可解释性备受瞩目。今天,让我们跟随作者的脚步,深入探究如何构建一个用于二…...
Ubuntu下软件运行常见异常退出问题汇总分析
软件在Ubuntu下运行时,可能会遇到各种异常退出情况,常见可分为以下几点: 目录 一、系统资源耗尽导致退出 二、权限导致无法运行 三、找不到依赖的动态库 四、编译可执行文件时,动态库所引用的头文件与动态库不匹配 一、系统资…...
机器学习漏洞大汇总——利用机器学习服务
在本节中,我们将展示机器学习框架中存在的漏洞,这些漏洞会直接处理模型工件,或者通过工件存储或模型注册表的凭证来处理。利用此类漏洞,攻击者可以在企业系统内部进行非常强大的横向移动,从而劫持被利用的模型注册表中的机器学习模型。 WANDB Weave 目录遍历 - CVE-2024-…...
类的六个默认成员函数
如果一个类中什么成员都没有,简称为空类。 空类中真的什么都没有吗?并不是,任何类在什么都不写时,编译器会自动生成以下6个默认成员函数。 默认成员函数:用户没有显式实现,编译器会生成的成员函数称为默认…...
精益数据分析(21/126):剖析创业增长引擎与精益画布指标
精益数据分析(21/126):剖析创业增长引擎与精益画布指标 大家好!在创业和数据分析的探索道路上,我一直希望能和大家携手共进,共同学习。今天,我们继续深入研读《精益数据分析》,剖析…...
SAIL-RK3588协作机器人运动控制器技术方案
一、核心能力与政策适配 政策合规性 满足工信部《智能机器人重点技术攻关指南》要求,支持 EtherCAT主站协议(符合IEC 61158标准),助力企业申报工业机器人研发专项补贴(最高300万元/项目)核心板…...
手搓箱图并输出异常值(MATLAB)
看下需求 想要复刻这种箱图,咱们直接开始手搓 %% 可修改 % 生成模拟数据(假设5个用户群体的发帖数) data {randn(100,1)*10 30, ... % 核心用户randn(200,1)*5 10, ... % 边缘用户randn(150,1)*8 20, ... % 积极社交用户randn(8…...
Java:XML被自动转义
在Java中处理XML响应被自动转义的问题时,需结合XML规范及工具特性进行针对性处理。以下是常见原因及解决方案的总结: 一、XML自动转义的原因 字符安全性处理 XML中的保留字符(如 <、>、&)会被自动转义为实体&a…...
Day-3 应急响应实战
应急响应实战一:Web入侵与数据泄露分析 1. Web入侵核心原理 漏洞利用路径 未授权访问:弱口令(如空密码/默认口令)、目录遍历漏洞代码注入攻击:JSP/ASP木马、PHP一句话木马(利用eval($_POST[cmd])&…...
【软件设计师】模拟题一
以下是 10道软考-软件设计师模拟试题,涵盖高频考点和易错点,附带答案和解析: 一、软件工程 1. 在软件开发生命周期中,瀑布模型的主要特点是( ) A. 强调快速原型迭代 B. 阶段间有明…...
每日一练(4~24):互质的数【省模拟赛】
算法:暴力枚举 问题描述 如果两个整数 a, b 除了 1 以外,没有其它的公约数,则称整数 a 与 b 互质。 请问,与 2024 互质的数(包括 1)中,第 2024 小的是多少? 答案提交 这是一道结…...
金融软件测试有哪些注意事项?专业第三方软件测试服务机构分享
在现代金融行业中,软件系统的稳定性和安全性直接关系到资金的安全和业务的正常运转。金融软件因涉及庞大的资金流和敏感的个人及交易信息,对软件测试提出了更高的要求,那么金融软件在进行测试时有哪些注意事项呢?卓码软件测评作为专业的第三…...
关于QT信号、槽、槽函数的讲解
也是好久没有发帖子了,最近博主主要还是在边学QT边完成任务,所以进度很慢,但确实在这几天对于QT自身槽和信号这类特殊的机制有了一定简单的理解,所以还是想记录下来,如果有初学者看到帖子对他有一定的帮助,…...
算法训练营第三十天 | 动态规划 (三)
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 一、01背包问题理论基础(一)动态规划五部曲确定dp数组以及下标的含义确定递推公式初始化dp数组确定遍历顺序 二、01背包问题理论基础&#…...
Vue开发网站会有“#”原因是前端路由使用了 Hash 模式
前言 网站链接中出现 #(井号)是因为你的前端路由使用了 Hash 模式(hash mode),这是一种前端框架(如 Vue.js、React 等)中常用的路由策略。 为什么有 # 比如 https://www.zimeinew.com/#/order…...
SpringBootTest报错
Unable to find a SpringBootConfiguration, you need to use ContextConfiguration or … 解决方案:在SpringTest注解中添加属性(classes )填写启动类 如我的启动类是MainApplication.class javax.websocket.server.ServerContainer no…...
【质量管理】现代TRIZ(萃智)理论概述
一、什么是TRIZ理论 TRIZ理论,即发明问题解决理论(Teoriya Resheniya Izobreatatelskikh Zadatch),是由前苏联发明家根里奇阿奇舒勒(Genrich S. Altshuller)于1946年创立的。它是一门基于知识的、面向人的发明问题解决系统化方法学。TRIZ理论通过研究大量的专利,总结出技…...
前端面经-JS篇(四)--回调地狱、promise异步编程、Proxy 与 Reflect 、模块化
一、回调地狱 回调地狱(Callback Hell),也称为回调地狱,是指在 JavaScript 中处理多个嵌套的异步回调函数时,代码结构变得非常难以阅读和维护的现象。 为什么会出现回调地狱? 回调地狱通常出现在需要执行…...
【oql】spark thriftserver内存溢出,使用oql查询导致oom的sql
eclipse memory analyzer (mat)软件内的OQL实现查询内促信息。 帮助信息:软件Help/Help Contents/Querying Heap Objects (OQL) 就是查询SparkExecuteStatementOperation 的statement 字段。 select objects s.statement from org.apache.spark.sql.hive.thriftser…...
算法设计与分析(基础)
问题列表 一、 算法的定义与特征,算法设计的基本步骤二、 算法分析的目的是什么?如何评价算法,如何度量算法的复杂性?三、 递归算法、分治法、贪婪法、动态规划法、回溯法的基本思想方法。四、 同一个问题,如TSP&#…...
爬虫学习——使用HTTP服务代理、redis使用、通过Scrapy实现分布式爬取
一、使用HTTP服务代理 由于网络环境、网站对用户的访问速度的限制等原因,使得爬取过程会出现IP被封禁,故使用代理可提高爬取速度。在Scrapy中提供了一个HttpProxyMiddleware专门用于进行爬虫代理设置。在使用该代理进行爬取操作时,需要先在ba…...
机器学习中的特征存储是什么?我需要一个吗?
本质上,特征存储是一个专用存储库,用于系统地存储和排列特征,主要用于数据科学家训练模型,并帮助已训练模型的应用程序进行预测。它是一个关键的聚合点,人们可以在此构建或修改从各种数据源提取的特征集合。此外,它还支持从这些特征组中创建和增强新的数据集,以满足处于…...
【C语言】C语言中的联合体与枚举类型
前言 在C语言中,联合体(union)和枚举(enum)是两种非常实用但又常被忽视的自定义数据类型。它们在内存管理、代码可读性以及程序设计的灵活性方面都有着独特的优势。今天,我们就来深入探讨一下联合体和枚举…...
Golang编程拒绝类型不安全
button-chen/containertypesafe-go: 使用泛型包装标准库的容器 list、ring、heap、sync.Pool 和 sync.Map,实现类型安全 简介 在 Go 中,标准库提供了多种容器类型,如 list、ring、heap、sync.Pool 和 sync.Map。然而,这些容器默认…...
炼锌废渣提取钴工艺流程
炼锌废渣中提取钴的工艺流程通常结合湿法冶金技术,针对废渣中钴与锌、铁、铜等金属的复杂共生特性,通过预处理、浸出、除杂、钴富集及提纯等步骤实现钴的高效回收。以下是典型工艺流程的详细说明: 一、预处理 炼锌废渣(如锌浸出…...
Restful接口学习
一、为什么RESTful接口是数据开发的核心枢纽? 在数据驱动的时代,RESTful接口如同数据高速公路上的收费站,承担着数据交换的核心职责。数据工程师每天需要面对: 异构系统间的数据交互(Hadoop集群 ↔ 业务系统…...
仿真每日一练 | ABAQUS应力松弛
应力松弛是弹性材料在应力作用下产生微塑性变形,并且逐渐积累,在保持应变或者位移不变的前提下,表现为应力逐渐下降的现象。今天介绍一个ABAQUS中应力松弛的相关案例,模型如下所示: 图1 模型认识 回顾一下ABAQUS的有限…...
智能电网第4期 | 电力设备全连接组网方案:从有线到无线无缝融合
随着新型电力系统建设的加速推进,电力设备通信网络正面临前所未有的挑战与机遇。在变电站自动化、输电线路监测、配电房智能化等场景中,传统通信方案已难以满足日益增长的连接需求: 环境复杂性:变电站强电磁干扰环境下需保障微秒级…...
Python 面向对象练习
不多bb了,直接上代码吧。 from pprint import pprint class Course:total_course []def __init__(self,name,id):self.name nameself.id idself.is_select FalseCourse.total_course.append(self)def __repr__(self):return (f"{__class__.__name__}("f"学…...