見出し画像

人工知能による自然言語処理(日本語の言語モデル開発の現状)

 海外では、2020年5月に、1,750億のパラメーターを持つOpenAIのGPT-3が登場して以来、1,000億以上のパラメーターを持つ巨大言語モデルが続々と誕生しています。
 巨大言語モデルとは、大規模なテキストデータを事前学習することによって、わずか数例のサンプルを示しただけで、機械翻訳、文章生成、質問対応など様々な言語処理タスクに対応することができる言語モデルのことです。
 一方、日本では、あまり巨大言語モデルを開発したという話を聞きませんが、一体、日本の言語モデル開発はどうなっているのでしょうか?

1.世界の巨大言語モデル

 現在、1,000億以上のパラメーターを持つ巨大言語モデルには以下のようなものがあります。
(左からモデル名、開発元、開発時期、パラメーター数)

【アメリカ】

GPT-3 OpenAI 2020年5月 1,750億
GShard Google 2020年6月 6,000億
Switch Transformer Google 2021年1月 1兆6,000億
MT-NLG Microsoft 2021年10月 5,300億
Gopher Google DeepMind 2021年12月 2,800億
PaLM Google 2022年4月 5,400億
OPT-175B Meta 2022年5月 1,750億

【中国】

PanGu-α Huawei 2021年4月 2,000億
悟道2.0 北京智源人工知能研究院 2021年6月 1兆7,500億
Yuan 1.0 Inspur 2021年9月 2,457億
M6 Alibaba 2021年11月 10兆?
ERNIE 3.0 Titan Baidu 2021年12月 2,600億
GLM-130B 清華大学 2022年8月 1,300億

【その他】

HyperCLOVA NAVER(韓国) 2021年5月(構築中) 2,040億
Jurassic-1 AI21 Labs(イスラエル) 2021年8月 1,780億
YaLM 100B Yandex(ロシア) 2022年6月 1,000億
Bloom BIgScience 2022年7月 1,760億 ※60か国超の研究者が参加

 巨大言語モデルの構築には、最先端の技術のほかに、大量の計算機資源や大量の学習用データなどを用意するのに巨額の資金が必要となるため、アメリカと中国の巨大IT企業の開発するものが多くなっています。
 先月(2022年7月)、オープンソースとして公開されたBigScienceBloomは、こうした巨大言語モデルが巨大企業に独占されていることを危惧して、研究者が自由に利用できるように、60か国を超える様々な機関の研究者がボランティアで集まって開発したものです。多言語対応を目指して46種類の言語に対応していますが、残念ながら日本語には対応していません

Bloomは、46種類の自然言語と13種類のプログラミング言語に対応しています。

2.日本語特有の難しさ

 英語や中国語を中心に扱う巨大言語モデルと比較して、日本語に対応した巨大言語モデルの開発が進まない理由としては、大量の計算機資源などを整備するのに巨額の資金が必要なこと、英語や中国語と比べて、言語モデルが学習に使う高品質なテキストデータが不足していることが挙げられますが、それ以外にも、日本語特有の難しさという問題があります。
 日本語を自然言語処理する場合の難しさとしては、以下の点が挙げられます。

  • ひらがな、カタカナ、漢字、アルファベットなどの様々な文字が混在

  • 日本語は、単語ごとにスペースで区切られていない

  • 単語に分割して、品詞分類を行う形態素解析が難しい

  • 主語や目的語などの省略が多い

  • 修飾語などの語順の自由度が高い

  • 尊敬語を含め、同じような意味でも多種多様な言い回しがある。

 多種多様な言い回しについては、例えば、英語の第1人称は、ほぼ「I」だけですが、日本語の場合は「私、僕、俺、吾輩」など色々あり、第2人称も英語は「you」だけですが、日本語の場合は「あなた、君、お前、お主」などバラエティに富んでいます。
 また、「あのお方がお見えになられました。」も、「あの人が来た。」も、「あの野郎が来やがった。」も、だいぶニュアンスが違いますが、英語では全部「That man came.」になります。

 日本語をBERTなどの言語モデルで利用する際には、予めデータの前処理として、形態素解析器による単語分割IDへの変換などをやっておく必要があります。なお、日本語の形態素解析器としては、MecabJuman++がよく利用されています。
 日本語は、英語などに比べると、この前処理が大変で、そこで抜け落ちてしまう情報(話し相手との関係性、ニュアンスなど)もあり、最終的な自然言語処理の精度が落ちる原因ともなっています。

