From fc96c36dc0ff550db777fff05fb5386e30aad28c Mon Sep 17 00:00:00 2001 From: Wenbo Cao <104199@smsassist.com> Date: Thu, 31 Aug 2023 20:42:04 -0500 Subject: [PATCH] Add confidence threshold --- .../Providers/IntentClassifier.cs | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/Plugins/BotSharp.Plugin.RoutingSpeeder/Providers/IntentClassifier.cs b/src/Plugins/BotSharp.Plugin.RoutingSpeeder/Providers/IntentClassifier.cs index 382b3a98..af6a892f 100644 --- a/src/Plugins/BotSharp.Plugin.RoutingSpeeder/Providers/IntentClassifier.cs +++ b/src/Plugins/BotSharp.Plugin.RoutingSpeeder/Providers/IntentClassifier.cs @@ -210,19 +210,23 @@ public class IntentClassifier return processedText; } - public string Predict(NDArray vector) + public string Predict(NDArray vector, float confidenceScore = 0.9f) { if (!_isModelReady) { InitClassifer(); } - var prob = _model.predict(vector); + var prob = _model.predict(vector).numpy(); + + if (prob[0] < confidenceScore) + { + return string.Empty; + } + var probLabel = tf.arg_max(prob, -1).numpy(); - // var prediction = _settings.LabelMappingDict.First(x => x.Value == probLabel[0]).Key; var prediction = GetLabels()[probLabel[0]]; - // var prediction = GetLabels().Where((x, i) => i == probLabel[0]).First(); return prediction; }