• Tidak ada hasil yang ditemukan

BAB III METODE PENELITIAN

3.7 Pembuatan Program

Pada tahap ini rancangan system yang telah dibuat akan diimplementasikan kedalam bentuk kode dengan menggunakan bahasa pemrograman Matlab.

35

BAB IV

IMPLEMENTASI DAN ANALISIS

Bab 4 ini akan dibahas mengenai hal-hal yang terkait dengan hasil implementasi system dari klasifikasi harga handphone yang telah dirancang dan diuji serta analisis pengujian dari penelitian ini.

4.1 Data

Data yang digunakan dalam penelitian ini adalah data harga handpone yang didapat dari website www.kaggle.com terdapat 20 atibut dan kelas label. Data yang diperoleh dilakukan seleksi atribut terlebih dahulu menggunakan aplikasi WEKA proses selanjutnya adalah proses preprocessing yaitu dengan melakukan normalisasi data. Kemudian setelah melalui proses preprocessing dilakukan proses classification dengan menggunakan metode K-Nearest Neighbor.

4.2 Implementasi Sistem

Proses sistem diawali dengan menginput data, normalisasi data, pemilihan perhitungan jarak, pemilihan jumlah tetangga, pemilihan perhitungan jumlah fold dan mengetahui hasil akurasi.

4.2.1 Input Data

Gambar 4.1 Input data atribut handphone

Gambar 4.1 merupakan proses input data yang diawali dengan menekan tombol “input data”

berada disebelah kiri tabel, setelah itu akan tampil jendela file explore lalu pilih file yang akan digunakan, pada sistem input ini menggunakan file dengan format excel *.xls yang akan ditampilkan pada tabel.

Gambar 4.2 Input data non label

Selanjutnya input data handphone yang tidak memiliki label, format file harus sama yaitu excel *.xls. Pada input ini sistem hanya membaca file yang bertipe .xls saja. Untuk memilih data yang akan digunakan penulis menggunkan fungsi getFile dan file yang akan dibaca adalah bertipe .xls menggunakan method xlread() selain file bertipe itu akan terjadi kesalahan atau sistem error.

Gambar 4.3 Source Code Input data

4.2.2 Preprocessing (Normalisasi)

Setelah berhasil input data selanjutnya adalah tahap normalisasi. Pada tahap ini penulis menggunakan 3 variasi yaitu tanpa normalisasi, min-max dan z-score.

Gambar 4.4 Gui Normalisasi

Dalam memanggil fungsi dari normalisasi ini penulis terlebih dahulu membuat kelas normalisasi min-max dan kelas z-score yang berisi rumus dari normalisasi tersebut. Pada codingan normalisasi min-max nantinya hasil dari perhitungan akan masuk kedalam kelas minMaxNorm selanjutnya akan dimasukkan ke dalam function NormData. Begitu juga

dengan normalisasi z-score akan dimasukkan ke dalam kelas zscore yang nantinya akan dimasukkan ke dalam function NormData. Data yang tadinya memiliki rentang yang berbeda selanjutnya akan di normalisasi menjadi rentang 0-1 dengan menggunakan rumus normalisasi min-max dan z-score

Gambar 4.5 Source Code Min-max normalisasi

Gambar 4.6 Source Code Z-score normalisasi

4.2.3 K-Nearest Neighbour

Selanjutnya ketika sudah melalui tahap normalisasi maka data akan memiliki rentang 0-1 lanjut ke tahap berikutnya yaitu penambangan data. Pada tahap penambangan data akan menggunakan algoritma K-Nearest Neighbour dalam proses ini yang akan dilakukan adalah memilih jumlah tetangga terdekat dan memilih jarak. Sebelumnya data akan dipisah menjadi data training dan data testing lalu akan dilakukan proses penambangan.

Gambar 4.7 Source code memisah data Training dan data Testing

Gambar 4.8 GUI K-Nearest Neighbor

a. Distance

Ketika data sudah dibagi menjadi data testing dan training maka tahap selanjutnya adalah menghitung jarak antar data testing dan training menggunakan Euclidean Distance atau Manhattan Distance pada tahap ini nantinya hasil dari perhitungan akan dimasukkan ke dalam matrix yang bermana matrix distance

Gambar 4.9 Source code Euclidean Distance

Gambar 4.10 Source code Manhattan Distance

Gambar 4.11 Source code Matrix distance

b. Jumlah Tetangga (k)

Setelah menemukan hasil dari jarak antara data testing dan training maka tahap selanjutnya menentukan jumlah tetangga terdekat. Pada tahap ini jumlah tetangga yang dipilih memiliki variasi yang berbeda yaitu 3,5,7,9. Penulis tidak menggunakan variasi tetangga dengan jumlah genap karena mungkin saja jumlah pola terdekat pada kelas label sama sehingga algoritma ini kesulitan dalam melakukan klasifikasi (tidak ada cara lain selain memilih kelas label secara acak) pada tahap ini tetangga akan dipilih sesuai dengan dialog box yang telah tersedia.

Gambar 4.12 Source code Tetangga

Gambar 4.13 GUI Jumlah Tetangga

4.2.4 Evaluasi

Proses evaluasi menggunakan K-Fold Cross Validation dengan membagi data menjadi n-fold di pada tahap ini data training dan testing akan dibagi menjadi beberapa bagian tergantung dari jumlah fold yang akan digunakan.

a. K-Fold Cross Validation

Gambar 4.14 Source code k-fold cross validation

b. Akurasi Menggunakan Confussion Matrix

Setelah membagi menjadi n-fold maka selanjutnya menghitung akurasi menggunakan metode Confussion Matrix. Hasil dari perhitungan akan dimasukkan ke dalam kelas accuracy

Gambar 4.15 Source code Confusion matrix

Gambar 4.16 GUI akurasi dan hasil

4.2.5 Data tanpa Label

Pada tahap ini data akan di label dengan menggunakan perhitungan yang sama dengan perhitungan hasil akurasi. Pada bagian ini hasil akan di proses dengan memanggil kelas knn2 dimana dalam kelas ini sudah terdapat perhitungan klasifikasi, sehingga hasil yang akan keluar adalah hasil dari kategori kelas tersebut.

Gambar 4.17 Source code input tanpa label

Gambar 4.18 Data non label

4.3 Proses Klasifikasi

Proses diawali dengan menginput data lalu user akan memilih metode normalisasi dan memilih jarak k yang akan digunakan, setelah itu user memilih variasi distance diantaranya Euclidean Distance dan Manhattan Distance. Yang terakhir adalah memilih berapa fold yang akan digunakan. User akan menekan tombol “Run” dan hasil yang akan muncul adalah berupa angka akurasi sesuai dengan fold yang diinginkan. Terlihat perbandingan antara hasil akurasi 3 fold cross validation dan 5-fold cross validation pada gambar

Gambar 4.19 Hasil dengan 3-Fold Cross Validation

Gambar 4.20 Hasil dengan 5-Fold Cross Validation

4.4 Uji Validasi

Pada sistem K-Nearest Neighbor dengan variasi normalisasi, jumlah tetangga, jarak dan cross validation ini tanpa menggunakan library yang disediakan oleh Matlab, maka perlunya uji validasi dengan data manual menggunakan excel. Pada uji validasi ini digunakan 25 data sampel. Pada variasi metode yang digunakan untuk uji coba adalah normalisasi z-score, menggunakan k 3 dan menggunakan variasi jarak Euclidean distance dan 5-fold cross validation. Hasil perhitungan manual menggunakan excel dan hasil perhitungan dengan sistem akan dibandingkan, uji validasi akan ditampilkan pada gambar berikut :

Gambar 4.21 Euclidean distance menggunakan z-score normaliasi hitung manual

Gambar 4.22 Euclidean distance menggunakan z-score normaliasi dengan sistem

