• Tidak ada hasil yang ditemukan

BAB VI PENUTUP

6.2. Saran

Meskipun kesimpulan akhir penelitian ini sudah menjawab rumusan masalah dan memenuhi tujuan penelitian, namun tingkat keakuratan algoritma belum bisa dikatakan baik. Oleh karena itu, bagi peneliti yang akan melanjutkan penelitian ini, penulis menyarankan:

1. Gunakan data dengan jumlah yang lebih besar dan jumlah data yang setara untuk masing-masing kelas.

2. Data yang digunakan dalam penelitian ini adalah nilai matakuliah yang diambil oleh mahasiswa. Pada keadaan sebenarnya, satu matakuliah dapat diampu oleh beberapa dosen, sehingga persebaran nilai (varian) untuk masing-masing dosen adalah berbeda. Untuk peneliti yang akan menggunakan data yang sama, maka sebaiknya gunakan data nilai matakuliah yang diampu oleh satu dosen.

3. Sistem yang dibuat sebaiknya dirancang agar user dapat mengubah atribut dan model yang digunakan oleh algoritma, sehingga sistem dapat digunakan untuk meneliti berbagai jenis kasus.

DAFTAR PUSTAKA

Pang-Ning Tan, Michael Steinbach, Vipin Kumar. (2006). Introduction to Data

Mining. Boston: Pearson Education, Inc.

Jiawei Han, Micheline Kamber (2006). Data Mining: concept and techniques. San Francisco: Elsevier Inc.

Larose, Daniel T. (2006). Data Mining: methods and models. New Jersey: John Wiley & Sons, Inc.

Santosa Budi (2007), Data Mining: Teknik Pemanfaatan Data Untuk Keperluan

Bisnis. Yogyakarta: Graha Ilmu.

Richard O. Duda; Peter E. Hart; David G. Stork. (2006). Pattern Classification.

Canada: John Wiley & Sons, Inc.

Kamath, Chandrika. (2009). Scientific Data Mining: a practical perspective. Philadelpia: Society for Industrial and Applied Mathematics.

Pal, Sankar K., dan Mitra, Pabitra. (2004). Pattern Recognition Algorithms for Data

Mining. Florida: Chapman and Hall/CRC.

Nurgiyantoro, Burhan; Gunawan; Marzuki. (2009). Statistik Terapan Untuk

Penelitian Ilmu-Ilmu Sosial. Yogyakarta: Gadjah Mada University Press..

Uyanto, Stanislaus S. (2006). Pedoman Analisis Data Dengan SPSS. Yogyakarta: Graha Ilmu.

LAMPIRAN I

Pengujian Korelasi Antara Atribut dan Kelas

Pengujian korelasi dilakukan dengan menggunakan metode Pearson’s product

moment dan menggunakan software IBM SPSS Statistics. Hasil pengujian korelasi

antara atribut dengan kelas ditunjukkan pada tabel 1, dan hasil pengujian korelasi antara atribut dengan atribut titunjukkan pada tabel 2.

Tabel 1. Korelasi Antara Atribut dengan Kelas

INF100 Pearson Correlation .242** Sig. (2-tailed) 0.002 N 168 INF110 Pearson Correlation .206** Sig. (2-tailed) 0.007 N 169 INF111 Pearson Correlation 0.131 Sig. (2-tailed) 0.09 N 168 INF114 Pearson Correlation .283** Sig. (2-tailed) 0 N 168 INF160 Pearson Correlation .254** Sig. (2-tailed) 0.001 N 169 INF112 Pearson Correlation .217** Sig. (2-tailed) 0.008 N 150 INF113 Pearson Correlation 0.09 Sig. (2-tailed) 0.249 N 167 INF115 Pearson Correlation .185* Sig. (2-tailed) 0.018 N 163

INF121 Pearson Correlation .418**

N 168 INF121P Pearson Correlation .349** Sig. (2-tailed) 0 N 161 INF150 Pearson Correlation .255** Sig. (2-tailed) 0.001 N 168 INF161 Pearson Correlation .200** Sig. (2-tailed) 0.009 N 169 INF220 Pearson Correlation .355** Sig. (2-tailed) 0 N 164 INF220P Pearson Correlation .165* Sig. (2-tailed) 0.036 N 161 INF221 Pearson Correlation .239** Sig. (2-tailed) 0.002 N 162 INF221P Pearson Correlation .320** Sig. (2-tailed) 0 N 161 INF232 Pearson Correlation .271** Sig. (2-tailed) 0 N 167 INF232P Pearson Correlation .178* Sig. (2-tailed) 0.022 N 167 INF251 Pearson Correlation .188* Sig. (2-tailed) 0.015 N 167 INF270P Pearson Correlation -0.026 Sig. (2-tailed) 0.746 N 160

