![Page 1: Self-organizing Maps Kevin Pang. Goal Research SOMs Research SOMs Create an introductory tutorial on the algorithm Create an introductory tutorial on](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649e7c5503460f94b7dc81/html5/thumbnails/1.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649e7c5503460f94b7dc81/html5/thumbnails/2.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649e7c5503460f94b7dc81/html5/thumbnails/3.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649e7c5503460f94b7dc81/html5/thumbnails/4.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649e7c5503460f94b7dc81/html5/thumbnails/5.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649e7c5503460f94b7dc81/html5/thumbnails/6.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649e7c5503460f94b7dc81/html5/thumbnails/7.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649e7c5503460f94b7dc81/html5/thumbnails/8.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649e7c5503460f94b7dc81/html5/thumbnails/9.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649e7c5503460f94b7dc81/html5/thumbnails/10.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649e7c5503460f94b7dc81/html5/thumbnails/11.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649e7c5503460f94b7dc81/html5/thumbnails/12.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649e7c5503460f94b7dc81/html5/thumbnails/13.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649e7c5503460f94b7dc81/html5/thumbnails/14.jpg)
Questions?Questions?