一、什么是 SST-2?
SST-2 是 GLUE 基准中的一项经典任务,全称为:
Stanford Sentiment Treebank v2
它来自斯坦福大学 NLP 实验室的研究成果,最初用于情感分析研究,主要目标是:
判断一句英文影评的情感倾向是积极(positive)还是消极(negative)
二、SST-1 vs. SST-2 区别?
数据集 | 分类类型 | 标签数 | 用途 |
---|---|---|---|
SST-1 | 五分类 | very neg, neg, neutral, pos, very pos | 细粒度情感 |
SST-2 | 二分类 | 0 = neg, 1 = pos | GLUE 中使用的版本 |
在 GLUE 任务中,我们用的是 SST-2,即二分类版本,更适合评估通用 NLP 模型。
三、任务形式
-
输入:一段英文影评句子
-
输出:情感标签:
-
1
= 正面情感(Positive) -
0
= 负面情感(Negative)
-
数据集中不含中性句。
四、数据来源与规模
SST 数据来源于 Rotten Tomatoes 网站上的电影评论。
它被人工标注,具有良好的质量控制:
划分 | 数量 |
---|---|
训练集 | ~67,000 条 |
验证集 | ~872 条 |
测试集 | ~1,821 条(无标签) |
五、数据示例
sentence label
A touching, funny and giddy movie. 1
An empty, vapid and painful movie. 0
解释:
-
✅ 第一句表达了积极评价,因此标为 1
-
❌ 第二句表达了贬义情绪,因此标为 0
六、模型挑战点
虽然 SST-2 是入门级任务,但要做到高准确率仍有挑战:
-
比如判断讽刺句(如:I enjoyed every minute of that disaster.)
-
理解上下文情绪词组合(如 “Not bad at all.” 实际是正面)
-
无法依赖关键词简单匹配,需要深入理解句法结构
因此,像 BERT、RoBERTa、DeBERTa 这样的预训练模型在 SST-2 上表现出色。
七、评估方式
-
指标:Accuracy(准确率)
-
官方 GLUE 排行榜以 SST-2 accuracy 为分值标准
-
顶级模型在测试集上可达到 95%+ 的准确率
八、使用代码(HuggingFace 示例)
1. 加载数据
from datasets import load_dataset
dataset = load_dataset("glue", "sst2")
print(dataset["train"][0])
输出示例:
{'sentence': "hide new secretions from the parental units ", 'label': 0}
2. 使用 BERT 模型训练
from transformers import BertTokenizer, BertForSequenceClassification, Trainer, TrainingArguments
tokenizer = BertTokenizer.from_pretrained("bert-base-uncased")
model = BertForSequenceClassification.from_pretrained("bert-base-uncased", num_labels=2)
def tokenize_fn(example):
return tokenizer(example["sentence"], truncation=True, padding="max_length", max_length=128)
encoded = dataset.map(tokenize_fn, batched=True)
training_args = TrainingArguments(
output_dir="./sst2_output",
per_device_train_batch_size=16,
evaluation_strategy="epoch",
num_train_epochs=3,
logging_dir='./logs',
)
trainer = Trainer(
model=model,
args=training_args,
train_dataset=encoded["train"],
eval_dataset=encoded["validation"],
)
trainer.train()
九、实际应用
SST-2 所考察的情感分析能力在生活中广泛应用:
-
商品评论分析
-
舆情监控系统
-
智能客服态度判断
-
舆论导向预测(如社交媒体文本)
十、总结
特性 | 内容 |
---|---|
数据集名 | SST-2(Stanford Sentiment Treebank 2) |
任务 | 英文句子情感分析(二分类) |
标签 | 0 = Negative,1 = Positive |
数据来源 | 电影评论(Rotten Tomatoes) |
用途 | GLUE 测试集之一,用于情感理解 |
工具推荐 | HuggingFace、Transformers、BERT |