【とらんすふぉーまー】

トランスフォーマー とは?

最終更新:
💡 離れた言葉の関係も計算する、言語AIの土台

アテンションを使って入力の各部分の関係を計算するニューラルネットワークの構造。2017年の論文で提案され、多くの言語モデルの基盤になっている。

📌 このページのポイント
Transformer:元の翻訳モデル入力のトークン数値 + 位置の情報すでに出した内容次の出力の手掛かりエンコーダ自己アテンション位置どうしの関係数値を変換する層FFN入力の表現デコーダ自己アテンション過去の位置を参照未来は隠す入力側も参照クロスアテンション数値を変換する層FFN次のトークンを予測層を重ねて計算順序の情報も一緒に渡す
元の構造の主な流れです。埋め込み・残差接続・正規化などの細部は省略しています。
ひよこ ひよこ
トランスフォーマーって、AIの名前なの?
ペンギン先生 ペンギン先生
AIの世界では、ニューラルネットワークの構造の名前だよ。Googleなどに所属した研究者による2017年の論文Attention Is All You Needで提案されたんだ。文章の各部分の関係を計算するアテンションが中心にあるよ。
ひよこ ひよこ
言葉の関係って、どんなもの?
ペンギン先生 ペンギン先生
例えば「猫を飼っていて、それが好き」の「それ」と、前に出てきた「猫」の関係を考えてみよう。自己アテンションは、入力の各位置からほかの位置を参照し、重みを付けて情報を組み合わせる仕組みなんだ。これは考え方をつかむ例で、必ず正しく意味を理解する保証ではないよ。
ひよこ ひよこ
順番に読まなくても、言葉の順序は分かるの?
ペンギン先生 ペンギン先生
元の構造では、言葉を数値にした表現に、位置を表す情報を加えるよ。アテンションだけでは順序が自動的に分かるわけではないんだ。RNNのように前の計算を順番に受け継ぐ構造とは違い、学習中の多くの計算を並列に進めやすいよ。
ひよこ ひよこ
エンコーダとデコーダは何をするの?
ペンギン先生 ペンギン先生
元の翻訳モデルでは、エンコーダが入力を数値の表現に変え、デコーダがその表現と、すでに出した内容を使って次の出力を予測するよ。自己アテンションに加え、数値を変換する層も組み合わせているんだ。派生モデルでは一方だけを使う構成もあるよ。
ひよこ ひよこ
じゃあ生成する文章も、全部同時に出せるの?
ペンギン先生 ペンギン先生
通常の自己回帰型の生成では、すでに出たトークンを使って次のトークンを一つずつ予測するよ。トークンは、単語やその一部などに区切った単位だね。学習の並列化と、出力の生成が逐次進むことは両立するんだ。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「トランスフォーマー」って出てきたら「言葉の関係を計算するアテンションが中心の、AIの設計」と思えばだいたいOK!
📖 おまけ:英語の意味
「Transformer」 = 変換するもの
💬 英語のtransformは「変換する」。AIでは、2017年の論文が提案したモデル構造の名前だよ。変圧器や変形ロボットの話とは、文脈を分けて読もう。

参考資料

← 用語集にもどる