This project was designed for learning tensorflow by just one example for beginners. More specifically, it's aimmed to achive the goal as follows:
- Understanding the key concepts of addressing compuation in tensorflow
 - Implementing your machine learning, especially deep learning, model using this concepts.
 - Learn to debug the problem and optimize the program under the tensorflow framework.
 
In order to achive this goal, I play attention on a pratical task and dig deep it instead of a wide of examples. By this way, I want to share the process of doing my research or task, and hope to help beginners to build a overview of modeling the machine learning problem using tensorflow.
This project choice face recongnition problem as the task, actually face verification model. The model was trained on the CASIA-WEBFACE and tested on the LFW. More details about the dataset are here.
The project can be logically divided into three parts of different levels.
- the key concepts of tensorflow program and components that constitude the model were introduced.
 - a basic model taking advantages of both the key concepts and compoents was implemented and the softmax loss was used to learn the feature.
 - the optimization was made to improve the basic model as far as both training speed and test accuracy were concerned.
- data management and multi-gpu were utilized to speed up the training
 - a more powerful network and new loss called Large Margin Cosine Loss were used to improve the accuracy.
 
 
- 
The key concepts
 - 
Components
 - 
Work togother
 - 
Optimization
- Speed:
 - accuracy
 
 
A Practical Guide for Debugging TensorFlow Codes
Please look here.