public void Init(string modelName) { try { using (var env = EnvHelper.NewTestEnvironment()) engine = new ValueMapperPredictionEngineFloat(env, modelName, "Probability"); } catch (Exception e) { throw new Exception("erreur", e); } }
public void TestValueMapperPredictionEngineMultiThread() { var name = FileHelper.GetTestFile("bc-lr.zip"); /*using (*/ var env = EnvHelper.NewTestEnvironment(); using (var engine0 = new ValueMapperPredictionEngineFloat(env, name, conc: 1)) { var feat = new float[] { 5, 1, 1, 1, 2, 1, 3, 1, 1 }; var exp = new float[100]; for (int i = 0; i < exp.Length; ++i) { feat[0] = i; exp[i] = engine0.Predict(feat); Assert.IsFalse(float.IsNaN(exp[i])); Assert.IsFalse(float.IsInfinity(exp[i])); } var dico = new Dictionary <Tuple <int, bool, int>, double>(); foreach (var each in new[] { false, true }) { foreach (int th in new int[] { 2, 0, 1, 3 }) { var engine = new ValueMapperPredictionEngineFloat(env, name, conc: th); var sw = new Stopwatch(); sw.Start(); for (int i = 0; i < exp.Length; ++i) { feat[0] = i; var res = engine.Predict(feat); Assert.AreEqual(exp[i], res); } sw.Stop(); dico[new Tuple <int, bool, int>(exp.Length, each, th)] = sw.Elapsed.TotalSeconds; } } Assert.AreEqual(dico.Count, 8); var df = DataFrameIO.Convert(dico, "N", "number of threads", "time(s)"); var methodName = System.Reflection.MethodBase.GetCurrentMethod().Name; var filename = FileHelper.GetOutputFile("benchmark_ValueMapperPredictionEngineMultiThread.txt", methodName); df.ToCsv(filename); } }
public void TestValueMapperPredictionEngine() { var name = FileHelper.GetTestFile("bc-lr.zip"); /*using (*/ var env = EnvHelper.NewTestEnvironment(); { using (var engine = new ValueMapperPredictionEngineFloat(env, name)) { var feat = new float[] { 5, 1, 1, 1, 2, 1, 3, 1, 1 }; for (int i = 0; i < 1000; ++i) { feat[0] = i; var res = engine.Predict(feat); Assert.IsFalse(float.IsNaN(res)); Assert.IsFalse(float.IsInfinity(res)); } } } }
public void Dispose() { engine.Dispose(); engine = null; }