今やChat GPTについて知らない人はいないんじゃないか?って思えるぐらい有名になりました。しかし、何でこんな物が突然現れたのか不思議に思う方も多いのではないでしょうか?そこで、Chat GPTが登場するまでの様々な技術について、数式は使わずに平易に解説していくシリーズとして「Chat GPT はどうやって生まれてきたのか?」を連載しています。今回はその10回目となります。今回は、GPT-2 と T5 について説明していきます。
前回(第9回)の記事で、GPT(初代)まで到達しました。今回、取り扱うのは2代目の GPT-2 です。前回でも書きましたが、Chat GPT は GPT-3.5 がベースなので最終回は次回以降になる予定です。また、GPT-2 と同時期に発表された T5(グーグル)も扱います。では、順番に説明していきます。
1. GPT-2
GPT-2 は以下の論文で発表されました。
GPT(初代)では、事前学習とファインチューニングにより、少ない教師データで様々なタスクを学習できることを示しました。GPT-2 ではさらに進んで、事前学習だけでどこまで可能なのか挑戦します。
また、GPT-2 の少し前に、A Simple Method for Commonsense Reasoning(2019年)という論文で、言語モデルがコモンセンス推論(常識的推論)を解くことができると発表されました。GPT-2 が事前学習として次の単語を予測するということは、言語モデルであるということです。GPT-2 はコモンセンス推論にも挑戦します。
GPT-2 の構成は GPT(初代)と基本的に同じです。モデルのサイズが性能とどの様に関係するかを調べるために、GPT(初代)と同じ Transformer block を12回重ねたモデルを
はじめ、24回,36回,48回重ねたモデルを準備しました。一般に GPT-2 は、48回重ねたモデルを指します。
さらに、品質と多様性を重視して、Webページからテキストを収集し、WebText と呼ぶデータを新しく準備して実験を行いました。
以降では、まずコモンセンス推論(常識的推論)について説明し、次にGPT-2 の実験結果について書いていきます。
1.1 コモンセンス推論(常識的推論)
「コモンセンス推論とは何か」について説明したいのですが、この説明にちょうど良いので、「ロボットは東大にはいれるか」プロジェクト、通称「東ロボくんプロジェクト」についてお話します。
「東ロボくんプロジェクト」は、「2021年までに人工知能を東京大学に合格させる」ことを目標として、2011年に国立情報学研究所によって開始されました。このプロジェクトは、2016年にセンター試験模試における偏差値57.1を達成し、MARCH(明治・青山学・立教・中央・法政大学の総称)に合格できる水準まで到達しました。しかしながら、何らかのブレイクスルーがない限りは東大合格は不可能と判断され開発は凍結されました。2016年11月を最後にセンター模試を受験する発表会も凍結され、「東大を断念」と報道されてしまいました。
この「東ロボくんプロジェクト」において、東ロボくん(開発された人工知能の名称)を苦しめたのが、コモンセンス推論であると言えます。実際の問題を使った解説があるので、東ロボくんプロジェクト(英語)より引用します。
ーーー 引用 ここから ーーー
次の会話の に入れるのに最も適当なものを一つ選べ。 Zack: It's already ten. We'd better be going when Bob comes back from the restroom. Shall we split the bill equally? Koji: I'd rather not do that. I ate and drank a lot more than you two. I think I should pay more. Zack: Koji: That sounds fair. ① Calm down. You don't have to get so excited. ② How about asking for a discount? ③ I wish I'd brought the coupon from the magazine. ④ Should we ask for separate checks? (2009年度センター試験 英語)
この問題を日本語に訳すと以下のようになります。
次の会話の に入れるのに最も適当なものを①~④のうちから一つ選べ。 Zack: もう10時だ。Bobがトイレから戻ってきたら出た方がいいね。割り勘にしようか? Koji: そうしない方がいいよ。僕は君たち二人よりたくさん食べて飲んだからね。僕は多く払うべきだと思う。 Zack: Koji: それはフェアだね。 ① 落ち着いて。そんなに興奮することないよ。 ② まけてくれるように頼んでみる? ③ 雑誌からクーポンを持ってくればよかった。 ④ 別々にお勘定してもらおうか?
日本語訳を見れば、レストランに関する常識がある人であれば、簡単に答えが分かるでしょう(もちろん答えは④です)。しかし、なぜ④が正解なのでしょうか。これには論理的な説明をすることはできず、ただ「それが自然だから」としか言えません。
この問題は特別な読解能力を必要としているのではなく、英語で書かれた文章を正しく理解できているかどうかが求められています。ここで「正しく理解できている」というのは、日本語と同じように理解できているということですが、その中には「一般社会での常識を知っている」ことが含まれています。人間であればだれでも分かることを前提として、ちゃんと理解できているかどうかを試験しているわけですが、コンピュータにとっては「人間であればだれでも分かること」が分からないため、そこが逆に難しい問題になってしまいます。
ーーー 引用ここまで ーーー
引用した中に出てきた「人間であればだれでも分かること」、これを機械が分かるようにすることをコモンセンス推論(常識的推論)と呼びます。
1.2 GPT-2 の実験結果
実験結果を以下に列挙します。
言語モデリングの性能 各種言語モデリング用データセットのベンチマークテストをした結果、8つのデータセット中7つで SoTA を達成しました。
コモンセンス推論(常識的推論)の性能 常識的な推論能力を評価する Winograd Schema Challenge で SoTA を達成しました。
読解性能 CoQA(Conversation Quetion Answering)データセットでベースラインシステムと同程度の結果になりました。これは、BERTベースのシステムが人間の成績に近づいてきていることと比較すれば、良い結果とは言えません。しかし、ファインチューニングなしであることを考えれば、非常に興味深い結果と言えます。
要約性能 記事の後に、TL;DR というテキストを追加し、その後の単語を予測させたところ、TL;DR というテキストがない場合と比較して要約性能が上がることが分かりました。 ※TL;DR: Too Long, Didn't Read の略で要約の前に記載するネットスラング。
翻訳性能 フランス語の文 = 英語の文 という形式で例を与えた後に フランスの文 = の続きを予測させました。今回作成したWebTextデータは英語以外を排除していたにも関わらず、わずかに紛れ込んだフランス語だけで、仏英翻訳の性能が教師なし機械翻訳のベースラインを越えました。但し、教師なし機械翻訳の最新の結果には及びませんでした。
質疑応答の性能 事実に関する質問に対して答えるテストにおいて、GPT-2 は、4.1%の正解率でした。また、最もサイズが小さいモデルでは正解率が1.0%未満でした。このことから、モデルサイズが性能に大きく関係していることがわかりました。
このように、事前学習のみでファインチューニングをしなくても、いくつかのタスクで好成績を上げることができました。他のタスクに関しては改善の余地がありますが、自然⾔語を使⽤した⾔語モデルでタスク固有の動作を呼び出せることがわかりました。また、モデルサイズが性能に大きく関係していることを示しました。
2. T5 (Text‑to‑Text Transfer Transformer)
GPT-2 と同じ時期にグーグルから以下の論文が発表されました。
Text‑to‑Text Transfer Transformer と T が5回登場するので T5 です。こちらも、Web から収集したデータを基に学習用データセットを作成しており、Colossal Clean Crawled Corpus から C4 と呼んでいます。
T5 では、GPT-2 とは違ってファインチューニングを実施します。T5 の目的は、すべてのテキストベースの言語問題をテキスト対テキスト形式に統一し、すべてのタスクを同時に学習することです。具体的な方法は、入力のテキストの先頭にタスクを示す文言を挿入します(図1)。なお、cola と stsb は GLUE のタスク名です。
GLUE(General language Understanding Evaluation): 自然言語処理モデルによる言語理解タスクの精度を評価するためのベンチマーク
T5 は、24のタスクのうち18で SoTA を達成しました。SoTA を達成しなかったタスクを表1 に示します。機械翻訳のタスクは3つともSoTAを達成しませんでした。さすがに、翻訳専用のチューニングには勝てなかったようです。
なお、論文では、内部のモデル構造・学習手法などについて色々と変更して実験を行っていますが、この部分の説明は割愛します。
3. おわりに
今回は、GPT-2 と T5 について説明しました。GPT-2 は、事前学習のみで様々なタスクやコモンセンス推論に挑戦しました。T5 は、事前学習とファインチューニングにより、様々なタスクを解くことができるモデルを提案しました。アプローチが違いますが、これまで個別に研究されてきた別々のタスクを、まとめて扱おうとしている点が共通しています。これにより、自然言語処理の研究は大きく変わっていくことになります。
次回は 「Scaling Law と GPT-3」 をお届けする予定です。