Pembuatan Aplikasi Data Mining Untuk Memprediksi Masa Studi Mahasiswa Menggunakan Algoritma K-Nearest Neighborhood
PEMBUATAN APLIKASI DATA MINING UNTUK
MEMPREDIKSI MASA STUDI MAHASISWA
MENGGUNAKAN
ALGORITMA K-NEAREST NEIGHBORHOOD
(Studi Kasus Data Akademik Jurusan Teknik Komputer-S1 Universitas Komputer Indonesia)
Oleh:
Astrid Darmawan 10207104 Pembimbing:
Selvia Lorena Br. Ginting, M.T Wendi Zarman, M.Si
JURUSAN TEKNIK KOMPUTER
FAKULTAS TEKNIK DAN ILMU KOMPUTER
UNIVERSITAS KOMPUTER INDONESIA
(2)
Pendahuluan
Latar Belakang
Maksud dan Tujuan
Batasan Masalah
(3)
Latar Belakang
(4)
4
Maksud:
•
Membuat perancangan aplikasi untuk
mengklasifikasi masa studi mahasiswa di
Jurusan
Teknik
Komputer
dengan
menggunakan
Algoritma
K-Nearest
Neighborhood.
Tujuan:
•
Untuk memprediksi tingkat kelulusan dan
persentase kelulusan mahasiswa di Jurusan
Teknik Komputer khususnya S1.
(5)
Batasan Masalah
Data yang digunakan hanya data Indeks Prestasi (IP)
mahasiswa jurusan Teknik Komputer Program Sarjana
(S1) dari semester 1 sampai semester 6.
Data yang digunakan telah dibersihkan secara manual
sebelum diproses
mining.
Visual Basic 6.0 sebagai aplikasi sistem antarmuka.
Pengolahan basis data menggunakan
database
Microsoft
Access 2007.
Data yang digunakan adalah data akademik mahasiswa
(6)
Dasar Teori
Data Mining
Klasifikasi
Algoritma Nearest
Neighborhood
(7)
Data Mining
Data mining
merupakan proses menemukan pengetahuan
yang baru dari data yang berjumlah besar yang disimpan di
(8)
Pengelompokan Data Mining
8
Data Mining
Predictive
Descriptive
Classification
(Klasifikasi)
Regression
(Regresi)
Time Series Analysis
Clustering
Summarization
Association Rules
(9)
Klasifikasi
Klasifikasi: tugas pembelajaran sebuah fungsi target f yang
memetakan setiap himpunan atribut x ke salah satu
class
label
y yang telah didefinisikan sebelumnya.
Classification
model
Atribut Set (x)
Input
Output
Class
Label y
Gambar.2.2 Model Klasifikasi
(10)
Algoritma Nearest Neighborhood (NN)
10
Pendekatan untuk
mencari kasus dengan
menghitung kedekatan
antara kasus baru (
testing
data
) dengan kasus lama
(
training sample
).
Nearest-neighbor
1-NN, yaitu
pengklasifikasikan
dilakukan terhadap 1
labeled data
terdekat.
K-NN, yaitu
pengklasifikasikan
dilakukan terhadap k
labeled data
terdekat
dengan K>1.
Jenis
algoritma
Nearest-neighbor:
(11)
Ecludian Distance:
Algoritma K-Nearest Neighborhood (KNN)
Atribut
Data
Training
Atribut
Data
Testing
Mulai
Euclidian
Sorting
Selesai Cari K data
terdekat Tentukan K
Hasil Cari label mayoritas
Mulai
For I = 1 to n-1
Sorted=true
For j= 0 to (n-1)-i
A[j]>a[j+1]
Temp=a[j] A[j]=a[j+1] A[j+1]=Temp
Sorted=false
j
Sorted=true
i Ya
Tidak
Tidak
Ya
(12)
Perancangan
Aplikasi data mining yang dibuat terdiri dari dua data, yaitu:
Data Testing
1.
NIM
2.
Indeks Prestasi (IP) mahasiswa dari semester satu sampai
enam.
Data Training
1.
NIM
2.
Indeks Prestasi (IP) mahasiswa dari semester satu sampai
enam.
3.
Keterangan (Kategori Kelulusan)
(13)
Data training memiliki kategori sebagai berikut:
Lulus Kategori
Lulus <= 5 Tahun Ya
Lulus > 5 Tahun Tidak
(14)
14
Perancangan Aplikasi Data Mining untuk 1 Data
Mahasiswa
Data Training Logo UNIKOM Hapus Kembali Keluar Cari Hitung Pilih Data TrainingNIM Nilai K
Pilih Data Testing
Pilih Semester Semester 1&2 Semester 1,2,3 &4 Semester 1,2,3,4 & 6
IP Semester 1 IP Semester 2
IP Semester 3 IP Semester 4
IP Semester 5 IP Semester 6
Hasil Jarak Sebelum di sorting Hasil Jarak yang sudah di sorting
Jarak yang termasuk kelompok nilai K
Persentase Peluang Kelulusan
Hasil kategori
Hasil Kecocokan APLIKASI DATA MINING UNTUK MEMPREDIKSI MASA STUDI MAHASISWA MENGGUNAKAN ALGORITMA
K-NEAREST NEIGHBORHOOD (STUDI KASUS DATA AKADEMIK JURUSAN TEKNIK KOMPUTER UNIVERSITAS KOMPUTER INDONESIA)
1 2 3 4 5 6 13 7 8 9 14 10 11 12 15 No Keterangan
1 Data Grid untuk menampilkan data training.
2 Pemilihan Tabeldatabase data testing
3 Option untuk memilih semester.
4 Button untuk mencari NIM.
5 Listbox untuk keluaran hasil perhitungan jarak
sebelum di sorting.
6 Listbox untuk keluaran hasil perhitungan jarak
setelah di sorting.
7 Listbox untuk kategori
8 Listbox untuk peluang kelulusan
9 Button untuk hitung jarak.
10 Button untuk keluar
11 Button untuk menghapus.
12 Button untuk kembali ke Form Utama.
13 Listbox untuk hasil kecocokan hasil data uji tehadap
data asli.
14 Listbox untuk hasil dari nilai K
15 Pemilihan Tabeldatabase data training
(15)
Perancangan Aplikasi Data Mining untuk 1
Database
Record data Logo UNIKOM Hapus Kembali Keluar Hitung Pilih Data Training Pilih Data Testing Pilih Semester 1&2Semester 1,2,3 &4 Semester 1,2,3,4 & 6
Hasil Jarak Sebelum di sorting Hasil Jarak yang sudah di sorting
Jarak yang termasuk kelompok nilai K
Persentase Kelulusan
Persentase Tingkat Keberhasilan Sistem APLIKASI DATA MINING UNTUK MEMPREDIKSI MASA STUDI MAHASISWA MENGGUNAKAN ALGORITMA K-NEAREST NEIGHBORHOOD (STUDI KASUS DATA AKADEMIK JURUSAN TEKNIK
KOMPUTER UNIVERSITAS KOMPUTER INDONESIA)
1 Peluang Kelulusan Nilai k 2 4 5
6 7 8
9 3 14 13 12 10 11 No Keterangan
1 Data Grid untuk menampilkan datatrainingdan data
testing.
2 Option untuk pemilihan semester .
3 combobox untuk memilih Tabel data testing.
4 List box untuk hasil jarak baru sebelum disorting
5 List box untuk menampilkan hasil jarak yang sudah
disorting.
6 Button untuk kembali ke form utama.
7 Button untuk menghapus.
8 Button untuk keluar dari aplikasi data mining.
9 Buttin untuk menghitung jarak
10 Listbox untuk keluaran hasil klasifikasi.
11 Listbox untuk hasil pengelompokan nilai K.
12 combobox untuk memilih Tabel data training.
13 Listbox untuk menampilkan persentase kecocokan data.
14 Listbox untuk menampilkan persentase prediksi
kelulusan.
(16)
Contoh Kasus
M
SEMESTER
Y=Klasifikasi X11 = 1 X12=2 X13=3 X14=4 X15=5 X16=6
1 3.94 4 4 4 3.89 3.58 Ya
2 1.68 1.84 1.53 2.32 2.88 2.69 Tidak
3 2.63 1.63 2.42 2.58 3 3.56 Tidak
4 3.21 3.42 3.84 2.79 3.6 3.75 Ya
5 3.11 3.58 3.35 3 3.11 3.21 Ya
6 2.68 2.79 3.16 2.95 3.23 3.68 Ya
7 2 1.53 2.11 2.16 2 1.88 Tidak
16
Tabel .1 data
training
(17)
M
SEMESTER
Y=Klasifikasi
X21 = 1 X22=2 X23=3 X24=4 X25=5 X26=6
1 2.95 2.76 2.32 1.8 2.75 2.87 ?
Tabel 3.6 Data Testing
(18)
Proses
Parameter yang dipakai adalah K=5
Menghitung kuadrat jarak
Euclid
(
query instance
)
masing-masing objek terhadap sampel data atau
training sample
yang diberikan dengan menggunakan rumus:
(19)
M=1
(20)
Tabel 3.7
Square Instance to Query Distance
20
M
SEMESTER
Square instance to query distance X11 =1 X12=2 X13=3 X14=4 X15=5 X16=6
1 3.94 4 4 4 3.89 3.58 3.46
2 1.68 1.84 1.53 2.32 2.88 2.69 1.84
3 2.63 1.63 2.42 2.58 3 3.56 1.59
4 3.21 3.42 3.84 2.79 3.6 3.75 2.3
5 3.11 3.58 3.35 3 3.11 3.21 1.86
6 2.68 2.79 3.16 2.95 3.23 3.68 1.73
(21)
Kemudian mengurutkan objek-objek tersebut ke dalam
kelompok yang mempunyai jarak
Euclid
terkecil.
Tabel 3.8 Mengurutkan Objek ke dalam Kelompok ke Jarak Euclid Terkecil
m
SEMESTER
Square instance to query distance
Jarak terkecil
Apakah termasuk
nearest-neighbor
(k) X11 = 1 X12=2 X13=3 X14=4 X15=5 X16=6
1 3.94 4 4 4 3.89 3.58 3.46 7
-2 1.68 1.84 1.53 2.32 2.88 2.69 1.84 3 Ya
3 2.63 1.63 2.42 2.58 3 3.56 1.59 1 Ya
4 3.21 3.42 3.84 2.79 3.6 3.75 2.3 6
-5 3.11 3.58 3.35 3 3.11 3.21 1.86 4 Ya
(22)
Mengumpulkan label
class
Y (klasifikasi
nearest
neighbor
).
Tabel 3.9 Label Class Y
22
M
SEMESTER
Square instance to query distance
Jarak terkecil
Apakah termasuk
nearest-neighbor
(k)
Y=Klasifikasi
X11 =1 X12=2 X13=3 X14=4 X15=5 X16=6
1 3.94 4 4 4 3.89 3.58 3.46 7 - Ya
2 1.68 1.84 1.53 2.32 2.88 2.69 1.84 3 Ya Tidak
3 2.63 1.63 2.42 2.58 3 3.56 1.59 1 Ya Tidak
4 3.21 3.42 3.84 2.79 3.6 3.75 2.3 6 - Ya
5 3.11 3.58 3.35 3 3.11 3.21 1.86 4 Ya Ya
6 2.68 2.79 3.16 2.95 3.23 3.68 1.73 2 Ya Ya
(23)
Mencari Mayoritas Kategori
m
SEMESTER
Square instance to
query distance
Jarak terkecil
Apakah termasuk
nearest-neighbor (k)
Y=Klasifikasi
X11 =1 X12=2 X13=3 X14=4 X15=5 X16=6
1 3.94 4 4 4 3.89 3.58 3.46 7 - Ya
2 1.68 1.84 1.53 2.32 2.88 2.69 1.84 3 Ya Tidak
3 2.63 1.63 2.42 2.58 3 3.56 1.59 1 Ya Tidak
4 3.21 3.42 3.84 2.79 3.6 3.75 2.3 6 - Ya
5 3.11 3.58 3.35 3 3.11 3.21 1.86 4 Ya Ya
6 2.68 2.79 3.16 2.95 3.23 3.68 1.73 2 Ya Ya
7 2 1.53 2.11 2.16 2 1.88 2.03 5 Ya Tidak
Ya=2
Tidak=3
Jadi, Data Testing tersebut termasuk kategori Lulus > 5
Tabel 6 Hasil Akhir
(24)
PENGUJIAN
Pengujian terdiri dari 2 proses yaitu:
1.
Pengujian 1
database
mahasiswa (data
training = 30
)
2.
Pengujian 1
database
mahasiswa (data
training = 61
)
Masing-masing proses pengujian tersebut menggunakan Indeks Prestasi
(IP)
1.
Dua semester (semester 1 dan 2),
2.
Empat semester (semester 1-4) dan
3.
Enam semester (semester 1-6)
Menggunakan nilai k yang berbeda.
Untuk mengetahui tingkat keberhasilan pada sistem ini maka penulis
menggunakan rumus:
(25)
(26)
26
(27)
Kesimpulan
4. Untuk menggunakan data training yang berjumlah 30
data dengan menguji data testing berjumlah 60 data, maka didapatkan nilai k yang terbaik untuk
memprediksi masa studi mahasiswa yaitu sebagai berikut:
• Untuk dua semester yaitu nilai k yang terbaik untuk memprediksi masa studi mahasiswa adalah nilai k=10 dengan tingkat keberhasilan 80%.
• Untuk empat semester, nilai k yang terbaik untuk memprediksi masa studi mahasiswa adalah nilai k=30 dengan tingkat keberhasilan 78.33%.
• Untuk enam semester, nilai k yang terbaik untuk memprediksi masa studi mahasiswa adalah nilai k=20 dan k=30 dengan tingkat keberhasilan 85%.
5. Setelah melakukan pengujian dengan melakukan
perubahan pada nilai k, maka akan menghasilkan prediksi kelulusan yang bervariasi.
6. Nilai k yang terbaik juga tergantung pada jumlah data
yang digunakan. Ukuran nilai k yang besar
untukmemprediksi masa studi mahasiswa belum tentu menjadi nilai k yang terbaik dengan tingkat
keberhasilan yang tinggi begitupun juga sebaliknya. 1. Aplikasi data mining ini telah berhasil membuat
aplikasi yang dapat memprediksi masa studi mahasiswa menggunakan algoritma k-nearest neighborhood yang akan diterapkan di Jurusan Teknik Komputer.
2. Aplikasi data mining ini dapat memprediksi dengan menggunakan 1 data mahaisawa atau 1 database
mahasiswa.
3. Untuk menggunakan data training yang berjumlah 30 data dengan menguji data testing berjumlah 60 data, maka didapatkan nilai k yang terbaik untuk memprediksi masa studi mahasiswa yaitu sebagai berikut:
• Untuk dua semester yaitu nilai k yang terbaik untuk digunakan memprediksi studi mahasiswa adalah nilai k=10 dengan tingkat keberhasilan 81.66%.
• Untuk empat semester yaitu nilai k yang terbaik untuk digunakan memprediksi studi mahasiswa adalah nilai k=10 dengan tingkat keberhasilan 76.66%.
• Untuk enam semester yaitu nilai k=10merupakan nilai k yang terbaik untuk digunakan memprediksi masa studi mahasiswa dengan tingkat keberhasilan 81.66%.
(28)
SARAN
Aplikasi
data mining
ini dapat dibuat
dengan menggunakan jaringan LAN
sehingga nanti tidak hanya digunakan
oleh satu
pengguna
di satu tempat saja
tetapi dapat digunakan oleh banyak
pengguna (para dosen dan pihak
jurusan ) di tempat yang berbeda.
Aplikasi
data mining
ini belum
memperhitungkan faktor luar yang
terjadi
pada
mahasiswa
tersebut
sehingga mahasiswa tersebut tidak
lulus tepat waktu. Faktor luar tersebut
dapat menjadi sebuah parameter baru
dalam aplikasi ini.
28
Kasus ini dapat diterapkan dengan
menggunakan metode algoritma
data
mining
yang lainnya, misalnya ID3.
Penulis juga menyarankan agar
aplikasi
data mining
ini dapat
diterapkan menggunakan teknik data
warehouse,
sehingga tidak hanya
menggunakan data akademik 1
jurusan
saja
tetapi
dapat
menggunakan banyak data akademik
dari jurusan lain
.
(29)
(30)
(31)
PEMBUATAN APLIKASI DATA MINING
UNTUK MEMPREDIKSI MASA STUDI MAHASISWA MENGGUNAKAN ALGORITMA K-NEAREST NEIGHBORHOOD
TUGAS AKHIR
Disusun untuk memenuhi syarat kelulusan pada
Program Studi Sistem Komputer Strata Satu di Jurusan Teknik Komputer
Oleh
ASTRID DARMAWAN 10207104
Pembimbing
Selvia Lorena Br Ginting, M.T Wendi Zarman, M.Si
JURUSAN TEKNIK KOMPUTER
FAKULTAS TEKNIK DAN ILMU KOMPUTER UNIVERSITAS KOMPUTER INDONESIA
BANDUNG 2012
(32)
(33)
vi
ABSTRAK
Data mining merupakan serangkaian proses untuk menggali nilai tambah berupa informasi yang selama ini tidak diketahui secara manual dari suatu database. Data mining juga memanfaatkan pengalaman atau bahkan kesalahan di masa lalu untuk meningkatkan kualitas dari model maupun hasil analisanya, salah satunya dengan kemampuan pembelajaran yang dimiliki teknik data mining yaitu klasifikasi. Klasifikasi merupakan tugas pembelajaran yang memetakan sebuah objek baru ke dalam salah satu label class atau kategori pada objek lama yang telah didefinisikan sebelumnya. Klasifikasi ini menggunakan salah satu metode algoritma data mining yaitu k-Nearest Neighborhood (k-NN). Algoritma k-NN bekerja berdasarkan jarak terpendek antara dua objek dengan menentukan nilai k. Nilai k merupakan parameter untuk menentukan jarak terdekat antara objek baru terhadap objek lama. Dengan menggunakan teknik data mining tersebut maka di perguruan tinggi dapat memanfaatkan data akademik mahasiswa yaitu Indeks Prestasi (IP) untuk memprediksi masa studi mahasiswa. Dalam aplikasi data mining ini terdiri dari data testing dan data training dengan inputan NIM dan nilai k. Nilai k yang terbaik, tergantung pada jumlah data yang digunakan. Ukuran nilai k yang besar untuk memprediksi masa studi mahasiswa belum tentu menjadi nilai k yang terbaik dengan tingkat keberhasilan yang tinggi begitupun juga sebaliknya. Sehingga diharapkan hasil akhir dari aplikasi data mining ini dapat menghasilkan prediksi masa studi mahasiswa.
(34)
vii
ABSTRACT
Data mining is a set of processes to explore the added value of information that has not known manually from a database. Data mining also take advantage of the experience or even mistakes in the past to enhance the quality of models and analysis results. One of them with learning capabilities possessed by data mining techniques called as classification. Classification is a learning task, mapping a new object into one class or category label on old objects that have been defined previously. This classification using one of the method of data mining algorithms, that is k-Nearest Neighborhood (k-NN). k-NN algorithm works based on the shortest distance between two objects to determine the value of k. The k-value is a parameter to determine the shortest distance between a new object to the old object. By using these data mining techniques then college can utilize student's academic data, that is performance index (IP) to predict the student's study periode. In this data mining application consists of the testing data and training data with the input of NIM and the k-value. The best k-values, depends on the number of used data. A large k-value to predict the student's study periode may not necessarily be the best k value with a high success rate and otherwise. So it is expected the result of this data mining applications can generate predictions of the student's study periode.
(35)
iv
KATA PENGANTAR
Segala puji bagi Allah SWT., Pencipta dan Pemelihara alam semesta, shalawat serta salam semoga terlimpah bagi Muhammad SAW., keluarga dan para pengikutnya yang setia hingga akhir masa.
Atas rahmat Allah SWT., akhirnya Penulis dapat menyelesaikan Tugas Akhir ini, meskipun proses belajar sesungguhnya tak akan pernah berhenti. Tugas Akhir ini sesungguhnya bukanlah sebuah kerja individual dan akan sulit terlaksana tanpa bantuan banyak pihak yang tak mungkin Penulis sebutkan satu persatu, namun dengan segala kerendahan hati, Penulis mengucapkan terima kasih kepada
1. Kedua orang tua, adik dan keluarga besar tercinta yang senantiasa tidak
henti-hentinya mencurahkan cinta, kasih sayang, perhatian, nasihat, serta motivasi kepada penulis selama studi.
2. Ibu Sri Nurhayati, M.Si., selaku Ketua Jurusan Teknik Komputer,
Universitas Komputer Indonesia dan Dosen Wali kelas 07 TK-3.
3. Ibu Selvia Lorena Br. Ginting, M.T., selaku Pembimbing I yang telah
banyak memberikan arahan, saran, nasihat, motivasi dan bimbingan kepada Penulis selama menempuh studi.
4. Bapak Wendi Zarman, M.Si., selaku Pembimbing II dan Koordinator Lab.
Fisika yang telah memberikan arahan, bantuan, saran, nasihat, motivasi dan bimbingan kepada penulis.
5. Bapak dan Ibu seluruh staff dosen Jurusan Teknik Komputer dan yang
pernah mengajar penulis serta seluruh Staff Administrasi Universitas Komputer Indonesia, yang telah banyak memberikan ilmu, motivasi dan bantuan kepada penulis.
6. Keluarga besar Laboratorium Fisika serta seluruh Asisten Laboratorium
Jurusan Teknik Komputer, terima kasih atas motivasi, saran, kerjasamanya dan bantuannya selama ini.
7. Teman–teman angkatan 2007 yang telah banyak membantu selama studi
(36)
v
8. Semua pihak yang telah banyak membantu yang tidak dapat penulis
sebutkan satu persatu, terima kasih banyak atas bantuan, dukungan dan motivasinya selama melaksanakan studi dan menyelesaikan Tugas Akhir ini.
Akhirnya, Penulis berharap semoga tugas akhir ini menjadi sumbangsih yang bermanfaat bagi dunia sains dan teknologi di Indonesia, khususnya disiplin keilmuan yang Penulis dalami.
Bandung, Agustus 2012
(37)
viii
DAFTAR ISI
KATA PENGANTAR...iv ABSTRAK ... vi ABSTRACT ... vii DAFTAR ISI ... viii DAFTAR TABEL ... x DAFTAR GAMBAR ... xii DAFTAR LAMPIRAN ... xiv BAB I ... 1 PENDAHULUAN ... 1
PENDAHULUAN ... 1 1.2 Maksud dan Tujuan ... 2 1.3 Batasan Masalah ... 2 1.4 Metode Penelitian ... 3 1.5 Sistematika Penulisan ... 4
BAB II ... 5 DASAR TEORI ... 5
2.1 Data mining ... 5 2.1.1 Pengelompokan Data mining ... 6 2.2 Klasifikasi ... 7 2.3 Algoritma Nearest Neighborhood ... 7 2.3.1 Algoritma k-Nearest Neighborhood (k-NN) ... 8 2.4 Diagram Konteks ... 9 2.4.1 DFD (Data Flow Diagram) ... 9 2.5 Software Pendukung ... 10 2.5.1 Visual Basic 6.0 ... 10 2.5.2 Microsoft Access 2007 ... 15
BAB III ... 17 PERANCANGAN ... 17
(38)
ix
3.2 Analisis Data ... 17 3.3 Penggunaan Algoritma k-Nearest Neighborhood (k-NN) ... 23 3.3.1 Analisis Kebutuhan Fungsional ... 30 3.4 Perancangan Sistem ... 47 3.4.1 Perancangan Data ... 47 3.4.2 Arsitektur Antarmuka ... 49 3.4.3 Perancangan Antarmuka ... 49 3.4.4 Flowchart ... 56
BAB IV ... 58 BAB IV ... 58
4.1 Implementasi ... 58 4.1.1 Lingkungan Implementasi ... 58 4.1.2 Implementasi Antarmuka ... 59 4.2 Pengujian ... 63 4.2.1 Pengujian Sistem ... 63
BAB V ... 77 SIMPULAN DAN SARAN ... 77
5.1 Simpulan ... 77 5.2 Saran ... 78
(39)
1
BAB I
PENDAHULUAN
1.1 Latar Belakang
Pertumbuhan yang pesat dari pertambahan data akademik atau informasi telah menciptakan kondisi dimana suatu perguruan tinggi memiliki tumpukan data yang banyak. Namun pada saat ini, tumpukan data tersebut banyak yang belum dimanfaatkan secara maksimal bahkan tidak terpakai. Padahal tumpukan data tersebut dapat menjadi sebuah informasi yang bermanfaat dengan menggunakan
suatu teknik yaitu teknik data mining. Data mining adalah serangkaian proses
untuk menggali nilai tambah berupa informasi yang selama ini tidak diketahui
secara manual dari suatu database. Penggunaan teknik data mining pada
perguruan tinggi dapat berguna mengolah dan menyebarkan informasi untuk menunjang kegiatan operasional sehari-hari sekaligus menunjang kegiatan pengambilan keputusan strategis.
Dengan adanya tumpukan data di perguruan tinggi yang tidak digunakan, maka dimanfaatkan tumpukan data tersebut untuk mencari informasi baru. Tumpukan data yang digunakan merupakan data akademik di Jurusan Teknik Komputer UNIKOM, yaitu data IP (Indeks Prestasi) mahasiswa dari semester satu sampai semester enam khususnya Program Sarjana (S1) dengan menggunakan
salah satu teknik data mining yaitu metode klasifikasi menggunakan algoritma
k-Nearest Neighborhood dengan harapan dapat menemukan informasi tingkat
kelulusan dan persentase kelulusan mahasiswa sehinga dapat digunakan oleh pihak Jurusan untuk mencari solusi atau kebijakan dalam proses evaluasi pembelajaran di Jurusan Teknik Komputer.
(40)
2
1.2 Maksud dan Tujuan
Maksud dari tugas akhir ini adalah membuat perancangan aplikasi untuk mengklasifikasi masa studi mahasiswa di Jurusan Teknik Komputer dengan
menggunakan Algoritma k-Nearest Neighborhood. Sehingga diharapkan dapat
bermanfaat bagi pihak Jurusan dan dosen di Teknik Komputer.
Tujuan yang akan dicapai melalui pembuatan tugas akhir ini, yaitu aplikasi
data mining ini dapat memprediksi masa studi mahasiswa sehingga dapat
mengetahui tingkat kelulusan dan persentase kelulusan mahasiswa di Jurusan Teknik Komputer.
1.3 Batasan Masalah
Pada tugas akhir ini terdapat beberapa batasan masalah agar hasil dari tugas akhir ini sesuai dengan tujuan. Adapaun beberapa batasan masalah pada tugas akhir ini, yaitu:
1. Studi Kasus tugas akhir ini yaitu data akademik Jurusan Teknik
Komputer-S1 di Universitas Komputer Indonesia.
2. Data yang digunakan adalah data akademik mahasiswa Jurusan Teknik
Komputer tahun 2001-2006.
3. Data yang digunakan hanya data Indeks Prestasi (IP) mahasiswa Jurusan
Teknik Komputer Program Sarjana (S1) dari semester satu sampai semester enam.
4. Data yang digunakan telah dibersihkan secara manual sebelum diproses
mining. Data yang tidak lengkap nilai Indeks Prestasinya tidak akan
digunakan atau dihapus data record-nya.
5. Visual Basic 6.0 sebagai aplikasi sistem antarmuka.
(41)
3
1.4 Metode Penelitian
Dalam penyusunan Tugas Akhir ini digunakan beberapa teknik, yaitu sebagai berikut:
1. Pengambilan Data
Melakukan pengambilan data ke bagian Akademik Jurusan Teknik Komputer untuk mendapatkan data yang dibutuhkan.
2. Studi Pustaka
Merupakan sumber yang dapat dijadikan rujukan dari sumber data atau literatur-literatur, yaitu dengan membaca dan mempelajari buku-buku, karya ilmiah dan sumber-sumber lainnya yang mendukung tugas akhir ini.
3. Perancangan Perangkat Lunak
Melakukan perancangan terhadap perangkat lunak yang akan
dikembangkan.
4. Implementasi
Melakukan implementasi terhadap perangkat lunak yang akan dikembangkan beradasarkan hasil yang diperoleh dari perancangan.
5. Pengujian
Melakukan pengujian perangkat lunak dengan menggunakan studi kasus yang telah ditentukan.
6. Evaluasi
Mengevaluasi hasil konstruksi perangkat lunak yang dikembangkan.
7. Bimbingan dan Diskusi.
Mengadakan bimbingan dengan dosen pembimbing serta berdiskusi dengan sesama rekan mahasiswa.
(42)
4
1.5 Sistematika Penulisan
Sistematika dari penulisan tugas akhir ini dibagi menjadi lima bab pembahasan yaitu sebagai berikut:
BAB I PENDAHULUAN
Pada bab ini akan dijelaskan mengenai latar belakang permasalahan, rumusan masalah, maksud dan tujuan, batasan masalah, metode penelitian dan sistematika penulisan.
BAB II DASAR TEORI
Pada bab ini akan dijelaskan mengenai dasar-dasar teori, rujukan dan metode yang berhubungan dengan judul.
BAB III PERANCANGAN
Pada bab ini akan membahas tentang perancangan sistem aplikasi data
mining.
BAB IV HASIL DAN PEMBAHASAN
Pada bab ini berisi pengujian dan pembahasan tentang implementasi dari
penerapan teknik data mining serta validasi aplikasi yang penulis buat.
BAB V SIMPULAN DAN SARAN
Bab ini berisi tentang kesimpulan dari pembuatan aplikasi data mining masa
studi mahasiswa menggunakan algoritma k-nearest neighborhood dan berisi
(43)
5
BAB II
DASAR TEORI
Bab ini menjelaskan tentang dasar teori yang digunakan dalam penyusunan
tugas akhir ini, yaitu tentang pengertian data mining, pengelompokan data
mining, metode klasifikasi dan penjelasan algoritma yang digunakan, yaitu
k-Nearest Neighborhood.
2.1 Data Mining
Data mining merupakan proses menemukan pengetahuan yang menarik dari
data yang berjumlah besar yang disimpan di dalam database, gudang data atau
repositori informasi [1]. Data mining juga disebut sebagai serangkaian proses
untuk menggali nilai tambah berupa pengetahuan yang selama ini tidak diketahui secara manual dari suatu kumpulan data (Pramudiono, 2007).
Secara umum, data mining dapat melakukan dua hal yaitu memberikan
kesempatan untuk menemukan informasi menarik yang tidak terduga dan juga bisa menangani data berskala besar. Dalam menemukan informasi yang menarik
ini, ciri khas data mining adalah kemampuan pencarian secara hampir otomatis,
karena dalam banyak teknik data mining ada beberapa parameter yang masih
harus ditentukan secara manual atau semi manual. Data mining juga dapat
memanfaatkan pengalaman atau bahkan kesalahan di masa lalu untuk meningkatkan kualitas dari model maupun hasil analisanya, salah satunya dengan
kemampuan pembelajaran yang dimiliki beberapa teknik data mining seperti
(44)
6
2.1.1 Pengelompokan Data Mining
Data Mining
Predictive
Descriptive
Classification
Regression
Time Series Analysis
Clustering
Summarization
Association Rules
Sequence Discovery
Gambar 2.1 Pengelompokan Data Mining
Secara umum, data mining terbagi dalam 2 sifat, yaitu:
1. Predictive: menghasilkan modal berdasarkan sekumpulan data yang dapat
digunakan untuk memperkirakan nilai data yang lain. Metode-metode yang
termasuk predictive data mining adalah:
a. Classification: pembagian data kedalam beberapa kelompok yang telah
ditentukan sebelumya.
b. Regression: memetakan data ke suatu prediction variable.
c. Time Series Analysis: pengamatan perubahan nilai atribut dari waktu ke
waktu.
2. Descriptive: mengidentifikasikan pola atau hubungan dalam data untuk
menghasilkan informasi baru. Metode yang termasuk dalam descriptive data
mining adalah:
a. Clustering: identifikasi hubungan antara data yang satu dengan lainnya.
b. Association Rules: identifikasi hubungan antara data yang satu dengan
(45)
7
c. Summarization: pemetaan data ke dalam subset dengan deskripsi
sederhana.
d. Sequence Discovery: identifikasi pola sekuensial dalam data.
2.2 Klasifikasi
Klasifikasi adalah tugas pembelajaran sebuah fungsi target f yang
memetakan setiap himpunan atribut x ke salah satu label class y yang telah
didefinisikan sebelumnya [1]. Klasifikasi dapat juga diartikan suatu proses untuk menemukan suatu model atau fungsi yang menggambarkan dan membedakan kelas data atau konsep dengan tujuan dapat menggunakan model untuk
memprediksi kelas objek yang label class-nya tidak diketahui.
Classification model Atribut Set (x)
Input Output
Class Label y
Gambar 2.2 Model Klasifikasi
Data input untuk klasifikasi adalah isi dari record. Setiap record dikenal
sebagai instance atau contoh, yang ditentukan oleh sebuah tuple (x, y), dimana x
adalah himpunan atribut dan y adalah atribut tertentu, yang dinyatakan sebagai
label class (juga dikenal sebagai kategori atau atribut target).
Pendekatan umum yang digunakan dalam masalah klasifikasi adalah
pertama, training data berisi record yang mempunyai label class yang telah
diketahui. Training data digunakan untuk membangun model klasifikasi yang
kemudian diaplikasikan ke testing data yang berisi record-record dengan label
class yang tidak diketahui.
2.3 Algoritma Nearest Neighborhood
Algoritma Nearest Neighborhood adalah pendekatan untuk mencari kasus
(46)
8
(training data), yaitu berdasarkan pada pencocokan bobot dari sejumlah fitur yang
ada.
Jenis algoritma Nearest Neighborhood ada 2, yaitu:
1. 1-NN, yaitu pengklasifikasikan dilakukan terhadap 1 labeled data
terdekat.
2. k-NN, yaitu pengklasifikasikan dilakukan terhadap klabeled data terdekat
dengan k>1.
Penulis akan menggunakan algoritma k-Nearest Neighborhood dalam tugas
akhir ini.
2.3.1 Algoritma k-Nearest Neighborhood (k-NN)
k-Nearest Neighborhood (k-NN) adalah suatu metode yang menggunakan
algoritma supervised dimana hasil dari query instance yang baru diklasifikasikan
berdasarkan mayoritas dari label class pada k-NN. Tujuan dari algoritma k-NN
adalah mengklasifikasikan objek baru berdasarkan atribut dan training data.
Algoritma k-NN bekerja berdasarkan jarak terpendek dari query instance ke
training data untuk menentukan k-NN-nya. Salah satu cara untuk menghitung
jarak dekat atau jauhnya tetangga menggunakan metode euclidian distance.
Ecludian Distance sering digunakan untuk menghitung jarak. Euclidian
Distance berfungsi menguji ukuran yang bisa digunakan sebagai interpretasi
kedekatan jarak antara dua obyek, di bawah ini merupakan rumus Ecludian
Distance:
(2.1) Dimana,
Xik = nilai X pada training data
Xjk = nilai X pada testing data
m = batas jumlah banyaknya data
Jika hasil nilai dari rumus di atas besar maka akan semakin jauh tingkat keserupaan antara kedua objek dan sebaliknya jika hasil nilainya semakin kecil
(47)
9
maka akan semakin dekat tingkat keserupaan antar objek tersebut. Objek yang
dimaksud adalah training data dan testing data.
Dalam algoritma ini, nilai k yang terbaik itu tergantung pada jumlah data.
Ukuran nilai k yang besar belum tentu menjadi nilai k yang terbaik begitupun juga
sebaliknya.
Langkah-langkah untuk menghitung algoritma k-NN:
1. Menentukan nilai k.
2. Menghitung kuadrat jarak euclid (query instance) masing-masing objek
terhadap training data yang diberikan.
3. Kemudian mengurutkan objek-objek tersebut ke dalam kelompok yang
mempunyai jarak euclid terkecil.
4. Mengumpulkan label class Y (klasifikasi Nearest Neighborhood).
5. Dengan menggunakan kategori Nearest Neighborhood yang paling
mayoritas maka dapat dipredeksikan nilai query instance yang telah
dihitung.
2.4 Diagram Konteks
Diagram konteks adalah kasus khusus DFD (bagian dari DFD yang berfungsi memetakan model lingkungan), yang dipresentasikan dengan lingkaran tunggal yang mewakili keseluruhan sistem [6]. Diagram konteks merupakan salah satu alat bantu dalam melakukan analisis terstruktur. Diagram konteks ini menggambarkan suatu sistem secara garis besarnya atau keseluruhannya saja. Dalam diagram konteks juga digambarkan entitas eksternal yang merupakan
brainware yang menghasilkan data yang akan diolah oleh sistem maupun tujuan
dari informasi yang dihasilkan oleh sistem.
2.4.1 DFD (Data Flow Diagram)
DFD (Data Flow Diagram) merupakan model yang menggambarkan sistem
(48)
10
dan penyimpanan data [6]. DFD adalah penjelasan lebih rinci dari diagram konteks dan proses fungsional yang ada dalam sistem. DFD menjelaskan tentang aliran masuk, aliran keluar, proses serta penyuntingan file yang digunakan.
Ada 4 komponen dalam model DFD ini, yaitu: Tabel 2.1 Komponen dalam DFD
Simbol Keterangan
Proses, menunjukkan transformasi dari masukan menjadi keluaran.
Aliran, komponen ini dipresentasikan dengan menggunakan panah yang menuju kea tau dari proses. Digunakan untuk menggambarkan gerakan paket data atau informasi dari satu bagian ke bagian lain dari sistem dimana penyimpanan mewakili lokasi penyimpanan data.
Nama penyimpanan Penyimpanan, komponen ini digunakan untuk
memodelkan kumpulan data atau paket data.
Terminator, komponen berikut ini dipresentasikan menggunakan persegi panjang, yang mewakili entity luar dimana sistem berkomunikasi.
Keuntungan menggunakan DFD adalah memudahkan pengguna yang kurang atau menguasai bidang komputer untuk mengerti sistem yang akan dikerjakan atau dikembangkan.
2.5 Software Pendukung
2.5.1 Visual Basic 6.0
Visual basic 6.0 selain disebut sebagai bahasa pemrograman, juga sering
disebut sebagai sarana untuk menghasilkan program-program aplikasi berbasiskan
Windows. Visual basic pada dasarnya adalah bahasa pemrograman komputer.
Bahasa pemrograman adalah perintah-perintah atau instruksi-instruksi yang
dimengerti oleh komputer untuk melakukan tugas-tugas tertentu. Visual basic
(49)
11
dari pendahulunya yaitu bahasa pemrograman BASIC (Baginners All-purpose
Symbolic Instruction Code) yang dikembangkan pada era 1950-an. Beberapa
kemampuan atau manfaat dari visual basic diantaranya:
1. Untuk membuat program aplikasi seperti Windows.
2. Untuk membuat objek-objek pembantu program seperti misalnya: kontrol
activeX, file help, aplikasi internet, dan sebagainya.
3. Menguji program (debugging) dan menghasilkan program EXE yang
bersifat executable, atau dapat langsung dijalankan.
Langkah awal dari belajar Visual Basic adalah mengenal IDE (Integrated
Developement Environment) Visual Basic yang merupakan lingkungan
pengembangan terpadu bagi programmer dalam mengembangkan aplikasinya.
Dengan menggunakan IDE programmer dapat membuat user interface,
melakukan koding, melakukan testing dan debuging serta menkompilasi program
menjadi executable. Penguasaan yang baik akan IDE akan sangat membantu
programmer dalam mengefektifkan tugas-tugasnya sehingga dapat bekerja dengan efisien.
1. Memilih jenis Project
(50)
12
2. Jendela IDE
IDE Visual Basic 6.0 menggunakan model MDI (Multiple Document Interface).
Berikut ini adalah gambar yang menunjukan bagian-bagian dan nama-nama
jendela yang dapat tampil pada IDE Visual Basic.
Gambar 2.4 Jendela IDE
Adapun jendela-jendela yang biasa digunakan adalah sebagai berikut:
Menu Bar, digunakan untuk memilih tugas-tugas tertentu seperti
menyimpan project, membuka project, dll
Main Toolbar, digunakan untuk melakukan tugas-tugas tertentu dengan
(51)
13
Jendela Project, jendela ini berisi gambaran dari semua modul yang
terdapat dalam aplikasi anda. Anda dapat menggunakan icon Toggle
Folders untuk menampilkan modul-modul dalam jendela tersebut secara di
group atau berurut berdasarkan nama. Anda dapat menggunakan Ctrl+R
untuk menampilkan jendela project, ataupun menggunakan icon Project
Explorer.
Jendela Form Designer, jendela ini merupakan tempat anda untuk
merancang user interface dari aplikasi anda. Jadi jendela ini menyerupai
kanvas bagi seorang pelukis.
Jendela Toolbox, jendela ini berisi komponen-komponen yang dapat anda
gunakan untuk mengembangkan user interface.
Jendela Code, merupakan tempat bagi anda untuk menulis koding. Anda
dapat menampilkan jendela ini dengan menggunakan kombinasi Shift-F7.
Jendela Properties, merupakan daftar properti-properti objek yang sedang
terpilih. Sebagai contohnya anda dapat mengubah warna tulisan
(foreground) dan warna latar belakang (background). Anda dapat
menggunakan F4 untuk menampilkan jendela properti.
Jendela Color Palette, adalah fasilitas cepat untuk mengubah warna suatu
objek.
Jendela Form Layout, akan menunjukan bagaimana form bersangkutan
(52)
14
3. Toolbox
Gambar 2.5 Toolbox
Adapun secara garis besar fungsi dari masing-masing intrinsic kontrol tersebut
adalah sebagai berikut:
Pointer bukan merupakan suatu kontrol; gunakan icon ini ketika anda
ingin memilih kontrol yang sudah berada pada form.
PictureBox adalah kontrol yang digunakan untuk menampilkan image
dengan format: BMP, DIB (bitmap), ICO (icon), CUR (cursor), WMF
(metafile), EMF (enhanced metafile), GIF, dan JPEG.
Label adalah kontrol yang digunakan untuk menampilkan teks yang tidak
dapat diperbaiki oleh pemakai.
TextBox adalah kontrol yang mengandung string yang dapat diperbaiki
oleh pemakai, dapat berupa satu baris tunggal, atau banyak baris.
Frame adalah kontrol yang digunakan sebagai kontainer bagi kontrol
(53)
15
CommandButton merupakan kontrol hampir ditemukan pada setiap form,
dan digunakan untuk membangkitkan event proses tertentu ketika pemakai
melakukan klik padanya.
CheckBox digunakan untuk pilihan yang isinya bernilai yes/no, true/false.
OptionButton sering digunakan lebih dari satu sebagai pilihan terhadap
beberapa option yang hanya dapat dipilih satu.
ListBox mengandung sejumlah item, dan user dapat memilih lebih dari
satu (bergantung pada propertyMultiSelect).
ComboBox merupakan konbinasi dari TextBox dan suatu ListBox dimana
pemasukkan data dapat dilakukan dengan pengetikkan maupun pemilihan.
HScrollBar dan VScrollBar digunakan untuk membentuk scrollbar berdiri
sendiri.
Timer digunakan untuk proses background yang diaktifkan berdasarkan
interval waktu tertentu. Merupakan kontrol non-visual.
DriveListBox, DirListBox, dan FileListBox sering digunakan untuk
membentuk dialog box yang berkaitan dengan file.
Shape dan Line digunakan untuk menampilkan bentuk seperti garis,
persegi, bulatan, oval.
Image berfungsi menyerupai image box, tetapi tidak dapat digunakan
sebagai kontainer bagi kontrol lainnya. Sesuatu yang perlu diketahui
bahwa kontrol image menggunakan resource yang lebih kecil
dibandingkan dengan PictureBox
Data digunakan untuk data binding
OLE dapat digunakan sebagai tempat bagi program eksternal seperti
Microsoft Excel, Word, dll.
2.5.2 Microsoft Access 2007
Microsoft Access adalah suatu program Microsoft Office pengolahan
database. Para pengguna Microsoft Access umumnya menggunakan program
(54)
16
fasilitas yang bisa digunakan untuk membuat laporan dalam bentuk tabel, query,
maupun reportdatabase secara maksimal.
Jenis-jenis Query:
1. Select queries.
Query ini menampilkan ekstrak data atau seluruh data. Data yang
ditampilkan bias dipilih sesuai kriteria tertentu. Selain itu, bisa
menampilkan field hasil perhitungan dengan formula tertentu.
2. Action queries.
Query ini digunakan untuk melakukan delete, update, insert data, dan
create tabel baru.
3. Cross tab queries.
Query ini digunakan untuk mengkakulasi data untuk keperluan analisis.
Crosstab queries menghitung sebuah count, average, sum, atau tipe total
(55)
17
BAB III
PERANCANGAN
Bab ini menjelaskan tentang analisis dan perancangan dalam membangun
aplikasi data mining untuk memprediksi masa studi mahasiswa Teknik Komputer.
Analisis meliputi analisis masalah, analisis data, analisis algoritma k-NN, analisis
fungsional serta perancangan aplikasinya.
3.1 Analisis Masalah
UNIKOM merupakan perguruan tinggi swasta di Bandung. UNIKOM memiliki beberapa Jurusan salah satunya adalah Jurusan Teknik Komputer. Jurusan ini termasuk kategori yang sangat susah untuk dapat lulus tepat waktu. Setiap tahun, Jurusan Teknik Komputer hanya menghasilkan beberapa mahasiswa yang lulus tepat 4 tahun atau 5 tahun. Karena jumlah kelulusan tiap tahunnya hanya sedikit, maka penulis memanfaatkan data nilai IP mahasiswa di Jurusan Teknik Komputer untuk menemukan informasi atau pengetahuan baru yang berguna dalam mengambil sebuah keputusan dan membantu dalam evaluasi sistem pembelajaran di Jurusan Teknik Komputer. Informasi yang dibutuhkan adalah memprediksi masa studi mahasiswa dengan atribut IP dari semester satu sampai semester enam.
3.2 Analisis Data
Dalam penulisan tugas akhir ini akan dicari nilai euclidean dari hubungan
tingkat kelulusan dengan data induk mahasiswa, yaitu dari nilai IP semester satu sampai semester enam dan akan diuji menggunakan nilai IP di dua semester, empat semester dan enam semester sehingga hasil dari proses tersebut dapat
dilihat dengan menggunakan IP disemester berapa dan nilai k yang terbaik yang
(56)
18
3.2.1.1 Sumber Data
Data yang digunakan dalam tugas akhir ini menggunakan data akademik.
Data akademik ini dibuat menjadi dua data yaitu training data dan testing data.
Training data dan testing data merupakan data mahasiswa yang didata
ketika mahasiswa tersebut telah menjadi mahasiswa di Jurusan Teknik Komputer dan yang telah lulus. Adapun atribut dari data tersebut:
Gambar 3.1 Cuplikan Salah Satu Isi Tabel yang Berada di dalam Database
Tabel 3.1 Tabel Training Data dan Testing Data
Atribut Keterangan NIM (Nomor
Induk Mahasiswa)
Nomor Induk Mahasiswa atau yang disingkat NIM adalah kode yang dimiliki mahasiswa sebagai nomor unik identitas di Perguruan Tinggi.
Nama Mahasiswa
Merupakan nama lengkap mahasiswa yang bersangkutan.
Kelas Merupakan kelas mahasiswa yang bersangkutan di Jurusan Teknik Komputer.
Tahun Masuk Merupakan tahun masuk mahasiswa yang bersangkutan ke dalam Perguruan Tinggi.
IP Semester 1 Merupakan nilai Indeks Prestasi mahasiswa bersangkutan.
IP Semester 2 Merupakan nilai Indeks Prestasi mahasiswa bersangkutan.
(57)
19
IP Semester 4 Merupakan nilai Indeks Prestasi mahasiswa bersangkutan.
IP Semester 5 Merupakan nilai Indeks Prestasi mahasiswa bersangkutan.
IP Semester 6 Merupakan nilai Indeks Prestasi mahasiswa bersangkutan.
Tanggal Lulus Merupakan tahun mahasiswa bersangkutan dinyatakan lulus.
Lama Studi Merupakan lama studi, dihitung dimulai saat terdaftar sebagai mahasiswa sampai dinyatakan lulus.
Program Studi Program studi dari mahasiswa yang bersangkutan.
IPK Indeks Prestasi Kumulatif (IPK) adalah ukuran
kemampuan mahasiswa sampai pada waktu tertentu yang dapat dihitung berdasarkan jumlah (satuan kredit semester) SKS mata kuliah yang diambil sampai pada periode tertentu dikalikan dengan nilai bobot masing-masing mata kuliah dibagi dengan jumlah seluruh SKS mata kuliah (Anonim, 2009).
Keterangan Merupakan keterangan apakah mahasiswa tersebut lulus tepat waktu atau tidak.
Judul Skripsi Merupakan judul skripsi dari mahasiswa yang bersangkutan.
Data akademik mahasiwa yang diambil adalah data mahasiswa angkatan 2001-2006. Hal ini didasarkan pada kebutuhan data yang akan dihubungkan
dengan testing data, dengan asumsi bahwa mahasiswa angkatan 2001-2006 akan
lulus dari rentang waktu tahun 2005-2010. Sedangkan data kelulusan di training
data rentang waktunya dari tahun 2004-2011. Kedua data tersebut diperoleh dari
sekretariatan Jurusan Teknik Komputer. Data yang diambil hanya dari data mahasiswa S1 di Jurusan Teknik Komputer.
3.2.1.2 Pembersihan Data
Dalam tugas akhir ini dicari hubungan beberapa atribut dari data induk mahasiswa dengan tingkat kelulusan. Karena tidak semua tabel digunakan maka perlu dilakukan pembersihan data agar data yang akan diolah benar-benar relevan dengan dibutuhkan. Pembersihan data juga akan mempengaruhi performasi dari
teknik data mining karena data yang ditangani akan berkurang jumlah dan
(58)
20
lengkap isiannya. Data yang dibersihkan berupa atribut yang berada di tabel
training data dan testing data. Atribut yang digunakan terdiri dari:
Gambar 3.2 Cuplikan Isi Tabel Testing Data
Tabel 3.2 Atribut yang digunakan dalam Testing Data
Atribut Keterangan
Atribut NIM Digunakan sebagai primary key untuk menghubungkan dengan data kelulusan.
Atribut IP semester 1-6
Digunakan untuk proses mining guna mengetahui
hubungan antara tingkat kelulusan dengan IP dari semester 1-6.
(59)
21
Gambar 3.3Cuplikan Isi Tabel Training Data
Tabel 3.3 Atribut yang digunakan dalam Training Data
Atribut Keterangan
Atribut NIM Digunakan sebagai primary key untuk menghubungkan dengan data induk mahasiswa.
Keterangan Digunakan sebagai ukuran tingkat kelulusan tepat tahun atau tidak.
Atribut IP semester 1-6
Digunakan untuk proses mining guna mengetahui
hubungan antara tingkat kelulusan dengan IP dari semester 1-6.
Field keterangan dalam tabel data training berisi tentang kategori kelulusan
mahasiswa, dapat dilihat pada Tabel 3.4.
Tabel 3.4 Kategori Kelulusan Berdasarkan Lama Studi
Lulus Kategori Lulus <= 5 Tahun Ya
(60)
22
Berikut cuplikan isi tabel training data pada Microsoft Access:
Gambar 3.4 Cuplikan Isi Training Data (61 Data)
(61)
23
3.3 Penggunaan Algoritma k-Nearest Neighborhood (k-NN)
Algoritma k-NN merupakan algoritma untuk mencari jarak terdekat antara
training data dengan testing data. Untuk menghitung jarak terdekat atau jauhnya
tetangga dapat menggunakan metode ecludian distance. Pembahasan algoritma k
-NN dan rumus ecludian distance dapat dilihat di persamaan (2.1) di Bab II.
Contoh proses data mining menggunakan algoritma k-NN yaitu sebagai
berikut:
Terdapat beberapa data yang berasal dari IP mahasiswa Teknik Komputer
yang telah lulus sebagai training data (Tabel 3.5) untuk diklasifikasikan dengan
testing data menggunakan enam atribut yaitu IP dari semester satu sampai
semester enam (Tabel 3.6) sehingga dapat menentukan masa studi mahasiswa apakah mahasiswa tersebut lulus tepat waktu atau tidak.
Tabel 3.5 Training Data
n SEMESTER Y=Klasifikasi X11 = 1 X12=2 X13=3 X14=4 X15=5 X16=6
1 3.94 4 4 4 3.89 3.58 Ya
2 1.68 1.84 1.53 2.32 2.88 2.69 Tidak
3 2.63 1.63 2.42 2.58 3 3.56 Tidak
4 3.21 3.42 3.84 2.79 3.6 3.75 Ya
5 3.11 3.58 3.35 3 3.11 3.21 Ya
6 2.68 2.79 3.16 2.95 3.23 3.68 Ya
7 2 1.53 2.11 2.16 2 1.88 Tidak
Keterangan:
X11-X16 = merupakan atribut semester 1-6 pada training data
n = merupakan banyaknya data
Training data ini merupakan data IP mahasiswa yang telah lulus kurang
(62)
24
Tabel 3.6 Testing Data
Keterangan:
X21-X26 = merupakan atribut semester 1-6 pada testing data
n = merupakan banyaknya data
Testing data merupakan sekumpulan data IP mahasiswa yang akan
diklasifikasikan dengan training data, apakah lulus <= 5 tahun atau lulus >5
tahun.
Setelah ada testing data dan training data, lalu menentukan nilai k-nya,
contoh untuk kasus di atas nilai k yang digunakan adalah k=5.
Adapun langkah-langkah menjawab permasalahan di atas, yaitu:
1. Nilai k yang digunakan adalah 5.
2. Menghitung kuadrat jarak euclid (query instance) masing-masing objek
terhadap sampel data atau training data yang diberikan dengan
menggunakan rumus 2.1 di Bab II.
n=1
� � �� ����
= 11− 21 2 + 12− 22 2+ 13− 23 2
+ 14− 24 2+
15 − 25 2+ 16− 26 2
1 2
= 3.94−2.95 2+ 4−2.76 2+ 4−2.32 2
+ 4−1.8 2+ 3.89−2.75 2
+ 3.58−2.87 2
1
2 = 0.99 2+ 1.24 2+ 1.68 2
+ 2.2 2+ 1.14 2+ 0.71 2
1
2= 0.98 + 1.54
+ 2.82 + 4.48 + 1.30 + 0.50 12
= 11.98
1 2
= 3.46
n SEMESTER Y=Klasifikasi X21 = 1 X22=2 X23=3 X24=4 X25=5 X26=6
(63)
25
n=2
� � �� ����
= 11− 21 2 + 12− 22 2+ 13− 23 2
+ 14− 24 2+
15− 25 2+ 16− 26 2
1 2
= 1.68−2.95 2+ 1.84−2.76 2+ 1.53−2.32 2
+ 2.32−1.8 2+ 2.88−2.75 2
+ 2.69−2.87 2 1/2 = −1.27 2+ −0.92 2
+ −0.79 2+ 0.52 2+ 0.13 2
+ 0.18 2 1/2 = 1.61 + 0.85 + 0.62 + 0.27 + 0.02
+ 0.03 1/2 = 3.40 1/2 = 1.84
n=3
� � �� ����
= 11 − 21 2 + 12− 22 2+ 13− 23 2
+ 14− 24 2+ 15− 25 2
+ 16− 26 2 1/2 = 2.63−2.95 2
+ 1.63−2.76 2+ 2.42−2.32 2+ 2.58−1.8 2
+ 3−2.75 2+ 3.56−2.87 2 1/2 = −0.32 2
+ −1.13 2+ 0.1 2+ 0.78 2+ 0.25 2
+ 0.69 2 1/2 = 0.10 + 1.28 + 0.01 + 0.61
(64)
26
n=4
� � �� ����
= 11− 21 2+ 12− 22 2+ 13− 23 2
+ 14 − 24 2+ 15− 25 2
+ 16 − 26 2 1/2= 3.21−2.95 2
+ 3.42−2.76 2+ 3.84−2.32 2+ 2.79−1.8 2
+ 3.6−2.75 2+ 3.75−2.87 2 1/2 = 0.26 2
+ 0.66 2+ 1.52 2+ 0.99 2+ 0.85 2
+ 0.88 2 1/2 = 0.07 + 0.44 + 2.31 + 0.98 + 0.72
+ 0.77 1/2 = 5.29 1/2 = 2.3
n=5
� � �� ����
= 11− 21 2+ 12− 22 2+ 13− 23 2
+ 14 − 24 2+ 15− 25 2
+ 16 − 26 2 1/2= 3.11−2.95 2
+ 3.58−2.76 2+ 3.35−2.32 2+ 3−1.8 2
+ 3.11−2.75 2+ 3.21−2.87 2 1/2 = 0.16 2
+ 0.82 2+ 1.03 2+ 1.2 2+ 0.36 2
+ 0.34 2 1/2 = 0.03 + 0.67 + 1.06 + 1.44 + 0.13
(65)
27
n=6
� � �� ����
= 11− 21 2+ 12− 22 2+ 13 − 23 2
+ 14− 24 2+ 15 − 25 2
+ 16− 26 2 1/2 = 2.68−2.95 2
+ 2.79−2.76 2+ 3.16−2.32 2+ 2.95−1.8 2
+ 3.23−2.75 2+ 3.68−2.87 2 1/2 = −0.27 2
+ 0.03 2+ 0.84 2+ 1.15 2+ 0.48 2
+ 0.81 2 1/2 = 0.07 + 0.0009 + 0.71 + 1.32
+ 0.23 + 0.66 1/2 = 2.99 1/2 = 1.73
n=7
� � �� ����
= 11− 21 2+ 12− 22 2+ 13− 23 2
+ 14− 24 2 + 15− 25 2
+ 16 − 26 2 1/2 = 2−2.95 2+ 1.53−2.76 2
+ 2.11−2.32 2+ 2.16−1.8 2+ 2−2.75 2
+ 1.88−2.87 2 1/2 = −0.95 2+ −1.23 2
+ −0.21 2+ 0.36 2+ −0.75 2
+ −0.99 2 1/2 = 0.90 + 1.51 + 0.04 + 0.13
(66)
28
Tabel 3.7 Square Instance to Query Distance
n
SEMESTER Square instance to
query distance X11
=1 X12=2 X13=3 X14=4 X15=5 X16=6
1 3.94 4 4 4 3.89 3.58 3.46
2 1.68 1.84 1.53 2.32 2.88 2.69 1.84
3 2.63 1.63 2.42 2.58 3 3.56 1.59
4 3.21 3.42 3.84 2.79 3.6 3.75 2.3
5 3.11 3.58 3.35 3 3.11 3.21 1.86
6 2.68 2.79 3.16 2.95 3.23 3.68 1.73
7 2 1.53 2.11 2.16 2 1.88 2.03
3. Kemudian mengurutkan objek-objek tersebut ke dalam kelompok yang
mempunyai jarak Euclid terkecil.
Tabel 3.8 Mengurutkan Objek ke dalam Kelompok ke Jarak Euclid Terkecil n SEMESTER Square instance to query distance Urutan Jarak terkecil Apakah termasuk nearest-neighbor (k) X11
= 1 X12=2 X13=3 X14=4 X15=5 X16=6
1 3.94 4 4 4 3.89 3.58 3.46 7 -
2 1.68 1.84 1.53 2.32 2.88 2.69 1.84 3 Ya
3 2.63 1.63 2.42 2.58 3 3.56 1.59 1 Ya
4 3.21 3.42 3.84 2.79 3.6 3.75 2.3 6 -
5 3.11 3.58 3.35 3 3.11 3.21 1.86 4 Ya
6 2.68 2.79 3.16 2.95 3.23 3.68 1.73 2 Ya
7 2 1.53 2.11 2.16 2 1.88 2.03 5 Ya
Pada tabel di atas, yang dimaksud dengan jarak terkecil adalah
mengurutkan hasil query instance dari yang terkecil hingga ke besar. Jika
urutan pada query instance termasuk nilai k = 5, maka yang diambil 5
jarak yang terpendek yang termasuk nilai k (Ya).
4. Mengumpulkan label class Y (klasifikasi Nearest Neighborhood).
Pada proses ke-4 ini, hasil dari pengelompokan “apakah termasuk Nearest
(67)
29
menentukan data tersebut apakah termasuk klasifikasi lulus <=5 tahun atau lulus > 5 tahun.
Tabel 3.9 Label Class Y
n SEMESTER Square instance to query distance Urutan Jarak terkecil Apakah termasuk nearest-neighbor (k) Y=Klasifikasi X11
=1 X12=2 X13=3 X14=4 X15=5 X16=6
1 3.94 4 4 4 3.89 3.58 3.46 7 - Ya
2 1.68 1.84 1.53 2.32 2.88 2.69 1.84 3 Ya Tidak
3 2.63 1.63 2.42 2.58 3 3.56 1.59 1 Ya Tidak
4 3.21 3.42 3.84 2.79 3.6 3.75 2.3 6 - Ya
5 3.11 3.58 3.35 3 3.11 3.21 1.86 4 Ya Ya
6 2.68 2.79 3.16 2.95 3.23 3.68 1.73 2 Ya Ya
7 2 1.53 2.11 2.16 2 1.88 2.03 5 Ya Tidak
Dengan menggunakan kategori Nearest Neighborhood yang paling
mayoritas maka dapat dipredeksikan nilai query instance yang telah
dihitung. Pada urutan jarak yang terdekat dari satu sampai lima (nilai k=5),
maka diketahui ada 2 yang lulus <=5 tahun dan 3 yang lulus > 5 tahun
pada Tabel 3.10. Sehingga testingdata tersebut termasuk lulus > 5 tahun.
Tabel 3.10 Hasil Akhir Klasifikasi
n SEMESTER Square instance to query distance Urutan Jarak terkecil Apakah termasuk nearest-neighbor (k) Y=Klasifikasi X11
=1 X12=2 X13=3 X14=4 X15=5 X16=6
1 3.94 4 4 4 3.89 3.58 3.46 7 - Ya
2 1.68 1.84 1.53 2.32 2.88 2.69 1.84 3 Ya Tidak
3 2.63 1.63 2.42 2.58 3 3.56 1.59 1 Ya Tidak
4 3.21 3.42 3.84 2.79 3.6 3.75 2.3 6 - Ya
5 3.11 3.58 3.35 3 3.11 3.21 1.86 4 Ya Ya
6 2.68 2.79 3.16 2.95 3.23 3.68 1.73 2 Ya Ya
(68)
30
3.3.1 Analisis Kebutuhan Fungsional
Dalam langkah ini dilakukan penentuan entitas-entitas baik entitas internal maupun entitas eksternal, data yang mengalir, serta prosedur-prosedur yang bisa dilakukan oleh masing-masing entitas.
3.3.1.1 Diagram Konteks
Gambar di bawah merupakan Diagram Konteks pada Aplikasi data mining
untuk memprediksi masa studi mahasiswa menggunakan algoritma k-Nearest
Neighborhood.
Pengguna
Aplikasi Data Mining untuk Memprediksi Masa Studi Mahasiswa
- Data Training yang akan ditambah, diperbaharui, dihapus dan dicari - Data Testing yang akan ditambah, diperbaharui, dihapus dan dicari - Masukan Nilai K untuk memprediksi masa studi mahasiswa
- Informasi Data Testing yang telah ditambah, diperbaharui, dihapus dan dicari - Informasi Tingkat keberhasilan sistem pada data testing dan training
- Informasi Hasil Prediksi Masa Studi Mahasiswa 1 data mahasiswa dan 1 database mahasiswa - Data Login User
- Memprediksi masa studi mahasiswa untuk 1 data mahasiswa - Memprediksi masa studi mahasiswa untuk 1 database mahasiswa
- Info User Login invalid
- Informasi Data Training yang telah ditambah, diperbaharui, dihapus dan dicari
Gambar 3.6 Diagram Konteks Aplikasi Data mining
3.3.1.2 DFD (Data Flow Diagram)
Setelah diagram konteks terbentuk, tahap selanjutnya adalah membuat diagram alir data (data flow diagram/DFD) untuk menjelaskan proses aplikasi
(69)
31
Pengguna
2 1 data mahasiswa
Data Login User & Password
4 Pengolahan Data
training Semester, Data Training, Data Testing & Nilai K
Hasil Prediksi, Tingkat keberhasilan & Persentase Kelulusan
1 Login
3 1 database
mahasiswa 5 Pengolahan Data testing Training Data Testing Data
Data Login Invalid
Login
Invalid
NIM, Semester, data Training & Nilai K
Data Training
Hasil Prediksi, Tingkat Keberhasilan & Kecocokan
Data Training
Login Invalid
Login Invalid
Login Invalid
Simpan, cari, tambah, hapus, memperbaharui data training
Informasi data yang telah disimpan, dicari, ditambah, dihapus dan diperbaharui
Data Training
Simpan, cari, tambah, hapus, memperbaharui data testing
Data Training
Data Testing
Data Testing
Informasi data yang telah disimpan, dicari, ditambah, dihapus dan diperbaharui
Data Testing
Gambar 3.7 DFD (Data Flow Diagram) Level1 Aplikasi Data Mining
Gambar 3.7 merupakan DFD dari Aplikasi data mining untuk menentukan
masa studi mahasiswa di jurusan Teknik Komputer yang di pecah menjadi beberapa proses guna untuk menjelaskan fungsi-fungsi dan arus data yang mengalir pada aplikasi tersebut. Berikut proses-proses yang terdapat di aplikasi
data mining untuk menentukan masa studi mahasiswa:
Proses-proses yang terdapat pada diagram alir data akan dijelaskan lebih terperinci pada spesifikasi proses, sebagaimana diperlihatkan pada Tabel 3.11:
(70)
32
Tabel 3.11 Spesifikasi Proses DFD Level1 Aplikasi Data Mining
No Proses Keterangan
1
No.Proses 1 Nama
Proses
Login
Sumber Pengguna
Input Data Login User dan Password
Output Data Login Invalid
Deskripsi Proses untuk dapat mengakses atau menjalankan aplikasi data
mining.
Logika Proses
1. Masukkan User dan Password.
2. Jika berhasil, maka akan menampilkan menu utama dan jika
tidak berhasil atau user dan passwordnya salah, maka akan menampilkan pesan.
2
No.Proses 2 Nama
Proses
1 Data Mahasiswa
Sumber Training Data
Input NIM, Nilai k.
Output Hasil prediksi, Tingkat Keberhasilan dan Kecocokan
Deskripsi Proses memprediksi menggunakan 1 data mahasiswa dengan
memilih data training yang digunakan, nilai IP per semester yang digunakan, mengisi NIM yang akan diprediksi dan
mengisi nilai k yang digunakan. Hasil dari proses ini yaitu,
peluang kelulusan, kategori kelulusan dan kecocokan data asli dengan hasil prediksi.
Logika Proses
1. Memilih data training yang digunakan.
2. Memilih tabel data testing yang akan diprediksi.
3. Memilih Semester yang nilai IP-nya akan digunakan.
4. Masukkan NIM yang akan di prediksi. Lalu klik button cari
untuk menampilkan nilai IP.
5. Masukkan Nilai k yang akan digunakan. Klik button hitung
jarak.
6. Keluar Hasil Peluang kelulusan, kategori kelulusan dan
kecocokan.
3
No.Proses 3 Nama
Proses
1 Database Mahasiswa
Sumber Training Data, Testing Data
Input Nilai k, Data Training, Data Testing.
Output Hasil prediksi, Tingkat Keberhasilan, Persentase Kelulusan
(71)
33
dengan memilih data training yang digunakan, memilih data
testing yang akan di prediksi, memilih nilai IP per semester
yang digunakan dan mengisi nilai k yang digunakan. Hasil dari
proses ini yaitu persentase kelulusan dan tingkat keberhasilan. Logika
Proses
1. Memilih data training yang digunakan.
2. Memilih tabel data testing yang akan diprediksi.
3. Memilih Semester yang nilai IP-nya akan digunakan.
4. Masukkan Nilai k yang akan digunakan. Klik button hitung
jarak.
5. Keluar Hasil Peluang kelulusan, kategori kelulusan dan
kecocokan.
4
No.Proses 4 Nama
Proses
Pengolahan Data Training
Sumber Training Data
Input Simpan, Cari, Perbaharui, Tambah dan Hapus Data
Output Informasi data yang telah disimpan, dicari, diperbaharui,
ditambah dan dihapus.
Deskripsi Proses untuk mengolah data pada tabel training data.
Logika Proses
1. Jika klik button tambah, maka mengaktifkan button simpan,
batal dan hapus.
2. Jika klik button cari, maka akan mengaktifkan button
simpan, perbaharui, batal dan hapus.
3. Jika klik button perbaharui:
Adodc1.Recordset!NIM = Text1.Text Adodc1.Recordset!Kls = Text2.Text Adodc1.Recordset!Nm_Mhs = Text3.Text Adodc1.Recordset!Tgl_Lulus = Text4.Text Adodc1.Recordset!Thn_Msk = Text5.Text Adodc1.Recordset!Lama_Studi = Text6.Text Adodc1.Recordset!IPK = Text7.Text
Adodc1.Recordset!Jdl_Skripsi = Text8.Text Adodc1.Recordset!IP_sem_1 = Text9.Text Adodc1.Recordset!IP_sem_2 = Text10.Text Adodc1.Recordset!IP_sem_3 = Text11.Text Adodc1.Recordset!IP_sem_4 = Text12.Text Adodc1.Recordset!IP_sem_5 = Text13.Text Adodc1.Recordset!IP_sem_6 = Text14.Text Adodc1.Recordset!Keterangan = Text15.Text Adodc1.Recordset.Update
Adodc1.Refresh
4. Jika klik button simpan:
If Not Adodc1.Recordset.EOF Then Adodc1.Recordset!NIM = Text1.Text Adodc1.Recordset!Kls = Text2.Text
(72)
34
Adodc1.Recordset!Nm_Mhs = Text3.Text Adodc1.Recordset!Tgl_Lulus = Text4.Text Adodc1.Recordset!Thn_Msk = Text5.Text Adodc1.Recordset!Lama_Studi = Text6.Text Adodc1.Recordset!IPK = Text7.Text
Adodc1.Recordset!Jdl_Skripsi = Text8.Text Adodc1.Recordset!IP_sem_1 = Text9.Text Adodc1.Recordset!IP_sem_2 = Text10.Text Adodc1.Recordset!IP_sem_3 = Text11.Text Adodc1.Recordset!IP_sem_4 = Text12.Text Adodc1.Recordset!IP_sem_5 = Text13.Text Adodc1.Recordset!IP_sem_6 = Text14.Text Adodc1.Recordset!Keterangan = Text15.Text MsgBox "Data Anda berhasil disimpan!" Else
MsgBox "Maaf, Anda belum mengisi NIM atau NIM yang Anda masukkan telah ada !"
End If
5. Jika klik button hapus:
Adodc1.Recordset.Delete Adodc1.Recordset.Update Adodc1.Refresh
MsgBox "Data Anda telah berhasil dihapus!"
5
No.Proses 5 Nama
Proses
Pengolahan Data Testing
Sumber Testing Data
Input Simpan, Cari, Perbaharui, Tambah dan Hapus Data
Output Informasi data yang telah disimpan, dicari, diperbaharui,
ditambah dan dihapus.
Deskripsi Proses untuk mengolah data pada tabel testing data.
Logika Proses
1. Menentukan tabel testing data yang mana yang akan diolah
datanya.
2. Jika klik button tambah, maka mengaktifkan button simpan,
batal dan hapus.
3. Jika klik button cari, maka akan mengaktifkan button
simpan, perbaharui, batal dan hapus.
4. Jika klik button perbaharui:
If Combo1.Text = " Data testing" Then Call perbaharui_testing
ElseIf Combo1.Text = "Angkatan 2007" Then Call perbaharui2007
ElseIf Combo1.Text = "Angkatan 2008" Then Call perbaharui2008
ElseIf Combo1.Text = "Angkatan 2009" Then Call perbaharui2009
(73)
35
ElseIf Combo1.Text = "Angkatan 2010" Then Call perbaharui2010
ElseIf Combo1.Text = "Angkatan 2011" Then Call perbaharui2011
End If
//procedur perbaharui
Adodc1.RecordSource = "data_testing" Adodc1.Refresh
DataGrid1.Refresh
Adodc1.Recordset!NIM = Text1.Text Adodc1.Recordset!IP_sem_1 = Text2.Text Adodc1.Recordset!IP_sem_2 = Text3.Text Adodc1.Recordset!IP_sem_3 = Text4.Text Adodc1.Recordset!IP_sem_4 = Text5.Text Adodc1.Recordset!IP_sem_5 = Text6.Text Adodc1.Recordset!IP_sem_6 = Text5.Text Adodc1.Recordset.Update
Adodc1.Refresh
5. Jika klik buttin simpan:
If Combo1.Text = " Data testing" Then Call simpan_testing
MsgBox "Data Anda berhasil disimpan!" ElseIf Combo1.Text = "Angkatan 2007" Then Call simpan2007
MsgBox "Data Anda berhasil disimpan!" ElseIf Combo1.Text = "Angkatan 2008" Then Call simpan2008
MsgBox "Data Anda berhasil disimpan!" ElseIf Combo1.Text = "Angkatan 2009" Then Call simpan2009
MsgBox "Data Anda berhasil disimpan!" ElseIf Combo1.Text = "Angkatan 2010" Then Call simpan2010
MsgBox "Data Anda berhasil disimpan!" ElseIf Combo1.Text = "Angkatan 2011" Then Call simpan2011
MsgBox "Data Anda berhasil disimpan!" End If
//procedure simpan
Adodc1.RecordSource = "data_testing" Adodc1.Refresh
(74)
36
If Not Adodc1.Recordset.EOF Then Adodc1.Recordset!NIM = Text1.Text Adodc1.Recordset!IP_sem_1 = Text2.Text Adodc1.Recordset!IP_sem_2 = Text3.Text Adodc1.Recordset!IP_sem_3 = Text4.Text Adodc1.Recordset!IP_sem_4 = Text5.Text Adodc1.Recordset!IP_sem_5 = Text6.Text Adodc1.Recordset!IP_sem_6 = Text7.Text Else
MsgBox "Maaf, NIM yang ada masukkan telah ada!" End If
6. Jika klik button hapus:
Adodc1.RecordSource = "data_testing" Adodc1.Refresh DataGrid1.Refresh Adodc1.Recordset.Delete Adodc1.Recordset.Update Adodc1.Refresh
MsgBox "Data Anda telah berhasil dihapus!"
Pengguna 2.2 Hitung Jarak 2.1 Cari 2.3 Hapus Testing Data Training Data
Pilih tabel database data testing yang digunakan dan masukkan NIM
Info Nilai IP NIM tersebut
Masukkan Nilai k yang akan digunakan
Info hasil prediksi
Layar yang akan dihapus
Info layar yang telah dihapus
Data Testing
Data Testing
Data Training
Data Training
Data Testing
Data Testing
Logi n In
valid L ogin in valid Login Invalid
(75)
37
Tabel 3.12 Spesifikasi ProsesDFD Level2 Proses 2 1 Data Mahasiswa
No Proses Keterangan
1
No.Proses 2.1
Nama Proses
Cari
Sumber Pengguna, Testing data
Input Pilihan tabel di database dan NIM
Output Nilai IP NIM tersebut
Deskripsi Proses untuk mencari NIM mahasiswa yang akan diprediksi,
sehingga akan keluar secara otomatis nilai IP mahasiswa tersebut.
Logika Proses
1. Memilih data training yang digunakan.
2. Memilih tabel data testing yang akan diprediksi.
3. Memilih Semester yang nilai IP-nya akan digunakan.
4. Masukkan NIM yang akan di prediksi. Lalu klik button
cari untuk menampilkan nilai IP.
2
No.Proses 2.2
Nama Proses
Hitung Jarak
Sumber Training Data, Testing Data, Pengguna
Input Nilai k.
Output Hasil prediksi, Tingkat Keberhasilan dan Kecocokan
Deskripsi Proses untuk memprediksi masa studi mahasiswa dengan
masukan nilai k.
Logika Proses
1. Masukkan Nilai k yang akan digunakan. Klik button hitung
jarak.
2. Keluar Hasil Peluang kelulusan, kategori kelulusan dan
kecocokan.
3
No.Proses 2.3
Nama Proses
Hapus
Sumber Pengguna
Input Button hapus
Output Info layar yang telah dihapus
Deskripsi Proses untuk menghapus layar atau membersihkan layar.
Logika Proses
1. Klik button hapus.
2. Setelah berhasil layar dibersihkan, maka akan keluar pesan
(1)
76
Dari hasil Gambar 4.20 hasil grafik dapat disimpulkan sebagai berikut:
1. Untuk dua semester yaitu nilai k yang terbaik untuk memprediksi masa studi mahasiswa adalah nilai k=10 dengan tingkat keberhasilan 80%. 2. Untuk empat semester, nilai k yang terbaik untuk memprediksi masa studi
mahasiswa adalah nilai k=30 dengan tingkat keberhasilan 78.33%.
3. Untuk enam semester, nilai k yang terbaik untuk memprediksi masa studi mahasiswa adalah nilai k=20 dan k=30 dengan tingkat keberhasilan 85%. 4. Masing-masing nilai k terbaik di atas hanya berlaku untuk training data
yang berjumlah 61 data dan testing data-nya 60 data.
Pada percobaan satu dan dua di atas dapat dilihat bahwa dengan mengubah nilai k akan menghasilkan prediksi kelulusan yang bervariasi. Jadi, ukuran nilai k yang besar untuk digunakan memprediksi masa studi mahasiswa belum tentu menjadi nilai k yang terbaik dengan tingkat keberhasilan yang tinggi begitupun juga sebaliknya. Nilai k yang terbaik dipengaruhi oleh jumlah data yang digunakan.
(2)
77 5.1 Simpulan
Berdasarkan pembahasan dari bab-bab sebelumnya, penelitian tugas akhir ini akhirnya dapat diambil beberapa simpulan:
1. Aplikasi data mining ini telah berhasil membuat aplikasi yang dapat
memprediksi masa studi mahasiswa menggunakan algoritma k-Nearest Neighborhood yang akan diterapkan di Jurusan Teknik
Komputer.
2. Untuk menggunakan training data yang berjumlah 30 data dengan menguji testing data berjumlah 60 data, maka didapatkan nilai k yang terbaik untuk memprediksi masa studi mahasiswa yaitu sebagai berikut: 1) Untuk dua semester yaitu nilai k yang terbaik untuk digunakan
memprediksi studi mahasiswa adalah nilai k = 10 dengan tingkat keberhasilan 81.66%.
2) Untuk empat semester yaitu nilai k yang terbaik untuk digunakan memprediksi studi mahasiswa adalah nilai k = 10 dengan tingkat keberhasilan 76.66%.
3) Untuk enam semester yaitu nilai k = 10 merupakan nilai k yang terbaik untuk digunakan memprediksi masa studi mahasiswa dengan tingkat keberhasilan 81.66%.
3. Untuk menggunakan training data yang berjumlah 61 data dengan menguji testing data berjumlah 60 data, maka didapatkan nilai k yang terbaik untuk memprediksi masa studi mahasiswa yaitu sebagai berikut: 1) Untuk dua semester yaitu nilai k yang terbaik untuk memprediksi masa
(3)
78
2) Untuk empat semester, nilai k yang terbaik untuk memprediksi masa studi mahasiswa adalah nilai k = 30 dengan tingkat keberhasilan 78.33%.
3) Untuk enam semester, nilai k yang terbaik untuk memprediksi masa studi mahasiswa adalah nilai k = 20 dan k = 30 dengan tingkat keberhasilan 85%.
5.2 Saran
Penulis memberikan saran bagi yang akan mengembangkan tugas akhir ini, yaitu sebagai berikut:
1. Aplikasi data mining ini dapat dibuat dengan menggunakan jaringan LAN sehingga nanti tidak hanya digunakan oleh satu pengguna di satu tempat saja tetapi dapat digunakan oleh banyak pengguna (para dosen dan pihak Jurusan) di tempat yang berbeda.
2. Aplikasi data mining ini belum memperhitungkan faktor luar yang terjadi pada mahasiswa tersebut sehingga mahasiswa tersebut tidak lulus tepat waktu. Faktor luar tersebut dapat menjadi sebuah parameter baru dalam aplikasi ini.
3. Kasus ini dapat diterapkan dengan menggunakan metode algoritma data mining yang lainnya, misalnya ID3.
4. Penulis juga menyarankan agar aplikasi data mining ini dapat diterapkan menggunakan teknik data warehouse, sehingga tidak hanya menggunakan data akademik 1 Jurusan saja tetapi dapat menggunakan data akademik di Jurusan lain.
(4)
79
[1] Han, J., & Kamber, M. (2006). Data mining Concepts and Techniques Second Edition. San Fransisco: Morgan Kauffman.
[2] Karima, Rahmanita M., Atsomya, Mutyafani, Kurnianti, Ria, & Tyas, Rizkhy Ayuning. (2011). Data mining Metode KNN Min-Max-Normalization. Diakses tanggal 3 April 2012, dari
www.ziddu.com/download/17466288/KNN-MIN_MAX_NORMALIZATION-CONTOHOERHITUNGAN.pdf.html.
[3] Kurnia, Adi. (2004). Pemrograman Microsoft Visual Basic 6.0. Jakarta: Elex Media Komputindo.
[4] Kusrini, & Emha Taufik Luthfi. (2009). Algoritma Data mining. Yogyakarta: Andi.
[5] Pohan, Husni Iskandar & Kusnassriyanto Saiful Bahri. (1997). Pengantar Perancangan Sistem. Jakarta: Erlangga.
[6] Pramudiono, I. (2007). Pengantar Data Mining: Menambang Permata Pengetahuan di Gunung Data. Diakses tanggal 3 April 2012, dari
http://www.ilmukomputer.org/wp-content/uploads/2006/08/iko-datamining.zip.
[7] Rismawan, Tedy, dkk. (2008). Sistem Pendukung Keputusan Berbasis Pocket PC sebagai Penentu Status Gizi Menggunakan Metode KNN (K-Nearest Neighbor). Diakses tanggal 3 April 2012, dari journal.uii.ac.id/index.php/jurnal-teknoin/article/view/793/711
[8] Rusmawan, Uus. (2008). Koleksi VB 6.0 Konsep ADO untuk Tugas Akhir dan Skripsi. Jakarta: PT Elex Media Komputindo.
(5)
80
[9] Huda, Nuqson Masykur. (2010). Aplikasi Data Mining Untuk Menampilkan Informasi Tingkat Kelulusan Mahasiswa. Semarang: Universitan Diponegoro.
(6)
Nama : Astrid Darmawan
Tempat, tanggal lahir : Lhokseumawe, 19 Mei 1989
Jenis kelamin : Perempuan
Agama : Islam
Alamat Sementara : Jl. Ir. H.Juanda No.25 A, RT 09
RW.01 Bandung 40135
Alamat Tetap : Jl. Seulawah No.17 Komplek PIM
Kruenggeukuh-Aceh Utara
No. telepon : 085722091001/082118491989
Email : astriddarmawan@gmail.com
Pendidikan Formal
2007 – 2012 : Universitas Komputer Indonesia, Bandung.
Fakultas Teknik dan Ilmu Komputer, Jurusan Teknik Komputer.
2004 – 2007 : SMA Negri 1 Lhokseumawe, NAD 2001 – 2004 : SMP Iskandar Muda, NAD
2001 : SD YKPP 2, Plaju
1995 – 2000 : SD Iskandar Muda, NAD 1993 – 1995 : TK Tunas Harapan, NAD