言語理解AIの仕組みと使い方--「BERT」「GPT-3」はどう使うのか?

城塚音也 (NTTデータ先端技術)

2021-08-23 07:00

 前回は、人工知能(AI)の一つで、文章を読んで内容を理解する“言語理解AI”の概要や、2017年に登場した新しいディープラーニング手法「トランスフォーマー」に基づく「BERT」と「GPT」シリーズ(GPT-1、GPT-2、GPT-3)、その事例などを紹介しました。

 今回は、BERTやGPTシリーズの仕組みや適用方法などを紹介します。

BERTの華々しいデビュー

 2018年にGoogleが発表したトランスフォーマーに基づく言語理解AI、BERTは、言語理解に関する各種のベンチマーク(試験問題のようなもの)で最高点を達成しました。

 特に、質問に対する回答を「Wikipedia」の記載から見つけ出す「SQuAD」と呼ばれるベンチ―マークでは、初めて人間を越えるスコアを達成したことで話題を呼びました。中国科学院のChangchang Zeng氏らによる質問回答技術に関する調査論文(PDF)によれば、人間のスコアが91.221であったのに対してBERTが93.2のスコアで人間を追い越したことが分かります(それまでのトップは88.3でした)。

 SQuADの中身を見てみましょう。以下のような質問と回答を含むWikipediaの記述をBERTに与えると、BERTはWikipediaの記述から答えとなるべきフレーズ(within a cloud)を抜き出してくれます。

質問「Where do water droplets collide with ice crystals to form precipitation?」(水滴が氷の結晶と衝突して降水を形成する場所は?)

Wikipedia「-Precipitation forms as smaller droplets coalesce via collision with other rain drops or ice crystals within a cloud」(降水は、雲の中で小さな水滴が他の雨滴や氷の結晶と衝突し、形成されます)

答え「within a cloud」(雲の中)

 このようなことができると一体どんなことに役立つのでしょうか? 例えばチャットボットサービスにBERTを組み込めば、質問と答えを含む文書(例えば製品やサービスのマニュアルなど)さえあれば、質問への回答を文書から自動的に探し出してユーザーに回答してくれるようになります。従来のチャットボットでは質問と答えのセット(FAQ)を用意しなくてはいけませんでしたが、これが不要となるのです。

BERTの活用手順

 BERTの学習済みモデルはGoogleが無償で公開しています。日本語のモデルに関しては、有償や無償のものが大学や企業から公開されています。それでは、これらのモデルを使えば上記のようなサービスがすぐに作れるのでしょうか? 実はそうではありません。BERTは「汎用事前学習モデル」と呼ばれるもので、いろいろなサービスにつかえる「汎用性」を持ちます。

 BERTが行う「事前学習」は世の中に大量に存在するテキストデータ(Wikipedia、SNS、論文、ニュース、小説など)をそのまま学習データとして使う学習方法で、膨大な量のテキストデータからテキストの単語の連なりの「言語らしさ」を学習します。

 この汎用事前学習を行ったモデルは、例えば「本日の天気は」というテキストを与えると、下の図2のように、「晴れ」や「曇り」など、次に来そうな単語とその確からしさ(スコア)を推定することができます。

図2:言語モデルのイメージ
図2:言語モデルのイメージ

※クリックすると拡大画像が見られます

 従来の学習方法では、人手で正解付けを行った教師データが必要で、作成にはかなりのコストがかかるため、深層学習に必要な膨大な量の学習データを用意することは困難でした。しかし汎用事前学習では、機械的に収集した大量のテキストデータに対して一部の単語をマスク(削除)することで、文章の穴埋め問題の形をした学習データを自動的に大量に作成することができます。

 ただし実際のサービスにこの汎用事前学習モデルを使うためには、適用先のサービスに合わせたモデルの「微調整」が必要となります(これを「ファインチューニング」といいます)。例えばテキストを分類したいのであれば、実際の分類サービスに使う正解データを少量用意する必要があります。通常の深層学習では数万~数十万の正解データが必要でしたが、このファインチューニングは数百件レベルの学習データで実施可能です。

図3:汎用事前学習モデルの学習イメージ
図3:汎用事前学習モデルの学習イメージ

※クリックすると拡大画像が見られます

ZDNET Japan 記事を毎朝メールでまとめ読み(登録無料)

ZDNET Japan クイックポール

マイナンバーカードの利用状況を教えてください

NEWSLETTERS

エンタープライズコンピューティングの最前線を配信

ZDNET Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]