Self-organizing Maps Kevin Pang. Goal Research SOMs Research SOMs Create an introductory tutorial on...

14
Self-organizing Self-organizing Maps Maps Kevin Pang Kevin Pang

Transcript of Self-organizing Maps Kevin Pang. Goal Research SOMs Research SOMs Create an introductory tutorial on...

Page 1: Self-organizing Maps Kevin Pang. Goal Research SOMs Research SOMs Create an introductory tutorial on the algorithm Create an introductory tutorial on.

Self-organizing Self-organizing MapsMapsKevin PangKevin Pang

Page 2: Self-organizing Maps Kevin Pang. Goal Research SOMs Research SOMs Create an introductory tutorial on the algorithm Create an introductory tutorial on.

GoalGoal

Research SOMsResearch SOMs Create an introductory tutorial on Create an introductory tutorial on

the algorithmthe algorithm Advantages / disadvantagesAdvantages / disadvantages Current applicationsCurrent applications Demo programDemo program

Page 3: Self-organizing Maps Kevin Pang. Goal Research SOMs Research SOMs Create an introductory tutorial on the algorithm Create an introductory tutorial on.

Self-organizing MapsSelf-organizing Maps

Unsupervised learning neural Unsupervised learning neural networknetwork

Maps multidimensional data onto a 2 Maps multidimensional data onto a 2 dimensional griddimensional grid

Geometric relationships between Geometric relationships between image points indicate similarityimage points indicate similarity

Page 4: Self-organizing Maps Kevin Pang. Goal Research SOMs Research SOMs Create an introductory tutorial on the algorithm Create an introductory tutorial on.

AlgorithmAlgorithm

Neurons arranged in a 2 dimensional gridNeurons arranged in a 2 dimensional grid Each neuron contains a weight vectorEach neuron contains a weight vector

Example: RGB valuesExample: RGB values

Page 5: Self-organizing Maps Kevin Pang. Goal Research SOMs Research SOMs Create an introductory tutorial on the algorithm Create an introductory tutorial on.

Algorithm (continued…)Algorithm (continued…)

Initialize weightsInitialize weights RandomRandom PregeneratedPregenerated

Iterate through inputsIterate through inputs For each input, find the “winning” For each input, find the “winning”

neuronneuron Euclidean distanceEuclidean distance

Adjust “winning” neuron and its Adjust “winning” neuron and its neighborsneighbors GaussianGaussian Mexican hatMexican hat

Page 6: Self-organizing Maps Kevin Pang. Goal Research SOMs Research SOMs Create an introductory tutorial on the algorithm Create an introductory tutorial on.

Optimization TechniquesOptimization Techniques

Reducing input / neuron Reducing input / neuron dimensionalitydimensionality Random Projection methodRandom Projection method

Pregenerating neuron weightsPregenerating neuron weights Initialize map closer to final stateInitialize map closer to final state

Restricting “winning” neuron searchRestricting “winning” neuron search Reduce the amount of exhaustive Reduce the amount of exhaustive

searchessearches

Page 7: Self-organizing Maps Kevin Pang. Goal Research SOMs Research SOMs Create an introductory tutorial on the algorithm Create an introductory tutorial on.

ConclusionsConclusions

AdvantagesAdvantages Data mapping is easily interpretedData mapping is easily interpreted Capable of organizing large, complex data Capable of organizing large, complex data

setssets DisadvantagesDisadvantages

Difficult to determine what input weights to Difficult to determine what input weights to useuse

Mapping can result in divided clustersMapping can result in divided clusters Requires that nearby points behave Requires that nearby points behave

similarlysimilarly

Page 8: Self-organizing Maps Kevin Pang. Goal Research SOMs Research SOMs Create an introductory tutorial on the algorithm Create an introductory tutorial on.

Current ApplicationsCurrent Applications

WEBSOM: Organization of a Massive WEBSOM: Organization of a Massive Document CollectionDocument Collection

Page 9: Self-organizing Maps Kevin Pang. Goal Research SOMs Research SOMs Create an introductory tutorial on the algorithm Create an introductory tutorial on.

Current Applications Current Applications (continued)(continued)

Phonetic Phonetic TypewriterTypewriter

Page 10: Self-organizing Maps Kevin Pang. Goal Research SOMs Research SOMs Create an introductory tutorial on the algorithm Create an introductory tutorial on.

Current Applications Current Applications (continued)(continued)

Classifying World PovertyClassifying World Poverty

Page 11: Self-organizing Maps Kevin Pang. Goal Research SOMs Research SOMs Create an introductory tutorial on the algorithm Create an introductory tutorial on.

Demo ProgramDemo Program

Written for Windows with GLUT Written for Windows with GLUT supportsupport

Demonstrates the SOM training Demonstrates the SOM training algorithm in actionalgorithm in action

Page 12: Self-organizing Maps Kevin Pang. Goal Research SOMs Research SOMs Create an introductory tutorial on the algorithm Create an introductory tutorial on.

Demo Program DetailsDemo Program Details

Randomly initialized mapRandomly initialized map 100 x 100 grid of neurons, each 100 x 100 grid of neurons, each

containing a 3-dimensional weight containing a 3-dimensional weight vector representing its RGB valuevector representing its RGB value

Training input randomly selected Training input randomly selected from 48 unique colorsfrom 48 unique colors

Gaussian neighborhood functionGaussian neighborhood function

Page 13: Self-organizing Maps Kevin Pang. Goal Research SOMs Research SOMs Create an introductory tutorial on the algorithm Create an introductory tutorial on.

ScreenshotsScreenshots

Page 14: Self-organizing Maps Kevin Pang. Goal Research SOMs Research SOMs Create an introductory tutorial on the algorithm Create an introductory tutorial on.

Questions?Questions?