**. Correlation is significant at the 0.01 level (2-tailed). *. Correlation is significant at the 0.05 level (2-tailed).

Tabel 2. Korelasi Antara Atribut dengan Atribut INF 100 INF 110 INF 114 INF 160 INF 112 INF 115 INF 121 INF 121P INF 150 INF 161 INF 220 INF 220P INF 221 INF 221P INF 232 INF 232P INF 251 INF 100 Pearson Correlation 1 .264** .214** .182* .235** 0.131 .260** .241** .272** .165* .250** .309** .359** .376** .292** 0.141 .230** Sig. (2-tailed) 0.001 0.006 0.018 0.004 0.095 0.001 0.002 0 0.032 0.001 0 0 0 0 0.069 0.003 N 168 168 167 168 149 162 167 160 167 168 164 160 161 160 166 166 166 INF 110 Pearson Correlation .264** 1 .574** .407** .468** .532** .296** .306** .333** .241** .436** .384** .161* .330** .308** .309** .324** Sig. (2-tailed) 0.001 0 0 0 0 0 0 0 0.002 0 0 0.04 0 0 0 0 N 168 169 168 169 150 163 168 161 168 169 164 161 162 161 167 167 167 INF 114 Pearson Correlation .214** .574** 1 .442** .479** .565** .417** .394** .398** .329** .425** .412** .308** .351** .406** .305** .315** Sig. (2-tailed) 0.006 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N 167 168 168 168 149 163 167 160 167 168 163 160 162 161 166 166 166 INF 160 Pearson Correlation .182* .407** .442** 1 .372** .351** .385** .275** .342** .257** .361** .352** .248** .312** .293** .257** .208** Sig. (2-tailed) 0.018 0 0 0 0 0 0 0 0.001 0 0 0.001 0 0 0.001 0.007 N 168 169 168 169 150 163 168 161 168 169 164 161 162 161 167 167 167 INF 112 Pearson Correlation .235** .468** .479** .372** 1 .575** .411** .349** .460** .314** .428** .366** .299** .382** .434** .179* .354** Sig. (2-tailed) 0.004 0 0 0 0 0 0 0 0 0 0 0 0 0 0.029 0 N 149 150 149 150 150 145 150 145 149 150 145 143 145 143 148 148 148 INF Pearson Correlation 0.131 .532** .565** .351** .575** 1 .465** .392** .440** .313** .440** .453** .320** .455** .402** .367** .336**

115 Sig. (2-tailed) 0.095 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N 162 163 163 163 145 163 162 156 162 163 159 157 161 159 162 162 162 INF 121 Pearson Correlation .260** .296** .417** .385** .411** .465** 1 .580** .619** .211** .451** .401** .463** .578** .524** .415** .366** Sig. (2-tailed) 0.001 0 0 0 0 0 0 0 0.006 0 0 0 0 0 0 0 N 167 168 167 168 150 162 168 161 167 168 163 160 161 161 166 166 166 INF 121P Pearson Correlation .241** .306** .394** .275** .349** .392** .580** 1 .355** .313** .450** .391** .428** .677** .462** .383** .243** Sig. (2-tailed) 0.002 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.002 N 160 161 160 161 145 156 161 161 161 161 157 155 156 155 160 160 160 INF 150 Pearson Correlation .272** .333** .398** .342** .460** .440** .619** .355** 1 .158* .475** .417** .414** .416** .489** .403** .236** Sig. (2-tailed) 0 0 0 0 0 0 0 0 0.041 0 0 0 0 0 0 0.002 N 167 168 167 168 149 162 167 161 168 168 163 160 161 160 166 166 166 INF 161 Pearson Correlation .165* .241** .329** .257** .314** .313** .211** .313** .158* 1 .189* .263** .249** .281** .213** .216** .260** Sig. (2-tailed) 0.032 0.002 0 0.001 0 0 0.006 0 0.041 0.016 0.001 0.001 0 0.006 0.005 0.001 N 168 169 168 169 150 163 168 161 168 169 164 161 162 161 167 167 167 INF 220 Pearson Correlation .250** .436** .425** .361** .428** .440** .451** .450** .475** .189* 1 .451** .434** .439** .580** .326** .272** Sig. (2-tailed) 0.001 0 0 0 0 0 0 0 0 0.016 0 0 0 0 0 0 N 164 164 163 164 145 159 163 157 163 164 164 160 159 158 164 164 164 INF 220P Pearson Correlation .309** .384** .412** .352** .366** .453** .401** .391** .417** .263** .451** 1 .392** .438** .349** .305** .357** Sig. (2-tailed) 0 0 0 0 0 0 0 0 0 0.001 0 0 0 0 0 0

