資源簡介
SVM 算法 java 實現了調用接口,只要傳入數據即可,調用了encog這個開源包的SVM算法,也是官方libsvm的。

代碼片段和文件信息
package?algorithm;
import?java.util.ArrayList;
import?java.util.List;
import?java.util.TreeMap;
/**
?*?Created?by?zzh?on?2016/12/7.
?*/
public?class?algorithmAPI?{
????public?Double[][]?result?;
????public?Double[][]?double2Double(double[][]?doubleData)
????{
????????Double[][]?result?=?new?Double[doubleData.length][doubleData[0].length];
????????for(int?i?=?0;i ????????????for?(int?j?=?0;?j?
????????????????result[i][j]?=?Double.parseDouble(String.format(“%.4f“?doubleData[i][j]));
????????????????System.out.print(result[i][j]?+?“?“);
????????????}
????????}
????????return?result;
????}
????public?double[][]?Double2double(Double[][]?doubleData)
????{
????????double[][]?result?=?new?double[doubleData.length][doubleData[0].length];
????????for(int?i?=?0;i ????????????for?(int?j?=?0;?j?????????????????System.out.print(doubleData[i][j]+?“?“);
????????????????result[i][j]?=?Double.parseDouble(String.format(“%.4f“?doubleData[i][j]));
??????????????//??System.out.print(result[i][j]?+?“?“);
????????????}
????????}
????????return?result;
????}
?/**
?????*?SVM算法
?????*?@param??trainData?訓練集;每一行為一個數據集
?????*?@param??trainlabel??訓練集標簽
?????*?@param??testData???????測試集
?????*?@param??svm_type????
?????*?@param??kener_type???
?????*/
????public?Double[][]?getSVMResult(Double[][]?trainDataDouble[][]?trainlabelint?svm_typeint?kener_type?Double[][]?testData)
????{
????????SVM?svm?=?new?SVM();
????????svm.trainSVM(Double2double(trainData)Double2double(trainlabel)svm_typekener_type);
????????result?=?svm.computeSVM((Double2double(testData)));
????????return?result;
????}
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????1794??2016-12-21?13:44??SVM\algorithmAPI.java
?????文件???????3368??2016-12-21?13:34??SVM\SVM.java
?????目錄??????????0??2016-12-21?13:42??SVM
-----------?---------??----------?-----??----
?????????????????5162????????????????????3
- 上一篇:Java 編程規范CheckList
- 下一篇:java 電影院售票系統
評論
共有 條評論