ポピュラーサイエンス記事: GPT の背後にあるトランスフォーマー モデル

ポピュラーサイエンス記事: GPT の背後にあるトランスフォーマー モデル

前回の記事「AIビッグモデルの解釈、トークンの理解から始める」では、最も基本的な概念である「トークン」から始め、複雑なアルゴリズムロジックを省略しました。皆さんはAIビッグモデルの動作原理を明確に理解できたと思います。

しかし、テキストエンコーディングとデータ分析だけに頼るのであれば、人工知能の時代はとっくの昔に到来しているはずです。なぜGPTモデルの誕生だけが、大規模な人工知能モデルの全盛期をもたらしたのでしょうか。今日は、GPT の背後にある Transformer モデルについて詳しく説明します。

トランスフォーマーとは何ですか?

写真

Transformer は、機械翻訳などの自然言語処理タスクを解決するために 2017 年に Google の研究者によって提案された新しいニューラル ネットワーク アーキテクチャです。 Transformerの特徴は、従来のリカレントニューラルネットワーク(RNN)や畳み込みニューラルネットワーク(CNN)を完全に放棄し、代わりにテキスト内の長距離依存関係を捕捉する自己注意メカニズムと呼ばれる方法を採用し、モデルの効率と精度を向上させていることです。

本日の記事では、自己注意メカニズムに焦点を当て、Transformer の 3 つの主要概念である位置エンコーディング、注意メカニズム、自己注意メカニズムを紹介します。

位置エンコーディング

自然言語処理タスクでは、単語の順序が特に重要です。 「シャオミンはシャオホンが好きです」と「シャオホンはシャオミンが好きです」を例に挙げてみましょう。この2つの文の単語はまったく同じで、順序が異なるだけで、表現する意味はまったく異なります。そのため、言語モデルは単語の順序を把握できなければなりません。

しかし、Transformer が採用している自己注意メカニズムは、ユニット間の相関関係を通じてテキストシーケンスをエンコードするため、モデル自体は単語の順序情報を認識できません。この困難を克服するために、Transformer では位置エンコーディングと呼ばれる手法が導入されています。

位置エンコーディングの考え方は非常にシンプルで、入力シーケンス内の各単語の後に位置マーカーを追加し、異なる数字を使用して文内の位置を示すというものです。 「私はリンゴを食べるのが大好きです」という文を例に挙げてみましょう。

我1 爱2 吃3 苹果4

このようにして、Transformer モデルは単語の順序を区別することができます。このアプローチにより、モデルの自然言語処理能力が大幅に向上します。実際、位置エンコーディングにより、Transformer は人間の脳が言語を処理する方法に類似したものになり、単語が出現する時系列順序を簡単に記憶できるようになります。 Transformer は位置エンコーディングを通じて同様の効果を実現します。

同様に、小説を読むとき、核となるプロットの起こる順序を把握したい場合、原文に目を通すのではなく、読みながらタイムラインを記録し、重要なプロットが起こったら、それをタイムライン全体のノードに記録することがよくあります。人気映画「TENET テネット」については、多くの友人は時系列に沿ってストーリーがどのように展開していくのかを実際に理解しただけだったと思います。

写真

位置コーディングであろうとタイムラインであろうと、この部分の情報は実際には元のデータに暗黙的に存在します。私たちのマーキングは、暗黙的な構造データのこの部分を表示して、大規模なモデルがデータのエンコードおよびデコード処理中に文中の単語の相対的な位置を考慮し、この情報部分を次元ベクトルに埋め込む(より正確には、特定の次元に影響を与える)ことができるようにするためです。

これは、物事を認識したり、言語を時系列順に整理したりする人間の脳の本能に似ています。 大規模モデルの利点は、ストレージが大きいため、人間の脳のように主要なノードを抽象化する必要がないことです。 各単語単位の位置を均等にエンコードするだけで済みます。 (ここでは少し単純化しすぎています。元の著者は位置をエンコードするために、単純な整数 1、2、3、4 ではなく、正弦関数を使用しましたが、要点は同じです。)

