# 金融文書を用いた追加事前学習言語モデルの構築と検証

鈴木雅弘 ${ }^{1}$ 坂地泰紀 ${ }^{1}$ 和泉潔 ${ }^{1}$ 石川康 ${ }^{2}$
1 東京大学大学院 工学系研究科 2 日興アセットマネジメント株式会社
b2019msuzuki@socsim.org
\{sakaji,izumi\}@sys.t.u-tokyo.ac.jp yasushi.ishikawa@nikkoam.com

## 概要

本研究では，汎用言語コーパスを用いて事前学習 を行った BERT モデルに対し，金融コーパスを用い て追加で事前学習 (追加事前学習)を行う方が有用 であるか検証を行う．追加事前学習を行ったモデル を2つの金融テキストを用いたタスクに適用し，追加事前学習を行うことで，汎用言語コーパスによる 事前学習モデルを上回る性能を持つことを示す。ま た，Tokenizer を構築する際のコーパスの比較を行っ た. 追加事前学習モデルの Tokenizer に用いるコー パスにおいて，汎用言語コーパスのみによるモデル と金融コーパスを用いたモデルの間に性能差は見ら れなかった。

## 1 はじめに

近年，決算短信や有価証券報告書，ニュース記事 や証券レポートなど，インターネットで閲覧可能な 金融文書が豊富に存在する．金融関連のテキストの 分析は投資やマーケット分析に役立つ一方で，毎日大量に作成されるテキストを人手によって全て分析することは難しい，そのため，近年盛んにおこな われているのが，金融文書に自然言語処理 (NLP) を 適用する金融テキストマイニングである．機械学習 を用いた金融関連のツイートのセンチメント分析 $[1,2]$ をはじめとして，金融分野における自然言語処理に，機械学習を適用する研究が多く存在する $[3,4]$.

本研究では，日本語金融コーパスによって追加事前学習を行った BERT モデルについて, 汎用言語 コーパスから事前学習を行ったモデルと比較を行 う. BERT[5] は事前学習によって各言語タスクの精度を大幅に改善したモデルである．BERTでは，ま ず大規模言語コーパスから事前学習し, その後出力 に近いレイヤーのみを学習させるファインチューニ ングを組み合わせる．日本語においてもWikipedia
の記事から事前学習された BERT モデルが提案され ている [6] ${ }^{1)}$. しかし金融コーパスと一般的なコーパ スとの間で語彙や表現の違いが大きいため，一般的 なコーパスのみで学習したモデルは金融テキストマ イニングのタスクに最適とは言えない。金融ドメイ ンに適合させたモデルとして, Zuang ら [7] や鈴木 ら [8] によって，金融コーパスを用いて事前学習を 行ったモデルが提案されている. しかしこれらは，事前学習に適用できるコーパスが十分に大きい場合 にのみ適用できる．事前学習に用いるコーパスが小 さい場合にゼロから事前学習を行うと, 言語モデル として性能が低くなる可能性がある。その場合，金融ドメインのテキストデータを用いてゼロから事前学習を行うよりも，一度 Wikipedia などの汎用的な 大規模コーパスを用いて事前学習を行ったモデルに 対し, 追加で事前学習をファインチューニングのよ うに行う方が精度が高くなる可能性がある．そのた め, 本研究では Wikipedia を用いて構築された事前学習モデルに対し, 金融コーパスを用いて追加で事前学習 (追加事前学習) を行う. 構築したモデルと， Wikipedia のみによる事前学習モデルと比較し, 追加事前学習を行うことの効果を示す. そのためにこ れらのモデルに対して金融ドメインのテキストを対象とした 2 つの評価実験を行う．その際，Wikipedia から構築された Tokenizer と, Wikipedia・金融コー パスから構築された Tokenizer を用いた 2 つの追加事前学習モデルを構築し, Tokenizerを構築する際 のコーパスによる性能の差の検証を行う。また金融 コーパスを用いてゼロから事前学習を行ったモデル などとも比較を行う.

本研究の貢献は以下の通りである.

-日本語の金融コーパスで行う BERT の追加事前学習を提案する。

・構築した追加事前学習モデルとベースラインで

