两篇知识表示方面的论文
文章目录
一、RDF相关
原文链接:An RDF Data Set Quality Assessment Mechanism for Decentralized Systems
这篇文献的主要内容是针对现在去中心化的网络结构,其数据的描述具有多样性,而这些数据大多都是根据原始的RDF数据集所产生的。RDF数据集的质量对这种去中心化的网络结构有着重要的影响。文献中提出了一种对RDF数据集的评估模型,用来衡量RDF数据集的质量高低。
分散的网络结构的特点:
- 有很多节点
- 节点之间没有层次关系
- 每个节点可以独立运行,不受其它节点干扰
- 节点之间相互连接
优点:减少对中心节点的依赖,增强整个结构的安全性和鲁棒性。
去中心化产品:区块链、比特币
RDF出现在第三代Internet,其核心是语义Web技术,其目的是解决不同形式的数据描述造成的难以集成。原始RDF数据集的质量是影响分散系统性能的关键因素。使用区块链来存储质量评估结果,这可以减少权威机构的集中化。
1.1 模型设计
结点质量由两部分组成:节点服务质量(节点有效提供服务的能力,受物理因素影响)、节点数据质量(节点服务质量度量,重点关注)。
RDF数据集的质量因素:空白节点数量、数据冗余、URI的可访问性
1) 评估结果构造
数据冗余的定义为:
Redundancy (data) = 1 − USPO ( data ) SPO ( data ) \text {Redundancy}_{\text {(data)}}=1-\frac{\operatorname{USPO} {(\text {data})}}{\operatorname{SPO} {(\text {data})}} Redundancy(data)=1−SPO(data)USPO(data)
其中 S P O SPO SPO表示三元组的数量, U S P O USPO USPO表示去重后的三元组数量。
数据集中每一个主体(subject)的平均属性数量:
V P (data) = S P O ( data ) U S ( data ) V P_{\text {(data)}}=\frac{S P O(\text {data})}{U S(\text {data})} VP(data)=US(data)SPO(data)
其中 S S S表示三元组中主体(subject)的数量, U S US US表示去重后的subject。这个值越大,说明每个subject的属性越多,从而知识更完整。
RDF的质量评估结果用QRDF表示:
Q R D F (data) = k 1 × ( 1 − Redundancy ( data ) ) + k 2 × ( 1 − Blank ( data ) S P O ( data ) ) + k 3 × U R I (data) + k 4 × V P (data) \begin{array}{l} Q R D F_{\text {(data) }}=k_{1} \times\left(1-\text {Redundancy}_{(\text {data})}\right) \\ +k_{2} \times\left(1-\frac{\text {Blank}(\text {data})}{S P O(\text {data})}\right)+k_{3} \times U R I_{\text {(data)}} \\ +k_{4} \times V P_{\text {(data)}} \end{array} QRDF(data) =k1×(1−Redundancy(data))+k2×(1−SPO(data)Blank(data))+k3×URI(data)+k4×VP(data)
其中
URI
(data)
\text{URI}_{\text {(data)}}
URI(data)表示可访问的URI的数量。
第一项是数据集中不重复的subject的比例,第二项是非空节点的比例,第三项是可用URI的比例,最后一项是平均subject的出度。
2) 可验证性
即要求通过相同的输入,应该获得相同的输出,能够复现。但是KG、RDF会动态变化,进行维护和补全,无法保持一成不变,因此需要评估可验证性。文献中定义的可验证性结果是每一次查询的正确/错误率差值(这里有个问题,论文中的previous record是上一次还是之前的所有):
Verifiability
(
data
)
=
∑
i
=
1
n
(
CorrectRate
(
logi
)
−
ErrorRate
(logi)
)
\text {Verifiability}_{(\text {data})}=\sum_{i=1}^{n}\left(\right.\text {CorrectRate}_{(\text {logi})} - \text {ErrorRate} \left._{\text {(logi)}}\right)
Verifiability(data)=i=1∑n(CorrectRate(logi)−ErrorRate(logi))

