Self-Organizing Map (SOM) atau sering disebut topology-preserving map pertama kali diperkenalkan oleh Teuvo Kohonen pada tahun 1996. SOM merupakan salah satu teknik dalam Neural Network yang bertujuan untuk melakukan visualisasi data dengan cara mengurangi dimensi data melalui penggunaan self-organizing neural networks sehingga manusia dapat mengerti high-dimensional data yang dipetakan dalam bentuk low-dimensional data. Metode pembelajaran yang digunakan SOM adalah tanpa bimbingan dari suatu data input-target atau unsupervised learning yang mengasumsikan sebuah topologi yang terstruktur menjadian unit-unit kelas/cluster (Kohonen, 1989 dan Fausett, 1993).
Pada algoritma SOM, vektor bobot untuk setiap unit cluster berfungsi sebagai contoh dari input pola yang terkait dengan cluster itu. Selama proses self-organizing, cluster satuan yang bobotnya sesuai dengan pola vektor input yang paling dekat (biasanya, kuadrat dari jarak Euclidean minimum) dipilih sebagai pemenang. Unit pemenang dan unit tetangganya (dalam pengertian topologi dari unit cluster ) terus memperbarui bobot merek (Fausett, 1993). Setiap output akan bereaksi terhadap pola input tertentu sehingga hasil Kohonen SOM akan menunjukkan adanya kesamaan ciri antar anggota dalam cluster yang sama.
Dalam jaringan SOM, neuron target tidak diletakkan dalam sebuah baris seperti layaknya model JST yang lain. Neuron target diletakkan dalam dua dimensi yang bentuk/topologinya dapat diatur. Topologi yang berbeda akan menghasilkan neuron sekitar neuron pemenang yang berbeda sehingga bobot yang dihaslkan juga akan berbeda. Pada SOM, perubahan bobot tidak hanya dilakukan pada bobot garis yang terhubung ke neuron pemenang saja, tetapi juga pada bobot garis ke neuron-neuron di sekitarnya. neuron di sekitar neuron pemenang ditentukan berdasarkan jaraknya dari neuron pemenang.
library(class)
library(MASS)
library(kohonen)
##
## Attaching package: 'kohonen'
## The following object is masked from 'package:class':
##
## somgrid
library(ggplot2) # plot
library(GGally) # Plot
## Registered S3 method overwritten by 'GGally':
## method from
## +.gg ggplot2
library(RColorBrewer) # Untuk Warna yang di gunakan
# pertama tama panggil data
summary(iris)
## Sepal.Length Sepal.Width Petal.Length Petal.Width
## Min. :4.300 Min. :2.000 Min. :1.000 Min. :0.100
## 1st Qu.:5.100 1st Qu.:2.800 1st Qu.:1.600 1st Qu.:0.300
## Median :5.800 Median :3.000 Median :4.350 Median :1.300
## Mean :5.843 Mean :3.057 Mean :3.758 Mean :1.199
## 3rd Qu.:6.400 3rd Qu.:3.300 3rd Qu.:5.100 3rd Qu.:1.800
## Max. :7.900 Max. :4.400 Max. :6.900 Max. :2.500
## Species
## setosa :50
## versicolor:50
## virginica :50
##
##
##
Mengelompokan data iris dalam beberapa kelompok
# Tetapkan atribut untuk dapat mengklasifikasikan variabel (bukan pengamatan) yang kemudian dapat diselidiki menggunakan GGall ( Plot)
attr(iris,'Sepal') <- c("Sepal.Length", "Sepal.Width")
attr(iris,'Petal') <- c("Petal.Length", "Petal.Width")
str(attributes(iris))
## List of 5
## $ names : chr [1:5] "Sepal.Length" "Sepal.Width" "Petal.Length" "Petal.Width" ...
## $ class : chr "data.frame"
## $ row.names: int [1:150] 1 2 3 4 5 6 7 8 9 10 ...
## $ Sepal : chr [1:2] "Sepal.Length" "Sepal.Width"
## $ Petal : chr [1:2] "Petal.Length" "Petal.Width"
lalu Tentukan kelompok variabel berdasarkan atribut
(SepalVar <- attr(iris, "Sepal"))
## [1] "Sepal.Length" "Sepal.Width"
(PetalVar <- attr(iris, "Petal"))
## [1] "Petal.Length" "Petal.Width"
dan selanjutnya Mencari korelasi dari data iris dengan mengunakan syntax berikut
ggpairs(iris, title = "dalam semua dataset")
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
korelasi dikatakan baik jika nilainya mendekati 1 atau -1.
maka dari hasil korelasi di atas dapat di tuliskan bahwa korelasi antara sepal.Leghth dagan sepal.Width adalah -0,118 jadi bisa di katakan korelasi nya lemah berbeda dengan nilai korelasi antara sepal.Width dan Petal.length adalah 0,872 itu bisa dikatakan baik dan seterusnya. dan sampai nilai korelasi aantara Petal.Lenght dan Petal Widht adalah 0,963 itu di katakan sanggat baik karena nilainya mendekati 1.
data("iris")
View(iris)
Berdasarkan data iris diatas dapat diketahui bahwa terdapat 5 variabel yaitu Sepal.Length, Sepal.Width, Petal.Length, Petal.Width dan species(sebagai label)
scale(iris[,-5])
## Sepal.Length Sepal.Width Petal.Length Petal.Width
## [1,] -0.89767388 1.01560199 -1.33575163 -1.3110521482
## [2,] -1.13920048 -0.13153881 -1.33575163 -1.3110521482
## [3,] -1.38072709 0.32731751 -1.39239929 -1.3110521482
## [4,] -1.50149039 0.09788935 -1.27910398 -1.3110521482
## [5,] -1.01843718 1.24503015 -1.33575163 -1.3110521482
## [6,] -0.53538397 1.93331463 -1.16580868 -1.0486667950
## [7,] -1.50149039 0.78617383 -1.33575163 -1.1798594716
## [8,] -1.01843718 0.78617383 -1.27910398 -1.3110521482
## [9,] -1.74301699 -0.36096697 -1.33575163 -1.3110521482
## [10,] -1.13920048 0.09788935 -1.27910398 -1.4422448248
## [11,] -0.53538397 1.47445831 -1.27910398 -1.3110521482
## [12,] -1.25996379 0.78617383 -1.22245633 -1.3110521482
## [13,] -1.25996379 -0.13153881 -1.33575163 -1.4422448248
## [14,] -1.86378030 -0.13153881 -1.50569459 -1.4422448248
## [15,] -0.05233076 2.16274279 -1.44904694 -1.3110521482
## [16,] -0.17309407 3.08045544 -1.27910398 -1.0486667950
## [17,] -0.53538397 1.93331463 -1.39239929 -1.0486667950
## [18,] -0.89767388 1.01560199 -1.33575163 -1.1798594716
## [19,] -0.17309407 1.70388647 -1.16580868 -1.1798594716
## [20,] -0.89767388 1.70388647 -1.27910398 -1.1798594716
## [21,] -0.53538397 0.78617383 -1.16580868 -1.3110521482
## [22,] -0.89767388 1.47445831 -1.27910398 -1.0486667950
## [23,] -1.50149039 1.24503015 -1.56234224 -1.3110521482
## [24,] -0.89767388 0.55674567 -1.16580868 -0.9174741184
## [25,] -1.25996379 0.78617383 -1.05251337 -1.3110521482
## [26,] -1.01843718 -0.13153881 -1.22245633 -1.3110521482
## [27,] -1.01843718 0.78617383 -1.22245633 -1.0486667950
## [28,] -0.77691058 1.01560199 -1.27910398 -1.3110521482
## [29,] -0.77691058 0.78617383 -1.33575163 -1.3110521482
## [30,] -1.38072709 0.32731751 -1.22245633 -1.3110521482
## [31,] -1.25996379 0.09788935 -1.22245633 -1.3110521482
## [32,] -0.53538397 0.78617383 -1.27910398 -1.0486667950
## [33,] -0.77691058 2.39217095 -1.27910398 -1.4422448248
## [34,] -0.41462067 2.62159911 -1.33575163 -1.3110521482
## [35,] -1.13920048 0.09788935 -1.27910398 -1.3110521482
## [36,] -1.01843718 0.32731751 -1.44904694 -1.3110521482
## [37,] -0.41462067 1.01560199 -1.39239929 -1.3110521482
## [38,] -1.13920048 1.24503015 -1.33575163 -1.4422448248
## [39,] -1.74301699 -0.13153881 -1.39239929 -1.3110521482
## [40,] -0.89767388 0.78617383 -1.27910398 -1.3110521482
## [41,] -1.01843718 1.01560199 -1.39239929 -1.1798594716
## [42,] -1.62225369 -1.73753594 -1.39239929 -1.1798594716
## [43,] -1.74301699 0.32731751 -1.39239929 -1.3110521482
## [44,] -1.01843718 1.01560199 -1.22245633 -0.7862814418
## [45,] -0.89767388 1.70388647 -1.05251337 -1.0486667950
## [46,] -1.25996379 -0.13153881 -1.33575163 -1.1798594716
## [47,] -0.89767388 1.70388647 -1.22245633 -1.3110521482
## [48,] -1.50149039 0.32731751 -1.33575163 -1.3110521482
## [49,] -0.65614727 1.47445831 -1.27910398 -1.3110521482
## [50,] -1.01843718 0.55674567 -1.33575163 -1.3110521482
## [51,] 1.39682886 0.32731751 0.53362088 0.2632599711
## [52,] 0.67224905 0.32731751 0.42032558 0.3944526477
## [53,] 1.27606556 0.09788935 0.64691619 0.3944526477
## [54,] -0.41462067 -1.73753594 0.13708732 0.1320672944
## [55,] 0.79301235 -0.59039513 0.47697323 0.3944526477
## [56,] -0.17309407 -0.59039513 0.42032558 0.1320672944
## [57,] 0.55148575 0.55674567 0.53362088 0.5256453243
## [58,] -1.13920048 -1.50810778 -0.25944625 -0.2615107354
## [59,] 0.91377565 -0.36096697 0.47697323 0.1320672944
## [60,] -0.77691058 -0.81982329 0.08043967 0.2632599711
## [61,] -1.01843718 -2.42582042 -0.14615094 -0.2615107354
## [62,] 0.06843254 -0.13153881 0.25038262 0.3944526477
## [63,] 0.18919584 -1.96696410 0.13708732 -0.2615107354
## [64,] 0.30995914 -0.36096697 0.53362088 0.2632599711
## [65,] -0.29385737 -0.36096697 -0.08950329 0.1320672944
## [66,] 1.03453895 0.09788935 0.36367793 0.2632599711
## [67,] -0.29385737 -0.13153881 0.42032558 0.3944526477
## [68,] -0.05233076 -0.81982329 0.19373497 -0.2615107354
## [69,] 0.43072244 -1.96696410 0.42032558 0.3944526477
## [70,] -0.29385737 -1.27867961 0.08043967 -0.1303180588
## [71,] 0.06843254 0.32731751 0.59026853 0.7880306775
## [72,] 0.30995914 -0.59039513 0.13708732 0.1320672944
## [73,] 0.55148575 -1.27867961 0.64691619 0.3944526477
## [74,] 0.30995914 -0.59039513 0.53362088 0.0008746178
## [75,] 0.67224905 -0.36096697 0.30703027 0.1320672944
## [76,] 0.91377565 -0.13153881 0.36367793 0.2632599711
## [77,] 1.15530226 -0.59039513 0.59026853 0.2632599711
## [78,] 1.03453895 -0.13153881 0.70356384 0.6568380009
## [79,] 0.18919584 -0.36096697 0.42032558 0.3944526477
## [80,] -0.17309407 -1.04925145 -0.14615094 -0.2615107354
## [81,] -0.41462067 -1.50810778 0.02379201 -0.1303180588
## [82,] -0.41462067 -1.50810778 -0.03285564 -0.2615107354
## [83,] -0.05233076 -0.81982329 0.08043967 0.0008746178
## [84,] 0.18919584 -0.81982329 0.76021149 0.5256453243
## [85,] -0.53538397 -0.13153881 0.42032558 0.3944526477
## [86,] 0.18919584 0.78617383 0.42032558 0.5256453243
## [87,] 1.03453895 0.09788935 0.53362088 0.3944526477
## [88,] 0.55148575 -1.73753594 0.36367793 0.1320672944
## [89,] -0.29385737 -0.13153881 0.19373497 0.1320672944
## [90,] -0.41462067 -1.27867961 0.13708732 0.1320672944
## [91,] -0.41462067 -1.04925145 0.36367793 0.0008746178
## [92,] 0.30995914 -0.13153881 0.47697323 0.2632599711
## [93,] -0.05233076 -1.04925145 0.13708732 0.0008746178
## [94,] -1.01843718 -1.73753594 -0.25944625 -0.2615107354
## [95,] -0.29385737 -0.81982329 0.25038262 0.1320672944
## [96,] -0.17309407 -0.13153881 0.25038262 0.0008746178
## [97,] -0.17309407 -0.36096697 0.25038262 0.1320672944
## [98,] 0.43072244 -0.36096697 0.30703027 0.1320672944
## [99,] -0.89767388 -1.27867961 -0.42938920 -0.1303180588
## [100,] -0.17309407 -0.59039513 0.19373497 0.1320672944
## [101,] 0.55148575 0.55674567 1.27004036 1.7063794137
## [102,] -0.05233076 -0.81982329 0.76021149 0.9192233541
## [103,] 1.51759216 -0.13153881 1.21339271 1.1816087073
## [104,] 0.55148575 -0.36096697 1.04344975 0.7880306775
## [105,] 0.79301235 -0.13153881 1.15674505 1.3128013839
## [106,] 2.12140867 -0.13153881 1.60992627 1.1816087073
## [107,] -1.13920048 -1.27867961 0.42032558 0.6568380009
## [108,] 1.75911877 -0.36096697 1.43998331 0.7880306775
## [109,] 1.03453895 -1.27867961 1.15674505 0.7880306775
## [110,] 1.63835547 1.24503015 1.32668801 1.7063794137
## [111,] 0.79301235 0.32731751 0.76021149 1.0504160307
## [112,] 0.67224905 -0.81982329 0.87350679 0.9192233541
## [113,] 1.15530226 -0.13153881 0.98680210 1.1816087073
## [114,] -0.17309407 -1.27867961 0.70356384 1.0504160307
## [115,] -0.05233076 -0.59039513 0.76021149 1.5751867371
## [116,] 0.67224905 0.32731751 0.87350679 1.4439940605
## [117,] 0.79301235 -0.13153881 0.98680210 0.7880306775
## [118,] 2.24217198 1.70388647 1.66657392 1.3128013839
## [119,] 2.24217198 -1.04925145 1.77986923 1.4439940605
## [120,] 0.18919584 -1.96696410 0.70356384 0.3944526477
## [121,] 1.27606556 0.32731751 1.10009740 1.4439940605
## [122,] -0.29385737 -0.59039513 0.64691619 1.0504160307
## [123,] 2.24217198 -0.59039513 1.66657392 1.0504160307
## [124,] 0.55148575 -0.81982329 0.64691619 0.7880306775
## [125,] 1.03453895 0.55674567 1.10009740 1.1816087073
## [126,] 1.63835547 0.32731751 1.27004036 0.7880306775
## [127,] 0.43072244 -0.59039513 0.59026853 0.7880306775
## [128,] 0.30995914 -0.13153881 0.64691619 0.7880306775
## [129,] 0.67224905 -0.59039513 1.04344975 1.1816087073
## [130,] 1.63835547 -0.13153881 1.15674505 0.5256453243
## [131,] 1.87988207 -0.59039513 1.32668801 0.9192233541
## [132,] 2.48369858 1.70388647 1.49663097 1.0504160307
## [133,] 0.67224905 -0.59039513 1.04344975 1.3128013839
## [134,] 0.55148575 -0.59039513 0.76021149 0.3944526477
## [135,] 0.30995914 -1.04925145 1.04344975 0.2632599711
## [136,] 2.24217198 -0.13153881 1.32668801 1.4439940605
## [137,] 0.55148575 0.78617383 1.04344975 1.5751867371
## [138,] 0.67224905 0.09788935 0.98680210 0.7880306775
## [139,] 0.18919584 -0.13153881 0.59026853 0.7880306775
## [140,] 1.27606556 0.09788935 0.93015445 1.1816087073
## [141,] 1.03453895 0.09788935 1.04344975 1.5751867371
## [142,] 1.27606556 0.09788935 0.76021149 1.4439940605
## [143,] -0.05233076 -0.81982329 0.76021149 0.9192233541
## [144,] 1.15530226 0.32731751 1.21339271 1.4439940605
## [145,] 1.03453895 0.55674567 1.10009740 1.7063794137
## [146,] 1.03453895 -0.13153881 0.81685914 1.4439940605
## [147,] 0.55148575 -1.27867961 0.70356384 0.9192233541
## [148,] 0.79301235 -0.13153881 0.81685914 1.0504160307
## [149,] 0.43072244 0.78617383 0.93015445 1.4439940605
## [150,] 0.06843254 -0.13153881 0.76021149 0.7880306775
## attr(,"scaled:center")
## Sepal.Length Sepal.Width Petal.Length Petal.Width
## 5.843333 3.057333 3.758000 1.199333
## attr(,"scaled:scale")
## Sepal.Length Sepal.Width Petal.Length Petal.Width
## 0.8280661 0.4358663 1.7652982 0.7622377
head(scale(iris[,-5]))
## Sepal.Length Sepal.Width Petal.Length Petal.Width
## [1,] -0.8976739 1.01560199 -1.335752 -1.311052
## [2,] -1.1392005 -0.13153881 -1.335752 -1.311052
## [3,] -1.3807271 0.32731751 -1.392399 -1.311052
## [4,] -1.5014904 0.09788935 -1.279104 -1.311052
## [5,] -1.0184372 1.24503015 -1.335752 -1.311052
## [6,] -0.5353840 1.93331463 -1.165809 -1.048667
dim(iris)
## [1] 150 5
Berdasarkan hasil output diatas dapat diketahui bahwa dimensi data yang ada yaitu 150 baris dan 5 kolom.
str(iris)
## 'data.frame': 150 obs. of 5 variables:
## $ Sepal.Length: num 5.1 4.9 4.7 4.6 5 5.4 4.6 5 4.4 4.9 ...
## $ Sepal.Width : num 3.5 3 3.2 3.1 3.6 3.9 3.4 3.4 2.9 3.1 ...
## $ Petal.Length: num 1.4 1.4 1.3 1.5 1.4 1.7 1.4 1.5 1.4 1.5 ...
## $ Petal.Width : num 0.2 0.2 0.2 0.2 0.2 0.4 0.3 0.2 0.2 0.1 ...
## $ Species : Factor w/ 3 levels "setosa","versicolor",..: 1 1 1 1 1 1 1 1 1 1 ...
grid<- somgrid(xdim=5 , ydim=5 , topo = "hexagonal")
som.iris <- som(as.matrix(iris[,-5]), grid = somgrid(xdim = 4, ydim = 4, topo="hexagonal"))
str(som.iris)
## List of 14
## $ data :List of 1
## ..$ : num [1:150, 1:4] 5.1 4.9 4.7 4.6 5 5.4 4.6 5 4.4 4.9 ...
## .. ..- attr(*, "dimnames")=List of 2
## .. .. ..$ : NULL
## .. .. ..$ : chr [1:4] "Sepal.Length" "Sepal.Width" "Petal.Length" "Petal.Width"
## $ unit.classif : num [1:150] 1 5 5 5 1 1 5 5 5 5 ...
## $ distances : num [1:150] 0.0767 0.0548 0.0172 0.0212 0.0901 ...
## $ grid :List of 6
## ..$ pts : num [1:16, 1:2] 1.5 2.5 3.5 4.5 1 2 3 4 1.5 2.5 ...
## .. ..- attr(*, "dimnames")=List of 2
## .. .. ..$ : NULL
## .. .. ..$ : chr [1:2] "x" "y"
## ..$ xdim : num 4
## ..$ ydim : num 4
## ..$ topo : chr "hexagonal"
## ..$ neighbourhood.fct: Factor w/ 2 levels "bubble","gaussian": 1
## ..$ toroidal : logi FALSE
## ..- attr(*, "class")= chr "somgrid"
## $ codes :List of 1
## ..$ : num [1:16, 1:4] 5.26 5.59 6.92 7.52 4.71 ...
## .. ..- attr(*, "dimnames")=List of 2
## .. .. ..$ : chr [1:16] "V1" "V2" "V3" "V4" ...
## .. .. ..$ : chr [1:4] "Sepal.Length" "Sepal.Width" "Petal.Length" "Petal.Width"
## $ changes : num [1:100, 1] 0.0308 0.0282 0.0254 0.025 0.0279 ...
## $ alpha : num [1:2] 0.05 0.01
## $ radius : Named num [1:2] 2.65 0
## ..- attr(*, "names")= chr [1:2] "66.66667%" ""
## $ na.rows : int(0)
## $ user.weights : num 1
## $ distance.weights: num 1
## $ whatmap : int 1
## $ maxNA.fraction : int 0
## $ dist.fcts : chr "sumofsquares"
## - attr(*, "class")= chr "kohonen"
Melihat hasil plot dari data dengan syntax seperti berikut.
plot(som.iris, type="mapping")
Berdasarkan hasil output diatas dapat diketahui bahwa dimensi dari letak gambar yaitu 4x4 maka terdapat sebanyak 16 lingkaran yang menyatakan data sudah terkumpul pada masing-masing lingkaran tersebut.
som.iris$grid$pts
## x y
## [1,] 1.5 0.8660254
## [2,] 2.5 0.8660254
## [3,] 3.5 0.8660254
## [4,] 4.5 0.8660254
## [5,] 1.0 1.7320508
## [6,] 2.0 1.7320508
## [7,] 3.0 1.7320508
## [8,] 4.0 1.7320508
## [9,] 1.5 2.5980762
## [10,] 2.5 2.5980762
## [11,] 3.5 2.5980762
## [12,] 4.5 2.5980762
## [13,] 1.0 3.4641016
## [14,] 2.0 3.4641016
## [15,] 3.0 3.4641016
## [16,] 4.0 3.4641016
Berdasarkan hasil output diatas dapat diketahui bahwa pada lingkaran pertama sumbu x bernilai 1.5 dan sumbu y bernilai 0.8660254 , pada lingkaran kedua sumbu x bernilai 2.5 dan sumbu y bernilai 0.8660254 dan seterusnya.
som.iris$unit.classif
## [1] 1 5 5 5 1 1 5 5 5 5 1 5 5 5 1 1 1 1 1 1 1 1 5 1 5
## [26] 5 1 1 1 5 5 1 1 1 5 5 1 1 5 1 1 5 5 1 1 5 1 5 1 5
## [51] 7 7 7 13 7 14 7 9 7 13 9 10 13 10 13 7 14 13 15 13 16 10 11 10 10
## [76] 7 7 7 10 13 13 13 13 11 14 10 7 15 14 13 14 10 13 9 14 14 14 10 9 14
## [101] 8 16 3 12 8 4 14 4 12 4 12 12 3 16 16 8 12 4 4 15 3 16 4 11 8
## [126] 4 11 11 12 3 4 4 12 11 12 4 8 12 16 3 8 3 16 8 8 3 11 12 8 16
Berdasarkan output diatas dapat diketahui bahwa objek nomer 1 masuk dalam lingkaran 9 , objek nomer 2 masuk dalam lingkaran 14 dan objek nomer 145 masuk dalam lingkaran 4.
plot(som.iris)
text(som.iris$grid$pts, labels = som.iris$unit.classif,cex=1.5)
Berdasarkan hasil plot diatas dapat diketahui bahwa dari semua 4
variabel yang ada tidak ada satupun variabel yang direduksi. Pada warna
hijau mewakili variabel Sepal.Lengh , pada warna kuning mewakili
variabel Sepal.Width , dan seterusnya.
Berdasarkan plot diatas dapat diketahui bahwa terlihat nilai-nilai dari nomor objeknya. Dalam satu lingkaran terdapat beberapa objek sehingga beberapa angka bertumpukkan menjadi satu.
som.iris$codes[[1]]
## Sepal.Length Sepal.Width Petal.Length Petal.Width
## V1 5.261855 3.695019 1.486750 0.2704213
## V2 5.585739 3.510916 2.324128 0.5929579
## V3 6.916308 3.057181 5.466464 2.1250718
## V4 7.517370 3.164203 6.388450 2.0812045
## V5 4.711997 3.138671 1.415328 0.1983177
## V6 5.354541 3.298424 2.261639 0.5424190
## V7 6.634671 3.041814 4.664854 1.4850323
## V8 6.543123 3.234957 5.682493 2.3276353
## V9 5.007307 2.347628 3.263493 1.0072001
## V10 6.082643 2.957657 4.398822 1.3975978
## V11 6.218207 2.711096 4.945164 1.7262684
## V12 6.422447 2.864145 5.502469 1.9100223
## V13 5.628294 2.552657 3.859564 1.1606951
## V14 5.569631 2.845832 4.294849 1.3345385
## V15 6.164354 2.321002 4.563135 1.4291510
## V16 5.818562 2.824856 4.984744 1.9523345
Berdasarkan hasil output diatas terdapat sebanyak 16 nilai dari 4 variabel. Nilai V1 dari Sepal.Length adalah 5.404944 ,dari Sepal.Width sebesar 2.490191 , dan seterusnya sampai dengan V16.
dist(som.iris$codes[[1]])
## V1 V2 V3 V4 V5 V6 V7
## V2 0.9716101
## V3 4.7351776 3.7680156
## V4 5.7161803 4.7523684 1.1066670
## V5 0.7887753 1.3724608 4.9989712 6.0123188
## V6 0.9166863 0.3241365 3.9080700 4.9085925 1.1282867
## V7 3.7265167 2.7559231 1.0638539 2.0298626 3.9901265 2.8928438
## V8 4.8672063 3.9090232 0.5084991 1.2301491 5.1093038 4.0380687 1.3383776
## V9 2.3621852 1.6558466 3.2016352 4.2291905 2.1869989 1.4981052 2.3070204
## V10 3.3118107 2.3462339 1.5407725 2.5548073 3.5001355 2.4382658 0.6246880
## V11 3.9953513 3.0321529 1.0187824 2.0253852 4.1528140 3.1134675 0.6477535
## V12 4.5663572 3.5992924 0.5733273 1.4502267 4.7576946 3.7016674 0.9791940
## V13 2.8039446 1.8973570 2.3293078 3.3444280 2.8431452 1.8885818 1.4162470
## V14 3.1358591 2.2082304 1.9636273 2.9724945 3.2255125 2.2388617 1.1542405
## V15 3.6754903 2.7318611 1.5516774 2.5096988 3.7684964 2.7738658 0.8684680
## V16 4.0164542 3.0743570 1.2332535 2.2334065 4.1400813 3.1373155 1.0167629
## V8 V9 V10 V11 V12 V13 V14
## V2
## V3
## V4
## V5
## V6
## V7
## V8
## V9 3.2773759
## V10 1.6738331 1.7233297
## V11 1.1337095 2.2233900 0.6969097
## V12 0.5990605 2.8456125 1.2668172 0.6399160
## V13 2.4468887 0.8980662 0.8469830 1.3680278 1.9970806
## V14 2.0027238 1.3172929 0.5389554 1.0075548 1.5865553 0.5559561
## V15 1.7432769 1.7906922 0.6633249 0.6239371 1.2145783 0.9529454 0.8426567
## V16 1.1492939 2.1775821 0.8593091 0.4746900 0.7975276 1.4152797 0.9591839
## V15
## V2
## V3
## V4
## V5
## V6
## V7
## V8
## V9
## V10
## V11
## V12
## V13
## V14
## V15
## V16 0.9082484
hclust(dist(som.iris$codes[[1]]))
##
## Call:
## hclust(d = dist(som.iris$codes[[1]]))
##
## Cluster method : complete
## Distance : euclidean
## Number of objects: 16
Berdasarkan hasil diatas dapat diketahui bahwa pengelompokkan yang dilakukan dengan cluster hierarki menggunakan metode complete , dan menggunakan distance yaitu euclidean dengan objek sebanyak 16.
peta <- cutree(hclust(dist(som.iris$codes[[1]])),5)
plot(peta)
plot(som.iris,type="codes",bgcol=rainbow(5)[peta])
add.cluster.boundaries(som.iris,peta)
Berdasarkan hasil plot diatas dapat diketahui bahwa hasil pengelompokkan dari 20 objek lingkaran menghasilkan 5 kelompok. Pada kelompok lingkaran berwarna hijau terdapat 3 objek, kelompok lingkaran berwarna merah terdapat 5 objek , kelompok lingkaran berwarna kuning terdapat 4 objek , kelompok lingkaran berwarna ungu terdapat 1 objek dan kelompok lingkaran berwarna biru terdapat 3 objek. dan Dengan adanya garis pembatas seperti hasil output diatas maka dapat dilihat dengan jelas bahwa pengelompokkan yang terdapat pada data iris dengan SOM yaitu 5 kelompok.
~~~~~ THANK YOU ~~~~~