Anda di halaman 1dari 18

PENERAPAN ALGORITMA

VALIDASI DAN VALIDASI SILANG


DALAM PENENTUAN K OPTIMUM
DOSEN PENGAMPU :
Dr. Bagus Sartono

Anggita Rizky Fadilah


G152180151
LIBRARY YANG DIGUNAKAN

Library (“Caret”)

Library(“class”)
DATA

Data yang digunakan mempunyai tiga vaiabel, yaitu X1 dan X2 serta variabel class
yang berisi kategori kelas. Terdiri dari 24 pengamatan.
DATA

CLUSTER 2

CLUSTER 1
VALIDASI
TABEL 1

…..........
for (t in tetangga)
{
simulasi<-i
prediksi.validasi<-knn(training, validasi,
kelastraining, k=t)
cm<-confusionMatrix(prediksi.validasi, kelasvalidasi)
akurasi<-as.numeric(cm$overall[1])
kappa<-as.numeric(cm$overall[2])
tabel1<-rbind(tabel1,c(simulasi,t,akurasi,kappa))
}
…………………………
}
…..........
VALIDASI
TABEL 2
for(a in tetangga)
{ akur<-NULL
for(b in 1:(100*l))
{ if (tabel1[b,2]==a) akur=rbind(akur,tabel1[b,3])}
rata.akur<-rbind(rata.akur,mean(akur))}
for(a in tetangga)
{ kap<-NULL
for(b in 1:(100*l))
{ if (tabel1[b,2]==a) kap=rbind(kap,tabel1[b,4]) }
rata.kap<-rbind(rata.kap,mean(kap))}
tabel2<-cbind(tetangga,rata.akur,rata.kap)
colnames(tabel2)<-c("Tetangga","Rata-rata akurasi","Rata-rata kappa")

tabel2<-cbind(tetangga,rata.akur,rata.kap)

colnames(tabel2)<-c("Tetangga","Rata-rata akurasi","Rata-rata kappa")


VALIDASI (output)

max.akur<-max(tabel2[,2])

tetangga.opt<-tabel2[tabel2[,2]==max.akur,1]

max.kap<-max(tabel2[,3])

tetangga.opt1<-tabel2[tabel2[,3]==max.kap,1]
VALIDASI (output)
VALIDASI (output)
VALIDASI SILANG
HASIL 1

set.seed(199)
data<-data[sample(nrow(data)),]
n<-nrow(data)
tetangga<-seq(1,19,by=2)
l<-length(tetangga)
hasil<-NULL
data$class<-as.character(data$class)
for(i in seq(5,10,by=5)){
fold<-rep(i,l)
names(fold)<-c("Fold ke-")
ctrl <- trainControl(method="cv", number=i) …………………………
knnFit <- train(class ~ ., data = data, method = "knn", trControl =
ctrl,tuneGrid=expand.grid(k=tetangga))
hasil<-rbind(hasil,cbind(fold,knnFit$results[1:3]))}
VALIDASI SILANG

HASIL 2
for(a in tetangga)
{akur<-NULL
for(b in 1:(2*l))
{ if (hasil[b,2]==a) akur=rbind(akur,hasil[b,3]) }
rata.akur<-rbind(rata.akur,mean(akur))}
for(a in tetangga)
{ kap<-NULL
for(b in 1:(2*l))
{ if (hasil[b,2]==a) kap=rbind(kap,hasil[b,4]) }
rata.kap<-rbind(rata.kap,mean(kap))} …………………………
hasil2<-cbind(tetangga,rata.akur,rata.kap)
colnames(hasil2)<-c("Tetangga","Accuracy mean","Kappa mean")
VALIDASI SILANG

max.akur<-max(hasil2[,2])
tetangga.opt<-hasil2[hasil2[,2]==max.akur,1]

max.kap<-max(hasil2[,3])
tetangga.opt1<-hasil2[hasil2[,3]==max.kap,1]
VALIDASI SILANG
VALIDASI SILANG
KESIMPULAN

Berdasarkan hasil validasi dan validasi silang diperoleh sebagai berikut

Tetangga (K) Rata – Rata Rata – Rata

Optimal Akurasi Kappa

Validasi 5 0,84 0,6681652

Validasi silang 11 0,8637004 0,7294083


PREDIKSI AMATAN BARU
K=11
BATAS DAERAH CLUSTER 1 DAN 2
K=11
TERIMA KASIH