predictionio 隨機森林
阿新 • • 發佈:2018-02-22
var algo err file extends cto num sets end 其實predictionio 也是支持隨機森林算法的,可惜官方的例子沒有出現,我簡單寫了一點,您也可以參考這個地址:
https://github.com/runapal5/PredictionIO-DefectPrediction/blob/master/engine.json
https://github.com/runapal5/PredictionIO-DefectPrediction/blob/master/engine.json
public class RandomForestAlgorithm extends P2LJavaAlgorithm<PreparedData, RandomForestModel, Query, PredictedResult> { /** * */ private static final long serialVersionUID = 1L; private final RandomForestAlgorithmParams ap; public RandomForestAlgorithm(RandomForestAlgorithmParams ap) { this.ap = ap; } @Override public RandomForestModel train(SparkContext sc, PreparedData preparedData) { String datapath = "/root/whk/company.txt"; JavaRDD<LabeledPoint> treedata = MLUtils.loadLibSVMFile(sc, datapath).toJavaRDD(); Map<Integer,Integer> categoricalFeaturesInfo = new HashMap<Integer,Integer>(); return RandomForest.trainClassifier(treedata, ap.getNumClasses(), categoricalFeaturesInfo, ap.getNumTrees(), ap.getFeatureSubsetStrategy(),ap.getImpurity(),ap.getMaxDepth(),ap.getMaxBins(),12345); } @Override public PredictedResult predict(RandomForestModel model, final Query query) { double[] b={12,0,0}; model.predict(Vectors.dense(b)); return null; } }
predictionio 隨機森林