当前位置: 首页>>代码示例>>Java>>正文


Java Schema.toAnonymousSchema方法代码示例

本文整理汇总了Java中org.jpmml.converter.Schema.toAnonymousSchema方法的典型用法代码示例。如果您正苦于以下问题:Java Schema.toAnonymousSchema方法的具体用法?Java Schema.toAnonymousSchema怎么用?Java Schema.toAnonymousSchema使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.jpmml.converter.Schema的用法示例。


在下文中一共展示了Schema.toAnonymousSchema方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: encodeModel

import org.jpmml.converter.Schema; //导入方法依赖的package包/类
@Override
public MiningModel encodeModel(Schema schema){
	List<? extends Regressor> estimators = getEstimators();
	List<? extends Number> estimatorWeights = getEstimatorWeights();

	Schema segmentSchema = schema.toAnonymousSchema();

	List<Model> models = new ArrayList<>();

	for(Regressor estimator : estimators){
		Model model = estimator.encodeModel(segmentSchema);

		models.add(model);
	}

	MiningModel miningModel = new MiningModel(MiningFunction.REGRESSION, ModelUtil.createMiningSchema(schema.getLabel()))
		.setSegmentation(MiningModelUtil.createSegmentation(MultipleModelMethod.WEIGHTED_MEDIAN, models, estimatorWeights));

	return miningModel;
}
 
开发者ID:jpmml,项目名称:jpmml-sklearn,代码行数:21,代码来源:AdaBoostRegressor.java

示例2: encodeForest

import org.jpmml.converter.Schema; //导入方法依赖的package包/类
private List<TreeModel> encodeForest(RGenericVector forest, MiningFunction miningFunction, ScoreEncoder scoreEncoder, Schema schema){
	RNumberVector<?> numTrees = (RNumberVector<?>)forest.getValue("num.trees");
	RGenericVector childNodeIDs = (RGenericVector)forest.getValue("child.nodeIDs");
	RGenericVector splitVarIDs = (RGenericVector)forest.getValue("split.varIDs");
	RGenericVector splitValues = (RGenericVector)forest.getValue("split.values");
	RGenericVector terminalClassCounts = (RGenericVector)forest.getValue("terminal.class.counts", true);

	Schema segmentSchema = schema.toAnonymousSchema();

	List<TreeModel> treeModels = new ArrayList<>();

	for(int i = 0; i < ValueUtil.asInt(numTrees.asScalar()); i++){
		TreeModel treeModel = encodeTreeModel(miningFunction, scoreEncoder, (RGenericVector)childNodeIDs.getValue(i), (RNumberVector<?>)splitVarIDs.getValue(i), (RNumberVector<?>)splitValues.getValue(i), (terminalClassCounts != null ? (RGenericVector)terminalClassCounts.getValue(i) : null), segmentSchema);

		treeModels.add(treeModel);
	}

	return treeModels;
}
 
开发者ID:jpmml,项目名称:jpmml-r,代码行数:20,代码来源:RangerConverter.java

示例3: encodeMiningModel

import org.jpmml.converter.Schema; //导入方法依赖的package包/类
@Override
public MiningModel encodeMiningModel(List<Tree> trees, Integer numIteration, Schema schema){
	Schema segmentSchema = schema.toAnonymousSchema();

	MiningModel miningModel = super.encodeMiningModel(trees, numIteration, segmentSchema)
		.setOutput(ModelUtil.createPredictedOutput(FieldName.create("lgbmValue"), OpType.CONTINUOUS, DataType.DOUBLE));

	return MiningModelUtil.createRegression(miningModel, RegressionModel.NormalizationMethod.EXP, schema);
}
 
开发者ID:jpmml,项目名称:jpmml-lightgbm,代码行数:10,代码来源:PoissonRegression.java

示例4: encodeDecisionTreeEnsemble

import org.jpmml.converter.Schema; //导入方法依赖的package包/类
static
public <M extends Model<M> & TreeEnsembleModel<T>, T extends Model<T> & DecisionTreeModel> List<TreeModel> encodeDecisionTreeEnsemble(M model, PredicateManager predicateManager, Schema schema){
	Schema segmentSchema = schema.toAnonymousSchema();

	List<TreeModel> treeModels = new ArrayList<>();

	T[] trees = model.trees();
	for(T tree : trees){
		TreeModel treeModel = encodeDecisionTree(tree, predicateManager, segmentSchema);

		treeModels.add(treeModel);
	}

	return treeModels;
}
 
开发者ID:jpmml,项目名称:jpmml-sparkml,代码行数:16,代码来源:TreeModelUtil.java

示例5: encodeMiningModel

