Yolo 深圳
深セン
今すぐ参加
用語集

Long Short-Term Memory(LSTM)

長短期記憶(LSTM)ネットワークを探求しましょう。時系列、自然言語処理、動画分析タスクにおいて、LSTMが再帰型神経ネットワーク(RNN)の消失勾配問題をどのように解決するのかを学びます。

ロングショートタームメモリ(LSTM)は、 再帰型ニューラルネットワーク(RNN) アーキテクチャの一種であり、 時系列予測問題における順序依存性を学習できる。 標準的なフィードフォワードニューラルネットワークとは異なり、LSTMはフィードバック接続を有するため、単一データポイント(画像など)だけでなく、データ全体のシーケンス(音声や動画など)を処理できる。この能力により、先行入力からの文脈が現在のデータを理解する上で極めて重要となるタスクに特に適しており、従来のRNNが抱える「短期記憶」の限界を克服している。

標準的なRNNの問題点

LSTMの革新性を理解するには、基本的な再帰型ニューラルネットワークが直面する課題を検討することが有用である。RNNは時系列情報を処理するよう設計されているが、消失勾配問題により長いデータ列の処理に苦戦する。ネットワークが時間軸に沿ってバックプロパゲーションを行うと、勾配(ネットワークの重みを更新するために使用される値)が指数関数的に小さくなり、ネットワークが遠隔の事象間の関連性を学習するのを事実上妨げる。これは標準的なRNNが時間軸に沿ってバックプロパゲーションを行うと、勾配が急激に小さくなるため、ネットワークが遠隔の事象間の関連性を学習できなくなることを意味する。 時間軸に沿ってバックプロパゲーションを行う際、ネットワークの重みを更新するために使用される勾配値が指数関数的に小さくなり、結果としてネットワークが遠隔の事象間の関連性を学習できなくなる。つまり標準的なRNNは前の文の単語を記憶できても、3段落前に確立された文脈を忘れてしまう可能性がある。LSTMはこの問題を解決するために明示的に設計され、より複雑な内部構造を導入することで、はるかに長い期間にわたって文脈ウィンドウを維持できるようになった。

LSTMの仕組み

LSTMの核となる概念はセル状態であり、これはネットワークの連鎖全体を貫くコンベアベルトとしてよく説明される。この状態により、情報は変化せずに流れ続け、長期的な依存関係が保持される。ネットワークはゲートと呼ばれる構造を用いて、このセル状態から何を保存し、更新し、破棄するかを決定する。

  • 忘却ゲート:このメカニズムは、どの情報がもはや関連性がなくセル状態から除去されるべきかを決定する。 例えば、言語モデルが新しい主語に出会った場合、それ以前の主語の性別を「忘れる」かもしれない。
  • 入力ゲート:このゲートは、どの新しい情報がセル状態に保存されるのに十分な重要性を持つかを決定します。
  • 出力ゲート:最後に、このゲートは内部状態のどの部分を次の隠れ状態に出力し、直近の予測に使用すべきかを制御します。

この情報の流れを制御することで、LSTMは1,000ステップを超える時間的遅れを橋渡しでき、 時系列分析を必要とするタスクにおいて 従来のRNNをはるかに凌駕する性能を発揮する。

実際のアプリケーション

LSTMは過去10年間における深層学習の主要なブレークスルーの多くを支えてきた。以下にその応用例として顕著な2つを挙げる:

  • 翻訳におけるシーケンス間モデリング: LSTMは機械翻訳システムの基盤となる。このアーキテクチャでは、1つのLSTM(エンコーダ)が1つの言語(例:English)の入力文を処理し、それをコンテキストベクトルに圧縮する。 次に、別のLSTM(デコーダ)がこのベクトルを用いて別の言語(例:フランス語)への翻訳を生成する。異なる長さの入力・出力シーケンスを扱うこの能力は、自然言語処理(NLP)において極めて重要である。
  • 動画解析と動作認識: ResNet-50のような畳み込みニューラルネットワーク(CNN)は静止画像内の物体識別には優れているが、時間感覚に欠ける。CNNとLSTMを組み合わせることで、AIシステムは動画ストリーム内の動作認識を実行できる。 CNNが各フレームから特徴量を抽出し、LSTMがこれらの特徴量の連続を分析することで、 人が歩いているのか、走っているのか、転倒しているのかを判定する。

LSTMとコンピュータビジョンの統合

現代のコンピュータビジョンでは、LSTMは強力な特徴抽出器と組み合わせて使用されることが多い。例えば、YOLO 個々のフレーム内のdetect 、LSTMでtrack 軌跡track 将来の動きを予測したりすることが考えられる。

以下に概念的な使用例を示します torch ビデオストリームから抽出された特徴ベクトルのシーケンスを処理できるシンプルなLSTMを定義する:

import torch
import torch.nn as nn

# Define an LSTM model for processing sequential video features
# Input size: 512 (e.g., features from a CNN), Hidden size: 128
lstm_model = nn.LSTM(input_size=512, hidden_size=128, num_layers=2, batch_first=True)

# Simulate a batch of video sequences: 8 videos, 10 frames each, 512 features per frame
video_features = torch.randn(8, 10, 512)

# Pass the sequence through the LSTM
output, (hidden_state, cell_state) = lstm_model(video_features)

print(f"Output shape: {output.shape}")  # Shape: [8, 10, 128]
print("LSTM successfully processed the temporal sequence.")

関連する概念と区別

LSTMを他のシーケンス処理アーキテクチャと区別することは有益である:

  • LSTM対GRU: ゲート付き再帰ユニット(GRU)はLSTMの簡略化された変種である。GRUは忘却ゲートと入力ゲートを単一の「更新ゲート」に統合し、 セル状態と隠れ状態を融合させる。これによりGRUは計算効率が高く学習が高速となるが、 より大規模で複雑なデータセットでは依然としてLSTMが優れた性能を発揮する場合がある。
  • LSTM対トランスフォーマー: 自己注意機構に依存し再帰構造を持たないトランスフォーマーアーキテクチャは、 GPT-4のようなNLPタスクにおいてLSTMをほぼ置き換えた。トランスフォーマーはシーケンシャルではなく並列に全シーケンスを処理できるため、 大規模データセットでの学習を大幅に高速化できる。 ただし、データ量が限られている場合や特定の時系列制約があるシナリオでは、 注意機構のオーバーヘッドが不要となるため、LSTMは依然として有用である。

進化と未来

注意機構が 生成AIの主役となっている一方で、LSTMは軽量なアプリケーション、特に計算リソースが制約されるエッジAI環境において、依然として堅牢な選択肢である。研究者らは、LSTMの記憶効率と現代的な物体検出システムの表現力を組み合わせたハイブリッドアーキテクチャの探求を続けている。

シーケンスモデルや複雑なビジョンタスクのトレーニング用データセットを管理したい方に向けて、 Ultralytics アノテーションとデータセット管理のための包括的なツールを提供します。 さらに、LSTMの動作原理を理解することは、自律走行車やロボティクス分野で用いられる より高度な時系列モデルを把握するための強固な基盤となります。

Ultralytics コミュニティに参加する

AIの未来を共に切り開きましょう。グローバルなイノベーターと繋がり、協力し、成長を。

今すぐ参加