数据集:
allegro/klej-polemo2-out
任务:
文本分类语言:
pl计算机处理:
monolingual大小:
1K<n<10K语言创建人:
other批注创建人:
expert-generated源数据集:
original许可:
cc-by-sa-4.0PolEmo2.0是一个包含来自四个领域(医药、酒店、产品和大学)的在线消费者评论的数据集。它经过人工注释,可以分为完整评论和句子级别。数据集包含超过8000条评论,其中大约85%来自医药和酒店领域。
我们使用PolEmo2.0数据集构建了两个任务。两个任务使用相同的训练数据集,即来自医药和酒店领域的评论,但在不同的测试集上进行评估。
“跨领域”是第二个任务,我们在跨领域的评论上对模型进行测试,即来自产品和大学领域的评论。由于这些领域的原始测试集很少(每个领域50条评论),我们决定使用原始的跨领域训练集(900条评论)进行测试,并创建了新的开发集和测试集。因此,该任务包含1000条评论,与领域内测试数据集的1400条评论相当。
任务是预测评论的正确标签。
输入(“text”列):句子
输出(“target”列):句子情感的标签(“zero”:中性、“minus”:负面、“plus”:正面、“amb”:模糊)
领域:在线评论
指标:准确率
示例:
输入:Lekarz zalecił mi kurację alternatywną do dotychczasowej, więc jeszcze nie daję najwyższej oceny (zobaczymy na ile okaże się skuteczna). Do Pana doktora nie mam zastrzeżeń: bardzo profesjonalny i kulturalny. Jedyny minus dotyczy gabinetu, który nie jest nowoczesny, co może zniechęcać pacjentki.
输入(由DeepL翻译):医生推荐给我一种替代疗法,所以我还没有给出最高评价(我们将看到它的有效性如何)。对于这位医生我没有任何保留:非常专业和有修养。唯一的缺点是办公室不够现代化,可能会让患者产生反感。
输出:amb(模糊)
Subset | Cardinality |
---|---|
train | 5783 |
test | 722 |
validation | 723 |
Class | Sentiment | train | validation | test |
---|---|---|---|---|
minus | positive | 0.379 | 0.334 | 0.368 |
plus | negative | 0.271 | 0.332 | 0.302 |
amb | ambiguous | 0.182 | 0.332 | 0.328 |
zero | neutral | 0.168 | 0.002 | 0.002 |
@inproceedings{kocon-etal-2019-multi, title = "Multi-Level Sentiment Analysis of {P}ol{E}mo 2.0: Extended Corpus of Multi-Domain Consumer Reviews", author = "Koco{\'n}, Jan and Mi{\l}kowski, Piotr and Za{\'s}ko-Zieli{\'n}ska, Monika", booktitle = "Proceedings of the 23rd Conference on Computational Natural Language Learning (CoNLL)", month = nov, year = "2019", address = "Hong Kong, China", publisher = "Association for Computational Linguistics", url = "https://aclanthology.org/K19-1092", doi = "10.18653/v1/K19-1092", pages = "980--991", abstract = "In this article we present an extended version of PolEmo {--} a corpus of consumer reviews from 4 domains: medicine, hotels, products and school. Current version (PolEmo 2.0) contains 8,216 reviews having 57,466 sentences. Each text and sentence was manually annotated with sentiment in 2+1 scheme, which gives a total of 197,046 annotations. We obtained a high value of Positive Specific Agreement, which is 0.91 for texts and 0.88 for sentences. PolEmo 2.0 is publicly available under a Creative Commons copyright license. We explored recent deep learning approaches for the recognition of sentiment, such as Bi-directional Long Short-Term Memory (BiLSTM) and Bidirectional Encoder Representations from Transformers (BERT).", }
Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0)
from pprint import pprint from datasets import load_dataset dataset = load_dataset("allegro/klej-polemo2-out") pprint(dataset['train'][0]) # {'sentence': 'Super lekarz i człowiek przez duże C . Bardzo duże doświadczenie ' # 'i trafne diagnozy . Wielka cierpliwość do ludzi starszych . Od ' # 'lat opiekuje się moją Mamą staruszką , i twierdzę , że mamy duże ' # 'szczęście , że mamy takiego lekarza . Naprawdę nie wiem cobyśmy ' # 'zrobili , gdyby nie Pan doktor . Dzięki temu , moja mama żyje . ' # 'Każda wizyta u specjalisty jest u niego konsultowana i uważam , ' # 'że jest lepszy od każdego z nich . Mamy do Niego prawie ' # 'nieograniczone zaufanie . Można wiele dobrego o Panu doktorze ' # 'jeszcze napisać . Niestety , ma bardzo dużo pacjentów , jest ' # 'przepracowany ( z tego powodu nawet obawiam się o jego zdrowie ) ' # 'i dostęp do niego jest trudny , ale zawsze możliwy .', # 'target': '__label__meta_plus_m'}
import random from pprint import pprint from datasets import load_dataset, load_metric dataset = load_dataset("allegro/klej-polemo2-out") dataset = dataset.class_encode_column("target") references = dataset["test"]["target"] # generate random predictions predictions = [random.randrange(max(references) + 1) for _ in range(len(references))] acc = load_metric("accuracy") f1 = load_metric("f1") acc_score = acc.compute(predictions=predictions, references=references) f1_score = f1.compute(predictions=predictions, references=references, average="macro") pprint(acc_score) pprint(f1_score) # {'accuracy': 0.2894736842105263} # {'f1': 0.2484406098784191}