static void Main(string[] args) { if (args.Length != 2) { Console.WriteLine("TestMultipleLinearRegression [train corpus file name] [test corpus file name]"); return; } double[][] inputs; double[] outputs; Console.WriteLine("Loading train corpus..."); //Load training corpus LoadCorpusFromFile(args[0], out inputs, out outputs); Console.WriteLine("Multiple linear regression..."); MultipleLinearRegression mlr = new MultipleLinearRegression(inputs[0].Length, true); double error = mlr.Regress(inputs, outputs); Console.WriteLine("Parameter list:"); for (int i = 0; i < mlr.Coefficients.Length; i++) { Console.WriteLine("Coefficient {0}: {1}", i, mlr.Coefficients[i]); } Console.WriteLine("Delta: {0}", error); Console.WriteLine(); //Load test corpus Console.WriteLine("Testing regress result:"); LoadCorpusFromFile(args[1], out inputs, out outputs); for (int i = 0; i < outputs.Length; i++) { StringBuilder sb = new StringBuilder(); double output = mlr.Compute(inputs[i]); for (int j = 0; j < inputs[i].Length; j++) { sb.Append(inputs[i][j].ToString() + " "); } sb.Append(outputs[i] + " RV:" + output); sb.Append(" Err:" + (output - outputs[i]).ToString()); Console.WriteLine(sb.ToString()); } }
/// <summary> /// Creates a new Simple Linear Regression of the form y = Ax + B. /// </summary> /// public SimpleLinearRegression() { this.regression = new MultipleLinearRegression(2); }
/// <summary> /// Creates a new Simple Linear Regression of the form y = Ax + B. /// </summary> /// public SimpleLinearRegression() { this.regression = new MultipleLinearRegression(2); }