AI におけるトランスフォーマー モデルとその仕組みについて

トランスフォーマーは、AI、特に自然言語処理 (NLP) における画期的な技術です。その性能とスケーラビリティで有名なトランスフォーマーは、言語翻訳や対話型 AI などのアプリケーションに欠かせない存在です。この記事では、トランスフォーマーの構造、他のニューラル ネット ワークとの比較、利点と欠点について説明します。

トランスフォーマー モデルとは?

トランスフォーマーは、NLP で広く使われているディープ ラーニング モデルの一種です。そのタスク性能とスケーラビリティから、GPT シリーズ (OpenAI 製)、Claude (Anthropic製)、Gemini (Google 製) などのモデルの中核となっており、業界全体で広く使用されています。

ディープ ラーニング モデルは、モデル アーキテクチャ、学習データ、学習方法の 3 つの主要コンポーネントで構成されます。この枠組みの中で、トランスフォーマーはモデル アーキテクチャの一種を表します。これは、ニューラル ネットワークの構造と相互作用を定義するものです。トランスフォーマーが他の機械学習 (ML) モデルと一線を画す重要な革新は、「アテンション」の使用です。

アテンションとは、トランスフォーマーが入力を効率的に処理し、長いシーケンス (たとえばエッセイ全体) にわたって情報を維持することを可能にするメカニズムです。

例を挙げて説明してみましょう。“The cat sat on the bank by the river. It then moved to the branch of the nearby tree.” (「猫は川沿いの土手に座っていました。それから近くの木の枝に移動しました。」) という文章があるとします。ここでの “bank” は、お金を預ける「銀行」ではないことがおわかりでしょう。“River” という文脈の手がかりを使ってそれを理解することができます。アテンションも同様に、他の単語を使ってそれぞれの単語の意味を定義します。この例での “it” は何を指すでしょうか?このトランスフォーマー モデルは、“moved”  と “tree” という単語を手がかりにして、答えが “cat” であることにたどり着くでしょう。

ここで未回答の重要な質問は、モデルがどの単語を見るべきかをどうやって知るか、ということです。これについてはもう少し後で説明します。トランスフォーマー モデルを定義したところで、なぜそれがこれほど重用されているのか、についてさらに掘り下げてみましょう。

トランスフォーマーと CNN や RNN の比較

リカレント ニューラル ネットワーク (RNN: recurrent neural network) と畳み込みニューラル ネットワーク (CNN: convolutional neural network) は、他の 2 つの一般的なディープ ラーニング モデルです。RNN と CNN にはそれぞれ利点がありますが、トランスフォーマーは長い入力をよりうまく扱えるため、より広く使われています。

トランスフォーマーと RNN の比較

RNN はシーケンシャルなモデルです。たとえるなら、私たちが本を読むようなものです。一語一語読んでいくうちに、本の記憶と理解が深まっていきます。聡明な読者であれば、その前に何が起こったかに基づいて、次に何が起こるかを予測することさえできるでしょう。RNN もそれと同じように機能します。RNN は単語ごとに読み、記憶 (「隠れ状態」と呼ばれます) を更新し、次に予測 (たとえば、文中の次の単語やテキストの感情) することができます。欠点は、隠れ状態があまり多くの情報を保持できないことです。本全体を RNN に入力した場合、隠れ状態のスペースは限られているため、序章の詳細についてはあまり記憶されないかもしれません。隠れ状態に追加されたのがより最近であるため、後の章が優先されるからです。

トランスフォーマーでは、これと同じようなメモリの問題に悩まされることはありません。(アテンション メカニズムの一部として) すべての単語を入力中の他の単語と比較するので、隠れ状態を使用したり、以前に起こったことを「記憶」したりする必要がないのです。同じく本にたとえると、トランスフォーマーは、私たちが本の中の次の単語を読むたびに、新しい単語を正しく理解するために本の中の前の単語をすべて確認するようなものです。本の最初の文に「彼はフランスで生まれました」というフレーズがあり、本の最後の文に「彼の母国語」というフレーズがあった場合、トランスフォーマーは彼の母国語がフランス語であると推測できるでしょう。RNN では、隠れ状態がその情報を保持する保証がないため、それができない可能性があります。さらに、RNN は、単語を 1 つずつ読み取ってから隠れ状態を更新する必要があります。トランスフォーマーは、並行してアテンションを働きかけることができます。

トランスフォーマーと CNN の比較

畳み込みニューラル ネットワーク (CNN) は、連続する各アイテムの周囲のコンテキストから意味を割り出します。あるページのある単語について、CNN はその単語のすぐ周りの単語を見てその単語の意味を理解します。本の最後のページと最初のページを結びつけることはできません。ピクセルは、単語よりも隣接するピクセルと関係することが多いため、CNN は主に画像に使用されます。ただし、CNN は NLP にも使用されています。

トランスフォーマーは、CNN とは異なり、アイテムのごく近辺だけでなく、それ以上を参照します。アテンション メカニズムを使って各単語を入力中の他のすべての単語と比較し、コンテキストのより広範で包括的な理解を提供します。

