🚀 SEC-BERT
SEC-BERTは金融ドメイン向けのBERTモデルファミリーで、金融NLP研究やFinTechアプリケーションを支援することを目的としています。金融文書に特化したこのモデル群は、金融分野の自然言語処理タスクにおいて高い性能を発揮します。
🚀 クイックスタート
SEC-BERTは金融ドメイン向けのBERTモデルファミリーで、金融NLP研究やFinTechアプリケーションを支援することを目的としています。SEC-BERTには以下のモデルが含まれます:
- SEC-BERT-BASE:BERT-BASEと同じアーキテクチャで、金融文書で学習されたモデルです。
- SEC-BERT-NUM:SEC-BERT-BASEと同じですが、すべての数値トークンを[NUM]疑似トークンに置き換えることで、すべての数値表現を統一的に扱い、断片化を防ぎます。
- SEC-BERT-SHAPE (このモデル):SEC-BERT-BASEと同じですが、数値をその形状を表す疑似トークンに置き換えることで、数値表現(既知の形状のもの)が断片化されないようにします。例えば、'53.2' は '[XX.X]' に、'40,200.5' は '[XX,XXX.X]' になります。
✨ 主な機能
SEC-BERTは金融ドメイン向けに特化したBERTモデルで、金融文書の理解や分析に役立ちます。具体的には、以下のような機能があります:
- 金融文書の前処理に最適化されたモデルで、数値表現の扱いが強化されています。
- 金融分野の自然言語処理タスクにおいて、高い性能を発揮します。
📦 インストール
事前学習済みモデルの読み込み
from transformers import AutoTokenizer, AutoModel
tokenizer = AutoTokenizer.from_pretrained("nlpaueb/sec-bert-shape")
model = AutoModel.from_pretrained("nlpaueb/sec-bert-shape")
💻 使用例
基本的な使用法
import re
import spacy
from transformers import AutoTokenizer
tokenizer = AutoTokenizer.from_pretrained("nlpaueb/sec-bert-shape")
spacy_tokenizer = spacy.load("en_core_web_sm")
sentence = "Total net sales decreased 2% or $5.4 billion during 2019 compared to 2018."
def sec_bert_shape_preprocess(text):
tokens = [t.text for t in spacy_tokenizer(sentence)]
processed_text = []
for token in tokens:
if re.fullmatch(r"(\d+[\d,.]*)|([,.]\d+)", token):
shape = '[' + re.sub(r'\d', 'X', token) + ']'
if shape in tokenizer.additional_special_tokens:
processed_text.append(shape)
else:
processed_text.append('[NUM]')
else:
processed_text.append(token)
return ' '.join(processed_text)
tokenized_sentence = tokenizer.tokenize(sec_bert_shape_preprocess(sentence))
print(tokenized_sentence)
"""
['total', 'net', 'sales', 'decreased', '[X]', '%', 'or', '$', '[X.X]', 'billion', 'during', '[XXXX]', 'compared', 'to', '[XXXX]', '.']
"""
SEC-BERTバリアントを言語モデルとして使用する
サンプル |
マスクされたトークン |
Total net sales [MASK] 2% or $5.4 billion during 2019 compared to 2018. |
decreased |
モデル |
予測結果 (確率) |
BERT-BASE-UNCASED |
increased (0.221), were (0.131), are (0.103), rose (0.075), of (0.058) |
SEC-BERT-BASE |
increased (0.678), decreased (0.282), declined (0.017), grew (0.016), rose (0.004) |
SEC-BERT-NUM |
increased (0.753), decreased (0.211), grew (0.019), declined (0.010), rose (0.006) |
SEC-BERT-SHAPE |
increased (0.747), decreased (0.214), grew (0.021), declined (0.013), rose (0.002) |
(他の表も同様に記載)
📚 ドキュメント
事前学習コーパス
このモデルは、1993年から2019年までの260,773件の10-Kファイリングで事前学習されています。これらのファイリングは、米国証券取引委員会 (SEC) から公開されています。
事前学習の詳細
テキストの前処理
SEC-BERT-SHAPEを使用するには、テキストを前処理して、すべての数値トークンを214個の事前定義された形状疑似トークンのリストから対応する形状疑似トークンに置き換える必要があります。数値トークンがどの形状疑似トークンにも対応しない場合は、[NUM]疑似トークンに置き換えます。以下に、簡単な文を前処理する方法の例を示します。このアプローチは非常にシンプルですので、必要に応じて変更してください。
出版物
このモデルを使用する場合は、以下の論文を引用してください:
FiNER: Financial Numeric Entity Recognition for XBRL Tagging
Lefteris Loukas, Manos Fergadiotis, Ilias Chalkidis, Eirini Spyropoulou, Prodromos Malakasiotis, Ion Androutsopoulos and George Paliouras
In the Proceedings of the 60th Annual Meeting of the Association for Computational Linguistics (ACL 2022) (Long Papers), Dublin, Republic of Ireland, May 22 - 27, 2022
@inproceedings{loukas-etal-2022-finer,
title = {FiNER: Financial Numeric Entity Recognition for XBRL Tagging},
author = {Loukas, Lefteris and
Fergadiotis, Manos and
Chalkidis, Ilias and
Spyropoulou, Eirini and
Malakasiotis, Prodromos and
Androutsopoulos, Ion and
Paliouras George},
booktitle = {Proceedings of the 60th Annual Meeting of the Association for Computational Linguistics (ACL 2022)},
publisher = {Association for Computational Linguistics},
location = {Dublin, Republic of Ireland},
year = {2022},
url = {https://arxiv.org/abs/2203.06482}
}
私たちについて
AUEBの自然言語処理グループ は、コンピュータが自然言語テキストを処理および生成できるようにするアルゴリズム、モデル、およびシステムを開発しています。
このグループの現在の研究興味は以下の通りです:
- データベース、オントロジー、文書コレクション、およびWebの質問応答システム、特にバイオメディカル質問応答
- データベースおよびオントロジーからの自然言語生成、特にセマンティックWebオントロジー
- テキスト分類、スパムや虐待的なコンテンツのフィルタリングを含む
- 情報抽出および意見マイニング、法的テキスト分析やセンチメント分析を含む
- ギリシャ語の自然言語処理ツール、例えばパーサーや固有表現認識器
- 自然言語処理における機械学習、特にディープラーニング
このグループは、アテネ経済大学の情報学部の情報処理研究所の一部です。
Manos Fergadiotis 代表 AUEBの自然言語処理グループ
📄 ライセンス
このモデルは、CC BY-SA 4.0ライセンスの下で提供されています。