Gambar 4.21 merupakan hasil dari perhitungan Euclidean distance pada data testing 1 dihitung manual menggunakan excel. Gambar 4.22 merupakan hasil dari perhitungan Euclidean distance pada data testing 1 dihitung menggunakan sistem. Dari kedua gambar tersebut diperoleh bahwa perhitungan manual menggunakan excel sama dengan hasil perhitungan pada system. Selanjutnya dilakukan uji validasi untuk metode k –fold cross validation

Gambar 4.23 Perhitungan k = 3 hitungan manual 1-Fold Cross Validation

Gambar 4.24 Perhitungan k= 3 jarak terdekat dengan sistem

Gambar 4.23 merupakan hasil dari perhitungan K-Fold Cross Validation yang dihitung manual menggunakan excel. Gambar 4.24 merupakan hasil perhitungan K-Fold Cross Validation menggunakan sistem. Pada perhitungan sistem dibagi menjadi 3 bagian kesamping yaitu bagian distance dan pada bagian menurun kebawah adalah hasil dari test nya.

Perhitungan manual pada excel dan juga perhitungan dengan sistem memiliki nilai yang sama.

Pengujian validasi sistem dengan menggunakan 25 data sampel menunjukkan sistem yang telah di buat dengan hitungan manual yang telah dihitung memililiki nilai yang sama.

4.5 Perbandingan nilai Confusion Matrix pada 3-Fold Cross Validation dan 5-Fold Cross Validation

Tabel 4.1 Nilai Confusion Matrix pada 3-Fold dan 5-Fold

Normalisasi Variasi Jarak Tetangga (K)

Nilai Rata-rata

Non-Normalisasi Euclidean Distance 3 0,908966667 0,918

Non-Normalisasi Euclidean Distance 5 0,926466667 0,917

Non-Normalisasi Euclidean Distance 7 0,927466667 0,9235

Non-Normalisasi Euclidean Distance 9 0,932466667 0,9305

Non-Normalisasi

Distance 9 0,923466667 0,8985

Min-Max Euclidean Distance 3 0,890533333 0,8875

Min-Max Euclidean Distance 5 0,890033333 0,8885

Min-Max Euclidean Distance 7 0,890533333 0,8885

Min-Max Euclidean Distance 9 0,902966667 0,8905

Min-Max

Manhattan

Distance 3 0,878533333 0,916

Min-Max

Manhattan

Distance 5 0,883533333 0,9195

Min-Max

Manhattan

Distance 7 0,896533333 0,9215

Min-Max

Manhattan

Distance 9 0,8955 0,926

Z-Score Euclidean Distance 3 0,877533333 0,8825

Z-Score Euclidean Distance 5 0,886033333 0,889

Z-Score Euclidean Distance 7 0,889033333 0,8955

Z-Score Euclidean Distance 9 0,897 0,9

Distance 5 0,883533333 0,8825

Z-Score

Manhattan

Distance 7 0,893033333 0,8935

Z-Score

Manhattan

Distance 9 0,892033333 0,8935

Nilai rata-rata akurasi keseluruhan 0,899444444 0,900583333

Penelitian ini menggunakan 2000 data dengan variasi normalisasi, jarak dan jumlah tetangga terdekat (k). Pada percobaan ini, hasil evaluasi Confusion Matrix pada 3-Fold Cross Validation yang memiliki rata-rata akurasi paling tinggi adalah dengan menggunakan variasi tanpa normalisasi, Euclidean Distance dan tetangga k = 9 yang bernilai 0,932466667 yang memiliki akurasi sangat baik. Hasil evaluasi Confusion Matrix pada 5-Fold Cross Validation yang memiliki rata-rata akurasi paling tinggi adalah dengan menggunakan variasi tanpa normalisasi, Euclidean Distance dan tetangga k = 9 yang bernilai 0,9305 yang memiliki akurasi sangat baik. Pada percobaan ini, hasil evaluasi Confusion Matrix pada 3-Fold Cross Validation yang memiliki rata-rata akurasi paling rendah adalah dengan menggunakan variasi z-score normalisasi, Manhattan Distance dan tetangga k = 3 yang bernilai 0,869033333 yang memiliki akurasi baik. Hasil evaluasi Confusion Matrix pada 5-Fold Cross Validation yang

