PROGRAMMING

Simple K-NN PHP

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!!!!!!!

Standar

3 thoughts on “Simple K-NN PHP

  1. wenwen080691 berkata:

    mas knpa pas aq run filenya di xampp..ko hasilnya ga keloar ya?
    kosong malah….
    mohon pencerahan gan

Tinggalkan Balasan

Please log in using one of these methods to post your comment:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s