使用 BERT 等预训练模型进行文档分类
Posted
技术标签:
【中文标题】使用 BERT 等预训练模型进行文档分类【英文标题】:Document classification using pretrained models like BERT 【发布时间】:2021-05-13 14:44:15 【问题描述】:我正在寻找对文档进行分类的方法。例如。我有一堆带有文本的文档,我想标记文档是否属于体育、食品、政治等。 我可以为此使用 BERT(对于字数 > 500 的文档)还是有其他模型可以有效地完成这项任务?
【问题讨论】:
已发布的预训练longformer 模型能够处理多达 4096 个令牌。 【参考方案1】:BERT 的最大序列长度为 512 个标记(请注意,这通常远小于 500 个单词),因此您不能一次将整个文档输入到 BERT。如果您仍想将该模型用于此任务,我建议您
-
将每个文档分成可由 BERT 处理的块(例如 512 个或更少的令牌)
单独分类所有文档块
根据最常预测的块标签对整个文档进行分类,即获得多数票
在这种情况下,您唯一需要做的修改是在 BERT 之上添加一个全连接层。
不过,这种方法可能相当昂贵。也可以将文本文档表示为词向量袋,然后在数据上训练分类器。如果你不熟悉 BOW,Wikipedia entry 是一个很好的起点。它可以作为各种分类器的特征向量,我建议你尝试SVM或kNN。
【讨论】:
以上是关于使用 BERT 等预训练模型进行文档分类的主要内容,如果未能解决你的问题,请参考以下文章
由于内存问题,如何保存与预训练的 bert 模型的分类器层相关的参数?