大規模言語モデルに対する語彙置換継続事前学習の有効性の検証

近年Transformer[1]ベースの大規模言語モデルの研究が加速し，様々なLLMが公開されている．しかし，その大部分[2,3]は大量の英語テキストによって学習された英語特化モデル(英語モデル)であり，日本語に特化したモデル(日本語モデル)は少ないのが現状である．主な理由として，日本語の良質な大規模コーパスは英語と比較して少量であり，学習データ量を増やすことで言語モデルとしての性能が向上するという法則[4]の上で制約となっていることが考えられる．いわゆる低リソース言語に特化したモデルを構築する場合，十分なデータ量で学習された英語モデルにその言語データを継続事前学習させるというアプローチがある[5,6]．日本語の事例でも英語モデルに日本語データを継続事前学習することで日本語モデルを構築したという報告がある[7]．しかしこの場合，既存のモデルはトークナイザーの語彙の大半が英語であるため，このまま日本語データを継続事前学習すると同一バッチ内で学習できる文字列長が英語と比較して少なくなってしまい，学習効率が非常に悪い．そのため日本語の語彙が多く含まれるトークナイザーを構築して学習を行うことが求められる．トークナイザーに変更を加えて継続事前学習を行う手法には以下のようなものが挙げられる．•Scratch:新規トークナイザーで継続事前学習•Extend:トークナイザー語彙を拡張して継続事前学習Scratchはトークナイザーの語彙と既存モデルの語彙の埋め込みベクトルの一致率が著しく低くなり，既存の重みを活用できず，精度が低くなってしまう可能性がある．一方でExtendは拡張された語彙の埋め込みベクトルの初期値を工夫することによって既存モデルの重みを活用しながら日本語に特化したトークナイザーで継続事前学習ができる．BERT[8]などのエンコーダモデルに対する低リソース言語の継続事前学習[6,9]やドメイン適応の分野でもこの手法は一般的である[10,11,12,13]．しかし，トークナイザーの語彙を拡張すると，同時にモデルサイズが語彙数に応じて増加し，最終的にGPUメモリや学習時間などコストが増大する．また，語彙数を一定以上増やしても性能は飽和するという報告もある[14]．これらの問題を解決するために，本研究では既存トークナイザーの語彙の一部を置換することで，既存の埋め込みを活用しながら語彙数を拡張せずに継続事前学習を行う手法，語彙置換継続事前学習を提案する．具体的には，新しくトークナイザーを構築し，既存トークナイザーのみに含まれる語彙を新規トークナイザーのみに含まれる語彙に置換する．また，置換した語彙に対応するモデルの埋めこみベクトルはその語彙を構成するトークン列の埋め込みベクトルの平均に置換する．これによっ.て語彙数を増やさずに既存モデルの埋め込みを活用しながら継続事前学習を行うことができる．