Code2Work Veri Bilimi / Makine Öğrenmesi programının ders notebook'ları. Derslerde işlenen kodların tamamı, modül ve sıra düzeninde. Kendi başına çalışıp pekiştirmek için.
Her notebook bir ders parçasına karşılık gelir; dosya adlarındaki
01-,02-ön ekleri işleniş sırasını verir.
| # | Modül | İçerik |
|---|---|---|
| 01 | Makine Öğrenmesine Giriş | ML nedir, öğrenme türleri, train/test split + scaling, overfitting, ilk model |
| 02 | Regresyon | Basit/çoklu/polinom regresyon, multicollinearity, Ridge/Lasso, metrikler |
| 03 | Sınıflandırma-1 | Logistic Regression (sigmoid, log-loss, threshold), KNN, confusion matrix, precision/recall/F1, ROC-AUC, sınıf dengesizliği |
| 04 | Sınıflandırma-2 | Naive Bayes, Decision Tree, Random Forest, SVM, model seçimi (CV, GridSearch) |
| 05 | NLP Temelleri | Ön işleme, tokenization/stemming, Bag-of-Words, TF-IDF |
| 06 | İleri NLP | Word2Vec, NER (spaCy), sentiment analizi, NLP proje, Türkçe NLP |
| 07 | Generative AI & LLM | LLM API, prompting, LangChain, output parser, tool use, LLM ile veri işleme |
| 08 | RAG & Vektör Veritabanları | Document loading/chunking, embeddings + ChromaDB, retrieval, RAG chatbot, RAG değerlendirme |
git clone https://github.com/Code2Work/machine-learning-files.git
cd machine-learning-files
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt
jupyter lab # veya: jupyter notebookBazı modüller ek tek-seferlik indirme ister:
python -m spacy download en_core_web_sm # 06 — NER için
# NLTK verisi (05-06) ilk çalıştırmada otomatik iner; sentence-transformers modeli de (06, 08) ilk kullanımda iner (~90MB)Modül 07 (GenAI) ve 08 (RAG)'da LLM'den cevap üreten hücreler bir OpenAI API key ister. (08'de embedding local çalışır — key'siz; sadece son cevap üretimi key ister.)
cp .env.example .env
# .env içine: OPENAI_API_KEY=sk-...- Key'i platform.openai.com'dan al (küçük bakiye + spending limit koy).
⚠️ .env'i ASLA commit etme —.gitignore'da. Anahtarını kimseyle paylaşma.- Modül 01–06 tamamen key'siz çalışır (sadece pandas/scikit-learn/NLP kütüphaneleri).
Notebook'lar derslerdeki haliyle, çıktılarıyla birlikte paylaşılmıştır — referans olsun diye. Kendin çalıştırıp deneyebilir, üzerine yazabilirsin.