メルマガ登録
前編はこちら
Transformerで作成したモデルは非常に精度が高いのですが、その理由は文章の構造をモデル化できるからです。
文章の構造をモデル化するといってもわかりにくいと思いますので、日本語の例で説明します。たとえば、日本語では、句点(。)で文を区切ります。すると句点の次には主語となる言葉が来ることが多くなりますし、句点の前には述語が来ることがほとんどです。こういう日本語の構造的な特徴を抽出することが、文章の構造をモデル化するということです。
句点の例は、日本人なら誰でも知っていることなので、ルール(正解)として与えることもできますが、Transformerの中のAttentionは、このようなルールを自動的に取り込みます。
入力文章は文章分割の単位であるトークン(モデル構築の際に使用する、単位となる語)の連鎖で書けます。さきほど形態素の話をしましたが、形態素に拘らず日本語を3万程度という少ないトークンで分割する手法が現在の主流となっています。おおよそ形態素みたいなものだと思ってください。各トークンはベクトルで表現できるため、入力文章はベクトルの連鎖で書けます。
深層学習の各層で、このベクトルの連鎖に掛けられる3種類の行列重みを用意します。内積という簡単な計算を用いて、言語のルールを学習します。複数軸の言語ルールを取り込むため、先ほどの3種類の行列重みを10個程度用意します。このようなAttentionの仕組みによって、細かく言えば何十、何百とある言語のルールを自動的にモデルに取り込むことができます。
Transformerでの深層学習では、第一段階として、この言語のモデル化を行います。この段階でも、一部の分析は実施可能です。文章中の一部トークンを隠してそのトークンを当てる等、正解データを機械的に作って学習を進めます。人手で正解データを作る必要が無いため、大量の文章が利用できます。またこのモデルは、一度構築すれば次段階での使い回しが可能となります。
第二段階として、文章分類等の目的タスクを実施します。言語のモデル化が済んだ第一段階のモデルを少し変化させて、第二段階のモデルを作成するのです。これはファインチューニングと呼ばれています。このモデルは、やりたいことに合わせて正解データの作成が必要となります。
限界はありますが、層が深く、各パラメータが大きいほど、また大量の文章データを使って学習するほど、言語のモデル化がうまく出来て、精度が向上します。
米国では、第一段階の言語のモデル化に利用する大量の文章が整備されています。近年発表されたGPT3では数10TBの規模となっています。一方日本では、日本語Wikipediaの規模がGPT3の文章量の数万分の1である2GB程度で、合計10GBの日本語文章を集めるのにも苦労します。第二段階で必要となる正解データ付きの文章データは、英語では各種正解データ付き文章が規模・種類共に揃っています。そのため、毎回直接的に利用できるとは限りませんが、類似分析での活用が可能な場合もあります。一方、日本語には整備されたものが少ない状況です。そのため、英語ではできるが、日本語ではできないことがたくさんある状況です。
日本はツイッターなどの書き込みが世界レベルで見てもトップクラスに多いSNS大国ですし、各種ブログデータも膨大にあります。しかし、このようなデータはイレギュラーが多く(たとえば句点がないことが非常に多い)、そのままでは使いにくいのです。学習用データにするためには整形処理が必要ですが、大量にあるがためにかなりのコストがかかります。
この整備された大量の自然言語処理データがないというのは日本の大きな課題なのですが、ビジネス界主導で解決できる話ではありません。大学に予算をつけるなど政治的な働きかけがないと難しいと考えます。
日本の自然言語処理には課題があるといっても、それは米国と比較した話で、日本語Wikipediaや新聞データベースなどの文章をもとにかなり実用的なモデルが作られているのも事実です。
たとえばコールセンターなどでは、良質のFAQ(よくある質問)を作れるかどうかが顧客満足度を高める重要な成功要因になり得ます。そのためには顧客からの問い合わせデータを上手にカテゴライズできるかが鍵になりますが、Transformerはこれが得意です。また問い合わせデータからの感情言語の抜き出しも重要ですが、これも得意です。
新聞・雑誌などのメディアにおいては、誤字脱字や誤用のチェックおよび修正(校閲作業)は極めて重要な業務です。Transformerにおける学習は、文章の一部を変化させて、元の状態を当てるという方法が良く使われるため、校閲作業は得意と言っていいでしょう。
私たちブレインパッドでも、文章修正モジュールを作成し、実際の案件で活用しています。単語の誤変換、文法間違い、間違った単語の自動修正等が可能なモジュールです。
学習しやすいテキストデータが大量にある英語では、文章を読み選択問題の設問に回答することが既にできるようになっています。中国の中高生向け英語テストのデータセットであるRACEでは、正解率が80%台後半という実験結果もあります。
日本では「東ロボくん」というAIで東大合格を目指すプロジェクトがありました。これも英語の試験であれば、東大合格も夢ではないでしょう。
日本語の学習データが足りないという問題については、Transformerである程度解決できる面もあります。
先ほど指摘した、SNSやブログのデータは整備されておらずそのままでは学習データにならない問題も、手間をかけることで品質を上げることができます。例えば私たちの作成したモジュールを活用すると、SNSやブログデータではとても多い誤変換を修正することができます。
正解データ付与についても、ルールベースや少量の正解データで構築したモデルでの予測を利用します。これにより人間の作業を軽減や、規模の小さなカテゴリの正解候補を大量に用意することが可能となります。
今後数年の動きとしては、Transformerを使った、自然言語処理用の学習データ作成が進むかもしれません。
1つ目は、人間の常識を考慮した答えを出すということです。
Transformerを使った文章生成例として、弊社モデルの例を見てみましょう。たとえば、「数億年前の地球には、すべての陸地がひとつに集まった、パンゲア大陸と呼ばれる超大陸が」という入力文を与えて続きを書かせると、毎回結果は違いますが一例として「栄え、やがて人々は巨大化して、世界経済の中枢を担うのだった。そして(以下略)」と出力しました。
文法等は正しく、一見それらしく見える文章です。「地球」「陸地」から類推して「栄え」という言葉が導き出されており、そこまでは良いのですが、今度は「栄え」を加えた類推によって「人々」という言葉を出力しています。文章の生成は、確率・統計的に処理しているだけ(だから毎回違う文章を生成します)なのです。しかも、「数億年前の地球」に「人々」がいたというのはダメだという、小学生でも高学年になれば持っている「常識」をAIは持ち合わせていません。もう少し丁寧に言うと、このようなダメな組み合わせを学習しやすい内部構造にはなっていないし、学習するためのデータも整備されていません。
ただし常識については、今すぐは無理でしょうが、十年以上先には解決しているかもしれません。もう一段難しいのは、2つ目となる意図を持った文章の生成です。
人間が意図を持って何かを書く時、その要旨をあらかじめ決めると思います。その要旨の順序や論理性の数値化、詳細情報の収集および数値化、これらをうまく統合した形での文章生成というのは、どこかのタイミングで出来ると思います。しかしこれは十年程度では解決しませんし、ここまで出来ても人間が設計した範囲での意図となります。
意図を持って文章を生成するのは、まだまだしばらくの間、人間の仕事だと考えられます。
限界はありますが、ビジネスで使えるようになったため、ここ数年になって自然言語処理の企業での活用が始まりました。このことは別の視点で見ると、「社内に眠っているデータを活用してきた歴史」の流れとして捉えることもできます。
まず大量の顧客データが存在していたのですが、10年前ぐらいにはそれほど有効活用されていませんでした。デジタルマーケティングの発展に伴い有効活用されるようになったと言えます。その次に生産データを活用しようという動きが出てきました。生産計画の自動化、物流の最適化、需要予測などが数年前から盛んに行われるようになりました。
最後まで残っていたのが、テキストデータでした。これがようやくTransformerの登場によってビジネスで使えるようになったのが数年前だったということです。
ただ爆発的に普及しているとは言えません。それには理由があって、Transformerのモデルを自前で作ろうと思うと、既に述べたような大量の学習およびファインチューニング用データの準備、モデル作成の計算コストや人的コストの負担および知見の蓄積、そして自動化に向けた取り組みをしないといけないからです。一企業で取り組むには大きなハードルだと言えます。
Transformerのモデルは汎用的に使えるのがメリットだと書きました。したがって既にモデルを持っている分析専門会社や大企業をパートナーにすることが、自社のテキストデータ活用成功の鍵だと言えるでしょう。
あなたにオススメの記事
2023.12.01
生成AI(ジェネレーティブAI)とは?ChatGPTとの違いや仕組み・種類・活用事例
2023.09.21
DX(デジタルトランスフォーメーション)とは?今さら聞けない意味・定義を分かりやすく解説【2024年最新】
2023.11.24
【現役社員が解説】データサイエンティストとは?仕事内容やAI・DX時代に必要なスキル
2023.09.08
DX事例26選:6つの業界別に紹介~有名企業はどんなDXをやっている?~【2024年最新版】
2023.08.23
LLM(大規模言語モデル)とは?生成AIとの違いや活用事例・課題
2024.03.22
生成AIの評価指標・ベンチマークとそれらに関連する問題点や限界を解説