✅ معيار اللغة الإنجليزية لتقييم طرق التفسير السببي.
✅ معيار تحليل المشاعر المستندة إلى جانب الإنسان (ABSA).
إلدار ديفيد أبراهام ، كاريل دي أوسترلينك ، أمير فيدر ، يير جات ، أتيكوس جيجر ، كريستوفر بوتس ، روي رايشارت ، تشنغكسوان وو. 2022. Cebab: تقدير التأثيرات السببية للمفاهيم الواقعية على سلوك نموذج NLP. السيدة ، جامعة ستانفورد ، تقنيون - معهد إسرائيل للتكنولوجيا ، وجامعة غنت.
@unpublished{abraham-etal-2022-cebab,
title={{CEBaB}: Estimating the Causal Effects of Real-World Concepts on {NLP} Model Behavior},
author={Abraham, Eldar David and D'Oosterlinck, Karel and Feder, Amir and Gat, Yair Ori and Geiger, Atticus and Potts, Christopher and Reichart, Roi and Wu, Zhengxuan},
note={arXiv:2205.14140},
url={https://arxiv.org/abs/2205.14140},
year={2022}}
يمكن تنزيل ملفات مجموعة البيانات من Cebab-V1.1.zip. يختلف V1.1 الخاص بنا عن V1.0 فقط في أن V1.1 لديه معرفات فريدة مناسبة أمثلةنا وتصحيح الخلل الذي أدى إلى بعض المعرفات غير الموسيقية في الإصدار السابق. لا توجد تغييرات على الحقول الحرجة الأخرى.
لاحظ أننا نوصيك باستخدام مكتبة مجموعات بيانات HuggingFace لاستخدام مجموعة البيانات الخاصة بنا. انظر أدناه للحصول على تحميل بيانات خطي واحد.
تتكون مجموعة البيانات من تقسيم Train_Exclusive/Train_Inclusive/dev/test:
train_exclusive.jsontrain_inclusive.jsontrain_observational.jsondev.jsontest.json ورقة البيانات لمجموعة البيانات الخاصة بنا:
يتم الحفاظ على Cebab بشكل أساسي باستخدام مكتبة مجموعات بيانات Huggingface:
"""
Make sure you install the Datasets library using:
pip install datasets
"""
from datasets import load_dataset
CEBaB = load_dataset ( "CEBaB/CEBaB" ) يمكن استخدام هذه الوظيفة لتحميل أي مجموعة فرعية من ملفات Raw *.json :
import json
def load_split ( splitname ):
with open ( splitname ) as f :
data = json . load ( f )
return data {
'id' : str in format dddddd_dddddd as the concatenation of original_id and edit_id ,
'original_id' : str in format dddddd ,
'edit_id' : str in format dddddd ,
'is_original' : bool ,
'edit_goal' : str ( one of "Negative" , "Positive" , "unknown" ) or None if is_original ,
'edit_type' : str ( one of "noise" , "service" , "ambiance" , "food" ),
'edit_worker' : str or None if is_original ,
'description' : str ,
'review_majority' : str ( one of "1" , "2" , "3" , "4" , "5" , "no majority" ),
'review_label_distribution' : dict ( str to int ),
'review_workers' : dict ( str to str ),
'food_aspect_majority' : str ( one of "Negative" , "Positive" , "unknown" , "no majority" ),
'ambiance_aspect_majority' : str ( one of "Negative" , "Positive" , "unknown" , "no majority" ),
'service_aspect_majority' : str ( one of "Negative" , "Positive" , "unknown" , "no majority" ),
'noise_aspect_majority' : str ( one of "Negative" , "Positive" , "unknown" , "no majority" ),
'food_aspect_label_distribution' : dict ( str to int ),
'ambiance_aspect_label_distribution' : dict ( str to int ),
'service_aspect_label_distribution' : dict ( str to int ),
'noise_aspect_label_distribution' : dict ( str to int ),
'food_aspect_validation_workers' : dict ( str to str ),
'ambiance_aspect_validation_workers' : dict ( str to str ),
'service_aspect_validation_workers' : dict ( str to str ),
'noise_aspect_validation_workers' : dict ( str to str ),
'opentable_metadata' : {
"restaurant_id" : int ,
"restaurant_name" : str ,
"cuisine" : str ,
"price_tier" : str ,
"dining_style" : str ,
"dress_code" : str ,
"parking" : str ,
"region" : str ,
"rating_ambiance" : int ,
"rating_food" : int ,
"rating_noise" : int ,
"rating_service" : int ,
"rating_overall" : int
}
}تفاصيل:
'id' : المعرف الفريد هذا المثال (مزيج من اثنين من المعرفات المدرجة أدناه).'original_id' : المعرف الفريد للجمل الأصلي للحصول على مثال تم تحريره.'edit_id' : المعرف الفريد من الجملة التي تم تحريرها.'is_original' : أشير إلى ما إذا كانت هذه الجملة عبارة عن تحرير أم لا.'edit_goal' : تسمية الهدف لجانب التحرير إذا كان مثالًا تم تحريره ، None آخر.'edit_type' : الجانب لتعديل أو تسمية مع المشاعر إذا كان مثالًا تم تحريره ، None آخر.'edit_worker' : معرف Mturk المجهول للعامل الذي كتب 'description' . هذه هي من نفس عائلة المعرفات المستخدمة في 'aspect_validation_workers' .'description' : النص المثال.'review_majority' : الملصق على مستوى المراجعة لجانب التحرير الذي اختاره ما لا يقل عن ثلاثة من العمال الخمسة إذا كان هناك واحد ، أي no majority .'review_label_distribution' : توزيع تصنيف مستوى المراجعة من مهمة التحقق من صحة MTURK.'review_workers' : الاستجابة الفردية لتصنيف مستوى المراجعة من المذيعين. المفاتيح هي قوائم بمعرفات MTURK مجهولة المصدر ، والتي يتم استخدامها باستمرار في جميع أنحاء مجموعة البيانات.'*_aspect_majority' : الملصق على مستوى الجانب لجانب التحرير الذي اختاره ما لا يقل عن ثلاثة من العمال الخمسة إذا كان هناك واحد ، أي no majority .'*_aspect_label_distribution' : توزيع تصنيف مستوى الجانب من مهمة التحقق من صحة MTURK.'*_aspect_label_workers' : الاستجابة الفردية للتصنيف على مستوى المراجعة من الشروط. المفاتيح هي قوائم بمعرفات MTURK مجهولة المصدر ، والتي يتم استخدامها باستمرار في جميع أنحاء مجموعة البيانات.'opentable_metadata' : بيانات التعريف للمراجعة.هنا مثال واحد ،
{
"id" : "000000_000000" ,
"original_id" : "000000" ,
"edit_id" : "000000" ,
"is_original" : true ,
"edit_goal" : null ,
"edit_type" : null ,
"edit_worker" : null ,
"description" : "Overbooked and didnot honor reservation time,put on wait list with walk INS" ,
"review_majority" : "1" ,
"review_label_distribution" : {
"1" : 4 ,
"2" : 1
},
"review_workers" : {
"w244" : "1" ,
"w120" : "2" ,
"w197" : "1" ,
"w7" : "1" ,
"w132" : "1"
},
"food_aspect_majority" : "" ,
"ambiance_aspect_majority" : "" ,
"service_aspect_majority" : "Negative" ,
"noise_aspect_majority" : "unknown" ,
"food_aspect_label_distribution" : "" ,
"ambiance_aspect_label_distribution" : "" ,
"service_aspect_label_distribution" : {
"Negative" : 5
},
"noise_aspect_label_distribution" : {
"unknown" : 4 ,
"Negative" : 1
},
"food_aspect_validation_workers" : "" ,
"ambiance_aspect_validation_workers" : "" ,
"service_aspect_validation_workers" : {
"w148" : "Negative" ,
"w120" : "Negative" ,
"w83" : "Negative" ,
"w35" : "Negative" ,
"w70" : "Negative"
},
"noise_aspect_validation_workers" : {
"w27" : "unknown" ,
"w23" : "unknown" ,
"w81" : "Negative" ,
"w103" : "unknown" ,
"w9" : "unknown"
},
"opentable_metadata" : {
"restaurant_id" : 6513 ,
"restaurant_name" : "Molino's Ristorante" ,
"cuisine" : "italian" ,
"price_tier" : "low" ,
"dining_style" : "Casual Elegant" ,
"dress_code" : "Smart Casual" ,
"parking" : "Private Lot" ,
"region" : "south" ,
"rating_ambiance" : 1 ,
"rating_food" : 3 ,
"rating_noise" : 2 ,
"rating_service" : 2 ,
"rating_overall" : 2
}
}نستضيف رمز تحليلاتنا في كودنا فولير.
يحتوي هذا القسم على المتصدرين لبعض من أفضل الدرجات التي تم الحصول عليها على Cebab كمهمة تصنيف المعنويات من خمسة فئات. لإضافة درجات يرجى النظر في طلب سحب.
| النموذج العمارة | متري | تقريبا | S-Learner | INLP |
|---|---|---|---|---|
| بيرت | L2 | 0.81 (± 0.01) | 0.74 (± 0.02) | 0.80 (± 0.02) |
| بيرت | كوس | 0.61 (± 0.01) | 0.63 (± 0.01) | 0.59 (± 0.03) |
| بيرت | Normdiff | 0.44 (± 0.01) | 0.54 (± 0.02) | 0.73 (± 0.02) |
| روبرتا | L2 | 0.83 (± 0.01) | 0.78 (± 0.01) | 0.84 (± 0.01) |
| روبرتا | كوس | 0.60 (± 0.01) | 0.64 (± 0.01) | 0.58 (± 0.01) |
| روبرتا | Normdiff | 0.45 (± 0.00) | 0.59 (± 0.01) | 0.81 (± 0.01) |
| GPT-2 | L2 | 0.72 (± 0.02) | 0.60 (± 0.02) | 0.72 (± 0.01) |
| GPT-2 | كوس | 0.59 (± 0.01) | 0.59 (± 0.01) | 1.00 (± 0.00) |
| GPT-2 | Normdiff | 0.41 (± 0.01) | 0.40 (± 0.01) | 0.58 (± 0.03) |
| LSTM | L2 | 0.86 (± 0.01) | 0.73 (± 0.01) | 0.79 (± 0.01) |
| LSTM | كوس | 0.64 (± 0.01) | 0.64 (± 0.01) | 0.74 (± 0.02) |
| LSTM | Normdiff | 0.50 (± 0.01) | 0.53 (± 0.01) | 0.60 (± 0.01) |
لدى Cebab ترخيص Creative Commons Attribution 4.0 الدولي.