Transformerとは何か――ChatGPTを支える「言葉の関係を見る仕組み」をやさしく理解する
前回は、「ディープラーニングとは何か」について説明しました。
ディープラーニングとは、多くの層を持つニューラルネットワークを使って、複雑なパターンを学ぶ技術です。
画像認識、音声認識、自動翻訳、文章生成、画像生成など、現代のAIの多くにディープラーニングが関係しています。
では、ChatGPTのような大規模言語モデルでは、どのようなディープラーニングの仕組みが使われているのでしょうか。
そこで登場するのが、Transformerです。
Transformerは、日本語では「トランスフォーマー」と書かれることもあります。
一言でいうと、Transformerとは、文章の中にある言葉同士の関係を見ながら、文脈を理解しやすくするAIの仕組みです。
現在の大規模言語モデルを理解するうえで、Transformerはとても重要な技術です。

Transformerとは何か
Transformerとは、ディープラーニングの一種で、特に文章のような順番のあるデータを扱うために使われる仕組みです。
文章には、言葉の順番があります。
たとえば、「犬が猫を追いかけた」と「猫が犬を追いかけた」では、使っている言葉はほとんど同じでも、意味は大きく変わります。
つまり、文章を理解するには、どの言葉がどこにあり、どの言葉と関係しているのかを見る必要があります。
Transformerは、この「言葉同士の関係」を見るのが得意です。
そのため、翻訳、要約、文章生成、質問応答など、言葉を扱うAIで大きな力を発揮しました。
現在の大規模言語モデルの多くは、このTransformerをもとに作られています。
なぜTransformerが重要なのか
Transformerが重要なのは、ChatGPTのようなAIの土台になっているからです。
大規模言語モデルは、大量の文章を学習し、入力された文章に対して自然な回答を作ります。
そのとき重要なのは、文章の中の言葉をただ順番に読むだけではありません。
どの言葉がどの言葉に関係しているのか、文全体の中でどの言葉が重要なのかを見なければなりません。
たとえば、次の文を見てください。
「太郎は花子に本を渡した。彼女はそれをとても喜んだ。」
この文では、「彼女」は花子を指していると考えられます。
また、「それ」は本を指しています。
人間は自然にこの関係を理解できます。
しかし、AIがこれを扱うには、文の中の離れた言葉同士の関係を見つける必要があります。
Transformerは、このような関係を扱うのが得意です。
Transformerの中心にあるAttention
Transformerを理解するときに、必ず出てくる言葉があります。
それが、Attentionです。
Attentionは、日本語では「注意」や「注目」と訳されます。
AIの世界では、Attentionとは、文章の中で、どの言葉にどれくらい注目するかを決める仕組みです。
たとえば、次の文を考えてみましょう。
「私は昨日、駅前の本屋で買った小説を、夜に読み始めました。」
この文で「小説」という言葉の意味を考えるとき、「買った」「本屋」「読み始めました」といった言葉が関係しています。
一方、「昨日」や「駅前」も文脈としては関係しますが、「小説」が何であるかを考えるうえでは、関係の強さが少し違います。
Attentionは、このように、文章の中でどの言葉とどの言葉が強く関係しているのかを計算します。
つまり、AIが文章を読むときに、「ここが大事そうだ」と注目する仕組みだと考えるとわかりやすいです。
Attentionは「教室で話を聞く力」に似ている
Attentionは、教室で先生の話を聞く場面にたとえるとわかりやすいです。
先生が長い説明をしているとき、すべての言葉を同じ強さで覚えるのは難しいです。
大事なキーワード、黒板に書かれた言葉、先生が強調したところに注意を向けます。
文章を読むときも同じです。
人間は、すべての言葉を同じ重さで見ているわけではありません。
主語、目的語、指示語、キーワード、前後の関係などに自然と注目しています。
TransformerのAttentionも、それに少し似ています。
AIは文章の中で、どのトークンがどのトークンに関係しているかを見ながら、次に出す言葉を考えます。
ここで出てくるトークンとは、第3回で説明したように、AIが文章を処理するための「言葉の部品」です。
Transformerは、このトークン同士の関係を見ながら文章を扱います。
言葉を順番に読むだけでは足りない
文章を理解するには、言葉を順番に読むことも大切です。
しかし、それだけでは十分ではありません。
なぜなら、関係のある言葉が離れた場所にあることが多いからです。
たとえば、次の文を見てください。
「昨日、雨が降っていたので傘を持って出かけたが、午後にはすっかり晴れていた。」
この文では、「雨」と「傘」が関係しています。
また、「午後」と「晴れていた」も関係しています。
人間は、文の中で離れた言葉同士の関係を自然に読み取ります。
AIも同じように、文章全体の中でどこが関係しているのかを見る必要があります。
Transformerは、文章を最初から最後までただ一直線に処理するだけでなく、離れた言葉同士の関係を見やすくした仕組みです。
Transformer以前の文章AI
Transformerが広く使われる前にも、文章を扱うAIはありました。
しかし、以前の方法では、長い文章の中で離れた言葉同士の関係を扱うのが難しいことがありました。
たとえば、文章を左から右へ順番に処理する仕組みでは、前の方に出てきた重要な情報が、後ろの方に進むにつれて弱くなってしまうことがあります。
人間でたとえるなら、長い説明を最初から順番に聞いているうちに、最初の方の大事な話を忘れかけてしまうようなものです。
Transformerは、文章中の離れた位置にある言葉同士の関係をより直接的に見ることができます。
そのため、長い文脈や複雑な文章を扱ううえで大きな進歩になりました。
Transformerは並列処理にも向いている
Transformerが重要になった理由は、言葉同士の関係を見やすいだけではありません。
大量の計算を効率よく行いやすいという特徴もあります。
以前の文章AIの一部は、文章を順番に処理する必要がありました。
順番に処理する方法では、前の計算が終わらないと次に進みにくい場合があります。
一方、Transformerは、多くの部分を同時に計算しやすい構造を持っています。
これを並列処理といいます。
並列処理がしやすいと、大量のデータを使って学習しやすくなります。
大規模言語モデルは、非常に多くの文章を学習する必要があります。
そのため、効率よく学習できるTransformerの仕組みは、大規模なAIを作るうえで大きな意味を持ちました。
Transformerと大規模言語モデルの関係
大規模言語モデルの多くは、Transformerをもとに作られています。
大規模言語モデルは、大量の文章から言葉のパターンを学び、入力に対して自然な文章を生成します。
そのとき、Transformerは、文章の中のトークン同士の関係を見ながら、次にどのトークンを出すかを計算します。
たとえば、AIに次のように入力したとします。
「今日は雨が降りそうなので、外に出るときは」
このあとには、「傘を持っていく」「レインコートを着る」「足元に気をつける」などが自然に続きます。
AIは、文章の流れや関係する言葉を見ながら、次に出す内容を決めます。
このような言葉の関係を扱ううえで、Transformerは大きな役割を果たしています。
Transformerは翻訳にも強い
Transformerは、もともと機械翻訳の分野で大きく注目されました。
翻訳では、ある言語の文章を別の言語の文章に変える必要があります。
たとえば、日本語を英語に翻訳するとき、単語を一つずつ置き換えるだけでは不十分です。
日本語と英語では語順が違いますし、主語が省略されることもあります。
文全体の意味を見て、自然な表現に変える必要があります。
Transformerは、文章全体の中でどの言葉がどの言葉に対応しているかを見つけるのが得意です。
そのため、翻訳の精度を上げるうえでも重要な技術になりました。
Transformerでできること
Transformerは、文章を扱うさまざまなAIに使われています。
また、現在では文章だけでなく、画像や音声、動画などを扱うAIにも応用されています。
- 文章生成
- 質問応答
- 文章の要約
- 自動翻訳
- 文章分類
- プログラムコードの生成
- 画像と言葉を組み合わせた理解
- 音声や動画を扱うAIへの応用
Transformerは、最初は言語を扱う技術として注目されました。
しかし、「データの中でどの部分とどの部分が関係しているかを見る」という考え方は、文章以外にも応用できます。
そのため、現在ではマルチモーダルAIにも関係しています。
マルチモーダルAIとは、文章、画像、音声、動画など、複数の種類の情報を扱うAIのことです。
Transformerは万能なのか
Transformerはとても強力な仕組みですが、万能ではありません。
まず、大きなTransformerモデルを学習させるには、大量のデータと大きな計算資源が必要です。
そのため、高性能な大規模言語モデルを作るには、多くのコンピューター、電力、費用が必要になります。
また、Transformerを使っていても、AIが必ず正しい答えを出せるわけではありません。
ハルシネーションが起こることもあります。
文章の流れとして自然な答えを作れても、それが事実として正しいとは限らないからです。
さらに、長い文章を扱うにはコンテキストウィンドウの限界もあります。
Transformerは文脈を扱う力を高めましたが、無限に長い情報を完璧に処理できるわけではありません。
- 大量のデータと計算資源が必要になる
- 事実を必ず正しく答えるわけではない
- ハルシネーションが起こることがある
- 長い文脈には限界がある
- 内部の判断過程がわかりにくいことがある
Transformerは非常に重要な技術ですが、それだけですべての問題が解決するわけではありません。
Transformerを理解するとAIの見え方が変わる
Transformerを理解すると、ChatGPTのようなAIがなぜ自然な文章を作れるのかが少し見えてきます。
AIは、単に言葉を一つずつ機械的につなげているだけではありません。
文章の中で、どの言葉がどの言葉に関係しているのかを見ながら、次に続く言葉を考えています。
この「関係を見る力」が、Transformerの大きな特徴です。
ただし、AIが人間と同じように意味を理解しているとは限りません。
AIは、大量の文章から学んだパターンと、入力された文脈をもとに、もっとも自然な出力を作っています。
そのため、AIはとても自然な文章を書けますが、間違えることもあります。
Transformerを知ることは、AIのすごさを理解するだけでなく、AIの限界を理解することにもつながります。
まとめ
Transformerとは、文章の中にある言葉同士の関係を見ながら、文脈を扱いやすくするAIの仕組みです。
現在の大規模言語モデルの多くは、このTransformerをもとに作られています。
Transformerの中心にあるのが、Attentionという仕組みです。
Attentionは、文章の中でどの言葉にどれくらい注目するかを決める仕組みです。
これによって、AIは文の中で離れた場所にある言葉同士の関係を扱いやすくなります。
Transformerは、翻訳、要約、文章生成、質問応答、プログラム生成など、さまざまなAI技術に使われています。
また、現在では文章だけでなく、画像や音声などを扱うAIにも応用されています。
ただし、Transformerは万能ではありません。大量のデータや計算資源が必要で、ハルシネーションや文脈の限界もあります。
それでも、Transformerは現代のAIを大きく進化させた重要な技術です。
次回は、「Attentionとは何か」について説明します。
AttentionはTransformerの中心にある仕組みです。AIが文章の中で、どの言葉に注目しているのかを、より具体的に見ていきます。