图
G
=
(
V
,
E
)
G = (V, E)
G=(V,E),其中
V
V
V 是节点集合,
E
E
E 是边集合。
每个节点
t
i
∈
V
t_i ∈ V
ti?∈V 与一个多项式分布
P
(
L
(
t
i
)
)
P(L(t_i))
P(L(ti?)) 相关联,表示标签
L
(
t
i
)
L(t_i)
L(ti?) 的概率。
每条边
(
t
i
,
t
j
)
∈
E
(t_i, t_j) ∈ E
(ti?,tj?)∈E 与两个条件概率分布
P
(
L
(
t
i
)
∣
L
(
t
j
)
)
P(L(t_i)|L(t_j))
P(L(ti?)∣L(tj?)) 和
P
(
L
(
t
j
)
∣
L
(
t
i
)
)
P(L(t_j)|L(t_i))
P(L(tj?)∣L(ti?)) 相关联,表示标签
L
(
t
j
)
L(t_j)
L(tj?) 对标签
L
(
t
i
)
L(t_i)
L(ti?) 的影响以及反之。
计算过程:
初始化每个节点的标签分布
P
0
(
L
(
t
i
)
)
P_0(L(t_i))
P0?(L(ti?))。
对于每个迭代
r
r
r,计算每个节点的标签分布的变化量
Δ
P
r
+
1
(
L
(
t
i
)
)
ΔP_{r+1}(L(t_i))
ΔPr+1?(L(ti?)),根据邻居节点的标签和条件概率分布。
更新每个节点的标签分布
P
r
+
1
(
L
(
t
i
)
)
P_{r+1}(L(t_i))
Pr+1?(L(ti?)),直到收敛。
输出:
每个节点的最终标签
L
(
t
i
)
L(t_i)
L(ti?),即其最高概率的标签。
数学公式:
Δ
P
r
+
1
(
L
(
t
i
)
)
ΔP_{r+1}(L(t_i))
ΔPr+1?(L(ti?)) 的计算公式:
Δ
P
r
+
1
(
L
(
t
i
)
)
=
∑
t
j
∈
N
e
(
t
i
)
w
(
t
j
∣
t
i
)
?
∑
y
∈
Y
(
P
(
L
(
t
i
)
=
y
,
L
(
t
j
)
=
y
)
?
P
r
(
L
(
t
j
)
=
y
)
)
\Delta P_{r+1}(L(t_i)) = \sum_{t_j \in Ne(t_i)} w(t_j|t_i) \cdot \sum_{y \in Y} (P(L(t_i) = y, L(t_j) = y) \cdot P_r(L(t_j) = y))
ΔPr+1?(L(ti?))=tj?∈Ne(ti?)∑?w(tj?∣ti?)?y∈Y∑?(P(L(ti?)=y,L(tj?)=y)?Pr?(L(tj?)=y))
更新后的标签分布
P
r
+
1
(
L
(
t
i
)
)
P_{r+1}(L(t_i))
Pr+1?(L(ti?)) 的计算公式:
P
r
+
1
(
L
(
t
i
)
)
=
P
r
(
L
(
t
i
)
)
(
1
+
Δ
P
r
+
1
(
L
(
t
i
)
)
)
∑
y
∈
Y
P
r
(
L
(
t
i
)
=
y
)
(
1
+
Δ
P
r
+
1
(
L
(
t
i
)
=
y
)
)
P_{r+1}(L(t_i)) = \frac{P_r(L(t_i))(1 + \Delta P_{r+1}(L(t_i)))}{\sum_{y \in Y} P_r(L(t_i) = y)(1 + \Delta P_{r+1}(L(ti) = y))}
Pr+1?(L(ti?))=∑y∈Y?Pr?(L(ti?)=y)(1+ΔPr+1?(L(ti)=y))Pr?(L(ti?))(1+ΔPr+1?(L(ti?)))?
最终标签
L
(
t
i
)
L(t_i)
L(ti?) 的选择:
L
(
t
i
)
=
arg?max
?
y
∈
Y
P
(
L
(
t
i
)
=
y
)
L(t_i) = \argmax_{y \in Y} P(L(t_i) = y)
L(ti?)=y∈Yargmax?P(L(ti?)=y)
终身机器学习(Lifelong Machine Learning, LML)
输入:
知识库(Knowledge Base, KB),包含过去任务中提取的图和分类结果。
当前任务的图
G
′
=
(
V
′
,
E
′
)
G' = (V', E')
G′=(V′,E′) 和节点的初始标签分布。
计算过程:
使用过去任务中的知识来帮助当前任务的标签分布初始化。
利用过去任务中的目标标签来调整当前任务的初始标签概率分布。
结合松弛标签算法进行迭代更新,直到收敛。
输出:
当前任务中每个节点的最终标签。
数学公式:
初始化概率分布
P
0
(
L
(
t
i
)
)
P_0(L(t_i))
P0?(L(ti?)) 的更新:
P
L
L
1
,
0
(
L
(
t
)
)
=
P
d
u
+
1
,
0
(
L
(
t
)
)
+
λ
?
C
D
s
L
(
t
)
D
+
λ
D
P_{LL1,0}(L(t)) = P_{du+1,0}(L(t)) + \lambda \cdot \frac{CDs_{L(t)}}{D + \lambda D}
PLL1,0?(L(t))=Pdu+1,0?(L(t))+λ?D+λDCDsL(t)??
条件概率分布
P
(
L
L
1
)
(
L
(
t
i
)
∣
L
(
t
j
)
)
P(LL1)(L(t_i)|L(t_j))
P(LL1)(L(ti?)∣L(tj?)) 的更新:
P
L
L
2
(
L
(
t
i
)
∣
L
(
t
j
)
)
=
P
L
L
1
(
L
(
t
i
)
∣
L
(
t
j
)
)
+
λ
?
C
D
s
L
(
t
i
)
,
L
(
t
j
)
D
+
λ
D
P_{LL2}(L(t_i)|L(t_j)) = P_{LL1}(L(t_i)|L(t_j)) + \lambda \cdot \frac{CDs_{L(t_i), L(t_j)}}{D + \lambda D}
PLL2?(L(ti?)∣L(tj?))=PLL1?(L(ti?)∣L(tj?))+λ?D+λDCDsL(ti?),L(tj?)??
这里,
λ
\lambda
λ是一个控制参数,用于调整过去知识对当前任务影响的强度。
C
D
s
L
(
t
)
CDs_{L(t)}
CDsL(t)?和
C
D
s
L
(
t
i
)
,
L
(
t
j
)
CDs_{L(ti), L(tj)}
CDsL(ti),L(tj)?分别表示过去任务中目标
t
t
t被标记为
L
(
t
)
L(t)
L(t)和目标
t
i
t_i
ti? 和
t
j
t_j
tj? 同时被标记为
L
(
t
i
)
L(t_i)
L(ti?) 和
L
(
t
j
)
L(t_j)
L(tj?) 的领域数量。
D
D
D是过去任务的总数。