从公式中可以看出,当结点稳定,即无更改的情况下,每次的查询结果都相同,则可验证性的结果应该等于不同的查询的个数。
3) 完整性、相关性、唯一性
如果节点 A A A具有在其他节点中不存在的实体 S i S_i Si,并且用户对 S i S_i Si的需求更大。对于实体 S i S_i Si,节点 A A A中的数据集对整个知识图有很大贡献。相反,如果每个节点都拥有一个实体,则该实体在该节点中的贡献很小。
定义实体 S i S_i Si的完整性:
I (data , S i ) = P ( d a t a , S i ) B P ( S i ) I_{ \text {(data} \left., S_{i}\right)}=\frac{P_{\left(d a t a, S_{i}\right)}}{B P_{\left(S_{i}\right)}} I(data,Si)=BP(Si)P(data,Si)
其中 P ( d a t a , S i ) P_{(data,S_i)} P(data,Si)表示 Data \text{Data} Data中以 S i S_i Si为主体的谓语。 B P ( S i ) BP_{(S_i)} BP(Si)表示整个KG中 S i S_i Si为主体的谓语。
相关性是由实体 S i S_i Si在节点数据集之间计算的重复属性的比例之和:
Relationship (data) = ∑ i = 1 n ( P ( d a t a , S i ) B P ( S i ) ) ( S i ∈ D a t a ∩ Each other node ) \begin{array}{l} \text {Relationship}_{\text {(data)}}=\sum_{i=1}^{n}\left(\frac{P_{\left(d a t a, S_{i}\right)}}{B P_{\left(S_{i}\right)}}\right) \\ \left(S_{i} \in D a t a \cap \text {Each other node}\right) \end{array} Relationship(data)=∑i=1n(BP(Si)P(data,Si))(Si∈Data∩Each other node)
唯一性是指一个节点拥有其他节点所不具备的知识的程度。计算公式为:
Uniqueness ( data ) = ∑ i = 1 n ( P ( d a t a , S i ) − P u b l i c P ( d a t a , S _ i ) B P ( S i ) ) ( S i ∈ D a t a ) \text {Uniqueness}_{(\text {data})}=\sum_{i=1}^{n}\left(\frac{P_{(data,S_{i})} - PublicP_{(data,S\_i)}}{B P_{\left(S_{i}\right)}}\right) (S_i \in Data) Uniqueness(data)=i=1∑n(BP(Si)P(data,Si)−PublicP(data,S_i))(Si∈Data)
其中 P u b l i c P ( d a t a , S i ) PublicP_{(data,S_i)} PublicP(data,Si)是Data与KG中重合的谓语。
从唯一性的评分值可以推导出节点对整个网络的贡献值:
Contribution ( data ) = ∑ i = 1 n ( Uniqueness ( data , s i ) ) × ( S C ( S i ) − S F ( S i ) × k ) ( S i ∈ D a t a , S F ( S i ) ∈ [ 0 , 1 ] , k > 0 ) \begin{aligned} &\text {Contribution}_{(\text {data})}=\sum_{i=1}^{n}\left(\text { Uniqueness }_{\left(\text {data}, s_{i}\right)}\right) \times \left(S C_{\left(S_{i}\right)}-S F_{\left(S_{i}\right)} \times k\right)\\ &\left(S_{i} \in D a t a, S F_{\left(S_{i}\right)} \in[0,1], k>0\right) \end{aligned} Contribution(data)=i=1∑n( Uniqueness (data,si))×(SC(Si)−SF(Si)×k)(Si∈Data,SF(Si)∈[0,1],k>0)
其中
S
C
(
S
i
)
SC_{(S_i)}
SC(Si)是
S
i
S_i
Si的查询频率,
S
F
(
S
i
)
SF_{(S_i)}
SF(Si)是
S
i
S_i
Si的用户反馈系数,值越小说明越可靠;
k
k
k是比例系数。

直观上看,假设节点A具有实体 S 1 S_1 S1,而这个结点在其他节点中不存在,并且其查询频率很高,则该节点将对整个知识图谱做出更大的贡献。而如果节点A和其他节点不仅具有相同的实体 S 2 S_2 S2,而且具有相同的实体属性,则节点A中的实体 S 2 S_2 S2对该知识图谱的贡献较小。
4) 结点的数据质量
节点的数据质量包括RDF的检测维度、数据完整性、可验证性、用户反馈几个方面。综合上面的几个特征,作者得出了最终的评估方式:
Q D (data) = k 1 × Q R D F (data) + k 2 × Contribution (data) + k 3 × Verifiability (data) ( k 1 > 0 , k 2 > 0 , k 3 > 0 ) \begin{array}{l} Q D_{\text {(data) }}=k_{1} \times Q R D F_{\text {(data)}}+k_{2} \times \text {Contribution}_{\text {(data)}}+k_{3} \times \text {Verifiability}_{\text {(data)}} \\ \left(k_{1}>0, k_{2}>0, k_{3}>0\right) \end{array} QD(data) =k1×QRDF(data)+k2×Contribution(data)+k3×Verifiability(data)(k1>0,k2>0,k3>0)
这个评估参量包含了节点的本身的质量、节点的可验证性、以及节点对整个知识图谱的贡献(占比较大)几个维度。
1.2 DCQA系统设计
去中心的节点结构主要可以用在P2P系统中。每个节点拥有独立的知识,并在知识受保护的情况下与其他节点交互。用户可以从任何节点进行访问,访问效果是一致的。

