🚀 HebEMO - 現代希伯來語情感識別模型
HebEMO 是一款用於檢測現代希伯來語用戶生成內容(UGC)極性並提取情感的工具。它基於我們收集並標註的獨特新冠疫情相關數據集進行訓練。HebEMO 在極性分類任務中取得了加權平均 F1 分數為 0.96 的高性能。情感檢測方面,除了“驚訝”情緒(F1 分數為 0.41,模型未能很好地捕捉該情緒),其他情緒的 F1 分數達到了 0.78 - 0.97。這些結果即使與英語語言模型的最佳報告性能相比也更為出色。
🚀 快速開始
情感識別模型
可以在 huggingface spaces 找到在線模型,或者使用 colab notebook。
!git clone https://github.com/avichaychriqui/HeBERT.git
from HeBERT.src.HebEMO import *
HebEMO_model = HebEMO()
HebEMO_model.hebemo(input_path = 'data/text_example.txt')
hebEMO_df = HebEMO_model.hebemo(text='החיים יפים ומאושרים', plot=True)

情感分類模型(僅極性)
from transformers import AutoTokenizer, AutoModel, pipeline
tokenizer = AutoTokenizer.from_pretrained("avichr/heBERT_sentiment_analysis")
model = AutoModel.from_pretrained("avichr/heBERT_sentiment_analysis")
sentiment_analysis = pipeline(
"sentiment-analysis",
model="avichr/heBERT_sentiment_analysis",
tokenizer="avichr/heBERT_sentiment_analysis",
return_all_scores = True
)
sentiment_analysis('אני מתלבט מה לאכול לארוחת צהריים')
>>> [[{'label': 'neutral', 'score': 0.9978172183036804},
>>> {'label': 'positive', 'score': 0.0014792329166084528},
>>> {'label': 'negative', 'score': 0.0007035882445052266}]]
sentiment_analysis('קפה זה טעים')
>>> [[{'label': 'neutral', 'score': 0.00047328314394690096},
>>> {'label': 'possitive', 'score': 0.9994067549705505},
>>> {'label': 'negetive', 'score': 0.00011996887042187154}]]
sentiment_analysis('אני לא אוהב את העולם')
>>> [[{'label': 'neutral', 'score': 9.214012970915064e-05},
>>> {'label': 'possitive', 'score': 8.876807987689972e-05},
>>> {'label': 'negetive', 'score': 0.9998190999031067}]]
✨ 主要特性
- 能夠檢測現代希伯來語用戶生成內容的極性和提取情感。
- 基於獨特的新冠疫情相關數據集訓練,在極性分類和情感檢測任務中表現出色。
📦 安裝指南
!git clone https://github.com/avichaychriqui/HeBERT.git
💻 使用示例
基礎用法
from HeBERT.src.HebEMO import *
HebEMO_model = HebEMO()
HebEMO_model.hebemo(input_path = 'data/text_example.txt')
hebEMO_df = HebEMO_model.hebemo(text='החיים יפים ומאושרים', plot=True)
高級用法
from transformers import AutoTokenizer, AutoModel, pipeline
tokenizer = AutoTokenizer.from_pretrained("avichr/heBERT_sentiment_analysis")
model = AutoModel.from_pretrained("avichr/heBERT_sentiment_analysis")
sentiment_analysis = pipeline(
"sentiment-analysis",
model="avichr/heBERT_sentiment_analysis",
tokenizer="avichr/heBERT_sentiment_analysis",
return_all_scores = True
)
sentiment_analysis('אני מתלבט מה לאכול לארוחת צהריים')
sentiment_analysis('קפה זה טעים')
sentiment_analysis('אני לא אוהב את העולם')
📚 詳細文檔
情感UGC數據描述
我們的UGC數據包含從2020年1月至2020年8月期間,從3家主要以色列新聞網站收集的新聞文章評論。數據總大小約為150 MB,包含超過700萬個單詞和35萬個句子。約2000個句子由眾包成員(每個句子有3 - 10名標註者)標註了整體情感(極性)和八種情緒:憤怒、厭惡、期待、恐懼、喜悅、悲傷、驚訝和信任。每種情緒在句子中出現的百分比見下表。
屬性 |
詳情 |
數據來源 |
2020年1月 - 2020年8月,3家主要以色列新聞網站新聞文章評論 |
數據大小 |
約150 MB,超過700萬個單詞,35萬個句子 |
標註內容 |
整體情感(極性)和八種情緒(憤怒、厭惡、期待、恐懼、喜悅、悲傷、驚訝和信任) |
情緒 |
憤怒 |
厭惡 |
期待 |
恐懼 |
喜悅 |
悲傷 |
驚訝 |
信任 |
情感極性 |
比例 |
0.78 |
0.83 |
0.58 |
0.45 |
0.12 |
0.59 |
0.17 |
0.11 |
0.25 |
性能
情感識別
情緒 |
F1分數 |
精確率 |
召回率 |
憤怒 |
0.96 |
0.99 |
0.93 |
厭惡 |
0.97 |
0.98 |
0.96 |
期待 |
0.82 |
0.80 |
0.87 |
恐懼 |
0.79 |
0.88 |
0.72 |
喜悅 |
0.90 |
0.97 |
0.84 |
悲傷 |
0.90 |
0.86 |
0.94 |
驚訝 |
0.40 |
0.44 |
0.37 |
信任 |
0.83 |
0.86 |
0.80 |
以上指標針對正類(即文本中反映出該情緒)。
情感分類(僅極性)
類別 |
精確率 |
召回率 |
F1分數 |
中性 |
0.83 |
0.56 |
0.67 |
積極 |
0.96 |
0.92 |
0.94 |
消極 |
0.97 |
0.99 |
0.98 |
準確率 |
|
|
0.97 |
宏平均 |
0.92 |
0.82 |
0.86 |
加權平均 |
0.96 |
0.97 |
0.96 |
⚠️ 重要提示
情感分類(極性)模型也可在AWS上使用!更多信息請訪問 AWS的git倉庫
📄 許可證
文檔未提及相關許可證信息。
📞 聯繫我們
感謝!תודה!شكرا!
📚 引用說明
如果您使用了此模型,請按以下格式引用我們:
Chriqui, A., & Yahav, I. (2022). HeBERT & HebEMO: a Hebrew BERT Model and a Tool for Polarity Analysis and Emotion Recognition. INFORMS Journal on Data Science, forthcoming.
@article{chriqui2021hebert,
title={HeBERT \& HebEMO: a Hebrew BERT Model and a Tool for Polarity Analysis and Emotion Recognition},
author={Chriqui, Avihay and Yahav, Inbal},
journal={INFORMS Journal on Data Science},
year={2022}
}