Page 277 - 《软件学报》2025年第12期
P. 277
5658 软件学报 2025 年第 36 卷第 12 期
: has : hasBridge
BridgeEntity Region : hasMember : hasElement
: Bridge : MainBridge : Bridge : Girder : CrossSection
SuperStructure
rdf: type rdf: type rdf: type rdf: type rdf: type
: hasBridgeEntity : hasBridgeRegion : hasMember : hasElement
xsd: float B 桥
B 桥主桥 B 桥上部 左幅第 1/4截面处
: hasMaterialType 10跨主梁
: hasTotalLength 结构
: hasValue
预应力 : hasLength
rdf: type 混凝土
: Bridge B 桥 :hasStructuralType
TotalLength 全桥总长 rdf: type : hasMaterialProperty
: hasValue qudt_unit:
: hasUnit : hasUnit Meter
: Concret
连续刚构 C50 左幅第10跨 : hasUnit
MaterialType
qutd_schema: qudt_unit: 混凝土 主梁长度
1341.5 Meter
LengthUnit
rdf: type rdf: type rdfs: subClassOf rdf: type : hasValue rdf: type
qutd_schema: : Bridge : Concrete 120 qutd_schema:
: StructuralType
LengthUnit MaterialType Grade LengthUnit
图 2 IB2M 知识图谱概念、实例及其语义关系示例
3.1.2 实验设置
在实验开展过程中, 由于 5 个 OWL 图谱中蕴含语义信息差异性较大, 因此本文在 HeLis 和 IB2M 上测试全
部 5 种预测任务, 在 FoodOn 和 GO 测试类层级关系以及类属性关系预测任务, 在 DBpedia-20k 上测试类层级关系、
类属性关系以及类实例关系预测任务. 为了与现有方法结果进行比较, 本文基于 HeLis、FoodOn 以及 GO 展开对
比实验与大部分验证性实验, IB2M 和 DBpedia-20k 仅用于多类型 OWL 语义图谱适用性验证实验.
在基线方法的选择上, 为详细对比所提 MSV-KRL 方法的有效性和先进性, 本文选择了近年来主流的本体嵌
[26]
[23]
[51]
[47]
入方法作为对比, 包括 Box EL (2024)、InME/CoME (2024)、DGS (2022)、OWL2Vec* (2021)、OPA2Vec [57]
2
(2019)、OWL2Vec v1 [59] (2019)、Onto2Vec [56] (2018)、RDF2Vec [64] (2016). 由于 OWL 语义知识表示学习方法大多
采用轻量级 PLMs 作为编码器, 为了实验对比的公平性, 本文在 MSV-KRL 中使用 BERT-Base 模型, 并对其进行
自监督进阶训练.
在评价指标的选择上, 本文参照 OWL2Vec* [26] , 选择 Hits@k (简写为 H@k) 及 MRR (mean reciprocal rank) 作
为后续实验的评价指标. 其中, H@k 是指待预测三元组中的正确实体在候选实体集中的位次, k 值通常取 1、5 或
10, MRR 表示所有待预测三元组中正确实体在候选实体集中位次值的倒数均值, 两者都是值越大表示方法性能越
好. 两种指标具体如公式 (45)、(46) 所示, 其中 E 表示候选实体集合, |E| 表示候选实体集数量, 表示指示函数
I
(若条件为真则结果为 1, 反之则为 0), rank i 表示正确实体在排序后的候选实体集中的位次.
1 ∑ |E|
Hits@k = I(rank i ⩽ k) (45)
|E| i=1
1 ∑ |E| 1
MRR = (46)
|E| i=1 rank i
针对 5 个实验用的 OWL 语义图谱, 本文按照 7:1:2 划分训练集、验证集以及测试集, 不同视图单独进行划分,
以确保数据集中不同任务的数据分布更加均匀. 在对 HeLis、FoodOn 以及 GO 进行划分时, 分别使用 OWL2Vec*
中类实例数据集与类层级关系数据集替换本文划分好的数据集中相同任务部分, 便于能直接与其结果进行对比.
本文在训练时采用动态负例构造方法, 即每次输入三元组时都随机生成一个负例, 以增强模型泛化能力. 同时, 某
一任务的正例 (负例) 三元组对另外 4 个任务而言也是负例. 具体而言, 给定一个三元组 (s, p,o) ∈ D pos ⊏ D, 其中 D