注意

Transformer モデルでは、位置エンコーディングによってモデルに語順情報が提供されます。注意メカニズムにより、モデルはこの情報をよりインテリジェントに使用できるようになります。

アテンション メカニズムとは何でしょうか? 簡単に言うと、Transformer モデルが出力を生成するときに入力シーケンス内のすべての単語を参照し、どの単語がより重要で現在のステップに関連しているかを判断できるようにします。英語からフランス語への翻訳を例にとると、Transformer が英語の単語を翻訳する場合、アテンション メカニズムを通じて英語の入力シーケンス全体をすばやく「スキャン」し、どのフランス語の単語に翻訳するかを決定します。入力シーケンスに複数の関連単語がある場合、アテンション メカニズムにより、モデルは最も関連性の高い単語に焦点を合わせ、関連性の低い他の単語を無視します。

写真

注釈付き翻訳の入力と出力への注目度のヒートマップ

人間の行動の観点から見ると、注意のメカニズムは理解しやすくなります。私たちは、文章を読むとき、遺伝的本能と歴史的経験に基づいて、注目する対象領域を選択し、注意を集中する能力を獲得し、それによって限られた注意力​​リソースを使用して、大量の情報から価値の高い情報を素早く選別します。大規模モデルの注意メカニズムの形成も同様です。脳と同様に、大規模モデルの本能と経験は、単語埋め込みによって形成された単語ベクトルの親密さから生まれます。モデルは、何千ものフランス語と英語の文章を観察することで、どのような種類の単語が相互に依存しているかを蓄積しました。

具体的には、Transformer のアテンション メカニズムは次の 2 つのステップに分けられます。

  • 最初のステップは、単語間の相関関係を計算することです。入力シーケンス内の各単語のペアについて、モデルは関連性スコアを計算します。スコアが高いほど、2 つの単語の意味的な関連性が高くなります。
  • 2 番目のステップは、注意の分散を生成することです。単語間の相関関係の計算に基づいて、各単語に重みを割り当てる注目度分布が得られます。重みが大きいほど、現在のステップにとって重要です。
  • 最後に、モデルはこの注意分布に従って入力シーケンスに重み付けし、関連する単語に焦点を当てます。これにより、注意メカニズムの役割が実現されます。

入力を段階的に処理し、長距離の依存関係をキャプチャできない RNN などの初期のシーケンス モデルと比較して、アテンション メカニズムはグローバル認識を実現し、Transformer がすべての入力を並列に確認できるようにすることで、モデリング機能が大幅に向上します。このため、Transformer はより難しい言語理解タスクを処理できます。

自己注意

Transformer モデルには、Attention メカニズムに加えて、Self-Attention と呼ばれるより強力なメカニズムがあります。 まず、注意と自己注意の違いについてお話ししましょう。

この例を参考にしてください。たとえば、蛇のように見える井戸のロープはすぐに人々の注意を引き、警戒させます。これは注目を意味します。そして、この井戸縄は井戸の縁に現れ、一端がバケツに結ばれていることから、蛇ではなく井戸縄であると判断され、自己注意に例えることができます。

自己注意メカニズムの中心的なアイデアは、モデルが単語間の相関関係、つまり単語間の依存関係を学習できるようにすることです。 「私はリンゴが大好きです」という文を例にとると、自己注意を通じてモデルは次のことを学習します。

  • 私は愛に関係しています
  • 愛は食べることに関係している
  • 「食べる」は「リンゴ」に関連しています

そして、処理時に、モデルは単語を順番に単純に翻訳するのではなく、これらの関連単語を優先します。

人間が物事を認識する際、その物事そのものだけではなく、その物事が位置する環境や、その認識に関係する他の事柄も総合的に考慮して最終的な認識を形成することが多い。テキストにおける自己注意メカニズムの応用も同様で、主に単語間の相互影響を計算することで長距離依存の問題を解決します。

