模型简介
模型特点
模型能力
使用案例
🚀 X-GENRE分类器 - 多语言文本体裁分类器
X-GENRE分类器是一个基于xlm-roberta-base
的文本分类模型,在多语言手动标注的X-GENRE体裁数据集上进行了微调。该模型可用于自动体裁识别,适用于xlm-roberta-base
支持的任何语言文本。
🚀 快速开始
本模型基于xlm-roberta-base
,并在多语言手动标注的X-GENRE体裁数据集上进行了微调。你可以将其用于自动体裁识别,只要文本语言是xlm-roberta-base
支持的即可。
模型开发、数据集以及模型在数据集内、跨数据集和多语言方面的性能详情,可参考论文Automatic Genre Identification for Robust Enrichment of Massive Text Collections: Investigation of Classification Methods in the Era of Large Language Models (Kuzman et al., 2023)。
你也可以从CLARIN.SI仓库下载该模型。
如果你使用了该模型,请引用以下论文:
@article{kuzman2023automatic,
title={Automatic Genre Identification for Robust Enrichment of Massive Text Collections: Investigation of Classification Methods in the Era of Large Language Models},
author={Kuzman, Taja and Mozeti{\v{c}}, Igor and Ljube{\v{s}}i{\'c}, Nikola},
journal={Machine Learning and Knowledge Extraction},
volume={5},
number={3},
pages={1149--1175},
year={2023},
publisher={MDPI}
}
✨ 主要特性
- 多语言支持:支持多种语言的文本体裁分类。
- 高性能:在AGILE基准测试中,相较于其他技术(包括GPT模型)表现更优。
📦 安装指南
文档未提及安装步骤,故跳过此章节。
💻 使用示例
基础用法
from simpletransformers.classification import ClassificationModel
model_args= {
"num_train_epochs": 15,
"learning_rate": 1e-5,
"max_seq_length": 512,
"silent": True
}
model = ClassificationModel(
"xlmroberta", "classla/xlm-roberta-base-multilingual-text-genre-classifier", use_cuda=True,
args=model_args
)
predictions, logit_output = model.predict(["How to create a good text classification model? First step is to prepare good data. Make sure not to skip the exploratory data analysis. Pre-process the text if necessary for the task. The next step is to perform hyperparameter search to find the optimum hyperparameters. After fine-tuning the model, you should look into the predictions and analyze the model's performance. You might want to perform the post-processing of data as well and keep only reliable predictions.",
"On our site, you can find a great genre identification model which you can use for thousands of different tasks. With our model, you can fastly and reliably obtain high-quality genre predictions and explore which genres exist in your corpora. Available for free!"]
)
predictions
# Output: array([3, 8])
[model.config.id2label[i] for i in predictions]
# Output: ['Instruction', 'Promotion']
高级用法
使用批量处理在数据集上进行预测的示例,可通过Google Collab查看。
📚 详细文档
AGILE - 自动体裁识别基准测试
我们设立了一个基准测试,用于评估自动体裁识别模型的鲁棒性,以测试其在为大型文本集合自动添加体裁信息方面的可用性。该基准测试涵盖11种欧洲语言和两个测试数据集。欢迎你在基准测试的GitHub仓库提交你的结果。
该模型在性能上优于所有其他技术,包括在零样本场景下使用的GPT模型。
以下是在英文测试数据集(EN - GINCO)上的结果:
模型 | 测试数据集 | 宏F1值 | 微F1值 |
---|---|---|---|
[X - GENRE分类器](https://huggingface.co/classla/xlm - roberta - base - multilingual - text - genre - classifier) | en - ginco | 0.687 | 0.684 |
GPT - 4o (gpt - 4o - 2024 - 08 - 06) (零样本) | en - ginco | 0.62 | 0.735 |
Llama 3.3 (70B) (零样本) | en - ginco | 0.586 | 0.684 |
Gemma 2 (27B) (零样本) | en - ginco | 0.564 | 0.603 |
Gemma 3 (27B) (零样本) | en - ginco | 0.541 | 0.672 |
GPT - 4o - mini (gpt - 4o - mini - 2024 - 07 - 18) (零样本) | en - ginco | 0.534 | 0.632 |
支持向量机 | en - ginco | 0.514 | 0.489 |
GPT - 3.5 - Turbo (零样本) | en - ginco | 0.494 | 0.625 |
DeepSeek - R1 14B (零样本) | en - ginco | 0.293 | 0.229 |
虚拟分类器 (分层) | en - ginco | 0.088 | 0.154 |
虚拟分类器 (最频繁) | en - ginco | 0.032 | 0.169 |
以下是在多语言测试数据集(X - GINCO)上的结果,该数据集包含阿尔巴尼亚语、加泰罗尼亚语、克罗地亚语、希腊语、冰岛语、马其顿语、马耳他语、斯洛文尼亚语、土耳其语和乌克兰语的实例:
模型 | 测试数据集 | 宏F1值 | 微F1值 |
---|---|---|---|
[X - GENRE分类器](https://huggingface.co/classla/xlm - roberta - base - multilingual - text - genre - classifier) | x - ginco | 0.847 | 0.845 |
GPT - 4o (gpt - 4o - 2024 - 08 - 06) (零样本) | x - ginco | 0.776 | 0.769 |
Llama 3.3 (70B) (零样本) | x - ginco | 0.741 | 0.738 |
Gemma 3 (27B) (零样本) | x - ginco | 0.739 | 0.733 |
GPT - 4o - mini (gpt - 4o - mini - 2024 - 07 - 18) (零样本) | x - ginco | 0.688 | 0.67 |
GPT - 3.5 - Turbo (零样本) | x - ginco | 0.627 | 0.622 |
Gemma 2 (27B) (零样本) | x - ginco | 0.612 | 0.593 |
DeepSeek - R1 14B (零样本) | x - ginco | 0.197 | 0.204 |
支持向量机 | x - ginco | 0.166 | 0.184 |
虚拟分类器 (分层) | x - ginco | 0.106 | 0.113 |
虚拟分类器 (最频繁) | x - ginco | 0.029 | 0.133 |
(多语言测试数据集比英文测试数据集更容易,因为模糊标签“Other”和预测置信度分数低于0.80的实例未包含在测试数据集中。)
如需查看特定语言的结果,请参考[AGILE基准测试](https://github.com/TajaKuzman/AGILE - Automatic - Genre - Identification - Benchmark)。
预期用途和限制
用法
关于为体裁识别准备数据以及结果后处理的示例,可参考[此处](https://github.com/TajaKuzman/Applying - GENRE - on - MaCoCu - bilingual),我们在此将X - GENRE分类器应用于MaCoCu平行语料库的英文部分。
为获得可靠结果,体裁分类器应应用于足够长度的文档(经验法则是至少75个单词)。建议不要使用置信度高于0.9的预测结果。此外,标签“Other”可作为预测低置信度的另一个指标,因为它通常表明文本没有任何体裁的足够特征,这些预测结果也可舍弃。
经过建议的后处理(去除低置信度预测、标签“Other”,在这种特定情况下还去除标签“Forum”)后,基于手动检查,在MaCoCu数据上的性能达到宏F1和微F1值为0.92。
X - GENRE类别
标签列表
labels_list=['Other', 'Information/Explanation', 'News', 'Instruction', 'Opinion/Argumentation', 'Forum', 'Prose/Lyrical', 'Legal', 'Promotion'],
labels_map={'Other': 0, 'Information/Explanation': 1, 'News': 2, 'Instruction': 3, 'Opinion/Argumentation': 4, 'Forum': 5, 'Prose/Lyrical': 6, 'Legal': 7, 'Promotion': 8}
标签描述
标签 | 描述 | 示例 |
---|---|---|
Information/Explanation | 一种客观文本,用于描述或呈现事件、人物、事物、概念等。其主要目的是向读者传达信息。常见特征:客观/事实性、概念的解释/定义(x是…)、列举。 | 研究文章、百科全书文章、信息博客、产品规格、课程材料、一般信息、职位描述、手册、星座运势、旅游指南、词汇表、历史文章、传记故事/历史。 |
Instruction | 一种客观文本,指导读者如何做某事。常见特征:多个步骤/动作、时间顺序、第一人称复数或第二人称、情态动词(必须、不得不、需要、可以等)、方式状语从句(以某种方式)、条件状语从句(如果)、时间状语从句(在…之后)。 | 操作指南、食谱、技术支持。 |
Legal | 一种客观的正式文本,包含法律术语且结构清晰。文本类型的名称通常包含在标题中(合同、规则、修正案、一般条款和条件等)。常见特征:客观/事实性、法律术语、第三人称。 | 细则、软件许可证、公告、条款和条件、合同、法律、版权声明、大学规定。 |
News | 一种客观或主观的文本,报道写作时最近发生或即将发生的事件。常见特征:时间和/或地点的副词/状语从句(日期、地点)、许多专有名词、直接或间接引语、过去时态。 | 新闻报道、体育报道、旅游博客、新闻纪实、警方报告、公告。 |
Opinion/Argumentation | 一种主观文本,作者在其中表达自己的观点或叙述自己的经历。包括宣传某种意识形态和其他非商业事业。这种体裁也包括个人经历的主观叙述。常见特征:传达观点的形容词/副词、传达(不)确定性的词汇(肯定地、当然)、第一人称、感叹号。 | 评论、博客(个人博客、旅游博客)、社论、建议、读者来信、有说服力的文章或论文、正式演讲、宣传册、政治宣传、专栏、政治宣言。 |
Promotion | 一种主观文本,旨在推销或宣传事件、产品或服务。它面向读者,常试图说服他们参与某事或购买某物。常见特征:包含推销某物的形容词/副词(高质量、完美、惊人)、形容词和副词的比较级和最高级形式(最好的、最伟大的、最便宜的)、称呼读者(使用第二人称)、感叹号。 | 广告、产品推广(电商平台)、住宿推广、公司服务推广、活动邀请。 |
Forum | 人们以评论形式讨论特定话题的文本。常见特征:多个作者、非正式语言、主观(作者表达自己的观点)、第一人称写作。 | 讨论论坛、读者/观众反馈、问答论坛。 |
Prose/Lyrical | 一种由段落或诗句组成的文学文本。文学文本被认为除了给读者带来愉悦外没有其他实际用途。作者通常会关注文本的美学外观。它可以被视为艺术。 | 歌词、诗歌、祈祷文、笑话、小说、短篇小说。 |
Other | 不属于其他任何体裁类别的文本。 |
微调超参数
使用simpletransformers
进行微调。事先进行了简要的超参数优化,推测的最优超参数如下:
model_args= {
"num_train_epochs": 15,
"learning_rate": 1e-5,
"max_seq_length": 512,
"silent": True
}
🔧 技术细节
文档未提及技术实现细节,故跳过此章节。
📄 许可证
本模型采用CC - BY - SA 4.0许可证。
相关信息表格
属性 | 详情 |
---|---|
模型类型 | 基于xlm - roberta - base 的多语言文本体裁分类器 |
训练数据 | [TajaKuzman/X - GENRE - text - genre - dataset](https://huggingface.co/datasets/TajaKuzman/X - GENRE - text - genre - dataset) |
常用提示信息
⚠️ 重要提示
为获得可靠结果,体裁分类器应应用于足够长度的文档(经验法则是至少75个单词)。建议不要使用置信度高于0.9的预测结果。此外,标签“Other”可作为预测低置信度的另一个指标,因为它通常表明文本没有任何体裁的足够特征,这些预测结果也可舍弃。
💡 使用建议
关于为体裁识别准备数据以及结果后处理的示例,可参考[此处](https://github.com/TajaKuzman/Applying - GENRE - on - MaCoCu - bilingual),我们在此将X - GENRE分类器应用于MaCoCu平行语料库的英文部分。








