Relations Prediction for Knowledge Graph Completion using Large Language Models

news2024/9/21 7:42:53

文章目录

    • 题目
    • 摘要
    • 简介
    • 相关工作
    • 方法论
    • 实验
    • 结论
    • 局限性
    • 未来工作

题目

使用大型语言模型进行知识图谱补全的关系预测

在这里插入图片描述

论文地址:https://arxiv.org/pdf/2405.02738
项目地址: https://github.com/yao8839836/kg-llm

摘要

    知识图谱已被广泛用于以结构化格式表示事实。由于其大规模应用,知识图谱存在不完整性的问题。关系预测任务通过为每对节点分配一个或多个可能的关系来获得知识图谱完成。在这项工作中,我们利用知识图谱节点名称来微调关系预测任务的大型语言模型。通过仅使用节点名称,我们使我们的模型能够在归纳设置中充分运行。我们的实验表明,我们在广泛使用的知识图谱基准上取得了新的分数。

CCS 概念:• 计算方法 → 自然语言处理;知识表示和推理;语义网络。

ACM 参考格式:Sakher Khalil Alqaaidi 和 Krzysztof Kochut。2024. 使用大型语言模型进行知识图谱完成的关系预测。在第 8 届信息系统和数据挖掘国际会议 (ICISDM '24) 论文集上。ACM,纽约,纽约州,美国,10 页。

简介

    知识图谱 (KG) 用于以实体节点和边的形式存储语义数据。边表示实体之间的有向关系。例如,詹姆斯·卡梅隆制作了《阿凡达》这一事实可以存储在 KG 中,方法是使用生成的关系(边)将詹姆斯·卡梅隆节点链接到《阿凡达》节点。这种知识表示结构称为三元组;它由头节点、关系和尾节点组成。如果交换了围绕边的节点,此三元组中的方向对于保持事实的有效性很重要。由于 KG 在表示语义事实方面的效率,KG 被用于大规模应用,例如推荐系统和信息提取 [25]。然而,由于 KG 规模巨大,因此存在不完整的问题 [26]。因此,提出了几种用于知识图谱完成 (KGC) 的方法 [18]。预测节点对之间的关​​系就是其中一种方法。关系预测 (RP) 任务旨在识别两个给定节点之间的关系; RP 任务输入中的节点顺序对于保持关系方向和区分头节点和尾节点非常重要。正式地,在 RP 任务中,函数 𝑓 被训练来预测给定节点对的一组关系 𝑅,即头节点 𝑛ℎ 和尾节点 𝑛𝑡 ,如下所示:𝑓 (𝑛ℎ, 𝑛𝑡) = 𝑅。因此,在前面给出的例子中,RP 任务还可以预测詹姆斯·卡梅隆节点和阿凡达节点之间其他合理的关系,例如 writer_for、directed、honored_for 和 nominated_for。

    KGC 的最新成果是通过将节点和边编码为数值浮点向量而获得的 [18]。这些向量通常称为嵌入,它们广泛应用于基于机器学习的模型中。最初,KGC 模型仅依靠图结构来生成节点和边的嵌入 [3, 20]。图结构信息反映了节点的拓扑细节,例如节点度、可以从节点开始的步行长度以及节点邻域的结构。然而,基于 KGC 结构的模型在归纳设置中的表现不尽如人意,即在预测模型训练期间未见过的节点关系时。

    另一方面,一系列 KGC 模型采用了从节点内容生成的嵌入,例如节点标签中的文本或节点属性中的数值 [29, 30]。然而,由于内容类型的异构性,一些 KGC 模型仅利用了语言模型易于进行文本编码所支持的文本内容。此外,能够处理模型训练期间未见过的节点文本,这使得基于语言模型的 KGC 在开放世界场景中具有优势。

    在自然语言处理 (NLP) 中,语言模型与机器学习的结合已经在各种任务上取得了惊人的成就,特别是在预训练语言模型 (PLM) 出现之后,例如 BERT、GPT2 和 Roberta [12]。最近,大型语言模型 (LLM) 凭借其庞大的训练语料库和先进的转换器 [22],在多个 NLP 任务中表现优于 PLM。

    在这项工作中,我们利用 LLM 来完成知识图谱。特别是,我们利用了 Llama 2 [22],这是一种新的但功能强大的 LLM。我们使用 Llama 2 对关系预测任务执行序列多标签分类,并在 Freebase 基准测试中获得新分数。此外,我们在 WordNet 基准测试中获得的分数与文献中报告的分数相当;我们将在第 4 节中证明这些分数的合理性。我们的实现在归纳设置下效果很好,因为我们只依赖节点的文本信息来预测关系。此外,我们的模型优于其他模型,因为我们只使用节点名称,即在微调模型时忽略冗长的节点描述。

相关工作

    知识图谱完成 KGC 模型因遵循的方法而异,即(但不详尽)基于规则的方法 [8, 31]、张量分解方法 [1, 13, 21]、基于结构翻译的方法 [3, 9] 和 KG 内容利用方法 [24, 29]。除此之外,KGC 模型还因完成目标而异。一系列模型旨在通过预测 KG 三元组中缺失的实体来完成 KG [3, 7]。实体预测 (EP) 或链接预测 (LP) 是这个方向的常用名称。类似地,另一个 KGC 目标是预测节点对中的关系,这对于通过两种方式丰富知识图谱。首先,通过在节点之间建立缺失的链接。其次,通过使用多关系链接来促进已经连接的节点。

    在这里,我们回顾了相关的关系预测模型,并在表 1 中重点介绍了它们与我们的工作相比的主要区别和特点。TransE [3] 提出了一种翻译方法,使用它们的结构信息来表示图中的节点和边。模型训练目标是在翻译方程 𝐸(ℎ, 𝑟, 𝑡) = ||ℎ +𝑟 −𝑡|| 中获得较低的能量分数,其中 𝐸 是能量分数,ℎ、𝑟 和 𝑡 分别是头节点、边和尾节点嵌入。PTransE [9] 扩展了 TransE,以在知识图谱的表示学习中使用关系路径。PTransE 不仅仅考虑节点之间的直接边,还考虑了多步关系路径。 TKRL [28] 是一个同样遵循 TransE 中的翻译技术的模型,由节点实体类型为 KGC 任务提供支持。DKRL [27] 使用 TransE 嵌入并将它们与节点的描述嵌入对齐。Word2Vec [10] 用于描述编码,然后将嵌入输入到卷积神经网络。KG-BERT [29] 将三元组的文本内容仅作为 BERT 语言模型的输入,然后针对 LP 任务和 RP 任务对模型进行微调。KGML [14] 是一个简单而有效的 RP 模型。KGML 的作者使用独热编码器表示实体,并在多层神经网络中使用输入。TaRP [4] 将实体类型纳入模型决策层,而不是纳入嵌入学习中。
该模型基于不同的 KG 嵌入方法提出了多种变体,例如 TransE 和 RotateE [20]。 Shallom [5] 训练了一个浅层神经网络来学习节点对嵌入,然后预测它们可能的关系。与上述模型相比,我们的模型具有以下优势:仅使用节点名称表示的最小节点信息、能够在归纳设置中操作以及进行单阶段训练(如表 1 所示)。

在这里插入图片描述

    语言模型文本特征提取源于寻找单词表示 [15] 到句子和文档表示。循环神经网络 (RNN) [17] 能够理解单词序列,但其有效性受到内存限制的制约,限制了单词考虑的范围。因此,RNN 中句子的语境化表示往往不能令人满意。后来,注意力技术 [23] 导致了 Transformer 架构的构建。使用注意力 Transformer,NLP 模型能够掌握完整的句子或段落并呈现有意义的表示。鉴于计算技术的增强,更先进的 Transformer 模型在具有自监督学习目标的大型语料库上进行训练。这些模型被称为预训练语言模型 (PLM);一些出色的 PLM 示例是 BERT 和 GPT [6, 16]。最近,大型语言模型 (LLM) 使用自回归转换器架构对更大的语料库进行预训练,其中包括在线百科全书、书籍、学术论文以及电影和访谈中的口头对话的网络爬取转储。感知如此大量的文本内容导致同时处理多个领域的更复杂的语言规则和专家知识。PLM 和 LLM 通过对下游任务进行微调而用于各种应用程序。自出现以来,LLM 一直以重要的应用吸引着我们,例如能够达到人类水平表现的聊天机器人,如 ChatGPT 中所展示的那样。在这项工作中,我们通过展示其优于使用其他语言模型的作品,有效地在 RP 任务中使用了 LLM。

方法论

    我们利用强大的大型语言模型 Llama 2 [22] 来预测实体对之间的合理关系。实体表示知识图谱中的节点,关系集是固定的。图 1 显示了我们实现的主要架构。我们对 Llama 2 进行了微调,以完成下游监督任务,即多标签序列分类。我们验证了基于分类交叉熵损失的微调过程。在这里插入图片描述其中 𝑦ˆ 表示预测的关系概率,𝑦 表示真实二进制标签,𝐶 表示关系大小。

    文本编码为了实现简单而高效的实现,我们选择仅使用实体名称作为 LLM 的输入。LLM 的预训练和微调阶段涉及文本标记化,然后将标记编码为数字 ID [19]。因此,我们使用 Llama 2 标记器将实体文本转换为数字 ID。标记器将文本序列中的每个单词与其词汇表中的 ID 进行匹配。如果没有匹配,标记器会将单词分成块。标记器使用这些块来查找新的匹配项或不断将其分解,直到在递归操作中达到字符级别。

在这里插入图片描述

    除了输入 ID,标记器还使用特殊标记 [CLS] 和 [SEP]。前者表示序列的开头,而后者用于分隔每个实体词序列。为了保持输入 ID 列表的一致性,应用了填充和截断操作。因此,如果输入 ID 列表的大小小于定义的填充长度,则使用填充标记来填补空白。或者,如果输入 ID 列表较大,则应用截断过程。除了输入 ID 列表之外,标记器还返回注意掩码,即二进制值序列。注意掩码中带有 1 的项目表示标记在输入 ID 列表中的位置,而零表示填充标记(如果有)。

    Llama 2 从标记器接收输入 ID 和注意力掩码,然后通过多层注意力转换器处理这些值。每层的参数都根据提供的关系标签进行微调。用于序列分类的 Llama 2 有一个顶层线性层,它输出最终的关系概率。

实验

    实验设置 为了展示我们模型的有效性,我们在两个广泛认可的基准 FreeBase [2] 和 WordNet [11] 上进行了评估。表 2 显示了两个 KG 的统计数据。负抽样是 LP 任务中的一种常见做法,经常导致训练三元组的重复。具体而言,这种方法涉及通过将原始正标签替换为负标签来破坏训练三元组的副本。破坏通常涉及用无效的、随机选择的实体替换正确的实体。虽然这种方法旨在增强训练数据的多样性并提高模型性能,但它不可避免地延长了训练时间。然而,当涉及到 RP 任务时,负采样的实施提出了一个独特的研究挑战。
在这里插入图片描述

    这主要是因为 RP 任务涉及为节点对分配多个标签,而不像 LP 任务中使用的二进制标签。因此,由于标签分配方法的根本差异,我们选择不将负采样纳入 RP 任务。 Llama 2 预训练大型语言模型集合的参数数量从 70 亿到 700 亿不等。考虑到我们的计算资源,我们选择对使用 70 亿参数预训练的 Llama 2 模型进行微调以用于 RP 任务。我们使用 Nvidia A100-SXM-80GB 作为 GPU 节点。我们仅使用 PyTorch 对 Llama-2-70B 进行 10 个 epoch 的微调。Llama 的标记器中实体文本序列的填充长度为 50。我们使用 Adam 算法进行优化。学习率为 5e-5,优化器衰减为 25%。

    评估指标 平均排名 (MR) 和 Hits@N 是评估预测排名的常用指标,特别是在 KGC 任务中。鉴于模型预测代表关系概率,MR 指标计算按降序排列的概率中真实关系的平均排名。正式定义为在这里插入图片描述其中 𝑄 是查询集。因此,KGC 模型旨在实现较低的 MR 值。在这种情况下,考虑到可能为一对节点预测多个关系,过滤设置 [3] 特别有用。因此,在这种评估场景中,预测等级应该减少排名高于预测等级的有效关系的数量。我们在实验结果中报告了过滤设置的性能。Hits@N 指标用于计算按降序排列的 N 个概率中发现的真实关系的平均数量。正式定义为在这里插入图片描述其中 𝑄 是查询集。通常,KGC 模型以 𝑁 = 1 报告此指标。同样,我们也这样做。我们还在结果中使用此指标的过滤设置。我们扩展了模型报告的分数,以显示表 5 中 Hits@5 的结果。此外,我们在同一张表中显示了平均倒数排名 (MRR) 分数。MRR 指标类似于 MR 指标,不同之处在于它将分数表示为百分比值。以下等式是 MRR 指标的正式定义。在这里插入图片描述

    比较模型 我们将我们的模型与各种 RP 基线进行比较。第 2 节简要解释了比较中使用的每个模型的方法。TransE [3] 中的 RP 分数由其他几篇论文报告,我们在比较中使用它们的分数。PTransE [9] 基于嵌入连接方法和路径长度提出了几种变体。我们在比较中报告了它们最佳变体的分数。TKRL [28] 提出了一种用于构建分层类型投影矩阵的递归变体,该变体在 RP 任务中获得了其他变体中的最佳性能。同样,DKRL [27] 提出了几种变体。然而,具有卷积层和 TransE 嵌入的变体获得了最佳分数。在 KGML [14] 中,𝛼 是它们组合损失函数之间的平衡参数。我们报告了它们在两个不同的 𝛼 参数中出现的最佳分数。

    Shallom [5] 与 KGML 的不同之处在于它对实体嵌入采用了连接步骤。此外,在交叉熵损失利用率方面也有所不同。TaRP [4] 提出了三种基于嵌入子模型的变体。性能最佳的变体是使用 RotateE [20] 进行 KG 嵌入的变体。TaRP 中的 KG 嵌入与关系决策级阶段一起使用,这取决于节点类型。我们的架构与 KG-BERT [29] 相似,但有两个不同之处,即使用的语言模型和节点信息的使用。鉴于我们能够使用作者发布的代码重现 KG-BERT 的结果,其他模型的代码无法在线获取,例如 TaRP。

    主要结果表 3 和表 4 分别报告了我们对 FreeBase 和 WordNet KG 的评估结果。在 FreeBase 中,我们的模型在 MR 和 Hit@1 指标中的表现优于最佳得分,但 KG-BERT 和 KGML(𝛼 = 0.0)的过滤 Hits@1 除外,在这些指标中,我们的模型得分低 1%。我们将过滤后的 Hits@1 得分归因于两个主要原因。

    首先,过滤设置中的评估程序。确切地说,在评估过程中,训练和验证的纳入增加了三倍,从而提高了模型的得分。其次,KG-BERT 中的训练周期延长,作者建议为 20 个周期,而我们的模型仅训练了 10 个周期。在 WordNet KG 评估中,我们认为我们的模型由于两个原因无法取得优势。首先,关系集的大小,它比 FreeBase 小得多。其次,数据集的性质,它是英语的词汇 KG。

在这里插入图片描述
    归纳设置 为了展示 LLM 和基于文本的 RP 模型在归纳设置中的有效性,即在预测模型训练期间未见过的文本的关系时,我们在 FreeBase KG 的分割上评估模型,该分割包含验证部分和训练部分中未包含的测试实体。此外,验证部分包括与训练部分中任何实体都不匹配的实体。我们根据 FreeBase 原始测试三元组的随机 10% 生成这些分割。表 5 显示了以前结果中使用的相同指标和另外两个指标(即 MRR 和 Hits@5,在第 4.2 节中描述)的得分。值得注意的是,结果显示归纳设置的性能接近传导设置。例如,我们的模型在传导设置中的 MRR 得分仅好 5% 左右。

在这里插入图片描述
    故障分析 表 6 报告了我们模型的三个最低测试预测。这三条记录根据预测中基本事实关系的排名被排序为最差。我们将这三个观测值的低排名归因于两个原因。首先,具有相同关系的训练三元组数量有限。换句话说,该模型对这三种关系的训练不足。例如,三元组 #1 中的关系 Appointed_by 在数据集的训练部分只出现过一次。其次,实体歧义问题,即节点名称代表多个实体时。例如,在三元组 #3 中,很难将实体金星识别为太阳行星或罗马女神。

结论

    我们引入了 RPLLM,它是使用大型语言模型来完成关系预测任务的。该模型旨在通过预测给定一对节点实体的合理关系来完成知识图谱。RPLLM 利用了 Llama 2,这是一种新的、功能强大的大型语言模型。我们在一个著名基准上进行的实验表明,RPLLM 超过了关系预测任务中取得的最佳分数。

局限性

    虽然 LLM 在理解文本序列方面表现出色,但它们仍然需要大量计算资源才能有效运行。因此,我们的实验仅限于运行具有 70 亿个参数的 Llama 2。但是,借助额外的 GPU 功能,我们可以利用 700 亿个参数的版本。通过使用统一指标,可以进一步增强对 KGC 模型的评估。例如,几个模型采用平均倒数排名而不是平均排名。此外,模型可以在 Hits@N 指标中使用不同的 N 值,例如 3、5 和 10。

未来工作

    未来的 KGC 研究可以解决实体歧义问题。我们在第 4.6 节中展示了这个问题如何导致我们模型评估中的排名较低。具体来说,未来的努力可以探索利用训练三元组中的关系文本,这在我们的实现中没有考虑到。此外,未来的努力可以有效地利用实体描述来改善结果,同时尽量减少额外的计算负荷。此外,一个有前途的研究方向可以通过引入具有更复杂关系预测场景的新评估知识图来丰富文献。我们声称,包括我们在内的当前模型都表现出最先进的性能,这由报告的预测等级始终很高以及新研究的小幅改进所证明。

    未来的研究可以利用我们的工作,通过对模型进行额外的微调来获得更好的结果。此外,我们的实现可以适用于实体预测任务,从而提出新的贡献。此外,一个潜在的研究方向可以探索负采样技术在 RP 任务中的应用,如第 4.1 节所述。最后,虽然我们的模型能够在实体归纳设置中运行,但它并非为处理关系归纳设置而设计的。换句话说,它无法预测训练期间未遇到的关系。因此,未来的工作可以解决这个问题。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2151720.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

高级java每日一道面试题-2024年9月20日-分布式篇-什么是CAP理论?

如果有遗漏,评论区告诉我进行补充 面试官: 什么是CAP理论? 我回答: 在Java高级面试中,CAP理论是一个经常被提及的重要概念,它对于理解分布式系统的设计和优化至关重要。CAP理论是分布式系统理论中的一个重要概念,它描述了一个分…

【数学分析笔记】第3章第2节 连续函数(4)

3. 函数极限与连续函数 3.2 连续函数 3.2.9 反函数的连续性定理 【定理3.2.2】【反函数连续性定理】设 y f ( x ) yf(x) yf(x)在闭区间 [ a , b ] [a,b] [a,b]上连续且严格单调增加,设 f ( a ) α , f ( b ) β f(a)\alpha,f(b)\beta f(a)α,f(b)β&#xff0…

仓颉编程入门

#体验华为仓颉编程语言# 仓颉发布的第一时间,就申请了测试。昨天发现申请通过 ,果断下载SDK体验一下。 废话不多说,从下载完开始,下面这个图,就是下载的文件: 看文件夹样子跟c/c套路差不多。bin目录是cjc…

linux安装nginx+前端部署vue项目(实际测试react项目也可以)

🧸本篇博客作者测试上线过不下5个项目,包括单纯的静态资源,vue项目和react项目,包好用,请放心使用 📜作者首页:dream_ready-CSDN博客 📜有任何问题都可以评论留言,作者将…

什么是大模型的泛化能力?

大模型的泛化能力指的是模型在未见过的数据上表现的能力,即模型不仅能在训练数据上表现良好,也能在新的、未知的数据集上保持良好的性能。这种能力是衡量机器学习模型优劣的重要指标之一。 泛化能力的好处包括但不限于: 提高模型的适应性&a…

基于uniapp的民宿酒店预订系统(后台+小程序)

💗博主介绍💗:✌在职Java研发工程师、专注于程序设计、源码分享、技术交流、专注于Java技术领域和毕业设计✌ 温馨提示:文末有 CSDN 平台官方提供的老师 Wechat / QQ 名片 :) Java精品实战案例《700套》 2025最新毕业设计选题推荐…

