Marefa Ner
M
Marefa Ner
marefa-nlpによって開発
新しいデータセットに基づいて構築された大規模なアラビア語固有表現認識(NER)モデルで、9種類の異なるエンティティを認識可能
ダウンロード数 4,380
リリース時間 : 3/2/2022
モデル概要
このモデルはテキスト断片分類の知識モデルで、アラビア語テキストにおける固有表現認識に特化しており、人物、場所、組織など様々なエンティティタイプの認識をサポートします。
モデル特徴
多カテゴリエンティティ認識
人物、場所、組織など最大9種類の異なるエンティティを認識可能
新規トレーニングデータ
完全に再構築されたトレーニングデータセットに基づいて構築され、データ品質が高い
高精度認識
テストセットで優れた性能を発揮し、特に人物認識のF1スコアは0.93に達する
モデル能力
アラビア語テキスト処理
固有表現認識
テキスト断片分類
使用事例
ニュース分析
ニュースイベント分析
ニューステキストから人物、場所、組織などのキー情報を抽出
'カイロスタジアムで、アフリカネイションズカップ開会式が共和国大統領とFIFA会長の出席のもと開催された'といった文中のエンティティを正確に認識可能
ソーシャルメディア分析
ソーシャルメディアコンテンツ分析
アラビア語ソーシャルメディアコンテンツのキーエンティティを分析
🚀 Tebyan تبيـان
概要
Tebyanは、新しいデータセットを用いて構築された大規模なアラビア語固有表現認識(NER)モデルです。このモデルは、最大9種類の異なるタイプのエンティティを抽出することを目的としています。
🚀 クイックスタート
モデルのテスト
Colabノートブックをチェックすることで、モデルをすばやくテストできます。
必要なパッケージのインストール
$ pip3 install transformers==4.8.0 nltk==3.5 protobuf==3.15.3 torch==1.9.0
⚠️ 重要提示
Google Colab
を使用している場合は、パッケージをインストールした後にランタイムを再起動してください。
コード例
from transformers import AutoTokenizer, AutoModelForTokenClassification
import torch
import numpy as np
import nltk
nltk.download('punkt')
from nltk.tokenize import word_tokenize
custom_labels = ["O", "B-job", "I-job", "B-nationality", "B-person", "I-person", "B-location","B-time", "I-time", "B-event", "I-event", "B-organization", "I-organization", "I-location", "I-nationality", "B-product", "I-product", "B-artwork", "I-artwork"]
def _extract_ner(text: str, model: AutoModelForTokenClassification,
tokenizer: AutoTokenizer, start_token: str="▁"):
tokenized_sentence = tokenizer([text], padding=True, truncation=True, return_tensors="pt")
tokenized_sentences = tokenized_sentence['input_ids'].numpy()
with torch.no_grad():
output = model(**tokenized_sentence)
last_hidden_states = output[0].numpy()
label_indices = np.argmax(last_hidden_states[0], axis=1)
tokens = tokenizer.convert_ids_to_tokens(tokenized_sentences[0])
special_tags = set(tokenizer.special_tokens_map.values())
grouped_tokens = []
for token, label_idx in zip(tokens, label_indices):
if token not in special_tags:
if not token.startswith(start_token) and len(token.replace(start_token,"").strip()) > 0:
grouped_tokens[-1]["token"] += token
else:
grouped_tokens.append({"token": token, "label": custom_labels[label_idx]})
# extract entities
ents = []
prev_label = "O"
for token in grouped_tokens:
label = token["label"].replace("I-","").replace("B-","")
if token["label"] != "O":
if label != prev_label:
ents.append({"token": [token["token"]], "label": label})
else:
ents[-1]["token"].append(token["token"])
prev_label = label
# group tokens
ents = [{"token": "".join(rec["token"]).replace(start_token," ").strip(), "label": rec["label"]} for rec in ents ]
return ents
model_cp = "marefa-nlp/marefa-ner"
tokenizer = AutoTokenizer.from_pretrained(model_cp)
model = AutoModelForTokenClassification.from_pretrained(model_cp, num_labels=len(custom_labels))
samples = [
"تلقى تعليمه في الكتاب ثم انضم الى الأزهر عام 1873م. تعلم على يد السيد جمال الدين الأفغاني والشيخ محمد عبده",
"بعد عودته إلى القاهرة، التحق نجيب الريحاني فرقة جورج أبيض، الذي كان قد ضمَّ - قُبيل ذلك - فرقته إلى فرقة سلامة حجازي . و منها ذاع صيته",
"في استاد القاهرة، قام حفل افتتاح بطولة كأس الأمم الأفريقية بحضور رئيس الجمهورية و رئيس الاتحاد الدولي لكرة القدم",
"من فضلك أرسل هذا البريد الى صديقي جلال الدين في تمام الساعة الخامسة صباحا في يوم الثلاثاء القادم",
"امبارح اتفرجت على مباراة مانشستر يونايتد مع ريال مدريد في غياب الدون كرستيانو رونالدو",
"لا تنسى تصحيني الساعة سبعة, و ضيف في الجدول اني احضر مباراة نادي النصر غدا",
]
# [optional]
samples = [ " ".join(word_tokenize(sample.strip())) for sample in samples if sample.strip() != "" ]
for sample in samples:
ents = _extract_ner(text=sample, model=model, tokenizer=tokenizer, start_token="▁")
print(sample)
for ent in ents:
print("\t",ent["token"],"==>",ent["label"])
print("========\n")
出力例
تلقى تعليمه في الكتاب ثم انضم الى الأزهر عام 1873م . تعلم على يد السيد جمال الدين الأفغاني والشيخ محمد عبده
الأزهر ==> organization
عام 1873م ==> time
السيد جمال الدين الأفغاني ==> person
محمد عبده ==> person
========
بعد عودته إلى القاهرة، التحق نجيب الريحاني فرقة جورج أبيض، الذي كان قد ضمَّ - قُبيل ذلك - فرقته إلى فرقة سلامة حجازي . و منها ذاع صيته
القاهرة، ==> location
نجيب الريحاني ==> person
فرقة جورج أبيض، ==> organization
فرقة سلامة حجازي ==> organization
========
في استاد القاهرة، قام حفل افتتاح بطولة كأس الأمم الأفريقية بحضور رئيس الجمهورية و رئيس الاتحاد الدولي لكرة القدم
استاد القاهرة، ==> location
بطولة كأس الأمم الأفريقية ==> event
رئيس الجمهورية ==> job
رئيس ==> job
الاتحاد الدولي لكرة القدم ==> organization
========
من فضلك أرسل هذا البريد الى صديقي جلال الدين في تمام الساعة الخامسة صباحا في يوم الثلاثاء القادم
جلال الدين ==> person
الساعة الخامسة صباحا ==> time
يوم الثلاثاء القادم ==> time
========
امبارح اتفرجت على مباراة مانشستر يونايتد مع ريال مدريد في غياب الدون كرستيانو رونالدو
مانشستر يونايتد ==> organization
ريال مدريد ==> organization
كرستيانو رونالدو ==> person
========
لا تنسى تصحيني الساعة سبعة , و ضيف في الجدول اني احضر مباراة نادي النصر غدا
الساعة سبعة ==> time
نادي النصر ==> organization
غدا ==> time
========
✨ 主な機能
- 多様なエンティティ抽出:最大9種類の異なるタイプのエンティティ(人物、場所、組織、国籍、職業、製品、イベント、時間、芸術作品)を抽出できます。
- 新規データセット:完全に新しいデータセットを用いて構築されています。
📦 インストール
$ pip3 install transformers==4.8.0 nltk==3.5 protobuf==3.15.3 torch==1.9.0
📚 ドキュメント
モデルの微調整
NERモデルを微調整するには、このノートブックをチェックしてください。
評価
モデルは1959文のテストセットでテストされました。結果は次の表の通りです。
タイプ | F1スコア | 適合率 | 再現率 | サポート |
---|---|---|---|---|
人物 | 0.93298 | 0.931479 | 0.934487 | 4335 |
場所 | 0.891537 | 0.896926 | 0.886212 | 4939 |
時間 | 0.873003 | 0.876087 | 0.869941 | 1853 |
国籍 | 0.871246 | 0.843153 | 0.901277 | 2350 |
職業 | 0.837656 | 0.79912 | 0.880097 | 2477 |
組織 | 0.781317 | 0.773328 | 0.789474 | 2299 |
イベント | 0.686695 | 0.733945 | 0.645161 | 744 |
芸術作品 | 0.653552 | 0.678005 | 0.630802 | 474 |
製品 | 0.625483 | 0.553531 | 0.718935 | 338 |
加重平均 | 0.859008 | 0.852365 | 0.86703 | 19809 |
マイクロ平均 | 0.858771 | 0.850669 | 0.86703 | 19809 |
マクロ平均 | 0.79483 | 0.787286 | 0.806265 | 19809 |
🔧 技術詳細
Marefa-NERは、新しいデータセットを用いて構築された大規模なアラビア語固有表現認識(NER)モデルです。このモデルは、最大9種類の異なるタイプのエンティティを抽出することを目的としています。
📄 謝辞
このモデルの訓練に使用されるデータは、多くのボランティアによって収集され、精査されました。彼らの貢献に感謝します。
- オン・シード・アブド・アルハフィーズ - 監督
- ノルミン・ムハンマド・アティエ
- サラー・キラーラ
- アフメド・アリ・アブド・ラブ
- ウマール・ビン・アブド・アルアジーズ・スリーマン
- ムハンマド・イブラヒーム・アルジャマール
- アブド・アルラハーマン・サラマ・クハルフ
- イブラヒーム・カマール・ムハンマド・スリーマン
- ハッサン・ムスタファ・ハッサン
- アフメド・フティー・シード
- ウスマーン・マンドゥ
- アールフ・アシャリーフ
- アミーラ・ムハンマド・ムハンマド
- ハッサン・サイード・ハッサン
- アブド・アルアジーズ・アリ・アルバグダーディ
- ワシーク・アブド・アルマリク・アルシュウェイター
- アムル・ラムザーン・アクル・アルハフナウィ
- ハサーム・ディーン・アフメド・オン
- アサーム・アフメド・ムハンマド・ムハンマド
- ハーティム・ムハンマド・アルムフティ
- アブド・アラーハーマン・ドルディール
- アデム・アルバグダーディ
- アフメド・サブリー
- アブド・アルワハーブ・ムハンマド・ムハンマド
- アフメド・ムハンマド・アウズ
Indonesian Roberta Base Posp Tagger
MIT
これはインドネシア語RoBERTaモデルをファインチューニングした品詞タグ付けモデルで、indonluデータセットで訓練され、インドネシア語テキストの品詞タグ付けタスクに使用されます。
シーケンスラベリング
Transformers その他

