许可证:MIT
语言:
基础模型:
- joeddav/xlm-roberta-large-xnli
管道标签:文本分类
标签:
库名称:transformers
数据集:
- Johnson8187/Chinese_Multi-Emotion_Dialogue_Dataset
中文文本情感分类器
这里有一个基于另一个基础模型微调的模型,具有较小的参数量。对于需要更快推理速度的用户,这个模型是一个合适的选择。实际性能测试结果也没有太大差异。
模型:Chinese-Emotion-Small
📚 模型介绍
本模型基于joeddav/xlm-roberta-large-xnli模型微调,专注于中文语句情感分析。
通过微调,模型可以识别以下8种情绪标签:
- 平淡语气
- 关切语调
- 开心语调
- 愤怒语调
- 悲伤语调
- 疑问语调
- 惊奇语调
- 厌恶语调
该模型适用于多种场景,例如客服情绪监控、社交媒体分析以及用户反馈分类。
🚀 快速开始
安装依赖
请确保安装了Hugging Face的Transformers库和PyTorch:
pip install transformers torch
加载模型
使用以下代码加载模型和分词器,并进行情感分类:
from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
label_mapping = {
0: "平淡语气",
1: "关切语调",
2: "开心语调",
3: "愤怒语调",
4: "悲伤语调",
5: "疑问语调",
6: "惊奇语调",
7: "厌恶语调"
}
def predict_emotion(text, model_path="Johnson8187/Chinese-Emotion"):
tokenizer = AutoTokenizer.from_pretrained(model_path)
model = AutoModelForSequenceClassification.from_pretrained(model_path).to(device)
inputs = tokenizer(text, return_tensors="pt", truncation=True, padding=True).to(device)
with torch.no_grad():
outputs = model(**inputs)
predicted_class = torch.argmax(outputs.logits).item()
predicted_emotion = label_mapping[predicted_class]
return predicted_emotion
if __name__ == "__main__":
test_texts = [
"虽然我努力了很久,但似乎总是做不到,我感到自己一无是处。",
"你说的那些话真的让我很困惑,完全不知道该怎么反应。",
"这世界真的是无情,为什么每次都要给我这样的考验?",
"有时候,我只希望能有一点安静,不要再听到这些无聊的话题。",
"每次想起那段过去,我的心还是会痛,真的无法释怀。",
"我从来没有想过会有这么大的改变,现在我觉得自己完全失控了。",
"我完全没想到你会这么做,这让我惊讶到无法言喻。",
"我知道我应该更坚强,但有些时候,这种情绪真的让我快要崩溃了。"
]
for text in test_texts:
emotion = predict_emotion(text)
print(f"文本: {text}")
print(f"预测情绪: {emotion}\n")
数据集
🌟 联系与反馈
如果您在使用该模型时遇到任何问题,请联系: