Long Short-Term Memory (LSTM)
Uzun Kısa Süreli Bellek (LSTM) ağlarını keşfet. LSTM'lerin zaman serisi, NLP ve video analizi görevlerinde kaybolan gradyan sorununu nasıl çözdüğünü öğren.
Uzun Kısa Süreli Bellek (LSTM), dizi tahmini problemlerinde sıra bağımlılığını öğrenebilen özel bir tekrarlayan sinir ağı (RNN) mimarisi türüdür. Standart ileri beslemeli sinir ağlarının aksine LSTM'lerde yalnızca tek tek veri noktalarını (görüntüler gibi) değil, tüm veri dizilerini (konuşma veya video gibi) işlemelerine olanak tanıyan geri besleme bağlantıları bulunur. Bu özellik, geleneksel RNN'lerin "kısa süreli bellek" sınırlamalarını ele alarak, önceki girdilerden gelen bağlamın mevcut verileri anlamak için kritik olduğu görevler için onları benzersiz ölçüde uygun hâle getirir.
Standart RNN'lerdeki Sorun#
LSTM'lerin yeniliklerini anlamak için temel tekrarlayan sinir ağlarının karşılaştığı zorluklara bakmak yararlı olur. RNN'ler sıralı bilgileri işlemek üzere tasarlanmış olsa da kaybolan gradyan problemi nedeniyle uzun veri dizilerini işlemekte zorlanır. Ağ zaman içinde geri yayılım gerçekleştirirken, ağın ağırlıklarını güncellemek için kullanılan değerler olan gradyanlar üstel olarak küçülebilir ve bu da ağın uzak olaylar arasındaki bağlantıları öğrenmesini fiilen engeller. Bu, standart bir RNN'nin önceki cümledeki bir kelimeyi hatırlayabileceği, ancak üç paragraf önce oluşturulan bağlamı unutabileceği anlamına gelir. LSTM'ler, çok daha uzun süreler boyunca bir bağlam penceresini koruyabilen daha karmaşık bir iç yapı sunarak bu sorunu çözmek üzere özellikle tasarlanmıştır.
LSTM'ler Nasıl Çalışır?#
Bir LSTM'nin temel kavramı, genellikle ağın tüm zinciri boyunca ilerleyen bir taşıma bandı olarak tanımlanan hücre durumudur. Bu durum, bilgilerin değişmeden akmasını ve uzun vadeli bağımlılıkların korunmasını sağlar. Ağ, kapılar adı verilen yapıları kullanarak bu hücre durumunda neyin depolanacağına, güncelleneceğine veya atılacağına karar verir.
- Unutma Kapısı: Bu mekanizma, hangi bilgilerin artık ilgili olmadığına ve hücre durumundan kaldırılması gerektiğine karar verir. Örneğin, bir dil modeli yeni bir özneyle karşılaşırsa önceki öznenin cinsiyetini "unutabilir".
- Girdi Kapısı: Bu kapı, hangi yeni bilgilerin hücre durumunda depolanacak kadar önemli olduğunu belirler.
- Çıktı Kapısı: Son olarak bu kapı, iç durumun hangi bölümlerinin bir sonraki gizli duruma çıktı olarak aktarılacağını ve anlık tahmin için kullanılacağını kontrol eder.
Bu bilgi akışını düzenleyerek LSTM'ler, 1.000'den fazla adımdaki zaman gecikmelerini birbirine bağlayabilir ve zaman serisi analizini gerektiren görevlerde geleneksel RNN'lerden çok daha iyi performans gösterebilir.
Gerçek Dünya Uygulamaları#
LSTM'ler son on yılda derin öğrenme alanındaki birçok önemli atılımın temelini oluşturmuştur. Uygulamalarına ilişkin iki öne çıkan örnek aşağıda verilmiştir:
- Diziden Diziye Çeviri Modellemesi: LSTM'ler makine çevirisi sistemlerinin temel bileşenlerindendir. Bu mimaride bir LSTM (kodlayıcı), bir dildeki girdi cümlesini (ör. İngilizce) işler ve bunu bir bağlam vektörüne sıkıştırır. İkinci bir LSTM (kod çözücü) daha sonra bu vektörü kullanarak başka bir dilde (ör. Fransızca) çeviri üretir. Farklı uzunluklardaki girdi ve çıktı dizilerini işleyebilme özelliği doğal dil işleme (NLP) için kritik öneme sahiptir.
- Video Analizi ve Etkinlik Tanıma: ResNet-50 gibi Evrişimli Sinir Ağları (CNN), sabit görüntülerdeki nesneleri tanımlamada başarılı olsa da zaman kavramından yoksundur. CNN'ler LSTM'lerle birleştirilerek yapay zekâ sistemleri video akışlarında eylem tanıma gerçekleştirebilir. CNN her kareden özellikleri çıkarır, LSTM ise bir kişinin yürüyüp yürümediğini, koşup koşmadığını veya düşüp düşmediğini belirlemek için bu özelliklerin dizisini analiz eder.
LSTM'leri Bilgisayarlı Görüyle Entegre Etme#
Modern bilgisayarlı görü alanında LSTM'ler genellikle güçlü özellik çıkarıcılarla birlikte kullanılır. Örneğin tek tek karelerdeki nesneleri algılamak için bir YOLO modeli, yörüngelerini izlemek veya gelecekteki hareketlerini tahmin etmek için de bir LSTM kullanabilirsin.
Aşağıda, bir video akışından çıkarılan özellik vektörleri dizisini işleyebilecek basit bir LSTM tanımlamak için torch kullanan kavramsal bir örnek verilmiştir:
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.")İlgili Kavramlar ve Ayrımlar#
LSTM'leri diğer dizi işleme mimarilerinden ayırmak yararlıdır:
- LSTM ve GRU karşılaştırması: Kapılı Tekrarlayan Birim (GRU), LSTM'nin basitleştirilmiş bir çeşididir. GRU'lar unutma ve girdi kapılarını tek bir "güncelleme kapısı" altında birleştirir ve hücre durumu ile gizli durumu bir araya getirir. Bu, GRU'ları hesaplama açısından daha verimli ve eğitilmesi daha hızlı hâle getirir; ancak LSTM'ler daha büyük ve karmaşık veri kümelerinde yine de daha iyi performans gösterebilir.
- LSTM ve Transformer karşılaştırması: Tekrarlama yerine öz-dikkat mekanizmalarına dayanan Transformer mimarisi, GPT-4 tarafından gerçekleştirilenler gibi NLP görevlerinde LSTM'lerin yerini büyük ölçüde almıştır. Transformer'lar tüm dizileri sıralı biçimde değil, paralel olarak işleyebilir; bu da devasa veri kümelerinde çok daha hızlı eğitim yapılmasını sağlar. Ancak LSTM'ler, dikkat mekanizmalarının ek yükünün gereksiz olduğu sınırlı veri veya belirli zaman serisi kısıtlarının bulunduğu senaryolarda hâlâ önemini korur.
Gelişim ve Gelecek#
Dikkat mekanizması üretken yapay zekâ alanında öne çıkmış olsa da LSTM'ler, özellikle hesaplama kaynaklarının kısıtlı olduğu uç yapay zekâ ortamlarında daha hafif uygulamalar için güçlü bir seçenek olmaya devam eder. Araştırmacılar, LSTM'lerin bellek verimliliğini modern nesne algılama sistemlerinin temsil gücüyle birleştiren hibrit mimarileri keşfetmeye devam ediyor.
Dizi modellerini veya karmaşık görü görevlerini eğitmek için veri kümelerini yönetmek isteyenler için Ultralytics Platform, kapsamlı açıklama ve veri kümesi yönetimi araçları sunar. Ayrıca LSTM'lerin nasıl çalıştığını anlamak, otonom araçlarda ve robotikte kullanılan daha gelişmiş zamansal modelleri kavramak için sağlam bir temel sağlar.









