The Automated Neural-graph toolkit is a machine learning toolkit written using Google’s Tensorflow to facilitate rapid prototyping of Neural Network and other machine learning models which may consist of multiple models chained together. This includes models which have multiple input and/or multiple output streams.
ANTk functions and classes are designed to conveniently work in tandem with native tensorflow code. ANTk will be most useful to people who have gone through some of the basic tensorflow tutorials, have some machine learning background, and wish to take advantage of some of tensorflow’s more advanced features. The code itself is consistent, well-formatted, well-documented, and abstracted only to a point necessary for code reuse, and complex model development. The toolkit code contains tensorflow usage developed and discovered over six months of machine learning research conducted in tensorflow, by Hutch Research based out of Western Washington University’s Computer Science Department.
The kernel of the toolkit is comprised of 4 independent, but complementary modules:
- Implements a general purpose data loader for python non-sequential machine learning tasks. Contains functions for common data pre-processing tasks.
- Contains functions taking a tensor or structured list of tensors and returning a tensor or structured list of tensors. The functions are commonly used compositions of tensorflow functions which operate on tensors.
- A general purpose model builder equipped with generic train, and predict functions which takes parameters for optimization strategy, mini-batch, etc...
- Facilitates the generation of complex tensorflow models, built from compositions of Tensorflow and ANTk operations.
ANTK was designed to be highly modular, and allow for a high level of abstraction with a great degree of transparency to the underlying implementation. To this end, There are links to source code, and relevant scientific papers in the API. Also, the toolkit provides a mechanism for easy access to tensor objects created by high level operations such as deep neural networks.
The toolkit design allows the benefits of prepackaged functions for several varieties of neural nets with parameters for regularization and normalization strategies, as well as a general purpose highly configurable trainer to eliminate boilerplate tensorflow code, all without sacrificing the ability to use powerful lower level tensorflow operations.
A virtual environment is recommended for installation. Make sure that tensorflow is installed in your virtual environment and graphviz is installed on your system.
In a terminal:
(venv)$ pip install antk
- API: ANT modules
- Command Line Scripts
- Movie Lens Processing