Seiring dengan meningkatnya traffic dan kemudahan dalam mengelola content, kami mengucapkan banyak terima kasih kepada para pembaca setia pada blog www.softscients.web.id
Per 19 Maret 2020, kami sedang melakukan migrasi ke domain dan hosting yang lebih baik yaitu
Semoga dengan alamat domain dan hosting terbaru akan semakin memudahkan para pembaca dalam mencari materi/content. Migrasi dilakukan secara bertahap yang membutuhkan waktu yang cukup lama jadi jangan kuatir selama migrasi akan dilakukan secara hati-hati untuk memimalkan broken link
Kalian bisa lanjut baca di http://softscients.com/2020/03/25/buku-belajar-machine-learning-dengan-python-learning-vector-quantization/
Penulis menggunakan python dan numpy untuk melakukan perhitungan berikut
import csv
import numpy as np
from library_lvq import LVQ
print 'mulai'
d = np.genfromtxt('data.csv',delimiter=',')
data_input = d[:,0:2]
data_target = np.zeros([np.size(data_input,0),1]) #bikin matrix target
data_target[:,0] = d[:,2] #assign dengan kolom sebagai target
data_target = data_target+1
print 'data input',data_input
max_epoch = 1000
target_error = 0.01
lvq = LVQ()
jumlah_kelas = 3
jumlah_paramater = 2
bobot_awal = lvq.setBobotRandom(jumlah_kelas,jumlah_paramater) #kita pakai bobot random saja
#proses pelatihan
lvq.pelatihan(data_input,
bobot_awal,
data_target,
max_epoch,
target_error)
bobot_akhir = lvq.BOBOT #bobot hasil pelatihan
prediksi = lvq.pengujian(data_input,bobot_akhir) #lakukan prediksi
print 'target\n',data_target
print 'bobot awal\n',bobot_awal
print 'prediksi\n',prediksi
print 'bobot setelah pelatihan\n',bobot_akhir
print 'epoch\n',lvq.EPOCH
print 'done'
print 'kita bandingkan antar data_target==prediksi\n', data_target==prediksi
print 'jumlah data yang diuji\n',np.size(d,0)
b = data_target==prediksi
print 'jumlah berhasil\n',b.sum()
Dengan referensi berikut
[1] T. Kohonen. An introduction to neural computing. Neural Networks,1(1):3–16, 1988.
[2] T. Kohonen. Learning vector quantization. Neural Networks, 1:303,1988.
Menghasilkan
mulai
data input [[ 2.7810836 2.550537 ]
[ 1.46548937 2.36212508]
[ 3.39656169 4.40029353]
[ 1.38807019 1.85022032]
[ 3.06407232 3.00530597]
[ 7.62753121 2.75926224]
[ 5.33244125 2.08862677]
[ 6.92259672 1.77106367]
[ 8.67541865 -0.24206865]
[ 7.67375647 3.50856301]
[-1. -1. ]
[-2. -2. ]]
target
[[ 1.]
[ 1.]
[ 1.]
[ 1.]
[ 1.]
[ 2.]
[ 2.]
[ 2.]
[ 2.]
[ 2.]
[ 3.]
[ 3.]]
bobot awal
[[ 0.29099099 0.89736528]
[ 0.77639942 0.32244049]
[ 0.50293928 0.94421681]]
prediksi
[[ 1.]
[ 1.]
[ 1.]
[ 1.]
[ 1.]
[ 2.]
[ 2.]
[ 2.]
[ 2.]
[ 2.]
[ 3.]
[ 3.]]
bobot setelah pelatihan
[[ 1.31912068 2.09943898]
[ 5.80948915 1.28862291]
[-0.56895638 -0.29873992]]
epoch
3
done
kita bandingkan antar data_target==prediksi
[[ True]
[ True]
[ True]
[ True]
[ True]
[ True]
[ True]
[ True]
[ True]
[ True]
[ True]
[ True]]
jumlah data yang diuji
12
jumlah berhasil
12
No comments:
Post a Comment