Dersin Amacı: |
Makine öğrenimi ve veri bilimi alanında ustalık arayan öğrenciler için özel olarak hazırlanmış, hayati öneme sahip optimizasyon alanına dönüştürücü bir keşif sunuyor. Optimizasyon, modellerin verilerden öğrenmesini ve değerli içgörüler çıkarmasını sağlayarak, akıllı karar vermeyi sağlayan algoritmaların temelini oluşturur. 14 haftalık bir yarıyıla yayılan bu kurs, kapsamlı bir optimizasyon teknikleri yelpazesini inceleyerek öğrencilerin karmaşık gerçek dünya sorunlarının üstesinden gelmelerini sağlar. Makine öğrenimi ve veri bilimi bağlamında optimizasyona genel bir bakışla başlayarak, öğrenciler hem kısıtlamasız hem de kısıtlamalı optimizasyon problemlerine doğru heyecan verici bir yolculuğa çıkarlar. Stokastik gradyan iniş, dışbükey optimizasyon ve Newton'un yöntemleri gibi gradyan tabanlı algoritmaları keşfederek ikinci dereceden optimizasyonun gücünü açığa çıkarıyorlar. Bu sürükleyici öğrenme deneyimi, büyük ölçekli veriler için küresel optimizasyon, düzenlileştirme teknikleri ve stokastik optimizasyona kadar uzanır. Derin öğrenmeye, destek vektör makinelerine (SVM) ve dağıtılmış ortamlara optimizasyon uygulamaya odaklanan öğrenciler, sinir ağlarını optimize etme, SVM'leri eğitme ve paralel algoritmalardan yararlanma konusunda pratik bilgiler edinir. Dahası, öğrenciler meta-sezgisel optimizasyon tekniklerine girerek onları genetik programlama ve evrimsel hesaplama ile tanıştırırlar. Bu yöntemleri harmanlayarak, çeşitli uygulamalara göre uyarlanmış hibrit optimizasyon algoritmaları oluşturuyorlar. Kurs boyunca, uygulamalı projeler ve pratik alıştırmalar, öğrencileri uzmanlıklarını ve problem çözme becerilerini sağlamlaştırarak optimizasyon algoritmalarını uygulamaya ve denemeye zorlar. Kursun sonunda öğrenciler, makine öğrenimi ve veri bilimi ortamını yeniden şekillendirmede optimizasyon potansiyelinden yararlanmak için iyi donanımlı, usta optimize ediciler olarak ortaya çıkıyor. |
Dersin İçeriği: |
|
Hafta |
Konu |
Ön Hazırlık |
1) |
Optimizasyona Giriş
- Makine öğrenimi ve veri biliminde optimizasyona genel bakış
- Optimizasyon problemi türleri: dışbükey ve dışbükey olmayan
- Degrade tabanlı ve gradyan tabanlı olmayan optimizasyon yöntemleri |
|
2) |
Sınırsız Optimizasyon
- Gradyan iniş algoritması ve varyantları (örneğin, stokastik gradyan iniş)
- Öğrenme oranı programları ve uyarlanabilir optimizasyon yöntemleri (ör. Adam, RMSprop)
- Momentum tabanlı optimizasyon |
|
3) |
Dışbükey Optimizasyon
- Dışbükey optimizasyonun temelleri
- Makine öğrenimi modellerinde dışbükeylik ve kayıp fonksiyonları
- Doğrusal programlama ve ikinci dereceden programlama |
|
4) |
Kısıtlı Optimizasyon
- Kısıtlı optimizasyona giriş
- Optimizasyon problemlerinde eşitlik ve eşitsizlik kısıtlamaları
- Lagrange çarpanları ve KKT koşulları |
|
5) |
Newton Yöntemleri ve İkinci Dereceden Optimizasyon
- Newton'un optimizasyon yöntemi
- Yarı Newton yöntemleri (ör. BFGS)
- Güven bölgesi yöntemleri |
|
6) |
Küresel Optimizasyon
- Küresel optimizasyonun zorlukları
- Genetik algoritmalar ve benzetilmiş tavlama
- Parçacık sürüsü optimizasyonu ve evrimsel stratejiler |
|
7) |
Düzenleme ve Ceza Yöntemleri
- Düzenleme teknikleri (ör. L1, L2 düzenlemesi)
- Kısıtlı optimizasyon için ceza yöntemleri
- Proksimal gradyan yöntemleri |
|
8) |
Ara Sınav |
|
9) |
Stokastik Optimizasyon
- Stokastik gradyan inişi (SGD) ve varyantları
- Mini toplu SGD ve çevrimiçi öğrenme
- Stokastik optimizasyonun yakınsama analizi |
|
10) |
Derin Öğrenme için Optimizasyon**
- Sinir ağlarını optimize etme: geri yayılım ve zincir kuralı
- Kaybolan ve patlayan gradyanlar
- Toplu normalleştirme ve ağırlık başlatma |
|
11) |
Destek Vektör Makineleri (SVM) için Optimizasyon
- SVM'nin ikili ve birincil formülasyonları
- SVM optimizasyonu için ikinci dereceden programlama
- Çekirdek yöntemleri ve Mercer teoremi |
|
12) |
Dağıtılmış ve Paralel Optimizasyon
- Büyük ölçekli optimizasyonun zorlukları
- Paralel ve dağıtılmış optimizasyon algoritmaları
- Eşzamansız ve merkezi olmayan optimizasyon |
|
13) |
Metasezgisel Optimizasyon Teknikleri
- Metasezgisel algoritmalara giriş
- Genetik programlama ve evrimsel hesaplama
- Hibrit optimizasyon yöntemleri |
|
14) |
Final |
|
|
Dersin Program Kazanımlarına Etkisi |
Katkı Payı |
1) |
Bilgisayar Bilimi ve Mühendisliği alanında bilimsel araştırma yaparak geniş ve derin bilgilere ulaşma, değerlendirme, yorumlama ve uygulama becerisi. |
|
2) |
Sınırlı ya da eksik bilgiyi kapatmak ve uygulamak için bilimsel yöntemleri kullanma ve farklı disiplinlerin bilgilerini bütünleştirme kabiliyeti. |
|
3) |
Bilgisayar Bilimi ve Mühendisliği problemlerini kurgulayabilme, problemleri çözmek için yöntemler geliştirebilme ve çözümde yenilikçi yöntemler kullanabilme. |
|
4) |
Yeni ve/veya orijinal fikirler ve algoritmalar geliştirme becerisi; sistem, bileşen veya süreç tasarımında yenilikçi çözümler geliştirmek. |
|
5) |
Bilgisayar Mühendisliğinde uygulanan güncel teknikler ve yöntemler ve bunların kısıtları hakkında geniş bilgi sahibi olma kabiliyeti. |
|
6) |
Analitik modelleme ve deneysel araştırma tasarlama ve uygulama, süreçte karşılaşılan karmaşık durumları çözme ve yorumlama becerisi. |
|
7) |
Bir yabancı dili (İngilizce) en az Avrupa Dil Portföyü seviyesinde sözlü ve yazılı iletişimde kullanabilme kabiliyeti. |
|
8) |
Çok disiplinli ekiplerde liderlik etme, karmaşık durumlara çözüm geliştirme ve sorumluluk alma kabiliyeti. |
|
9) |
Toplumsal, yasal, etik ve ahlaki değerlerin bilincinde olmak ve bu değerler çerçevesinde araştırma ve uygulama çalışmaları yapabilmek. |
|
10) |
Bilgisayar Bilimi ve Mühendisliği alanında yeni ve gelişmekte olan uygulamalar hakkında farkındalık ve bunları inceleme ve gerekirse öğrenme kabiliyeti. |
|