首页 > 解决方案 > 如何使用 Transformers 进行文本分类?

问题描述

关于如何使用 Transformers 的 Tensorflow 实现进行文本分类,我有两个问题。

谢谢!

标签: tensorflownlptransformerbert-language-model

解决方案


有两种方法,您可以采取:

  1. 只需平均您从编码器获得的状态;
  2. 预先添加一个特殊标记[CLS](或您喜欢的任何名称)并使用特殊标记的隐藏状态作为分类器的输入。

BERT使用第二种方法。预训练时,用这个特殊token对应的隐藏状态来预测两个句子是否连续。在下游任务中,也用于句子分类。然而,我的经验是,有时,平均隐藏状态会产生更好的结果。

与其从头开始训练 Transformer 模型,不如使用(并最终微调) transformers 包中的预训练模型(BERT、XLNet、DistilBERT 等)更方便。它具有可在 PyTorch 和 TensorFlow 2.0 中使用的预训练模型。


推荐阅读