勾配消失問題
単純な RNN が忘れてしまう理由
「勾配消失問題」はCoddyKit上の無料NLP Academyレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはNLP Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 NLP Academyコースには全4レッスンが含まれています。
悩ましい制限
通常のRNNは強力に見えますが、長距離の文脈を記憶するのが苦手です。その原因は勾配消失問題です。
学習とは勾配のこと
ネットワークは、勾配と呼ばれる誤差の信号を時間方向に逆向きへ伝え、各重みを正しい方向へ少しずつ調整することで学習します。
時間をさかのぼる逆伝播
RNNでは、この逆向きの処理がすべてのステップにわたって展開されるため、長い文ほど非常に長い乗算の連鎖になります。
小さな数は急速に縮む
1未満の値を何度も掛け合わせると、結果は急速に0へ近づきます。勾配は、先頭の単語に届くずっと前に消えてしまいます。
先頭の単語が無視される
信号が消失するため、ネットワークは最初のトークンに結び付いた重みをほとんど更新できず、遠い文脈が実質的に失われます。
簡単なイメージ
0.5を20回、自分自身に掛け合わせるところを想像してください。値はほとんど消えてしまいます。深いステップを通る勾配でも同じことが起こります。
g = 0.5
for _ in range(20): g *= 0.5
print(g) # tiny反対側の危険
値が1を超えると、勾配が爆発することもあります。勾配が巨大になり、重みが激しく変動して学習が不安定になります。
爆発を抑える
勾配爆発には簡単な対策があります。勾配クリッピングで大きさに上限を設ければ、1回の更新でモデルが暴走するのを防げます。
消失への対処はより困難
勾配消失には単純な対策が効きにくいため、通常のRNNは忘れ続けます。多くのステップにわたって記憶を保持できる、より賢いセルが必要です。
本当の解決策はこれから
LSTMやGRUのようにゲートを備えた特殊なアーキテクチャは、何を保持し何を忘れるかを制御し、長距離の信号を保ちます。
なぜ重要なのか
この制限を理解すると、なぜ現代のシーケンスモデルが存在するのかが分かります。現代のモデルは、離れた位置でも勾配を保てるように設計されています。 💡
簡単な確認
長いシーケンスで、通常のRNNが先頭の単語を忘れるのはなぜですか?
まとめ
長いシーケンスでは、通常のRNNの勾配が消失し、遠い文脈が失われます。次に学ぶLSTMやGRUのようなゲート付きセルが、その解決策です。 🎯
よくある質問
「勾配消失問題」レッスンは無料ですか?
はい。「勾配消失問題」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、NLP Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 NLP Academyコースには全4レッスンが含まれています。
「勾配消失問題」で何を学びますか?
単純な RNN が忘れてしまう理由 ブラウザで直接実行するハンズオンコードでNLP Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
NLP Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのNLP Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。
「勾配消失問題」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このNLP Academyレッスンでコードを書いて実行できますか?
はい。すべてのNLP Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。