A curated collection of machine learning studies covering data preprocessing, regression, classification, clustering, ensemble methods, natural language processing, and neural networks.
This repository restructures and improves a series of learning exercises into reproducible, leakage-safe examples with English documentation, consistent evaluation, deterministic random seeds, and datasets bundled with scikit-learn or generated inside the scripts.
| Area | Study | Main concepts |
|---|---|---|
| Data preprocessing | Leakage-safe preprocessing pipeline | Imputation, encoding, scaling, pipelines |
| Regression | Linear and polynomial regression | Underfitting, non-linearity, RMSE and R² |
| Regression | Regression model comparison | Linear, SVR, tree and forest models |
| Classification | Iris model benchmark | Six classifiers and cross-validation |
| Classification | Random Forest on Wine | OOB evaluation and feature importance |
| Classification | SVM margin demonstration | Hyperplanes, margins and support vectors |
| Clustering | K-Means customer segmentation | Elbow method and silhouette score |
| Ensemble learning | Bagging vs Random Forest | Tree ensembles and comparative evaluation |
| NLP | Turkish sentiment classification | TF-IDF, Naive Bayes and linear SVM |
| Neural networks | Neural network regression | MLP architecture comparison |
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
python 03_classification/iris_model_benchmark.pyScripts use public datasets included with scikit-learn or deterministic
synthetic data. Generated figures are written to assets/figures/.
- Preprocessing is learned from training data only.
- Classification splits are stratified where appropriate.
- Random seeds make results reproducible.
- Cross-validation complements hold-out evaluation.
- Multiple metrics are reported instead of accuracy alone.
- Small demonstrations are labelled as educational examples rather than production benchmarks.
These studies reflect my continuing work across machine learning, learning analytics, educational data mining, and Explainable AI. They are presented as an evolving technical portfolio rather than a packaged library.
Code in this repository is available under the MIT License. Datasets loaded from scikit-learn retain their respective source terms.