1) https://github.com/cl-tohoku/bert-japanese
表 1 各コーパスによって構築された語彙から，「デリバ ティブ取引には，先物取引やスワップ取引がある」とい う文をトークン分割する例。"\#"はサブワードに分割さ れた語のうち，先頭でないものに付与される。

 &  \\

ある Wikipedia による事前学習モデルの，金融 テキストを用いたタスクにおける性能を比較 する。

・追加事前学習モデルにおいて，Tokenizer を構築 するためのコーパスの違いがモデルの性能に与 える影響を検証する。

## 2 モデルの構築

本研究では，一度 Wikipedia 9 日本語記事を用い て事前学習を行ったモデルに対し，金融コーパス を用いて追加事前学習を行う. BERT の事前学習 は, 単語の穴埋め (Masked LM) と 2 文の接続性の判定 (Next sentence prediction) の 2 つのタスクの学習に よって行われる。追加事前学習でも，BERT の事前学習と同じタスクを行う.

本研究では，2 つの BERT-small モデルを構築す る. 1 つ目は, Wikipediaを用いて Tokenizerの構築 と事前学習を行ったモデル2)に対し，金融コーパス を用いて追加事前学習を行うモデルである.これ は，汎用的な言語コーパスを用いて事前学習を行っ たモデルに対し, 金融ドメインを用いて追加で事前学習を行う際の標準的な学習構成と言える. 2 つ目 は，Wikipediaと金融コーパスを用いて Tokenizer の 構築を行い，Wikipedia コーパスを用いて事前学習 を行い，金融コーパスを用いて追加事前学習を行 うものである. 追加事前学習では，入力文をトー クン列に分割する Tokenizer は事前学習と同じもの を用いる必要がある. そのため 1 つ目のモデルで は Wikipedia 由来のコーパスを用いることになるが， ドメインに特化したモデルではそのドメインに適 した Tokenizer を用いる方がより高い精度が得られ る可能性がある．実際に構築した Tokenizerによる，金融テキストのトークン分割の例を表 1 に示す. 金融ドメイン特有の語である「デリバティブ」や「ス


ワップ」について，Wikipedia・金融コーパスを用 いて構築した Tokenizer では 1 トークンとして認識 する。一方 Wikipediaを用いて構築した Tokenizer で は，「デリ/バ/ティブ」や「スワハップ」のように複数 トークンに分割されてしまう. 1 つ目と 2 つ目のモ デルの比較により，Tokenizer を構築する際に用いる コーパスによるモデルの性能を比較する.

2 つ目のモデルの構築にあたり, Wikipedia・金融 コーパスを用いて構築した Tokenizer を利用して， Wikipediaを用いて事前学習を行ったモデルは公開 されていない. そのため, 本研究では前述の事前学習モデルの構築も行う. 構築のためのパラメータに は，文献 [9] で述べられている BERT-small の設定を 用いる。学習率は, 追加事前学習では 1e-4(土台とな る BERT-small モデルの事前学習では 5e-4) とする. これは，BERT の公式リポジトリ3)にて，追加事前学習時には事前学習より小さい学習率を用いること が推奨されているためである.

## 3 使用データ

追加事前学習に用いる金融コーパスのテキスト データとして，2 種類のデータを用いる．1つ目は 2012 年 10 月 9 日から 2020 年 12 月 31 日にかけて 開示された決算短信等のデータである. 2 つ目は $\mathrm{EDINET}^{4}$ にて，2018 年 2 月 8 日から 2020 年 12 月 31 日にかけて開示された有価証券報告書等の 2 種類 データを用いる。これらのデータセットから，金融 コーパス (約 2,700万文) を作成した.

また, Wikipedia の日本語記事として，2021 年 6 月 1 日時点で作成されたダンプファイルから約 2000 万文のコーパスを作成する。

## 4 評価実験

事前学習や追加事前学習によって構築したモデ ルに対し，ファインチューニングによる評価実験を 行い性能を評価する。本研究では 2 つの評価実験を 行う.

1 つ目として，金融テキストの1つであるアナリ ストレポートを用いた実験を行う，アナリストレ ポートの発行日と，発行日から 12 週間後の TOPIX に対する銘柄の超過リターンの正負についての 2 值分類を行う，アナリストレポートを用いた超過リ ターン予測については，鈴木ら [10] が取り組んでお


