🚀 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