Neural Network Workshop: Difference between revisions

From Noisebridge
Jump to navigation Jump to search
No edit summary
No edit summary
 
(22 intermediate revisions by 2 users not shown)
Line 1: Line 1:
'''What''': A hands-on workshop courtesy of the [https://www.noisebridge.net/index.php?title=Machine_Learning Machine Learning Group] using Neural Networks that includes both the theory and practical implementation.
'''What''': A hands-on workshop courtesy of the [https://www.noisebridge.net/index.php?title=Machine_Learning Machine Learning Group] about Feedforward Neural Networks that includes some background and practical implementation.


'''When''': January 26, 2011 7:00pm - 10:00pm
'''When''': January 26, 2011 7:00pm - 10:00pm
Line 9: Line 9:
'''Who''': Anyone who wants to participate, either come and learn or help teach. [https://www.noisebridge.net/mailman/listinfo/ml Join the mailing list!]. It won't be too heavy on the math, so don't worry if you knowledge of vector spaces and derivatives is a bit of a null set...
'''Who''': Anyone who wants to participate, either come and learn or help teach. [https://www.noisebridge.net/mailman/listinfo/ml Join the mailing list!]. It won't be too heavy on the math, so don't worry if you knowledge of vector spaces and derivatives is a bit of a null set...


=== Workshop Overview, Resources ===
=== Workshop Outline ===
*What is a Neural Network?
*What is a neural net?
**What does a real neural network in the brain look like?
**What does a real neural net in the brain look like?
**Differences between artificial neural nets and biological neural nets
**Differences between artificial neural nets and biological neural nets
**Basic architecture: layers of interconnected units
**Basic architecture: layers of interconnected units
**Weights and activation functions: the actual computation
**Weights and activation functions: the actual computation
*What can Neural Networks do?
*What can neural net do?
**Universal Function Approximators
**Universal Function Approximation
**Classification: identifying classes of things
**Classification: identifying classes of things
***Binary classification vs. multi-class classification
***Binary classification vs. multi-class classification
**Regression: predicting values from data
**Regression: predicting values from data
*How are neural networks trained?
*How are neural nets trained?
**Backpropagation
**Backpropagation
*Let's write some code! Face or not a Face? Binary Classification with Neural Nets
*Installfest '''Please try and download whatever you can BEFORE coming to Noisebridge!!!'''
**Here we'll implement a neural network that detects whether an image contains a human face, using the language of your choice:
**Python
***[http://neuroph.sourceforge.net/ neuroph]: java
***Install [http://numpy.scipy.org/ numpy] and [http://www.scipy.org/ scipy] OR install [http://www.sagemath.org/ Sage] OR [http://www.virtualbox.org/ VirtualBox]+Joe's Python Scientific
***[http://leenissen.dk/fann/ FANN]: C++
***Code at http://www.mindmech.com/nnw.tgz
***[http://www.heatonresearch.com/encog Encog]: java
**Computing Disk Image
***[http://pybrain.org PyBrain]: python
***Install [http://pybrain.org/docs/ PyBrain]
****[http://cran.r-project.org/web/packages/nnet/index.html nnet] R
**R
***Install [http://www.r-project.org/ R]
***Code Repository: git clone git://ml-noisebridge.git.sourceforge.net/gitroot/ml-noisebridge/ml-noisebridge
*Potential Workshop Projects
**Function Approximation: XOR
**Multi-class Classification: Type of Iris
***We'll be using this [http://archive.ics.uci.edu/ml/datasets/Iris classic data set] to predict the class of Iris based on measurements of the petals.
**Binary Classification: Face or not a Face?
***Preprocessing images using [http://opencv.willowgarage.com/wiki/ OpenCV]
***Here we'll implement a neural network that detects whether an image contains a human face, using [http://pybrain.org PyBrain].
***It might not do a good job...


=== Volunteers ===
=== Software ===
Put your name down here to volunteer and contact Mike S for coordination:


*Mike S
*[http://neuroph.sourceforge.net/ neuroph]: java
 
*[http://leenissen.dk/fann/ FANN]: C++
=== Software ===
*[http://www.heatonresearch.com/encog Encog]: java
This is just a list of packages used for constructing and training neural networks:
*[http://pybrain.org PyBrain]: python
*[http://leenissen.dk/fann/ FANN]
*[http://cran.r-project.org/web/packages/nnet/index.html nnet] R
*[http://www.heatonresearch.com/encog Encog]
*[http://neuroph.sourceforge.net/ neuroph]
*[http://torch5.sourceforge.net/manual/index.html Torch5]
*[http://pynn.gforge.inria.fr/ PyNN] (Biophysical Neural Nets)
*[http://cran.r-project.org/web/packages/nnet/index.html nnet]

Latest revision as of 20:07, 26 January 2011

What: A hands-on workshop courtesy of the Machine Learning Group about Feedforward Neural Networks that includes some background and practical implementation.

When: January 26, 2011 7:00pm - 10:00pm

Why: To raise Neural Network Awareness (NNA) and money for Noisebridge. Donations towards Noisebridge will be encouraged and appreciated.

Where: In the back classroom

Who: Anyone who wants to participate, either come and learn or help teach. Join the mailing list!. It won't be too heavy on the math, so don't worry if you knowledge of vector spaces and derivatives is a bit of a null set...

Workshop Outline[edit | edit source]

  • What is a neural net?
    • What does a real neural net in the brain look like?
    • Differences between artificial neural nets and biological neural nets
    • Basic architecture: layers of interconnected units
    • Weights and activation functions: the actual computation
  • What can neural net do?
    • Universal Function Approximation
    • Classification: identifying classes of things
      • Binary classification vs. multi-class classification
    • Regression: predicting values from data
  • How are neural nets trained?
    • Backpropagation
  • Installfest Please try and download whatever you can BEFORE coming to Noisebridge!!!
  • Potential Workshop Projects
    • Function Approximation: XOR
    • Multi-class Classification: Type of Iris
      • We'll be using this classic data set to predict the class of Iris based on measurements of the petals.
    • Binary Classification: Face or not a Face?
      • Preprocessing images using OpenCV
      • Here we'll implement a neural network that detects whether an image contains a human face, using PyBrain.
      • It might not do a good job...

Software[edit | edit source]