Mecabによる形態素解析の例

3.海外の巨大言語モデルの利用

 日本でも、東大、京大、東北大、早稲田大、情報通信研究機構などがBERT、RoBERTa、ELECTRA、GPT-2などの日本語事前学習済みの言語モデルを公開しており、これらの汎用モデルをベースに、医療・ヘルスケアや製造業、金融など業界特有の専門用語や表現方法に対応できるドメイン特化型モデルの開発が進んでいます。
 また、民間企業でも、rinna、インフォマティクス、シナモン、Megagon Labs(リクルート)などが日本語事前学習済みの言語モデルを公開しています。
 詳細は、以下のサイトを参考にしてください。

 また、これらの言語モデルの多くは、Hugging Faceで公開されています。
 Hugging Faceは、自然言語処理ライブラリーの開発や人工知能コミュニティの運営を行っている米国企業で、同社のサイトでは、自然言語処理分野に特化した学習済みの機械学習モデルやデータセットなどを数多く公開しています。掲載した機械学習モデルのソースコードは全てGitHub上で公開されており、誰でも無料で使うことができます。また、TensorFlowとPyTorchの両方に対応しています。


4.日本語の言語モデルの開発

 海外で1,000億以上のパラメーターを持つ巨大言語モデルが次々と誕生していることに比べると、だいぶ小規模ですが、ここでは、日本企業による日本語に特化した言語モデルの開発例をいくつか紹介します。

 ① rinna

 rinnaは、MicrosoftでAIチャットボットの開発を行っていた開発チームがスピンアウトして、2020年6月に創設したAIキャラクターを開発するベンチャー企業で、元女子高生AIチャットボット「りんな」の開発・提供で有名です。

AIチャットボットの「りんな」の説明

 rinnaは、13億のパラメーターを持つ日本語事前学習済みのGPT(japanese-gpt-1b)を開発し、商用利用も可能なMITライセンスでHugging Face及びGitHubに公開しています。
 GPTは米国のOpenAIが開発した巨大言語モデルです。rinnaの日本語GPT言語モデルは、日本語版Wikipediaなどの日本語の公開データセットを利用して学習し、自然な日本語により、文章生成、文書分類、機械翻訳などの高度な自然言語処理タスクに対応することができます。
 rinnaは、3種類のGPT-2(同じくOpenAIが開発した巨大言語モデル)、RoBERTa(Metaが開発したBERTの改良モデル)、画像分類モデルのCLIP及びその改良モデルであるCLOOBの日本語事前学習済みモデルと併せて、計7種類の日本語に特化したAIモデルを以下のHugging Faceのページで公開しています。

 rinnaは、自社製品であるAIチャットボットなどに活用するために日本語言語モデルを開発しており、その開発成果を一般にも公開するという方針を取っているようです。

② Megagon Labs

 Megagon Labsは、米国カリフォルニア州マウンテンビューと東京に拠点を持つリクルートグループのAI研究機関です。
 Megagon Labsは、国立国語研究所との共同研究を基に開発したオープンソースの日本語自然言語処理ライブラリーGiNZAをGitHubなどで公開しています。GiNZAを使用することによって、日本語の形態素解析、係り受け解析などの各種の日本語解析を行うことができ、巨大言語モデルを使用する際の日本語データの前処理にも使えます。
 なお、最新のGiNZA v5.1には、Googleが開発したTransformerベースの言語モデルのELECTRAを使用したモデルもあります。

 また、Megagon Labsは、日本語事前学習済みのT5とELECTRA以下のHugging Faceのページで公開しています。

 なお、T5は、2019年にGoogleが開発した、入力と出力の両方を文字情報に統一して転移学習を行う言語モデルで、発表当時、多くの自然言語処理ベンチマークテストで最高性能(SOTA)を達成しました。
 また、ELECTRAは、2020年にGoogleが開発した、GAN(敵対的生成ネットワーク)の手法を取り入れて、より少ない学習データで効率的な事前学習ができるようにBERTを改良した言語モデルです。

③ ELYZA

 ELYZAは、2018年9月に創設されたディープラーニングを軸とした日本語AIを開発するベンチャー企業です。AI研究で有名な東京大学の松尾研究室出身のメンバーによって創設されました。

