🚀 微调后的RoBERTa情感分析模型
该模型基于RoBERTa架构,针对YouTube评论数据进行微调,能精准分析评论情感倾向,为视频推荐、内容分析等应用提供有力支持。
🚀 快速开始
本模型可通过API端点使用,也能使用Hugging Face Transformers库在本地加载。以下是使用Python的示例代码:
from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch
model_name = "AmaanP314/youtube-xlm-roberta-base-sentiment-multilingual"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForSequenceClassification.from_pretrained(model_name)
comments = [
"This video aged like honey.",
"This video aged like milk.",
"It was just okay."
]
inputs = tokenizer(comments, return_tensors="pt", padding=True, truncation=True)
with torch.no_grad():
outputs = model(**inputs)
predictions = torch.argmax(outputs.logits, dim=1)
label_mapping = {0: "Negative", 1: "Neutral", 2: "Positive"}
sentiments = [label_mapping[p.item()] for p in predictions]
print(sentiments)
✨ 主要特性
- 领域适配性强:基于YouTube评论数据微调,能更好地处理YouTube评论中的独特语气、俚语和结构。
- 高精度:在YouTube评论情感分析任务上,准确率达到80.17%。
- 应用广泛:可用于视频推荐系统、内容分析仪表盘等需要理解观众情感的数据分析任务。
📦 安装指南
使用该模型前,需安装Hugging Face Transformers库,可使用以下命令进行安装:
pip install transformers torch
💻 使用示例
基础用法
from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch
model_name = "AmaanP314/youtube-xlm-roberta-base-sentiment-multilingual"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForSequenceClassification.from_pretrained(model_name)
comments = [
"This video aged like honey.",
"This video aged like milk.",
"It was just okay."
]
inputs = tokenizer(comments, return_tensors="pt", padding=True, truncation=True)
with torch.no_grad():
outputs = model(**inputs)
predictions = torch.argmax(outputs.logits, dim=1)
label_mapping = {0: "Negative", 1: "Neutral", 2: "Positive"}
sentiments = [label_mapping[p.item()] for p in predictions]
print(sentiments)
高级用法
如果你需要处理大量评论数据,可以考虑使用批量处理的方式,以提高效率。以下是一个简单的示例:
from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch
from tqdm import tqdm
model_name = "AmaanP314/youtube-xlm-roberta-base-sentiment-multilingual"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForSequenceClassification.from_pretrained(model_name)
comments = ["This is a comment."] * 1000
batch_size = 32
sentiments = []
for i in tqdm(range(0, len(comments), batch_size)):
batch = comments[i:i+batch_size]
inputs = tokenizer(batch, return_tensors="pt", padding=True, truncation=True)
with torch.no_grad():
outputs = model(**inputs)
predictions = torch.argmax(outputs.logits, dim=1)
label_mapping = {0: "Negative", 1: "Neutral", 2: "Positive"}
batch_sentiments = [label_mapping[p.item()] for p in predictions]
sentiments.extend(batch_sentiments)
print(sentiments)
📚 详细文档
模型概述
该模型是cardiffnlp/twitter-xlm-roberta-base-sentiment-multilingual模型的微调版本,在自定义的YouTube评论数据集上进行了微调。微调过程旨在提高模型在YouTube评论情感分析任务上的性能,因为YouTube评论在语气、俚语和结构上与其他社交媒体平台有所不同。微调后,模型的准确率达到了80.17%。
预期用途
该模型专为YouTube评论情感分析而设计。它接受一个文本输入列表(评论),并为每条评论返回一个情感标签:
该模型可用于视频推荐系统、内容分析仪表盘等需要理解观众情感的数据分析任务。
训练方式
评估
该模型在一个预留的YouTube评论测试集上进行了评估。与在Twitter数据上微调时约69.3%的基线准确率相比,该模型在这个数据集上的准确率提高到了80.17%。这一改进证明了特定领域微调的优势。
🔧 技术细节
该模型基于RoBERTa架构,通过在自定义的YouTube评论数据集上进行微调,学习到了YouTube评论中的独特特征。在微调过程中,使用了数据清洗和预处理技术,以提高数据质量;同时,采用了评估和测试环节,以确保模型的性能。
📄 许可证
本模型采用CC BY 4.0许可证。
相关信息表格
属性 |
详情 |
模型类型 |
文本分类模型 |
基础模型 |
cardiffnlp/twitter-xlm-roberta-base-sentiment-multilingual |
训练数据 |
AmaanP314/youtube-comment-sentiment |
评估指标 |
准确率 |
引用信息
如果你在研究中使用了该模型,请引用原始基础模型和本项目:
@misc{cardiffnlp,
title={Twitter-XLM-RoBERTa-Base-Sentiment-Multilingual},
author={Cardiff NLP},
year={2020},
publisher={Hugging Face},
howpublished={\url{https://huggingface.co/cardiffnlp/twitter-xlm-roberta-base-sentiment-multilingual}}
}
@misc{AmaanP314,
title={Youtube-XLM-RoBERTa-Base-Sentiment-Multilingual},
author={Amaan Poonawala},
year={2025},
howpublished={\url{https://huggingface.co/AmaanP314/youtube-xlm-roberta-base-sentiment-multilingual}}
}