Hi All, Here want to print the specific tree or forest structure from pipeline model. However, it seems that here met more issue about XXXClassifier and XXXClassificationModel, as the codes below: ....... GBTClassifier gbtModel = new GBTClassifier(); ParamMap[] grid = new ParamGridBuilder() .addGrid(gbtModel.maxIter(), new int[] {5}) .addGrid(gbtModel.maxDepth(), new int[] {5}) .build(); CrossValidator crossValidator = new CrossValidator() .setEstimator(gbtModel) //rfModel .setEstimatorParamMaps(grid) .setEvaluator(new BinaryClassificationEvaluator()) .setNumFolds(6); Pipeline pipeline = new Pipeline() .setStages(new PipelineStage[] {labelIndexer, vectorSlicer, crossValidator}); PipelineModel plModel = pipeline.fit(data); ArrayList<PipelineModel> m = new ArrayList<PipelineModel> (); m.add(plModel); JAVA_SPARK_CONTEXT.parallelize(m, 1).saveAsObjectFile(this.outputPath + POST_MODEL_PATH); Transformer[] stages = plModel.stages(); Transformer cvStage = stages[2]; CrossValidator crossV = new TR2CVConversion(cvStage).getInstanceOfCrossValidator(); //call self defined scala class Estimator<?> estimator = crossV.getEstimator(); GBTClassifier gbt = (GBTClassifier)estimator; //all the above is okay to compile, but it is wrong to compile for next line//however, in GBTClassifier seems not much detailed model description to get//but by GBTClassificationModel.toString(), we may get the specific trees which are just I want GBTClassificationModel model = (GBTClassificationModel)get; //wrong to compile
Then how to get the specific trees or forest from the model?Thanks in advance~ Zhiliang