自我训练是一种增量算法(incremental algorithm):
场景:
半监督学习,具备一小部分有标记样本和大量未标记样本,通常存在大量样本标注困难的问题。
基本流程:
1. 最初,使用少量标记数据构建单个分类器。
2. 然后,迭代地预测未标记样本的标签。
3. 通过2中预测结果的可信程度对样本进行排序,将最有效的样本添加到已经标记的训练集中。
4. 使用增强的训练集重新训练基础分类器。
5. 重复以上过程直至给定迭代次数或满足一些启发式的收敛标准。
以上,添加错误的标记噪声是不可避免的。在实际应用中,使用更精确的信任度量和预定义的置信度阈值来限制错误标记的样本的数量。
其次,将自我训练应用于线性分类器(如SVM)时存在缺点是,最可信的样本往往离边策边界最远(非信息性样本)。因此在很多情况下,这个过程不会创建比较好的训练集(添加的所谓最有效样本都是非信息性样本);另一个缺点是,自我训练对异常值非常敏感。
注:如果一个样本靠近分类超平面,那么它就能够为调整分类决策面提供有效信息,因为它能够影响决策面的位置。
另,自我训练也称为:自学习 self-learning,自我矫正 self-corrective,朴素标记 naive labeling,决策导向 decision-directed。(不知道中文翻译得有没有问题)