X-means

X-means adalah salah satu metode clustering yang “terinspirasi” dari k-means. Bagi mereka yang bersinggungan dengan analisa data, biasanya familiar dengan k-means. Salah satu kekurangan dari k-means cluster adalah nilai “k” sebagai input untuk menentukan jumlah cluster atau kelompok yang terbentuk. Apakah nilai “k” tersebut adalah jumlah cluster yang terbaik dari data? Jawabannya belum tentu. Berawal dari permasalahan tersebut, maka ada beberapa scientist yang mengembangkan metode untuk mengoptimalkan jumlah cluster dari data, yaitu x-means.

Salah satu scientist yang mengembangkan metode x-means adalah Prof. Tsunenori Ishioka. Beliau mencoba menuliskan ide tersebut dalam:

  1. Tsunenori Ishioka: “Extended K-means with an Efficient Estimation of the number of Clusters,” Intelligent Data Engineering and Automated Learning — IDEAL 2000, Second International Conference, Shatin, N.T., Hong Kong, China, December 2000, proceedings 17–22. (Lecture Notes in Computer Science 1983, Kwong Sak Leung, Lai-Wan Chan, Helen Meng (Eds.), Springer, 17–22, 2000)
  2. Tsunenori Ishioka: “An Expansion of X-means for Automatically Determining the Optimal Number of Clusters,” The IASTED International Conference on Computational Intelligence (CI 2005), Calgary Canada, July 4-6, pp.91-96, 2005.

Beliau juga mempublish syntax versi software R untuk x-means ini, silahkan lihat detailnya melalui tulisan beliau. Sedangkan logic dari x-means versi Prof. Tsunenori Ishioka dalam jurnal tulisan tahun 2005 bisa digambarkan melalui flowchart berikut:

flowchart x-means tsunenori ishioka

Semoga tulisan ini memberi manfaat 🙂

 

Enjoy!

N

K-Medoids atau PAM

Salah satu metode clustering yang paling sering digunakan adalah k-means cluster. Namun, metode ini hanya dapat digunakan untuk data numeric, bagaimana jika data tersebut data ordinal atau mungkin data mix? Salah satu alternatif metode yang dapat digunakan untuk clustering dengan data mix adalah k-medoids atau PAM (Partitioning Around Medoids).

Saya sedang mencoba menggunakan metode ini melalui software R 3.2.4 untuk data berdimensi 200k  dengan 10 variabel. Berikut syntax yang saya gunakan di software tersebut:

pam(daisy(ddata),k)

Namun hasil running program saya masih error, karena memory saya tidak mendukung, adakah cara untuk menambah memory PC selain menambah RAM atau function memory.limit(size=NA)?

Let’s discuss!

N