91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 511KB
    文件類型: .zip
    金幣: 2
    下載: 0 次
    發布日期: 2021-05-07
  • 語言: 其他
  • 標簽: KNN??最近鄰??

資源簡介

用K近鄰(KNN)做手寫體識別(MNIST),準確率可以達到94%。關于具體原理可以看我的博客

資源截圖

代碼片段和文件信息

import?java.io.BufferedReader;
import?java.io.FileReader;
import?java.io.IOException;

public?class?HandwritingRecogniton?{
static?final?int?K?=?20;

public?static?double?calDistance(int[]?a?int[]?b)?{
double?temp?=?0;
for?(int?x?=?0;?x? temp?+=?(a[x]?-?b[x])?*?(a[x]?-?b[x]);
}
return?temp?=?Math.sqrt(temp);
}

public?static?double?cosDis(int[]?a?int[]?b)?{
double?numerator?=?0?aLength?=?0?bLength?=?0;
for?(int?x?=?0;?x? numerator?+=?a[x]?*?b[x];
aLength?+=?a[x];
bLength?+=?b[x];
}
return?numerator?/?(Math.sqrt(aLength)?*?Math.sqrt(bLength));
}

public?static?double?hanmingDis(int[]?a?int[]?b)?{
double?result?=?0;
for?(int?x?=?0;?x? result?+=?Math.abs(a[x]?-?b[x]);
}
return?result;
}

public?static?int[]?str2int(String[]?a)?{
int[]?b?=?new?int[a.length];
for?(int?x?=?0;?x? b[x]?=?Integer.parseInt(a[x]);
}
return?b;
}

public?static?int?classify(String?filename?int[]?a)?throws?IOException?{
FileReader?fr?=?new?FileReader(filename);
BufferedReader?bufr?=?new?BufferedReader(fr);

double[]?d?=?new?double[K];//存放K近鄰的距離

for?(int?x?=?0;?x? d[x]?=?28;
}
double?temp?=?0;
int?lable?=?0;
int[]?num?=?new?int[K];//記錄對應距離的類標
String?str?=?null;
int?t?=?0;
while?((str?=?bufr.readLine())?!=?null?&&?t++? int[]?b?=?str2int(str.substring(0?str.length()?-?1).split(““));
temp?=?calDistance(a?b);
lable?=?Integer.parseInt(str.substring(str.length()?-?1));
for?(int?x?=?0;?x? if?(temp? d[x]?=?temp;
num[x]?=?lable;
break;
}
}
}
bufr.close();
int[]?count?=?new?int[10];
for?(int?x?=?0;?x? count[num[x]]++;
}
int?result?=?0;
for?(int?x?=?1;?x? if?(count[x]?>?count[result])
result?=?x;
}
return?result;
}

public?static?void?main(String[]?arg)?throws?IOException?{
System.out.println(System.currentTimeMillis());
FileReader?fr?=?new?FileReader(“validation.txt“);
BufferedReader?bufr?=?new?BufferedReader(fr);

int?right?=?0?sum?=?0;

String?str?=?null;
while?((str?=?bufr.readLine())?!=?null)?{
int[]?a?=?str2int(str.substring(0?str.length()?-?1).split(““));
int?result?=?classify(“train.txt“?a);
int?lable?=?Integer.parseInt(str.substring(str.length()?-?1));

sum++;
if?(result?==?lable)?{
right++;
//?System.out.println(“result?of?classicication?is:“?+?result?+
//?“?original?lable?is:“?+?lable);
}?else?{
int?cc[][]?=?new?int[28][28];
int?count?=?0;
for?(int?x?=?0;?x? for?(int?y?=?0;?y? cc[x][y]?=?a[count++];
}
}
System.out.println(“result?of?classicication?is:“?+?result?+?“???original?lable?is:“?+?lable);
for?(int?x?=?0;?x?

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2017-01-21?19:17??ML_project\
?????文件?????????301??2016-12-12?17:47??ML_project\.classpath
?????文件?????????386??2016-12-12?17:47??ML_project\.project
?????目錄???????????0??2017-01-21?19:17??ML_project\.settings\
?????文件?????????598??2016-12-12?17:47??ML_project\.settings\org.eclipse.jdt.core.prefs
?????目錄???????????0??2017-01-21?20:26??ML_project\bin\
?????文件????????3941??2017-01-21?20:26??ML_project\bin\HandwritingRecogniton.class
?????目錄???????????0??2017-01-21?20:26??ML_project\src\
?????文件????????3331??2017-01-21?20:26??ML_project\src\HandwritingRecogniton.java
?????文件????15710000??2016-12-12?18:22??ML_project\train.txt
?????文件??????785500??2016-12-12?18:22??ML_project\validation.txt

評論

共有 條評論