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


Java Visitor.applyTo方法代码示例

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


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

示例1: encodeTreeModel

import org.dmg.pmml.Visitor; //导入方法依赖的package包/类
static
public TreeModel encodeTreeModel(org.apache.spark.ml.tree.Node node, PredicateManager predicateManager, MiningFunction miningFunction, Schema schema){
	Node root = encodeNode(node, predicateManager, Collections.<FieldName, Set<String>>emptyMap(), miningFunction, schema)
		.setPredicate(new True());

	TreeModel treeModel = new TreeModel(miningFunction, ModelUtil.createMiningSchema(schema.getLabel()), root)
		.setSplitCharacteristic(TreeModel.SplitCharacteristic.BINARY_SPLIT);

	String compact = TreeModelOptions.COMPACT;
	if(compact != null && Boolean.valueOf(compact)){
		Visitor visitor = new TreeModelCompactor();

		visitor.applyTo(treeModel);
	}

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

示例2: transform

import org.dmg.pmml.Visitor; //导入方法依赖的package包/类
static
public <E extends Estimator & HasTreeOptions, M extends Model> M transform(E estimator, M model){
	Boolean compact = (Boolean)estimator.getOption(HasTreeOptions.OPTION_COMPACT, Boolean.TRUE);
	Boolean flat = (Boolean)estimator.getOption(HasTreeOptions.OPTION_FLAT, Boolean.FALSE);

	List<Visitor> visitors = new ArrayList<>();

	if(compact){
		visitors.add(new TreeModelCompactor());
	} // End if

	if(flat){
		visitors.add(new TreeModelFlattener());
	}

	for(Visitor visitor : visitors){
		visitor.applyTo(model);
	}

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

示例3: transform

import org.dmg.pmml.Visitor; //导入方法依赖的package包/类
private void transform(File pmmlFile, File serFile, List<Class<? extends Visitor>> visitorClazzes) throws Exception {
	PMML pmml;

	try(InputStream is = new FileInputStream(pmmlFile)){
		Source source = ImportFilter.apply(new InputSource(is));

		pmml = JAXBUtil.unmarshalPMML(source);
	}

	for(Class<? extends Visitor> visitorClazz : visitorClazzes){
		Visitor visitor = visitorClazz.newInstance();

		visitor.applyTo(pmml);
	}

	try(OutputStream os = new FileOutputStream(serFile)){
		SerializationUtil.serializePMML(pmml, os);
	}
}
 
开发者ID:jpmml,项目名称:jpmml-model,代码行数:20,代码来源:SerMojo.java

示例4: load

import org.dmg.pmml.Visitor; //导入方法依赖的package包/类
@SuppressWarnings (
	value = {"resource"}
)
public Model load(InputStream is) throws Exception {
	CountingInputStream countingIs = new CountingInputStream(is);

	HashingInputStream hashingIs = new HashingInputStream(Hashing.md5(), countingIs);

	ModelEvaluator<?> evaluator = unmarshal(hashingIs, this.validate);

	PMML pmml = evaluator.getPMML();

	for(Class<? extends Visitor> visitorClazz : this.visitorClazzes){
		Visitor visitor = visitorClazz.newInstance();

		visitor.applyTo(pmml);
	}

	evaluator.verify();

	Model model = new Model(evaluator);
	model.putProperty(Model.PROPERTY_FILE_SIZE, countingIs.getCount());
	model.putProperty(Model.PROPERTY_FILE_MD5SUM, (hashingIs.hash()).toString());

	return model;
}
 
开发者ID:openscoring,项目名称:openscoring,代码行数:27,代码来源:ModelRegistry.java

示例5: encodeMiningModel

import org.dmg.pmml.Visitor; //导入方法依赖的package包/类
public MiningModel encodeMiningModel(Integer numIteration, boolean transform, Schema schema){
	MiningModel miningModel = this.object_function_.encodeMiningModel(Arrays.asList(this.models_), numIteration, schema);

	if(transform){
		List<Visitor> visitors = Arrays.<Visitor>asList(new TreeModelCompactor());

		for(Visitor visitor : visitors){
			visitor.applyTo(miningModel);
		}
	}

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

示例6: encodeMiningModel

import org.dmg.pmml.Visitor; //导入方法依赖的package包/类
/**
 * @see XGBoostUtil#toXGBoostSchema(Schema)
 */
public MiningModel encodeMiningModel(Integer ntreeLimit, boolean transform, Schema schema){
	MiningModel miningModel = this.gbtree.encodeMiningModel(this.obj, this.base_score, ntreeLimit, schema);

	if(transform){
		List<Visitor> visitors = Arrays.<Visitor>asList(new TreeModelCompactor());

		for(Visitor visitor : visitors){
			visitor.applyTo(miningModel);
		}
	}

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

示例7: encodePMML

import org.dmg.pmml.Visitor; //导入方法依赖的package包/类
public PMML encodePMML(Model model){
	PMML pmml = encodePMML();

	pmml.addModels(model);

	List<? extends Visitor> visitors = Arrays.asList(new MiningSchemaCleaner(), new TransformationDictionaryCleaner(), new DataDictionaryCleaner());
	for(Visitor visitor : visitors){
		visitor.applyTo(pmml);
	}

	MiningSchema miningSchema = model.getMiningSchema();

	List<MiningField> miningFields = miningSchema.getMiningFields();
	for(MiningField miningField : miningFields){
		FieldName name = miningField.getName();

		List<Decorator> decorators = getDecorators(name);
		if(decorators == null){
			continue;
		}

		DataField dataField = getDataField(name);
		if(dataField == null){
			throw new IllegalArgumentException();
		}

		for(Decorator decorator : decorators){
			decorator.decorate(dataField, miningField);
		}
	}

	Collection<Map.Entry<FieldName, FieldName>> entries = this.renamedFields.entrySet();
	for(Map.Entry<FieldName, FieldName> entry : entries){
		FieldRenamer renamer = new FieldRenamer(entry.getKey(), entry.getValue());

		renamer.applyTo(pmml);
	}

	return pmml;
}
 
开发者ID:jpmml,项目名称:jpmml-converter,代码行数:41,代码来源:ModelEncoder.java

示例8: findChained

import org.dmg.pmml.Visitor; //导入方法依赖的package包/类
@Test
public void findChained() throws Exception {
	PMML pmml = ResourceUtil.unmarshal(ChainedSegmentationTest.class);

	Visitor visitor = new AbstractVisitor(){

		@Override
		public VisitorAction visit(Segment segment){
			Model model = segment.getModel();

			String id = segment.getId();

			if("first".equals(id)){
				checkFields(FieldNameUtil.create("x1_squared"), model);
			} else

			if("second".equals(id)){
				checkFields(FieldNameUtil.create("x2", "x2_squared"), model);
			} else

			if("third".equals(id)){
				checkFields(FieldNameUtil.create("x3"), model);
			} else

			if("sum".equals(id)){
				checkFields(FieldNameUtil.create("first_output", "second_output", "third_output"), model);
			} else

			{
				throw new AssertionError();
			}

			return super.visit(segment);
		}
	};

	visitor.applyTo(pmml);
}
 
开发者ID:jpmml,项目名称:jpmml-model,代码行数:39,代码来源:FieldReferenceFinderTest.java

示例9: transform

import org.dmg.pmml.Visitor; //导入方法依赖的package包/类
@Override
public PMML transform(PMML pmml) throws Exception {

	if(this.summary){
		printSummary(pmml);
	}

	List<String> visitorClasses = this.visitorClasses;
	for(String visitorClass : visitorClasses){
		Class<?> clazz = Class.forName(visitorClass);

		long begin = System.currentTimeMillis();

		Visitor visitor = (Visitor)clazz.newInstance();
		visitor.applyTo(pmml);

		long end = System.currentTimeMillis();

		System.out.println("Applied " + clazz.getName() + " in " + (end - begin) + " ms.");

		if(this.summary){
			printSummary(pmml);
		}
	}

	return pmml;
}
 
开发者ID:jpmml,项目名称:jpmml-model,代码行数:28,代码来源:CopyExample.java

示例10: ensureValidity

import org.dmg.pmml.Visitor; //导入方法依赖的package包/类
static
protected void ensureValidity(PMMLObject object){
	List<Visitor> visitors = Arrays.<Visitor>asList(
		new UnsupportedMarkupInspector(),
		new InvalidMarkupInspector(){

			@Override
			public VisitorAction visit(Application application){
				String name = application.getName();

				if(name == null){
					return VisitorAction.SKIP;
				}

				return super.visit(application);
			}

			@Override
			public VisitorAction visit(MiningSchema miningSchema){

				if(!miningSchema.hasMiningFields()){
					return VisitorAction.SKIP;
				}

				return super.visit(miningSchema);
			}
		}
	);

	for(Visitor visitor : visitors){
		visitor.applyTo(object);
	}
}
 
开发者ID:jpmml,项目名称:jpmml-evaluator,代码行数:34,代码来源:IntegrationTestBatch.java

示例11: resolveChained

import org.dmg.pmml.Visitor; //导入方法依赖的package包/类
@Test
public void resolveChained() throws Exception {
	PMML pmml = ResourceUtil.unmarshal(ChainedSegmentationTest.class);

	FieldDependencyResolver resolver = new FieldDependencyResolver();
	resolver.applyTo(pmml);

	final
	Map<Field, Set<Field>> dependencies = resolver.getDependencies();

	Visitor visitor = new AbstractVisitor(){

		@Override
		public VisitorAction visit(DataField dataField){
			checkFields(Collections.<FieldName>emptySet(), dependencies.get(dataField));

			return super.visit(dataField);
		}

		@Override
		public VisitorAction visit(DerivedField derivedField){
			Set<Field> fields = dependencies.get(derivedField);

			FieldName name = derivedField.getName();

			if("x1_squared".equals(name.getValue())){
				checkFields(FieldNameUtil.create("x1"), fields);
			} else

			if("x1_cubed".equals(name.getValue())){
				checkFields(FieldNameUtil.create("x1", "x1_squared"), fields);
			} else

			if("x2_squared".equals(name.getValue()) || "x2_cubed".equals(name.getValue())){
				checkFields(FieldNameUtil.create("x2"), fields);
			} else

			{
				throw new AssertionError();
			}

			return super.visit(derivedField);
		}

		@Override
		public VisitorAction visit(OutputField outputField){
			checkFields(Collections.<FieldName>emptySet(), dependencies.get(outputField));

			return super.visit(outputField);
		}
	};

	visitor.applyTo(pmml);
}
 
开发者ID:jpmml,项目名称:jpmml-model,代码行数:55,代码来源:FieldDependencyResolverTest.java

示例12: resolveNested

import org.dmg.pmml.Visitor; //导入方法依赖的package包/类
@Test
public void resolveNested() throws Exception {
	PMML pmml = ResourceUtil.unmarshal(NestedSegmentationTest.class);

	FieldDependencyResolver resolver = new FieldDependencyResolver();
	resolver.applyTo(pmml);

	final
	Map<Field, Set<Field>> dependencies = resolver.getDependencies();

	Visitor visitor = new AbstractVisitor(){

		@Override
		public VisitorAction visit(DerivedField derivedField){
			Set<Field> fields = dependencies.get(derivedField);

			FieldName name = derivedField.getName();

			if("x12".equals(name.getValue())){
				checkFields(FieldNameUtil.create("x1", "x2"), fields);
			} else

			if("x123".equals(name.getValue())){
				checkFields(FieldNameUtil.create("x12", "x3"), fields);
			} else

			if("x1234".equals(name.getValue())){
				checkFields(FieldNameUtil.create("x123", "x4"), fields);
			} else

			if("x12345".equals(name.getValue())){
				checkFields(FieldNameUtil.create("x1234", "x5"), fields);
			} else

			{
				throw new AssertionError();
			}

			return super.visit(derivedField);
		}
	};

	visitor.applyTo(pmml);
}
 
开发者ID:jpmml,项目名称:jpmml-model,代码行数:45,代码来源:FieldDependencyResolverTest.java


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