Улучшение приложения LUIS

Важно!

Поддержка LUIS будет прекращена 1 октября 2025 г., а начиная с 1 апреля 2023 г. вы не сможете создавать новые ресурсы LUIS. Мы рекомендуем перенести приложения LUIS в распознавание устной речи , чтобы воспользоваться преимуществами постоянной поддержки продуктов и многоязычных возможностей.

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

Активное обучение

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

Регистрация запросов пользователей для включения активного обучения

Чтобы включить активное обучение, вы должны регистрировать запросы пользователей. Это достигается путем вызова запроса конечной точки с параметром и значением строки запроса log=true.

Примечание

Чтобы отключить активное обучение, не заносите в журнал запросы пользователя. Вы можете изменить параметры запроса, задав log=false в запросе конечной точки или опустив параметр log, поскольку для конечной точки версии 3 по умолчанию используется значение false.

Используйте портал LUIS для создания правильного запроса конечной точки.

  1. Войдите на портал LUIS и выберите Подписка и Ресурс для разработки, чтобы просмотреть приложения, назначенные этому ресурсу для разработки.
  2. Откройте приложение, выбрав его имя на странице Мои приложения.
  3. Перейдите в раздел Управление и выберитеРесурсы Azure.
  4. Выберите Изменить параметры запроса для назначенного ресурса прогнозирования.

Снимок экрана: ссылка на изменение параметров запроса.

  1. Активируйте параметр Сохранить журналы, а затем сохраните изменения, нажав кнопку Готово.

Снимок экрана: использование портала LUIS для сохранения журналов, необходимых для активного обучения.

Это действие изменяет URL-адрес примера, добавляя параметр строки запроса log=true. Скопируйте и используйте URL-адрес измененного примера запроса при выполнении прогнозирующих запросов к конечной точке среды выполнения.

Корректировка прогнозов для согласованности речевых фрагментов

Для каждого речевого фрагмента отображается предложенное намерение в столбце Predicted Intent (Прогнозируемое намерение), а также предлагаемые сущности в пунктирных ограничивающих прямоугольниках.

Снимок экрана: страница для просмотра речевых фрагментов конечной точки, о которых luis не уверены

Если вы согласны с прогнозируемым намерением и сущностями, установите флажок рядом с речевым фрагментом. Если флажок неактивен, это значит, что подтверждать нечего. Если вы не согласны с предложенным намерением, выберите правильное из раскрывающегося списка прогнозируемых намерений. Если вы не согласны с предложенными сущностями, добавьте к ним метки. Завершив работу, установите флажок рядом с речевым фрагментом, чтобы подтвердить отмеченное. Выберите save utterance (Сохранить речевой фрагмент), чтобы переместить его из списка проверки и добавить к нему соответствующее намерение.

Если вы не уверены, что следует удалить речевой фрагмент, переместите его в намерение Нет или создайте новое намерение, например Разное, и переместите речевой фрагмент в него.

Работа с предварительно созданными сущностями и необязательным текстом

Предположим, у вас есть приложение отдела кадров, которое обрабатывает запросы о сотрудниках организации. Оно может поддерживать текущие и будущие даты в тексте речевого фрагмента, в котором используются s, 's и ?.

Если вы создаете намерение OrganizationChart, то можете рассмотреть следующий пример речевых фрагментов:

Блокировка с намерением Примеры высказываний с предварительно созданными сущностями и необязательным текстом
OrgChart-Manager "Кто был руководителем Джилл Джонс к 3 марта?"
OrgChart-Manager "Кто является руководителем Джилл Джонс сейчас?"
OrgChart-Manager "Кто будет руководителем Джилл Джонс через месяц?"
OrgChart-Manager "Кто будет руководителем Джилл Джонс к 3 марта?"

В каждом из этих примеров используются:

  • Время глагола: "был", "является", "будет"
  • Дата: "3 марта", "сейчас", "через месяц"

Эти данные нужны службе LUIS для получения точных прогнозов. Обратите внимание, что в последних двух примерах в таблице используется практически один и тот же текст. Отличаются в нем только предлоги (через и к).

С помощью шаблонов в следующем примере шаблонов речевых фрагментов можно использовать необязательную информацию:

Блокировка с намерением Примеры высказываний с предварительно созданными сущностями и необязательным текстом
OrgChart-Manager Кто был руководителем {EmployeeListEntity} [[к]{datetimeV2}?]
OrgChart-Manager Кто является руководителем {EmployeeListEntity} [[к]{datetimeV2}?]

С помощью необязательных квадратных скобок "[ ]" в шаблон речевого фрагмента можно добавлять необязательный текст. При необходимости для включения сущностей или текста можно использовать двухуровневое вложение: "[ [ ] ]".

Внимание!

Помните: сначала находятся сущности, а затем сравнивается шаблон.

Дальнейшие действия

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