Pengenalan Pola (Pattern Recognition) dengan Perceptron


Pengenalan Pola adalah cabang kecerdasan yang menitik-beratkan pada metode pengklasifikasian objek ke dalam kelas – kelas tertentu untuk menyelesaikan masalah tertentu. Contoh yang dibahas kali ini adalah mengenai penentuan pola angka baru berdasarkan pola angka sebelumnya.
Pada Algoritma Perceptron sebelumnya telah dibahas mengenai prediksi nilai hasil data baru berdasarkan data-data yang sudah ada sebelumnya. Pada kali ini algoritma tersebut akan digunakan dalam pemecahan masalah mengenai pengenalan pola sederhana.



Diasumsikan ada 5 pola angka yang diketahui, yaitu pola angka 1 sampai dengan 5
Diasumsikan 5 pola angka tersebut adalah sebagai berikut:

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

Contoh data awal adalah sebagai berikut:



Selanjutnya ada pola baru yang ingin diketahui hasilnya
Maka tentukan pola baru ini cocok dengan pola yang mana saja
Diasumsikan pola baru adalah sebagai berikut:

1 1 1 1 1 1
1 1 1
1 1 1 1
1 1
1 1 1 1 1 1 1 1

Contoh data baru yang akan dihitung adalah sebagai berikut:



Sebelum masuk kedalam langkah-langkah pembahasan algoritma, ada beberapa konstanta atau parameter yang harus diketahui, yaitu:
* Tentukan jumlah maksimal perulangan / epoch yang digunakan dalam perhitungan
Diasumsikan dalam kasus ini, jumlah maksimal perulangan adalah 100 kali

* Tentukan nilai alpha sebagai rasio pembelajaran untuk digunakan pada perhitungan matriks bobot
Semakin besar nilainya, maka semakin cepat nilai bobot akan berubah-ubah
Diasumsikan dalam kasus ini, rasio pembelajaran adalah 0.0075

* Tentukan batas nilai kesalahan yang paling rendah
Jika nilai kesalahan yang ditemukan sudah kurang dari nilai ini, maka perhitungan akan dihentikan
Diasumsikan dalam kasus ini, batas nilai kesalahan yang paling rendah adalah 0.00001


Langkah-langkah penggunaan algoritma ini adalah

1. Lakukan proses pencarian matriks bobot terbaik untuk masing-masing pola angka

1a. Tentukan nilai bobot dan bias pada masing-masing pola angka

1a1. Hitung nilai delta yaitu selisih perhitungan antara kolom terakhir pola angka dengan hasil perhitungan kolom akhir pola angka tersebut

1a2. Hitung nilai bobot pada masing-masing data dengan rumus:
bobot = alpha * delta * nilai contoh data (0 atau 1)

1a3. Kemudian tambahkan nilai bias pada nilai bobot tersebut
Nilai bias dihitung dengan rumus:
bias = alpha * delta

1b. Setelah menemukan matriks bobot, maka hitung total nilai kesalahan untuk matriks bobot ini

1b1. Hitung nilai delta yaitu selisih perhitungan antara kolom terakhir pola angka dengan hasil perhitungan kolom akhir pola angka tersebut

1b2. Hitung nilai total, yaitu jumlah dari delta * delta

1b3. Total nilai kesalahan adalah nilai total dibagi 2
Apabila total nilai kesalahan sudah kurang dari batas nilai kesalahan minimal, maka hentikan perhitungan

2. Untuk masing-masing pola baru,
Lakukan perhitungan prediksi dari data baru menggunakan nilai bobot dan bias terbaik yang sudah ditemukan pada masing-masing pola angka

* Gunakan fungsi ini untuk menghitung prediksi dari data yang tersedia
Penjelasan lebih detail tentang fungsi ini dapat dilihat pada penjelasan skrip dibawah ini


Hasil akhir adalah: (klik untuk perbesar gambar)

cmd51


Contoh modul / source code dalam bahasa VB (Visual Basic) dapat didownload disini:



Jika membutuhkan jasa kami dalam pembuatan program, keterangan selanjutnya dapat dilihat di Fasilitas dan Harga
Jika ada yang kurang paham dengan langkah-langkah algoritma diatas, silahkan berikan komentar Anda.
Selamat mencoba.

Tinggalkan sebuah komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *