This project classifies text messages using NLP preprocessing and Scikit-Learn ML Pipelines
The code is separated into 3 parts:
- ETL Pipeline
- (E) Load Data from CSV files, (T) Clean Data and (L) Save to Database
- data/process_data.py
- ML Pipeline
- Preprocess input text using NLP techniques + Train MultiOutputClassifier
- model/train_classifier.py
- Web Application
- Serve trained model in a Flask web application
- app/run.py
- Run ETL pipeline that cleans data and stores in database:
python data/process_data.py data/disaster_messages.csv data/disaster_categories.csv data/DisasterResponse.db
- Run ML pipeline that trains classifier and saves
python models/train_classifier.py data/DisasterResponse.db models/classifier.pkl
- Run Flask Web App that serves the trained model:
python app/run.py