Artificial Neural Network dengan R

Hallo statistician semuanya apa kabar kalian disana? semoga baik baik saja dan selalu diberi kesehatan amin ya rabbal alamin, tetap jaga kondisi badan kalian ya agar kalian bisa terhindar dari virus virus yang ingin menggangu fisik kalian.

Pada pembahasan sebelumnya kita telah membahas tentang clustering dengan berbagai aplikasi nah sekarang kita beralih dengan materi Artificial Neural Network dengan menggunakan aplikasi R.

Kalian udah pada tau belum apasih itu ANN (Artificial Neural Network) kalo pada masih asing mari kita bahas bersama sama ya, jangan lupa claps yang banyak jika pembahasan kali ini bermanfaat, lanjutttt

Artificial Neural Network

Jaringan Saraf Tiruan

Jaringan syaraf tiruan adalah system komputerisasi sebagai pemrosesan informasi yang memiliki karakyer mirip dengan jaringan syarat biologi pada saat penangkapan informasi dari “dunia luar”. Maksud sebenarnya dari jaringan syaraf tiruan adalah berusaha memmbuat sebuah model system komputerisasi infomasi yang dapat menirukan rangkaian cara kerja jaringan syaraf biologis.

Fungsi Aktivasi

Activation Function berfungsi untuk menentukan apakah neuron tersebut harus aktif atau tikda berdasarkan dari weighted sum dari input. Secara umum terdapat 2 jenis activation function, Linear dan Non-Linear activation function. Neuron pada inut layer tidak memiliki activation function, sedangankan neuron pada hiden layer dan output layer memiliki activation function yang kadang berbeda tergantung daripada data atau problem yang kita miliki.

Neural Network Architecture

Arsitektur biasa disebut sebagai multi-layer perceptron atau fully-connected layer. Arsitektur pertama mempunyai 3 buah neuron pada input layer dan 2 buah node output layer. Diantara input dan output, terdapat 1 hidden layer dengan 4 buah neuron. Sedangkan spesifikasi weight dan activation function adalah sebagai berikut.

Weight and Bias

Setiap neuron pada MLP saling berhubungan yang ditandai dengan tanda panah. Tiap koneksi memilikiw eight yang nantinya nilai dari tiap weight akan berbeda -beda. Hidden layer dan output layer memiliki tambahan input yang biasa disebut dengan bias.

Lanjut pada bagian pengerjaan:

  1. Langkah pertama adalah memanggil data. Adapun sintaks yang digunakan antara lain adalah.

2. Selanjutnya adalah memisahkan variable pada data (variable yang akan dianalisis). Adapun sintaks yang digunakan antara lain adalah.

3. Selanjutnya adalah mengubah variable diagnosis yang sebelumnya bertipe “string” atau “character” menjadi bentuk biner (0 dan 1). Adapun sintaks yang digunakan antara lain adalah.

4. Selanjutnya membuat data training dan testing, tapi sebelumnya adalah mendefinisikan data dengan pengacakan random. Adapun sintaks yang digunakan antara lain adalah.

5. Selanjutnya adalah mendefinisikan data untuk masing masing data training dan testing. Adapun sintaks yang digunakan antara lain adalah.

6. Selanjutnya adalah mendefinikan formula untuk studi kasus di atas. Adapun sintaks yang digunakan antara lain adalah.

7. Selanjutnya mendefinisikan model dan plot dari data training. Adapun sintaks yang digunakan antara lain adalah.

8. Selanjutnya adalah membuat prediksi dari model yang telah dibuat. Adapun sintaks yang digunakan antara lain adalah.

9. Terakhir adalah membuat confusion matrix dari prediksi model yang telah dibuat. Adapun sintaks yang digunakan antara lain adalah.

Pembahasan

Membuat Formula ANN

Pada metode Artificial Neural Network, hal yang harus diperhatikan terlebih dahulu adalah membagi data testing dan data training. Pembagian data testing dan data training adalah 25% dan 75%. Adapun jumlah dari data training adalah.

Data training yang digunakan adalah sebanyak 427 data dan sisanya adalah data testing. Selanjutnya adalah menetukan formula dari ANN. Adapun formula yang terbentuk adalah.

Membuat Plot dan Model ANN

Adapun model dan plot ANN yang terbentuk adalah

Dari plot di atas dapat dilihat bahwa jaringan ini memiliki 9 input dimana masing masing node input mewakili sebuah variabel. Kemudian pada hidden layer memiliki 5 neuron seperti yang sudah didefinisikan sebelumnya dan neuron yang berada di atas merupakan bias yang memiliki bobot terhadap masing-masing neuron.

Lalu garis garis yang menghubungkan masing-masing neuron merupakan synase yang memiliki bobot masing-masing.

Kemudian error merupakan nilai loss yang didapatkan Ketika kita melakukan training pada network ini. Pada kasus ini didapatkan nilai error sebesar 7.530654.

Lalu ada nilai steps, yang merupakan jumlah iterasi yang dilakukan oleh mesin, pada gambar di atas di dapatkan bahwa mesin telah melakukan 51961 kali iterasi sehingga menghasilkan bobot yang tertera pada gambar. Terakhir adalah membuat confusion matrix, Adapun confusion matrix yang di dapat adalah sebagai berikut.

Merujuk pada hasil confusion matrix, didapatkan prediksi untuk data di atas adalah sebagai berikut.

1. Kelompok “0” yang termasuk dalam kelompok “0” sebanyak 87.

2. Kelompok “0” yang termasuk dalam kelompok “1” sebanyak 5.

3. Kelompok “1” yang termasuk dalam kelompok “0” sebanyak 7.

4. Kelompok “1” yang termasuk dalam kelompok “0” sebanyak 43.

Selanjutnya adalah melihat akurasi yang didapat dari model SVM pada data training yaitu sebesar 0.9155 atau 91.55%. Nilai sensitivity yang didapat sebesar 0.9255 atau 92.55%. Nilai specifity yang didapat sebesar 0.8958 atau 89.58%. Nilai balanced accuracy yang didapat sebesar 0.9107 atau 91.07%.

Sumber

Dina Tri Utari, S. M. (2018). In Modul Praktikum Komputasi Statistika Jilid 1 . Yogyakarta: Jurusan Statistika Universitas Islam Indonesia.