HuggingFace镜像/multilingual-MiniLMv2-L6-mnli-xnli
模型介绍文件和版本分析
下载使用量0

Multilingual MiniLMv2-L6-mnli-xnli

蒸馏模型的主要优势在于,它们比其教师模型(XLM-RoBERTa-large)更小(推理速度更快,内存需求更低)。 缺点是它们在一定程度上损失了较大教师模型的部分性能。

如何使用模型

python3 examples/inference.py --model_name_or_path=./

训练数据

本模型在XNLI开发数据集和MNLI训练数据集上进行训练。 XNLI开发集包含2490条从英语专业翻译为其他14种语言的文本(总计37350条文本)。 请注意,XNLI包含MNLI数据集的15种语言的机器翻译版本作为训练集,但由于这些机器翻译存在质量问题,本模型仅使用XNLI开发集中的专业翻译文本和原始英语MNLI训练集(392702条文本)进行训练。 不使用机器翻译文本可以避免模型对15种语言的过拟合; 避免灾难性遗忘其预训练时接触的其他语言; 并显著降低训练成本。

训练过程

模型使用Hugging Face trainer进行训练,采用以下超参数。 确切的基础模型为[mMiniLMv2-L6-H384-distilled-from-XLMR-Large]

training_args = TrainingArguments(
    num_train_epochs=3,              # total number of training epochs
    learning_rate=4e-05,
    per_device_train_batch_size=64,   # batch size per device during training
    per_device_eval_batch_size=120,    # batch size for evaluation
    warmup_ratio=0.06,                # number of warmup steps for learning rate scheduler
    weight_decay=0.01,               # strength of weight decay
)

评估结果

该模型在XNLI测试集的15种语言上进行了评估(每种语言5010条文本,总计75150条)。
需要注意的是,多语言NLI模型能够在未接收特定语言NLI训练数据的情况下对NLI文本进行分类(跨语言迁移)。这意味着该模型也能够对其训练时使用的其他语言进行NLI任务,但性能很可能低于XNLI中包含的语言。

论文中报告的multilingual-MiniLM-L6在XNLI上的平均性能为0.68。
本复现版本的平均性能为0.713。
性能提升可能得益于训练数据中添加了MNLI,并且该模型是从XLM-RoBERTa-large(而非-base版本,即multilingual-MiniLM-L6-v2)蒸馏而来。

数据集avg_xnliarbgdeelenesfrhiruswthtrurvizh
准确率0.7130.6870.7420.7190.7230.7890.7480.7410.6910.7140.6420.6990.6960.6640.7230.721
速度(文本/秒)(A100 GPU,eval_batch=120)6093.06210.06003.06053.05409.06531.06205.05615.05734.05970.06219.06289.06533.05851.05970.06798.0
数据集mnli_mmnli_mm
准确率0.7820.8
速度(文本/秒)(A100 GPU,eval_batch=120)4430.04395.0

局限性与偏差

有关潜在偏差,请参考原始论文以及关于不同NLI数据集的文献。

引用

如果使用此模型,请引用:Laurer, Moritz, Wouter van Atteveldt, Andreu Salleras Casas, and Kasper Welbers. 2022.
‘Less Annotating, More Classifying – Addressing the Data Scarcity Issue of Supervised Machine Learning with Deep Transfer Learning and BERT - NLI’.