import org.jpmml.converter.Schema; //导入方法依赖的package包/类
@Override
public MiningModel encodeMiningModel(List<RegTree> regTrees, float base_score, Integer ntreeLimit, Schema schema){
	Schema segmentSchema = schema.toAnonymousSchema();

	MiningModel miningModel = createMiningModel(regTrees, base_score, ntreeLimit, segmentSchema)
		.setOutput(ModelUtil.createPredictedOutput(FieldName.create("xgbValue"), OpType.CONTINUOUS, DataType.FLOAT));

	return MiningModelUtil.createRegression(miningModel, getNormalizationMethod(), schema);
}
 
开发者ID:jpmml,项目名称:jpmml-xgboost,代码行数:10,代码来源:GeneralizedLinearRegression.java

示例6: createMiningModel

import org.jpmml.converter.Schema; //导入方法依赖的package包/类
static
protected MiningModel createMiningModel(List<RegTree> regTrees, float base_score, Integer ntreeLimit, Schema schema){
	ContinuousLabel continuousLabel = (ContinuousLabel)schema.getLabel();

	Schema segmentSchema = schema.toAnonymousSchema();

	List<TreeModel> treeModels = new ArrayList<>();

	if(ntreeLimit != null){

		if(ntreeLimit > regTrees.size()){
			throw new IllegalArgumentException("Tree limit " + ntreeLimit + " is greater than the number of trees");
		}

		regTrees = regTrees.subList(0, ntreeLimit);
	}

	for(RegTree regTree : regTrees){
		TreeModel treeModel = regTree.encodeTreeModel(segmentSchema);

		treeModels.add(treeModel);
	}

	MiningModel miningModel = new MiningModel(MiningFunction.REGRESSION, ModelUtil.createMiningSchema(continuousLabel))
		.setMathContext(MathContext.FLOAT)
		.setSegmentation(MiningModelUtil.createSegmentation(Segmentation.MultipleModelMethod.SUM, treeModels))
		.setTargets(ModelUtil.createRescaleTargets(null, ValueUtil.floatToDouble(base_score), continuousLabel));

	return miningModel;
}
 
开发者ID:jpmml,项目名称:jpmml-xgboost,代码行数:31,代码来源:ObjFunction.java

示例7: encodeBagging

import org.jpmml.converter.Schema; //导入方法依赖的package包/类
static
public <E extends Estimator> MiningModel encodeBagging(List<E> estimators, List<List<Integer>> estimatorsFeatures, Segmentation.MultipleModelMethod multipleModelMethod, MiningFunction miningFunction, Schema schema){
	Schema segmentSchema = schema.toAnonymousSchema();

	List<Model> models = new ArrayList<>();

	for(int i = 0; i < estimators.size(); i++){
		E estimator = estimators.get(i);
		List<Integer> estimatorFeatures = estimatorsFeatures.get(i);

		Schema estimatorSchema = segmentSchema.toSubSchema(Ints.toArray(estimatorFeatures));

		Model model = estimator.encodeModel(estimatorSchema);

		models.add(model);
	}

	MiningModel miningModel = new MiningModel(miningFunction, ModelUtil.createMiningSchema(schema.getLabel()))
		.setSegmentation(MiningModelUtil.createSegmentation(multipleModelMethod, models));

	return miningModel;
}
 
开发者ID:jpmml,项目名称:jpmml-sklearn,代码行数:23,代码来源:BaggingUtil.java

示例8: encodeRegression

import org.jpmml.converter.Schema; //导入方法依赖的package包/类
private MiningModel encodeRegression(RGenericVector forest, final Schema schema){
	RNumberVector<?> leftDaughter = (RNumberVector<?>)forest.getValue("leftDaughter");
	RNumberVector<?> rightDaughter = (RNumberVector<?>)forest.getValue("rightDaughter");
	RDoubleVector nodepred = (RDoubleVector)forest.getValue("nodepred");
	RNumberVector<?> bestvar = (RNumberVector<?>)forest.getValue("bestvar");
	RDoubleVector xbestsplit = (RDoubleVector)forest.getValue("xbestsplit");
	RIntegerVector nrnodes = (RIntegerVector)forest.getValue("nrnodes");
	RDoubleVector ntree = (RDoubleVector)forest.getValue("ntree");

	ScoreEncoder<Double> scoreEncoder = new ScoreEncoder<Double>(){

		@Override
		public String encode(Double value){
			return ValueUtil.formatValue(value);
		}
	};

	int rows = nrnodes.asScalar();
	int columns = ValueUtil.asInt(ntree.asScalar());

	Schema segmentSchema = schema.toAnonymousSchema();

	List<TreeModel> treeModels = new ArrayList<>();

	for(int i = 0; i < columns; i++){
		TreeModel treeModel = encodeTreeModel(
				MiningFunction.REGRESSION,
				scoreEncoder,
				FortranMatrixUtil.getColumn(leftDaughter.getValues(), rows, columns, i),
				FortranMatrixUtil.getColumn(rightDaughter.getValues(), rows, columns, i),
				FortranMatrixUtil.getColumn(nodepred.getValues(), rows, columns, i),
				FortranMatrixUtil.getColumn(bestvar.getValues(), rows, columns, i),
				FortranMatrixUtil.getColumn(xbestsplit.getValues(), rows, columns, i),
				segmentSchema
			);

		treeModels.add(treeModel);
	}

	MiningModel miningModel = new MiningModel(MiningFunction.REGRESSION, ModelUtil.createMiningSchema(schema.getLabel()))
		.setSegmentation(MiningModelUtil.createSegmentation(Segmentation.MultipleModelMethod.AVERAGE, treeModels));

	return miningModel;
}
 
