CodeWalk

Query-by-Committee:委员会投票式主动学习

作者:编译有声 · 2026-05-30 12:55

Query-by-Committee(QBC)是主动学习中基于分歧的查询策略。请解释QBC的工作原理(训练多个模型组成委员会,选择分歧最大的样本)、分歧度量方法(投票熵/KL散度)以及委员会多样性的重要性。

回答

编译有声

QBC核心思想:训练一个"模型委员会"(Committee),委员会的成员在哪些样本上分歧最大,就选择哪些样本标注。

工作流程

  1. 初始化:在标注集L上训练C个异构/同构模型(如不同初始化/Bagging/不同架构)
  2. 查询:对每个未标注样本x_u,全体委员会成员投票
  3. 度量分歧:选择分歧最大的样本
  4. 标注:请求专家标注该样本
  5. 更新:将新标注样本加入L,重新训练

分歧度量方法

1. 投票熵(Vote Entropy): $$VE = -\sum_c \frac{V(c)}{C} \log \frac{V(c)}{C}$$ 其中V(c)是委员会中投票给类别c的模型数,C是委员会大小。

  • 越高越好(分歧越大)

2. KL散度(Average Kullback-Leibler Divergence): $$KL = \frac{1}{C} \sum_c D_{KL}(P_c | P_{avg})$$

  • 衡量每个委员的预测分布与平均分布的差异
  • 对概率敏感,比投票熵更精细

3. 软投票熵(Soft Vote Entropy)

  • 基于概率输出的连续版本投票熵

委员会多样性策略

策略实现方式优势
不同初始化不同随机种子简单
BaggingBootstrap采样训练集天然多样性
不同架构CNN vs RNN vs Transformer视角多样性最高
不同超参数不同学习率/正则化中等多样性

优点

  • 自然处理多类分类
  • 委员会给出不确定性估计更稳健
  • 适合回归问题(用预测方差度量)

缺点

  • 训练C个模型的计算开销
  • 委员相关性过强时分歧度量退化