Giter Site home page Giter Site logo

riderml's Introduction

riderml

I heard somewhere that true understanding in computer science is equal parts intuition, math, and implementation. This project contains machine learning algorithms that I have implemented for fun and my own education.

Organization

The algorithms are split into categories:

  • neural_network contains neural network code
  • regression contains gradient descent algorithms
  • visualization contains code for visualizing examples for each algorithm
  • tests contains unit tests

What ML algorithms are there now?

Currently the project contains feed-forward neural networks and gradient descent. The neural network implementation is written in such a way that it should be easily extensible. For example, each layer takes a series of functions for forward and backward propagation and so on, that could easily be swapped out.

Neural networks

  • a generic layer model and the functions to use it as a component of a neural network.
  • backprop with irprop-
Autoencoders

generic autoencoder with optional normalization for sparse denoising autoencoders.

Deep belief networks

deep belief networks -- arbitrary number of layers with greedy autoencoder pretraining.

Gradient descent

  • iRPROP- gradient descent with mini-batches or full data set
  • adagrad

Factorization Machines

2-way factorization machines with adaptive learning rate (TODO: no regularization yet)

Topic models

  • latent dirichlet allocation
  • dirichlet process mixture models with arbitrary mixture distributions (only guassian and multinomial implemented) -- see Neal 2006

Visualization

Presently there are two approaches to visualization present in the repo. I originally used matplotlib but I have been increasingly using Bokeh. SGD

SGD

Requirements

You'll need scipy, numpy, matplotlib, and bokeh.

Support

I have a bunch of implementations of other algorithms and I will add them in no particular order and at no particular time....

If you would like to contribute, please go right ahead.

riderml's People

Contributors

arider avatar ironunicorn avatar

Stargazers

Reid Johnson avatar

Watchers

Ian Christopher avatar James Cloos avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.