/// <summary> /// Creates an initialized instance. /// </summary> /// <param name="elem">A xml element containing the configuration data.</param> public NeuralPreprocessorSettings(XElement elem) { //Validation XElement settingsElem = Validate(elem, XsdTypeName); //Parsing InputEncoderCfg = new InputEncoderSettings(settingsElem.Elements("inputEncoder").First()); ReservoirStructuresCfg = new ReservoirStructuresSettings(settingsElem.Elements("reservoirStructures").First()); ReservoirInstancesCfg = new ReservoirInstancesSettings(settingsElem.Elements("reservoirInstances").First()); PredictorsReductionRatio = double.Parse(settingsElem.Attribute("predictorsReductionRatio").Value, CultureInfo.InvariantCulture); PredictorValueMinSpan = double.Parse(settingsElem.Attribute("predictorValueMinSpan").Value, CultureInfo.InvariantCulture); Check(); return; }
//Constructors /// <summary> /// Creates an initialized instance. /// </summary> /// <param name="inputEncoderCfg">The configuration of the input encoder.</param> /// <param name="reservoirStructuresCfg">The configuration of the reservoir structures.</param> /// <param name="reservoirInstancesCfg">The configuration of the reservoir instances.</param> /// <param name="predictorsReductionRatio">Determines how many predictors having smallest value-span to be disabled.</param> /// <param name="predictorValueMinSpan">Specifies the minimum acceptable predictor's value-span.</param> public NeuralPreprocessorSettings(InputEncoderSettings inputEncoderCfg, ReservoirStructuresSettings reservoirStructuresCfg, ReservoirInstancesSettings reservoirInstancesCfg, double predictorsReductionRatio = DefaultPredictorsReductionRatio, double predictorValueMinSpan = DefaultPredictorValueMinSpan ) { InputEncoderCfg = (InputEncoderSettings)inputEncoderCfg.DeepClone(); ReservoirStructuresCfg = (ReservoirStructuresSettings)reservoirStructuresCfg.DeepClone(); ReservoirInstancesCfg = (ReservoirInstancesSettings)reservoirInstancesCfg.DeepClone(); PredictorsReductionRatio = predictorsReductionRatio; PredictorValueMinSpan = predictorValueMinSpan; Check(); return; }