N 160 161 160 161 143 157 160 155 160 161 160 161 157 156 161 161 161 INF 221 Pearson Correlation .359** .161* .308** .248** .299** .320** .463** .428** .414** .249** .434** .392** 1 .537** .426** .237** .240** Sig. (2-tailed) 0 0.04 0 0.001 0 0 0 0 0 0.001 0 0 0 0 0.002 0.002 N 161 162 162 162 145 161 161 156 161 162 159 157 162 159 162 162 162 INF 221P Pearson Correlation .376** .330** .351** .312** .382** .455** .578** .677** .416** .281** .439** .438** .537** 1 .444** .316** .319** Sig. (2-tailed) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N 160 161 161 161 143 159 161 155 160 161 158 156 159 161 161 161 161 INF 232 Pearson Correlation .292** .308** .406** .293** .434** .402** .524** .462** .489** .213** .580** .349** .426** .444** 1 .302** .378** Sig. (2-tailed) 0 0 0 0 0 0 0 0 0 0.006 0 0 0 0 0 0 N 166 167 166 167 148 162 166 160 166 167 164 161 162 161 167 167 167 INF 232P Pearson Correlation 0.141 .309** .305** .257** .179* .367** .415** .383** .403** .216** .326** .305** .237** .316** .302** 1 .188* Sig. (2-tailed) 0.069 0 0 0.001 0.029 0 0 0 0 0.005 0 0 0.002 0 0 0.015 N 166 167 166 167 148 162 166 160 166 167 164 161 162 161 167 167 167 INF 251 Pearson Correlation .230** .324** .315** .208** .354** .336** .366** .243** .236** .260** .272** .357** .240** .319** .378** .188* 1 Sig. (2-tailed) 0.003 0 0 0.007 0 0 0 0.002 0.002 0.001 0 0 0.002 0 0 0.015 N 166 167 166 167 148 162 166 160 166 167 164 161 162 161 167 167 167

LAMPIRAN II

Skenario Use Case

Nama Use Case Mengimpor Data

Deskripsi Use Case Use case ini digunakan untuk memasukkan data kedalam sistem menggunakan file berekstensi .xls, atau file dari aplikasi Ms. Excel 2003. Data yang akan dimasukkan adalah data yang akan ditambang menggunakan algoritma NBC dan BBN.

Pra Kondisi -

Langkah Umum Kegiatan Aktor Respon Sistem 1. Pengguna menekan

tombol impor

2. Sistem menampilkan kotak dialog open file

3. Memilih file dan menekan tombol open

4. Sistem membaca file, dan menampilkannya dalam tabel

Alternatif -

Kesimpulan Use Case ini berhenti apabila data dalam file excel dapat terbaca dan berhasil dimasukkan kedalam tabel

Nama Use Case Mengekspor Data

Deskripsi Use Case Use case ini digunakan untuk menyimpan data dari sistem kedalam file Ms. Excel.

Pra Kondisi -

Langkah Umum Kegiatan Aktor Respon Sistem 1. Pengguna menekan tombol

ekspor

2. Sistem menampilkan kotak dialog save file

3. Memilih lokasi penyimpanan dan memasukkan nama file.

4. Sistem menyimpan data table kedalam file excel

Alternatif -

Kesimpulan Use Case ini berhenti apabila data dalam tabel berhasil disimpan kedalam file excel

Nama Use Case Menambah Baris

Deskripsi Use Case Use case ini digunakan untuk menambah baris baru kedalam tabel. Baris baru yang ditambahkan tidak berisi data (null) dan baris akan ditambahkan pada tabel diurutan paling akhir.

Pra Kondisi -

Langkah Umum Kegiatan Aktor Respon Sistem 1. Pengguna menekan tombol

Tambah Baris

2. Sistem menambahkan baris baru dalam tabel

Alternatif -

Kesimpulan Use Case ini berhenti apabila baris baru berhasil ditambahkan kedalam tabel

Nama Use Case Menghapus Baris

Deskripsi Use Case Use case ini digunakan untuk menghapus baris dalam tabel. Baris yang akan dihapus adalah baris yang dipilih (blok) oleh

Pengguna. Pengguna dapat menghapus satu baris atau banyak baris sekaligus.

Pra Kondisi -

Langkah Umum Kegiatan Aktor Respon Sistem 1. Pengguna memilih 1 baris

atau lebih yang akan dihapus dari tabel kemudian

menekan tombol Hapus Baris

2. Sistem menghapus baris yang dipilih dalam tabel

Alternatif -

Kesimpulan Use Case ini berhenti apabila baris yang dipilih berhasil dihapus dari dalam tabel

Nama Use Case Menyortir Data

