🚀 HeBERT:用於極性分析和情感識別的預訓練BERT模型
HeBERT是一個希伯來語預訓練語言模型。它基於谷歌的BERT架構,採用BERT-Base配置(Devlin等人,2018)。
🚀 快速開始
HeBERT可用於情感識別和情感分析等下游任務。以下是不同任務的使用示例。
✨ 主要特性
- 基於谷歌BERT架構,採用BERT - Base配置。
- 在三個數據集上進行訓練,包括希伯來語版的OSCAR、希伯來語維基百科轉儲以及為該研究收集的情感用戶生成內容(UGC)數據。
- 可用於掩碼語言模型(Masked - LM)、情感分類和命名實體識別(NER)等任務。
📦 安裝指南
使用前需安裝transformers
庫,可通過以下命令安裝:
pip install transformers
💻 使用示例
基礎用法
掩碼語言模型(可微調用於任何下游任務)
from transformers import AutoTokenizer, AutoModel
tokenizer = AutoTokenizer.from_pretrained("avichr/heBERT")
model = AutoModel.from_pretrained("avichr/heBERT")
from transformers import pipeline
fill_mask = pipeline(
"fill-mask",
model="avichr/heBERT",
tokenizer="avichr/heBERT"
)
fill_mask("הקורונה לקחה את [MASK] ולנו לא נשאר דבר.")
情感分類模型(僅極性分析)
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': 'natural', 'score': 0.9978172183036804},
{'label': 'positive', 'score': 0.0014792329166084528},
{'label': 'negative', 'score': 0.0007035882445052266}]]
>>> sentiment_analysis('קפה זה טעים')
[[{'label': 'natural', 'score': 0.00047328314394690096},
{'label': 'possitive', 'score': 0.9994067549705505},
{'label': 'negetive', 'score': 0.00011996887042187154}]]
>>> sentiment_analysis('אני לא אוהב את העולם')
[[{'label': 'natural', 'score': 9.214012970915064e-05},
{'label': 'possitive', 'score': 8.876807987689972e-05},
{'label': 'negetive', 'score': 0.9998190999031067}]]
該模型也可在AWS上使用!更多信息請訪問 AWS的git倉庫
命名實體識別(NER)模型
from transformers import pipeline
NER = pipeline(
"token-classification",
model="avichr/heBERT_NER",
tokenizer="avichr/heBERT_NER",
)
NER('דויד לומד באוניברסיטה העברית שבירושלים')
📚 詳細文檔
訓練數據集
HeBERT在三個數據集上進行訓練:
- 希伯來語版的OSCAR (Ortiz, 2019):約9.8GB數據,包含10億個單詞和超過2080萬個句子。
- 希伯來語維基百科轉儲 (Wikipedia):約650MB數據,包含超過6300萬個單詞和380萬個句子。
- 為該研究收集的情感用戶生成內容(UGC)數據(如下所述)。
情感UGC數據描述
我們的用戶生成內容(UGC)是從2020年1月至2020年8月期間,從3個主要新聞網站收集的文章評論。總數據大小約為150MB,包含超過700萬個單詞和35萬個句子。
4000個句子由眾包人員進行標註(每個句子有3 - 10個標註人員),標註內容包括8種情感(憤怒、厭惡、期望、恐懼、快樂、悲傷、驚訝和信任)和整體情感/極性。
為了驗證標註的有效性,我們使用Krippendorff's alpha (krippendorff, 1970)來尋找每個句子中評級者對情感的一致性。我們保留了alpha > 0.7的句子。需要注意的是,雖然我們發現評級者在快樂、信任和厭惡等情感上有普遍的一致性,但對於一些情感(如期望和驚訝)存在普遍的分歧,這顯然是由於在文本中識別這些情感的複雜性所致。
🔧 技術細節
HeBERT基於谷歌的BERT架構,採用BERT - Base配置。在訓練過程中,使用了多個數據集來提高模型在希伯來語情感分析和識別任務中的性能。
📄 許可證
文檔中未提及許可證相關信息。
⚠️ 重要提示
目前僅發佈了情感分析(極性)模型,情感檢測模型將在後續發佈。
💡 使用建議
持續關注該項目,隨著模型的不斷改進,該頁面會進行更新。模型的更多功能和優化將逐步推出。
引用信息
如果您使用了該模型,請按以下方式引用:
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}
}
項目git倉庫:https://github.com/avichaychriqui/HeBERT