GERİ DÖN

Ders Öğretim Planı


Dersin Kodu Dersin Adı Dersin Türü Yıl Yarıyıl AKTS Kredi
EYON110 Yapay Zeka, Algoritma ve Programlama Ders 1 2 4.00 2.00

Lisans


Türkçe


Bu dersin amacı, öğrencilere yapay zeka, algoritmalar ve programlama konularında güçlü bir temel sağlamaktır. Öğrenciler, veri yapıları ve algoritmalar ile problem çözme becerilerini geliştirirken, yapay zekanın temel kavramlarını ve makine öğrenmesi tekniklerini uygulamalı olarak öğreneceklerdir. Ayrıca, gerçek dünya problemlerine yönelik yapay zeka çözümleri geliştirmek için gerekli teorik ve pratik bilgiye sahip olacaklardır.


Dr. Öğr. Üyesi Gülsüm ŞANAL


1 Algoritma ve Programlama Becerisi: Algoritma tasarlayabilir ve Python programlama dili ile uygulamalar geliştirebilir.
2 Yapay Zeka Temellerini Anlama: Yapay zeka, makine öğrenmesi ve derin öğrenme kavramlarını kavrayabilir.
3 Veri İşleme ve Analiz Yapabilme: Büyük veri setlerini işleyebilir, analiz edebilir ve görselleştirebilir.
4 Makine Öğrenmesi Modelleri Geliştirme: Denetimli ve denetimsiz öğrenme teknikleriyle temel makine öğrenmesi modelleri oluşturabilir.
5 Derin Öğrenme ve Sinir Ağlarını Kullanma: Yapay sinir ağları, CNN ve RNN gibi modelleri uygulayabilir.
6 Doğal Dil İşleme (NLP) ve Görüntü İşleme Kullanımı: Metin ve görüntü verisi ile çalışabilir, temel NLP ve bilgisayarlı görü modelleri geliştirebilir.
7 Yapay Zeka Projesi Geliştirme: Gerçek dünya problemlerine yönelik yapay zeka tabanlı çözümler üretebilir ve model değerlendirmesi yapabilir.
8 Etik ve Toplumsal Sorumluluk Bilinci: Yapay zekanın etik boyutlarını ve topluma olan etkilerini değerlendirebilir.
9 Açık Kaynak Kütüphaneleri ve Araçları Kullanma: Scikit-learn, TensorFlow, Keras, PyTorch gibi popüler yapay zeka kütüphaneleriyle uygulamalar geliştirebilir.
10 Eleştirel Düşünme ve Problem Çözme Yeteneği: Yapay zeka ve algoritmalar ile optimizasyon problemlerini çözebilir.

Birinci Öğretim


• Programlamaya Giriş (Python, Java veya C gibi dillerde temel programlama bilgisi) • Matematiksel Temeller (Lineer cebir, olasılık, istatistik) • Algoritmalar ve Veri Yapıları • Temel İstatistik ve Olasılık Teorisi


• Uygulamalı Çalışmalar: Dersin daha verimli olması için öğrencilerin her hafta küçük projeler veya uygulamalar yapmaları önerilir. • Proje Odaklı Yaklaşım: Öğrencilerin dönem boyunca bir yapay zeka projesi geliştirmeleri teşvik edilmelidir. • Güncel Kaynaklar ve Makaleler: Yapay zeka hızla gelişen bir alan olduğundan, güncel akademik makaleler ve sektördeki yenilikler takip edilmelidir. • Açık Kaynak Kütüphaneler ve Araçlar: Öğrencilerin Scikit-learn, TensorFlow, Keras, PyTorch, OpenCV gibi popüler yapay zeka kütüphanelerini aktif kullanmaları önerilir. • Etik ve Toplumsal Etkiler: Yapay zekanın etik boyutu, veri gizliliği ve toplumsal etkileri konularına ders içinde yer verilmelidir. • Çapraz Disipliner Yaklaşım: Matematik, istatistik ve bilişim bilimleri ile entegre bir eğitim modeli benimsenmelidir.


Bu ders, yapay zeka, algoritmalar ve programlama konularını kapsamlı bir şekilde ele alır. Ders kapsamında; algoritma tasarımı, veri yapıları, makine öğrenmesi, derin öğrenme, doğal dil işleme, görüntü işleme ve yapay zeka optimizasyon teknikleri gibi konular işlenir. Öğrenciler, Python programlama dili ve popüler yapay zeka kütüphaneleri (NumPy, Pandas, Scikit-learn, TensorFlow, Keras, OpenCV vb.) kullanarak pratik uygulamalar gerçekleştireceklerdir. Ayrıca, yapay zeka projelerinin geliştirilmesi, model değerlendirme yöntemleri ve etik yapay zeka konuları ele alınacaktır.


