public static void TestPrediction(MLContext mLContext) { while (true) { Console.WriteLine("Enter review or type quit"); var text = Console.ReadLine(); if (text.ToLower().Equals("quit")) { break; } AnalyzedData analyzedData = new AnalyzedData { content = text }; ITransformer trainedModel; using (var stream = new FileStream(generatedModelLoc, FileMode.Open, FileAccess.Read, FileShare.Read)) { trainedModel = mLContext.Model.Load(stream); } var PredictionFunction = trainedModel.MakePredictionFunction <AnalyzedData, PredictedData>(mLContext); var result = PredictionFunction.Predict(analyzedData); Console.WriteLine("====================================================================================================="); Console.WriteLine($"Text: {analyzedData.content} | Toxic ?: { Convert.ToBoolean(result.Toxicity)} "); Console.WriteLine($"Probability: {result.Probability}"); Console.WriteLine($"Score: {result.Score}"); } }
public Term(long keyId, AnalyzedData tokenizedString, int index) { KeyId = keyId; TokenizedString = tokenizedString; Index = index; Vector = tokenizedString.Embeddings[index]; }
public Term(object key, AnalyzedData tokenizedString, int index) { Key = key; KeyHash = key.ToHash(); TokenizedString = tokenizedString; Index = index; Vector = tokenizedString.Embeddings[index]; }
/// <summary> /// First load then analyze data /// </summary> public void Analyze() { _rawData.Clear(); AnalyzedData.Clear(); LoadData(); foreach (var dayData in _rawData) { var analyzed = new AnalyzedData { Date = dayData.Key, Average = dayData.Value.Average(entry => entry.Value), ListenersPeak = dayData.Value.Max(entry => entry.Value), TimeWithoutListeners = dayData.Value.Count(entry => entry.Value == 0) / (double)dayData.Value.Count }; AnalyzedData.Add(analyzed); } NotifyOfPropertyChange(nameof(AverageListenersPlotMaxScale)); NotifyOfPropertyChange(nameof(TimeWithoutListenersPlotMaxScale)); NotifyOfPropertyChange(nameof(ListenersPeakPlotMaxScale)); NotifyOfPropertyChange(nameof(AverageListeners)); NotifyOfPropertyChange(nameof(TimeWithoutListeners)); NotifyOfPropertyChange(nameof(ListenersPeak)); AverageListenersData.Clear(); TimeWithoutListenersData.Clear(); ListenersPeakData.Clear(); AverageListenersData.AddRange(AnalyzedData.Select(entry => new DataPoint(DateTimeAxis.ToDouble(entry.Date), entry.Average))); TimeWithoutListenersData.AddRange(AnalyzedData.Select(entry => new DataPoint(DateTimeAxis.ToDouble(entry.Date), entry.TimeWithoutListeners * 100))); ListenersPeakData.AddRange(AnalyzedData.Select(entry => new DataPoint(DateTimeAxis.ToDouble(entry.Date), entry.ListenersPeak))); IsAnalyzed = true; }
public void Clear() { clear(); m_AnalyzedData = null; }
public void Init(AnalyzedData data) { m_AnalyzedData = data; init(); }