二、OWL相关
原文链接:Constructing and Cleaning Identity Graphs in the LOD Cloud
这篇论文的核心点在于,由于LOD云的数据量过于庞大,owl:sameAs语句中存在一些错误的联系。为了削弱这种错误对整个KG所带来的影响,文献中提出了一种方法:通过抽取出相关的数据,并且定义了错误程度这个参数。通过评估相关的node,将错误程度较高的三元组除去,得到一个子图,并且通过实验证明了这个子图的效果不会因为删掉了一些元素而降低。
同时,由于整个KG中的owl:sameAs语句数量相当庞大,如果不进行处理直接进行评估会耗费大量的时间。因此论文中对抽取出来的元素进行了结构化简,降低复杂度,因而在评估时可以提高效率。
2.1 问题的提出
由于不同的机构命名方式不太一样,在进行整合时,如果有多个名称表示同一事物时,需要使用owl:sameAs语句来链接数据并促进重用。但是有时owl:sameAs的语句会出现一些错误。
解决方案:
- 集中式实体命名系统OKKAM:重复使用现有名称
- 访问的身份认证,受语义和覆盖率的限制
- 利用owl:sameAs的闭包
- LODsyndesis共同引用
- 唯一名称假设检验
- 基于逻辑不一致的检测
现有方法存在的问题:难以扩展,将其应用到整个LOD云中;假设的基础建立在不完备的数据集上。
利用错误程度的参数来评估链接质量,并进行一定的调整——构建两个子图并计算传递闭包。两种模式:仅采用高质量链接;限制错误链接的认定,同时减少信息丢失——丢弃一个低质量的subsub数据集。
2.2 从LOD中构造闭包
总流程如下所示:

构造闭包的流程:
- (1)提取显式的owl:sameAs语句(extraction)
- (2)删除计算演绎闭包不必要的owl:sameAs语句,同时进行化简(construction、compaction)
- (3)通过对owl进行分区来计算闭包(closure)
1) 提取相关知识
利用SPARQL语言进行查询,抽取需要的语句
select distinct ?s ?p ?o {
bind (owl:sameAs AS ?p)
?s ?p ?o }
2) 显式身份网络
抽象化LOD云图,定义数据图: G = ( V , E , ∑ E , I E ) G=(V,E,\sum_E,I_E) G=(V,E,∑E,IE), ∑ E \sum_E ∑E是边的标签, I E I_E IE是 E E E到 ∑ E \sum_E ∑E的独热编码函数。
从 G G G中进行extraction,得到显式身份网络: G e x = ( V e x , E e x ) G_{ex} = (V_{ex},E_{ex}) Gex=(Vex,Eex), E e x E_{ex} Eex是label为owl:sameAs的边, V e x V_{ex} Vex是相关的node。
3) 构建身份网络
owl:sameAs是自反、对称、传递的,对
G
e
x
G_{ex}
Gex进行化简:
I
=
(
V
I
,
E
I
,
{
1
,
2
}
,
w
)
I=(V_I,E_I,\{1,2\},w)
I=(VI,EI,{1,2},w),因为边的类型都是owl:sameAs,还是自反的,可以转化为无向图,并设置边的权重
weight
∈
{
1
,
2
}
\text{weight} \in \{1,2\}
weight∈{1,2}。2是两条有向边都在
G
e
x
G_{ex}
Gex中,1就是只有1条。
w
w
w是转换函数。
E
I
=
{
e
i
j
∈
E
e
x
∣
i
<
j
}
E_I = \{e_{ij} \in E_{ex} | i < j\}
EI={eij∈Eex∣i<j}
V I = V e x [ E I ] V_I = V_{ex}[E_I] VI=Vex[EI]
4) 身份集的压缩/闭包
进一步压缩,将无向图 I I I转化为节点对:假定 x , y x,y x,y按字典序排序,构造节点对的集合 { ( x , y ) ∣ e x , y ∧ ( x < y ) } \{(x,y)|e_{x,y} \wedge (x<y)\} {(x,y)∣ex,y∧(x<y)}。
求闭包:然后将节点映射为ID: V I ↦ v I D V_I \mapsto_{v} ID VI↦vID。对这种结构的构造分为三种情况:
- x x x和 y y y不存在于任何集合:新建立一个集合,然后构造 x ↦ v i d , y ↦ v i d , i d ↦ k { x , y } x \mapsto_v id,y \mapsto_v id,id \mapsto_k \{x,y\} x↦vid,y↦vid,id↦k{x,y}
- 只有 x x x( y y y类似)存在于集合中:对 x x x的集合加入 y y y, y ↦ v v a l ( x ) , v a l ( x ) ↦ k k e y ( v a l ( x ) ) ∪ { y } y \mapsto_v val(x),val(x) \mapsto_k key(val(x)) \cup \{y\} y↦vval(x),val(x)↦kkey(val(x))∪{y}
- x x x、 y y y都存在于各自的集合中,则取两个集合的并集: v a l ( x ) ↦ k k e y ( v a l ( x ) ) ∪ k e y ( v a l ( y ) ) val(x) \mapsto_k key(val(x)) \cup key(val(y)) val(x)↦kkey(val(x))∪key(val(y)),也就是说 ∀ y ′ ∈ k e y ( v a l ( y ) ) \forall y' \in key(val(y)) ∀y′∈key(val(y)),都有 y ′ ↦ v v a l ( x ) y' \mapsto_v val(x) y′↦vval(x)
2.3 计算误差度
论文中,作者对于误差度error degree的定义和思想主要是认为owl:sameAs的错误程度取决于两个方面:
- 集合的内部密度或者相互之间的关联的密度
- 无向图中的边的权重是否为2
作者认为错误程度用于对身份链接进行排序,从而允许识别潜在错误的链接并验证潜在的真实链接。这种算法具有:内存占用低、支持并行、能够处理KG的更新的特点。
误差度的计算对每一个 I I I进行检测,并且构造其错误程度(error degree),主要按照下面的步骤进行:
1) Community检测
这里Community的定义是成员之间连接紧密,但是与网络的其余部分连接稀疏的群体。内部采用模块化的算法。
模块化算法modularity-based method.
- 输入:集群 Q k Q_k Qk
- 输出:不重叠的社区 C ( Q k ) = { C 1 , C 2 , ⊙ , C n } C(Q_k) = \{C_1,C_2,\odot,C_n\} C(Qk)={C1,C2,⊙,Cn}
其中 C C C是 Q k Q_k Qk的子图.
A A A是网络的邻接矩阵, c v c_v cv和 c w c_w cw是结点 v v v、 w w w所在的社区,社区内部的边数和网络总边数的比例:
∑ v w A v w δ ( c v , c w ) ∑ v w A v w = 1 2 m ∑ v w A v w δ ( c v , c w ) \frac{\sum_{v w} A_{v w} \delta\left(c_{v}, c_{w}\right)}{\sum_{v w} A_{v w}}=\frac{1}{2 m} \sum_{v w} A_{v w} \delta\left(c_{v}, c_{w}\right) ∑vwAvw∑vwAvwδ(cv,cw)=2m1vw∑Avwδ(cv,cw)
其中 δ ( c v , c w ) \delta(c_v,c_w) δ(cv,cw)表示如果 c v = c w c_v=c_w cv=cw,则为1,否则为0, m m m为网络总边数。
模块度的大小定义为社区内部的总边数和网络中总边数的比例减去一个期望值,该期望值是将网络设定为随机网络时同样的社区分配所形成的社区内部的总边数和网络中总边数的比例的大小,于是模块度 Q Q Q为:
Q = 1 2 m ∑ v w [ A v w − k v k w 2 m ] δ ( c v , c w ) Q=\frac{1}{2 m} \sum_{v w}\left[A_{v w}-\frac{k_{v} k_{w}}{2 m}\right] \delta\left(c_{v}, c_{w}\right) Q=2m1vw∑[Avw−2mkvkw]δ(cv,cw)
其中 k v k_v kv表示点 v v v的度。
具有高模块化的网络在社区内的节点之间具有密集的连接,但在不同社区内的节点之间的连接却稀疏。
2) 误差度计算
社区内部链接:已知社区 C C C, e C e_C eC是一条加权边 e i j e_{ij} eij, v i , v j ∈ C v_i,v_j \in C vi,vj∈C, E C E_C EC是 C C C的内部链接的集合。
社区间链接:已知两个不相交的社区 C i , C j C_i,C_j Ci,Cj, e i j e_{ij} eij是一条加权边, v i , v j v_i,v_j vi,vj分别属于 C i C_i Ci和 C j C_j Cj, E C i j E_{C_{ij}} ECij是这两个社区的互链接的集合。
社区内的链接既依赖包含边的社区的密度,也依赖于边的权重。该社区的密度越低,边的权重越低,错误度将越高。
社区内链接的错误程度:
err ( e C ) = 1 w ( e C ) × ( 1 − W C ∣ C ∣ × ( ∣ C ∣ − 1 ) ) \operatorname{err}\left(e_{C}\right)=\frac{1}{w\left(e_{C}\right)} \times\left(1-\frac{W_{C}}{|C| \times(|C|-1)}\right) err(eC)=w(eC)1×(1−∣C∣×(∣C∣−1)WC)
其中, W C W_C WC是社区中的边的权重总和, W C = ∑ e C ∈ E C w ( e C ) W_{C}=\sum_{e_{C} \in E_{C}} w\left(e_{C}\right) WC=∑eC∈ECw(eC)。
社区间链接时既依赖于社区间链接的密度,又依赖于该边的权重。两个社区之间的链接越少,边的权重越低,错误度越高。
err ( e C i j ) = 1 w ( e C i j ) × ( 1 − W C i j 2 × ∣ C i ∣ × ∣ C j ∣ ) \operatorname{err}\left(e_{C_{i j}}\right)=\frac{1}{w\left(e_{C_{i j}}\right)} \times\left(1-\frac{W_{C_{i j}}}{2 \times\left|C_{i}\right| \times\left|C_{j}\right|}\right) err(eCij)=w(eCij)1×(1−2×∣Ci∣×∣Cj∣WCij)
其中, W C i j = ∑ e C i j ∈ E C i j w ( e c i j ) W_{C_{i j}}=\sum_{e_{C_{i j}} \in E_{C_{i j}}} w\left(e_{c_{i j}}\right) WCij=∑eCij∈ECijw(ecij)
2.4 评估
- 相同:terms指代同一个实体
- 相关:terms指代密切相关的实体
- 不相关:既不相同也不紧密相关
- 存疑:没有明确的判断依据
作者通过实验发现,错误程度
d
e
g
r
e
e
≤
0.4
degree \leq 0.4
degree≤0.4时,same占据100%,且二者正相关。