memiliki rata-rata akurasi paling rendah adalah dengan menggunakan variasi normalisasi z-score, Manhattan Distance dan tetangga k = 3 yang bernilai 0,877 yang memiliki akurasi baik.

Hal ini membuktikan bahwa algoritma K-Nearest Neighbor dalam penentuan kalsifikasi harga handphone dapat bekerja dengan baik pada data ini. Seleksi atribut sangat berpengaruh dalam peningkatan nilai rata-rata akurasi dalam percobaan yang dilakukan. Pada 4 atribut yang sudah di seleksi melalui aplikasi WEKA yaitu RAM, Batery Power, PX Height dan PX Width hasil rata-rata akurasinya sangat tinggi sehingga dapat dikatakan bahwa ke 4 atribut ini sangat berpengaruh dalam penentuan harga handphone. Pada penelitian ini percobaan tanpa menggunakan normalisasilah yang memiliki tingkat rata-rata akurasi terbaik dibandingkan menggunakan normalisasi z-score dan min-max. Pada data ini penggunaan fold cross validation dalam evaluasi dapat meningkatkan akurasi menjadi lebih baik terlihat dari nilai rata-rata keseluruhan percobaan antara 3-fold dan 5-fold mengalami kenaikan walau tidak terlalu jauh.

Gambar 4.25 Grafik rata-rata akurasi keseluruhan

Pada grafik ini terlihat bahwa rata-rata akurasi paling tinggi dari antara semua percobaan adalah pada percobaan 3-fold cross validation tanpa normalisasi dengan menggunakan variasi jarak Euclidean dan jumlah tetangga sebanyak k = 9 dengan hasil akurasi rata-rata yaitu 0,932466667. Sedangkan hasil akurasi terendah dari seluruh percobaan adalah pada percobaan

5-fold cross validation menggunakan normalisasi z-score dengan variasi jarak Manhattan dan jumlah tetangga sebanyak k = 3 dengan hasil akurasi rata-rata yaitu 0,869033333.

Gambar 4. 26 Grafik rata-rata Akurasi non-normalisasi, min-max dan z-score keseluruhan Hasil pengujian pada seluruh percobaan terlihat pada grafik ini, semakin tinggi penentuan tetangga terdekat maka juga akan berpengaruh meningkatkan hasil akurasi. Maka ketika memiliki jumlah tetangga terdekat lebih banyak akan mempengaruhi perhitungan K-Nearest Neighbor untuk menjadi lebih baik. Terlihat pada gambar semakin tinggi k maka semakin tinggi juga nilai akurasi. Terlihat pada gambar menggunakan variasi jarak z-score memiliki akurasi yang paling rendah dari semua normalisasi.

Tabel 4.2 Akurasi Terendah dan Tertinggi 3-Fold dan 5-Fold Non-Normalisasi Min-max Z-score Akurasi Tertinggi

3-fold 0,93246667 0,90296667 0,897

Akurasi Terendah

3-fold 0,908966667 0,878533333 0,869033333

Akurasi Tertinggi

5-fold 0,9305 0,9 0,8935

Akurasi Terendah

5-fold 0,916 0,8825 0,877

Akurasi Keseluruhan

Rata-rata 3-fold 0,921408333 0,891020833 0,885904167 Akurasi Keseluruhan

Rata-rata 5-fold 0,9215 0,892563 0,887688

48

BAB V KESIMPULAN

5.1 KESIMPULAN

Dari hasil pengujian yang dilakukan kesimpulan yang dapat di ambil adalah sebagai berikut : 1. Algoritma K-Nearest Neighbour dapat digunakan pada sistem untuk membantu dalam

