我是NLP和文本挖掘的新手,我正在尝试构建文档分类器。 训练完模型后,我们将在新文档上对其进行测试(它们是测试数据,没有标签)。预计该模型不是100%准确的;因此对于分类错误的文档,我们希望与用户互动以纠正这些错误的预测。
我有两个想法:
重新训练模型,其中:traindata = old_traindata +用户校正的数据。
每个用户的纠正之后,更新模型参数。
听起来正确吗?在第二种情况下,我应该使用哪种算法?我们如何有效地解决这个问题?
答案 0 :(得分:3)
您可以执行此操作,但是如果您计划每天对整个数据进行一次又一次的训练,这将是一项非常繁重的任务。与其完全重新训练模型,不如尝试转移学习。保存模型,然后将其加载回去,并根据用户校正的数据进行训练。该模型将能够纠正它的错误而不会丢失它已经学到的东西。迁移学习的问题在于,经过一段时间后,它会被微调到新数据,因此您必须从头开始对其进行重新培训。但这比每天重新训练模型要好得多。
您应该具有适当的度量标准,以检查在多次“转移学习”迭代之后,模型的准确性是否开始下降到旧数据中。如果准确性下降,则只需对所有数据进行模型再训练直至截止日期,您将很容易进行。