Skip to content

michaelmendoza/learning-tensorflow

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

84 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Learning Tensorflow

Supports TFv2.0

This tutorial was created for learning tensorflow by example. Currently this repo contains examples for a simple single-layer neural network, a multi-layered perception neural network, and a convolutional neural network. Tensorflow implementations in this repo work with a variety of data sets. Included are simple examples using keras sequential API and more advanced examples using the imperative style of creating networks with model subclassing API.

Getting Started

Installation requires python 3 with tensorflow. The easiest method to install the requisite libraries is to install the conda package manager. Then run the following command to install necessary libraries and create a virtual environment call tf:

conda create -n tf python=3.6 numpy matplotlib scikit-image tqdm pycairo

If you have a CUDA-enabled GPU install tensorflow-gpu: pip install tensorflow-gpu Otherwise use: pip install tensorflow

Activate this virtual environment with source activate tf (Mac) or activate tf (PC).

Notes

Update: Updated examples for use with tensorflow 2.0!

If you are using older version of Tensorflow like 1.12, please look here

Examples

Examples of tensorflow implementations for Classification, Segmentation, Regression and Modeling Fourier Transform

Basics

Python basics (tutorial)

Regression

Linear regression from scatch with Tensorflow 2.0 (tutorial)

Non-linear regression with Tensorflow 2.0 and Keras API (tutorial)

Classification

A variety of neural network implementations for MNIST, and CFAR-10 datasets for classification

MNIST

Classifying using MNIST Dataset

  • Basic Neural Network from scatch with Tensorflow 2.0 (tutorial)
  • Basic Neural Network with simple Keras APIs (tutorial)
  • Multi-layer Neural Nework (simple, advanced) - A simple (multi-layer preception) network for classifying MNIST dataset
  • Convolutional Neural Nework (simple, advanced) - A convolutional network for classifying MNIST dataset

CIFAR-10

  • Basic Neural Network (code) - A simple (single layer preception) network for classifying CIFAR-10 dataset
  • Multi-layer Neural Nework (code) - A simple (multi-layer preception) network for classifying CIFAR-10 dataset
  • Convolutional Neural Nework (code) - A convolutional network for classifying CIFAR-10 dataset
  • Convolutional Neural Nework (code) - A convolutional network (6-conv, 3 max pool, 2 fully-connected layers) with Dropout for classifying CIFAR-10 dataset
  • VGG network (code, paper) - A very deep convolutional network for large-scale image recongition

Segmentation

Tensorflow implementation for simple color segmentation using a Unet (tutorial)

Modeling Fourier Transform / FFT

Neural network implementation for learning a fourier transform (code)