Algoritma SOM (Self Organizing Maps)

DW ADS

Hai hai sobat Exsight! Sobat Exsight pernah membayangkan gak, jika komputer yang biasa kita gunakan bisa melakukan sesuatu yang serupa dengan otak manusia? Lalu sobat mungkin juga sering mendengar istilah tentang kecerdasan buatan, tapi apakah sobat tahu bahwa ada algoritma keren yang memungkinkan komputer untuk belajar dan mengorganisir dirinya sendiri?

Nah, dalam hal ini algoritma yang digunakan oleh komputer tersebut adalah Algoritma SOM atau Self Organizing Maps. Mau tau secara lebih detail apa itu SOM? Serta bagaimana cara kerja dari SOM?
Yuk yuk tanpa berlama-lama lagi, simak artikel ini dengan seksama yaa!

Definisi

Algoritma Self Organizing Maps (SOM) atau sering juga disebut algorima Kohonen Networks, terkadang pula disebut juga dengan topology-preserving map merupakan suatu algoritma dalam bidang kecerdasan buatan yang digunakan untuk menganalisis data pada dimensi tinggi. Algoritma ini pertama kali ditemukan oleh Teuvo Kohonen pada tahun 1996.

Algoritma SOM merupakan salah satu algoritma berbasis jaringan saraf yang dapat digunakan untuk pengambilan keputusan, dimana algoritma ini memiliki cara kerja yang mirip dengan otak manusia dalam mengorganisir informasi. SOM bekerja dengan mengubah data input multi-dimensi ke dalam struktur dua dimensi, di mana setiap titik atau “neuron” pada peta tersebut merepresentasikan suatu kelompok atau pola tertentu. Proses ini memungkinkan komputer untuk mengidentifikasi pola, hubungan, dan struktur dalam data secara mandiri, sehingga sangat bermanfaat dalam pengelompokan, visualisasi data, dan pemetaan topologi dalam berbagai aplikasi seperti pengenalan pola, analisis data spasial, dan sistem rekomendasi.

Konsep Dasar Algoritma SOM

Konsep dasar dari algoritma SOM (Self Organizing Maps) melibatkan beberapa elemen kunci yang membentuk kelompok, berdasarkan karakteristik data menggunakan teknik pelatihan jaringan syaraf tiruan. Berikut adalah konsep-konsep dasar tentang algoritma SOM:

  1. Neuron atau Node:
    • Algoritma SOM menggunakan struktur yang disebut neuron atau node.
    • Setiap neuron merepresentasikan suatu kelompok atau pola tertentu dalam data.
  2. Bobot Neuron:
    • Setiap neuron memiliki vektor bobot yang merepresentasikan posisinya dalam ruang dimensi tinggi.
    • Bobot ini diinisialisasi secara acak pada awalnya dan akan disesuaikan selama proses pelatihan.
  3. Proses Pembelajaran:
    • Algoritma SOM memanfaatkan proses pembelajaran (training) tanpa pengawasan.
    • Data input dipresentasikan kepada model secara acak satu per satu.
  4. Pemetaan Topologi:
    • SOM memetakan data multi-dimensi data ke dalam representasi dua dimensi data, sehingga menciptakan suatu “peta” atau “grid.”
    • Topologi peta dipertahankan agar neuron yang dekat dalam ruang input juga tetap dekat di peta.
  5. Fungsi Jarak:
    • Fungsi jarak digunakan untuk mengukur sejauh mana neuron pada peta dari data input tertentu.
    • Jarak ini dapat dihitung dengan berbagai metode, seperti jarak Euclidean.
  6. Penyesuaian Bobot:
    • Setiap kali data input diterima, bobot neuron disesuaikan untuk mendekati vektor data input tersebut.
    • Proses ini membuat bobot neuron di sekitar data yang sering muncul menjadi lebih mendekati data tersebut.
  7. Laju Pembelajaran dan Radius Penyebaran:
    • Algoritma SOM memiliki parameter laju pembelajaran dan radius penyebaran.
    • Laju pembelajaran mengontrol seberapa cepat bobot neuron disesuaikan.
    • Radius penyebaran mengontrol seberapa banyak neuron yang dipengaruhi oleh data input saat ini.
  8. Iterasi Pelatihan:
    • Selama proses pelatihan, iterasi terus berlanjut hingga mencapai kondisi henti yang ditentukan.
    • Pada setiap iterasi, laju pembelajaran dan radius penyebaran dapat diperbarui.

Melalui kombinasi elemen-elemen ini, algoritma SOM mampu mengorganisir data, menemukan pola, dan menciptakan pemetaan topologis yang dapat digunakan untuk berbagai tujuan seperti pengelompokan, visualisasi data, atau analisis pola.

Algoritma Perhitungan Metode SOM

1. Pemberian nilai awal pada syaraf input.

x_{1},x_{2},\cdots,x_{i}

2. Pemberian nilai awal pada syaraf output sebanyak j x l :

y_{11},y_{12},\cdots,y_{jl}