ELYZAの曽根岡侑也CEO(写真左)と東京大学の松尾豊教授 (写真右)

 ELYZAは、日本最大級の日本語AIモデルのELYZA Brainを開発しています。ELYZA Brainについては、具体的な言語モデルの内容が公表されていませんが、BERT以降の汎用言語モデルを活用し、大量の日本語文章データで事前学習済みの数十億のパラメーターを持つ言語モデルであり、既に人間を超えるレベルの精度を達成しているとのことです。
 数十億のパラメーターを持つということから、おそらく、これまで日本語言語モデルとして最大と言われていたrinnaの日本語GPT言語モデルの規模を超えているようですが、実際にどのような汎用言語モデルを活用し、どのくらいの規模のモデルなのか知りたいところです。

ELYZA Brainのパラメーター数とデータ量の比較

 また、ELYZAは、入力したテキストデータなどを3行に要約して表示するELYZA DIGESTや、2~8個のキーワードを入力するだけで、ニュース記事、メール、職務経歴書の文章やタイトルを自動生成するELYZA Pencilのサービスをデモサイト上で無償提供しています。

ELYZA Pencil

④ LINE

 LINEは、もはや説明の必要もありませんが、日本で大きなシェアを持つSNSのLINEを提供するモバイルネット企業です。
 元々は韓国最大のネット企業NAVERの日本子会社でしたが、その後、ライブドアを買収するなどして、今の会社名になりました。
 2019年には、ソフトバンクグループ傘下のヤフーとの経営統合を発表し、現在は、ソフトバンクグループとNAVERの共同持株会社のZホールディングスの完全子会社となっています。
 
 LINEは、元親会社のNAVERと共同で、日本語及び韓国語に対応した大規模汎用言語モデルのHyperCLOVAを開発しています。
 日本語版のHyperCLOVAについては、2022年1月現在で、パラメーター数が67億、130億、390億の3つのモデルが完成し、890億のパラメーターを持つモデルの開発が進んでいます。韓国版の方は、先行して2040億のパラメーターを持つモデルの開発が進んでおり、日本語版も2022年中に2040億パラメーターのモデルの開発を目指しているとのことです。
 
 LINEは、HyperCLOVA開発のためにNAVERと共同で700ペタFLOPS以上の性能を備えたスーパーコンピューターを整備し、日本語の学習データとして、約100億サンプル、1.8テラバイトの独自コーパスを用意しました。
 また、2021年12月には、日本語版HyperCLOVAが対話AIモデルの会話の滑らかさや音声認識の性能を評価する対話システムシンポジウムにおいて2部門で1位を獲得し、性能の高さを証明しました。

HyperCLOVAの推論APIを用いたアプリケーション開発

5.日本語の言語モデル開発の方向性

 近年、巨大言語モデルの開発により、自然言語処理技術が爆発的に進化しています。しかしながら、日本語の場合、日本語の学習用データの少なさ日本語特有の難しさのために、英語圏で開発された巨大言語モデルでは高い精度が出せない場合があり、このままでは、今後の人工知能の活用において、日本が取り残されてしまう可能性があります。
 漢字の使用が共通していて、英語よりも日本語に近い中国語の言語モデルを活用することも考えられますが、一般的に中国の言語モデルは、英語圏のモデルほどオープンにされていないこと、最近の中国との国際関係などを考慮すると難しいでしょう。

 こうした課題への対応策としては、以下の3つの方法が考えられます。
① 海外の巨大言語モデルを利用するために必要な日本語解析システムや学習用の日本語データセットを整備する。
 Megagon Labsによる日本語自然言語処理ライブラリーのGiNZAの開発などがこれに該当します。

② BigScienceによるBloomの開発などの英語以外の言語にも対応した国際的な巨大言語モデルの開発に参加する。
 なぜ日本は、Bloomの開発に積極的に関わらなかったのでしょうか。日本語特有の難しさの問題などがあり、参加してもあまり高い成果が見込めないと考えたからでしょうか。不思議です。

③ 日本語に特化した巨大言語モデルを開発する。
 LINEが日本語に特化した巨大言語モデルHyperCLOVAの開発に取り組んでおり、その成果が期待されていますが、開発成果がオープンにされるのかどうかという疑問があります。
 現状では、日本の大学、研究機関、企業などがばらばらに言語モデルを開発しているように見えますが、巨大言語モデルの開発には、計算機資源や学習用のデータセットの整備など、巨額の資金が必要になることから、国全体で協力して、計画的に言語モデルや日本語データセットなどを整備していく必要があるように思います。



この記事が参加している募集

最近の学び

この記事が気に入ったらサポートをしてみませんか?