使用 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模型对多类文本分类进行错误分类

由于内存问题,如何保存与预训练的 bert 模型的分类器层相关的参数?

在特定领域继续训练预训练的 BERT 模型的最简单方法是啥?

BERT:深度双向预训练语言模型

中文bert wwm 预训练参考笔记

文本分类基于BERT预训练模型的灾害推文分类方法基于BERT和RNN的新闻文本分类对比