This project is a template implementation of a classification problem.
It can be quickly adapted to fit a regression task.
3 implementations are proposed:
- Neural network implemented with Keras
- xgboost implmented with xgboost
- Decision tree implemented with sklearn
There used to be a 4th one, Neural network implemented with TensorFlow, however since TF 2.0 it got all messed up...
The code was tested with Python 3.6.
$ python3 -m pip install --user --upgrade virtualenv
$ python3 -m virtualenv env
Sourcing the environment:
$ source ./env/bin/activate
pip3 install -r requirements.txt
In the data folder.
For each model in models
, the training is performed by running
train_model.py
.
For each model in models
, a trained model is saved under trained_model/model_name.save
.
An evaluation is performed on a test set at the end of each training.
It is also possible to use the trained model to make prediction
through the make_pred.py
.
Any model performs extremely well on the iris dataset ;-)