Deskripsi Use Case Use case ini digunakan untuk mengurutkan data tabel berdasarkan kolom NIM atau Peminatan secara ascending

Pra Kondisi -

1. Pengguna menekan tombol sorting, lalu memilih salah satu pilihan sorting.

2. Sistem melakukan sorting dan menampilkan data

Alternatif -

Kesimpulan Use Case ini berhenti apabila semua data berhasil sortir

Nama Use Case Mengubah Data

Deskripsi Use Case Use case ini digunakan untuk memasukkan atau mengubah data kedalam tabel secara manual (ketik).

Pra Kondisi -

Langkah Umum Kegiatan Aktor Respon Sistem 1. Pengguna memilih cell dari

tabel dan memasukkan data

2. Sistem menyimpan data yang dimasukkan pengguna

Alternatif -

Kesimpulan Use Case ini berhenti apabila data berhasil dimasukkan/diubah dari dalam tabel

Nama Use Case Pencarian Data

Deskripsi Use Case Use case ini digunakan untuk mencari tupel berdasarkan kolom NIM

Pra Kondisi -

Langkah Umum Kegiatan Aktor Respon Sistem 1. Pengguna mengetikkan kata

kunci pencarian dalam textfield, lalu menekan tombol enter pada keyboard.

2. Sistem mencari NIM mahasiswa kemudian menampilkannya

Alternatif -

Kesimpulan Use Case ini berhenti apabila data berhasil dimasukkan/diubah dari dalam tabel

Nama Use Case Menentukan Jumlah Fold

Deskripsi Use Case Use case ini digunakan menentukan jumlah fold yang akan digunakan dalam proses cross validation.

Pra Kondisi  Tabel data mahasiswa yang akan ditambang sudah terisi

Langkah Umum Kegiatan Aktor Respon Sistem 1. Pengguna memasukkan

angka di spinner, lalu menekan tombol Proses

2. Sistem menampilkan rincian rencana cross validation

Alternatif -

Kesimpulan Use Case ini berhenti apabila telah memasukkan angka pada kolom Cross Validation, dan menekan tombol proses.

Nama Use Case Melakukan Klasifikasi

Deskripsi Use Case Use case ini digunakan untuk melakukan proses cross validation, klasifikasi, dan menghitung akurasi. Pengguna dapat melihat hasil klasifikasi algoritma, hasil cross validation, model hasil proses training algoritma, dan akurasi yang dihasilkan.

Pra Kondisi  Tabel data mahasiswa yang akan ditambang sudah terisi, dan tidak terdapat data yang mengandung error

Use case Menentukan Jumlah Fold sudah dijalankan

Langkah Umum Kegiatan Aktor Respon Sistem 1. Pengguna menekan tombol

Klasifikasi

2. Sistem melakukan proses cross validation, klasifikasi, dan menghitung akurasi, kemudian menampilkan hasilnya.

3. Sistem menampilkan list proses cross validation pada panel Klasifikasi,dan tabel akurasi algoritma pada panel Akurasi

4. Pengguna memilih list proses cross validation, kemudian menekan tombol Hasil Klasifikasi

5. Sistem menampilkan tabel hasil klasifikasi Algoritma 6. Pengguna memilih list

proses cross validation, kemudian menekan tombol Data Training

7. Sistem menampilkan tabel Data Training Hasil proses cross validation

8. Pengguna memilih list proses cross validation, kemudian menekan tombol Data Testing

9. Sistem menampilkan tabel Data Testing Hasil proses cross validation

10. Pengguna memilih list proses cross validation, kemudian menekan tombol Model NBC

11. Sistem menampilkan model yang dihasilkan algoritma NBC

12. Pengguna memilih list proses cross validation, kemudian menekan tombol Model BBN

13. Sistem menampilkan model yang dihasilkan algoritma BBN

14. Pengguna menekan tombol Akurasi pada Halaman Utama sistem

15. Sistem menampilkan panel Akurasi yang didalamnya terdapat rinci akurasi algoritma

Alternatif -

Kesimpulan Use case ini berhenti apabila akurasi algoritma sudah berhasil dihitung dan ditampilkan.

LAMPIRAN III

Diagram Aktifitas

1. Diagram Aktifitas Mengimpor Data

AKTOR SISTEM

Menampilkan Internal Frame Set Data

Klik tombol Set Data

klik tombol Impor Mula i Sesuai format? Tampilkan data Tampilkan pesan eror Ya Tidak Selesai Menampilkan kotak dialog

Memilih file dalam drive, lalu menekan tombol Open

2. Diagram Aktifitas Mengekspor Data

3. Diagram Aktifitas Menambah Baris

AKTOR SISTEM

Klik Tombol Set Data

