How artyomturkoff/imdb_sentiment_analysis works
This repository is an IMDb binary sentiment-analysis project. Its main workflow downloads IMDb reviews, selects reproducible train/validation/test subsets, trains one of two classical ML pipelines, evaluates and saves the run, then uses a saved pipeline to predict a review. Separate documented workflows visualize and compare saved metrics and export them to CSV. The training and prediction wiring is supported by sampled source; visualization and comparison are documented capabilities, but their implementation was not sampled.
Main entry points: train_model.py Train model · data_loader.py IMDb data loader · metrics Saved metrics · visualise_model.py Visualize run
Components 18
Data preparation
- Generate subset
scripts/generate_subset.py - IMDb data loader
src/data_loader.py - Split indices
Model training
- Train model
scripts/train_model.py - Text preprocessing
src/preprocess.py - Model pipelines
src/features.py - Saved pipelines
models
Results analysis
- Evaluation metrics
src/evaluate.py - Saved metrics
results/metrics - Visualize run
scripts/visualise_model.py - Compare runs
scripts/compare_results.py - Export metrics CSV
scripts/export_results_csv.py - Result figures
results/figures - Metrics summary CSV
results/metrics_summary.csv
Review prediction
- Review prediction demo
demo/predict_review.py - Prediction service
src/predict.py
Other components
- Project user
- Hugging Face IMDb
Connections 24
- Project user → Generate subset: requests split
- Generate subset → IMDb data loader: builds subset
- IMDb data loader → Hugging Face IMDb: downloads reviews
- IMDb data loader → Split indices: writes indices
- Project user → Train model: starts training
- Train model → IMDb data loader: loads subset
- IMDb data loader → Split indices: reads indices
- Train model → Model pipelines: creates pipeline
- Model pipelines → Text preprocessing: uses preprocessor
- Train model → Evaluation metrics: scores model
- Train model → Saved pipelines: saves pipeline
- Train model → Saved metrics: saves metrics
- Project user → Review prediction demo: provides review
- Review prediction demo → Prediction service: requests prediction
- Prediction service → Saved pipelines: loads pipeline
- Project user → Visualize run: requests plots
- Visualize run → Saved metrics: reads run metrics
- Visualize run → Result figures: writes figures
- Project user → Compare runs: requests comparison
- Compare runs → Saved metrics: reads saved runs
- Compare runs → Result figures: writes comparison plot
- Project user → Export metrics CSV: requests export
- Export metrics CSV → Saved metrics: reads saved metrics
- Export metrics CSV → Metrics summary CSV: writes CSV