HuggingFace镜像/XLM-RoBERTa-German-sentiment
模型介绍文件和版本分析
下载使用量0

模型名称:XLM-RoBERTa-German-Sentiment

概述

XLM-RoBERTa-German-Sentiment 模型旨在对 8 种语言进行情感分析,尤其针对德语。
该模型采用 XLM-RoBERTa 架构,这一选择是因为在众多基准测试中,Facebook 的 RoBERTa 表现优于 Google 的 BERT。
选择使用 XLM-RoBERTa 是因其具备多语言处理能力。此模型专为德语定制,已在超过 20 万个德语情感分析样本上进行了微调,有关模型训练的更多信息可参见论文。
训练所用数据集可在此 GitHub 仓库获取,该数据集由 Oliver Guhr 开发。我们感谢他将数据集开源,该数据集对提高模型的准确性以及对德语情感细微差别的响应能力起到了重要作用。
我们的模型和微调工作基于名为 xlm-t 的情感分析模型[https://arxiv.org/abs/2104.12250]。

模型详情

  • 架构:XLM-RoBERTa
  • 性能:加权 F1 分数为 87%。
  • 局限性:该模型仅在德语上进行了训练和测试,但可以处理其他 8 种语言,不过准确率会较低。

如何使用

我已在我的仓库中开发了用于推理的 Python 桌面应用程序。
要使用此模型,您需要安装 Hugging Face Transformers 库和 PyTorch。您可以使用 pip 进行安装:

pip install torch transformers
from transformers import AutoModelForSequenceClassification, AutoTokenizer
import torch
text = "Erneuter Streik in der S-Bahn"
model = AutoModelForSequenceClassification.from_pretrained('ssary/XLM-RoBERTa-German-sentiment')
tokenizer = AutoTokenizer.from_pretrained('ssary/XLM-RoBERTa-German-sentiment')
inputs = tokenizer(text, return_tensors="pt", truncation=True, max_length=512)
with torch.no_grad():
    outputs = model(**inputs)
predictions = torch.nn.functional.softmax(outputs.logits, dim=-1)
sentiment_classes = ['negative', 'neutral', 'positive']
print(sentiment_classes[predictions.argmax()]) # for the class with highest probability
print(predictions) # for each class probability

致谢

本模型由 HTW-Berlin 的 Sary Nasser 在 Martin Steinicke 的指导下开发。

参考文献

  • 模型的 GitHub 仓库:https://github.com/ssary/German-Sentiment-Analysis
  • Oliver Guhr 数据集论文:Training a Broad-Coverage German Sentiment Classification Model for Dialog Systems
  • 模型架构:XLM-T: Multilingual Language Models in Twitter for Sentiment Analysis and Beyond