什么时候应该训练自己的模型,什么时候应该使用预训练模型?

When should I train my own models and when should I use pretrained models?

尽管只有非常小的数据集(5000 条评论),是否建议训练我自己的模型来进行情绪分析,或者最好使用在更大的数据集上训练的预训练模型,但不是' t“专门”处理我的数据。

此外,我如何根据我的数据训练我的模型,然后再在它上面使用它?我在考虑一种迭代方法,在这种方法中,训练数据将从我的每个学习时期的总数据中随机选择。

我会这样:

  • 试用预训练模型,看看效果如何
  • 如果效果不理想,可以fine tune it (see this tutorial)。基本上,您是在使用自己的示例来更改预训练模型的权重。这应该会改善结果,但这取决于您的数据如何以及您可以提供多少示例。你拥有的越多越好(我会尝试至少使用10-20k)

Also, how could I train my model on my data and then later use it on it too?

注意区分pre-train 和fine-tuning.

对于预训练,您需要巨大的 文本量(例如数十亿个字符),这对资源要求很高,通常您不想这样做,除非有非常充分的理由(例如,您的目标语言的模型不存在)。

微调需要的示例要少得多(几千个帐篷),在单个 GPU 上通常需要不到一天的时间,并且允许您利用其他人创建的预训练模型。

根据你写的,我会微调。

当然你可以保存模型供以后使用,正如你在我上面链接的教程中看到的那样:

model.save_pretrained("my_imdb_model")