🚀 PopBERT
PopBERT是一个用于检测德国联邦议院政治演讲中德语民粹主义的模型,它基于deepset/gbert-large模型:https://huggingface.co/deepset/gbert-large 。该模型能够解决在德语政治演讲中识别民粹主义相关特征的问题,为政治文本分析提供了有力支持。
🚀 快速开始
PopBERT是一个用于检测德国联邦议院政治演讲中德语民粹主义的模型,基于deepset/gbert-large模型。它是一个多标签模型,在第18和第19立法期的手动整理句子数据集上进行训练。除了捕捉民粹主义的基本维度,即“反精英主义”和“以人民为中心”之外,该模型还经过微调,以识别潜在的意识形态倾向是“左翼”还是“右翼”。
✨ 主要特性
- 基于deepset/gbert-large模型,用于检测德国联邦议院政治演讲中的德语民粹主义。
- 多标签模型,可识别“反精英主义”“以人民为中心”“左翼”和“右翼”等维度。
- 在手动整理的数据集上训练,能更精准地捕捉民粹主义特征。
📦 安装指南
此文档未提及具体安装步骤,若需使用该模型,可参考transformers
库的安装方法。
💻 使用示例
基础用法
import torch
from transformers import AutoModelForSequenceClassification
from transformers import AutoTokenizer
tokenizer = AutoTokenizer.from_pretrained("luerhard/PopBERT")
model = AutoModelForSequenceClassification.from_pretrained("luerhard/PopBERT")
text = (
"Das ist Klassenkampf von oben, das ist Klassenkampf im Interesse von "
"Vermögenden und Besitzenden gegen die Mehrheit der Steuerzahlerinnen und "
"Steuerzahler auf dieser Erde."
)
encodings = tokenizer(text, return_tensors="pt")
with torch.inference_mode():
out = model(**encodings)
probs = torch.nn.functional.sigmoid(out.logits)
print(probs.detach().numpy())
运行上述代码后,输出结果如下:
[[0.8765146 0.34838045 0.983123 0.02148379]]
高级用法
为了最大化性能,建议针对每个维度使用以下阈值:
[0.415961, 0.295400, 0.429109, 0.302714]
使用这些阈值,模型在测试集上达到以下性能:
维度 |
精确率 |
召回率 |
F1值 |
反精英主义 |
0.81 |
0.88 |
0.84 |
以人民为中心 |
0.70 |
0.73 |
0.71 |
左翼意识形态 |
0.69 |
0.77 |
0.73 |
右翼意识形态 |
0.68 |
0.66 |
0.67 |
--- |
--- |
--- |
--- |
微平均 |
0.75 |
0.80 |
0.77 |
宏平均 |
0.72 |
0.76 |
0.74 |
📚 详细文档
预测结果说明
模型输出一个长度为4的张量。下表将预测概率的位置与其维度相关联:
索引 |
维度 |
0 |
反精英主义 |
1 |
以人民为中心 |
2 |
左翼意识形态 |
3 |
右翼意识形态 |
📄 许可证
本项目采用MIT许可证。