Repositorio de aprendizaje progresivo de Machine Learning con notebooks prácticos en Python.
MACHINE_LEARNING/
│
├── README.md
├── requirements.txt
├── main.py
│
├── data/ ← datasets de laboratorios
│ └── concrete.csv
│
└── notebooks/ ← laboratorios y proyecto final
├── 01-regresion-lineal/
├── 02-regresion-logistica/
├── 03-regresion-logistica-gd/
├── 04-mlp-capas-fijas/
├── 05-mlp-matricial/
├── 06-metodos-supervisados/
└── 07-proyecto-final/
└── data/ ← datasets específicos del proyecto
├── adult.csv
└── housing.csv
| # | Laboratorio | Temas | Dataset |
|---|---|---|---|
| 01 | Regresión Lineal | OLS, estandarización, polinomial, sesgo-varianza | data/concrete.csv |
| 02 | Regresión Logística | OLS vs logística, sigmoide, outliers, métricas de clasificación | Sintético (make_classification) |
| 03 | Logística con Gradient Descent | BCE, gradiente vectorizado, GD manual, clase con API sklearn | Sintético (NumPy) |
| 04 | MLP desde Cero | Forward pass, backpropagation escalar, SGD, Early Stopping, feature scaling | Breast Cancer (sklearn) |
| 05A | MLP Matricial — CCE | MLP vectorizado, ReLU, Softmax, CCE, inicializaciones (Normal/Xavier/He) | Sintético (make_moons) |
| 05B | MLP Matricial — MSE | MLP vectorizado, regresión, identidad, MSE, superficie 3D | Sintético (NumPy) |
| 06 | Métodos Supervisados | LDA, SVM, KNN, Árboles, Random Forest, XGBoost; impacto de normalización en clasificación y regresión | Wine & California Housing (sklearn) |
| Entrega | Notebook | Temas | Datasets |
|---|---|---|---|
| Parcial | Entrega Parcial | EDA, preprocesamiento, regresión lineal y logística con GD desde cero | adult.csv, housing.csv |
| Final | — | MLP configurable, comparación con modelos lineales | adult.csv, housing.csv |
git clone https://github.com/tu-usuario/MACHINE_LEARNING.git
cd MACHINE_LEARNING
pip install -r requirements.txt
jupyter notebookReemplaza github.com por githubtocolab.com en la URL de cualquier notebook,
o haz clic en el enlace y luego en "Open in Colab".
Para el proyecto final, sube la carpeta
07-proyecto-final/data/a tu entorno de Colab o monta tu Google Drive antes de ejecutar.
numpy>=1.24.0
pandas>=2.0.0
matplotlib>=3.7.0
scikit-learn>=1.3.0
xgboost>=2.0.0
plotly>=5.0.0
jupyter>=1.0.0
notebook>=7.0.0Ver requirements.txt para la lista completa.
- Los laboratorios 01–06 son ejercicios guiados con celdas
# TODOy análisis de resultados. - El lab 05 usa el patrón Strategy para intercambiar inicializaciones sin duplicar código.
- El lab 06 compara algoritmos clásicos de sklearn y XGBoost, analizando qué modelos son sensibles a la escala y cuáles son invariantes.
- El proyecto final (07) implementa pipelines completos sobre datos reales con clases en NumPy.
- Los datasets de laboratorio están en
data/; los del proyecto ennotebooks/07-proyecto-final/data/.