本文整理汇总了Java中org.dmg.pmml.Visitor类的典型用法代码示例。如果您正苦于以下问题:Java Visitor类的具体用法?Java Visitor怎么用?Java Visitor使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
Visitor类属于org.dmg.pmml包,在下文中一共展示了Visitor类的19个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的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: accept
import org.dmg.pmml.Visitor; //导入依赖的package包/类
@Override
public VisitorAction accept(Visitor visitor){
VisitorAction status = VisitorAction.CONTINUE;
if((status == VisitorAction.CONTINUE) && hasArguments()){
List<Argument> arguments = getArguments();
for(Argument argument : arguments){
status = PMMLObject.traverse(visitor, argument.getExpression());
if(status != VisitorAction.CONTINUE){
break;
}
}
} // End if
if(status == VisitorAction.TERMINATE){
return VisitorAction.TERMINATE;
}
return VisitorAction.CONTINUE;
}
开发者ID:jpmml,项目名称:jpmml-r,代码行数:23,代码来源:FunctionExpression.java
示例4: getParent
import org.dmg.pmml.Visitor; //导入依赖的package包/类
static
public PMMLObject getParent(Visitor visitor, int index){
Deque<PMMLObject> parents = visitor.getParents();
if(index < 0){
throw new IllegalArgumentException();
} else
if(index == 0){
return parents.getFirst();
}
Iterator<PMMLObject> it = parents.iterator();
for(int i = 0; i < index; i++){
it.next();
}
return it.next();
}
开发者ID:jpmml,项目名称:jpmml-model,代码行数:20,代码来源:VisitorUtil.java
示例5: 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
示例6: 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
示例7: 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
示例8: 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
示例9: 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
示例10: 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
示例11: 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
示例12: execute
import org.dmg.pmml.Visitor; //导入依赖的package包/类
@Override
public void execute() throws MojoExecutionException, MojoFailureException {
List<Class<? extends Visitor>> visitorClazzes = new ArrayList<>();
boolean keepLocator = getKeepLocator();
visitorClazzes.add(keepLocator ? LocatorTransformer.class : LocatorNullifier.class);
List<String> visitorClasses = getVisitorClasses();
if(visitorClasses != null){
try {
for(String visitorClass : visitorClasses){
Class<?> clazz = Class.forName(visitorClass);
visitorClazzes.add(clazz.asSubclass(Visitor.class));
}
} catch(ClassNotFoundException | ClassCastException e){
throw new MojoFailureException("Invalid visitorClasses parameter", e);
}
}
List<ModelSet> modelSets = getModelSets();
if(modelSets == null || modelSets.isEmpty()){
throw new MojoFailureException("Missing modelSets parameter");
}
for(ModelSet modelSet : modelSets){
transform(modelSet, visitorClazzes);
}
}
开发者ID:jpmml,项目名称:jpmml-model,代码行数:33,代码来源:SerMojo.java
示例13: accept
import org.dmg.pmml.Visitor; //导入依赖的package包/类
@Override
public VisitorAction accept(Visitor visitor){
visitor.pushParent(this);
VisitorAction status = PMMLObject.traverse(visitor, getMiningSchema(), getLocalTransformations(), getTargets(), getOutput(), getModelStats(), getModelExplanation(), getModelVerification());
visitor.popParent();
if(status == VisitorAction.TERMINATE){
return VisitorAction.TERMINATE;
}
return VisitorAction.CONTINUE;
}
开发者ID:jpmml,项目名称:jpmml-evaluator,代码行数:15,代码来源:JavaModel.java
示例14: 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
示例15: ModelRegistry
import org.dmg.pmml.Visitor; //导入依赖的package包/类
@Inject
public ModelRegistry(@Named("openscoring") Config config){
Config modelRegistryConfig = config.getConfig("modelRegistry");
List<String> visitorClassNames = modelRegistryConfig.getStringList("visitorClasses");
for(String visitorClassName : visitorClassNames){
Class<?> clazz;
try {
clazz = Class.forName(visitorClassName);
} catch(ClassNotFoundException cnfe){
throw new IllegalArgumentException(cnfe);
}
Class<? extends Visitor> visitorClazz;
try {
visitorClazz = clazz.asSubclass(Visitor.class);
} catch(ClassCastException cce){
throw new IllegalArgumentException(cce);
}
this.visitorClazzes.add(visitorClazz);
}
this.validate = modelRegistryConfig.getBoolean("validate");
}
开发者ID:openscoring,项目名称:openscoring,代码行数:28,代码来源:ModelRegistry.java
示例16: 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
示例17: 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
示例18: accept
import org.dmg.pmml.Visitor; //导入依赖的package包/类
@Override
public VisitorAction accept(Visitor visitor){
return VisitorAction.CONTINUE;
}
开发者ID:jpmml,项目名称:jpmml-evaluator,代码行数:5,代码来源:JavaExpression.java
示例19: accept
import org.dmg.pmml.Visitor; //导入依赖的package包/类
@Override
public VisitorAction accept(Visitor visitor){
throw new UnsupportedOperationException();
}
开发者ID:jpmml,项目名称:jpmml-evaluator,代码行数:5,代码来源:VariableField.java
注:本文中的org.dmg.pmml.Visitor类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论