# Ghana Indigenous Weather Forecasting — Rainfall Prediction
A friendly, high-level overview of this repository to help you orient quickly. This README focuses on what’s here and how it’s organized, not on running code. For execution details, see the QUICKSTART/README files inside each implementation folder.
## What This Repo Contains
- A supervised learning project for daily rainfall prediction, built around multiple incremental implementations (v1 → v4) exploring preprocessing, modeling (notably CatBoost), interpretability, and deployment artifacts.
- A starter notebook for exploratory work, plus CSV datasets provided by the challenge.
- Generated outputs (models, submissions, interpretability reports) saved per implementation.
## Top-Level Files
- Indigenous_Weather_Forecasting-Starter_Notebook.ipynb — quick EDA/prototyping entry point.
- train.csv, test.csv — challenge datasets.
- SampleSubmission.csv — required output format sample.
- manifest-*.json — environment/artifact metadata (name may vary).
## Implementations (Folders)
Each implementation is a self-contained take on the pipeline. They follow a similar structure and evolve in complexity and features.
- rainfall_prediction/
- Early pipeline with `main.py` and `train_pipeline.py`, plus `deployment.py` and `interpretability.py`.
- Requirements: requirements_core.txt and requirements.txt.
- Outputs in rainfall_prediction/outputs/ and rainfall_prediction/outputs_/.
- rainfall_prediction_2/
- Refined structure with `train.py`, `config.py`, `models.py`, `preprocessing.py`, `deployment.py`, and `interpretability.py`.
- Example inference script: `example_inference.py`.
- Outputs in rainfall_prediction_2/outputs/ and rainfall_prediction_2/outputs_/.
- rainfall_prediction_3/
- Adds `resampling.py` and additional reports/notes (e.g., ARCHITECTURE.md, PROJECT_SUMMARY.md).
- Similar module layout: `train.py`, `config.py`, `models.py`, `preprocessing.py`, `interpretability.py`, `deployment.py`.
- rainfall_predi …