TensorFlow is a free and open-source software library for dataflow and differentiable programming across a range of tasks.

It is greatly used for Machine Learning Application, Developed in 2015 by the Google Brain Team and Written in Python and C++.

I will be introducing you to 15 opensource TensorFlow projects, you would like either as a Beginner in Machine Learning, an expert or a Python/C++ Developer, exploring new possibilities.

1. SenseNet

SenseNet is a sensorimotor and touch simulator to teach AIs how to interact with their environments via sensorimotor systems and touch neurons. SenseNet is meant as a research framework for machine learning researchers and theoretical computational neuroscientists.

gestures

Features

  • Reinforcement learning
  • Supports Mac OS X and Linux (ubuntu 14.04), Rarely works on Windows(If you build Windows application, you should consider contributing to this.)
  • Docker and Vagrant/Virtualbox images for all platform that supports it
  • Has it own Dataset and you can import yours.

Link

2. Tensorflow Project Template

A simple and well-designed structure is essential for any Deep Learning project, so after a lot of practice and contributing to TensorFlow projects.

opensource Tensorflow Projects

Features

  • OOP Focused Design
  • Folder Structure inline with Best Practices
  • Simplicity
  • Lets you focus on the Core part of your Project.

Link

3. Pretty Tensor – Fluent Neural Networks in TensorFlow

Inception module showing branch and rejoin

Features

  • Full power of TensorFlow is easy to use
  • Plays well with other libraries
  • Code matches model
  • Extensible

Link

4. TensorFlow White Paper Notes

opensource Tensorflow Projects

Features

  • Notes broken down section by section, as well as subsection by subsection
  • Relevant links to documentation, resources, and references throughout
  • SVG versions of figures/graphs

Link

5. DeepOSM

Classify roads and features in satellite imagery, by training neural networks with OpenStreetMap (OSM) data.

Features

  • Download a chunk of satellite imagery
  • Download OSM data that shows roads/features for that area
  • Generate training and evaluation data
  • Display predictions of mis-registered roads in OSM data, or display raw predictions of ON/OFF

Link

6. DQN-tensorflow

Tensorflow implementation of Human-Level Control through Deep Reinforcement Learning

model

Features

  • Deep Q-network and Q-learning
  • Experience replay memory
    • to reduce the correlations between consecutive updates
  • Network for Q-learning targets are fixed for intervals
    • to reduce the correlations between target and predicted Q-values

Link

7. TensorLayer

opensource Tensorflow Projects

TensorLayer is a novel TensorFlow-based deep learning and reinforcement learning library designed for researchers and engineers. It provides an extensive collection of customizable neural layers to build complex AI models.

Features

  • Simplicity
  • Flexibility
  • Zero-cost Abstraction

Link

8. Tensorforce

Tensorforce is an open-source deep reinforcement learning framework, with an emphasis on modularized flexible library design and straightforward usability for applications in research and practice. 

Features

  • Modular component-based design
  • Separation of RL algorithm and application
  • Full-on TensorFlow models

Link

9. TensorFlowOnSpark

TensorFlowOnSpark enables both distributed TensorFlow training and inferencing on Spark clusters, with a goal to minimize the number of code changes required to run existing TensorFlow programs on a shared grid.

Features

  • Launches the Tensorflow main function on the executors, along with listeners for data/control messages.
  • Leverages TensorFlow’s built-in APIs to read data files directly from HDFS.
  • Sends Spark RDD data to the TensorFlow nodes via a TFNode.DataFeed class.
  • Shuts down the Tensorflow workers and PS nodes on the executors.

Link

10. StellarGraph

StellarGraph Machine Learning library logo

The StellarGraph library offers state-of-the-art algorithms for graph machine learning, making it easy to discover patterns and answer questions about graph-structured data.

Features

  • Representation learning for nodes and edges, to be used for visualization and various downstream machine learning tasks;
  • Classification and attribute inference of nodes or edges;
  • Classification of whole graphs;
  • Link prediction;
  • Interpretation of node classification

Link

11. TensorPack

Tensorpack

A Neural Net Training Interface on TensorFlow, with focus on speed + flexibility

Features

  • Focus on training speed.
  • Focus on large datasets.
  • It’s not a model wrapper.

Link

12. Tensorflow Shakespeare

Neural machine translation between the writings of Shakespeare and modern English using TensorFlow

Features

  • word embeddings
  • beam search
  • language model reranking

Link

13. Thingscoop

opensource Tensorflow Projects

Search and filter videos based on objects that appear in them using convolutional neural networks

Features

  • Generate a video compilation of the regions in the <files> that match <query>
  • Create a compilation video showing examples for every label recognized in the video (in alphabetic order).
  • Print every label that appears in <file> along with the number of times it appears.

Link

14. FastText in Tensorflow

This project is based on the ideas in Facebook’s FastText but implemented in Tensorflow. However, it is not an exact replica of fastText.
Classification is done by embedding each word, taking the mean embedding over the full text and classifying that using a linear classifier.

Features

  • classification of text using word embeddings
  • char ngrams, hashed to n bins
  • training and prediction program
  • serve models on tensorflow serving
  • preprocess facebook format, or text input into tensorflow records

Link

15. Tensornets

High level network definitions with pre-trained weights in TensorFlow

Features

  • Applicability: Many people already have their own ML workflows, and want to put a new model on their workflows.
  • Manageability: Models are written in tf.contrib.layers, which is lightweight like PyTorch and Keras, and allows for ease of accessibility to every weight and end-point.
  • Readability. With recent TensorFlow APIs, more factoring and less indenting can be possible.
  • Reproducibility. You can always reproduce the original results with simple APIs including feature extractions.

Link

Conclusion

For Beginners in Deep Learning, Machine Learning and Artificial Intelligence using TensorFlow, Contributing to these open source projects or reading the codes can help you learn a lot.