Machine Learning
Comprehensive machine learning skill covering the full ML lifecycle from experimentation to production deployment.
When to Use This Skill
- Building machine learning pipelines
- Feature engineering and data preprocessing
- Model training, evaluation, and selection
- Hyperparameter tuning and optimization
- Model deployment and serving
- ML experiment tracking and versioning
- Production ML monitoring and maintenance
ML Development Lifecycle
1. Problem Definition
Classification Types:
- Binary classification (spam/not spam)
- Multi-class classification (image categories)
- Multi-label classification (document tags)
- Regression (price prediction)
- Clustering (customer segmentation)
- Ranking (search results)
- Anomaly detection (fraud detection)
Success Metrics by Problem Type:
| Problem Type |
Primary Metrics |
Secondary Metrics |
| Binary Classification |
AUC-ROC, F1 |
Precision, Recall, PR-AUC |
| Multi-class |
Macro F1, Accuracy |
Per-class metrics |
| Regression |
RMSE, MAE |
R², MAPE |
| Ranking |
NDCG, MAP |
MRR |
| Clustering |
Silhouette, Calinski-Harabasz |
Davies-Bouldin |
2. Data Preparation
Data Quality Checks:
- Missing value analysis and imputation strategies
- Outlier detection and handling
- Data type validation
- Distribution analysis
- Target leakage detection
Feature Engineering Patterns:
- Numerical: scaling, binning, log transforms, polynomial features
- Categorical: one-hot, target encoding, frequency encoding, embeddings
- Temporal: lag features, rolling statistics, cyclical encoding
- Text: TF-IDF, word embeddings, transformer embeddings
- Geospatial: distance features, clustering, grid encoding
Train/Test Split Strategies:
- Random split (standard)
- Stratified split (imbalanced classes)
- Time-based split (temporal data)
- Group split (prevent data leakage)
- K-fold cross-validation
3. Model Selection
Algorithm Selection Guide:
| Data Size |
Problem |
Recommended Models |
| Small (<10K) |
Classification |
Logistic Regression, SVM, Random Forest |
| Small (<10K) |
Regression |
Linear Regression, Ridge, SVR |
| Medium (10K-1M) |
Classification |
XGBoost, LightGBM, Neural Networks |
| Medium (10K-1M) |
Regression |
XGBoost, LightGBM, Neural Networks |
| Large (>1M) |
Any |
Deep Learning, Distributed training |
| Tabular |
Any |
Gradient Boosting (XGBoost, LightGBM, CatBoost) |
| Images |
Classification |
CNN, ResNet, EfficientNet, Vision Transformers |
| Text |
NLP |
Transformers (BERT, RoBERTa, GPT) |
| Sequential |
Time Series |
LSTM, Transformer, Prophet |
4. Model Training
Hyperparameter Tuning:
- Grid Search: exhaustive, good for small spaces
- Random Search: efficient, good for large spaces
- Bayesian Optimization: smart exploration (Optuna, Hyperopt)
- Early stopping: prevent overfitting
Common Hyperparameters:
| Model |
Key Parameters |
| XGBoost |
learning_rate, max_depth, n_estimators, subsample |
| LightGBM |
num_leaves, learning_rate, n_estimators, feature_fraction |
| Random Forest |
n_estimators, max_depth, min_samples_split |
| Neural Networks |
learning_rate, batch_size, layers, dropout |
5. Model Evaluation
Evaluation Best Practices:
- Always use held-out test set for final evaluation
- Use cross-validation during development
- Check for overfitting (train vs validation gap)
- Evaluate on multiple metrics
- Analyze errors qualitatively
Handling Imbalanced Data:
- Resampling: SMOTE, undersampling
- Class weights: weighted loss functions
- Threshold tuning: optimize decision threshold
- Evaluation: use PR-AUC over ROC-AUC
6. Production Deployment
Model Serving Patterns:
- REST API (Flask, FastAPI, TF Serving)
- Batch inference (scheduled jobs)
- Streaming (real-time predictions)
- Edge deployment (mobile, IoT)
Production Considerations:
- Latency requirements (p50, p95, p99)
- Throughput (requests per second)
- Model size and memory footprint
- Fallback strategies
- A/B testing framework
7. Monitoring & Maintenance
What to Monitor:
- Prediction latency
- Input feature distributions (data drift)
- Prediction distributions (concept drift)
- Model performance metrics
- Error rates and types
Retraining Triggers:
- Performance degradation below threshold
- Significant data drift detected
- Scheduled retraining (daily, weekly)
- New training data available
MLOps Best Practices
Experiment Tracking
Track for every experiment:
- Code version (git commit)
- Data version (hash or version ID)
- Hyperparameters
- Metrics (train, validation, test)
- Model artifacts
- Environment (packages, versions)
Model Versioning
models/
├── model_v1.0.0/
│ ├── model.pkl
│ ├── metadata.json
│ ├── requirements.txt
│ └── metrics.json
├── model_v1.1.0/
└── model_v2.0.0/
CI/CD for ML
Continuous Integration:
- Data validation tests
- Model training tests
- Performance regression tests
Continuous Deployment:
- Staging environment validation
- Shadow mode testing
- Gradual rollout (canary)
- Automatic rollback
Reference Files
For detailed patterns and code examples, load reference files as needed:
references/preprocessing.md - Data preprocessing patterns and feature engineering techniques
references/model_patterns.md - Model architecture patterns and implementation examples
references/evaluation.md - Comprehensive evaluation strategies and metrics
Integration with Other Skills
- performance - For optimizing inference latency
- testing - For ML-specific testing patterns
- database-optimization - For feature store queries
- debugging - For model debugging and error analysis
1---2name: machine-learning3description: Machine learning development patterns, model training, evaluation, and4 deployment. Use when building ML pipelines, training models, feature engineering,5 model evaluation, or deploying ML systems to production.6author: Joseph OBrien7status: unpublished8updated: '2025-12-23'9version: 1.0.110tag: skill11type: skill12---1314# Machine Learning1516Comprehensive machine learning skill covering the full ML lifecycle from experimentation to production deployment.1718## When to Use This Skill1920- Building machine learning pipelines21- Feature engineering and data preprocessing22- Model training, evaluation, and selection23- Hyperparameter tuning and optimization24- Model deployment and serving25- ML experiment tracking and versioning26- Production ML monitoring and maintenance2728## ML Development Lifecycle2930### 1. Problem Definition3132**Classification Types:**3334- Binary classification (spam/not spam)35- Multi-class classification (image categories)36- Multi-label classification (document tags)37- Regression (price prediction)38- Clustering (customer segmentation)39- Ranking (search results)40- Anomaly detection (fraud detection)4142**Success Metrics by Problem Type:**4344| Problem Type | Primary Metrics | Secondary Metrics |45|--------------|-----------------|-------------------|46| Binary Classification | AUC-ROC, F1 | Precision, Recall, PR-AUC |47| Multi-class | Macro F1, Accuracy | Per-class metrics |48| Regression | RMSE, MAE | R², MAPE |49| Ranking | NDCG, MAP | MRR |50| Clustering | Silhouette, Calinski-Harabasz | Davies-Bouldin |5152### 2. Data Preparation5354**Data Quality Checks:**5556- Missing value analysis and imputation strategies57- Outlier detection and handling58- Data type validation59- Distribution analysis60- Target leakage detection6162**Feature Engineering Patterns:**6364- Numerical: scaling, binning, log transforms, polynomial features65- Categorical: one-hot, target encoding, frequency encoding, embeddings66- Temporal: lag features, rolling statistics, cyclical encoding67- Text: TF-IDF, word embeddings, transformer embeddings68- Geospatial: distance features, clustering, grid encoding6970**Train/Test Split Strategies:**7172- Random split (standard)73- Stratified split (imbalanced classes)74- Time-based split (temporal data)75- Group split (prevent data leakage)76- K-fold cross-validation7778### 3. Model Selection7980**Algorithm Selection Guide:**8182| Data Size | Problem | Recommended Models |83|-----------|---------|-------------------|84| Small (<10K) | Classification | Logistic Regression, SVM, Random Forest |85| Small (<10K) | Regression | Linear Regression, Ridge, SVR |86| Medium (10K-1M) | Classification | XGBoost, LightGBM, Neural Networks |87| Medium (10K-1M) | Regression | XGBoost, LightGBM, Neural Networks |88| Large (>1M) | Any | Deep Learning, Distributed training |89| Tabular | Any | Gradient Boosting (XGBoost, LightGBM, CatBoost) |90| Images | Classification | CNN, ResNet, EfficientNet, Vision Transformers |91| Text | NLP | Transformers (BERT, RoBERTa, GPT) |92| Sequential | Time Series | LSTM, Transformer, Prophet |9394### 4. Model Training9596**Hyperparameter Tuning:**9798- Grid Search: exhaustive, good for small spaces99- Random Search: efficient, good for large spaces100- Bayesian Optimization: smart exploration (Optuna, Hyperopt)101- Early stopping: prevent overfitting102103**Common Hyperparameters:**104105| Model | Key Parameters |106|-------|---------------|107| XGBoost | learning_rate, max_depth, n_estimators, subsample |108| LightGBM | num_leaves, learning_rate, n_estimators, feature_fraction |109| Random Forest | n_estimators, max_depth, min_samples_split |110| Neural Networks | learning_rate, batch_size, layers, dropout |111112### 5. Model Evaluation113114**Evaluation Best Practices:**115116- Always use held-out test set for final evaluation117- Use cross-validation during development118- Check for overfitting (train vs validation gap)119- Evaluate on multiple metrics120- Analyze errors qualitatively121122**Handling Imbalanced Data:**123124- Resampling: SMOTE, undersampling125- Class weights: weighted loss functions126- Threshold tuning: optimize decision threshold127- Evaluation: use PR-AUC over ROC-AUC128129### 6. Production Deployment130131**Model Serving Patterns:**132133- REST API (Flask, FastAPI, TF Serving)134- Batch inference (scheduled jobs)135- Streaming (real-time predictions)136- Edge deployment (mobile, IoT)137138**Production Considerations:**139140- Latency requirements (p50, p95, p99)141- Throughput (requests per second)142- Model size and memory footprint143- Fallback strategies144- A/B testing framework145146### 7. Monitoring & Maintenance147148**What to Monitor:**149150- Prediction latency151- Input feature distributions (data drift)152- Prediction distributions (concept drift)153- Model performance metrics154- Error rates and types155156**Retraining Triggers:**157158- Performance degradation below threshold159- Significant data drift detected160- Scheduled retraining (daily, weekly)161- New training data available162163## MLOps Best Practices164165### Experiment Tracking166167Track for every experiment:168169- Code version (git commit)170- Data version (hash or version ID)171- Hyperparameters172- Metrics (train, validation, test)173- Model artifacts174- Environment (packages, versions)175176### Model Versioning177178```179models/180├── model_v1.0.0/181│ ├── model.pkl182│ ├── metadata.json183│ ├── requirements.txt184│ └── metrics.json185├── model_v1.1.0/186└── model_v2.0.0/187```188189### CI/CD for ML1901911. **Continuous Integration:**192 - Data validation tests193 - Model training tests194 - Performance regression tests1951962. **Continuous Deployment:**197 - Staging environment validation198 - Shadow mode testing199 - Gradual rollout (canary)200 - Automatic rollback201202## Reference Files203204For detailed patterns and code examples, load reference files as needed:205206- **`references/preprocessing.md`** - Data preprocessing patterns and feature engineering techniques207- **`references/model_patterns.md`** - Model architecture patterns and implementation examples208- **`references/evaluation.md`** - Comprehensive evaluation strategies and metrics209210## Integration with Other Skills211212- **performance** - For optimizing inference latency213- **testing** - For ML-specific testing patterns214- **database-optimization** - For feature store queries215- **debugging** - For model debugging and error analysis