@Override public MiningFunction getMiningFunction(){ M model = getModel(); return model.getMiningFunction(); }
public <V> V getValue(LoadingCache<M, V> cache){ M model = getModel(); return CacheUtil.getValue(model, cache); }
public MathContext getMathContext(){ M model = getModel(); return model.getMathContext(); }
public <V> V getValue(Cache<M, V> cache, Callable<? extends V> loader){ M model = getModel(); return CacheUtil.getValue(model, cache, loader); }
protected EvaluationException createMiningSchemaException(String message){ M model = getModel(); MiningSchema miningSchema = model.getMiningSchema(); return new EvaluationException(message, miningSchema); }
private <V extends Number> Map<FieldName, ?> evaluateDefault(){ Model model = getModel(); MiningFunction miningFunction = model.getMiningFunction(); throw new InvalidAttributeException(model, miningFunction); }
protected List<OutputField> createOutputFields(){ M model = getModel(); Output output = model.getOutput(); List<OutputField> resultFields = new ArrayList<>(); if(output != null && output.hasOutputFields()){ List<org.dmg.pmml.OutputField> outputFields = output.getOutputFields(); Predicate<org.dmg.pmml.OutputField> outputFilter = ensureOutputFilter(); outputFields: for(org.dmg.pmml.OutputField outputField : outputFields){ if(outputFilter.test(outputField)){ OutputField resultField = new OutputField(outputField); resultFields.add(resultField); } } } return ImmutableList.copyOf(resultFields); }
protected Set<org.dmg.pmml.ResultFeature> collectResultFeatures(){ M model = getModel(); Output output = model.getOutput(); Set<org.dmg.pmml.ResultFeature> resultFeatures = EnumSet.noneOf(org.dmg.pmml.ResultFeature.class); if(output != null && output.hasOutputFields()){ List<org.dmg.pmml.OutputField> outputFields = output.getOutputFields(); for(org.dmg.pmml.OutputField outputField : outputFields){ resultFeatures.add(outputField.getResultFeature()); } } return Sets.immutableEnumSet(resultFeatures); }
protected void checkSchema(ModelEvaluator<?> modelEvaluator){ Model model = modelEvaluator.getModel(); MiningSchema miningSchema = model.getMiningSchema(); List<InputField> inputFields = modelEvaluator.getInputFields(); List<InputField> groupFields = Collections.emptyList(); if(modelEvaluator instanceof HasGroupFields){ HasGroupFields hasGroupFields = (HasGroupFields)modelEvaluator; groupFields = hasGroupFields.getGroupFields(); } // End if if((inputFields.size() + groupFields.size()) > 1000){ throw new InvalidElementException("Model has too many input fields", miningSchema); } List<TargetField> targetFields = modelEvaluator.getTargetFields(); List<OutputField> outputFields = modelEvaluator.getOutputFields(); if((targetFields.size() + outputFields.size()) < 1){ throw new InvalidElementException("Model does not have any target or output fields", miningSchema); } }
protected List<InputField> createInputFields(MiningField.UsageType usageType){ M model = getModel(); MiningSchema miningSchema = model.getMiningSchema(); List<InputField> inputFields = new ArrayList<>(); if(miningSchema.hasMiningFields()){ List<MiningField> miningFields = miningSchema.getMiningFields(); for(MiningField miningField : miningFields){ FieldName name = miningField.getName(); if(!(miningField.getUsageType()).equals(usageType)){ continue; } Field<?> field = getDataField(name); if(field == null){ field = new VariableField(name); } InputField inputField = new InputField(field, miningField); inputFields.add(inputField); } } return ImmutableList.copyOf(inputFields); }
Model model = modelEvaluator.getModel();
protected List<TargetField> createTargetFields(){ M model = getModel();
@Override public void verify(){ M model = getModel();
public Map<FieldName, ?> evaluate(ModelEvaluationContext context){ M model = getModel();
ModelEvaluator<?> modelEvaluator = context.getModelEvaluator(); Model model = modelEvaluator.getModel();