Mühendislik ve Doğa Bilimleri Fakültesi · Yazılım Mühendisliği (%30 İngilizce) · Lisans
Dersin Amacı
Bu dersin amacı Doğal Dil İşleme (DDİ) alanındaki temel kavramları ve teknikleri öğretmek, metin verisiyle çalışma becerilerini geliştirmek ve çeşitli DDİ uygulamalarını Python ve ilgili kütüphanelerle gerçekleştirmelerini sağlamaktır. Ayrıca, öğrencilerin dil modelleri, duygu analizi, metin özetleme, makine çevirisi ve chatbot geliştirme gibi konularda pratik yaparak, gerçek dünyadaki DDİ problemlerine yönelik çözümler üretebilmelerini hedeflemektedir.
Ders İçeriği
NLP'nin tanımı, kullanım alanları ve dilin yapısı (morfoloji, sözdizimi, anlambilim) anlatılacaktır. Python ve popüler NLP kütüphanelerinin (NLTK, spaCy, Hugging Face) temel kullanımı gösterilecektir. Metin verisinin tokenization, stopwords çıkarma, lemmatization ve stemming yöntemleriyle nasıl işleneceği öğretilir. Öğrenciler, Python ile metin ön işleme adımlarını uygulamalıdır. Bag of Words (BoW) ve TF-IDF yöntemleri ile metinleri sayısal verilere dönüştürme öğretilir. Word2Vec, GloVe ve FastText ile kelimeler arasındaki ilişkiler keşfedilir.Duygu analizi için lojistik regresyon ve Naive Bayes sınıflandırıcıları kullanılır. RNN, LSTM, GRU ve Transformer mimarileri tanıtılır. BERT, GPT, T5 gibi dil modellerinin temelleri ve Hugging Face ile kullanımları anlatılır. Türkçe NLP zorlukları ve Zemberek kütüphanesi kullanılarak Türkçe metinler üzerinde ön işleme işlemleri yapılır. Öğrenciler Türkçe metinler üzerinde uygulama yapar. İsim varlık tanıma (NER) ve kelime anlam çözümleme (WSD) yöntemleri öğretilir. spaCy ile NER modeli geliştirilerek, metinlerdeki varlıklar tanınır. Makine çevirisi yöntemleri (kural tabanlı, istatistiksel, nöral) ve Transformer tabanlı modeller öğretilir. MarianMT ile İngilizce-Türkçe çeviri uygulaması yapılır. Abstractive ve extractive özetleme yöntemleri ve TextRank algoritması anlatılır. Öğrenciler Türkçe haber metinleri üzerinde özetleme yapar. Kural tabanlı ve öğrenme tabanlı chatbotlar tanıtılır. Rasa ve DialoGPT kullanarak üniversite bilgilendirme chatbotu geliştirilir. Bilgi çıkarımı ve Transformer tabanlı soru-cevap sistemleri öğretilir. BERT ile soru-cevap uygulamaları yapılır. Büyük dil modelleri (GPT-4, LLaMA) ve NLP’deki etik sorunlar (yanlılık, yanlış bilgi) tartışılır. GPT-4 API kullanılarak metin üretimi yapılır. NLP projelerinde karşılaşılan zorluklar ve model değerlendirme metrikleri (Perplexity, BLEU, ROUGE, F1-score) öğretilir. Öğrenciler, projeler üzerinde model optimizasyonu yapar.Öğrenciler projelerini sunarak öğrendiklerini sergiler.
Zorunlu Kaynaklar
1-Jackson, P., & Moulinier, I. (2002). Natural language processing for online applications. Philadelphia: John Benjamins.
2- Hagiwara, M. (2021). Real-World Natural Language Processing: Practical applications with deep learning. Simon and Schuster.
3- Patel, A. A., & Arasanipalai, A. U. (2021). Applied Natural Language Processing in the Enterprise, O'Reilly Media, Inc..
Önerilen Kaynaklar
1- Indurkhya, N., & Damerau, F. J. (2010). Handbook of natural language processing. Chapman and Hall/CRC.
2- Manning, C., & Schutze, H. (1999). Foundations of statistical natural language processing. MIT press.
Açıklamalar
- Kısa sınav ve/veya ödev haftanın konuları ile ilgili olacaktır. 1 ödev/kısa sınav verilecektir.
- Uygulama kısmı için öğrencilerden dersin içeriğine uygun proje geliştirmesi ve geliştirilen projelerin öğrenciler tarafından 14. ve 15. haftalarda ders saatinde sunum olarak yapmaları beklenmektedir.
Kurallar
- Yoklama: Yönetmeliklere göre bir öğrenci toplam ders saatinin % 30’na devam etmemesi halinde dersten devamsızlık alır (DZ) ve başarısız olur.
- Akademik dürüstlük: İntihal, kopyalama gibi gayri ahlaki durumlarda İZÜ’nÜn ilgili yönetmeliği gereği disiplin soruşturması açılıp gerekli cezai müeyyidelere tabii olursunuz.
Dersin Öğrenme Çıktıları
- Doğal Dil İşleme alanının temel kavramlarını ve metin işleme süreçlerini açıklar.
- Metin verileri üzerinde ön işleme tekniklerini (tokenization, normalization, stemming, lemmatization) uygular.
- Metin sınıflandırma ve duygu analizi gibi DDİ problemleri için uygun makine öğrenmesi ve derin öğrenme yöntemlerini geliştirir.
- DDİ modellerinin performansını accuracy, precision, recall ve F1-score gibi metriklerle değerlendirir ve yorumlar.
- Gerçek dünya metin verileri üzerinde bir NLP projesi geliştirir, sonuçları analiz eder ve teknik olarak raporlar.
- Doğal dil işleme ve makine öğrenmesi sistemlerinde etik, gizlilik ve toplumsal etkileri dikkate alarak mühendislik çözümleri geliştirir.
Temel Alan Dağılımı
Öğretim Yöntem ve Teknikleri
Ölçme ve Değerlendirme
AKTS / İş Yükü
| Etkinlik | Sayı | Süre (saat) | Toplam İş Yükü |
|---|---|---|---|
| Ders Süresi (Sınav Haftası Dahil) | 16 | 3 | 48 |
| Sınıf Dışı Ders Çalışma Süresi | 0 | 0 | 0 |
| Ara Sınav | 0 | 0 | 0 |
| Kısa Sınav | 1 | 2 | 2 |
| Ödev | 1 | 6 | 6 |
| Uygulama | 1 | 10 | 10 |
| Final | 1 | 2 | 2 |
Ders Akışı
| Hafta | Konu | Ön Hazırlık |
|---|---|---|
| 1 | Doğal Dil İşlemeye Giriş | Ders notları |
| 2 | Dilbilimin esasları ve dil modelleri | Hafta 1 |
| 3 | Gramer ve Dil Modelleri | Hafta 2 |
| 4 | Biçimbilimsel Analiz | Hafta 3 |
| 5 | Sözdizimsel analiz | Hafta 4 |
| 6 | Doğal dil işlemede olasılık ve istatistiksel dil modelleme | Hafta 6 |
| 7 | Dokümanlardan bilgi çıkarımı | Hafta 6 |
| 8 | Vize | - |
| 9 | Bilgi alma ve bilgi çıkarımı prosedürleri | Hafta 7 |
| 10 | Doğal dil işleme için makine öğrenmesi | Hafta 9 |
| 11 | Metin önişleme | Hafta 10 |
| 12 | Metin sınıflandırma | Hafta 11 |
| 13 | N-gram tabanlı analiz, ZipF kanunu | Hafta 12 |
| 14 | Proje sunumları | Hafta 1 - 13 |
| 15 | Proje sunumları | Hafta 1 - 13 |
| 16 | Final sınavı | Hafta 1-14 |