図 1 chABSA-dataset を用いた Aspect-Based Sentiment Analysis に関する実験の概要図. 入力として，「ライフサ イエンス事業は増収となった」という文とセンチメント の Target「ライフサイエンス事業」が与えられる. 入力文 は「ライフ/サイエンス/事業/は/増収/とななっ/た」とトー クン分割され, BERT に入力される. BERT の最終層の隠 れ層の出力のうち，[CLS] トークンと，Target である「ラ イフ」「サイエンス」「事業」の各トークンの出力が合計さ れる. MLP と Softmax によって処理され Target のポジ ティブ/ネガティブの予測を行う.

り，彼らはLSTMを用いて純利益予測を行った。国内の大手証券会社が 2016 年 1 月から 2020 年 9 月に かけて発行した 78,656 本のアナリストレポートに 含まれる本文を用いる，入力するアナリストレポー トの本文のトークンインデックス列 $w$ を BERTに入力する. 入力トークン列 $\boldsymbol{w}$ から得られる BERT の最終層の隠れ層の出力を $\operatorname{BERT}(\boldsymbol{w}) \in \mathbb{R}^{n \times d}$ と表す.こ こで $d=256$ は BERT の隠れ層の次元数である. ま た BERT の出力の $i$ 番目の成分を $\operatorname{BERT}(w)_{i} \in \mathbb{R}^{d}$ と 表す. BERT の出力のうち文頭 (インデックスが 0 ) の [CLS] トークンについての出力 $h_{\text {analyst }} \in \mathbb{R}^{d}$ を式 (1)より得る.

$
h_{\text {analyst }}=\operatorname{BERT}(\boldsymbol{w})_{0}
$

2 値分類の出力 $y \in \mathbb{R}^{2}$ は式 (2)(3) によって得られる.

$
\begin{aligned}
& s_{\text {analyst }}=\operatorname{Dropout}\left(\tanh \left(h_{\text {analyst }} W_{1}+b_{1}\right)\right) \\
& y_{\text {analyst }}=\operatorname{softmax}\left(s_{\text {analyst }} W_{2}+b_{2}\right)
\end{aligned}
$

ここで Dropout($\cdot$) は Srivastava ら [11] が提案した Dropout を適用することを示し， $W_{1} \in \mathbb{R}^{d \times d}, W_{2} \in$ $\mathbb{R}^{2 \times d}, b_{1} \in \mathbb{R}^{d}, b_{2} \in \mathbb{R}^{2}$ は学習可能なパラメータで ある。
2 つ目として，TIS 株式会社が公開している chABSA-dataset ${ }^{5}$ を用いて, Aspect-Based Sentiment Analysis に関する実験を行う．この実験では，図 1 のように入力に文と Target 表現を入力し，その表現に関する文内でのセンチメントを出力するとい う問題設定にする. chABSA-dataset には，Positive, Negative, Neutralのタグが付与されていたが, Neutral が他のタグに対して大幅に少なかったことから， Neutralを除外して実験を行う．入力文をトークナイ ズして得られるトークン列を $\boldsymbol{w}=\left[w_{0}, w_{1}, \cdots, w_{n-1}\right]$ とする。BERTでは， $w_{0}$ は文頭に挿入される [CLS] トークンとなる。 センチメント予測の Target トーク ン列のインデックス番号の集合を $S \subset\{1, \cdots, n-1\}$ とする. [CLS] トークンと Target のトークン列を，式(4)のように足し合わせ， $h_{\mathrm{chABSA}} \in \mathbb{R}^{d}$ を得る.

$
h_{\mathrm{chABSA}}=\sum_{i \in(\{0\} \cup S)} \operatorname{BERT}(\boldsymbol{w})_{i}
$

3 層の MLPによって式 (5)(6) のように Positive/Negative の確率 $y_{\text {chABSA }} \in \mathbb{R}^{2}$ を出力として 得る.

$
\begin{aligned}
s_{\mathrm{chABSA}} & =\tanh \left(h_{\mathrm{chABSA}} W_{3}+b_{3}\right. \\
y_{\mathrm{chABSA}} & \left.=\operatorname{softmax}\left(s_{\mathrm{chABSA}}\right) W_{4}+b_{4}\right)
\end{aligned}
$

