private static void PredictIssue() { ITransformer loadedModel; using (var stream = new FileStream(_modelPath, FileMode.Open, FileAccess.Read, FileShare.Read)) { loadedModel = _mlContext.Model.Load(stream); } GitHubIssue singleIssue = new GitHubIssue() { Title = "Entity Framework crashes", Description = "When connecting to the database, EF is crashing" }; _predEngine = loadedModel.CreatePredictionEngine <GitHubIssue, IssuePrediction>(_mlContext); var prediction = _predEngine.Predict(singleIssue); Console.WriteLine($"=============== Single Prediction - Result: {prediction.Area} ==============="); }
public static IEstimator <ITransformer> BuildAndTrainModel(IDataView trainingDataView, IEstimator <ITransformer> pipeline) { var trainingPipeline = pipeline .Append(_mlContext.MulticlassClassification.Trainers.StochasticDualCoordinateAscent(DefaultColumnNames.Label, DefaultColumnNames.Features)) .Append(_mlContext.Transforms.Conversion.MapKeyToValue("PredictedLabel")); // Train the model we built _trainedModel = trainingPipeline.Fit(trainingDataView); #if DEBUG _predEngine = _trainedModel.CreatePredictionEngine <GitHubIssue, IssuePrediction>(_mlContext); //Create a Github issue for testing GitHubIssue issue = new GitHubIssue() { Title = "WebSockets communication is slow in my machine", Description = "The WebSockets communication used under the covers by SignalR looks like is going slow in my development machine.." }; var prediction = _predEngine.Predict(issue); Console.WriteLine($"=============== Single Prediction just-trained-model - Result: {prediction.Area} ==============="); #endif return(trainingPipeline); }