I
w11wo
2.2M
7
Bert Base NER
MIT
BERTを微調整した命名エンティティ識別モデルで、4種類のエンティティ(場所(LOC)、組織(ORG)、人名(PER)、その他(MISC))を識別できます。
シーケンスラベリング 英語
B
dslim
1.8M
592
Deid Roberta I2b2
MIT
このモデルはRoBERTaをファインチューニングしたシーケンスラベリングモデルで、医療記録内の保護対象健康情報(PHI/PII)を識別・除去します。
シーケンスラベリング
Transformers 複数言語対応

D
obi
1.1M
33
Ner English Fast
Flairに組み込まれた英語の高速4クラス固有表現認識モデルで、Flair埋め込みとLSTM-CRFアーキテクチャを使用し、CoNLL-03データセットで92.92のF1スコアを達成しています。
シーケンスラベリング
PyTorch 英語
N
flair
978.01k
24
French Camembert Postag Model
Camembert-baseをベースとしたフランス語の品詞タグ付けモデルで、free-french-treebankデータセットを使用して学習されました。
シーケンスラベリング
Transformers フランス語

F
gilf
950.03k
9
Xlm Roberta Large Ner Spanish
XLM - Roberta - largeアーキテクチャに基づいて微調整されたスペイン語の命名エンティティ認識モデルで、CoNLL - 2002データセットで優れた性能を発揮します。
シーケンスラベリング
Transformers スペイン語