2.5 对原LOD进行调整
两种方法:
- 丢弃存在“潜在错误”的owl:sameAs元组;
- 只留下“高质量”的owl:sameAs元组
对于“潜在错误”和“高质量”这两个标准,论文中根据之前的参数认为, d e g r e e ≤ 0.4 degree \leq 0.4 degree≤0.4是“可能正确”的; d e g r e e ≤ 0.99 degree \leq 0.99 degree≤0.99具有“潜在错误”。
因此将 d e g r e e ≤ 0.4 degree \leq 0.4 degree≤0.4或者 d e g r e e ≤ 0.99 degree \leq 0.99 degree≤0.99的都从图中丢弃。
作者对这两种方法的处理结果进行了分别的实验,实验结果表明丢弃少量链接——错误程度高于0.99(约0.17%)链接,可以显着提高生成的封闭的质量;而丢弃大量链接——错误率高于0.4(27%)会导致语义上的问题,准确率也会降低。

本文探讨了RDF数据集和OWL在知识表示中的应用。针对去中心化系统,提出了RDF数据集的质量评估模型,考虑了数据冗余、可验证性、完整性和唯一性等因素。此外,设计了一个去中心化的问答系统(DCQA)。在OWL相关研究中,论文关注LOD云中owl:sameAs语句的错误链接,通过构建和清理身份网络,计算错误程度,以优化知识图谱。提出的算法旨在降低错误链接的影响,提高知识表示的准确性和效率。
2480

被折叠的 条评论
为什么被折叠?



