CMP712 - MAKİNA ÖĞRENMESİ

Dersin Adı Kodu Yarıyılı Teori
(saat/hafta)
Uygulama
(saat/hafta)
Yerel Kredi AKTS
MAKİNA ÖĞRENMESİ CMP712 Herhangi Yarıyıl/Yıl 3 0 3 9
Önkoşul(lar)-var iseYOK
Dersin Diliİngilizce
Dersin TürüSeçmeli 
Dersin verilme şekliYüz yüze 
Dersin öğrenme ve öğretme teknikleriAnlatım
Rapor Hazırlama ve/veya Sunma
Sorun/Problem Çözme
Proje Tasarımı/Yönetimi
 
Dersin sorumlusu(ları)Prof. Dr. İlyas Çiçekli, Prof. Dr. Hayri Sever 
Dersin amacıÖğrencilere makine öğrenmesinin kavramlarını ve algoritmalarını öğretmektir. Makine öğrenmesi algoritmaların limitlerinini, yetenekleri ve uygulama alanlarını öğretilecektir. 
Dersin öğrenme çıktıları
  1. Öğrenciler bu dersin sonunda, Makine öğrenmesinin önemli kavramlarını ve algoritmalarını öğrenirler.
  2. Makine öğrenmesi algoritmaların yetenekleri ve limitleri hakkında bilgi sahibi olurlar.
  3. Makine öğrenmesi algoritmaların uygulama alanları hakkında bilgi sahibi olurlar.
  4. Özellik seçimi, boyut azaltılması ve model seçimi gibi makine öğrenmesi kavramlarını öğrenirler.
  5. Makine öğrenmesi alanındaki en az bir algoritma ve onun uygulama alanları hakkında derinlemesine bilgi sahibi olur.
  6. Makine öğrenmesi alanında araştırma, proje ve makale yazma alışkanlığını kazanırlar.
Dersin içeriğiMakine öğrenmesinin önemli kavramları ve algoritmaları, Makine öğrenmesi algoritmalarının yetenekleri ve sınırları, Makine öğrenmesi algoritmalarının uygulama alanları, Yönetmeli ve yönetmesiz öğrenme yöntemleri, Özellik seçimi, boyut azaltması ve model seçimi. 
Kaynaklar1. Mitchell T., Machine Learning, McGraw Hill, 1997.
2. Alpaydın E., Introduction to Machine Learning, The MIT Press, 2004.) 

Haftalara Göre İşlenecek Konular

HaftalarKonular
1. HaftaMakine öğrenmesine giriş.
2. HaftaBasit kavram öğrenmesi.
3. HaftaKarar verme ağaçları öğrenmesi.
4. HaftaNeron ağları
5. HaftaBayes öğrenmesi
6. HaftaNaive-Bayes Sınıflandırıcısı
7. HaftaÖğrenme Teorisi ? PAC Öğrenebilirliği
8. HaftaEn-yakın n-komşu algoritması
9. HaftaKarar-destek vektörleri
10. HaftaRegresyon
11. HaftaGenetik algoritmalar
12. HaftaKural öğrenmesi - Kapsama algoritması, Birince-Derece Kural Öğrenmesi
13. HaftaKural öğrenmesi ? Tüme Varım Mantıksal Programlama
14. HaftaProje Sunumları
15. HaftaGenel Sınava Hazırlık
16. HaftaGenel sınav

Değerlendirme Sistemi

Yarıyıl içi çalışmalarıSayısıKatkı Payı %
Devam (a)00
Laboratuar00
Uygulama00
Alan Çalışması00
Derse Özgü Staj (Varsa) 00
Ödevler00
Sunum00
Projeler150
Seminer00
Ara Sınavlar00
Genel sınav150
Toplam100
Yarıyıl İçi Çalışmalarının Başarı Notuna Katkısı150
Yarıyıl Sonu Sınavının Başarı Notuna Katkısı150
Toplam100

AKTS (Öğrenci İş Yükü) Tablosu

Etkinlikler Sayısı Süresi Toplam İş Yükü
Ders Süresi 14 3 42
Laboratuvar 0 0 0
Uygulama000
Derse özgü staj (varsa)000
Alan Çalışması000
Sınıf Dışı Ders Çalışma Süresi (Ön Çalışma, pekiştirme, vb)148112
Sunum / Seminer Hazırlama000
Proje17070
Ödevler000
Ara sınavlara hazırlanma süresi000
Genel sınava hazırlanma süresi000
Toplam İş Yükü2981224

Dersin Öğrenme Çıktılarının Program Yeterlilikleri İle İlişkilendirilmesi

D.9. Program YeterlilikleriKatkı Düzeyi*
12345
1. Mezunlar, Bilgi Yığını (Bilgisayar Bilimleri kapsamındaki tüm temel alanlar) ile tanımlanan Bilgisayar Bilimleri alanına hakim olmalıdır.   X 
2. Mezunlar, soyutlama, karmaşıklık ve evrimsel değişim gibi sıkça adı geçen konular ve ortak kaynak, güvenlik ve paralellik gibi genel ilkeler hakkında bir anlayışa sahip olmalıdır. Mezunlar, bu konular ve ilkelerin bilgisayar bilimleri alanında geniş bir uygulama alanına sahip olduğunun farkında olmalı ve bunların sadece tanıtıldıkları alanlarla ilgili olmadığını da göz önünde bulundurmalıdır.   X 
3. Bilgisayar Bilimlerindeki temel bir husus teori ve pratiğin karşılıklı etkileşimine dair anlayış ve onlar arasındaki esas bağlantılardır. Bilgisayar Bilimlerinden mezun olanlar teori ve pratiğin nasıl birbirini etkilediğini anlamak durumundadır.    X
4. Bilgisayar Bilimlerinden mezun olanlar detay ve soyutlamanın farklı düzeylerinde düşünmelidir. Bu anlayış, bilgisayar sistemlerinin yapısını ve onların kurulumunda ve analizinde izlenen süreçlerin değerini anlamak için çeşitli bileşenlerin detaylarının gerçekleştirilmesinde etkin olmalıdır. Mezunlar, bir bilgisayar sisteminin, insanlar ve fiziksel dünyayı da kapsayacak şekilde hangi ortamda işlevsel olabileceğinin farkında olmalıdır.  X  
5. Mezunlar, sadece kod yazma ve bitlerle oynama değil, aynı zamanda edindikleri bilgi birikimini araştırmalarındaki gerçek problemleri çözmede de kullanabilmelidir. Mezunlar herhangi bir teknik veya bilimsel problemleri kendi başlarına çözebilmeli ve her türlü problem için başka çözüm önerileri getirebilmelidir. Verilen bir problemin birden fazla çözümünün olduğunun ve bu çözümler arasından birini seçmenin yalnızca teknik bir eylem olmadığının, çünkü bu çözümlerin insanların hayatlarında gerçek bi    X
6. Mezunların edindikleri bilgi birikimini başarılı bir şekilde uyguladıklarından emin olmak için, bütün mezunlar en az bir kapsamlı projede yer almalıdır. Çoğu durumda, bu deneyim bir yazılım geliştirme projesi olacaktır, ancak diğer deneyimler de özel durumlarda uygundur. Bunun gibi projeler öğrencileri birleştirici olmaya teşvik etmeli, potansiyel çözümlerin hesaplamalarını gerektirmeli ve tipik ders projelerine göre daha geniş ölçekli çalışmalar yapmalarını gerektirmelidir. Öğrenciler, proje de    X
7. Bilgisayar Bilimleri mezunları, hesaplama alanının çok hızlı bir şekilde geliştiğinin farkında olmalıdır. Belirli diller ve teknoloji platformları zaman içinde değişebilir. Bu nedenle, mezunlar öğrenmeye devam etmeleri ve becerilerini de bu yönde geliştirmeleri gerektiğinin farkında olmalıdır. Bu beceriyi geliştirmek için, öğrenciler eğitimleri boyunca temel öncelikli ilkelerin yanında çeşitli programlama dillerine, araçlara ve teknolojilere maruz bırakılmalıdır. Mezunlar araştırmalarına devam e    X
8. Mezunlar, bilgisayar teknolojisinin kurulumu ve kullanımında sosyal, yasal, etik ve kültürel hususların farkında olmalıdır. Bu hususlara kişisel ve profesyonel ilkelerle güdümlenmiş olarak bilinçli bir perspektiften yanıt vermelilerdir. Aynı zamanda sosyal, yasal ve etik standartların uluslar arası olarak değiştiğinin farkında olmalıdırlar.  X  
9. Mezunlar hem İngilizce hem de Türkçe dillerinde teknik terimlere vakıf olmalıdır. Teknik problemler ve çözümleri hakkında çeşitli dinleyici gruplarına kısa ve öz sunum yapma becerileri olmalıdır. Bu, yüz yüze, yazılı veya elektronik iletişimi içerebilir (Türkçe ve İngilizce'de). Takım üyeleri halinde etkili bir şekilde çalışmaya hazırlıklı olmalıdırlar. Mezunlar, tamamlama zamanını, öncelikleri ve ilerlemeyi de göz önünde bulundurarak kendi öğrenme ve gelişimlerini yönetebilmelidir.    X
10. Platformlar, gömülü mikro-sensörlerden yüksek performanslı öbeklere ve dağıtık bulutlara kadar değişebilir. Bilgisayar uygulamaları modern yaşamın neredeyse bütün yönleri üzerinde etkilidir. Mezunlar hesaplamada var olan bütün imkanlar üzerinde bir anlayışa sahip olmalıdır.  X  
11. Mezunlar, hesaplamanın birçok farklı alanla etkileşim içerisinde olduğunu anlamalıdır. Birçok problem için çözümler hem hesaplama becerileri hem de alan bilgisi gerektirir. Bu nedenle, mezunlar kariyerleri boyunca farklı alanlardaki uzmanlarla iletişim kurmalı ve onlardan öğrenmelidir.    X
12. Mezunlar, uzman düzeyinde gerekli olan bilgi birikimlerini geliştirmeli ve bilimsel yöntemleri bilimsel problemleri çözmek için kullanabilmelidir. Mezunlar özgün araştırma tanımlayabilmeli ve yürütebilmelidir.    X
13. Mezunlar, bilgisayar bilimlerinde verilecek bir dersin planını yapabilmeli ve dersi verebilmelidir.  X  

*1 En düşük, 2 Düşük, 3 Orta, 4 Yüksek, 5 Çok yüksek