🚀 GottBERT:纯德语语言模型
GottBERT是首个仅针对德语的RoBERTa模型,它在首次发布的OSCAR数据集中的德语部分上进行了预训练。该模型旨在为德语在各种自然语言处理(NLP)任务中提供更出色的性能,这些任务包括命名实体识别(NER)、文本分类和自然语言推理(NLI)等。GottBERT有基础模型和大型模型两个版本,专门为德语任务量身定制。
属性 |
详情 |
模型类型 |
RoBERTa |
语言 |
德语 |
基础模型 |
12层,1.25亿参数 |
大型模型 |
24层,3.55亿参数 |
许可证 |
MIT |
该模型的相关信息发表于GottBERT: a pure German Language Model。
🚀 快速开始
GottBERT是一个专门为德语设计的语言模型,可用于多种自然语言处理任务。你可以通过以下链接获取相关资源:
✨ 主要特性
- 针对性强:是首个仅针对德语的RoBERTa模型,专为德语自然语言处理任务设计。
- 多版本选择:提供基础模型和大型模型两个版本,可根据不同需求选择。
- 性能出色:在多种德语自然语言处理任务中表现优异。
📦 安装指南
文档未提供具体安装步骤,可参考相关代码库(如Fairseq)获取安装方法。
💻 使用示例
文档未提供具体代码示例,你可以根据自己的需求,结合GottBERT的特性,在相关自然语言处理任务中使用该模型。
📚 详细文档
预训练详情
- 语料库:OSCAR数据集(Common Crawl)中的德语部分。
- 数据规模:
- 未过滤:145GB(约4.59亿个文档)
- 过滤后:121GB(约3.82亿个文档)
- 预处理:过滤过程包括纠正编码错误(如错误的变音符号),使用语言检测和句法过滤去除垃圾邮件和非德语文档。
过滤指标
- 停用词比率:检测垃圾邮件和无意义内容。
- 标点符号比率:检测异常的标点符号模式。
- 大写标记比率:识别包含过多大写标记的文档(通常是嘈杂内容)。
训练配置
- 框架:Fairseq
- 硬件:
- 基础模型:256个TPUv3 pod/128个TPUv4 pod
- 大型模型:128个TPUv4 pod
- 训练时间:
- 批次大小:8k个标记
- 学习率:
- 基础模型:峰值学习率 = 0.0004
- 大型模型:峰值学习率 = 0.00015
- 训练迭代次数:100k步,包含10k步的热身阶段
评估与结果
GottBERT在各种下游任务中进行了评估:
- 命名实体识别(NER):CoNLL 2003、GermEval 2014
- 文本分类:GermEval 2018(粗粒度和细粒度)、10kGNAD
- 自然语言推理(NLI):XNLI中的德语子集
评估指标:
- 命名实体识别和文本分类:F1分数
- 自然语言推理:准确率
详情:
- 粗体值表示在一种架构(基础模型、大型模型)中表现最佳的模型,下划线值表示第二佳的模型。
模型 |
自然语言推理准确率 |
GermEval_14 F1分数 |
CoNLL F1分数 |
粗粒度F1分数 |
细粒度F1分数 |
10kGNAD F1分数 |
GottBERT_base_best |
80.82 |
87.55 |
85.93 |
78.17 |
53.30 |
89.64 |
GottBERT_base_last |
81.04 |
87.48 |
85.61 |
78.18 |
53.92 |
90.27 |
GottBERT_filtered_base_best |
80.56 |
87.57 |
86.14 |
78.65 |
52.82 |
89.79 |
GottBERT_filtered_base_last |
80.74 |
87.59 |
85.66 |
78.08 |
52.39 |
89.92 |
GELECTRA_base |
81.70 |
86.91 |
85.37 |
77.26 |
50.07 |
89.02 |
GBERT_base |
80.06 |
87.24 |
85.16 |
77.37 |
51.51 |
90.30 |
dbmdzBERT |
68.12 |
86.82 |
85.15 |
77.46 |
52.07 |
90.34 |
GermanBERT |
78.16 |
86.53 |
83.87 |
74.81 |
47.78 |
90.18 |
XLM - R_base |
79.76 |
86.14 |
84.46 |
77.13 |
50.54 |
89.81 |
mBERT |
77.03 |
86.67 |
83.18 |
73.54 |
48.32 |
88.90 |
GottBERT_large |
82.46 |
88.20 |
86.78 |
79.40 |
54.61 |
90.24 |
GottBERT_filtered_large_best |
83.31 |
88.13 |
86.30 |
79.32 |
54.70 |
90.31 |
GottBERT_filtered_large_last |
82.79 |
88.27 |
86.28 |
78.96 |
54.72 |
90.17 |
GELECTRA_large |
86.33 |
88.72 |
86.78 |
81.28 |
56.17 |
90.97 |
GBERT_large |
84.21 |
88.72 |
87.19 |
80.84 |
57.37 |
90.74 |
XLM - R_large |
84.07 |
88.83 |
86.54 |
79.05 |
55.06 |
90.17 |
模型架构
- 基础模型:12层,1.25亿参数,5.2万个标记词汇表。
- 大型模型:24层,3.55亿参数,5.2万个标记词汇表。
分词器
- 类型:GPT - 2字节对编码(BPE)
- 词汇表大小:5.2万个子词标记
- 训练语料:未过滤的德语OSCAR语料库的40GB子样本。
局限性
- 过滤数据与未过滤数据:过滤后的数据有轻微改进,但不足以证明在每种情况下都需要进行过滤。
- 计算限制:TPU上的固定内存分配要求将数据作为单一流进行处理,这与保留文档边界的GPU训练不同。由于框架限制,训练在32位模式下进行,增加了内存使用量。
🔧 技术细节
GottBERT是基于RoBERTa架构专门为德语设计的语言模型。它在OSCAR数据集的德语部分上进行预训练,通过一系列的预处理和过滤步骤,提高了数据质量。在训练过程中,使用了Fairseq框架,并在TPU上进行大规模训练。模型架构分为基础模型和大型模型,分别具有不同的层数和参数数量。分词器采用GPT - 2的字节对编码(BPE),确保了对德语词汇的有效处理。
📄 许可证
本项目采用MIT许可证。
📖 引用
如果您在研究中使用了GottBERT,请引用以下论文:
@inproceedings{scheible-etal-2024-gottbert,
title = "{G}ott{BERT}: a pure {G}erman Language Model",
author = "Scheible, Raphael and
Frei, Johann and
Thomczyk, Fabian and
He, Henry and
Tippmann, Patric and
Knaus, Jochen and
Jaravine, Victor and
Kramer, Frank and
Boeker, Martin",
editor = "Al-Onaizan, Yaser and
Bansal, Mohit and
Chen, Yun-Nung",
booktitle = "Proceedings of the 2024 Conference on Empirical Methods in Natural Language Processing",
month = nov,
year = "2024",
address = "Miami, Florida, USA",
publisher = "Association for Computational Linguistics",
url = "https://aclanthology.org/2024.emnlp-main.1183",
pages = "21237--21250",
}