BP_LDA.LDA_Learn.ExternalEvaluation C# (CSharp) Method

ExternalEvaluation() public static method

public static ExternalEvaluation ( string ExternalEvalToolPath, string ResultFile, string TestLabelFile, int epoch, string EvalDataName ) : void
ExternalEvalToolPath string
ResultFile string
TestLabelFile string
epoch int
EvalDataName string
return void
		public static void ExternalEvaluation(string ExternalEvalToolPath, string ResultFile, string TestLabelFile, int epoch, string EvalDataName)
		{
			string Extension;
			switch(EvalDataName)
			{
			case "Test Set":
				Extension = ".testscore";
				break;
			case "Validation Set":
				Extension = ".validscore";
				break;
			default:
				throw new Exception("Unknown EvalDataName.");                    
			}
			using (Process callProcess = new Process()
				{
					StartInfo = new ProcessStartInfo()
					{
						FileName = ExternalEvalToolPath,
						Arguments = string.Format("\"{0}\" \"{1}\"", ResultFile + Extension, TestLabelFile),
						CreateNoWindow = true,
						UseShellExecute = false,
					}
				})
			{
				callProcess.Start();
				callProcess.WaitForExit();
			}

			StreamReader ExternalPerfFile = new StreamReader(ResultFile + Extension + ".extperf");
			using (StreamWriter ExternalPerfLogFile = File.AppendText(ResultFile + ".extperf"))
			{
				ExternalPerfLogFile.WriteLine("Epoch = {0}"+"\t[" + EvalDataName + "]", epoch + 1);
			}
			string StrLine;
			while ((StrLine = ExternalPerfFile.ReadLine()) != null)
			{
				Console.WriteLine("#jvkjvkjvkjvkjvkjvkjvkjvkjvkjvkjvkjvkjvkjvkjvkjvkjvk");
				Console.Write(" " + "[" + EvalDataName + "] ");
				Console.WriteLine(StrLine);
				Console.WriteLine("#jvkjvkjvkjvkjvkjvkjvkjvkjvkjvkjvkjvkjvkjvkjvkjvkjvk");
				using (StreamWriter ExternalPerfLogFile = File.AppendText(ResultFile + ".extperf"))
				{
					ExternalPerfLogFile.WriteLine(StrLine);
				}
			}
			ExternalPerfFile.Close();
		}