OSU CSE 5523 - Machine Learning Project
Tensorflow on Android devices. Sophisticated learning tools on mobile devices are necessary for complex machine learning problems. One such problem is the use of ML techniques to learn concepts from mobile data (data collected from mobile devices). Since computational resources on mobile devices are limited, recent research has shown promising results using ML methods in a distributed manner. Moreover, recent work has also shown the ability to use the popular ML library Tensorflow to perform inference on mobile devices. We propose extending Tensorflow from its current state to support not only inference but also training on Android devices.
See our literature review file.
Support training Tensorflow models on Android devices.
Goals:
- Proof of concepts
- Implement an XOR neural network and show that we can switch it to a !XOR
- Parity problem
- More complex applications (possibly in order of implementation)
- RNN for audio generation
- Crowd-ML (MNIST binary and multi-class classification)
The project will begin with deploying Tensorflow on an Android device. Building out the training capabilities of Tensorflow to facilitate training and model optimization on the device. Next, we’ll implement basic proof of concept models followed by more complex applications.
The Tensorflow C++ API gives the available functions but nothing else. There is also the C++ API Guide There were a few running resources available:
- Training a TensorFlow graph in C++ API (Github)
- Loading a TensorFlow graph with the C++ API
- Tensorflow C++ API example
Have the official documentation then the following resources:
Only seems to have the Python API though although haven't tested too much link