認知の観点から見ると、自己注意は人間が言語を処理する方法に近いです。自己注意メカニズムは、長距離の依存関係を処理する際の従来のシーケンス モデルの制限を克服します。このため、自己注意メカニズムは、より複雑な言語構造を処理し、より高いパフォーマンスを実現できる Transformer モデルの「エンジン」になります。自己注意により、Transformer は並列計算を実行できるだけでなく、言語の意味を処理するために重要な非連続的な依存関係をモデル化することもできます。

要約する

自然言語処理タスクにおける Transformer モデルの大きな進歩の鍵は、次の 3 つのコア メカニズムにあります。

  • 位置エンコーディングは語順情報を提供する
  • 注意メカニズムにより、モデルはキーワードに集中することができます
  • 自己注意メカニズムは、モデルが単語間の依存関係を学習するのに役立ちます。

これら 3 つは互いに補完し合い、Transformer モデルが人間が言語を処理する方法をシミュレートできるようにすることで、従来の RNN モデルでは達成が難しい結果を実現します。

将来的には、Transformer モデルのトレーニングを容易にし、言語の表面的な形式だけでなく深い意味を真に理解できるようにする方法が、自然言語処理の分野における中心的な課題であり続けるでしょう。トランスフォーマーがもたらすさらなるサプライズを楽しみに待ちましょう!

<<:  OpenAIがアシスタントAPIをリリース、開発者はワンクリックで独自のアプリケーション用にAIアシスタントをカスタマイズ可能

>>:  ChatGPTキングボムアップグレード! GPT-4のより強力なバージョンがリリースされ、APIの価格が割引され、リリース会場での拍手は止まらない

ブログ    
ブログ    
ブログ    
ブログ    

推薦する

3分レビュー! 2021年10月のロボット資金調達の概要

[[430902]]自動化の需要が継続的に高まっているため、ロボット産業の発展は加速段階に入り、わが...

機械学習をサポートする 8 つのデータ ウェアハウス

[[399333]] [51CTO.com クイック翻訳]非常に大きなデータセットの場合、理想的な状...

...

ディープラーニングによる時系列モデルの評価

技術概要:今回は主に教師なし特徴学習とディープラーニングの最近の発展と、時系列モデル問題におけるそれ...

...

ディープラーニングモデルを使用して Java でテキスト感情分析を実行する

肯定的ですか? 否定的ですか? 中立的ですか? Stanford CoreNLP コンポーネントと数...

...

ゴミ分別ロボットが登場! 1分間に80個の仕分けが可能、人間の2倍の速さ

[[270507]]画像: AMP Robotics の特注マシンは、1 分間に 80 個のアイテム...

...

ディープラーニングは錬金術のようなものです。どんな迷信的な習慣がありますか?ユーザー: ランダムシード=42 は良い結果をもたらします

[[441423]]機械学習分野の研究者は皆、パラメータ調整という課題に直面していますが、言うほど簡...

自由に歩き回るロボット掃除機は密かにあなたを監視しているかもしれない

一日中懸命に働いた労働者たちは、疲れた体を引きずりながら家に戻り、ついに「解放された農奴が歌う」生活...

AIに関する4つの最も一般的な誤解

[[398369]]この記事はLeiphone.comから転載したものです。転載する場合は、Leip...

Python 開発者のための Spark — データのための Spark と機械学習

機械学習はデータから有用な洞察を引き出すことができます。目標は、Spark MLlib を使用して適...

人工知能(AI)と機械学習(ML)の最新動向

[[422288]]人工知能 (AI) には、分析モデルの構築を自動化する機械学習 (ML) を含む...

ElasticSearch はどのようにして TDigest アルゴリズムを使用して数十億のデータのパーセンタイルを計算するのでしょうか?

[[393929]]この記事はWeChatの公開アカウント「プログラマー李小冰」から転載したもので...