开发者ID:jpmml,项目名称:jpmml-r,代码行数:45,代码来源:RandomForestConverter.java

示例9: encodeClassification

import org.jpmml.converter.Schema; //导入方法依赖的package包/类
private MiningModel encodeClassification(RGenericVector forest, final Schema schema){
	RNumberVector<?> bestvar = (RNumberVector<?>)forest.getValue("bestvar");
	RNumberVector<?> treemap = (RNumberVector<?>)forest.getValue("treemap");
	RIntegerVector nodepred = (RIntegerVector)forest.getValue("nodepred");
	RDoubleVector xbestsplit = (RDoubleVector)forest.getValue("xbestsplit");
	RIntegerVector nrnodes = (RIntegerVector)forest.getValue("nrnodes");
	RDoubleVector ntree = (RDoubleVector)forest.getValue("ntree");

	int rows = nrnodes.asScalar();
	int columns = ValueUtil.asInt(ntree.asScalar());

	final
	CategoricalLabel categoricalLabel = (CategoricalLabel)schema.getLabel();

	ScoreEncoder<Integer> scoreEncoder = new ScoreEncoder<Integer>(){

		@Override
		public String encode(Integer value){
			return categoricalLabel.getValue(value - 1);
		}
	};

	Schema segmentSchema = schema.toAnonymousSchema();

	List<TreeModel> treeModels = new ArrayList<>();

	for(int i = 0; i < columns; i++){
		List<? extends Number> daughters = FortranMatrixUtil.getColumn(treemap.getValues(), 2 * rows, columns, i);

		TreeModel treeModel = encodeTreeModel(
				MiningFunction.CLASSIFICATION,
				scoreEncoder,
				FortranMatrixUtil.getColumn(daughters, rows, 2, 0),
				FortranMatrixUtil.getColumn(daughters, rows, 2, 1),
				FortranMatrixUtil.getColumn(nodepred.getValues(), rows, columns, i),
				FortranMatrixUtil.getColumn(bestvar.getValues(), rows, columns, i),
				FortranMatrixUtil.getColumn(xbestsplit.getValues(), rows, columns, i),
				segmentSchema
			);

		treeModels.add(treeModel);
	}

	MiningModel miningModel = new MiningModel(MiningFunction.CLASSIFICATION, ModelUtil.createMiningSchema(categoricalLabel))
		.setSegmentation(MiningModelUtil.createSegmentation(Segmentation.MultipleModelMethod.MAJORITY_VOTE, treeModels))
		.setOutput(ModelUtil.createProbabilityOutput(DataType.DOUBLE, categoricalLabel));

	return miningModel;
}
 
开发者ID:jpmml,项目名称:jpmml-r,代码行数:50,代码来源:RandomForestConverter.java

示例10: createMiningModel

import org.jpmml.converter.Schema; //导入方法依赖的package包/类
static
protected MiningModel createMiningModel(List<Tree> trees, Integer numIteration, Schema schema){
	ContinuousLabel continuousLabel = (ContinuousLabel)schema.getLabel();

	Schema segmentSchema = schema.toAnonymousSchema();

	PredicateManager predicateManager = new PredicateManager();

	List<TreeModel> treeModels = new ArrayList<>();

	if(numIteration != null){

		if(numIteration > trees.size()){
			throw new IllegalArgumentException("Tree limit " + numIteration + " is greater than the number of trees");
		}

		trees = trees.subList(0, numIteration);
	}

	for(Tree tree : trees){
		TreeModel treeModel = tree.encodeTreeModel(predicateManager, segmentSchema);

		treeModels.add(treeModel);
	}

	MiningModel miningModel = new MiningModel(MiningFunction.REGRESSION, ModelUtil.createMiningSchema(continuousLabel))
		.setSegmentation(MiningModelUtil.createSegmentation(Segmentation.MultipleModelMethod.SUM, treeModels));

	return miningModel;
}
 
开发者ID:jpmml,项目名称:jpmml-lightgbm,代码行数:31,代码来源:ObjectiveFunction.java


注:本文中的org.jpmml.converter.Schema.toAnonymousSchema方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。