主动学习(Active Learning)
在某些情况下,没有类标签的数据相当丰富而有类标签的数据相当稀少,并且人工对数据进行标记的成本又相当高昂。在这种情况下,我们可以让学习算法主动地提出要对哪些数据进行标注,之后我们要将这些数据送到砖家那里让他们进行标注,再将这些数据加入到训练样本集中对算法进行训练,提高模型的精确度。这一过程叫做主动学习。
主动学习那些比较难的,信息量大的样本。而这些样本是基于模型预测不确定性而选择的,或者在总体预测发散,这些方法的关键点就是找到当前模型最可能出错的样本,这样在标记和加入到训练数据集之后,模型对于不可见数据上的这些错误变得更加有效而快速。使得更小的子集来达到模型最理想的性能。
AL基本构成
五个组件进行建模
A=(C,L,S,Q,U)
其中 C 为一个或一组分类器;L 为一组已标注的训练样本集;Q为查询函数,用于在未标注的样本中查询信息量大的样本;U 为整个未标注样本集;S 为督导者,可以对未标注样本进行标注。
AL算法主要分为两阶段
- 初始化阶段,随机从未标注样本中选取小部分,由督导者标注,作为训练集 建立初始分类器模型;
循环查询阶段,S从未标注样本集 U中,按照某种查询标准 Q,选取一定的未标注样本进行标注,并加到训练样本集 L 中,
重新训练分类器,直至达到训练停止标准为止。
主动学习算法是一个迭代的过程,分类器使用迭代时反馈的样本进行训练,不断提升分类效率。
传统的几种主动学习算法
1.Uncertainty Sampling