[半监督学习] Democratic Co-Learning
作者:互联网
提出了民主协同学习(Democratic Co-Learning), 一种新的单视图半监督技术, 可用于没有两个独立和冗余特征集的应用, 并且适用于少量标记数据. 在民主协同学习中, 使用一组不同的学习算法在标记数据集上分别训练一组分类器. 使用加权投票组合输出概念, 以预测未标记示例的标签. 新标记的示例被添加到与大多数预测不同的分类器的训练集中. 重复该过程, 直到无法将更多数据添加到分类器的训练集中. 同时还提出了民主优先抽样, 以选择请求标签以进行主动学习的示例. 最后, 获得了主动民主协同学习, 它使用民主优先抽样来选择要主动标记的示例, 并使用民主协同学习来标记其他示例.
下表根据是否使用单视图或多视图方法以及是否使用主动学习来对半监督技术进行分类. 粗体显示的即为本文的成果.
1. Democratic Co-Learning
文中符号表定义如下:
符号 | 定义 |
---|---|
L \mathbf{L} L | 带标签数据集 |
U \mathbf{U} U | 不带标签数据集 |
A 1 , … , A n ( n ≥ 3 ) A_1,\dots,A_n(n \geq 3) A1,…,An(n≥3) | 监督学习算法 |
c i ∈ C = { c 1 , … , c r } c_i \in \mathcal{C}=\{c_1,\dots,c_r\} ci∈C={c1,…,cr} | 预测值 |
Democratic Co-Learning 算法流程如下:
- 1.在每个 L i \mathbf{L_i} Li 上利用 A i A_i Ai 训练分类器 H i H_i Hi.
- 2.使用
H
i
H_i
Hi 为
U
\mathbf{U}
U 上的每个示例
x
x
x 预测一个标签值
c
j
c_j
cj, 令
c
k
c_k
ck 为
majority prediction
. - 3.计算 H i H_i Hi 在 L \mathbf{L} L 上的 95% 置信区间 [ l i , h i ] [l_i,h_i] [li,hi] 和平均置信度 ( l i + h i ) / 2 (l_i+h_i)/2 (li+hi)/2.
- 4.初始化 n n n 个 L ′ \mathbf{L}' L′, 如果多数群体中学习者的平均置信值之和大于少数群体中学习器的平均置信值之和, 则将 ( x , c k ) (x,c_k) (x,ck) 加入到 L i ′ \mathbf{L_i}' Li′ 中.
- 5.评估将 L i ′ \mathbf{L_i}' Li′ 添加到 L i \mathbf{L_i} Li 中是否提升准确率. 计算 H i H_i Hi 在 L i \mathbf{L}_i Li 上的 95% 置信区间 [ l i , h i ] [l_i,h_i] [li,hi], 然后分别计算在 L i \mathbf{L}_i Li, L i ′ \mathbf{L}'_i Li′ 和 L i ∪ L i ′ \mathbf{L}_i \cup \mathbf{L}'_i Li∪Li′ 上的错误率 q i q_i qi, e i ′ e'_i ei′ 和 q i ′ q'_i qi′.
- 6.如果 q i ′ > q i q'_i>q_i qi′>qi 则将 L i ′ \mathbf{L_i}' Li′ 添加到 L i \mathbf{L_i} Li 中
- 7.重复操作1-6直到 L 1 , ⋯ L n \mathbf{L}_1,\dotsm\mathbf{L}_n L1,⋯Ln 不在变化时为止. 最终返回一个组合的分类器 C o m b i n e ( H i , … , H n ) Combine(H_i,\dots,H_n) Combine(Hi,…,Hn). 组合算法如1.2所示.
1.1 Labeling Criteria
除非大多数学习器同意标签, 否则一个学习器不会为另一个学习器标记未标记的示例. 除此多数票要求外, 我们还要求多数群体中学习者的平均置信值之和大于少数群体中学习器的平均置信值之和, 其中学习器的平均置信度为 ( l + h ) / 2 (\mathcal{l}+\mathcal{h})/2 (l+h)/2, l \mathcal{l} l 和 h \mathcal{h} h 由 95% 置信区间 [ l , h ] [l,h] [l,h] 定义. 使用以置信度为权重的投票, 可以消除大多数学习器以非常低的置信度做出相同错误预测的可能性.
为了平衡向训练数据添加更多标记示例的好处与标签中可能出现的噪声率增加, 使用一些测试来估计标记数据的增加是否足以补偿错误标记示例数量的增加. 具体细节在上面算法流程中已经展示.
1.2 Combining
除了每个标签的票数外, 我们还考虑了每个单独分类器的置信度值(以 95% 置信区间的平均值衡量). 我们将分类器分为
r
r
r 组, 每组大小为
n
n
n, 并对应一个可能的标签. 我们使用
m
−
e
s
t
i
m
a
t
o
r
m-estimator
m−estimator 来调整每个组的平均置信度值的平均值, 以便如果一个组的平均平均置信度值(average mean confidence value)较小时, the average mean confidence value of a group is discounted more.
我们使用
s
=
n
+
0.5
n
+
1
s=\frac{n+0.5}{n+1}
s=n+1n+0.5 的 Laplace 校正来避免投票频率为零, 并且当小组规模太小时, 偏向0.5的投票权. 具有最高discounted confidence value
的分类器组用于预测示例. 当组内分类器的置信度值方差较大时, 上述调整可能无效. 因此, 我们忽略任何置信度值小于 50% 的分类器. 如下图所示:
- 1.计算 H i H_i Hi 在 L \mathbf{L} L 上的 95% 置信区间 [ l i , h i ] [l_i,h_i] [li,hi] 和平均置信度 w i = ( l i + h i ) / 2 w_i=(l_i+h_i)/2 wi=(li+hi)/2.
- 2.对于每个实例空间的示例 x x x, 如果 H i ( x ) H_i(x) Hi(x) 有预测值 c j c_j cj 并且 w i > 0.5 w_i>0.5 wi>0.5, 则将 H i H_i Hi 添加到集合 G j G_j Gj 中. 同时计算 G j G_j Gj 的平均置信均值 C ‾ G j \overline{C}_{G_j} CGj.
- 3.选择最大 C ‾ G j \overline{C}_{G_j} CGj 对应的组 G G G, 即最终得到组合 H H H.
2. Democratic Priority Sampling
在 Democratic Co-Learning 中, 我们首先使用标记数据 L \mathbf{L} L 训练 k k k 个不同的学习器以获得 k k k 个分类器 H 1 , … , H k H_1,\dots, H_k H1,…,Hk. 然后, 一种选择要主动标记的示例的可能方法是使用 QBC 中的投票熵. 但是, 我们还希望将每个单独分类器的置信度纳入优先级估计中. 因此, 我们定义了一个置信加权投票熵, 通过计算由分类器的平均置信度加权的投票熵, 将每个单独分类器的置信度纳入优先级估计中.
令
r
r
r 为不同的标签的个数,
G
i
(
x
)
G_i(x)
Gi(x) 为分类器
H
1
,
…
,
H
k
H_1,\dots, H_k
H1,…,Hk 的集合. 定义未标记示例
x
x
x 的优先级为:
P
r
i
o
r
i
t
y
(
x
)
=
−
∑
i
=
1
r
W
i
(
x
)
W
log
W
i
(
x
)
W
Priority(x)=-\sum_{i=1}^r\frac{W_i(x)}{W}\log\frac{W_i(x)}{W}
Priority(x)=−i=1∑rWWi(x)logWWi(x)
其中:
- W i ( x ) = ∑ H j ∈ G i ( x ) w j W_i(x)=\sum_{H_j \in G_i(x)}w_j Wi(x)=∑Hj∈Gi(x)wj.
- w j w_j wj 为 H j H_j Hj 的 95% 置信区间的平均值.
- W = ∑ j = 1 k w j W=\sum_{j=1}^k w_j W=∑j=1kwj
将具有最高优先级标签的示例提供给专家进行标记. 然后使用更大的标记数据池重新计算假设, 并重复该过程.
标签:mathbf,示例,标记,Li,分类器,置信度,Learning,Co,Democratic 来源: https://blog.csdn.net/by6671715/article/details/122623044