📒Ders Slaytları (Lecture Slides)
📌Laboratuvar Kodları (Laboratory Codes)
📔Ders Notları (Lecture Notes) ⭐
Derin öğrenme, makine öğrenmesinin bir alt dalıdır ve yapay sinir ağlarının katmanlarının artmasıyla daha karmaşık ve yüksek doğruluklu modeller oluşturmayı hedefler. Derin öğrenme, büyük veri kümelerini ve güçlü işlem kaynaklarını kullanarak görüntü tanıma, ses tanıma, dil işleme gibi birçok alanda etkileyici sonuçlar elde eder.
🔗Derin Öğrenmeye Giriş (Introduction to Deep Learning)
Çok katmanlı sinir ağları (MLP - Multi-Layer Perceptron), bir giriş katmanı, bir veya daha fazla gizli katman ve bir çıkış katmanından oluşur. Her bir katman, bir önceki katmandan gelen bilgiyi işler ve bir sonraki katmana ileterek, karmaşık ilişkileri öğrenir. Geri yayılım (backpropagation) algoritması, bu ağların eğitilmesinde kullanılır.
🔗Çok Katmanlı Sinir Ağları (Multilayer Neural Networks)
Derin öğrenme temelleri, sinir ağlarının yapısını, aktivasyon fonksiyonlarını, optimizasyon algoritmalarını ve model değerlendirme metriklerini kapsar. Temel kavramlar arasında lineer olmayan dönüşümler, overfitting/underfitting, dropout, regularizasyon ve veri artırma (data augmentation) bulunur.
🔗Derin Öğrenme Temelleri (Deep Learning Fundamentals)
Evrişimli sinir ağları, özellikle görüntü işleme ve bilgisayarla görme alanında kullanılan bir sinir ağı türüdür. CNN'ler, giriş görüntülerinden özellikleri otomatik olarak çıkaran ve bu özellikleri sınıflandıran evrişim katmanları (convolutional layers), havuzlama katmanları (pooling layers) ve tam bağlı katmanlardan (fully connected layers) oluşur.
🔗Evrişimli Sinir Ağları (CNN - Convolutional Neural Networks)
Üretici çekişmeli ağlar, iki sinir ağından oluşur: bir üretici (generator) ve bir ayrıştırıcı (discriminator). Üretici ağ, gerçekçi veriler üretmeye çalışırken, ayrıştırıcı ağ, gerçek verileri sahte verilerden ayırt etmeye çalışır. Bu iki ağ, birbirine karşı yarışarak, gerçekçi ve yüksek kaliteli veri üretimi sağlar. GAN'lar, görüntü oluşturma, ses sentezi ve veri artırma gibi birçok alanda kullanılır.
🔗Üretici Çekişmeli Ağlar (GAN - Generative Adversarial Networks)
Perceptron, yapay sinir ağlarının en basit formudur ve tek bir sinir hücresinden (nöron) oluşur. Girdi olarak aldığı verileri ağırlıklarla çarpar, ardından bu ağırlıklı toplamı bir eşik değerle karşılaştırarak karar verir. Eşik değeri aşan çıktılar için bir aktivasyon fonksiyonu uygulanır. Perceptron, iki sınıfı ayırmak için kullanılır ve doğrusal olarak ayrılabilen verilerde etkilidir.
CNN'lerin temel adımları şunlardır:
- Evrişim (Convolution): Giriş görüntüsü üzerinde filtreler (kernels) uygulanarak özellik haritaları oluşturulur.
- Aktivasyon (Activation): Genellikle ReLU (Rectified Linear Unit) aktivasyon fonksiyonu kullanılarak, negatif değerler sıfırlanır ve doğrusal olmayan dönüşüm sağlanır.
- Havuzlama (Pooling): Özellik haritalarının boyutunu küçültmek ve hesaplama maliyetini azaltmak için maksimum veya ortalama havuzlama (max pooling veya average pooling) uygulanır.
- Tam Bağlı Katman (Fully Connected Layer): Havuzlama katmanlarından gelen veriler, düzleştirilir ve tam bağlı katmanlara iletilir. Bu katmanlar, sınıflandırma veya regresyon görevini yerine getirir.
- Çıkış Katmanı (Output Layer): Son katmanda, genellikle softmax aktivasyon fonksiyonu kullanılarak sınıflandırma sonuçları elde edilir.
Yapay sinir ağları, insan beynindeki sinir hücrelerinin çalışma prensibini taklit eden hesaplama modelleridir. Temel bileşenleri nöronlar, ağırlıklar, aktivasyon fonksiyonları ve katmanlardır. Bir ANN genellikle bir giriş katmanı, bir veya daha fazla gizli katman ve bir çıkış katmanından oluşur. Nöronlar, girdileri işleyip aktivasyon fonksiyonları aracılığıyla çıktılar üretir. Bu ağlar, öğrenme sürecinde ağırlıklarını ayarlayarak verilerdeki desenleri öğrenirler. ANN'ler, çeşitli makine öğrenmesi ve derin öğrenme görevlerinde kullanılır.