Self-Organizing Map (SOM): R code — All you have to do is just preparing data set (very simple, easy and practical)

DataAnalysis For Beginner
3 min readAug 24, 2016

--

I release R code of Self-Organizing Map (SOM). They are very easy to use. You prepare data set, and just run the code! Then, SOM can be obtained. Very simple and easy!

You can buy each code from the URL below.

R

https://gum.co/SjMNK
Please download the supplemental zip file (this is free) from the URL below to run the SOM code.
http://univprofblog.html.xdomain.jp/code/R_scripts_functions.zip

Procedure of SOM in the R code

To perform appropriate SOM, the R code follow the procedure below, after data set is loaded.

1. Decide the type of SOM
You select hexagon or rectangle as shape of each neuron. Default is hexagon.

2. Decide whether SOM is mapping torus or not
Mapping torus means that the right of the right edge is the left edge and the upside of the top edge is the bottom edge. So, shape of SOM is like doughnut sterically. Default is mapping torus

3. Decide map size of SOM
You decide the number of neurons in column and that in row. The number of all neurons, which means (the number of columns) × (the number of rows), should be lower than the number of samples.

4. Decide the number of iterations in training SOM
This number should be large. For example, it is 100.

5. Decide learning rate
For example, it is 0.01 or 0.03. It can be decreased gradually at each step.

6. Autoscale each variable (if necessary)
Autoscaling means centering and scaling. Mean of each variable becomes zero by subtracting mean of each variable from the variable in centering. Standard deviation of each variable becomes one by dividing standard deviation of each variable from the variable in scaling.

7. Train SOM

8. Check the point on SOM for each sample

9. Check clusters by using U-matrix

How to perform SOM

1. Buy the code and unzip the file

R: https://gum.co/SjMNK

2. Download and unzip the supplemental zip file (this is free)

R: http://univprofblog.html.xdomain.jp/code/R_scripts_functions.zip

3. Place the supplemental files at the same directory or folder as that of the SOM code.

4. Prepare data set. For data format, see the article below.

https://medium.com/@univprofblog1/data-format-for-matlab-r-and-python-codes-of-data-analysis-and-sample-data-set-9b0f845b565a#.3ibrphs4h

5. Run the code!

Required settings

Please see the article below.
https://medium.com/@univprofblog1/settings-for-running-my-matlab-r-and-python-codes-136b9e5637a1#.paer8scqy

Examples of execution results

--

--

DataAnalysis For Beginner

I am a data scientist in Japan, and will share my knowledge and programming codes about data analysis with you. The codes are written in R, Python and MATLAB.