模型:

tner/twitter-roberta-base-dec2021-tweetner7-random

英文

tner/twitter-roberta-base-dec2021-tweetner7-random

此模型是在 tner/tweetner7 数据集(train_random分割)上对 cardiffnlp/twitter-roberta-base-dec2021 进行微调的版本。模型微调是通过 T-NER 的超参数搜索完成的(有关详细信息,请参见存储库)。它在2021年的测试集上取得以下结果:

  • F1(微平均):0.6321284238886395
  • 精确度(微平均):0.6142015706806283
  • 召回率(微平均):0.6511332099907493
  • F1(宏平均):0.583682304736069
  • 精确度(宏平均):0.5654677691354458
  • 召回率(宏平均):0.6047150410746663

测试集上的F1分数的实体细分如下:

  • 公司:0.5019685039370079
  • 创作作品:0.41401273885350315
  • 事件:0.4564727108705458
  • 团体:0.5892444737710327
  • 地点:0.6486486486486486
  • 人物:0.8268075031870332
  • 产品:0.6486215538847118

对于F1分数,通过以下Bootstrap方法获得置信区间:

  • F1(微平均):
    • 90%:[0.6245116881258609,0.6411928894306437]
    • 95%:[0.6221686986039963,0.642603475030015]
  • F1(宏平均):
    • 90%:[0.6245116881258609,0.6411928894306437]
    • 95%:[0.6221686986039963,0.642603475030015]

完整的评估结果可以在 metric file of NER metric file of entity span 中找到。

用法

可以通过 tner library 使用此模型。通过pip安装该库。

pip install tner

TweetNER7 预处理了推文,其中账户名称和URL被转换为特殊格式(有关详细信息,请参见数据集页面),因此我们根据此格式处理推文,然后按以下方式运行模型预测。

import re
from urlextract import URLExtract
from tner import TransformersNER

extractor = URLExtract()

def format_tweet(tweet):
    # mask web urls
    urls = extractor.find_urls(tweet)
    for url in urls:
        tweet = tweet.replace(url, "{{URL}}")
    # format twitter account
    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/twitter-roberta-base-dec2021-tweetner7-random")
model.predict([text_format])

可以通过transformers库使用它,但是目前不建议使用,因为不支持CRF层。

训练超参数

训练期间使用了以下超参数:

  • 数据集:['tner/tweetner7']
  • 数据集分割:train_random
  • 数据集名称:None
  • 本地数据集:None
  • 模型:cardiffnlp/twitter-roberta-base-dec2021
  • CRF:True
  • max_length:128
  • epoch:30
  • batch_size:32
  • lr:0.0001
  • 随机种子:0
  • 梯度累积步数:1
  • 权重衰减:1e-07
  • lr_warmup_step_ratio:0.15
  • max_grad_norm:1

完整的配置可以在 fine-tuning parameter file 中找到。

参考

如果您使用了这个模型,请引用T-NER论文和TweetNER7论文。

  • T-NER
@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.",
}
  • TweetNER7
@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",
}