主动学习在不同机器学习任务中的应用
1. 序列标注中的主动学习
在序列标注中应用主动学习时,需要在验证数据上进行训练。首先要确定验证数据中“正确”和“错误”的标准。如果对某些序列更为关注,那么在新模型中可以仅将这些序列的错误视为“错误”,重点关注最关心的错误类型。同时,还需决定是按每个标记的错误还是按整个序列来计算错误。作为起点,使用与机器学习模型中计算准确率相同的方法来计算错误是合理的,但也可以尝试其他方法。
另外,在进行跨度预测时,无论使用何种方法,都应将预测跨度的阈值设置得较低,避免只找到与数据中已存在的跨度相似的跨度,从而延续偏差。可以使用与目标检测中相同的基于置信度的分层抽样方法,例如在 0% - 10%、10% - 20% 等置信度区间内抽取相等数量的跨度。还可以根据标记本身对样本进行分层,例如对“旧金山”(或任何其他序列)的跨度样本进行限制,最多抽取 5 或 10 个实例,从而总体上抽取更多样化的标记。
在为代表性抽样创建训练数据样本时,如果对未标记的文本进行裁剪以进行代表性抽样,那么对训练数据也应进行相同的操作。如果仅使用训练数据中的完美跨度注释,而使用未标记数据中的不完美预测,那么“代表性”样本可能是不同裁剪策略的结果,而不是实际的跨度差异。
对于一些自然语言处理(NLP)任务,需要对文本中的每个项目进行标注,例如词性(POS)标注。可以将此任务视为与文本中的序列标注相同,但它更为简单,因为无需过多担心裁剪文本或忽略“O”标签。按标签进行分层可能有助于此类情况,例如选取 100 个最不确定的名词、100 个最不确定的动词、100 个最不确定的副词等。可以结合宏 F 分数使用这种抽样方法来评估模型的准确性。
在序列标注中进行
超级会员免费看
订阅专栏 解锁全文
2437

被折叠的 条评论
为什么被折叠?



