JST : Klasifikasi Pengguna Listrik menggunakan Algoritma
Learning Vector Quantization (LVQ)
Vio Sri Zuliyanti
1, Dedy Hartama
2, Muhammad Ridwan Lubis
3,
Sundari Retno Andani
4, Ika Okta Kirana
5Program Studi Teknik Informatika, STIKOM Tunas Bangsa PematangSiantar,
1
viosrizuliyantii@gmail.com,
2dedyhartama@amiktunasbangsa.ac.id,
3ridwanlubis@amiktunasbanga.ac.id,
4sundari.ra@amiktunasbangsa.ac.id,
5ikaoktakirana123@gmail.com
Abstrak
Penelitian ini mengusulkan sebuah metode yang dapat digunakan untuk melakukan klasifikasi pengguna listrik berdasarkan daya yang digunakan. Pengguna listrik semakin meningkat setiap tahunnya yang menyebabkan adanya pengguna yang tidak bertanggung jawab dan tidak mematuhi aturan yanga ada. Dengan banyaknya pengguna menyebabkan para staff kesulitan dalam menentukan daya yang digunakan sesuai atau tidak dengan kebutuhan rumah tangga tersebut. Data diperoleh dari PT. PLN Rayon Perdagangan yang merupakan salah satu cabang kantor PLN yang ada di Indonesia. Dalam penelitian ini, adapun metode yang digunakan penulis dalam melakukan klasifikasi pengguna listrik yaitu algoritma Learning Vector Quantization (LVQ). Ada beberapa variabel masukan yang digunakan seperti jumlah tagihan, jumlah jam, tarif meteran dan golongan. Dengan algoritma Learning Vector Quantization (LVQ) akan dapat diperoleh hasil klasifikasi pengguna listrik berdasarkan daya. Hasil dari penelitian ini dalam melakukan klasifikasi menggunakan algoritma LVQ dengan menggunakan 3 model arsitektur, maka didapat hasil terbaik dengan model 4 – 8 – 3 yang memiliki tingkat arsitektur tertinggi yaitu 72%.
Kata kunci:
Learning Vector Quantization, pengguna listrik
1. Pendahuluan
Jaringan syaraf tiruan merupakan suatu sistem komputasi yang dapat memproses suatu informasi yang terinspirasi dari sistem sel syaraf biologi. Jaringan syaraf tiruan dapat digunakan untuk fungsi klasifikasi data, cluster, aproksimasi nonlinear dan regresi non parametric atau sebagai sebuah simulasi dari koleksi model syaraf biologi. Terdapat beberapa algoritma pada jaringan syaraf tiruan untuk melakukan klasifikasi salah satunya adalah Learning Vector Quantization (LVQ). LVQ adalah metode yang digunakan untuk pengelompokan input yang akan diberikan dan dilakukannya pembelajaran pada lapisan kompetitif yang diawasi secara otomatis [1]. Energi listrik merupakan hal penting dan sudah menjadi kebutuhan setiap manusia [2]. Dengan adanya energi listrik, manusia lebih mudah menjalankan segala aktivitas untuk kelangsungan hidup mereka. Pengguna listrik di Indonesia semakin meningkat setiap tahunnya. Meningkatnya penggunaan listrik secara signifikan, menyebabkan adanya pengguna yang tidak mematuhi aturan. Dengan banyaknya pengguna listrik membuat staff PLN kesulitan dalam mendeteksi daya yang digunakan sesuai dengan kebutuhan konsumen. PT.PLN Rayon Perdagangan memiliki banyak jumlah data pelanggan yang tidak sesuai dengan penggunaan listrik rumah tangga yang digunakan, sehingga jumlah data yang ada semakin menumpuk dan tidak tertera dengan baik. Hal ini, sangat mempengaruhi kemampuan kinerja para staff dalam mengelolah data dan pemberkasan terutama dalam melakukan klasifikasi pengguna listrik yang sesuai. Untuk mengklasifikasi pengguna listrik berdasarkan daya dibagi menjadi daya 450 VA, daya 900 VA dan daya 1300 VA. Dengan banyaknya data, menambah waktu kinerja staff dan kurang efisiennya hasil kerja yang hanya untuk mengklasifikasikan data – data pengguna yang tidak sesuai. Tidak hanya staff bidang
pengolahan data saja yang kinerjanya kurang efisien, tetapi staff yang melakukan pekerjaan di lapangan memiliki kendala dalam hal pengecekan pengguna yang melanggar. Hal ini terjadi dikarenakan belum adanya cara pengklasifikasian dengan metode klasifikasi yang dapat mengklasifikasikan jenis pengguna listrik berdasarkan daya yang digunakan.
2. Tinjauan Pustaka
2.1. Jaringan Syaraf Tiruan (Artifical Neural Network)
Jaringan syaraf tiruan (JST) merupakan suatu proses pengolahan informasi dari pengetahuan tentang sel syaraf biologis pada otak manusia. “JST adalah sebuah sistem komputer yang dapat dikatakan seperti otak buatan manusia, dimana sistem akan bekerja seperti menirukan cara berfikir manusia dan dapat melakukan segala kegiatan yang dilakukan oleh manusia” [3]. Jaringan syaraf tiruan dapat digunakan dalam melakukan prediksi dengan menggunakan model arsitektur pelatihan dan pengujian terhadap beberapa pola yang akan digunakan [4] Secara umum, jaringan syaraf tiruan sendiri memiliki proses sebagai berikut :
1. Proses Training
Pada proses ini JST akan diberi pengetahuan dalam bentuk pola – pola data sebagai masukan yang kemudian dilatih dan akan memberikan hasil sebuah model JST.
2. Proses Testing
Pada proses ini, JST akan mencocokkan dengan hasil proses pelatihan dengan cara mengenali pola – pola masukan yang telah diuji sebelumnya .
2.2. Learning Vector Quantization (LVQ)
Learning Vector Quantization (LVQ) merupakan salah satu pendekatan paling kuat
untuk prototipe klasifikasi berdasarkan data vektor. Model LVQ adalah alternative cerdas dengan rendah kompleksitas dan biaya komputasi yang menjadikannya menarik untuk berbagai aplikasi [5]. Berikut arsitektur dari jaringan syaraf tiruan LVQ seperti pada gambar 1 berikut :
Gambar 1. Arsitektur Jaringan Syaraf Tiruan LVQ
Arsitektur jaringan diatas menunjukkan jaringan LVQ dengan lapisan input, dan 2 unit neuron pada lapisan output. Proses yang terjadi pada setiap neuron adalah mencari jarak antara suatu vektor input ke bobot yang bersangkutan (w1 dan w2). Fungsi aktivasi
F1 akan memetakan y_in1 ke y1 = 1 apabila |x – w1| < |x – w2| dan y1 = 0 jika sebaliknya.
Demikian pula dengan yang terjadi pada fungsi aktivasi F2, yang akan memetakan y_in1
ke y1 = 1 apabila |x – w2| < |x – w1| dan y1 = 0 jika sebaliknya[7]. Pelatihan jaringan
Learning Vector Quantization digunakan untuk mencari vector bobot sebagai acuan
dalam melakukan klasifikasi [8]. Adapun algoritma pelatihan dari LVQ adalah sebagai berikut :
1. Inisialisasi vektor referensi dan learning rate α (0)
2. Selama kondisi berhenti bernilai salah, maka lakukan langkah berikut: a. Untuk masing – masing pelatihan vektor input x
b. Temukan j sehingga ||x – wj|| bernilai minimum
1. Jika T = cj maka wj (baru) = wj (lama) + α [x – wj (lama)]
2. Jika T ≠ cj maka wj (baru) = wj (lama) - α [x – wj (lama)]
d. Kurangi learning rate e. Tes kondisi berhenti.
3. Metodologi Penelitian
Rancangan penelitian ini dilakukan dengan mengamati dan mempelajari data yang akan digunakan. Hasil pengamatan akan dibuat percobaan yang mendukung dan kemudian akan dilakukan eksperimen data dengan menggunakan aplikasi Matlab sebagai
software klasifikasi algoritma Learning Vector Quantization (LVQ). Adapun tahapan
yang dilakukan pada rancangan penelitian ini adalah seperti pada gambar 2 berikut :
Mulai Analisis Kebutuhan Pengumpulan Data Menentukan Metode Input Data Pengguna Listrik
Penentuan Pola Pelatihan
Pengujian Hasil Pengolahan Data
Evaluasi
Hasil
Gambar 2. Rancangan Penelitian
Pada penelitian yang dilakukan penulis, data yang digunakan adalah data pengguna listrik yang di dapat dari laporan data pengguna listrik di PT. PLN Rayon Perdagangan di tahun 2019. Berikut ini adalah data yang didapat dari kantor PT.PLN Rayon Perdagangan yang akan digunakan dalam penelitian seperti pada tabel 1 berikut:
Tabel 1. Data Pengguna Listrik 2019
NO NAMA TAGIHAN JAM GOLONGAN TARIF TARGET 1 Pelanggan 1 142.547 699 Pelayanan Sosial S2 900 2 Pelanggan 2 46.888 481 Rumah Tangga R1M 900 3 Pelanggan 3 51.244 505 Rumah Tangga R1 450 4 Pelanggan 4 288.359 552 Rumah Tangga R1M 900 5 Pelanggan 5 613.322 476 Rumah Tangga R1 1300 6 Pelanggan 6 294.657 380 Rumah Tangga R1 900 7 Pelanggan 7 63.223 299 Rumah Tangga R1 450 8 Pelanggan 8 122.029 583 Rumah Tangga R1M 900 9 Pelanggan 9 498.022 758 Bisnis B1 900
… … … …
96 Pelanggan 96 67.866 377 Rumah Tangga R1 450 97 Pelanggan 97 298.357 368 Bisnis B1 900 98 Pelanggan 98 56.657 362 Rumah Tangga R1 450 99 Pelanggan 99 79.345 426 Rumah Tangga R1 450 100 Pelanggan 100 254.577 471 Bisnis B1 900
Kemudian data tersebut diinisialisasi kedalam bentuk angka agar dapat dibaca oleh
algoritma Learning Vector Quantization (LVQ) dengan beberapa masukan seperti berikut ini :
Tabel 2. Jumlah Tagihan (X1) Rank Jumlah Tagihan Value
0 - 100.000 1 101.000 - 200.000 2 201.000 - 300.000 3 301.000 - 400.000 4 401.000 - 500.000 5 ≥ 501.000 6 Tabel 4. Golongan (X3) Golongan Value Rumah Tangga 1 Bisnis 2 Pelayanan Sosial 3 Kantor Pemerintahan 4
Tabel 3. Jumlah Jam (X2) Rank Jumlah Jam Value
101 - 300 1 301 - 500 2 501 - 700 3 701 - 900 4 901 - 1000 5 Tabel 5. Tarif (X4) Tarif Value R1 1 R1M 2 S2 3 B1 4 Tabel 6. Target (Y)
Target Value
450 1
900 2
1300 3
4. Hasil dan Pembahasan
4.1. Pengolahan Data dengan Algoritma Learning Vector Quantization (LVQ)
Pada proses pengolahan data dengan LVQ terdapat sampel data input dengan menggunakan 4 variabel input yaitu X1, X2, X3, dan X4. Data terlebih dahulu di inisialisasi kedalam bentuk angka baik data training maupun data testing. Data training dan data testing dapat dilihat seperti pada tabel 7 dan tabel 8 :
Tabel 7. Data Training
No
Nama
Masukan
Target
X1 X2 X3 X4
1
Pelanggan 1
2
3
3
3
2
2
Pelanggan 10
3
3
1
1
1
3
Pelanggan 11
5
2
2
4
3
4
Pelanggan 12
3
2
1
1
1
… … … … 47 Pelanggan 47 4 2 1 2 2 48 Pelanggan 48 5 2 1 2 2 49 Pelanggan 49 1 2 1 1 1 50 Pelanggan 50 4 2 2 4 2Pada tabel 7 menjelaskan bahwa data training yang sudah di inisialisasi digunakan untuk pelatihan berdasarkan dari beberapa variabel input yang digunakan seperti jumlah tagihan, jumlah jam, golongan, tarif dan daya pengguna yang digunakan sebagai target pada penelitian ini.
Data testing dapat dilihat seperti pada tabel 8 berikut :
Tabel 8. Data Testing
No Nama Masukan Target
X1 X2 X3 X4 1 Pelanggan 1 2 2 1 1 2 2 Pelanggan 2 2 1 1 1 1 3 Pelanggan 3 4 2 1 1 3 4 Pelanggan 4 1 2 1 1 1 … … … … 47 Pelanggan 47 2 2 1 1 1 48 Pelanggan 48 1 2 1 4 1 49 Pelanggan 49 1 2 1 1 1 50 Pelanggan 50 2 2 1 1 1
Pada tabel 8 menjelaskan bahwa data testing yang sudah di inisialisasi digunakan untuk percobaan berdasarkan dari beberapa variabel input yang digunakan seperti jumlah tagihan, jumlah jam, golongan, tarif dan daya pengguna yang digunakan sebagai target pada penelitian ini.
4.2. Hasil Percobaan
Adapun proses yang dapat dilakukan untuk memasukkan data training dan data
testing kedalam Matlab dengan pola 4 – 8 – 3 adalah sebagai berikut :
a. Mengatur lokasi data yang akan digunakan >>filename = 'Data.xlsx';
>>sheet = 2;
>>xlRange = 'A1:CV4';
>>x = xlsread(filename, sheet, xlRange);
Kode diatas merupakan kode yang digunakan untuk membaca data training pada file
Microsoft excel pada sheet ke 2 dengan kolom mulai dari A1 sampai CV4.
>>filename = 'Data.xlsx'; >>sheet = 3;
>>xlRange = 'A1:CV3';
>>t = xlsread(filename, sheet, xlRange);
Kode diatas merupakan kode yang digunakan untuk membaca data testing pada file
Microsoft excel pada sheetke 3 dengan kolom mulai dari A1 sampai CV3.
b. Parameter Learning Vector Quantization (LVQ)
Ada dua hal yang harus diubah dalam menentukan parameter terhadap jaringan tersebut yaitu banyak hidden layer dan besar learning rate yang dapat dilihat pada kode berikut ini :
>>net = lvqnet(8,0.1);
Kode diatas berisikan banyak hidden layer dengan angka 8 yang terdapat pada pola 4-8-3 dan 0,1 yang merupakan learning rate terkecil yang di coba.
>>net = train(net,x,t); >>view(net);
>>y = net(x);
>>perf = perform(net,y,t);
Kode diatas merupakan kode yang digunakan untuk proses testing. c. Hasil Klasifikasi
>>classes = vec2ind(y);
Kode diatas merupakan kode yang digunakan untuk menampilkan hasil kalsifikasi pada software Matlab seperti pada gambar 3 berikut :
Gambar 3. Proses Training dan Testing Pola 4 – 8 – 3
Dari gambar 3 diatas yang merupakan hasil dari proses training dan testing dengan keterangan sebagai berikut :
1. Epoch pada proses training terjadi sebanyak 1000 epoch.
2. Waktu yang diperlukan untuk mencapai epoch 1000 adalah 11 menit 53 detik. 3. Performa dari proses training adalah sebesar 0,373.
Pola yang dimasukkan pada command window harus sesuai dengan pola yang terdapat pada proses training. Hal tersebut dapat dilihat seperti pada gambar 4 berikut :
Gambar 4. Feed – Forward Neural Network Pola 4 – 8 – 3
Pada gambar 4. menjelaskan bahwa pola harus sesuai dengan proses training dan pola pertama yang digunakan yaitu 4-8-3.
Gambar 5. Confusion Pola 4 – 8 – 3
Tab confusion merupakan tab yang digunakan untuk melihat hasil perhitungan Matlab dengan tingkat akurasi 72,0 %. Berdasarkan proses yang telah dilakukan diatas, maka mendapatkan hasil klasifikasi dengan pola 4 – 8 – 3 seperti pada tabel 9 berikut :
Tabel 9. Hasil Klasifikasi Pola 4 – 8 - 3
No
Nama
Masukan
Target Output
Hasil
X1 X2 X3 X4
1
Pelanggan 1
2
3
3
3
2
2
TRUE
2
Pelanggan 2
1
2
1
2
2
1
FALSE
3
Pelanggan 3
1
3
1
1
1
1
TRUE
4
Pelanggan 4
3
3
1
2
2
1
FALSE
5
Pelanggan 5
6
2
1
1
3
3
TRUE
6
Pelanggan 6
3
2
1
1
2
1
FALSE
7
Pelanggan 7
1
1
1
1
1
1
TRUE
8
Pelanggan 8
2
3
1
2
2
1
FALSE
9
Pelanggan 9
5
4
2
4
2
2
TRUE
… …
… … … …
…
…
…
96
Pelanggan 96
1
2
1
1
1
1
TRUE
97
Pelanggan 97
2
2
1
1
1
1
TRUE
98
Pelanggan 98
1
2
1
4
1
1
TRUE
99
Pelanggan 99
1
2
1
1
1
1
TRUE
100 Pelanggan 100
2
2
1
1
1
1
TRUE
Pada tabel 9 menjelaskan bahwa berdasarkan proses yang dilakukan dengan bantuan
software Matlab mendapatkan hasil klasifikasi dengan tingkat akurasi 72,0 % dengan
pola 4 – 8 – 3 dimana baris yang berwarna merupakan data yang error dengan jumlah 28 data dan yang tidak berwarna merah merupakan data yang cocok dengan jumlah 72 data dari hasil klasifikasi dengan variabel masukan yang digunakan.
5. Kesimpulan dan Saran
5.1. Kesimpulan
Kesimpulan yang dapat diambil dari penelitian yang dilakukan dengan menggunakan algoritma Learning Vector Quantization (LVQ) pada Jaringan Syaraf Tiruan pada pengguna listrik berdasarkan daya yang digunakan adalah sebagai berikut : 1. Penggunaa listrik dapat di klasifikasi berdasarkan tiga daya yaitu daya 450 VA, daya
900 VA dan daya 1300 VA dengan menggunakan empat atribut data yaitu jumlah tagihan yang dibayar, jumlah jam yang digunakan, golongan yang didapat dan tarif yang didapat untuk mendapathasil akurasi terbaik dalam menentukan klasifikasi menggunakan algoritma LVQ melalui proses training dan proses testing denga data yang dimasukkan kedalam pola jaringan yang terdiri dari lapisan input, lapisan
output,lapisan tersembunyi, learning-rate dan tingkat error.
2. Hasil akurasi dari 3 pola yang digunakan dalam percobaan di setiap pengujian yaitu pola 4-12-3, 4-8-3 dan 4-6-3 yanga memiliki hasil berbeda. Dengan hasil akurasi terbaik yang diperoleh pada penelitian ini adalah pola 4 – 8 – 3 dengan tingkat akurasi 72 % dan waktu yang dibutuhkan adalah 11 menit 53 detik.
5.2. Saran
Saran penulis terhadap skripsi ini adalah sebagai berikut :
1. Penelitian lebih lanjut diharapkan memiliki variasi nilai masukan, lapisan tersembunyi dan pola arsitektur yang dapat digunakan dengan software matlab dengan versi terbaru.
2. Penerapan algoritma Learning Vector Quantization (LVQ) dapat dilakukan klasifikasi ulang untuk mempercepat waktu pelatihan dan menghasilkan epoch yang lebih sedikit untuk mempermudah pendataan pengguna listrik
.
Referensi
[1] I. Agustinus, E. Santoso, and B. Rahayudi, “Klasifikasi Risiko Hipertensi Menggunakan Metode
Learning Vector Quantization ( LVQ ),” J. Pengemb. Teknol. Inf. dan Ilmu Komput. Univ.
Brawijaya, vol. 2, no. 8, pp. 2947–2955, 2018.
[2] S. S. Wiwaha, “Analisis Peluang Penghemat Konsumsi Energi Listrik Pada Pelanggan Rumah
Tangga,” Jurnzl ELTEK, vol. 15, no. 01, pp. 47–58, 2017.
[3] H. Jaya, Sabran, M. M. Idris, Y. A. Djawad, A. Ilham, and A. S. Ahmar, Kecerdasan Buatan. 2018.
[4] A. P. Windarto, M. R. Lubis, and S. Solikhun, “Implementasi JST pada Prediksi Total Laba Rugi
Komprehensif Bank Umum dan Konvensional dengan Backpropagation,” J. Teknol. Inf. dan Ilmu
Komput., vol. 5, no. 4, pp. 411–418, 2018.
[5] T. Villmann, A. Bohnsack, and M. Kaden, “Can learning vector quantization be an alternative to
SVM and deep learning? - Recent trends and advanced variants of learning vector quantization for classification learning,” J. Artif. Intell. Soft Comput. Res., vol. 7, no. 1, pp. 65–81, 2017.
[6] Z. A. Leleury, Y. A. Lesnussa, and J. Madiuw, “Sistem Diagnosa Penyakit Dalam dengan
Menggunakan Jaringan Saraf Tiruan Metode Backpropagation dan Learning Vector Quantization,” J.
Mat. Integr., vol. 12, no. 2, p. 89, 2017.
[7] Z. A. Leleury, Y. A. Lesnussa, and J. Madiuw, “Sistem Diagnosa Penyakit Dalam dengan
Menggunakan Jaringan Saraf Tiruan Metode Backpropagation dan Learning Vector Quantization,” J.
Mat. Integr., vol. 12, no. 2, p. 89, 2017.
[8] W. Artha Setyowati and W. Firdaus Mahmudy, “Optimasi Vektor Bobot Pada Learning Vector
Quantization Menggunakan Particle Swarm Optimization Untuk Klasifikasi Jenis Attention Deficit Hyperactivity Disorder (ADHD) Pada Anak Usia Dini,” J. Pengemb. Teknol. Inf. dan Ilmu Komput.