Hafta Teorik [OgretimYontemVeTeknikleri] [OnHazirlik]
1 Giriş ve Temel Kavramlar • Yapay zeka (YZ) nedir? Tarihçesi ve uygulama alanları • Algoritma ve programlamanın temel kavramları • Dersin işleyişi ve kaynakların tanıtımı Anlatım (Derse giriş ve temel kavramların açıklanması) Soru-Cevap (Öğrencilerin konuyla ilgili önceki bilgilerini anlamak) Tartışma (Yapay zekanın toplum üzerindeki etkileri) • Yapay zeka ve algoritma kavramlarını araştırma • Ders materyallerini ve izlencesini inceleme
2 Python ile Programlamaya Giriş • Python’un temel yapıları (değişkenler, veri tipleri, operatörler) • Koşullu ifadeler ve döngüler • Algoritma mantığı ve akış şemaları • Uygulamalı Anlatım (Kod örnekleri ile birlikte) • Bireysel Çalışma (Öğrencilere basit kod yazma ödevleri) • Anlamlı Öğrenme (Öğrencilerle birlikte basit algoritmalar tasarlama) • Python’un temel sözdizimini inceleme • Değişkenler, veri tipleri ve operatörler hakkında okuma
3 Veri Yapıları ve Algoritmalar • Listeler, kümeler, sözlükler • Fonksiyonlar ve modüler programlama • Problem Çözme (Algoritma tasarlama) • Anlatım + Uygulama (Listeler, kümeler, sözlükler) • Örnek Çalışmalar (Sıralama ve arama algoritmaları) • Algoritma ve veri yapılarının temel kavramlarını gözden geçirme • Python’da listeler ve döngülerle ilgili alıştırmalar yapma
4 Yapay Zeka Temelleri • Makine öğrenmesi ve derin öğrenmeye giriş • YZ’nin etik ve sosyal etkileri • Temel istatistik ve olasılık bilgisi • Sunum + Video İzleme (YZ tarihçesi ve gelişimi) • Tartışma (YZ’nin etik ve sosyal etkileri) • Grup Çalışması (Makine öğrenmesi ile ilgili temel araştırma yapma) • Yapay zeka ve makine öğrenmesi kavramlarını inceleme • YZ’nin günümüzdeki kullanım alanlarına dair makaleler okuma
5 Veri Ön İşleme ve Analiz • Veri toplama ve temizleme yöntemleri • Pandas ve NumPy kullanımı • Veri görselleştirme (Matplotlib, Seaborn) • Uygulamalı Anlatım (Pandas ve NumPy kullanımı) • Örnek Çalışmalar (Veri temizleme teknikleri) • Grup Çalışması (Kendi veri setlerini seçip analiz etme) • Pandas ve NumPy kütüphaneleri hakkında temel okuma • Veri analizi için kullanılan istatistiksel yöntemleri inceleme
6 Makine Öğrenmesi Temelleri • Denetimli ve denetimsiz öğrenme • Regresyon ve sınıflandırma modelleri • Scikit-learn kütüphanesi ile uygulamalar • Proje Bazlı Öğrenme (Basit bir ML modeli oluşturma) • Deneysel Öğrenme (Farklı algoritmaların performanslarını karşılaştırma) • Soru-Cevap (Model doğruluk oranlarını analiz etme) • Makine öğrenmesi algoritmalarına giriş yapma • Scikit-learn dokümantasyonunu inceleme
7 Derin Öğrenmeye Giriş • Yapay sinir ağlarının temel prensipleri • TensorFlow ve Keras’a giriş • Basit bir sinir ağı modeli oluşturma • Anlatım + Kodlama (Sinir ağlarının temelleri) • Simülasyon (Basit bir sinir ağı modelinin eğitilmesi) • Bireysel Çalışma (Model parametrelerini değiştirme ve test etme) • TensorFlow ve Keras hakkında okuma yapma • Sinir ağlarının çalışma prensiplerini inceleme
8 Ara Sınav
9 Doğal Dil İşleme (NLP) • Metin verisi işleme ve analiz etme • Tokenizasyon, lemmatization, stop words gibi temel kavramlar • NLP’de kullanılan modeller (TF-IDF, Word2Vec, transformers) • Anlatım + Uygulama (Metin işleme teknikleri) • Örnek Çalışmalar (Basit bir metin sınıflandırma modeli) • Grup Çalışması (Gerçek dünya metin verisi ile NLP projesi geliştirme) • NLP’nin temel bileşenleri hakkında okuma yapma • Tokenizasyon ve kelime gömme (word embedding) konularını inceleme
10 Optimizasyon Algoritmaları • Genetik algoritmalar • Karınca kolonisi ve sürü zekası • Optimizasyon problemleri için uygulamalar • Anlatım + Örnek Çalışmalar (Genetik algoritmalar, sürü zekası) • Problem Çözme (Bir optimizasyon problemini ele alma) • Grup Çalışması (Optimizasyon tekniklerini test etme) • Optimizasyon algoritmalarına genel bakış • Genetik algoritmalar ve yapay sinir ağları ilişkisi hakkında okuma
11 Yapay Zeka Uygulamaları ve Proje Yönetimi • Yapay zeka projelerinde veri seti seçimi • Model değerlendirme ve iyileştirme yöntemleri • Büyük veri ve yapay zeka ilişkisi • Proje Bazlı Öğrenme (YZ projelerinin aşamalarını anlama) • Vaka Çalışması (Gerçek dünyadan örnek projeler) • Grup Tartışması (Veri seti seçimi ve model performansı) • AI projelerinin yönetimi hakkında araştırma yapma • Veri seti seçiminin önemini kavrama
12 Derin Öğrenmede İleri Konular • Transfer öğrenme ve önceden eğitilmiş modeller • GAN’ler (Generative Adversarial Networks) • Reinforcement Learning’e giriş • Simülasyon (GAN ve transfer öğrenme teknikleri) • Örnek Çalışmalar (Önceden eğitilmiş bir modelin kullanımı) • Tartışma (Reinforcement Learning hakkında görüş paylaşımı) • GAN’ler ve transfer öğrenme konularını okuma • TensorFlow ile ileri seviye model eğitim tekniklerini inceleme
13 Proje Çalışmaları ve Uygulamalar • Küçük çaplı bir yapay zeka projesi geliştirme • Model eğitme, değerlendirme ve sonuç analizi • Sunum hazırlıkları ve geri bildirimler • Sunumlar • Geri Bildirim ve Değerlendirme • Genel Tekrar • Proje çalışmalarını tamamlama • Model analizleri ve sunum materyallerini hazırlama
14 Final Değerlendirme ve Kapanış • Öğrenci projelerinin sunulması • Genel tekrar ve soru-cevap oturumu • Yapay zeka alanındaki kariyer fırsatları ve ileri seviye kaynak önerileri • Sunumlar • Geri Bildirim ve Değerlendirme • Genel Tekrar • Proje çalışmalarını tamamlama • Model analizleri ve sunum materyallerini hazırlama