3. Isikan bobot antara neuron input dan output dengan angka acak mulai dari 0 sampai 1
4. Ulangi sampai bobot tidak berubah atau telah mencapai jumlah maksimum iterasi.
5. Pilih satu dari vektor input yang ada.
6. Hitung jarak djl antara vektor input dan bobot setiap syaraf output menggunakan persamaan 1.

d_{jl}=\sum_{i=1}^{n}\left ( \mu _{ikl}-x_{i} \right )^{2}

7. Cari bobot (djl ) terkecil. Indeks bobot (djl ) yang serupa dinamakan syaraf pemenang.
8. Bobot koneksi pada setiap μijl diperbarui dengan persamaan 2.

\mu _{ijl}\left ( t+1 \right )=\mu _{ijl}\left ( t \right )+\gamma \left ( t \right )*h_{ijbc}*\left ( x_{i}\left ( t \right )-\mu _{ijl}\left ( t \right ) \right )

9. Simpan bobot yang telah konvergen.

Kelebihan dan Kelemahan

Terdapat beberapa kelebihan dan kelemahan dalam algoritma Self Organizing Maps (SOM).

Kelebihan

  1. Unsupervised Learning
    SOM merupakan suatu algoritma yang tidak memerlukan label pada data training (data pelatihan), sehingga algoritma SOM bersifat efisien dalam mengatasi masalah di mana label data sulit atau mahal untuk diperoleh.
  2. Visualisasi Data
    SOM dapat digunakan memetakan data multi-dimensi ke dalam representasi dua dimensi. Hal ini memungkinkan kita untuk melakukan visualisasi data yang kompleks sehingga kita dapat dengan mudah melihat pola dan struktur yang mungkin sulit dikenali dalam ruang dimensi tinggi.
  3. Pengelompokan (Clustering)
    Algoritma SOM sangat efektif dalam melakukan pengelompokan data ke dalam kelompok-kelompok yang berbeda, dengan cara ini, kita dapat mengidentifikasi pola dan relasi antara berbagai kelompok data.
  4. Topologi Konsisten
    SOM mempertahankan topologi data, yang berarti jika dua data memiliki hubungan dekat dalam ruang input, mereka juga akan dekat di peta SOM sehingga menjadikan algoritma SOM efektif dalam mempertahankan struktur relasional dalam data.
  5. Adapif terhadap Perubahan Data
    SOM memiliki kemampuan untuk beradaptasi terhadap perubahan dalam data tanpa perlu melatih ulang seluruh model. Hal ini membuat algoritma SOM cocok untuk penanganan data yang dinamis.

Kelemahan

  1. Pemilihan Hyperparameter
    Keberhasilan algoritma SOM sangat tergantung pada pemilihan hyperparameter yang tepat, seperti jumlah neuron, laju pembelajaran, dan radius penyebaran. Pemilihan hyperparameter yang tidak tepat dapat memberikan hasil yang kurang baik.
  2. Komputasi Intensif
    Proses training algoritma SOM dapat menjadi komputasi intensif, terutama pada dataset besar atau dengan banyak neuron. Hal ini memerlukan sumber daya komputasi yang signifikan.
  3. Sensitif terhadap Inisialisasi Bobot
    Performa SOM dapat sangat dipengaruhi oleh inisialisasi bobot awal. Inisialisasi yang buruk dapat mengarah pada konvergensi yang tidak optimal atau bahkan ke dalam solusi lokal yang suboptimal.
  4. Kurangnya Interpretasi yang Jelas
    Meskipun SOM mampu menghasilkan pemetaan data yang visual, interpretasi hasilnya kadang-kadang dapat sulit. Neuron pada peta tidak selalu memiliki makna interpretatif yang jelas, terutama dalam kasus peta yang kompleks.
  5. Keterbatasan pada Data Non-Lineer
    SOM memiliki keterbatasan ketika mengatasi data yang memiliki hubungan non-linier kompleks. Algoritma ini lebih cocok untuk masalah-masalah dengan struktur data yang relatif sederhana.

Perbandingan SOM dengan Algoritma Clustering Lainnya

Algoritma Self-Organizing Maps termasuk dalam kategori algoritma clustering. Meskipun secara khusus disebut sebagai “peta pengorganisasi diri”, dimana algoritma ini memiliki kemampuan untuk mengelompokkan data ke dalam kelompok atau klaster berdasarkan pola yang ada dalam data. Adapun perbandingan dari algoritma SOM dengan algoritma Clustering lainnya, diantaranya adalah sebagai berikut.

