Карта с неправильным намерением LUIS - PullRequest
0 голосов
/ 01 октября 2018

Я столкнулся с проблемой, из-за которой слова, которые не совпадают ни с какими намерениями, будут предполагать, что они принадлежат цели с наиболее помеченными высказываниями.

Пример: if

  • НамерениеA состоит из высказываний, таких как животные
  • Намерение B состоит из высказываний, таких как фрукты
  • Intent C состоит из высказываний, таких как насекомые
  • Intent D состоит из высказываний, таких как имена людей

Желаемый : Если случайное слово (слова) не вписывается ни в одно из намерений Луиса, оно не будет вписываться ни в одно намерение Луиса.Пример желаемого: если было введено такое слово, как «эмоции» или «одежда», оно будет соответствовать намерению «Нет».

Фактическое : Когда пользователь вводит случайное слово (слова),оно совпадает с намерением Луиса с наибольшим числом помеченных высказываний.Если было введено такое слово, как «эмоции», оно будет совпадать как намерение «А», так как намерение А состоит из наибольшего числа помеченных высказываний.

Пожалуйста, сообщите по этому вопросу.

enter image description here

Ответы [ 2 ]

0 голосов
/ 31 октября 2018

Установите порог оценки, ниже которого ваше приложение не будет отображать никакого ответа пользователю (или вместо этого может отображаться сообщение «Извините, я вас не получил»).Это позволяет избежать реакции пользователей на что-то, в чем LUIS не уверен, о чем обычно заботятся и многие «не по теме» входные данные.

Я бы предложил установить порог между 0,3 и 0,7, в зависимости от серьезностиВаш предмет.Это не вариант конфигурации в LUIS, скорее в вашем коде вы просто делаете:

if(result.score >=0.5) { 
    // show response based on intent.
} else { 
    // ask user to rephrase
}

В отдельном примечании, похоже, что ваши намерения очень несбалансированы.Вы хотите попробовать и иметь примерно одинаковое количество высказываний для каждого намерения, в идеале от 10 до 20.

0 голосов
/ 03 октября 2018

Таким образом, без более подробной информации о том, как вы построили свою языковую модель, скорее всего, основная проблема заключается в том, что у вас либо недостаточно высказываний в каждом намерении, которые имеют достаточно вариаций, отображающих различные способы высказывания различных высказываний.для этого конкретного намерения.

И под изменением я подразумеваю разные длины произнесения (количество слов), разный порядок слов, времена, грамматическую правильность и т. д. ( документы здесь )

И помните, что у каждого намерения должно быть минимум 15 высказываний .

Кроме того, как указано в передовых практиках, вы также обязательно включили примеры высказываний в свой Noneнамерение также? Лучшие практики утверждают, что у вас должно быть 1 высказывание в None на каждые 10 высказываний в других частях вашего приложения.

В конечном итоге: создайте свое приложение так, чтобы ваши намерения были достаточно отчетливыми на разных примерахвысказывания, встроенные в намерение, так что при тестировании других высказываний LUIS с большей вероятностью сможет соответствовать вашим разным намерениям, а если вы введете высказывание, которое не следует ни шаблону, ни контексту ваших отличных намерений, LUISбудет знать, как обнаружить высказывание о вашем запасном намерении «Нет».

Если вам нужна более конкретная помощь, пожалуйста, опубликуйте JSON вашей языковой модели.

...