Mind Map:大语言模型中的知识图谱提示激发思维图10.1+10.2
知识图谱提示激发思维图
- 摘要
- 介绍
- 相关工作
- 方法
- 第一步:证据图挖掘
- 第二步:证据图聚合
- 第三步:LLM Mind Map推理
- 实验
- 实验设置
- 医学问答
- 长对话问题
- 使用KG的部分知识生成
- 深入分析
- 总结
摘要
LLM通常在吸收新知识的能力、generation of hallucination 以及决策过程的透明度方面有局限性。
“generation of hallucination”(幻觉生成)
可以指代使用计算机模型或算法生成虚假的感知或幻觉。这是指通过对输入数据进行处理和转换,模型可以生成看起来像是真实幻觉的信息。
大语言模型如GPT-3是基于机器学习技术的,通过从大量文本数据中学习语言模式和上下文来生成文本回复。尽管它可以生成合理的、连贯的回答,但它并不具备真实的感知能力,也不会产生真实的幻觉。
本文讨论了如何用知识图谱提示LLM,作为一种补救措施,让LLM掌握最新知识,并结合内隐知识和检索的外部知识进行推理。此外,还研究了从LLM中引出推理路径。具体来说,建立了一个提示管道,使LLM能够理解KG的输入,并结合内隐知识和检索的外部知识进行推理。此外,还研究了引出mind map,LLM在此基础上进行推理并生成答案。
研究表明,生成的mind map展示了基于知识本体论的LLM推理路径,从而为LLM推理在生成中的预测和衡量带来了前景。
实验基于三个问题&答案集,也展示了mind map提示带来了惊人的经验收益。还证明了通过从KG中检索结构化事实,Mind Map可以优于一系列文档检索方法的提示,受益于KG更准确、简洁和全面的知识。
介绍
将LLM扩展到十亿个参数和万亿个单词,在各种任务中都能获得令人惊讶的表现。预训练的LLM可以通过微调适应领域任务,或者在结构调整中与人类偏好保持一致。尽管如此,LLM存在以下缺陷:
-
灵活性:
预训练的LLM知识过时,对参数的更新不灵活。因为收集高质量的指令数据和构建训练管道成本可能高昂,或者持续微调LLM会带来灾难性遗忘的风险,微调LLM可能很棘手。 -
hallucination:
LLM会产生看起来合理但是输出错误的污染。 -
透明度:
LLM因其黑盒性质缺乏透明度收到批评。知识隐含地存储在LLM的参数中,因此不可能进行验证。此外,深度神经网络中的参考过程难以捉摸,无法解释。
知识图谱是构建大规模结构知识库的经典方法,由三个实体和关系构成{head,relation,tail}。KG可以提供明确的知识表示和可解释的推理路径。此外,KG还可以不断修改,以调整现有知识或添加新知识。由于其灵活性、精确性和可解释性,KG成为LLM缺点的一种很好的补充。例如,将KG三元组添加到LLM的训练中,或者将KG编码器与LLM层缠绕在一起,以对图形和文本数据进行联合推理和优化。相比之下,本文工作集中在KG和固定LLM的推理上,这使用与强大的预训练LLM。一般来说,这个领域的现有技术可以分为以下两种类型:
-
检索强化 LLM推断:
研究人员试图检索文档以增强LLM推断,同时又面临检索不准确和文档冗长的问题。最近,有几次尝试将提取的KG三元组合并到LLM的提示中,以回答与KG相关的问题。然而,这种方法将KG输入视为纯文本,并忽略其图形结构,这导致生成的响应很难验证,并且容易产生幻觉。 -
使用LLM进行图形挖掘:
也有人试图促使LLM理解图形输入,而他们主要试验图形挖掘任务,例如边缘检测和图形摘要。在需要基于KGs的多个证据图进行复杂推理的文本生成任务中,很少对其进行探索。
这项工作的目标是建立一种即插即用的提示方法,以引出LLM中的思维图推理能力。我们称我们的方法为Mind Map,因为它使LLM能够理解图形输入,从而构建自己的mind map,支持基于证据的生成。
框架的概念演示如图2所示。具体来说,MinaMap激发了LLM的思维图,(1)整合从KGs中检索到的事实和LLM中的隐含知识,
(2)在输入KGs中发现新模式,
(3)在mindMap上推理以获得最终输出。
在三个数据集上进行了实验,以表明MindMap在很大程度上优于其他一系列尝试方法。这项工作主要研究LLM如何学会与KG进行协同推理,将内隐和外显知识相结合,形成透明可靠的干预。
相关工作
提示工程
“预训练、提示、预测”范式已经成为少量或零样本方式进行自然语言处理的最佳方式。核心是LLM能够通过上下文内学习适应输入上下文和指令后的新任务,尤其是指令调整和对齐检索增强生成是为LLM推理提供额外证据的一种动态方式。通常做法是查询密集数据库,找到输入用户问题的相关文档,然后将检索到的语料库放回提示输入。然而,文档可能很长,因此不符合LLM的上下文限制。而且,及时可以构建长文档做为提示,LLM通常无法在提示中间捕获信息并会产生幻觉。另一条研究路线旨在提示引发LLM在链和树中间的推理步骤,尽管如此,本文的工作还是探索了在图输入上激发LLM的推理,重点是与内隐和外显知识的联合推理。
知识图谱强化LLM
研究人员探索使用KG来增强LLM主要在一下两个方向上:
(1)将KG合并到LLM预训练
(2)将KG注入LLM推断过程
对于(1),通过将KG实体和关系放入训练数据中来设计知识感知训练对象是一种常见的做法,或应用KG检测任务(例如链接预测)作为附加监督。然而,当阿静预先收集的数据扩展到具有三个单词的网络规模语料库时,难以找到或创建具有近似规模的KG。跟重要的是,尽管这些方法通过监督将KG知识直接压缩到LLM的参数中。它们并没有减轻LM在可修复性、可靠性和透明度方面的基本限制。
对于(2),早期的工作集中再通过注意力将KG三元组融合到LLM的输入中,或将图编码器链接到LLM编码器已处理KG输入。后续研究进一步采用了与LLM并行的图神经网络进行联合推理,并在LLM的中间层添加了文本标记和KG实体之间的交互。看到最近预训练LLM的成功,研究范式正在转向用图形输入来提示固定的预训练LLM。这一行的重新搜索包括提示KG实体链接前缀的LLM、图形挖掘和KG问答。虽然这些方法允许LLM理解图形属兔,但它们要么专门针对KG任务,要么回忆检索到的事实并将其翻译为纯文本而忽略了KG的结构。
方法
MindMap框架如图3所示,包括三个主要组件:
- 证据图挖掘:首先从原始输入中识别实体集 V q V_q Vq,并插叙KG构建多个证据子图 G q G_q Gq
- 证据图聚合:接下来,LLM被提示理解并聚合检索到的证据子图,以构建推理图 G m G_m Gm
- 在mind map上的LLM推理:最后,提示LLM整合所构建的推理图及其隐含知识来生成答案,并构建解释推理过程的mind map。
第一步:证据图挖掘
从外部KG中发现相关证据的子图,分为两个主要步骤:
实体识别:首先通过上下文学习提示LLM从问题查询Q中提取关键实体。构建了一组样例{ Q k , M k {Q_k,M_k} Qk,Mk} k K _k^K kK,其中都由一对输入句子 O k O_k Ok和相应的实体集 M k M_k Mk组成。将样本作为内容预先发送到候选查询Q,并要求LLM生成实体集M。由于提取的实体M可能不都属于G中的实体集,所以需要进一步执行实体链接。具体来说,用BERT编码器将G中和M内的所有实体分别编码为密集嵌入 H G H_G HG和 H M H_M HM。将M中的每个实体与G中与其最近的相邻实体通过比较它们的余弦相似性联系起来,
证据子图探索
通过定义资源知识图谱,其中代表了实体集、关系集和文本集。本阶段的目标是基于抽取的实体 V q V_q Vq建立证据子图。
一个证据子图被定义为,其中 V q V_q Vq是节点集, E q E_q Eq是边集,其中每一条边都有。
通过基于路径和基于邻居的探索来探索源KG,以构建证据子图的过程如图4所示。
基于路径的证据图探索 通过追踪Vq中的实体在G中的中间路径来连接它们:
(a)选择 V q 0 V^0_q Vq0中的一个节点作为上的起始节点 v 1 v_1 v1。将剩余节点放置在候选节点集中Vcand。探索从 v 1 v_1 v1到下一个节点 v 2 v_2 v2的k跳,其中v2 属于 Vcand。如果在k跳内成功到达 v 2 v_2 v2,则将起始节点更新为 v 2 v_2 v2,并从Vcand中删除 v 2 v_2 v2。如果在k个跳中找不到 v 2 v_2 v2,则连接到目前为止获得的路径段,并将其存储在 G q p a t h G^{path}_q Gqpath中。然后从Vcand中选择另一个节点 v 1 ′ v'_1 v1′作为新的开始节点,并从Vcand中移除 v 1 v_1 v1和 v 2 v_2 v2。
(b)检查Vcand是否为空。如果它不为空,则迭代(a)以查找路径的下一段。如果它为空,则连接所有段以构建一组子图,并将它们放入 G q p a t h G^{path}_q Gqpath中。
基于邻居的证据图探索目的是将更多与查询相关的证据纳入Gq。分为两步:
(a)通过1跳到它们的邻居节点{v’}来扩展每个节点v∈Vq,以将三元组{( v , e , v ′ v,e,v' v,e,v′)}添加到Gneiq。
(b)检查每个v’是否在语义上与该问题相关。如果相关,进一步扩展v’的一跳邻居,在Gneiq中添加三元组( v n e i , e ′ , v ′ v_{nei},e',v' vnei,e′,v′)。
还将用bridging pathway中所有新添加的中间节点更新Vq。经过探索对Gpathq和Gneiq进行了调整,以减少头上的信息,同时保持多样性:
(a)按照它们的头实体对所有子图进行聚类,在探索之前从原始查询中提取并填充Vq;
(b)检查每个聚类,如果图的数量超过预定义的阈值,则随机抽样。
通过合并剩下的子图,我们可以获得最终的证据图Gq。
第二步:证据图聚合
在这一步骤中,提示LLM来将不同的证据子图Gq聚合到合并的推理图Gm中,以便为步骤3中的输出生成带来所有证据子图的全局视图。
添加了结构来提示LLM用自然语言描述每个证据子图G*q的结构指令。生成证据路径集Gq={cq(1),cq(2),…,cq(n)},其中每个c*q表示一个结构路径,例如“(疲劳,恶心)- 表示 -肝脏问题”。分别对所有基于路径的子图Gpathq和所有基于邻居的子图Gneiq进行提示,生成推理图Gm={Gpathm,Gneim}。这种设计提示有两个优点:
(1)LLM采用了小子图的整体视图,将它们浓缩成统一简洁的格式;
(2)LLM有助于消除自然语言中相似实体的歧义。
第三步:LLM Mind Map推理
在这一步骤中,LLM会被合并的两个证据图Gpathm,Gneim提示以产生最终输出。
图推理的提示
为了触发LLM生成mind map并找到最终结果,本文提供了一个由五个组件组成的prompt:系统指令、问题、证据图Gm、Graph-of-Thought指令和模板。具体来说,Graph-of-thought指令要求LLM在(a)理解输入的证据图,(b)建立自己的推理mind map,以及(C)用证据图建立的基础时,一步一步地思考以产生最终结果。
附录D的表8中提供了使用的提示模板。最后的计划是在思维导图上提供详细的图形推理路径,其中图形中的每个实体都以输入证据图Gm为基础,如图3中的右框所示。
LLM和KG知识的协同推理
先前的检索增强了LLM倾向于重新表述检索到的事实,而忽略了LLM本身的知识。然而,Mind Map鼓励LLM在自己的知识范围内丰富检索到的证据图,从而实现协同推理。据推测LLM是通过(1)语言理解实现的,因为LLM可以理解并从自然语言描述的Gm中提取知识边缘;(2)知识推理,因为LLM在产生基于Gm构建的Mind Map的最终答案时利用了其隐含的边缘知识。如图2所示,LLM可以识别连接现有节点和文本图信息的新链接,从而启用graph-of-thought并产生新的见解。
实验
针对一系列需要复杂推理和领域知识的问题&答案任务,并将其与基于检索的基线进行比较。
实验设置
实验设计三个数据集:
(1)GenMedGPT-5k
(2)CMCQA
(3)ExplainCPE
这些数据集的统计数据如表1所示。
附录A中描述了数据管理过程。
此外,建立了两个KG,EMCKG和CMCKG,以支持KG增强方法。
选择普通的GPT-3.5和GPT-4作为仅使用隐含知识进行推断的基线。然后添加了三个检索增强基线:BM25检索器、Text Enbed ding检索器和KG检索器。
医学问答
使用GenMedGPT-5k测试LLM如何处理医学领域的问题回答,LLM需要回答疾病诊断、药物推荐和测试建议。
评估指标
使用BERTScore和GPT-4评分来定量评估所有方法的性能。BERTScore可以测量生成的答案与参考答案之间的语义相似性。
还利用GPT-4来理解答案:
(1)以基本事实为参考,对所有方法的答案质量进行排名;
(2)在四个轴上对两种选择方法的答案进行配对比较:反应多样性和完整性、总体情况的正确性、疾病诊断的正确性以及用药建议的正确性。
结果
表2给出了BERIScore和GPT-4的排名分数。
可以看出,所有方法都会产生类似的BERTScore,其中Mind Map显示出比其他方法的边缘改进,这意味着所有方法都产生了与真实答案相似的答案。这可能是由于所有反应的语气相似,与临床医生常用的语言相似,但BERTSCore只测量整体语义的相似性。然而,我们发现,当按GPT-4排名时,Mind Map比其他方法有明显的进步,平均排名为1.8725。相比之下,(vanilla baseline)香草基线GPT-3.5和GPT-4的答案最差,分别排名4.85和4.17。主要原因是回答医学问题需要对领域知识进行全面的探索和理解,而在GPT模型的实例知识中进行推理可能会导致看似合理但错误的答案。相比之下,本文方法对外部KG进行了彻底的探索,并提供了基于证据的答案。
从更精细的方面深入探讨这些方法的配对比较。结果如表3所示。可以观察到,与其他基线相比,Mind Map产生了全面优异的性能。与简单的知识基线相比,Mind Map在四个方面的平均得分分别为88.21%和82.97%。这进一步强调了引入外部知识以减轻LLM幻觉的重要性。此外,还发现Mind Map在很大程度上优于其他基于检索的方法。KG Retriever(KG检索器) 基线从与MindMap相同的KG中检索事实是不值得的。尽管如此,Mind Map的优势在于KG知识和简化LLM知识的协同推理,以及对KG来源的全面探索,从而产生准确多样的答案。然而,其他检索器基线存在检索不准确、知识库探索不足或输入过长的问题。
长对话问题
在CMCQA数据集上进行了实验,其中,长对话需要更复杂的推理来涵盖答案所需的所有事实。ChatGPT-4的排名结果如表4所示。其中MindMap的排名仍然优于大多数基线,但是与KG检索器相似。表5进一步说明了成对获胜率结果,其中MindMap在GPT-4判断中始终优于基线。具体来说,与公认的GenMedGPT-5K相比,MindMap方法与基线之间差距缩小了。这是因为所使用的KG没有涵盖回答CMCQA中问题所需的所有事实。
尽管如此,MindMap仍然优于所有基于检索的数据库,包括KG检索器。据推测,以前的基于检索的方法倾向于只根据检索到的外部知识进行推断来回答问题,然而,这种简单的提示策略破坏了LLM利用其隐含知识理解复杂逻辑和复杂对话的能力。相反,MindMap在图推理过程中结合了外部知识和内部知识,从而从两者中获得更准确的答案。
使用KG的部分知识生成
研究了MindMap在仅从部分涵盖explainCPE中回答问题所需知识的KG检索时的性能。至关重要的是,LLM需要通过结合其隐含知识和检索知识来得出答案,这在生产中很常见。
评估指标
根据生成的选择的准确性和生成的解释的质量来评估所有方法。为了评估解释质量,还使用了BERTScore和GPT-4排名。具体来说,我们要求GPT-4评分器优先考虑解释的正确性,而不是帮助性或完整性。
结果
表6中显示了所有方法的准确性。发现MindMap比大多数基线都获得了更好的准确性,这进一步验证了MindMap相对于文档检索提示方法的优越性。还发现,简单地将检索到的知识放入程序有时会破坏答案的质量。因为KG检索器和BM25检索器的性能都比普通GPT-3.5模型差。通过检查错误的答案,发现检索到的事实只能部分回答问题,因为使用的外部知识库和问题之间不匹配。这一发现将LLM的显式和隐式知识相结合,以实现具有鲁棒性的推理。还发现,GP1-4比GPT-3.5+MindMap更好。据推测,从国家执业药剂师考试中提取的试题在GPT-4的预训练语料库中,并存储在GPT-4的内部记忆中。
对指令提示的设计进行了消融分析。删除明确指示LLM“与您现有的知识相结合”的提示P1可将模型的性能提高8.2%。此外,表7表明MindMap在生成答案的理由方面表现出色,在GPT-4中排名2.98。
深入分析
MindMap进一步对案例进行了深入分析,重点讨论了以下几个方面。
Mind Map如何对不匹配的事实保持健壮性?
附录E中图5中的解释充分问题包含多个症状事实,其中一些具有误导性。在这个方案中,某些事实,例如“我眼睛里的黄疸”,在检索相关证据时提供了不正确的信息。例如,文档检索器等基线模型在搜索证据时检索到与“眼睛”相关的知识,导致无法获得正确的疾病。推荐的药物和测试也与肝脏疾病无关。相比之下,我们的模型MindMap准确地将这种疾病识别为“肝硬化”,并建议进行适当的测试,即“血液测试”,证明了其健壮性。
MindMap如何聚合考虑实体语义的证据图?
如图6所示
类似“阴道炎”和“萎缩性阴道炎”在不同的证据子图中出现,但它们在本质上是相同的。MindMap使LLM能够消除歧义,并合并相同的证据图进行推理。h-nal思维导图输出还将实体定位到输入证据图。此外,图6显示了GPT-4评分者对所有方法的总体事实正确性和疾病诊断事实正确性的偏好。对于所有事实正确性来说,GPT-4评分器指出,MindMap提供了更具体的疾病诊断结果,而基线只给出了模糊的提及,缺乏治疗选择。为了疾病诊断的事实正确性,GPT-4评分器认为MindMap的诊断更符合常规。
MindMap如何可视化推理过程和证据来源?
图7展示了一个对CMCQA的完整的答案。输出由三个部分组成:摘要、推理过程和MindMap。摘要从MindMap中提取了正确和具体的结果,推理过程显示了从证据图Gm上提取的实体开始的多个推理链。MindMap将所有的推理链同一到推理图中。它提供了对每个推理步骤中涉及的知识连接以及证据查询子图的原始来源的直观理解。
MindMap如何利用LLM知识执行各种任务?
图8展示了MindMap在不同类型问题上的表现。
问题(a)和(d)是与药品有关的问题,需要深入的知识。在这些任务中,MindMap比其他方法显示出明显的优势。问题(b)和(f)是疾病知识的问题。在这些案例下,这种检索方法获得了与MindMap相当的结果,表明了外部知识的结合缓解了LLM的幻觉。最重要的观察来自问题(c),该问题设计一般知识。这种情况下,想GPT-3.5这样的LLM模型表现更好,而检索方法表现较差。这表明,检索方法在一定程度上忽略了LLM所学到的知识。相反,MindMap在处理一般知识问题方面的表现与GPT-3.5相当。这表明MindMap有效的将LLM本身的知识与KG知识协同用于推理目的。
总结
本文介绍了知识图谱的提示:
(1)赋予LLM理解KG输入的能力
(2)利用复杂的知识和检索到的外部知识结合用来促进LLM的推理
(3)研究了启发MindMap,LLM执行推理,并生成具有图中表示的原理来生成答案。通过在三个Q&A数据集上进行广泛的实验,展示了MindMap方法与普通LLM和检索增强生成方法相比有更为显著的时机效果。
相关文章:
Mind Map:大语言模型中的知识图谱提示激发思维图10.1+10.2
知识图谱提示激发思维图 摘要介绍相关工作方法第一步:证据图挖掘第二步:证据图聚合第三步:LLM Mind Map推理 实验实验设置医学问答长对话问题使用KG的部分知识生成深入分析 总结 摘要 LLM通常在吸收新知识的能力、generation of hallucinati…...
[引擎开发] 杂谈ue4中的Vulkan
接触Vulkan大概也有大半年,概述一下自己这段时间了解到的东西。本文实际上是杂谈性质而非综述性质,带有严重的主观认知,因此并没有那么严谨。 使用Vulkan会带来什么呢?简单来说就是对底层更好的控制。这意味着我们能够有更多的手段…...
docker--redis容器部署及地理空间API的使用示例-II
文章目录 Redis 地理位置类型API命令操作示例JAVA使用示例导入依赖RedisTemplate 操作GeoData示例CityInfo实体类Geo操作接口类Geo操作接口实现类SpringBoot测试类RedissonClient 操作GeoData示例docker–redis容器部署及与SpringBoot整合 docker–redis容器部署及地理空间API的…...
Vue中如何进行文件浏览与文件管理
Vue中的文件浏览与文件管理 文件浏览与文件管理是许多Web应用程序中常见的功能之一。在Vue.js中,您可以轻松地实现文件浏览和管理功能,使您的应用程序更具交互性和可用性。本文将向您展示如何使用Vue.js构建文件浏览器和文件管理功能,以及如…...
jenkins利用插件Active Choices Plug-in达到联动显示或隐藏参数,且参数值可修改
1. 添加组件 Active Choices Plug-in 如jenkins无法联网,可在以下两个地址中下载插件,然后放到/home/jenkins/.jenkins/plugin下面重启jenkins即可 Active Choices Active Choices | Jenkins plugin 2. 效果如下: sharding为空时…...
香蕉叶病害数据集
1.数据集 第一个文件夹为数据增强(旋转平移裁剪等操作)后的数据集 第二个文件夹为原始数据集 2.原始数据集 Cordana文件夹(162张照片) healthy文件夹(129张) Pestalotiopsis文件夹(173张照片&…...
天地无用 - 修改朋友圈的定位: 高德地图 + 爱思助手
1,电脑上打开高德地图网页版 高德地图 (amap.com) 2,网页最下一栏,点击“开放平台” 高德开放平台 | 高德地图API (amap.com) 3,在新网页中,需要登录高德账户才能操作。 可以使用手机号和验证码登录。 4,…...
AtCoder Beginner Contest 232(A-G)
A - QQ solver (atcoder.jp)直接按题意模拟即可。 B - Caesar Cipher (atcoder.jp)按题意模拟即可 C - Graph Isomorphism (atcoder.jp)按题意模拟即可 D - Weak Takahashi (atcoder.jp) 一个非常套路的网格dp E - Rook Path (atcoder.jp) (1)题意 有…...
计算机网络(第8版)-第5章 运输层
5.1 运输层协议概述 5.1.1 进程之间的通信 图5-1 中两个运输层之间有一个深色双向粗箭头,写明“运输层提供应用进程间的逻辑通信”。 图5-1 运输层为相互通信的应用进程提供了逻辑通信 5.1.2 运输层的两个主要协议 5.1.3 运输层的端口 请注意,这种…...
AtCoder Beginner Contest 231(D-F,H)
D - Neighbors (atcoder.jp) (1)题意 给出M组关系,问是否有一个排列,能表示A[i]和B[i]相邻 (2)思路 考虑如果有环,显然不能满足排列,因为排列中度数最多为2,若有超过2的显…...
【Python】map
map()函数是Python内置函数之一,它的主要作用是将一个函数应用于可迭代对象中的每个元素,并返回一个包含结果的迭代器。 map()函数的语法如下: map(function, iterable)function参数是一个函数,表示要应用于可迭代对象每个元素的…...
Swift 5.9 与 SwiftUI 5.0 中新 Observation 框架应用之深入浅出
0. 概览 Swift 5.9 一声炮响为我们带来全新的宏(Macro)机制,也同时带来了干霄凌云的 Observation 框架。 Observation 框架可以增强通用场景下的使用,也可以搭配 SwiftUI 5.0 而获得双剑合璧的更强威力。 在本篇博文,…...
【已解决】在 Vite 项目中使用 eslint-config-ali 时遇到的解析错误
错误还原 搭建 Vite 项目 pnpm create vite my-vue-app --template vue-ts安装 eslint-config-ali pnpm i -D eslint-config-ali typescript-eslint/parser typescript-eslint/eslint-plugin eslint-plugin-import eslint-import-resolver-typescript vue-eslint-parser esl…...
蓝桥杯每日一题2023.10.5
3420. 括号序列 - AcWing题库 题目描述 题目分析 对于这一我们需要有前缀知识完全背包 完全背包的朴素写法: #include<bits/stdc.h> using namespace std; const int N 1010; int n, m, v[N], w[N], f[N][N]; int main() {cin >> n >> m;fo…...
PyTorch实例:简单线性回归的训练和反向传播解析
文章目录 🥦引言🥦什么是反向传播?🥦反向传播的实现(代码)🥦反向传播在深度学习中的应用🥦链式求导法则🥦总结 🥦引言 在神经网络中,反向传播算法…...
Arcgis提取玉米种植地分布,并以此为掩膜提取遥感影像
Arcgis提取玉米种植地分布上,并以此为掩膜提取遥感影像 一、问题描述 因为之前反演是整个研究区,然而土地利用类型有很多类,只在农田或者植被上进行反演,需要去除水体、建筑等其他类型,如何处理得到下图中只有耕地类…...
软件工程与计算总结(四)项目管理基础
目录 一.项目和项目管理 二.团队组织与管理 三.软件质量保障 四.软件配置管理 五.项目实践 一.项目和项目管理 1.软件开发远不是纯粹的编程,随着软件规模的增长,软件开发活动也变得越来越复杂~ 2.软件项目就是要将所有的软件开发活动组织起来&#…...
【Python】datetime 库
# timedelta(days, seconds, microseconds,milliseconds, minutes, hours, weeks) 默认按顺序传递参数 # 主要介绍 datetime.datetime 类 # 引入 from datetime import datetime today datetime.now() # 获取当前时间 2023-10-05 15:58:03.218651 today1 datetime.utcnow() #…...
从0开始python学习-28.selenium 需要图片验证的登录
url https://test.com/login driver.get(url) # 获取登录页面需要输入账号密码进行模拟登录操作 user driver.find_element(By.XPATH,//*[id"login"]/div[2]/div/form[2]/div[2]/div/div/input).send_keys(username) pwd driver.find_element(By.XPATH,//*[id&qu…...
Nginx搭建Rtmp流媒体服务,并使用Ffmpeg推流
文章目录 1.rtmp流媒体服务框架图2.nginx配置3.配置nginx4.使用ffmpeg推流5.实时推摄像头流 本项目在开发板上使用nginx搭建流媒体服务,利用ffmpeg进行推流,在pc上使用vlc media进行拉流播放。 1.rtmp流媒体服务框架图 2.nginx配置 下载:wge…...
IDEA 将一个普通Java工程转化为maven工程
打开IntelliJ IDEA并打开Java工程。 在项目窗口中,右键单击项目名称,选择“Add Framework Support”。 在弹出的窗口中,选择“Maven”。 在“Maven Information”窗口中,填写Group Id、Artifact Id和Version等基本信息。 点击…...
linux下的永久保存行号
linux下的永久保存行号 1.首先 这里是引用 输入命令:vi ~/.vimrc 其次 这里是引用 输入命令 set number...
92岁高龄的创始人张忠谋谈台积电发展史
一、张忠谋和台积电 在台北一间办公室里,张忠谋最近拿出一本印有彩色图案的旧书。它的标题是《VLSI 系统导论》,这是一本研究生水平的教科书,描述了计算机芯片设计的复杂性。92岁的张先生满怀敬意地举起它。 92岁高龄的台积电创始人张忠谋 “…...
【VIM】VIm初步使用
玩转Vim-从放弃到入门_哔哩哔哩_bilibili...
教育类《中学政史地》收稿方向-投稿邮箱
教育类《中学政史地》收稿方向-投稿邮箱 《中学政史地》收稿方向:中学政治、历史、地理类稿件 《中学政史地》创办于1987年,是我国唯一一份集中学政治、历史、地理三门学科为一体的综合性月刊。每月两期,分初中版和高中版。以服务学生、服务…...
数据库的备份与恢复
数据备份的重要性 备份的主要目的是灾难恢复。 在生产环境中,数据的安全性至关重要。 任何数据的丢失都可能产生严重的后果。 造成数据丢失的原因: 程序错误人为操作错误运算错误磁盘故障灾难(如火灾、地震)和盗窃 数据库备份…...
string类的模拟实现(万字讲解超详细)
目录 前言 1.命名空间的使用 2.string的成员变量 3.构造函数 4.析构函数 5.拷贝构造 5.1 swap交换函数的实现 6.赋值运算符重载 7.迭代器部分 8.数据容量控制 8.1 size和capacity 8.2 empty 9.数据修改部分 9.1 push_back 9.2 append添加字符串 9.3 运算符重载…...
C 函数指针
就像指针可以指向一般变量、数组、结构体那样,指针也可以指向函数。 函数指针的主要用途是向其他函数传递“回调”,或者模拟类和对象。 形式如下: int (*POINTER_NAME)(int a, int b) 这类似于指向数组的指针可以表示所指向的数组。指向函数…...
zkVM设计性能分析
1. 引言 本文主要参考: 2023年9月ZKSummit10 Wei Dai 1k(x) & Terry Chung 1k(x)分享视频 ZK10: Analysis of zkVM Designs - Wei Dai & Terry Chung 当前有各种zkVM,其设计思想各有不同,且各有取舍,本文重点对现有各z…...
调用gethostbyname实现域名解析(附源码)
VC常用功能开发汇总(专栏文章列表,欢迎订阅,持续更新...)https://blog.csdn.net/chenlycly/article/details/124272585C软件异常排查从入门到精通系列教程(专栏文章列表,欢迎订阅,持续更新...&a…...
怎么在企查查网站做企业认证/网络整合营销公司
文章目录文章参考什么是HappyPack? 作用是什么?HappyPack的基本原理?使用案例安装依赖库webpack.config.js 配置如何使用 happypack配置说明webpack配置问题:HappyPack: plugin for the loader 1 could not be found?文章参考 roadhog 构建…...
集团网站 wordpress/百度推广账号注册
计算机网络概念和功能 网络:网样的东西或网状系统 计算机网络:是一个将分散的、具有独立功能的计算机系统,通过通信设备与线路连接起来,由功能完善的软件实现资源共享和信息传递的系统。 计算机网络是互连的、自治的计算机集合…...
企业所得税优惠政策2020年/知乎关键词排名优化
Flask最强攻略 -- 第七篇 Flask 中路由系统 Flask中的路由系统其实我们并不陌生了,从一开始到现在都一直在应用 app.route("/",methods["GET","POST"]) 为什么要这么用?其中的工作原理我们知道多少? 请关注跟DragonFire学Flask 之 路由系统 ,这…...
wordpress搭建企业网站/太原seo自媒体
不邀自来。这个问题,我之前也考虑过,包括异常处理,都是很繁琐的,不是核心的业务逻辑,但是充斥在代码的各个角落,很繁琐。我的解决方案,是通过aop注解的方式,无侵入式的解决。1.第一步…...
asp做网站/搜狗收录入口
↓↓↓最初的梦想◆◆◆ ◆2009年,因为英语教育的改革,我的家教中心面临着转型的危机,为此,我来到了北京的清华大学,准备加盟他们的清华少儿英语。在那里,我第一次接触了机器人这个行业——清华少年科学家。…...
俄文网站开发地点/seo技术软件
原文网址:http://www.dbsnake.com/amdu-extract-asm-files-from-unmount-diskgroup.html Posted: March 4, 2012 | Author: Cui Hua | Filed under: Oracle | 2 Comments AMDU是Oracle 11g里自带的一个免费的工具,用于分析ASM磁盘组的元数据以及从不能mount的磁盘…...