Menampilkan Internal Frame Set Data

Selesai Mula

i

Klik tombol Tambah Baris

Menambah baris dalam tabel

AKTOR SISTEM

Selesai Klik tombol Set Data

Menampilkan Internal Frame Set Data

Mula i

Klik tombol Ekspor

Menampilkan kotak dialog Memilih lokasi penyimpanan,

memasukkan nama file, dan menekan tombol Save

4. Diagram Aktifitas Menghapus Baris

5. Diagram Aktifitas Menyortir Data

AKTOR SISTEM

Klik Tombol Set Data

Menampilkan Internal Frame Set Data

Selesai Mula

i

Klik tombol sorting, kemudian

pilih salah satu item Menyortir dan menampilkan data

AKTOR SISTEM

Klik Tombol Set Data

Menampilkan Internal Frame Set Data

Selesai Mula

i

Pilih baris, lalu klik tombol

Hapus Baris Menghapus baris yang dipilih

6. Diagram Aktifitas Mengubah Data

7. Diagram Aktifitas Pencarian Data

AKTOR SISTEM

Klik Tombol Set Data

Menampilkan Internal Frame Set Data

Selesai Mula

i

Ketikkan kata kunci pada kolom pencarian, lalu tekan

enter

Menandai data yang mengandung kata kunci

pencarian

AKTOR SISTEM

Klik Tombol Set Data

Menampilkan Internal Frame Set Data

Selesai Mula

i

Klik 2x pada cell dalam tabel, lalu

masukkan data baru Menyimpan data baru yang dimasukkan oleh pengguna

8. Diagram Aktifitas Menentukan Jumlah Fold

9. Diagram Aktifitas Melakukan Klasifikasi

AKTOR SISTEM

Klik Tombol Set Data

Menampilkan panel Set Data

Selesai Mulai

Ketikkan angka pada jspinner,

lalu tekan tombol Proses Menampilkan rincian data rencana cross validation

AKTOR SISTEM

Menampilkan panel Klasifikasi, didalamnya terdapat list proses

cross validation dan tombol

Klik Tombol Set Data

Menampilkan panel Set Data Mulai

Mengklik tombol Klasifikasi

Melakukan proses cross

validation, klasifikasi, dan

mengukur akurasi algoritma NBC dan BBN

Selesai Memilih salah satu list proses

cross validation, lalu menekan

tombol Hasil Klasifikasi Menampilkan tabel hasil klasifikasi algoritma Memilih salah satu list proses

cross validation, lalu menekan

tombol Data Training

Memilih salah satu list proses

cross validation, lalu menekan

tombol Data Testing Menampilkan data testing hasil proses cross validation Memilih salah satu list proses

cross validation, lalu menekan

tombol Model NBC Menampilkan model hasil

training algoritma NBC

Memilih salah satu list proses

cross validation, lalu menekan

tombol Model BBN Menampilkan model hasil

training algoritma BBN

Menekan tombol Akurasi di

Halaman Utama Menampilkan panel Akurasi

yang didalamnya terdapat rinci akurasi algoritma Menampilkan data training hasil proses cross validation

LAMPIRAN IV

Diagram Sekuensial

1. Diagram Sekuensial Mengimpor Data

<<Boundary>> InFrameSetData

<<Control>> ToolClass

1: klik tombol impor data

2: ImporData() 3: kotak dialog Open

Actor

4: pilih file

5: baca file 6: data tabel

2. Diagram Sekuensial Mengekspor Data

<<Boundary>> InFrameSetData

<<Control>> ToolClass

1: klik tombol Ekspor Data

2: EksporData() 3: kotak dialog Save

Actor

4: beri nama file

3. Diagram Sekuensial Menambah Baris

4. Diagram Sekuensial Menghapus Baris

1: klik tombol hapus baris

Actor

2: menghapus baris tabel <<Boundary>>

InFrameSetData

5. Diagram Sekuensial Menyortir Data

1: Sortir Nim 2: SortingNim() Actor 3: Sortir Peminatan 4: SortingPeminatan() <<Boundary>> InFrameSetData <<Control>> ToolClass 1: klik tombol tambah baris

Actor

2: menambah baris tabel <<Boundary>>

6. Diagram Sekuensial Mengubah Data

1: input data pada cell tabel

Actor

2: mengubah data pada cell <<Boundary>>

InFrameSetData

7. Diagram Sekuensial Pencarian Data

1: Pencarian Data 2: search(String) Actor 3: Pesan Pencarian <<Boundary>> InFrameSetData <<Control>> ToolClass

8. Diagram Sekuensial Melakukan Cross Validation

<<Boundary>> InFrameSet Data Actor 2: Rincian data 1: jumlah fold