ここで, $W_{3} \in \mathbb{R}^{d \times d}, W_{4} \in \mathbb{R}^{d \times 2}, b_{3} \in \mathbb{R}^{d}, b_{4} \in \mathbb{R}^{2}$ は学習可能なパラメータである. 7,165 件のデータのう ち，64\%を学習データに，16\%を検証データに， $20 \%$ をテストデータに割り当てる。

比較として，鈴木ら [8] が構築した Wikipedia に よって事前学習を行った BERT-small モデル6)と Wikipedia・金融コーパスを用いて事前学習を行った BERT-small モデル7)についても評価実験を行う.

## 5 結果と考察

実験結果を表 2 に示す. 純利益予測では, Wikipedia と金融コーパスを組み合わせて Tokenizer を作成し, 金融コーパスで追加事前学習を行った モデルの精度が最も高かった. chABSAを用いた実験では，Wikipediaと金融コーパスを組み合わせて Tokenizer の作成と事前学習を行ったモデルが最も精度が高かった. 両実験では, Wikipedia のみで事前学習を行ったモデルよりも，金融コーパスを用いた 他の学習方法を採用したモデルの方が精度が高かっ

表 2 実験結果. F1 はマクロ平均である．学習コーパスの「Wikipedia $\rightarrow$ 金融」は，Wikipediaコーパスを用いて事前学習を行い，そこから金融コーパスを用いて追加事前学習を行うことを示す.

た.これらより，金融コーパスを用いた追加事前学習の効果があったといえる.

追加事前学習モデルを行ったモデルを比較する と, 純利益予測の実験では Tokenizer が Wikipedia・金融コーパスのモデルの方が精度が高かったのに 対し，chABSA の実験では Tokenizer が Wikipedia の モデルの方が精度が高かった. これは，アナリス トレポートを用いた純利益予測の実験では単語 の認識が予測に有効だったと考えられる一方で， chABSA を用いた実験では，Target となるトークン 列の範囲が入力で与えられるため, 金融ドメインに 特化した Tokenizer よりも，幅広い文章に対応でき る Wikipedia による Tokenizer の方が精度が高くなっ た可能性がある. 本実験においては Tokenizer の違 いによる精度の差は明確ではなかった。

追加事前学習を行ったモデルと, Wikipedia・金融 コーパスを用いて事前学習を行ったモデルを比較す ると，純利益予測では追加事前学習を行ったモデル の方が精度が高かったのに対し, chABSA を用いた タスクでは事前学習を行ったモデルの方が精度が高 かった。純利益予測ではアナリストレポートを用い ているため，決算短信と有価証券報告書による金融 コーパスとは文章の構成が異なっている. そのため Wikipediaを用いて一般的な日本語について事前学習を行い，その後金融コーパスにチューニングする 順番によって追加事前学習モデルの精度の方が高く なった可能性がある. 一方で chABSA は有価証券報告書のデータを用いているため, ゼロから有価証券報告書を含む金融コーパスで事前学習を行った方が 効率よく学習できたために, 事前学習モデルの精度 の方が高くなったと考えられる。

アナリストレポートを用いた純利益予測ではモ デル間に chABSAを用いた実験ほど差が現れなかっ た. これはアナリストレポートが純粋な金融テキス トを対象としたタスクとしては不十分だった可能性がある，アナリストレポートを用いた純利益予測 は，マーケットや情勢の急激な変化が起こった場合
テキストのみから全てを正しく予測することは困難 である. またアナリストによって能力の差があるた め，必ずしも正しい予測ができるわけではない．更 に，本実験で使用したモデルの大きさがデータセッ トに対して適切ではなかった可能性がある．純利益予測にて用いたアナリストレポートと, chABSA で用いたテキストデータのトークン数の中央值は, それぞれ約 500 トークンと約 55 トークンであっ た. BERT の small サイズでは最大 128 トークンと なるため，純利益予測では small サイズが入力可能 なトークンが少なく不十分だった可能性がある.

## 6 まとめ