A. Perbandingan dengan K-Means Clustering

  1. Pendekatan Pembelajaran:
    • SOM
      Pembelajaran Tak Terawasi
      Algoritma SOM mengorganisir data ke dalam struktur dua dimensi tanpa memerlukan label kelas.
    • K-Means
      Pembelajaran Tak Terawasi
      Algoritma K-Means memerlukan jumlah kelompok (k) yang telah ditentukan sebelumnya dan membagi data berdasarkan pusat kelompok.
  2. Representasi Data:
    • SOM
      Representasi Topologis
      SOM menciptakan peta dua dimensi di mana neuron yang berdekatan dalam peta juga memiliki hubungan yang erat dalam ruang input.
    • K-means
      Representasi partitif
      K-Means membagi data ke dalam kelompok-kelompok yang tidak memiliki struktur topologis.
  3. Sensitivitas terhadap Inisialisasi:
    • SOM
      Lebih toleran terhadap inisialisasi bobot yang acak.
    • K-Means
      Sangat sensitif terhadap inisialisasi pusat kelompok awal.
  4. Adaptabilitas Terhadap Perubahan Data:
    • SOM
      Dapat beradaptasi terhadap perubahan data tanpa perlu melatih ulang seluruh model.
    • K-Means
      Harus melatih ulang model secara menyeluruh saat ada perubahan pada data.

B. Keunggulan dan Perbedaan dengan Algoritma Clustering Lainnya

  1. Keunggulan:
    • Pemetaan Topologis
      SOM mampu mempertahankan struktur topologis data, sementara algoritma clustering lain mungkin tidak mempertahankannya.
    • Pemahaman Visual
      Representasi dua dimensi dari SOM memudahkan pemahaman visual terhadap pola dalam data.
  2. Perbedaan dengan Algoritma Clustering Lainnya:
    • Dengan K-Means
      SOM dapat mengatasi masalah data non-linier dan menghasilkan pemetaan topologis, sementara k-means hanya mengelompokkan data tanpa mempertahankan struktur topologis.
    • Dengan Hierarchical Clustering
      SOM menghasilkan representasi yang lebih terstruktur dan visual daripada banyak metode hierarki.
  3. Aplikasi yang Berbeda:
    • SOM
      Cocok untuk tugas-tugas di mana pemetaan topologi dan visualisasi data diperlukan, seperti analisis citra, pemetaan geografis, dan sistem rekomendasi.
    • Algoritma Clustering lain
      Dapat lebih sesuai untuk tugas-tugas tertentu seperti segmentasi data atau pengelompokan dengan data yang sudah terstruktur dengan baik.

Pemilihan antara SOM dan algoritma clustering lainnya tergantung pada karakteristik data dan tujuan analisis. SOM memberikan keunggulan dalam pemetaan topologis dan visualisasi data kompleks.

Penerapan Algoritma SOM dalam Berbagai Bidang

Algoritma Self Organizing Maps (SOM) memiliki penerapan yang luas dalam berbagai bidang. Berikut adalah beberapa contoh penerapannya.

A. Pengenalan Pola dan Klasifikasi
SOM dapat digunakan dalam pengenalan pola dan klasifikasi data. Contohnya, dalam pengenalan karakter tulisan tangan atau identifikasi objek pada gambar.

SOM

B. Analisis Data Geospasial
Dalam bidang geospasial, SOM dapat digunakan untuk analisis pola spasial dan pemetaan, membantu dalam pemahaman distribusi geografis dan hubungan antarlokasi.

SOM

C. Optimasi Rute dan Logistik
Dalam industri logistik, SOM dapat membantu dalam optimasi rute pengiriman, pemetaan pusat distribusi, dan analisis pola pergerakan barang.

SOM

D. Pengelompokan dan Segmentasi Pelanggan
Dalam bidang pemasaran, SOM dapat membantu dalam pengelompokan pelanggan berdasarkan perilaku pembelian atau preferensi, memungkinkan perusahaan untuk menyusun strategi pemasaran yang lebih efektif.

SOM

E. Analisis Kesehatan dan Kedokteran
Dalam bidang kesehatan, SOM digunakan untuk analisis data kesehatan, pemetaan penyebaran penyakit, dan pengelompokan pasien berdasarkan karakteristik klinis.

SOM

Referensi

Imani, N., Alfassa, A., & Yolanda, A. (2022). Self Organizing Map (SOM) Clustering untuk Analisis Data Indikator Sosial di Provinsi Nusa Tenggara Timur. Jurnal Gaussian, Vol.11, No.3.

Rayhani, A., Astuti, W., Shufila, Z., & Widodo, E. (2021). Implementasi Self Organizing Map dalam Pengelompokkan Kabupaten di Jawa Barat berdasarkan Kasus Covid-19. Jurnal Statistika dan Aplikasinya.

Sekian penjelasan tentang Algoritma SOM (Self Organizing Maps). Jika masih ada yang dibingungkan bisa langsung saja ramaikan kolom komentar atau hubungi admin melalui tombol bantuan di kanan bawah. Stay tuned di website https://exsight.id/blog/ agar tidak ketinggalan artikel-artikel menarik lainnya.

Sstt...
Mau Kiriman Artikel Terbaru Exsight
Tanpa Biaya Langganan? ????

Nama Kamu

Email Kamu

Dapatkan Akses Informasi Terupdate Seputar Dunia Data dan Statistika 🙂

Exsight ADS

Leave a Comment

Hubungi Admin
Halo, selamat datang di Exsight! 👋

Hari ini kita ada DISKON 20% untuk semua transaksi. Klaim sekarang!