9. Diagram Sekuensial Melakukan Klasifikasi

<<Control>> CrossValidation <<Control>>

KlasifikasiNBC

1: klik tombol Klasifikasi

10: Tabel Akurasi Actor <<Control>> ToolClass <<Control>> KlasifikasiBBN 9: hasil klasifikasi

2: jml fold, data tabel

4: tabel training/testing 8: hasil klasifikasi 3: jml fold, CrossValidation 7: tabel training/testing 5: hasil klasifikasi <<Boundary>> InFrameKlasifikasi 15: tabel training 11: klik tombol Hasil Klasifikasi

12: menampilkan tabel Hasil Klasifikasi 13: klik tombol Data Training

14: fold terpilih 6: jml fold, CrossValidation

16: klik tombol Data Testing

18: tabel testing 17: fold terpilih 19: klik tombol Model NBC

21: model NBC 20: fold terpilih

22: klik tombol Model BBN

24: model BBN 23: fold terpilih

LAMPIRAN V

Diagram Kelas

InFrameSetData -btEkspor : JButton -btImpor : JButton -btTambahBaris : JButton -btHapusBaris : JButton -tfPencarian : JTextField -tabelData :JTable - spinnerCV : JSpinner -tools : ToolClass -dataTabel : DefaultTableModel +InFrameSetData() :<<Constructor>> -tfPencarianActionPerformed(ActionEvent) : void -btImporActionPerformed(ActionEvent) : void -btEksporActionPerformed(ActionEvent) : void -btTambahBarisActionPerformed(ActionEvent) : void -btHapusBarisActionPerformed(ActionEvent) : void - btProsesCVActionPerformed(ActionEvent) : void -btKlasifikasiActionPerformed(ActionEvent) : void -spinnerCVStateChanged(ChangeEvent) : void HalamanUtama - btHasilKlasifikasi : JButton - btManagaData : JButton - btPerbandingan : JButton - setData : SetData - klasifikasi : Klasifikasi - akurasi : Akurasi + HalamanUtama() : <<Constructor>> - btManagaDataActionPerformed(ActionEvent) :void - btHasilKlasifikasiActionPerformed(ActionEvent) :void - btPerbandinganActionPerformed(ActionEvent) :void + klasifikasi(int) : void

InFrameKlasifikasi -lismod : DefaultListModel -listProses : JList -btHasilKL :JButton -btModelBBN :JButton -btModelNBC :JButton -btTesting :JButton - btTraining :JButton - lismod : DefaultListModel -tools : ToolClass -fold : int - tabelHasil : DefaultTableModel[] -nbc : KlasifikasiNBC2 -bbn : KlasifikasiBBN -cv : CrossValidation +Klasifikasi() : <<Constructor>> -listProsesValueChanged(ActionEvent) : void -btHasilKLActionPerformed(ActionEvent) : void -btModelBBNActionPerformed(ActionEvent) : void -btModelNBCActionPerformed(ActionEvent) : void -btTestingActionPerformed(ActionEvent) : void -btTrainingActionPerformed(ActionEvent) : void +setHasilKlasifikasi(DefaultTableModel, int) : void -kelolaTabelHasilKlasifikasi(int) : void +setParent(HalamanUtama) : void InFrameAkurasi - akurasiBBNtotal : JProgressBar - akurasiNBCtotal : JProgressBar - bbnTabel : JTable - nbcTabel : JTable + InFrameAkurasi() : <<Constructor>> - setAkurasi(DefaultTableModel, DefaultTableModel) CrossValidation -dataTabel : DefaultTableModel -jmlKelompok : int - dataTraining : DefaultTableModel -dataTesting : DefaultTableModel

+ CrossValidation(DefaultTableModel, int) : <<Constructor>> + getTabelTraining (int) : DefaultTableModel

KlasifikasiNBC - attModel : float[][][] -kelasModel[] : float -hasilKlasifikasi : Object[][] - probKlasifikasi : Object[][] -cv : CrossValidation

+ KlasifikasiNBC (int, CrossValidation) : <<Constructor>> -trainingNBC(int) : void

-testingNBC(int) : void -indexAtt (Object) : int -indexKelas (Object) : int + getModel(int fold) : String + getHasilKlasifikasi () : Object[][] + getProbKlasifikasi() : Object[][] KlasifikasiBBN - kelasModel : float[][][] -inf121Model : float[][] -hasilKlasifikasi : Object[][] - probKlasifikasi : Object[][] -cv : CrossValidation

+ KlasifikasiBBN(int, CrossValidation) : <<Constructor>> -trainingBBN(int) : void

