Katmanlar
Bu derste derin öğrenmenin yapı taşları olan katmanları anlatıyoruz: giriş, gizli ve çıkış katmanı ne işe yarar, veri katmanlar arasında nasıl dönüşür, hangi katman türü hangi görevde kullanılır ve ağa katman eklerken nelere dikkat edilmelidir. Temeli sağlam kurmak için önce Yapay sinir ağları dersimize göz atabilirsin; alanın bütününe ise Yapay Zekâ dersleri kategorimizden ulaşabilirsin.
Katman Nedir?
Katman, bir yapay sinir ağında aynı aşamada işlem gören nöronların oluşturduğu gruptur. Bir katmandaki her nöron, bir önceki katmandan gelen aynı girdi kümesini alır; bu değerleri kendi ağırlıklarıyla çarpıp toplar ve sonucu bir aktivasyon fonksiyonundan geçirerek bir sonraki katmana iletir. Kritik bir ayrıntı: aynı katmandaki nöronlar birbirine bağlı değildir; bağlantılar daima bir katmandan sonrakine doğru gider. Bu yüzden ağ, girdiden çıktıya doğru tek yönlü akan katmanlar dizisi gibi düşünülebilir. Nöronun kendisi nasıl çalışır, ağırlık nedir gibi soruların yanıtını Nöron nedir? dersimizde bulabilirsin.
Katman Türleri: Giriş, Gizli ve Çıkış Katmanları
Her sinir ağı üç temel bölümden oluşur:
- Giriş katmanı: Ham veriyi ağa taşır ama hesap yapmaz; veriyi sayısal değerler hâlinde dağıtır. Nöron sayısı genelde öznitelik sayısına eşittir. Örneğin 28×28 piksellik bir el yazısı rakam görüntüsü, 784 nöronluk bir giriş katmanıyla temsil edilir.
- Gizli katmanlar: Öğrenmenin gerçekten gerçekleştiği ara katmanlardır; girdinin ham hâlinden anlamlı örüntülere dönüşümünü sağlarlar. "Derin" öğrenme adı da buradan gelir: gizli katman sayısı arttıkça ağ derinleşir.
- Çıkış katmanı: Ağın nihai tahminini üretir. Nöron sayısı göreve bağlıdır: 10 sınıflı rakam tanıma için 10 nöron, ev fiyatı tahmini gibi regresyon görevlerinde tek nöron kullanılır. Sınıflandırmada olasılık üretmek için genelde softmax, ikili kararlarda sigmoid tercih edilir; ayrıntılar Aktivasyon fonksiyonları dersinde.
Bilgi Katmanlar Arasında Nasıl Dönüşür?
Katmanları bir fabrika üretim hattının istasyonları gibi düşünebilirsin: her istasyon, bir öncekinden gelen yarı mamulü bir adım daha işler. Teknik tarafta ise veri ağa girdiğinde ileri yayılım (forward pass) denen şu süreç işler:
- Girdi verisi sayısal bir vektör olarak giriş katmanına verilir.
- Her gizli katman, gelen değerlerin ağırlıklı toplamını hesaplar ve aktivasyon fonksiyonundan geçirir.
- Ortaya çıkan yeni vektör, bir sonraki katmanın girdisi olur.
- Son katman, görevin istediği biçimde tahmini üretir.
Bu zincirin asıl gücü, her katmanın temsili biraz daha soyutlaştırmasıdır. Görüntü tanıyan bir ağın ilk katmanları kenar ve renk geçişi gibi basit örüntüleri yakalar; ara katmanlar bu kenarlardan göz, tekerlek, pencere gibi parçalar oluşturur; son katmanlar parçaları birleştirerek yüz, araba, bina gibi kavramlara ulaşır. Metin işleyen bir ağda da katmanlar harf örüntülerinden kelimelere, kelimelerden anlamlı ifadelere doğru ilerler. Bu hiyerarşik öğrenme fikri, derin öğrenmeyi klasik makine öğrenmesinden ayıran temel yaklaşımdır.
Yaygın Katman Türleri
Katman deyince aklına yalnızca yukarıdaki düz dizilim gelmesin; farklı görevler için farklı hesap yapan katman türleri vardır:
- Tam bağlı (Dense) katman: Her nöron, bir önceki katmanın tüm nöronlarıyla bağlantı kurar. En genel türdür; küçük ve orta ölçekli problemlerde, ayrıca birçok modelin son bölümünde kullanılır.
- Evrişimli katman: Girdi üzerinde küçük filtreler gezdirerek yerel örüntüleri yakalar; görüntü işlemenin standart yapı taşıdır. Ayrıntı için CNN nedir? dersine bakabilirsin.
- Tekrarlayan katman: Sıralı veride önceki adımların bilgisini sonraki adıma taşır; zaman serileri ve dil görevleri için geliştirilmiştir. Ayrıntı için RNN nedir? dersine bakabilirsin.
- Attention katmanı: Bir dizideki her ögenin, diğer tüm ögelere ne kadar "bakacağını" öğrenir. Günümüz büyük dil modellerinin bel kemiği olan Transformer mimarisi, attention katmanlarından oluşan blokların üst üste dizilmesiyle kurulur; 2024–2025 dönemindeki konuşan sohbet sistemlerinin arkasındaki modeller de bu şemadadır.
- Yardımcı katmanlar: Dropout (aşırı öğrenmeyi engellemek için nöronları eğitim sırasında rastgele kapatır), Batch Normalization (katman çıkışlarını normalize ederek eğitimi hızlandırır ve kararlı hâle getirir) ve Pooling (boyut küçültür) gibi katmanlar tahmin üretmez; ağın eğitimini sağlamlaştırır.
Ne Kadar Derin Olmalı? Derinlik ve Genişlik Dengesi
Daha çok katman, ağa daha karmaşık işlevler öğrenme gücü kazandırır; üstelik derin bir ağ, aynı işi gören geniş (bol nöronlu) bir ağa göre çoğu zaman çok daha az parametreyle başarır. Ama bedeli vardır: katman sayısı arttıkça eğitim zorlaşır, gradyanlar geri yayılırken katmandan katmana zayıflayabilir (gradyan kaybolması (vanishing gradient) sorunu) ve model az veriyle aşırı öğrenmeye meyillidir. 2010'ların ortasından bu yana residual (artık) bağlantılar ve normalizasyon katmanları sayesinde yüzü aşan katmanlı ağlar eğitilebilir hâle geldi; günümüzün büyük Transformer modellerinde onlarca, bazı modellerde yüzü aşan blok bulunur. Yine de "katman ekledikçe başarı artar" diye bir kural yoktur: verimlilik noktası verinin büyüklüğüne ve görevin karmaşıklığına bağlıdır, derin ağların eğitimi ise ciddi işlem gücü ister. Bu yüzden GPU ve yapay zekâ ilişkisi derin öğrenmenin gündelik gerçeğidir.
Sık Yapılan Hatalar ve Yanılgılar
- "Katman sayısı arttıkça model kesin daha iyi olur": En sık düşülen yanılgı budur. Gereksiz derinlik; aşırı öğrenmeye, yavaşlamaya ve maliyet artışına yol açar. Önce basit bir ağ kurup gerekçeli biçimde derinleştirmek daha sağlıklı bir stratejidir.
- Giriş katmanını hesap yapan bir katman sanmak: Giriş katmanı ağırlık içermez, hesap yapmaz; yalnızca veriyi dağıtır.
- Katman ile nöronu karıştırmak: "Ağda 3 katman var" derken kastedilen katman sayısıdır; her katmanda onlarca, hatta binlerce nöron olabilir. İkisi aynı şey değildir.
- Aktivasyon fonksiyonunu atlamak: Katmanlar arasında doğrusal olmayan aktivasyon yoksa, üst üste dizilmiş binlerce katman bile tek bir doğrusal dönüştürmeye eşdeğer kalır; derinlik anlamsızlaşır.
- Çıkış katmanını göreve uygun kurmamak: Beş sınıflı bir sınıflandırmada çıkışta tek nöron bırakmak ya da regresyon probleminde softmax kullanmak, yeni başlayanların sık yaptığı tasarım hatalarıdır.
Sık Sorulan Sorular
Katman nedir?
Katman, bir yapay sinir ağında aynı aşamada işlem gören nöron grubudur; girdiyi ağırlıklı toplam ve aktivasyon fonksiyonuyla işleyip sonucu bir sonraki katmana aktarır. Katmanlar üst üste dizilerek ağ oluşturulur.
Gizli katman ile çıkış katmanı arasındaki fark nedir?
Gizli katmanlar girdiden ara örüntüleri çıkararak temsili zenginleştirir; çıkış katmanı ise bu temsilden nihai tahmini üretir. Çıkış katmanının nöron sayısı ve aktivasyonu göreve göre seçilir, gizli katman sayısı ise modelin derinliğini belirler.
Derin öğrenmede katman sayısı neden önemlidir?
Katman sayısı, ağın öğrenebileceği örüntülerin soyutluk düzeyini belirler: her katman bir öncekinin çıktısından daha karmaşık örüntüler öğrenir. Ancak daha çok katman her zaman daha iyi sonuç demek değildir; veri miktarı, eğitim zorluğu ve işlem maliyeti birlikte düşünülmelidir.