Machine Learning: Difference between revisions

From Noisebridge
Jump to navigation Jump to search
(27 intermediate revisions by 4 users not shown)
Line 5: Line 5:
=== Next Meeting===
=== Next Meeting===


*When: Thursday, January 30, 2013 @ 7:00pm
*When: Thursday, February 13, 2014 @ 6:30pm
*Where: 2169 Mission St. (Church classroom)
*Where: 2169 Mission St. (Church classroom)
*Topic: k-Nearest Neighbors and k-Means Clustering
*Topic: Bayesian Inference for everyone
*Details:  
*Details:  
*Who: Mike S
*Who: Sam Tepper


=== Take the Noisebridge ML Survey ===
=== Learn about Data Science and Machine Learning ===
[http://www.surveymonkey.com/s/W2T9ZB6 Take a survey] and vote for what you want to learn!


=== Talks and Workshops ===
===== Classes =====
We've given lots of workshops and talks over the past year or so, here's a few. Many of the workshops we've given previously are recurring and will be given again, especially upon request!
*[https://www.coursera.org/course/ml Coursera Machine Learning Course with Andrew Ng]
*[https://www.coursera.org/course/compneuro Coursera Computational Neuroscience Course with Adrienne Fairhall]
*[http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-867-machine-learning-fall-2006/ MIT Machine Learning Class with Tommi Jaakkola]
*[http://cs229.stanford.edu/materials.html Stanford CS229]
*[http://www.cs.cmu.edu/~tom/10701_sp11/lectures.shtml Carnegie Mellon Machine Learning Course with Tom Mitchell]
*[http://ocw.mit.edu/courses/mathematics/18-06-linear-algebra-spring-2010/ Linear Algebra with Gilbert Strang]
*[https://www.youtube.com/playlist?list=PL6Xpj9I5qXYEcOhn7TqghAJ6NAPrNmUBH Neural Networks Class with Hugo Larochelle]
 
==== Books ====
*[http://statweb.stanford.edu/~tibs/ElemStatLearn/ Elements of Statistical Learning]
*[https://www.google.com/search?client=ubuntu&channel=fs&q=pattern+recognition+and+machine+learning&ie=utf-8&oe=utf-8#channel=fs&q=pattern+recognition+and+machine+learning+pdf Pattern Recognition and Machine Learning]
*[https://www.google.com/search?&channel=fs&q=+Information+Theory%2C+Inference%2C+and+Learning+Algorithms.&ie=utf-8&oe=utf-8#channel=fs&q=Information+Theory%2C+Inference%2C+and+Learning+Algorithms+pdf Information Theory, Inference, and Learning Algorithms]
*[http://chimera.labs.oreilly.com/books/1230000000345 Interactive Data Visualization for the Web (D3)]
*[http://cran.r-project.org/doc/manuals/R-intro.pdf Introduction to R]
*[http://www.dartmouth.edu/~chance/teaching_aids/books_articles/probability_book/amsbook.mac.pdf Introduction to Probability (Grinstead and Snell)]
*[http://www.cis.temple.edu/~latecki/Courses/CIS2033-Spring12/A_modern_intro_probability_statistics_Dekking05.pdf Modern Introduction to Probability and Statistics (Kraaikamp and Meester)]
*[http://web4.cs.ucl.ac.uk/staff/D.Barber/textbook/090310.pdf Bayesian Reasoning and Machine Learning]
 
==== Tutorials ====
*[http://nbviewer.ipython.org/github/unpingco/Python-for-Signal-Processing/tree/master/ Signal Processing IPython Notebooks]
*[http://scikit-learn.org/stable/tutorial/basic/tutorial.html Introduction to ML with scikits.learn]
*[http://www.sagemath.org/doc/tutorial/ Learn how to use SAGE]
 
==== Noisebridge ML Class Slides ====
*[[NBML/Workshops/Intro to Machine Learning|Intro to Machine Learning]]
*[[NBML/Workshops/Intro to Machine Learning|Intro to Machine Learning]]
*[[NBML/Workshops/Brief Tour of Statistics|A Brief Tour of Statistics]]
*[[NBML/Workshops/Brief Tour of Statistics|A Brief Tour of Statistics]]
Line 85: Line 107:
**Modular framework, has lots of stuff!
**Modular framework, has lots of stuff!
*[[Machine Learning/VirtualBox|VirtualBox]] Virtual Box Image with Pre-installed Libraries listed here
*[[Machine Learning/VirtualBox|VirtualBox]] Virtual Box Image with Pre-installed Libraries listed here
*[http://deeplearning.net/software/theano/ Theano: Symbolic Expressions and Transparent GPU Integration]
*[http://sympy.org sympy] Does symbolic math
*[http://sympy.org sympy] Does symbolic math
*[http://waffles.sourceforge.net/ Waffles]
*[http://waffles.sourceforge.net/ Waffles]
Line 107: Line 128:
*[http://www.torch.ch/ Torch]
*[http://www.torch.ch/ Torch]
**MATLAB-like environment for state-of-the art ML libraries written in LUA
**MATLAB-like environment for state-of-the art ML libraries written in LUA
==== Deep Nets ====
*[http://deeplearning.net/software/theano/ Theano]
**Symbolic Expressions and Transparent GPU Integration
*[http://caffe.berkeleyvision.org/ Caffe]
**Convolutional Neural Networks on GPU
*[https://code.google.com/p/neurolab/ Neurolab]
**Has support for recurrent neural nets


==== Online ML ====
==== Online ML ====
Line 130: Line 159:
*[http://tops.sourceforge.net/ ToPS]
*[http://tops.sourceforge.net/ ToPS]
**Probabilistic models of sequences
**Probabilistic models of sequences
*[http://pymc-devs.github.io/pymc/ PyMC]
**Bayesian Models in Python


==== Text Stuff ====
==== Text Stuff ====

Revision as of 16:57, 18 March 2014

Join the Mailing List

https://www.noisebridge.net/mailman/listinfo/ml

Next Meeting

  • When: Thursday, February 13, 2014 @ 6:30pm
  • Where: 2169 Mission St. (Church classroom)
  • Topic: Bayesian Inference for everyone
  • Details:
  • Who: Sam Tepper

Learn about Data Science and Machine Learning

Classes

Books

Tutorials

Noisebridge ML Class Slides

Code and SourceForge Site

    git clone git://ml-noisebridge.git.sourceforge.net/gitroot/ml-noisebridge/ml-noisebridge
  • Send an email to the list if you want to become an administrator on the site to get write access to the git repo!

Future Talks and Topics, Ideas

  • Random Forests in R
  • Restricted Boltzmann Machines (Mike S, some day)
  • Analyzing brain cells (Mike S)
  • Deep Nets w/ Stacked Autoencoders (Mike S, some day)
  • Generalized Linear Models (Mike S, Erin L? some day)
  • Graphical Models
  • Working with the Kinect
  • Computer Vision with OpenCV

Projects

Datasets and Websites

Software Tools

Generic ML Libraries

  • Weka
    • a collection of data mining tools and machine learning algorithms.
  • scikits.learn
    • Machine learning Python package
  • scikits.statsmodels
    • Statistical models to go with scipy
  • PyBrain
    • Does feedforward, recurrent, SOM, deep belief nets.
  • LIBSVM
    • c-based SVM package
  • PyML
  • MDP
    • Modular framework, has lots of stuff!
  • VirtualBox Virtual Box Image with Pre-installed Libraries listed here
  • sympy Does symbolic math
  • Waffles
    • Open source C++ set of machine learning command line tools.
  • RapidMiner
  • Mobile Robotic Programming Toolkit
  • nitime
    • NeuroImaging in Python, has some good time series analysis stuff and multi-variate response fitting.
  • Pandas
    • Data analysis workflow in python
  • PyTables
    • Adds querying capabilities to HDF5 files
  • statsmodels
    • Regression, time series analysis, statistics stuff for python
  • Vowpal Wabbit
    • "Intrinsically Fast" implementation of gradient descent for large datasets
  • Shogun
    • Fast implementations of SVMs
  • MLPACK
    • High performance scalable ML Library
  • Torch
    • MATLAB-like environment for state-of-the art ML libraries written in LUA

Deep Nets

  • Theano
    • Symbolic Expressions and Transparent GPU Integration
  • Caffe
    • Convolutional Neural Networks on GPU
  • Neurolab
    • Has support for recurrent neural nets

Online ML

Graphical Models

  • BUGS
    • MCMC for Bayesian Models
  • JAGS
    • Hierarchical Bayesian Models
  • Stan
    • A graphical model compiler
  • Jayes
    • Bayesian networks in Java
  • ToPS
    • Probabilistic models of sequences
  • PyMC
    • Bayesian Models in Python

Text Stuff

Collaborative Filtering

  • PREA
    • Personalized Recommendation Algorithms Toolkit
  • SVDFeature
    • Collaborative Filtering and Ranking Toolkit

Computer Vision

  • OpenCV
    • Computer Vision Library
    • Has ML component (SVM, trees, etc)
    • Online tutorials here
  • DARWIN
    • Generic C++ ML and Computer Vision Library
  • PetaVision
    • Developing a real-time, full-scale model of the primate visual cortex.

Audio Processing

  • Friture
    • Real-time spectrogram generation
  • pyo
    • Real-time audio signal processing
  • PYMir
    • A library for reading mp3's into python, and doing analysis
  • PRAAT
    • Speech analysis toolkit
  • Sound Analysis Pro
    • Tool for analyzing animal sounds
  • Luscinia
    • Software for archiving, measuring, and analyzing bioacoustic data

Data Visualization

  • Orange
    • Strong data visualization component
  • Gephi
    • Graph Visualization
  • ggplot
    • Nice plotting package for R
  • MayaVi2
    • 3D Scientific Data Visualization
  • Cytoscape
    • A JavaScript graph library for analysis and visualisation
  • plot.ly
    • Web-based plotting
  • D3 Ebook
    • Has a good list of HTML/CSS/Javascript data visualization tools.
  • plotly
    • Python plotting tool

Cluster Computing

  • Mahout
    • Hadoop cluster based ML package.
  • STAR: Cluster
    • Easily build your own Python computing cluster on Amazon EC2

Database Stuff

  • MADlib
    • Machine learning algorithms for in-database data
  • Manta
    • Distributed object storage

Neural Simulation

Other

Presentations and other Materials

Topics to Learn and Teach

NBML Course - Noisebridge Machine Learning Curriculum (work-in-progress)

CS229 - The Stanford Machine learning Course @ noisebridge

  • Supervised Learning
    • Linear Regression
    • Linear Discriminants
    • Neural Nets/Radial Basis Functions
    • Support Vector Machines
    • Classifier Combination [1]
    • A basic decision tree builder, recursive and using entropy metrics
  • Reinforcement Learning
    • Temporal Difference Learning
  • Math, Probability & Statistics
    • Metric spaces and what they mean
    • Fundamentals of probabilities
    • Decision Theory (Bayesian)
    • Maximum Likelihood
    • Bias/Variance Tradeoff, VC Dimension
    • Bagging, Bootstrap, Jacknife [2]
    • Information Theory: Entropy, Mutual Information, Gaussian Channels
    • Estimation of Misclassification [3]
    • No-Free Lunch Theorem [4]
  • Machine Learning SDK's
    • OpenCV ML component (SVM, trees, etc)
    • Mahout a Hadoop cluster based ML package.
    • Weka a collection of data mining tools and machine learning algorithms.
  • Applications
    • Collective Intelligence & Recommendation Engines

Meeting Notes