Derin öğrenme çok katmanlı kullanır yapay sinir ağları (YSA)giriş ve çıkış arasında birkaç “gizli katman” düğümünden oluşan ağlardır.
Yapay sinir ağı, girdilerin ağırlıklı toplamına doğrusal olmayan bir fonksiyon uygulayarak girdi verilerini dönüştürür. Dönüşüm sinir katmanı olarak bilinir ve fonksiyona sinir birimi denir.
Bir katmanın özellikler adı verilen ara çıktıları, bir sonraki katmanın girdisi olarak kullanılır. Sinir ağı, tekrarlanan dönüşümler yoluyla birden fazla doğrusal olmayan özellik katmanını (kenarlar ve şekiller gibi) öğrenir ve daha sonra bunları (daha karmaşık nesnelere ilişkin) bir tahmin oluşturmak için son bir katmanda birleştirir.
Gradyan iniş adı verilen bir sürecin içindeki geri yayılma ile hatalar ağ üzerinden tekrar geri gönderilir ve ağırlıklar ayarlanarak model iyileştirilir. Sinir ağı, sinir ağının tahminleri ile istenen değerler arasındaki farkı en aza indirecek şekilde bir ağın ağırlıklarını veya parametrelerini değiştirerek öğrenir. Bu süreç binlerce kez tekrarlanır ve modelin ağırlıkları, ürettiği hataya göre, hata artık azaltılamayacak hale gelinceye kadar ayarlanır. Yapay sinir ağının verilerden öğrendiği bu aşamaya eğitim adı verilmektedir. Bu işlem sırasında katmanlar, model için en uygun özellikleri öğrenir; bu, özelliklerin önceden belirlenmesine gerek olmaması avantajına sahiptir.
GPU'lar: Derin Öğrenmenin Anahtarı
Mimari olarak CPU, aynı anda birkaç yazılım iş parçacığını işleyebilen çok sayıda önbelleğe sahip yalnızca birkaç çekirdekten oluşur. Buna karşılık, bir GPU yüzlerce çekirdekten oluşur binlerce iş parçacığını aynı anda işleyebilir.
Son teknoloji ürünü derin öğrenme sinir ağları, geri yayılım kullanılarak ayarlanacak milyonlarca ila bir milyarın üzerinde parametreye sahip olabilir. Ayrıca yüksek doğruluk elde etmek için büyük miktarda eğitim verisine ihtiyaç duyulur; bu da yüzbinlerce ila milyonlarca girdi örneğinin hem ileri hem de geri geçişten geçirilmesi gerektiği anlamına gelir. Sinir ağları çok sayıda aynı nörondan oluşturulduğundan doğaları gereği oldukça paraleldirler. Bu paralellik doğal olarak aşağıdakilerle eşleşir: GPU'lar, yalnızca CPU eğitimine göre önemli bir hesaplama hızı sağlar ve onları büyük, karmaşık sinir ağı tabanlı sistemlerin eğitimi için tercih edilen platform haline getirir. Çıkarım işlemlerinin paralel doğası, GPU'larda yürütülmeye de uygundur.