F28335中断系统

1 中断介绍 1.1 中断概念 1.2 TMS320F28335 中断概述

CUDA并行架构

一、CUDA简介 CUDA(Compute Unified Device Architecture)是一种由NVIDIA推出的通用并行计算架构,该架构使GPU(Graphics Processing Unit)能够对复杂的计算问题做性能速度优化。 二、串并行模式 高性能计算的关键是利用多核处理器进行并行计算。 串行模式&#…

使用LangGPT提示词让大模型比较浮点数

使用LangGPT提示词让大模型比较浮点数 背景介绍环境准备创建虚拟环境安装一些必要的库安装其他依赖部署大模型启动图形交互服务设置提示词与测试 LangGPT结构化提示词 背景介绍 LLM在对比浮点数字时表现不佳,经验证,internlm2-chat-1.8b (internlm2-cha…

Excel-时间取整,工作有效时长计算

在计算考勤时,打卡时间不是整点,上班时间是遵循整点开始计算的,员工提前打卡,所以要用到时间向上取整。 上班取整: 使用CEILING函数可实现该需求,参考以下公式,第一个参数为上班打卡时间&#…

MySQL篇(窗口函数/公用表达式(CTE))(持续更新迭代)

目录 讲解一:窗口函数 一、简介 二、常见操作 1. sumgroup by常规的聚合函数操作 2. sum窗口函数的聚合操作 三、基本语法 1. Function(arg1,..., argn) 1.1. 聚合函数 sum函数:求和 min函数 :最小值 1.2. 排序函数 1.3. 跨行函数…

一文读懂SpringCLoud

一、前言 只有光头才能变强 认识我的朋友可能都知道我这阵子去实习啦,去的公司说是用SpringCloud(但我觉得使用的力度并不大啊~~)… 所以,这篇主要来讲讲SpringCloud的一些基础的知识。(我就是现学现卖了,主要当做我学习SpringCloud的笔记吧&…

英集芯IP5902:集成电压可调异步升压转换充电管理功能的8位MCU芯片

英集芯IP5902是一款集成了9V异步升压转换、锂电池充电管理及负端NMOS管的8-bit MCU芯片,外壳采用了SOP16封装形式,高集成度和丰富的功能使其在应用时只需很少的外围器件,就能有效减小整体方案的尺寸,降低BOM成本,为小型…

Vue使用axios实现Ajax请求

1、什么是 axios 在实际开发过程中,浏览器通常需要和服务器端进行数据交互。而 Vue.js 并未提供与服务器端通信的接口。从 Vue.js 2.0 版本之后,官方推荐使用 axios 来实现 Ajax 请求。axios 是一个基于 promise 的 HTTP 客户端。 关于 promise 的介绍…

C#开源的一个能利用Windows通知栏背单词的软件

前言 今天给大家推荐一个C#开源且免费的能利用Windows通知栏背单词的软件,可以让你在上班、上课等恶劣环境下安全隐蔽地背单词(利用摸鱼时间背单词的软件):ToastFish。 操作系统要求 目前该软件只支持Windows10及以上系统&…

Scrapy爬虫实战——某瓣250

# 按照我个人的习惯,在一些需要较多的包作为基础支撑的项目里,习惯使用虚拟环境,因为这样能极大程度的减少出现依赖冲突的问题。依赖冲突就比如A、B、C三个库,A和B同时依赖于C,但是A需要的C库版本大于N,而B…

Linux系统查找文件的所属目录

在Linux下查找文件的所属目录方法较多,既可以在图形桌面系统中用搜索功能查找文件,也可以在字符终端窗口中用不同的命令查找不同类型文件并显示其所在目录,针对不同的文件类型,有不同的命令。 一、在图形桌面系统中查找 如图1&a…

利用 ARMxy边缘计算网关和 BLiotlink 软网关,实现工业智能化升级

在当今数字化、智能化的时代浪潮中,工业领域也在不断寻求创新与突破,以提高生产效率、降低成本并提升竞争力。ARM 工业计算机与 BLiotlink 协议转换软件的结合,为工业智能化带来了新的机遇和解决方案。 一、ARM 工业计算机的优势 ARM 工业计…

【4.4】图搜索算法-BFS和DFS两种方式解岛屿数量

一、题目 给你一个由 1(陆地)和 0(水)组成的的二维网格,请你计算网格中岛屿的数量。岛屿总是被水包围,并且每座岛屿只能由水平方向或竖直方向上相邻的陆地连接形成。此外,你可以假设该网格的四条…

I2C中继器TCA9517A(TI)

一、芯片介绍 本芯片是一款具有电平转换功能的双向缓冲器,适用于I2C和SMBus系统,同时支持各种拓扑结构的扩展使用。芯片支持SCL和SDA缓冲,因此允许两条总线的负载电容达到400pF。 TCA9517A的A和B侧驱动器是不同的,但是均可耐受5…