トランスフォーマーはどのように機能するのか?

トランスフォーマーには、アテンション ブロック、フィードフォワード ニューラル ネットワーク (FNN)、エンベッディング (埋め込み) のレイヤーがあります。このモデルは、以下のステップによってテキストベースの入力を受け取り、出力テキストを返します。

  1. トークン化 
    テキストをトークンに変換します (文章を個々の単語に分解するのと同様です)。
  2. 埋め込み 
    トークンをベクトルに変換し、位置埋め込みを組み込んで、モデルが入力内のトークンの位置を理解できるようにします。
  3. アテンション メカニズム
    セルフアテンション (入力トークン) またはクロスアテンション (入力トークンと生成トークン間) を使用してトークンを処理します。このメカニズムにより、モデルは出力を生成する際に、異なるトークンの重要性を重み付けすることができます。
  4. フィードフォワード ニューラル ネットワーク (FNN) 
    結果を FNN に通すことで、モデルは非線形性を導入し、複雑なパターンを捉えることができます。
  5. 反復 
    ステップ 3 ~ 4 を複数のレイヤーで複数回繰り返し、出力を洗練させます。
  6. 出力分布 
    すべての可能なトークンに対する確率分布を生成します。
  7. トークンの選択 
    最も確率の高いトークンを選択します。

このプロセスは、トランスフォーマー モデルを通過する 1 回のフォワード パスを構成します。モデルは、出力テキストが完成するまでこれを繰り返します。各パスの中で、埋め込みプロセスは、アテンション メカニズムやフィードフォワード段階と同様に、並行して実行することができます。基本的に、トランスフォーマーは各トークンを一度に処理する必要はありません。すべてのトークンに同時にアテンションを適用することができます。

ここで先ほどの質問に戻りましょう。トランスフォーマー モデルは、どのトークンにアテンションを向けるべきかをどうやって知るのでしょうか?その答えは、単純にたくさんの学習データを見ることです。最初は、モデルは間違ったトークンに注目し、間違った出力を生成することでしょう。学習データに付随する正しい出力を使えば、次回から正しい答えを出力するようにアテンション メカニズムを修正することができます。何十億 (あるいは何兆) もの例で、アテンション メカニズムは適切なトークンをほぼ完璧に選ぶことができるようになります。

トランスフォーマー モデルの例

トランスフォーマーはどこにでも存在します。もともとは翻訳用に設計されましたが、トランスフォーマーはあらゆる言語、視覚、さらには音声タスクにうまく適応しています。

大規模言語モデル (LLM)

トランスフォーマー アーキテクチャは、GPT、Claude、Gemini、Llama、そして多くの小規模なオープンソース モデルを含む、あらゆる大規模言語モデル (LLM: large language model) に対応しています。LLM は、質問応答、分類、自由形式の生成など、さまざまなテキスト形式 (最近では画像や音声も) のタスクを処理できます。

これは、何十億ものテキスト例 (通常はインターネットから収集されたもの) でトランスフォーマー モデルを学習させることで実現されます。その後、企業は分類の例でモデルを微調整し、分類を正しく実行する方法をモデルに教えます。要するに、モデルは幅広いナレッジ ベースを学習し、その後、微調整によってスキルを「教えられる」のです。

ビジョン トランスフォーマー

ビジョン トランスフォーマーは、画像で動作するように調整された標準的なトランスフォーマーです。おもな違いは、トークン化のプロセスにテキストではなく画像を扱う必要があることです。入力がトークンに変換されると、通常のトランスフォーマーによる計算が行われ、最後に、出力されたトークンを使って画像 (たとえば猫の画像) が分類されます。ビジョン トランスフォーマーははしばしばテキスト LLM と融合され、マルチモーダル LLM を形成します。このようなマルチモーダル LLM は、画像を取り込んでそれを推論することができます。たとえば、ユーザー インターフェイスのスケッチを受け取って、それを作成するのに必要なコードを返すことができます。

CNN も画像タスクによく使われますが、トランスフォーマーを使うことで、モデルは近傍のピクセルだけでなく、画像内のすべてのピクセルを使うことが可能となります。たとえば、画像の左端に一時停止の標識があり、右端に車がある場合、モデルは車が停止する必要があると判断することができます。CNN の場合、この 2 つのデータ ポイントが画像内で互いに離れているため、結びつけることができないかもしれません。

オーディオ トランスフォーマー

オーディオ トランスフォーマーは、ビジョン トランスフォーマーと同様、オーディオ データ用に調整された独自のトークン化スキームを持つ標準的なトランスフォーマーです。これらのモデルは、テキストと生の音声の両方を入力として処理し、テキストまたは音声を出力することができます。この例として、生の音声をトランスクリプトに変換する Speech-to-Text モデルの Whisper があります。音声をチャンクに分割し、チャンクをスペクトログラムに変換し、スペクトログラムをエンベッディングにエンコードします。これらのエンベッディングは、トランスフォーマーによって処理され、最終的なトランスクリプト トークンを生成します。

