An ML implementation of the Fizz Buzz Kata. You can find the
implementation up to feature 1 on the fizz_buzz
branch. The master
branch contains an implementation of
feature 2 ("pop") as well.
Heavily borrowed from Fizz Buzz Tensorflow, "enhanced" with some integration testing, multiclass prediction and the second fizz buzz feature "pop".
- Install python 2.7.x: on OSX
brew install python
, on Linuxapt-get python-dev
- Install virtualenv:
pip install virtualenv
- Create a virtualenv in the repo root folder with the python 2.7 runtime:
virtualenv --python=python2.7 .
- Install dependencies:
pip install -r requirements.txt
- Run the tests:
./run-test
You can use this as a sandbox for tensorflow to get a feeling for deep learning / neural networks. What happens if...
- you add more data (Increase
num_digits
)? - you increase the depth of the network (Increase
num_hidden
)? - you allow the network to learn for longer (Increase
num_epochs
)? - you change the
learning_rate
? - you change the
batch_size
? - you change the optimisation method?
- you increase the complexity of the model by adding more or different layers in?
- Here's how to build Tensorflow from source on a Mac
- Use
bazel build -c opt --copt=-mavx --copt=-msse4.2 --copt=-msse4.1 --copt=-msse3 --copt=-mavx2 --copt=-mfma -k //tensorflow/tools/pip_package:build_pip_package
when building with bazel to get all the advanced CPU instructions