国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

NaiveBayes(樸素貝葉斯算法)[分類算法]

2019-11-14 14:40:02
字體:
來源:轉載
供稿:網友

Naïve Bayes(樸素貝葉斯)分類算法的實現

(1) 簡介:

(2)   算法描述:

 

(3)  

  1 <?php  2 /*  3 *Naive Bayes樸素貝葉斯算法(分類算法的實現)  4 */  5   6 /*  7 *把.txt中的內容讀到數組中保存  8 *$filename:文件名稱  9 */ 10 //-------------------------------------------------------------------- 11 function  getFileContent($filename) 12 { 13     $array = array(null); 14     $content = file_get_contents($filename); 15     $result = explode("/r/n",$content); 16     //PRint_r(count($result)); 17     for($j=0;$j<count($result);$j++) 18     { 19         //print_r($result[$j]."<br>"); 20         $con = explode(" ",$result[$j]); 21         array_push($array,$con); 22     } 23     array_splice($array,0,1); 24     return $array; 25 } 26 //-------------------------------------------------------------------- 27  28  29 /* 30 *NaiveBayes樸素貝葉斯算法 31 *$test:測試文本;$train:訓練文本;$flagsyes:yes;$flagsno:no 32 */ 33 //-------------------------------------------------------------------- 34 function  NaiveBayes($test,$train,$flagsyes,$flagsno) 35 { 36     $count_yes = 0; 37     $num = count($train[0]); 38     for($i=1;$i<count($train);$i++) 39     { 40         if($train[$i][$num-1]==$flagsyes)$count_yes++; 41     } 42     $p_yes = $count_yes / (count($train)-1); 43     $p_no = 1- $p_yes; 44      45     $count_no = count($train)-1 - $count_yes; 46  47      48     for($i=1;$i<count($test)-1;$i++) 49     { 50         $testnumyes = 0; 51         $testnumno = 0; 52         for($j=1;$j<count($train);$j++) 53         { 54             if(($train[$j][$i]==$test[$i])&&($train[$j][count($test)-1]==$flagsyes))$testnumyes++; 55             else if(($train[$j][$i]==$test[$i])&&($train[$j][count($test)-1]==$flagsno))$testnumno++; 56         } 57          58         $array_yes[$i] = $testnumyes / $count_yes ; 59         $array_no[$i] = $testnumno / $count_no ; 60 /*         61         print_r($testnumyes."<br>"); 62         print_r($testnumno."<br>"); 63         print_r($count_yes."<br>"); 64         print_r($count_no."<br>"); 65         print_r($array_no[$i]."<br>"); 66 */     67     } 68  69     $py=1; 70     $pn=1; 71     for($i=1;$i<count($test)-1;$i++){ 72         $py *= $array_yes[$i]; 73         $pn *= $array_no[$i]; 74     } 75      76     $py *= $p_yes; 77     $pn *= $p_no; 78      79     if($py>$pn)return $flagsyes; 80     else return $flagsno; 81      82 /*    print_r($py."<br>"); 83         print_r($pn."<br>"); 84 */     85      86 } 87 //-------------------------------------------------------------------- 88  89 $train = getFileContent("train.txt"); 90 $test = getFileContent("test.txt"); 91  92 for($i=1;$i<count($test);$i++) 93 { 94     $test[$i][count($test[0])-1] = NaiveBayes($test[$i],$train,Y,N); 95 } 96  97 /* 98 *將數組中的內容讀到.txt中 99 */100 //--------------------------------------------------------------------101 $fp= fopen('result.txt','wb');102 for($i=0;$i<count($test);$i++)103 {104     $temp = NULL;105     for($j=0;$j<count($test[$i]);$j++)106     {107         $temp =  $test[$i][$j]."/t";108         fwrite($fp,$temp);109     }110     fwrite($fp,"/r/n");111 }112 fclose($fp);113 //--------------------------------------------------------------------114 115 /*116 *打印輸出117 */118 //--------------------------------------------------------------------119 echo "<pre>";120 print_r($test);121 echo "</pre>";122 //--------------------------------------------------------------------123 ?>

 

 

 

  


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 尤溪县| 都昌县| 北碚区| 绍兴市| 汪清县| 佛教| 崇文区| 绍兴市| 白城市| 肇州县| 鹿泉市| 上饶市| 颍上县| 博白县| 新民市| 镇江市| 天门市| 襄城县| 仪陇县| 兰考县| 三江| 策勒县| 温宿县| 大丰市| 漠河县| 同江市| 遂宁市| 乌兰县| 衡山县| 保康县| 灵石县| 垫江县| 大荔县| 定兴县| 盐城市| 阿坝| 永宁县| 卢湾区| 同仁县| 民县| 平乡县|