1. “Yapay Zeka: Makine Öğrenmesi ve Derin Öğrenme” – Sadık Güler 2. “Python ile Makine Öğrenmesi” – Uğur Güneş 3. “Veri Bilimi için Python ve Yapay Zeka” – Afşin Taşkın, Serkan Aksoy 4. “Algoritma ve Programlama Mantığı” – Ahmet Kadir Çelik 5. “Matematiksel Düşünme ve Algoritmalar” – Haluk Öztürk



Yarıyıl (Yıl) İçi Etkinlikleri Adet Değer
Ara Sınav 1 100
Toplam 100
Yarıyıl (Yıl) Sonu Etkinlikleri Adet Değer
Rapor Sunma 1 30
Proje Sunma 1 30
Proje Tasarımı/Yönetimi 1 40
Toplam 100
Yarıyıl (Yıl) İçi Etkinlikleri 40
Yarıyıl (Yıl) Sonu Etkinlikleri 60

Bu dersin staj gereksinimi doğrudan bulunmamakla birlikte, öğrencilerin yapay zeka ve programlama alanlarında uygulamalı deneyim kazanabilmeleri için staj yapmaları önerilir. Özellikle teknoloji şirketleri, yapay zeka laboratuvarları ve araştırma merkezlerinde staj yaparak gerçek dünya problemleri üzerinde çalışma fırsatı bulabilirler. Ayrıca, Kaggle gibi platformlarda veri bilimi yarışmalarına katılarak veya açık kaynak projelerde çalışarak deneyimlerini artırabilirler.


Etkinlikler Sayısı Süresi (saat) Toplam İş Yükü (saat)
Ara Sınav 1 7 7
Final Sınavı 1 14 14
Beyin Fırtınası 14 3 42
Proje Sunma 2 6 12
Bireysel Çalışma 14 2 28
Toplam İş Yükü (saat) 103

PÇ 1 PÇ 2 PÇ 3 PÇ 4 PÇ 5 PÇ 6 PÇ 7 PÇ 8 PÇ 9 PÇ 10 PÇ 11 PÇ 12 PÇ 13 PÇ 14 PÇ 15
ÖÇ 1 2 3 4 5 5 5 5 5 5 5 5 5 5 5 5
ÖÇ 2 1 2 3 3 3 4 4 4 4 5 5 5 5 5 5
ÖÇ 3 1 2 2 3 3 3 3 4 4 4 5 5 5 5 5
ÖÇ 4 1 2 2 3 3 3 3 3 3 4 4 4 5 5 5
ÖÇ 5 1 1 1 2 2 2 2 3 3 3 4 4 4 5 5
ÖÇ 6 1 1 1 2 2 2 2 2 2 3 3 3 4 5 5
ÖÇ 7 1 1 1 2 2 2 2 3 3 3 3 4 4 5 5
ÖÇ 8 1 1 1 2 3 3 3 3 4 4 4 4 5 5 5
ÖÇ 9 1 1 1 2 2 3 3 3 4 4 4 4 5 5 5
ÖÇ 10 1 1 1 2 2 2 3 3 4 4 4 4 5 5 5
* Katkı Düzeyi : 1 Çok düşük 2 Düşük 3 Orta 4 Yüksek 5 Çok yüksek