@Override
public LocalTransformations build(BasicML basicML) {
LocalTransformations localTransformations = new LocalTransformations();
if(basicML instanceof BasicFloatNetwork) {
BasicFloatNetwork bfn = (BasicFloatNetwork) basicML;
Set<Integer> featureSet = bfn.getFeatureSet();
for(ColumnConfig config: columnConfigList) {
if(config.isFinalSelect()
&& (CollectionUtils.isEmpty(featureSet) || featureSet.contains(config.getColumnNum()))) {
double cutoff = modelConfig.getNormalizeStdDevCutOff();
localTransformations.withDerivedFields(config.isCategorical() ? createCategoricalDerivedField(
config, cutoff, modelConfig.getNormalizeType()) : createNumericalDerivedField(config,
cutoff, modelConfig.getNormalizeType()));
}
}
} else {
for(ColumnConfig config: columnConfigList) {
if(config.isFinalSelect()) {
double cutoff = modelConfig.getNormalizeStdDevCutOff();
localTransformations.withDerivedFields(config.isCategorical() ? createCategoricalDerivedField(
config, cutoff, modelConfig.getNormalizeType()) : createNumericalDerivedField(config,
cutoff, modelConfig.getNormalizeType()));
}
}
}
return localTransformations;
}