X
MMG
767.35k
29
Nusabert Ner V1.3
MIT
NusaBert-v1.3を基にインドネシア語NERタスクでファインチューニングした固有表現認識モデル
シーケンスラベリング
Transformers その他

N
cahya
759.09k
3
Ner English Large
Flairフレームワークに組み込まれた英語の4種類の大型NERモデルで、文書レベルのXLM - R埋め込みとFLERT技術に基づいており、CoNLL - 03データセットでF1スコアが94.36に達します。
シーケンスラベリング
PyTorch 英語
N
flair
749.04k
44
Punctuate All
MIT
xlm - roberta - baseを微調整した多言語句読点予測モデルで、12種類の欧州言語の句読点自動補完に対応しています。
シーケンスラベリング
Transformers

P
kredor
728.70k
20
Xlm Roberta Ner Japanese
MIT
xlm-roberta-baseをファインチューニングした日本語固有表現認識モデル
シーケンスラベリング
Transformers 複数言語対応

X
tsmatz
630.71k
25
おすすめAIモデル
Llama 3 Typhoon V1.5x 8b Instruct
タイ語専用に設計された80億パラメータの命令モデルで、GPT-3.5-turboに匹敵する性能を持ち、アプリケーションシナリオ、検索拡張生成、制限付き生成、推論タスクを最適化
大規模言語モデル
Transformers 複数言語対応

L
scb10x
3,269
16
Cadet Tiny
Openrail
Cadet-TinyはSODAデータセットでトレーニングされた超小型対話モデルで、エッジデバイス推論向けに設計されており、体積はCosmo-3Bモデルの約2%です。
対話システム
Transformers 英語

C
ToddGoldfarb
2,691
6
Roberta Base Chinese Extractive Qa
RoBERTaアーキテクチャに基づく中国語抽出型QAモデルで、与えられたテキストから回答を抽出するタスクに適しています。
質問応答システム 中国語
R
uer
2,694
98