论文阅读(七):贝叶斯因果表型网络解释遗传变异和生物学知识
1.论文链接:Bayesian Causal Phenotype Network Incorporating Genetic Variation and Biological Knowledge
摘要:
在分离群体中,数量性状基因座(QTL)定位可以确定对表型有因果效应的QTL。这些方法的一个共同特点是QTL定位和表型网络重建是分开进行的。由于这两个任务必须相互贝内,本章提出了一种方法,联合推断因果表型网络和因果QTL。因果表型关系和因果QTL的联合网络被建模为贝叶斯网络。此外,表型网络结构的先验分布调整的生物知识,从而扩展了以前的框架,QTLnet,QTLnet-prior。这种整合的方法可以结合生物学知识的几个来源,如蛋白质-蛋白质相互作用,基因本体注释,转录因子和DNA结合信息。描述了在接受网络结构和接受对应于k种类型的生物知识的k个权重之间迭代的Metropolis-Hastings方案。
关键词:QTL,贝叶斯网络,因果表型
在分离群体中,数量性状基因座(QTL)定位可以确定对表型有因果效应的QTL。文献中的几种方法利用通过QTL作图鉴定的艾德QTL来确定表型之间的因果关系。这些方法的一个共同特点是QTL定位和表型网络重建是分开进行的。由于这两个任务必须相互贝内,本章提出了一种方法,联合推断因果表型网络和因果QTL。因果表型关系和因果QTL的联合网络被建模为贝叶斯网络。此外,表型网络结构的先验分布由生物学知识调整。这种整合的方法可以结合几个生物学知识的来源,如蛋白质-蛋白质相互作用,基因本体论注释,转录因子和DNA结合信息。这个框架允许通过先验知识对各种知识来源的可信度进行灵活的调整。生物知识权重描述了在接受网络结构和接受对应于k种类型的生物知识的k个权重之间迭代的Metropolis-Hastings方案。在蛋白质-蛋白质相互作用的情况下,描述了编码生物学知识的方式,从基因本体论衍生的基于相似性的措施,以及转录因子与DNA的结合。整合的方法,然后应用于重建一个网络参与酵母细胞周期,依赖于转录因子结合的知识。
7.1介绍
分子生物学的一个关键兴趣是了解DNA,RNA,蛋白质和代谢产物如何相互调节。在这方面,人们已经考虑从具有时间序列测量或转录扰动的微阵列表达数据构建调控网络[14,15]。也可以在基因型干扰基因表达、蛋白质和代谢物水平的分离群体中构建调控网络。遗传变异信息可以解释性状的遗传效应,并有助于发现表型之间的因果调节关系。此外,在各种生物数据库中可以获得调控关系的知识,这可以改善因果网络的重建。本章的重点是结合遗传变异在一个隔离的人口和生物学知识,以改善因果网络的推理。
鉴于基因表达表型的数量性质,人们可以进行数量性状基因座(QTL)定位以检测影响表型的基因组位置[29]。一个位置的基因型通常编码为AA、Aa或aa,其中等位基因A和a是遗传基因座的不同变体形式。定量表型/性状是生物体的任何可观察到的物理或生化定量特征,例如体重、血压、基因表达或蛋白质水平。QTL定位的基本思想是检测基因组区域或QTL,其中基因型的变异与表型的数量变异相关。例如,高的父母倾向于有高的孩子,而矮的父母倾向于有矮的孩子。因此,可能存在与株高相关的遗传因子,这些遗传因子可以通过QTL定位进行艾德分析。在基因型随机分配的实验群体中,QTL的遗传变异可以解释为引起感兴趣的表型的后期变化。
在分离群体中,QTL定位可以确定对表型有因果效应的QTL。该因果效应可以是直接从QTL到表型的,也可以是通过其他中间表型间接的。我们只将直接QTL标记为“因果QTL”,认识到它们比间接QTL对表型的影响更近。我们也承认,在QTL和表型之间的通路中可能有许多其他的分子因子在特定的研究中没有测量。间接和直接QTL可用于帮助确定因果表型网络中边的方向(即,由表型节点组成的有向图,其边表示因果关系)。文献中的几种方法利用QTL定位艾德的QTL来确定表型之间的因果关系,包括:结构方程模型[2,34,35]贝叶斯网络的基于分数的方法[56,60,62];基于独立性检验的贝叶斯网络因果算法[8,53];和对表型对的因果关系检验[10,11,32,38,48]。上述方法的一个共同特点是QTL定位和表型网络重建分别进行。不考虑表型网络的QTL定位可能会发现间接QTL。正如[9]所指出的,不正确或间接的QTL可能会影响表型间因果关系的推断。为了解决这个问题,一些研究人员[9,20]提出联合推断因果表型网络和因果QTL。
在表型网络的重建中,各种生物学知识的来源已经与基因表达结合起来,因为使用仅基因表达来确定基因调控的因果方向是困难的。转录因子结合信息被[52]利用,而[40]使用蛋白质-蛋白质相互作用知识构建表型网络。[25]、[55]和[12]提出了整合多种生物学知识的方法。
在本章中,我们提出了一种贝叶斯方法来联合推断因果表型网络和因果QTL,其中表型网络结构的先验分布由生物学知识调整。因果表型关系和因果QTLs的联合网络被建模为贝叶斯网络,其采用了[9],QTLnet。在表型网络的条件下,可以通过QTL定位推断出因果QTL。由于表型网络是未知的,QTLnet遍历表型网络的空间,并使用马尔可夫链蒙特卡洛(MCMC)更新因果QTL。我们通过将生物学知识引入表型网络结构的先验分布来扩展QTLnet的框架。生物学知识的结合有望提高模型估计的准确性,从而增强网络的预测能力[62]。表型网络结构的先验概率是基于吉布斯分布来整合不同来源的生物信息,允许分析师对这一知识的信心进行灵活的调整[55]。由于生物学知识可能是不完整和不准确的,因此考虑生物学知识的可靠性是必要的。虽然[62]提出了一种将遗传变异和生物学知识整合到表型网络中的方法,但他们的方法没有考虑生物学知识的可靠性。我们提出的方法(QTLnet-prior)可以整合表型数据、遗传变异和多种生物学知识源(蛋白质-蛋白质相互作用、基因本体注释、转录因子和DNA结合信息),并在网络重构算法中考虑每种生物学知识源的可靠性。
我们用于因果表型网络和因果QTL的联合推断的集成框架的细节组织如下。第7.2节描述了用于因果网络和因果QTL联合推断的QTLnet方法。第7.3节介绍了拟议的QTLnet-prior,它将生物学知识纳入表型网络结构的先验概率分布。在第7.4节中进行了模拟研究,以比较所提出的方法与几种现有的方法。在第7.5节中,所提出的方法用于重建参与酵母细胞周期的26个基因的网络。最后,在第7.6节中,我们讨论了我们的方法的优点和注意事项,并指出了未来的研究方向。
7.2因果表型网络与因果QTL的联合推断
在第7.2.1小节中,我们首先介绍了一个用于建模表型数据的标准贝叶斯网络。接下来,在7.2.2小节中,我们提出了一个扩展模型QTLnet,它基于齐次条件高斯回归(HCGR)模型,将QTL节点纳入表型网络。标准贝叶斯网络中的有向边可以解释为因果关系。通过扩展具有因果QTL节点的表型网络,我们可以进一步主张因果解释。在7.2.3小节中,我们提出了因果表型网络和因果QTL联合推断的基本原理,在7.2.4小节中,我们描述了以表型网络为条件的QTL定位。最后,我们在第7.2.5小节中概述了表型网络和因果QTL推断的联合方法。
7.2.1标准贝叶斯网络模型
7.2.2 HCGR模型
联合建模表型和QTL基因型的贝叶斯网络的参数族对应于HCGR模型。在QTL基因型和协变量的条件下,表型根据多变量正态分布进行分布,其中QTL和协变量通过平均值进入模型,表型之间的相关结构根据表示表型网络结构的DAG明确建模[9]。图7.1描述了表型和QTL基因型的联合贝叶斯网络的一个例子。
7.2.3系统遗传学和因果推理
系统遗传学旨在从大规模的基因型和表型数据中了解遗传变异和表型之间复杂的相互关系[39]。在这里,我们解释如何系统遗传学方法可以推断因果网络。QTL与表型的因果关系是由基因型对表型的单向影响和基因型对个体的随机分配艾德的。相反,表型之间的因果关系是从条件独立性中推导出来的。系统遗传学的关键思想是,通过将QTL节点纳入表型网络,我们创建了一组新的条件独立关系,用于区分网络结构,否则,属于同一等价类(见表7.1和7.2)。
首先,我们对QTL与表型之间的因果关系进行了较为详细的描述。正如分子生物学中心法则所述,遗传DNA信息被转移到表型。因此,基因型一般影响表型,而不是相反。一个基因型被认为是随机的其他环境因素的独立分离的染色体在减数分裂和随机交配配子之间。这些特殊的特征使我们能够推断QTL对表型的因果效应,因为通过与随机实验类比,我们有:(1)对实验单位的处理(基因型)先于测量结果(表型),(2)对实验单位的随机分配处理保证了其他常见原因的平均值。同一条染色体上的两个基因座在距离较小时高度相关。但是两个基因座之间的交叉仍然可以随机发生,与距离成比例。可以在大样本量下区分真的因果QTL和假的邻近QTL。这种随机分配在回交或互交等实验杂交中是明确的。虽然这一概念可以扩展到自然种群,但必须特别注意混合、亲属关系和其他形式的亲缘关系。
第二,解释表型间的因果推理需要由表型和QTL节点组成的DAG中的条件独立性概念。在接下来的三个段落中,我们提出了一些定义和结果,使我们能够推断表型与表型的因果关系。
现在我们陈述关于系统遗传学中因果推理的四个重要结果:(1)两个DAG是马尔可夫等价的当且仅当它们具有相同的骨架和相同的v-结构集[54];(2)分布等价意味着马尔可夫等价,但匡威不一定是真的[50];(3)对于高斯回归模型,马尔可夫等价意味着分布等价[21];(4)对于齐次条件高斯回归模型,马尔可夫等价蕴含分布等价[9]。
因此,对于HCGR参数族,两个DAG是分布和似然等价的,当且仅当它们是马尔可夫等价的。这意味着我们可以简单地检查任何两个DAG是否具有相同的骨架和相同的v结构集,以确定它们是否是似然等价的,因此不能使用数据进行区分。
7.2.4表型网络结构条件下的QTL定位
注意,如[9]中所指出的,条件LOD得分可以被采用作为表型和QTL之间独立性的正式度量。尽管我们将注意力限制在HCGR模型上,但条件LOD分析是检测连续和离散随机变量之间条件独立性的通用框架。与偏相关相反,条件LOD评分不需要假设数据的多正态性以正式检验独立性,并且它可以通过协变量相互作用来处理QTL。
7.2.5表型网络和因果QTL的联合推断
7.3表征生物学知识的因果表型网络
除了基因型QTL外,生物学知识也是促进表型网络构建的重要信息来源。这些知识可以整合在因果网络之上,以提供基因如何调控的更全面的图景。这种整合的网络可以产生一个新的基因调控假说,与生物学知识具有整体一致性。
在本节中,我们提出了一个网络推理方法,QTLnet-prior,从表型数据与遗传变异,整合生物学知识。QTLnet-prior扩展了第7.2.5小节末尾提到的QTLnet框架。它指定了表型网络结构的先验概率,以整合多个生物学知识来源,并根据知识的可靠性灵活调整参数[55]。生物学知识的加权集成可以产生更具预测性的贝叶斯网络。我们的扩展框架QTLnet-prior的细节在7.3.1小节中介绍。在第7.3.2小节中,我们概述了用于QTLnet先验实现的Metropolis-Hastings MCMC方案,该方案集成了网络结构的采样[19,37],QTL作图和生物知识权重的采样。在7.3.3小节中,我们介绍了如何将生物学知识编码到表型网络结构的先验分布中。
7.3.1模型
扩展模型
表型网络结构
生物学知识权重
引入权值参数控制生物学知识对表型网络的影响。更高的权重值会增加生物知识对网络后验分布的影响。特别地,大的W使表型网络结构与生物学知识B一致的先验概率显著增加。相反,一个小的W会使所有可能的网络的先验概率相当相等。如果生物知识B与生成表达数据的真实网络相似,则后验概率将在高W处达到峰值。相反,如果生物学知识与真实网络有很大的偏差,则后验概率将在小W处达到峰值。这是因为W越小,偏差网络和真实网络的先验概率之比越小。因此,真实网络的后验可以大于偏离网络的后验,这是由于在较小的W下似然比克服了先验比。
因果QTL的先验
在没有任何关于因果QTL的具体信息的情况下,我们将因果QTL的先验设置为均匀分布。在贝叶斯QTL作图中可以找到几个替代的物种,如[59]和[58]。
7.3.2 MCMC示意图
7.3.3生物学知识编码概述
7.4模拟
我们进行了一项模拟研究,将所提出的方法(QTLnet-prior)与其他三种方法进行比较:QTLnet [9],WH-prior [55]和Expression。表7.3提供了这四种方法在使用遗传变异信息和生物学知识方面的总结。QTLnet使用R/QTLnet实现,QTLnet-prior使用R/QTLnet上的先验设置实现,WH-prior如[55]中所述进行编程,修改为使用BIC评分而不是使用BGe评分近似边缘可能性[17]。通过修改R/QTLnet以排除QTL作图来编程表达。
7.5酵母细胞周期基因分析
7.6结论
我们已经开发了一个表型网络推理方法(QTLnet-prior),将遗传变异信息和生物学知识。已知基因型控制表型,而不是相反,因此可以帮助区分表型网络结构。生物学知识可以改善表型之间的聚类和方向性推理。仿真研究表明,在知识与数据一致的前提下,该方法能有效地融合遗传变异信息和生物学知识,提高基因网络的重构效率。当生物知识与数据不一致时,知识的权重控制了生物知识先验概率对数据似然的贡献,在一定程度上降低了缺陷知识的负面影响。我们应用QTLnet-prior通过整合转录因子结合信息来估计具有因果QTL的26个基因的酵母细胞周期网络,并将其性能与QTLnet进行比较。权重的分布表明转录因子结合信息与表达数据不一致。尽管如此,与QTLnet的输出比较显示出相当相似的结果,这表明知识的权重参数在这种情况下有效地控制了不一致知识的负面影响。
当我们解释推断出的网络时,我们需要谨慎。尽管在理论上,引入因果QTL使我们能够区分网络结构,否则可能是等效的,但在实践中,一些检测到的表达间因果关系可能是无效的。可能的解释是,推断的表达网络代表了可能发生在转录调控水平之外的真实的因果关系的投影。例如,真正的因果调节可能是由于转录因子结合,直接蛋白质-蛋白质相互作用,磷酸化,甲基化等,并且可能无法在基因表达水平上得到很好的反映。结合从不同水平的生物调节中挖掘的不同生物学知识,可以潜在地改善基因表达调节网络的重建。在任何情况下,这些网络的推理仍然可以在产生假设可能的因果关系方面发挥重要作用。
有几个因素可以改变QTLnet先验推断。一个是先验分布规范.根据方程(7.4)中的绝对距离测量,我们已经使用吉布斯分布作为方程(7.5)中的网络结构的先验分布,以结合生物学知识。在方程(7.6)中,生物学知识的权重采用指数分布,并采用率参数(见7.3.1小节)。然而,我们可以考虑不同的网络结构分布、信息整合测度、权重分布和超参数的选择。另一个因素是表达式数据的样本大小。随着样本量的增加,生物学知识的贡献将普遍减少。这表明,生物学知识对网络重构的贡献有限,尽管生物学知识B也可以从大量实验中获得,如[55]中所讨论的。第三个因素是生物知识对网络重构的全局控制。通过酵母细胞周期网络可以看出,每个转录因子/靶调控都由相同的权重参数控制。它可能没有导致任何生物学知识的贡献,即使转录因子/靶向调控被推断为与表达数据一致。这意味着在重构网络时通过局部控制参数来结合生物学知识。最后,生物学知识的编码也起着重要角色。我们已经提出使用来自[4]的转录因子及其靶的编码、来自[28]的蛋白质-蛋白质相互作用、以及来自[36]的基因本体注释。这些编码主要是关于在单独的生物调节水平上的直接关系。如前一段所讨论的,这种被丢弃的生物学知识可以改进贝叶斯网络的重构。
贝叶斯网络分析中的一个持续挑战是如何科普大型网络,因为DAG空间大小随着节点数量的超指数增长。已经提出了基于马尔可夫毯的方法,对父节点的数量有限制和没有限制[45,47,49]。在[27]中,作者将贝叶斯网络问题近似为线性规划问题。在[51]中,作者开发了一种并行算法,该算法推断限制在马尔可夫毯上的子网络并合并子网络。类似地,在遗传估计中,已经研究了从小树重建超树[5]。我们认为,严格发展的超级贝叶斯网络方法,以整合小型子网络是一个有前途的方向推理的大型网络,因为推理的小型子网络是计算成本低,多个子网络可以并行计算。在这个生物学数据和各方面知识丰富的时代,大规模地合理整合它们可能是未来研究的一个有趣课题。
参考文献
略
相关文章:
论文阅读(七):贝叶斯因果表型网络解释遗传变异和生物学知识
1.论文链接:Bayesian Causal Phenotype Network Incorporating Genetic Variation and Biological Knowledge 摘要: 在分离群体中,数量性状基因座(QTL)定位可以确定对表型有因果效应的QTL。这些方法的一个共同特点是Q…...
数据库之PostgreSQL详解
一、PostgreSQL介绍 PostgreSQL是一个功能强大的 开源 的关系型数据库。底层基于C实现。 PostgreSQL的开源协议和Linux内核版本的开源协议是一样的。。BDS协议,这个协议基本和MIT开源协议一样,说人话,就是你可以对PostgreSQL进行一些封装&a…...
计算机毕业设计Python+CNN卷积神经网络高考推荐系统 高考分数线预测 高考爬虫 协同过滤推荐算法 Vue.js Django Hadoop 大数据毕设
温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 作者简介:Java领…...
可被electron等调用的Qt截图-录屏工具【源码开放】
1. 工具功能简介: (1)、QT5.15.2截图工具(exe)可单独使用或嵌入IM(嵌入方法参照:https://gitee.com/lykiao/yfscreenshot_release) (2)、支持通过Windows消息通知截图成功或取消 (3)、支持圆形、矩形、线条…...
【Python蓝桥杯备赛宝典】
文章目录 一、基础数据结构1.1 链表1.2 队列1.3 栈1.4 二叉树1.5 堆二、基本算法2.1 算法复杂度2.2 尺取法2.3 二分法2.4 三分法2.5 倍增法和ST算法2.6 前缀和与差分2.7 离散化2.8 排序与排列2.9 分治法2.10贪心法1.接水时间最短问题2.糖果数量有限问题3.分发时间最短问题4.采摘…...
.cc扩展名是什么语言?C语言必须用.c为扩展名吗?主流编程语言扩展名?Java为什么不能用全数字的文件名?
.cc扩展名是什么语言? .cc是C语言使用的扩展名,一种说法是它是c with class的简写,当然C语言使用的扩展名不止.cc和.cpp, 还包含.cxx, .c, .C等,这些在不同编译器系统采用的默认设定不同,需要区分使用。当然,编译器提…...
基于 Redis GEO 实现条件分页查询用户附近的场馆列表
🎯 本文档详细介绍了如何使用Redis GEO模块实现场馆位置的存储与查询,以支持“附近场馆”搜索功能。首先,通过微信小程序获取用户当前位置,并将该位置信息与场馆的经纬度数据一同存储至Redis中。利用Redis GEO高效的地理空间索引能…...
项目练习:重写若依后端报错cannot be cast to com.xxx.model.LoginUser
文章目录 一、情景说明二、解决办法 一、情景说明 在重写若依后端服务的过程中 使用了Redis存放LoginUser对象数据 那么,有存就有取 在取值的时候,报错 二、解决办法 方法1、在TokenService中修改如下 getLoginUser 方法中:LoginUser u…...
Python算法详解:贪心算法
贪心算法(Greedy Algorithm)是一种通过选择当前最优解以期望达到全局最优解的算法思想。它在每一步选择时只考虑当前状态下的局部最优,而不关心全局问题的复杂性。这种算法简单高效,适用于某些特定问题,尤其是存在贪心…...
5.3.2 软件设计原则
文章目录 抽象模块化信息隐蔽与独立性衡量 软件设计原则:抽象、模块化、信息隐蔽。 抽象 抽象是抽出事物本质的共同特性。过程抽象是指将一个明确定义功能的操作当作单个实体看待。数据抽象是对数据的类型、操作、取值范围进行定义,然后通过这些操作对数…...
sublime_text的快捷键
sublime_text的快捷键 向下复制, 复制光标所在整行并插入到下一行:通过 CtrlShiftD 实现快速复制当前行的功能。 可选多行, 不选则复制当前行 ctrl Shift D 删除当前行:通过 CtrlShiftK 实现快速删除当前行的功能。 可选多行, 不选则删当前行 ctrl S…...
【项目集成Husky】
项目集成Husky 安装初始化 Husky在.husky → pre-commit文件中添加想要执行的命令 安装 使用 Husky 可以帮助你在 Git 钩子中运行脚本,例如在提交代码前运行测试或格式化代码pnpm add --save-dev husky初始化 Husky npx husky init这会在项目根目录下创建一个 .hu…...
本地运行大模型效果及配置展示
电脑上用ollama安装了qwen2.5:32b,deepseek-r1:32b,deepseek-r1:14b,llama3.1:8b四个模型,都是Q4_K_M量化版。 运行过程中主要是cpu和内存负载比较大,qwen2.5:32b大概需要22g,deepseek-r1:32b类…...
数据结构与算法 —— 常用算法模版
数据结构与算法 —— 常用算法模版 二分查找素数筛最大公约数与最小公倍数 二分查找 人间若有天堂,大马士革必在其中;天堂若在天空,大马士革必与之齐名。 —— 阿拉伯谚语 算法若有排序,二分查找必在其中;排序若要使用…...
进阶数据结构——高精度运算
目录 前言一、高精度运算的定义与背景二、高精度运算的实现方式三、高精度运算的算法实现四、高精度运算的应用场景五、代码模版(c)六、经典例题1.[高精度加法](https://www.lanqiao.cn/problems/1516/learning/?page1&first_category_id1&name…...
第一届“启航杯”网络安全挑战赛WP
misc PvzHE 去这个文件夹 有一张图片 QHCTF{300cef31-68d9-4b72-b49d-a7802da481a5} QHCTF For Year 2025 攻防世界有一样的 080714212829302316092230 对应Q 以此类推 QHCTF{FUN} 请找出拍摄地所在位置 柳城 顺丰 forensics win01 这个软件 云沙盒分析一下 md5 ad4…...
前端八股CSS:盒模型、CSS权重、+与~选择器、z-index、水平垂直居中、左侧固定,右侧自适应、三栏均分布局
一、盒模型 题目:简述CSS的盒模型 答:盒模型有两种类型,可以通过box-sizing设置 1.标准盒模型(content-box):默认值,宽度和高度只包含内容区域,不包含内边距、边框和外边距。 2.边框盒模型&a…...
使用 Tauri 2 + Next.js 开发跨平台桌面应用实践:Singbox GUI 实践
Singbox GUI 实践 最近用 Tauri Next.js 做了个项目 - Singbox GUI,是个给 sing-box 用的图形界面工具。支持 Windows、Linux 和 macOS。作为第一次接触这两个框架的新手,感觉收获还蛮多的,今天来分享下开发过程中的一些经验~ 为啥要做这个…...
Windows程序设计10:文件指针及目录的创建与删除
文章目录 前言一、文件指针是什么?二、设置文件指针的位置:随机读写,SetFilePointer函数1.函数说明2.函数实例 三、 目录的创建CreateDirectory四、目录的删除RemoveDirectory总结 前言 Windows程序设计10:文件指针及目录的创建与…...
Rk3588芯片介绍(含数据手册)
芯片介绍:RK3588是一款低功耗,高性能的处理器,适用于基于arm的PC和边缘计算设备,个人移动互联网设备和其他数字多媒体应用,集成了四核Cortex-A76和四核Cortex-A55以及单独的NEON协处理器 视频处理方面:提供…...
golang 使用双向链表作为container/heap的载体
MyHeap:container/heap的数据载体,需要实现以下方法: Len:堆中数据个数 Less:第i个元素 是否必 第j个元素 值小 Swap:交换第i个元素和 第j个元素 Push:向堆中追加元素 Pop:从堆…...
HTML DOM 修改 HTML 内容
HTML DOM 修改 HTML 内容 引言 HTML DOM(文档对象模型)是浏览器内部用来解析和操作HTML文档的一种机制。通过DOM,我们可以轻松地修改HTML文档的结构、样式和行为。本文将详细介绍如何使用HTML DOM来修改HTML内容,包括元素的增删改查、属性修改以及事件处理等。 1. HTML …...
基于51单片机和WS2812B彩色灯带的流水灯
目录 系列文章目录前言一、效果展示二、原理分析三、各模块代码四、主函数总结 系列文章目录 前言 用彩色灯带按自己想法DIY一条流水灯,谁不喜欢呢? 所用单片机:STC15W204S (也可以用其他1T单片机,例如,S…...
React第二十八章(css modules)
css modules 什么是 css modules 因为 React 没有Vue的Scoped,但是React又是SPA(单页面应用),所以需要一种方式来解决css的样式冲突问题,也就是把每个组件的样式做成单独的作用域,实现样式隔离,而css modules就是一种…...
瑞芯微方案:RV1126定制开发板方案定制
产品简介 RV1126 核心板是常州海图电子科技有限公司推出的一款以瑞芯微 RV1126处理器为核心的通用产品,其丰富的设计资源、稳定的产品性能、强力的设计支持,为客户二次开发快速转化产品提供强有力的技术保障。RV1126 核心板集多种优势于一身,…...
吴恩达深度学习——有效运作神经网络
内容来自https://www.bilibili.com/video/BV1FT4y1E74V,仅为本人学习所用。 文章目录 训练集、验证集、测试集偏差、方差正则化正则化参数为什么正则化可以减少过拟合Dropout正则化Inverted Dropout其他的正则化方法数据增广Early stopping 归一化梯度消失与梯度爆…...
ollama改模型的存盘目录解决下载大模型报c:盘空间不足的问题
使用Ollama和Open WebUI快速玩转大模型:简单快捷的尝试各种llm大模型,比如DeepSeek r1,非常简单方便,参见:使用Ollama和Open WebUI快速玩转大模型:简单快捷的尝试各种llm大模型,比如DeepSeek r1…...
springboot集成钉钉,发送钉钉日报
目录 1.说明 2.示例 3.总结 1.说明 学习地图 - 钉钉开放平台 在钉钉开放文档中可以查看有关日志相关的api,主要用到以下几个api: ①获取模板详情 ②获取用户发送日志的概要信息 ③获取日志接收人员列表 ④创建日志 发送日志时需要根据模板规定日志…...
Day49:添加字典元素
在 Python 中,字典是一个可变的数据类型,这意味着你可以随时添加新的键值对。今天我们将学习如何向字典中添加元素。 1. 使用方括号 ([]) 添加新元素 最简单的方法是通过字典的键,使用方括号 [] 来添加新的键值对。如果该键已经存在&#x…...
Keepalived 安装
环境介绍 操作系统Kylin Linux Advanced Server V10 (Lance)Kylin Linux Advanced Server V10 (Lance)Kylin Linux Advanced Server V10 (Lance)内核版本Linux 4.19.90-52.22.v2207.ky10.aarch64Linux 4.19.90-52.22.v2207.ky10.aarch64Linux 4.19.90-52.22.v2207.ky10.aarch64…...
AI应用部署——streamlit
如何把项目部署到一个具有公网ip地址的服务器上,让他人看到? 可以利用 streamlit 的社区云免费部署 1、生成requirements.txt文件 终端输入pip freeze > requirements.txt即可 requirements.txt里既包括自己安装过的库,也包括这些库的…...
C++中vector追加vector
在C中,如果你想将一个vector追加到另一个vector的后面,可以使用std::vector的成员函数insert或者std::copy,或者简单地使用std::vector的push_back方法逐个元素添加。这里我将展示几种常用的方法: 方法1:使用insert方…...
普通人可以从DeepSeek工具获得什么帮助?
普通人可以从DeepSeek工具获得多方面的帮助,具体如下: 学习与教育 DeepSeek可以为学生提供作业辅导、知识点整理、论文思路生成等服务,帮助他们更好地理解和掌握学习内容。例如,学生可以通过DeepSeek获得详细的解题步骤和思路&…...
EtherCAT-快速搭建
EtherCAT-快速搭建 快速简介 快速简介 EtherCAT现场总线协议是由德国倍福公司在2003年提出的,该通讯协议拓扑结构十分灵活,数据传输速度快,同步特性好,可以形成各种网络拓扑结构。倍福公司推出了自己的ASIC专用芯片有ET1100和ET1…...
[Collection与数据结构] B树与B+树
🌸个人主页: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与…...
《大数据时代“快刀”:Flink实时数据处理框架优势全解析》
在数字化浪潮中,数据呈爆发式增长,实时数据处理的重要性愈发凸显。从金融交易的实时风险监控,到电商平台的用户行为分析,各行业都急需能快速处理海量数据的工具。Flink作为一款开源的分布式流处理框架,在这一领域崭露头…...
【AIGC专栏】AI在自然语言中的应用场景
ChatGPT出来以后,突然间整个世界都非常的为之一惊。很多人大喊AI即将读懂人类,虽然这是一句夸大其词的话,但是经过未来几十年的迭代,ChatGPT会变成什么样我们还真的很难说。在当前生成式内容来说,ChatGPT毫无疑问在当前…...
神经网络|(七)概率论基础知识-贝叶斯公式
【1】引言 前序我们已经了解了一些基础知识。 古典概型:有限个元素参与抽样,每个元素被抽样的概率相等。 条件概率:在某条件已经达成的前提下,新事件发生的概率。实际计算的时候,应注意区分,如果是计算综…...
数科OFD证照生成原理剖析与平替方案实现
数科OFD证照生成原理剖析及C#平替方案实现 1. OFD证照生成原理 OFD(Open Fixed-layout Document)是一种基于XML的固定版式文档格式,广泛应用于电子发票、电子证照等领域。数科OFD证照生成工具的核心原理包括以下几个方面: OFD文…...
未来无线技术的发展方向
未来无线技术的发展趋势呈现出多样化、融合化的特点,涵盖速度、覆盖范围、应用领域、频段利用、安全性等多个方面。这些趋势将深刻改变人们的生活和社会的运行方式。 传输速度提升:Wi-Fi 技术迭代加快,如 Wi-Fi7 理论峰值速率达 46Gbps&#…...
验证二叉搜索数(98)
98. 验证二叉搜索树 - 力扣(LeetCode) 解法: /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(nullptr) {}* …...
Day51:type()函数
在 Python 中,type() 是一个内置函数,用于返回对象的类型。它可以用于检查变量的类型,也可以用于动态创建新的类型。今天,我们将深入了解 type() 函数的使用方法。 1. 使用 type() 获取变量的类型 最常见的使用方式是将一个对象…...
DeepSeek-R1大模型本地部署及简单测试
目录 DeepSeek-R1大模型本地部署及简单测试背景我的测试环境模型参数选择适用场景参数规模 本地部署安装 DeepSeek-R1大模型本地部署及简单测试 背景 最近deepseek非常火, 要说2025年震惊科技圈的事件要数DeepSeek这个国产AI的横空出世,这是一款免费、开源且隐私优…...
【OpenGL】OpenGL游戏案例(二)
文章目录 特殊效果数据结构生成逻辑更新逻辑 文本渲染类结构构造函数加载函数渲染函数 特殊效果 为提高游戏的趣味性,在游戏中提供了六种特殊效果。 数据结构 PowerUp 类只存储存活数据,实际逻辑在游戏代码中通过Type字段来区分执行 class PowerUp …...
AI学习指南Ollama篇-使用Ollama构建自己的私有化知识库
一、引言 (一)背景介绍 随着企业对数据隐私和效率的重视,私有化知识库的需求日益增长。私有化知识库不仅可以保护企业数据的安全性,还能提供高效的知识管理和问答系统,提升企业内部的工作效率和创新能力。 (二)Ollama和AnythingLLM的结合 Ollama和AnythingLLM的结合…...
灵芝黄金基因组注释-文献精读109
The golden genome annotation of Ganoderma lingzhi reveals a more complex scenario of eukaryotic gene structure and transcription activity 灵芝(Ganoderma lingzhi)的黄金基因组注释揭示了更复杂的真核基因结构和转录活性情况 摘要 背景 普遍…...
【Proteus仿真】【51单片机】多功能计算器系统设计
目录 一、主要功能 二、使用步骤 三、硬件资源 四、软件设计 五、实验现象 联系作者 一、主要功能 1、LCD1602液晶显示 2、矩阵按键 3、加减乘除,开方运算 4、带符号运算 5、最大 999*999 二、使用步骤 基于51单片机多功能计算器 包含:程序&…...
MySQL数据类型转换应注意什么?
文章目录 1. **隐式转换**2. **显式转换**3. **数据截断**4. **字符集与排序规则**5. **日期和时间转换**6. **数值转换**7. **NULL 处理**8. **性能影响**9. **错误处理**10. **函数选择**示例总结 在 MySQL 中进行数据类型转换时,需要注意以下几个关键点ÿ…...
【LLM-agent】(task1)简单客服和阅卷智能体
note 一个完整的agent有模型 (Model)、工具 (Tools)、编排层 (Orchestration Layer)一个好的结构化 Prompt 模板,某种意义上是构建了一个好的全局思维链。 如 LangGPT 中展示的模板设计时就考虑了如下思维链:Role (角色) -> Profile(角色…...
【Linux】使用管道实现一个简易版本的进程池
文章目录 使用管道实现一个简易版本的进程池流程图代码makefileTask.hppProcessPool.cc 程序流程: 使用管道实现一个简易版本的进程池 流程图 代码 makefile ProcessPool:ProcessPool.ccg -o $ $^ -g -stdc11 .PHONY:clean clean:rm -f ProcessPoolTask.hpp #pr…...