Sebatas yang saya pahami.Begitu lah kira2 tulisan implementasi K-NN dengan menggunakan PHP ini semoga ada manfaat bagi saya dan teman2 yang sempat membaca tulisan ini.Sebagai data training saya menggunakan data dibawah ini :
Sky | Air | Humadity | Wind | Water | Forecast | Enjoy Sport |
---|---|---|---|---|---|---|
sunny | warm | normal | strong | warm | same | yes |
sunny | warm | high | strong | warm | same | yes |
rainy | cold | high | strong | warm | change | no |
sunny | warm | high | strong | cool | change | yes |
Kemudian data-data tersebut saya konversikan menjadi data kuantitatif dengan memberi nilai 1 dan 2. Begitu pun jumlah data test yang nantinya akan dites saya ubah ke data kuantitatif 1 dan 2. Setelah proses tersebut maka saya lakukan :
$lt;?php //Begin K-NN Algorithm //calculate euclidean for($i=0;$i<$rnum;$i++) { $dtTemp[$i]=sqrt((pow($dtTestNN[0]-$dtTrainingNN[$i][0],2)) +(pow($dtTestNN[1]-$dtTrainingNN[$i][1],2))+(pow($dtTestNN[2]-$dtTrainingNN[$i][2],2)) +(pow($dtTestNN[3]-$dtTrainingNN[$i][3],2))+(pow($dtTestNN[4]-$dtTrainingNN[$i][4],2)) +(pow($dtTestNN[5]-$dtTrainingNN[$i][5],2))); $dtNN[$i]= $dtTrainingNN[$i][6]+$dtTemp[$i]; } //sort program for($i=1;$i<$rnum;$i++) { for($j=$rnum-1;$j>0;$j--) { f($dtNN[$j-1]>$dtNN[$j]) { $temp = $dtNN[$j]; $dtNN[$j] = $dtNN[$j-1]; $dtNN[$j-1] = $temp; $temp2 = $dtTemp[$j]; $dtTemp[$j] = $dtTemp[$j-1]; $dtTemp[$j-1] = $temp2; } } } //1-NN if(($dtNN[0]-$dtTemp[0])==1) { $kesimpulanNN[0]="yes"; } else { $kesimpulanNN[0]="no"; } //sort based category k-NN for($k=0;$k<$jumK;$k++) { if(($dtNN[$k]-$dtTemp[$k])==1) { $jumNNY++; } else { $jumNNN++; } } if($jumNNY > $jumNNN) { $kesimpulanNN[1] = "yes"; } else if($jumNNN > $jumNNY) { $kesimpulanNN[1] = "no"; } else { $kesimpulanNN[1] = "relatif"; } //end K-NN ?>
Semoga bermanfaat!!!!!!!
gan dijelasin lebih rinci dong gan..soallnya..
mas knpa pas aq run filenya di xampp..ko hasilnya ga keloar ya?
kosong malah….
mohon pencerahan gan
Array buat pendefinisian nya udah di buat ?