예제 #1
0
        /// <summary>
        /// Ctor for linear regression model
        /// </summary>
        public RegressionModelEquation(string modelName, double[] coefficients, double rmse, double minX, double maxX, double minY, double maxY, string nameX, string nameY, bool normalizeValues)
        {
            IsLinearRegression = true;
            Name             = modelName;
            CreationDate     = DateTime.Now;
            NormalizeValues  = normalizeValues;
            _outputParameter = new ModelParameter
            {
                Id          = XMLWork.FindIDWithName(nameY, Properties.Settings.Default.Languages),
                Coefficient = 1,
                LowerBound  = minY,
                UpperBound  = maxY
            };
            _RMSE            = rmse;
            _inputParameters = new List <ModelParameter>
            {
                new ModelParameter
                {
                    Id          = null,
                    Coefficient = coefficients[0],
                    LowerBound  = null,
                    UpperBound  = null
                },

                new ModelParameter
                {
                    Id          = XMLWork.FindIDWithName(nameX, Properties.Settings.Default.Languages),
                    Coefficient = coefficients[1],
                    LowerBound  = minX,
                    UpperBound  = maxX
                }
            };
        }
예제 #2
0
        /// <summary>
        /// Ctor for multiple regression model
        /// </summary>
        public RegressionModelEquation(string modelName, string outputParamName, List <string> inputParamNames, double rmse, double[] equationCoefficients,
                                       string[] equationParametersNames, double[] equationParametersLowerBounds, double[] equationParametersUpperBounds, bool normalizeValues)
        {
            IsLinearRegression = false;
            Name             = modelName;
            CreationDate     = DateTime.Now;
            NormalizeValues  = normalizeValues;
            _outputParameter = new ModelParameter
            {
                Id          = XMLWork.FindIDWithName(outputParamName, Properties.Settings.Default.Languages),
                Coefficient = 1,
                LowerBound  = null,
                UpperBound  = null
            };

            _RMSE            = rmse;
            _inputParameters = new List <ModelParameter>
            {
                new ModelParameter
                {
                    Id          = null,
                    Coefficient = equationCoefficients[0],
                    LowerBound  = null,
                    UpperBound  = null
                }
            };
            for (int i = 1; i < equationCoefficients.Length; i++)
            {
                _inputParameters.Add(new ModelParameter
                {
                    Id          = XMLWork.FindIDWithName(equationParametersNames[i - 1], Properties.Settings.Default.Languages),
                    Coefficient = equationCoefficients[i],
                    LowerBound  = equationParametersLowerBounds[i - 1],
                    UpperBound  = equationParametersUpperBounds[i - 1]
                });
            }
        }