本研究では，汎用的言語コーパスである Wikipedia によって構築された事前学習モデルに，金融コーパ スを用いた更なる事前学習である追加事前学習を 提案した. Wikipediaを用いて事前学習を行ったモ デルに対し, 追加事前学習を行ったモデルを構築し た. 構築したモデルは，金融テキストを対象とした タスクにおいて Wikipedia のみから構築された事前学習モデルを上回る精度を示した. また, 追加事前学習モデルにおける Tokenizer について，構築する 際のコーパスの比較を行った. Wikipedia のみを用 いて構築した Tokenizer によるモデルと, Wikipedia・金融コーパスを用いて構築した Tokenizer によるモ デルの間に，明確な性能差は見られなかった.

今後の課題として, 事前学習や追加事前学習に用 いるコーパスの拡張があげられる。本研究では決算短信や有価証券報告書といった，文章のフォーマッ トが似ているコーパスのみを用いて追加事前学習や 事前学習を行っている. 金融分野に関連したニュー ス記事など，より幅広いコーパスを用いて学習を行 うことで，より様々な表現の獲得が期待される。

## 謝辞

本研究は JSPS 科研費 JP21K12010 と JST 未来社会創造事業 JPMJMI20B1 の助成を受けたものです.

## 参考文献

[1] Nuno Oliveira, Paulo Cortez, and Nelson Areal. The impact of microblogging data for stock market prediction: Using twitter to predict returns, volatility, trading volume and survey sentiment indices. Expert Systems with Applications, Vol. 73, pp. 125 - 144, 2017.

[2] Gabriele Ranco, Darko Aleksovski, Guido Caldarelli, Miha Grčar, and Igor Mozetič. The effects of twitter sentiment on stock price returns. PLoS ONE, Vol. 10, No. 9, 2015.

[3] B. Shravan Kumar and Vadlamani Ravi. A survey of the applications of text mining in financial domain. KnowledgeBased Systems, Vol. 114, pp. 128-147, 2016.

[4] Li Guo, Feng Shi, and Jun Tu. Textual analysis and machine leaning: Crack unstructured data in finance and accounting. The Journal of Finance and Data Science, Vol. 2, No. 3, pp. 153-170, 2016.

[5] Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. BERT: pre-training of deep bidirectional transformers for language understanding. CoRR, Vol. abs/1810.04805, , 2018.

[6] 柴田知秀, 河原大輔, 黒橋禎夫. Bert による日本語構文解析の精度向上. 言語処理学会 第 25 回年次大会, 2019.

[7] Zhuang Liu, Degen Huang, Kaiyu Huang, Zhuang Li, and Jun Zhao. Finbert: A pre-trained financial language representation model for financial text mining. In Christian Bessiere, editor, Proceedings of the Twenty-Ninth International Joint Conference on Artificial Intelligence, IJCAI-20, pp. 4513-4519. International Joint Conferences on Artificial Intelligence Organization, 7 2020. Special Track on AI in FinTech.

[8] 鈴木雅弘, 坂地泰紀, 平野正徳, 和泉潔. 金融文書を用 いた事前学習言語モデルの構築と検証. 人工知能学会第 27 回金融情報学研究会 (SIG-FIN), oct 2021 .

[9] Kevin Clark, Minh-Thang Luong, Quoc V. Le, and Christopher D. Manning. Electra: Pre-training text encoders as discriminators rather than generators, 2020.

[10] 鈴木雅弘, 堅木聖也, 坂地泰紀, 和泉潔, 石川康. テ キストマイニングによるアナリストレポートを用 いた株価動向予測. 言語処理学会第 26 回年次大会 (NLP2020), mar 2020.

[11] Geoffrey E. Hinton, Nitish Srivastava, Alex Krizhevsky, Ilya Sutskever, and Ruslan Salakhutdinov. Improving neural networks by preventing co-adaptation of feature detectors. CoRR, Vol. abs/1207.0580, , 2012.
 鈴木雅弘 ${ }^{1}$ 坂地泰紀 ${ }^{1}$ 和泉潔 ${ }^{1}$ 石川康 ${ }^{2}$ 1 東京大学大学院 工学系研究科 2 日興アセットマネジメント株式会社 b2019msuzuki@socsim.org \{sakaji,izumi\}@sys.t.u-tokyo.ac.jp yasushi.ishikawa@nikkoam.com  