- Final update: 2018 Oct
- All right reserved @ Jaewook Kang 2018
The aim of this repository is to introduce an exemplary TF project in practice.
We show the example with respect to MNIST classification by Lenet5.
This project is composed of several .py
files,
each of which undertakes single role and responsibility
according to the OOP philosophy.
- data_loader.py : Preparing and feeding the dataset in batchwise by using tf.data
- model_builder.py : Building a model in tensorflow computational graph.
- model_config.py : Specifying a configulation for the model
- trainer.py : Training the model by importing the dataloader and the model_builer
- train_config.py : Including a configulation for the training
- eval.py : Evaluating the model with respect to test dataset by loading a ckpt
Training
python ./tf_module/trainer.py
Inference
python ./tfmodule/eval.py
./tfmodule/
├── data
│ └── mnist
├── export
│ └── tf_logs
├── data_loader.py
├── eval.py
├── model_builder.py
├── model_config.py
├── testcodes
│ └── test_dataloader.py
├── train_config.py
└── trainer.py
- Tensorflow >=1.9
- Python2 <= 2.7.12
- Python3 <= 3.6.0
- Jaewook Kang, Tensorflow Practical Project Configuration
- Jongwook Choi and Beomjun Shine, Toward Best Practice of Tensorflow Code Pattern
- Issues: report issues, bugs, and request new features
- Pull request
- Email: jwkang10@gmail.com
- Apach License 2.0