🚀 tner/roberta-base-tweetner7-all
このモデルは、roberta-base を tner/tweetner7 データセットの train_all
スプリットでファインチューニングしたバージョンです。モデルのファインチューニングは、T-NER のハイパーパラメータサーチを通じて行われています(詳細はリポジトリを参照)。2021年のテストセットでは、以下の結果を達成しています。
- F1 (マイクロ): 0.6515831894070236
- 精度 (マイクロ): 0.6488190781930749
- 再現率 (マイクロ): 0.6543709528214616
- F1 (マクロ): 0.6081318073591985
- 精度 (マクロ): 0.6024892144112918
- 再現率 (マクロ): 0.6155807376978756
テストセットにおけるF1スコアのエンティティ別の内訳は以下の通りです。
- 企業: 0.5174234424498415
- 創作物: 0.466403162055336
- イベント: 0.46727272727272723
- グループ: 0.6071197411003236
- 場所: 0.6832786885245901
- 人物: 0.8377301195672804
- 製品: 0.6776947705442904
F1スコアについて、ブートストラップ法により以下の信頼区間が得られます。
- F1 (マイクロ):
- 90%: [0.6426248846161623, 0.6611146727643068]
- 95%: [0.6408583849998567, 0.6629609445072536]
- F1 (マクロ):
- 90%: [0.6426248846161623, 0.6611146727643068]
- 95%: [0.6408583849998567, 0.6629609445072536]
完全な評価結果は、NERのメトリックファイル と エンティティスパンのメトリックファイル で確認できます。
📦 インストール
このモデルは tnerライブラリ を通じて使用できます。ライブラリはpipを使ってインストールします。
pip install tner
💻 使用例
基本的な使用法
TweetNER7 は、アカウント名とURLが特殊な形式に変換された事前処理済みのツイートを使用しています(詳細はデータセットのページを参照)。そのため、ツイートを適切に処理してからモデルの予測を実行します。
import re
from urlextract import URLExtract
from tner import TransformersNER
extractor = URLExtract()
def format_tweet(tweet):
urls = extractor.find_urls(tweet)
for url in urls:
tweet = tweet.replace(url, "{{URL}}")
tweet = re.sub(r"\b(\s*)(@[\S]+)\b", r'\1{\2@}', tweet)
return tweet
text = "Get the all-analog Classic Vinyl Edition of `Takin' Off` Album from @herbiehancock via @bluenoterecords link below: http://bluenote.lnk.to/AlbumOfTheWeek"
text_format = format_tweet(text)
model = TransformersNER("tner/roberta-base-tweetner7-all")
model.predict([text_format])
このモデルは transformers ライブラリを通じても使用できますが、現時点ではCRFレイヤーがサポートされていないため、推奨されません。
🔧 技術詳細
学習時のハイパーパラメータ
学習時には以下のハイパーパラメータが使用されました。
- データセット: ['tner/tweetner7']
- データセットの分割: train_all
- データセット名: None
- ローカルデータセット: None
- モデル: roberta-base
- CRF: True
- 最大長: 128
- エポック数: 30
- バッチサイズ: 32
- 学習率: 1e-05
- 乱数シード: 0
- 勾配累積ステップ数: 1
- 重み減衰: 1e-07
- 学習率のウォームアップステップ比率: 0.3
- 最大勾配ノルム: 1
完全な設定は、ファインチューニングパラメータファイル で確認できます。
📄 参考文献
このモデルを使用する場合は、T-NER論文とTweetNER7論文を引用してください。
@inproceedings{ushio-camacho-collados-2021-ner,
title = "{T}-{NER}: An All-Round Python Library for Transformer-based Named Entity Recognition",
author = "Ushio, Asahi and
Camacho-Collados, Jose",
booktitle = "Proceedings of the 16th Conference of the European Chapter of the Association for Computational Linguistics: System Demonstrations",
month = apr,
year = "2021",
address = "Online",
publisher = "Association for Computational Linguistics",
url = "https://aclanthology.org/2021.eacl-demos.7",
doi = "10.18653/v1/2021.eacl-demos.7",
pages = "53--62",
abstract = "Language model (LM) pretraining has led to consistent improvements in many NLP downstream tasks, including named entity recognition (NER). In this paper, we present T-NER (Transformer-based Named Entity Recognition), a Python library for NER LM finetuning. In addition to its practical utility, T-NER facilitates the study and investigation of the cross-domain and cross-lingual generalization ability of LMs finetuned on NER. Our library also provides a web app where users can get model predictions interactively for arbitrary text, which facilitates qualitative model evaluation for non-expert programmers. We show the potential of the library by compiling nine public NER datasets into a unified format and evaluating the cross-domain and cross- lingual performance across the datasets. The results from our initial experiments show that in-domain performance is generally competitive across datasets. However, cross-domain generalization is challenging even with a large pretrained LM, which has nevertheless capacity to learn domain-specific features if fine- tuned on a combined dataset. To facilitate future research, we also release all our LM checkpoints via the Hugging Face model hub.",
}
@inproceedings{ushio-etal-2022-tweet,
title = "{N}amed {E}ntity {R}ecognition in {T}witter: {A} {D}ataset and {A}nalysis on {S}hort-{T}erm {T}emporal {S}hifts",
author = "Ushio, Asahi and
Neves, Leonardo and
Silva, Vitor and
Barbieri, Francesco. and
Camacho-Collados, Jose",
booktitle = "The 2nd Conference of the Asia-Pacific Chapter of the Association for Computational Linguistics and the 12th International Joint Conference on Natural Language Processing",
month = nov,
year = "2022",
address = "Online",
publisher = "Association for Computational Linguistics",
}