web-dev-qa-db-ja.com

ソフトアテンションとハードアテンション

このブログ投稿では、 リカレントニューラルネットワークの不合理な有効性 で、Andrej Karpathyはニューラルネットワークベースの機械学習の将来の方向性について言及しています。

注意の概念は、ニューラルネットワークにおける最も興味深い最近のアーキテクチャの革新です。 [...]メモリアドレッシングのソフトアテンションスキームは、モデルを完全に微分可能に保つので便利ですが、残念ながら、参加できるものはすべて(ただしソフトに)参加するため、効率が犠牲になります。これは、特定のアドレスを指すのではなく、メモリ全体のすべてのアドレスにわたる分布全体を定義するCのポインターを宣言し、ポインターを逆参照すると、ポイントされたコンテンツの重み付き合計を返すと考えてください(コストがかかります)操作!)。これにより、複数の著者は、注意を払うために特定のメモリチャンクをサンプリングするソフトアテンションモデルをハードアテンションに交換するようになりました(たとえば、すべてのセルからある程度の読み取り/書き込みを行うのではなく、メモリセルの読み取り/書き込みアクション)。このモデルは、はるかに哲学的に魅力的で、スケーラブルで効率的ですが、残念ながら微分不可能です。

ポインタのメタファーは理解できたと思いますが、正確に注目すべきことは何ですか?また、なぜ難しいものは微分不可能ですか?

注意についての説明を見つけました こちら ですが、ソフト/ハードの部分についてはまだ混乱しています。

21
dimid

正確に注意すべきことは何ですか?

この質問を理解できるようにするには、注意が解決しようとする特定の問題に少し飛び込む必要があります。 ハードアテンションに関する独創的な論文の1つは Retention Models of Visual Attention であり、読者にこれを通過することをお勧めします。その論文は、たとえ最初は完全に理解できるようには見えなくても。

正確に何が注目であるかという質問に答えるために、答えが簡単だと思う別の質問をしてみます。それは、なぜ注意が必要なのですか?私がリンクした論文は、その質問に簡潔に答えようとしているので、ここで推論の一部を再現します。

あなたが目隠しをされ、驚きの誕生日パーティーに連れて行かれ、目を開けたところを想像してください。何が見えますか? Birthday Party!

さて、私たちがあなたが写真を見たと言うとき、それは次のより技術的に正しいアクションのシーケンスの短いバージョンです。つまり、時間とともに目を動かし、シーンに関する情報を収集します。 ピクセルごとの画像は一度に表示されません。 attend画像の特定の側面に一度に1つのタイムステップで情報を集約します。たとえば、このような散らかった写真でも、ビルおじさんといとこサムがわかるでしょう:)。何故ですか?なぜなら特定の顕著な側面に参加現在の画像の。

それがまさに、ニューラルネットワークモデルに与えたいパワーです。どうして?これを何らかの正規化と考えてください。 (回答のこの部分は論文を参照しています)あなたの通常の畳み込みネットワークモデルは乱雑な画像を認識できる能力を持っていますが、どのようにして「良い」重みの正確なセットを見つけるのでしょうか?それは難しい仕事です。ネットワークに新しいアーキテクチャレベルの機能を提供することで、イメージのさまざまな部分をattendし、時間の経過とともに情報を集約できるようになりました。混乱(または希望も)。

これが質問に答えることを願っています何が難しい注意ですか?次に、その微分可能性の性質について説明します。さて、誕生日の写真を見ながら、私たちがどのように便利にpicked見るべき正しい場所を覚えているだろうか?どうやってやったの?このプロセスでは、choicesを作成します。これはinput(image)の微分可能な関数で表現するのが困難です。たとえば、すでに見たものと画像に基づいて、次に見る場所を決定します。ここに答えを出力するニューラルネットワークを使用できますが、正しい答えはわかりません!実際には正しい答えはありません。それでは、どのようにしてtrainネットワークパラメータを使用しますか?ニューラルネットワークのトレーニングは、入力の微分可能な損失関数に大きく依存します。そのような損失関数の例には、対数尤度損失関数、二乗損失関数などがあります。しかし、この場合、次にどこを見るべきかについての正しい答えがありません。どのようにして損失を定義できますか?これは、強化学習(RL)と呼ばれる機械学習の分野が登場する場所です。RL強化方法やアクタークリティックアルゴリズムなどの方法を使用した、ポリシーの空間の勾配。

ソフトアテンションとは何ですか?

答えのこの部分は、名前 読み、理解するための機械を教える で書かれた論文から借りています。 RLメソッドを強化する方法などの主要な問題は、ネットワーク内の隠れユニットの数に比例してスケーリングする高い分散(計算される予想される報酬の勾配に関して)があることです。特に大規模なネットワークを構築する場合は、これは良いことではないため、人々は注目モデルdifferentiableを探します。つまり、アテンション項とその結果の損失関数は入力の微分可能な関数であり、すべての勾配が存在するため、ネットワークをトレーニングするために通常の損失関数の1つと共に標準のバックプロップアルゴリズムを使用できます。ソフトアテンションとは何ですか?

テキストのコンテキストでは、ドキュメントの特定の単語と他の単語との関連性の重要性を選択するモデルの能力を指します。トークン。文書を読んでいて、それに基づいて質問に答える必要がある場合、文書内の特定のトークンに集中することは、それぞれのトークンを同等に重要であるかのように読むよりも、質問によく答えるのに役立ちます。それがテキストのソフトな注意の背後にある基本的な考え方です。それが微分可能なモデルである理由は、純粋に特定のトークンと手元のクエリに基づいて各トークンに支払う注意の度合いを決定するためです。たとえば、同じベクトル空間でドキュメントとクエリのトークンを表現し、そのクエリを与えられた特定のトークンにどれだけ注意を払うべきかの尺度として内積/余弦の類似性を調べることができます。コサイン距離演算はその入力に関して完全に微分可能であるため、モデル全体が微分可能になることに注意してください。論文で使用されている正確なモデルは異なり、この引数は単なるデモンストレーション用であることに注意してください。ただし、他のモデルはドット積ベースの注意スコアを使用します。

41
Sahil