mengklasifikasikan harga handphone dilihat dari hasil percobaan yang dilakukan menggunakan 3-Fold Cross Validation dan 5-Fold Cross Validation mendapat hasil yang maksimal yaitu 0,899444444 dan 0,900583 hal ini menunjukkan jika algoritma ini baik dalam pengklasifikasian.

2. Dalam penelitian ini atribut/vitur yang tidak relevan ada sebanyak 16 atribut didapat dari hasil seleksi melakui metode Info Gain pada aplikasi WEKA karena dari 20 atribut ini hanya 4 atribut yang memiliki bobot paling baik yaitu RAM, PX Width, PX Height dan Baterry Power. Hal ini membuktikan bahwa 4 atribut ini sangat berpengaruh dalam penentuan harga hanphone.

3. Hasil rata-rata akurasi keseluruhan untuk 3-fold cross validation adalah 0,899444444 yang memiliki struktur baik. Hasil rata-rata akurasi keseluruhan untuk 5-fold cross validation adalah 0,900583333 yang memiliki struktur sangat baik. Dari rata-rata keseluruhan percobaan didapatkan kesimpulan bahwa semakin tinggi fold nya maka akan semakin tinggi juga tingkat akurasi rata yang didapatkan. Pada percobaan untuk mencari rata-rata keseluruhan akurasi menggunakan 5-fold cross validation yang lebih baik.

5.2 SARAN

1.

Pada tahap seleksi atribut dapat menggunakan algoritma yang berbeda.

2. Pada normalisasi data bisa menggunakan metode yang berbeda seperti Penskalaan Decimal.

3.

Dapat menggunakan variasi k yang lebih banyak

49

DAFTAR PUSTAKA

Fajar Astuti Hermawati. (2013). Data Mining. Penerbit Andi. Yogyakarta.

Lailil Muflikah, Dian Eka Ratnawati, Rekyan Regasari Mardi Putri. (2018). Press. Buku Ajar:

Data Mining. Penerbit UB. Malang.

Retno Tri Vulandari, S.Si., M.Si. (2017). Data Mining: Teori dan Aplikasi Rapidminer. Penerbit Gava Media. Yogyakarta.

Dr. Suyanto, (2019). Data Mining: Untuk Klasifikasi dan Klasterisasi Data. Penerbit Informatika.

Bandung.

Eko Prasetyo. (2014). Data Mining- Mengelola Data menjadi Informasi Menggunakan Matlab.

Penerbit Andi. Yogyakarta.

Budi Santosa. (2007). Data Mining: Teknik Pemanfaatan Data untuk Keperluan Bisnis. Penerbit Graha Ilmu. Yogyakarta

Sumarno Hadi Putra, Barzan Trio Putra. (2018). Klasifikasi Harga Cell Phone menggunakan Metode K-Nearest Neighbor (KNN). Prosiding Annual Research Seminar 2018, Computer Science and ICT.

Alfriyandi Dwi. (2020). Klasifikasi Akreditasi Menggunakan Metode K-Nearest Neighbor (KNN) Pada Data Sekolah Menengah Atas. Skripsi. Yogyakarta

N. N. Dzikrulloh and B. D. Setiawan. (2017). Penerapan Metode K–Nearest Neighbor (KNN) dan Metode Weighted Product (WP) Dalam Penerimaan Calon Guru Dan Karyawan Tata Usaha Baru Berwawasan Teknologi (Studi Kasus : Sekolah Menengah Kejuruan Muhammadiyah 2 Kediri ).

Pengemb. Teknol. Inf. dan Ilmu Komput., vol. 1, no. 5, pp. 378–385. Malang

F. Liantoni. (2015). Klasifikasi Daun Dengan Perbaikan Fitur Citra Menggunakan Metode K-Nearest Neighbor. Skripsi. Surabaya

Han J and Kamber M. (2016). Data Mining: Concept and Techniques. Morgan Kaufmann Publisher. New York

Dokumen terkait