オーディオ トランスフォーマーには、文字起こしのアプリケーション以外にも、音楽生成、自動キャプション、音声変換など、さまざまな使用例があります。さらに、企業はオーディオ トランスフォーマーを LLM と統合し、音声ベースのインタラクションを可能にすることで、ユーザーが音声コマンドで質問したり、応答を受け取ったりできるようにしています。

トランスフォーマー モデルの利点

トランスフォーマーは、そのスケーラビリティと幅広いタスクにわたる卓越した性能により、機械学習の分野でユビキタスとなっています。その成功にはいくつかの重要な要因があります。

長いコンテキスト

アテンション メカニズムは、入力シーケンスのすべてのトークンを互いに比較することができます。そのため、入力全体の情報が記憶され、出力の生成に使用されます。対照的に、RNN は古い情報を忘れ、CNN は各トークンに近い情報しか使用できません。このため、LLM チャットボットに何百ものページをアップロードし、そのうちのどのページについて質問しても、正確な回答を得ることができます。RNN や CNN には長いコンテキストがないことが、タスクにおいてトランスフォーマーが勝る最大の理由です。

並列性

トランスフォーマーのアテンション メカニズムは、入力シーケンスのすべてのトークンにわたって並列に実行できます。これは、トークンを逐次処理する RNN とは対照的です。その結果、トランスフォーマーはより迅速に学習およびデプロイすることができ、ユーザーにより速いレスポンスを提供できます。この並列処理機能により、RNN と比較してトランスフォーマーの効率が大幅に向上します。

スケーラビリティ

研究者たちは、トランスフォーマーのサイズと学習に使用するデータ量を継続的に拡大してきました。トランスフォーマーが学習できる量の限界はまだ見えていません。トランスフォーマーのモデルが大きくなればなるほど、理解し生成できるテキストはより複雑でニュアンス豊かになります (GPT-3 のパラメーターは 1,750億、GPT-4 は 1 兆を超えます)。驚くべきことに、トランスフォーマーのモデルをスケールアップしても、たとえば 10 億パラメーター モデルから 100 億パラメーター モデルを作成しても、それほど多くの時間を必要としません。このスケーラビリティゆえに、トランスフォーマーはさまざまな高度なアプリケーションのための強力なツールとなるのです。

トランスフォーマー モデルの欠点

トランスフォーマー モデルの欠点は、多くの計算資源を必要とすることです。アテンション メカニズムは 2 次関数的で、入力のすべてのトークンが他のすべてのトークンと比較されます。2 つのトークンは 4 回、 3 つのトークンは 9 回、 4 つのトークンは 16 回……というように、計算コストはトークン数の 2 乗になります。この 2 次関数的なコストにはいくつかの意味合いが含まれます。

特殊なハードウェア

LLM は一般的なコンピューターでは簡単に実行できません。その大きさゆえ、モデルのパラメーターをロードするのに数十ギガバイトの RAM を必要とします。また、従来の CPU は並列計算に最適化されていないため、代わりに GPU が必要となります。CPU 上で動作する LLM は、トークン 1 つを生成するのに数分かかることもあります。残念ながら、 GPU は最も安価で入手しやすいハードウェアではありません。

限られた入力長

トランスフォーマー モデルには処理できるテキスト量に限界があります (これをコンテキスト長と呼びます)。GPT-3 は最初、2,048 トークンしか扱えませんでしたが、技術の進歩により、最大 100 万トークンまで対応できるモデルが登場しました。ただし、コンテキストが長くなるほど、処理するための工夫が必要です。一方、RNN にはコンテキスト長の上限がありません。RNN は入力が増えると精度が下がりますが、200 万トークンもの長いテキストも一度に処理できる点が特徴です。

エネルギー コスト

トランスフォーマーの計算を行うデータ センターは、稼働するためにエネルギーが必要で、冷却には水が使われます。ある試算では、GPT-3 をトレーニングするために 1,300 メガワット時の電力が必要だったそうです。モデルが大きくなるほど、必要なエネルギー量も増加します。2027 年までには、AI 産業がオランダと同じくらいの電力を毎年必要とするかもしれないとも言われています。トランスフォーマーのエネルギー消費を削減するために多くの努力がなされていますが、これはまだ完全に解決できていない課題です。


2024 © Grammarly Inc.
Intro to Transformer Models: What They Are and How They Work


Grammarly は、英作文中に文法的な誤りやスペルミスの修正、表現やスタイルの改善をリアルタイムで提案してくれるクラウドベースの英文校正ツールです。ビジネス ドキュメントや学術論文、クリエイティブな文章など、さまざまなスタイルに対応しています。

Grammarly Business はさらに、上記の機能と組織全体のナレッジを組み合わせ、優れた成果を発揮します。ドキュメントやメッセージ、メール、SNS など、毎日の業務で使うデスクトップ アプリや Web サイト間で活用でき、チームや組織全体での英文コミュニケーションの改善を支援します。

最新の技術情報をお届け!エクセルソフト ニュースの購読お申し込みはこちらから。

タイトルとURLをコピーしました