-testingBBN( int) : void - indexAtt (Object) : int - indexKelas (Object) : int + getModel(int fold) : String + getHasilKlasifikasi () : Object[][] + getProbKlasifikasi() : Object[][] ToolClass -dataTabel : DefaultTableModel -tabelNBC : DefaultTableModel -tabelBBN : DefaultTableModel + ToolClass(DefaultTableModel) :<<Constructor>> + cekTabelEror() : boolean + search(String) : int + sortingNim() :void + sortingPeminatan() : void + eksporData() : void + imporData() : void - getFilterFile(JFileChooser) : File + hitungAkurasi () : void + getTabelNBC() : DefaultTableModel + getTabelBBN() : DefaultTableModel

Diagram Kelas Keseluruhan

HalamanUtama

InFrameSetData InFrameKlasifikasi InFrameAkurasi

ToolsClass KlasifikasiNBC KlasifikasiBBN Akurasi CrossValidation

LAMPIRAN VI

Algoritma Proses Klasifikasi

A. Algoritma getTabelTraining

a. Nama Kelas : CrossValidation

b. Nama Metode : getTabelTraining(int fold)

c. Fungsi Metode : memperoleh data training dari data keseluruhan menggunakan metode cross validation.

d. Algoritma :

1. Untuk i=0, selama memenuhi i < dataTabel.getRowCount(), lakukan perintah 2

2. Cek, jika variable i%jmlFold != fold, maka salin data dari dataTabel baris ke-j ke baris baru dataTraining

3. Berikan hasil (return) dataTraining

B. Algoritma getTabelTesting

a. Nama Kelas : CrossValidation

b. Nama Metode : getTabelTesting(int fold)

c. Fungsi Metode : memperoleh data testing dari data keseluruhan menggunakan metode cross validation.

d. Algoritma :

1. Untuk i=0, selama memenuhi i < dataTabel.getRowCount(), lakukan perintah 2

2. Cek, jika variable i%jmlFold == fold, maka salin data dari dataTabel baris ke-j ke baris baru dataTesting

3. Berikan hasil (return) dataTesting

C. Algoritma indexAtt

a. Nama Kelas : KlasifikasiNBC dan KlasifikasiBBN b. Nama Metode : indexAtt(Object nilai)

c. Fungsi Metode : untuk menunjukkan indeks dalam array. d. Algoritma :

1. Cek, jika nilai sama dengan “A”, berikan hasil (return) 0 2. Cek, jika nilai sama dengan “B”, berikan hasil (return) 1 3. Cek, jika nilai sama dengan “C”, berikan hasil (return) 2 4. Cek, jika nilai sama dengan “D”, berikan hasil (return) 3

D. Algoritma indexKelas

e. Nama Kelas : KlasifikasiNBC dan KlasifikasiBBN f. Nama Metode : indexKelas(Object nilai)

g. Fungsi Metode : untuk menunjukkan indeks dalam array. h. Algoritma :

1. Cek, jika nilai sama dengan “COM”, berikan hasil (return) 0 2. Cek, jika nilai sama dengan “DBS”, berikan hasil (return) 1 3. Cek, jika nilai sama dengan “NET”, berikan hasil (return) 2

E. Algoritma trainingNBC

a. Nama Kelas : KlasifikasiNBC b. Nama Metode : trainingNBC(int fold)

c. Fungsi Metode : melakukan proses training dan menghasilkan model untuk kelas yang ditentukan

d. Algoritma :

1. Deklarasikan variabel dataTrain bertipe DefaultTableModel dan bernilai samadengan hasil (return) getTabelTraining(fold) dari kelas CrossValidation

2. Deklarasikasikan variabel attModel bertipe float array 3 dimensi, dengan dimensi pertama sejumlah banyak atribut, dimensi kedua sejumlah banyak nilai atribut (A,B,C,D), dan dimensi ketiga sejumlah banyak kelas label (COM, DBS, NET)

3. Isikan nilai 1 untuk array attModel disemua indeks

4. Deklarasikan variabel kelasModel bertipe array float sejumlah banyak label kelas

5. Isikan nilai 0 untuk array kelasModel disemua indeks

6. Untuk i=0, dan selama memenuhi i < dataTrain.getRowCount(), lakukan langkah 7

7. Lakukan algoritma indexKelas dengan parameter berupa label kelas pada baris ke-i, lalu gunakan hasil (return) sebagai index array kelasModel. Ubah nilai variabel tersebut dengan

menambahkan nilainya dengan 1;

8. Untuk j=0, sampai sebanyak jumlah atribut yang digunakan dalam NBC, lakukan proses berikut

9. lakukan penambahan nilai 1 pada variabel attModel indeks di dimensi 1 adalah j, indeks di dimensi 2 adalah hasil algoritma indexAtt dengan parameter berupa data pada atribut NBC di baris ke-i, dan indeks di dimensi 3 adalah hasil algoritma indexKelas dengan parameter berupa label kelas di baris ke-i.

