My friend once told me about her earliest memory. She was sitting a highchair, she thought she was about 18 months old. She remembers babbling and understanding exactly what she was saying but no one…
Kali ini aku akan membahas cara manalisis kluster non hirarki menggunakan software R. Data yang digunakan untuk analisis kali ini adalah dataset yang terdapat dalam R yaitu infert. Sebelum melakukan aklasifikasi dengan Artificial Neural Network, sebaiknya kita mengetahui terlebih dahulu apa yang dimaksud dengan Artificial Neural Network.
Metode Artificial Neural Network (ANN) disebut juga Simulated Neural Network (SNN) dan sering disebut juga sebagai Jaringan Syaraf Tiruan (JST). Hal tersebut dikarenakan oleh metode ini merupakan tiruan susunan syaraf (neuron) manusia. ANN adalah sebuah alat pemodelan data statistik dan non statistik. ANN dapat melakukan pemodelan hubungan yang rumit (kompleks) antara input dan output dengan tujuan untuk menemukan pola pada data (Habibi & Riksakomara, 2013).
Jaringan syaraf tiruan (ANN) adalah system pemroses informasi yang memiliki karakteristik mirip dengan jaringan syaraf biologi, yang merupakan representasi tiruan dari otak manusia, yang berisi berjuta-juta sel syaraf (neuron) dan berfungsi untuk memproses informasi. Neuron mempunyai karakteristik yang sama dalam ANN, terdiri dalam kelompok-kelompok yang disebut layer. Neuronneuron dalam satu layer terhubung dalam layer-layer lainnya yang berdekatan. Kekuatan hubungan antar neuron yang berdekatan direpresentasikan dalam kekuatan hubungan atau bobot (Dharma, Putera, & Ardana, 2011).
Jaringan syaraf pada manusia adalah inspirasi dari pembuatan metode ANN ini. Berikut ini dijelaskan perbedaan antara jaringan syaraf manusia dengan Artificial Neural Network (ANN). Pada jaringan manusia dendrit berfungsi untuk menerima dan menghantarkan suatu rangsangan ke badan sel. Badan sel bertugas untuk menerima rangsangan dari dendrit dan meneruskan ke akson. Kemudian akson memiliki fungsi untuk meneruskan impuls ke neuron lainnya (Habibi & Riksakomara, 2013).
Sedangkan pada Artificial Neural Network (ANN), strukturnya terdiri dari input layer, hidden layer dan output layer. Suatu informasi (α) akan diterima input layer menggunakan bobot kedatangan (w) tertentu. Setelah itu akan dilakukan penjumlahan bobot pada hidden layer. Kemudian hasil dari penjumlahan tersebut akan dibandingkan dengan nilai ambang (threshold). Jika nilai melewati ambang batas, maka akan diteruskan ke output layer, sedangkan jika nilai tidak melewati ambang batas, maka tidak akan diteruskan ke output layer (Habibi & Riksakomara, 2013)..
Layer input (input layer) terdiri dari neuron-neuron yang menerima sebuah input dari lingkungan luar. Input yang dimasukkan merupakan penggambaran dari suatu masalah. Layer tersembunyi (hidden layer) terdiri dari neuron-neuron yang menerima masukan dari input layer, dan kemudian membawa output ke layer berikutnya. Lapisan output disebut unit-unit output, terdiri dari neuron-neuron yang menerima output dari hidden layer dan mengirimkannya kepada pemakai (Dharma, Putera, & Ardana, 2011).
Langkah penting dalam pengembangan sebuah model ANN adalah penentuan bobot matrik melalui pelatihan (training). Ada dua tipe mekanisme training yaitu supervised training dan unsupervised training. Supervised training memerlukan supervisi dari luar untuk memandu proses training. Algoritma ini menggunakan sejumlah pasangan data input-output yang dipergunakan sebagai contoh, dimana data yang dipergunakan sebagai contoh sebaiknya menggunakan data yang sudah diketahui kebenarannya. Output dari jaringan lalu dibandingkan dengan data output yang diharapkan (output contoh) untuk mendapatkan selisih antara output perkiraan dengan output sebenarnya. Selisih inilah yang dipergunakan untuk mengubah bobot jaringan sehingga diperoleh output yang sama atau mendekati target. Mekanisme sebuah supervised training yang disebut algoritma back-propagation training umumnya banyak digunakan dalam aplikasi-aplikasi enjinering. Karena ANN tidak mempertimbangkan fisik dari permasalahan, ANN merupakan sebuah model blackbox namun dapat mendeteksi proses fisik dalam model ANN yang sudah ditraining (Dharma, Putera, & Ardana, 2011).
Langkah pertama adalah mengaktifkan Library yang akan digunakan. Pada analisis cluster dingunakan 3 library, yaitu factoextra, cluster, dan car. Syntax yang digunakan:
Setelah mengaktifkan library, selanjutnya kita memasukan data yang akan digunakan dengan syntax berikut:
Syntax di atas akan menghasilkan ouput seperti berikut:
Dari gambar di atas dapat dilihat bahwa dataset infert memiliki 8 variabel yaitu: Education, Age, Parity, Induced, Case, Spontaneous, Statum, dan Pooled.Stratum. Untuk mengetahui keterangan dari masing-masing variabel maka kita menggunakan syntax berikut:
Syntax di atas akan menghasilkan ouput seperti berikut:
Dari gambar di atas dapat dilihat struktur dari masing-masing variabel. Pada variabel education merupakan variabel yang berisikan beberapa faktor dengan 3 level yaitu 0–5yrs, 6–11yrs, dan 12+yrs. Untuk variabel Age, Parity, Induced, Case, Spontaneous, dan Pooled.Statum memiliki stuktur numeric sedangkan variabel Sratum memiliki struktur integer.
Selanjutnya adalah membuat data training sebesar 80% dari data yang digunakan, serta memisahkan antara data training dan testing menggunakan syntax berikut:
Selanjutnya kita akan mengambil nama dari variabel dan memberikan tanda (+) pada pemisah nama variabel serta menambahkan nama variabel independen yaitu “case”.
Syntax di atas akan menghasilkan ouput seperti berikut:
Dari gambar di atas dapat dilihat model ANN, sehingga didapatkan formulanya yaitu: data.case~data.age+data.parity+data.induced+data.spontaneous+data.stratum+data.pooled.stratum
Selanjutnya adalah menampilkan bentuk plot data train dari ANN menggunakan syntax berikut ini:
Syntax di atas akan menghasilkan ouput seperti berikut:
Dari gambar di atas dapat dilihat plot bahwa jaringan ini memiliki 6 input dimana masing-masing node input mewakili sebuah variabel. Kemudian pada hidden layer memiliki 5 neuron seperti yang sudah didefinisikan pada syntax di atas dan neuron yang berada di atas merupakan bias yang memiliki bobot terhadap masing-masing neuron.
Lalu garis-garis yang menghubungkan masing-masing neuron merupakan synapse yang memiliki bobot masing-masing.
Kemudian nilai error merupakan nilai loss yang di dapatkan ketika melakukan training pada newtwork. Didapatkan nilai error sebesar 13,475327. Dan nilai steps merupakan jumlah iterasi yang dilakukan oleh mesin, pada gambar di atas didapatkan mesin telah melakukan 21753 kali iterasi sehingga menghasilkan bobot yang tertera seperti gambar diatas
Selanjutnya kita akan menguji model ANN yang diperoleh menggunakan data testing dan melihat tingkat akurasinya dengan menggunakan syntax:
Syntax di atas akan menghasilkan ouput seperti berikut:
Dari gambar di atas dapat dilihat bahwa data yang diprediksi control (0) dan masuk ke klasifikasi control (0) sebesar 27 data, sedangkan yang diprediksi control (0) dan masuk ke klasifikasi case (1) sebesar 6 data. Data yang diprediksi case (1) dan masuk ke klasifikasi control (0) sebesar 6 data, sedangkan yang diprediksi case (1) dan masuk ke klasifikasi case(1) sebesar 11 data. Dari output tersebut dapat dilihat bahwa tingkat akurasi dari hasil prediksi sebesar 0.76atau 76%. Tingkat akurasi digunakan untuk melihat seberapa baik model mengkorelasikan hasil dengan atribut dalam data yang digunakan.
Selamat mencoba, semoga bermanfaat 😊😊😊
Dharma, I. S., Putera, I. A., & Ardana, P. D. (2011). Artificial Neural Networks untuk Pemodelan Curah Hujan Limpasan pada Daerah Aliran Sungai (DAS) di Pulai Bali. Jurnal Bumi Lestari, 10.
Habibi , M. Y., & Riksakomara, E. (2013). Peramalan Harga Garam Konsumsi Menggunakan Artificial Neural Network Feedforward-Backpropagation (Studi Kasus : PT. Garam Mas, Rembang, Jawa Tengah). Jurnak Teknik ITS, 307.
Cara Menghitung CVSS. Oke ini hanyalah catatan pribadi bagi saya mengenai bagaimana kita menentukan sebuah severity dari temuan bug menggunakan Common Vulnerability Scoring System atau CVSS. Common…
Accomplished investor and entrepreneur Elliot A. Rohde co-founded Newpark Capital in Park City, Utah, in 2015, and continues to serve as managing partner. He had previously spent time as the chief…
This dApp for affiliate programs is a template for projects that include affiliate as part of its functionality. Code can be used as a template for copy or as a library or as a set of ideas for…