其实predictionio 也是支持随机森林算法的,可惜官方的例子没有出现,我简单写了一点,您也可以参考这个地址:
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;
}
}
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。