主动学习(Active Learning)的大致思路就是:通过机器学习的方法获取到那些比较“难”分类的样本数据,让人工再次确认和审核,然后将人工标注得到的数据再次使用有监督学习模型或者半监督学习模型进行训练,逐步提升模型的效果,将人工经验融入机器学习的模型中。
那么主动学习(Active Learning)的整体思路究竟是怎样的呢?在机器学习的建模过程中,通常包括样本选择,模型训练,模型预测,模型更新这几个步骤。在主动学习这个领域则需要把标注候选集提取和人工标注这两个步骤加入整体流程,也就是:
- 机器学习模型:包括机器学习模型的训练和预测两部分;
- 待标注的数据候选集提取:依赖主动学习中的查询函数(Query Function);
- 人工标注:专家经验或者业务经验的提炼;
- 获得候选集的标注数据:获得更有价值的样本数据;
- 机器学习模型的更新:通过增量学习或者重新学习的方式更新模型,从而将人工标注的数据融入机器学习模型中,提升模型效果
其中 L 是用于训练已标注的样本;
C 为一组或者一个算法模型,用户接收上一轮的标记样本集,通过负反馈调整模型参数,并输出对应的预测结果向量集;
Q 是查询函数,用于从当前剩余的未标注样本池(未标记样本会逐渐减少)U 中查询信息量最大(最不确定)的top样本;
S是督导者,可以为 U 中样本标注正确的标签;
active learning模型**通过少量初始标记样本 L 开始学习,通过一定的查询函数 Q 选择出一个或一批最有用的样本**,并向督导者询问标签,然后利用获得的新知识来训练分类器和进行下一轮查询。主动学习是一个循环的过程,直至达到某一停止准则为止。
需要注意的是,active learning是一个算法框架,上图中的单个模块具备可替换性(alternative)