10. Hitung probabilitas attModel berdasarkan peminatannya 11. Hitung probabilitas kelasModel

F. Algoritma testingNBC

a. Nama Kelas : KlasifikasiNBC b. Nama Metode : testingNBC

c. Variabel Kelas : float[][] comModel, dbsModel, netModel; Object[][] hasilKlasifikasi

d. Parameter : DefaultTableModel dataTest

e. Fungsi Metode : melakukan proses testing dan menghasilkan label kelas untuk tiap record data

f. Algoritma :

1. Deklarasikan variabel dataTest bertipe DefaultTableModel dan bernilai samadengan hasil (return) getTabelTesting(fold) dari kelas CrossValidation

2. Untuk setiap baris pada dataTest, lakukan perintah berikut

3. Hitung probabilitas kelas COM pada baris dan simpan hasilnya dalam variabel hasilCOM

4. Hitung probabilitas kelas DBS pada baris dan simpan hasilnya dalam variabel hasilDBS

5. Hitung probabilitas kelas NET pada baris dan simpan hasilnya dalam variabel hasilNET

6. Cek nilai terbesar antara hasilCom, hasilDbs, dan hasilNet? Simpan hasil klasifikasi dalam variabel hasilKlasifikasi[fold][i], dan simpan probabilitasnya dalam variabel hasilProbabilitas[fold][i],

G. Algoritma trainingBBN

a. Nama Kelas : KlasifikasiBBN b. Nama Metode : trainingBBN(int fold)

c. Fungsi Metode : melakukan proses training dan menghasilkan model untuk kelas yang ditentukan

d. Algoritma :

1. Deklarasikan variabel dataTrain bertipe DefaultTableModel dan bernilai samadengan hasil (return) getTabelTraining(fold) dari kelas CrossValidation

2. Deklarasikan variable inf121Model bertipe array float 2 dimensi. Dimensi 1 digunakan untuk menyimpan peminatan, dan dimensi 2 digunakan untuk menyimpan nilai atribut.

3. Isikan nilai 1 untuk semua indeks dalam inf121Model 4. Untuk setiap baris dalam dataTrain, lakukan perintah 5

5. Lakukan proses inf121Model[indexKelas(label kelas tupel)][indexAtt(nilai matakuliah inf121)]++

7. Deklarasikan variabel kelasModel bertipe float array 3 dimensi,

dengan dimensi pertama sejumlah banyak banyak nilai atribut INF100, dimensi kedua sejumlah banyak nilai atribut INF232P , dan dimensi ketiga sejumlah banyak kelas label (COM, DBS, NET)

8. Isikan nilai 1 untuk semua indeks dalam kelasModel 9. Untuk setiap baris pada dataTrain lakukan perintah berikut

10. lakukan perintah kelasModel[indexAtt(nilai makul inf

100)][indexAtt(nilai makul inf232P)][indexKelas(label kelas tupel)]++

11. Hitung probabilitas kelasModel berdasarkan atribut INF100 dan INF232P

H. Algoritma trainingBBN

a. Nama Kelas : KlasifikasiBBN b. Nama Metode : testingBBN(fold)

c. Fungsi Metode : melakukan proses training dan menghasilkan model untuk kelas yang ditentukan

d. Algoritma :

1. Deklarasikan variabel dataTest bertipe DefaultTableModel dan bernilai samadengan hasil (return) getTabelTesting(fold) dari kelas CrossValidation

2. Untuk setiap baris pada dataTest, lakukan perintah berikut

3. Hitung probabilitas kelas COM pada baris dan simpan hasilnya dalam variabel hasilCOM

4. Hitung probabilitas kelas DBS pada baris dan simpan hasilnya dalam variabel hasilDBS

5. Hitung probabilitas kelas NET pada baris dan simpan hasilnya dalam variabel hasilNET

6. Cek nilai terbesar antara hasilCom, hasilDbs, dan hasilNet? Simpan hasil klasifikasi dalam variabel hasilKlasifikasi[fold][i], dan simpan probabilitasnya dalam variabel hasilProbabilitas[fold][i],

I. Algoritma hitungAkurasi

a. Nama Kelas : ToolClass b. Nama Metode : hitungAkurasi

c. Fungsi Metode : menghitung akurasi algoritma per-proses Cross

Validation

d. Algoritma :

1. Hitung jumlah data yang diklasifikasikan oleh algoritma NBC dengan tepat, dan simpan hasilnya dalam variabel jmlBenarNBC 2. Hitung jumlah data yang diklasifikasikan oleh algoritma BBN

Dokumen terkait