Обучение
Схема обучения
Use advance techniques in canvas apps to perform custom updates and optimization - Training
Use advance techniques in canvas apps to perform custom updates and optimization
Этот браузер больше не поддерживается.
Выполните обновление до Microsoft Edge, чтобы воспользоваться новейшими функциями, обновлениями для системы безопасности и технической поддержкой.
Важно!
LUIS будет прекращена 1 октября 2025 г. и с 1 апреля 2023 г. вы не сможете создать новые ресурсы LUIS. Мы рекомендуем перенести приложения LUIS в понимание общения, чтобы воспользоваться продолжением поддержки продуктов и многоязычными возможностями.
Схема приложения "Распознавание речи" (LUIS) содержит намерения и сущности, относящиеся к вашей предметной области. Намерения классифицируют высказывания пользователя, а сущности извлекают информацию из высказываний пользователя. Намерения и сущности относятся к вашей предметной области. Намерения классифицируют речевые фрагменты пользователей.
Приложение LUIS обучается и работает наиболее эффективно при итеративной разработке. Вот типичный цикл итераций:
Приложение LUIS фокусируется на определенной предметной области. Например, у вас может быть приложение для путешествий, которое обрабатывает резервирование билетов, рейсов, отелей и автомобилей аренды. Другое приложение может предоставлять содержимое, связанное с тренировками, отслеживать результаты упражнений и ставить цели. Определение предметной области поможет найти слова или фразы, относящиеся к именно к этой теме.
Совет
Для многих сценариев LUIS предлагает готовые предметные области. Проверьте, можете ли вы использовать готовую предметную область в качестве отправной точки для своего приложения.
Подумайте о намерениях, важных для задачи приложения.
Рассмотрим пример приложения для путешествий с функциями по бронированию авиабилетов и проверки погоды в пункте назначения пользователя. Для этих действий можно определить два намерения: BookFlight и GetWeather.
В более сложном приложении с более широким набором функций у вас может быть больше намерений и вы должны определять их тщательно, чтобы намерения не были слишком конкретными. Например, вам может потребоваться различить намерения BookFlight и BookHotel, а BookInternationalFlight и BookDomesticFlight могут оказаться слишком похожими.
Примечание
Рекомендуется использовать только столько намерений, сколько необходимо для выполнения функций приложения. Если вы определите слишком много намерений, службе LUIS будет сложнее правильно классифицировать высказывания. Если вы определите слишком мало намерений, они могут быть настолько общими, что будут частично совпадать.
Если вам не нужно определять общее намерение пользователя, добавьте к намерению None
все примеры пользовательских высказываний. Если вашему приложению требуется больше намерений, вы можете создать их позже.
Для начала старайтесь не создавать слишком много речевых фрагментов для каждого намерения. Определив намерения, создайте для каждого из них 15–30 примеров речевых фрагментов. Каждый речевой фрагмент должен отличаться от ранее предоставленных высказываний. Включайте различное количество слов, меняйте выбор лексики, времена глаголов и знаки препинания.
Дополнительные сведения см. в разделе Как составить правильные высказывания для приложений LUIS.
В примерах высказываний укажите сущности, которые нужно извлечь. Чтобы забронировать авиабилет, вам нужна такая информация, как пункт назначения, дата, авиакомпания, категория билетов и класс полета. Создайте сущности для этих типов данных, а затем отметьте сущности в примерах высказываний. Сущности важны для реализации намерения.
При определении сущностей для использования в приложении помните, что существуют разные типы сущностей для фиксации отношений между типами объектов. Дополнительную информацию о различных типах объектов см. в статье Сущности в LUIS.
Совет
LUIS предлагает готовые сущности для распространенных пользовательских сценариев. Рассмотрите возможность использования готовых сущностей в качестве отправной точки для разработки вашего приложения.
Намерение — это желаемый результат всего высказывания, в то время как сущности — это фрагменты данных, извлеченные из высказывания. Обычно намерения связаны с действиями, которые должно выполнить клиентское приложение. Сущности — это информация, необходимая для выполнения этого действия. С точки зрения программирования намерение инициирует вызов метода, и сущности будут использоваться в качестве параметров для этого вызова метода.
Это высказывание должно иметь намерение и может иметь следующие сущности:
"Купите билет на авиарейс Сиэтл–Каир"
Это высказывание имеет единственное намерение:
Это высказывание может иметь несколько сущностей:
Во многих случаях, особенно при работе с естественным диалогом, пользователи предоставляют высказывание, которое может содержать более одной функции или намерения. В этой ситуации, как правило, нужно понять, какие выходные данные могут быть представлены и намерениями, и сущностями. Это представление должно быть сопоставимо с действиями вашего клиентского приложения, и его не нужно ограничивать намерениями.
Связь намерений и сущностей — это представление о том, что в выходных данных приложения действия (под которыми обычно понимаются намерения) могут фиксироваться еще и как сущности и сопоставляться с конкретными действиями. Отрицание,например, обычно использует намерение и сущность для полного извлечения. Рассмотрим следующие два речевых фрагмента, которые похожи с точки зрения выбора слов, но дают разные результаты:
Вместо двух отдельных намерений следует создать одно намерение с помощью сущности машинного обучения FlightAction. Сущность машинного обучения должна извлекать детали действия для запросов планирования и отмены, а также для исходного или конечного расположения.
Эту сущность FlightAction можно структурировать с помощью следующей сущности машинного обучения верхнего уровня и вложенных сущностей:
Чтобы облегчить извлечение, добавьте признаки к вложенным сущностям. Признаки нужно выбирать с учетом словаря, который вы ожидаете встретить в речевых фрагментах пользователя, и значений, которые вы хотите вернуть в ответе с прогнозом.
Прежде чем приступить к созданию схемы приложения, необходимо определить, где и для чего вы планируете использовать это приложение. Чем более тщательным и точным будет планирование, тем лучше будет ваше приложение.
Добавьте 10–15 высказываний перед обучением и публикацией. Это позволит оценить влияние на точность прогнозирования. Добавление одного высказывания может не оказать существенного влияния на оценку.
LUIS относится к домену языковой модели. Он не предназначен для работы в качестве общей платформы обучения естественного языка.
Каждый цикл разработки должен находиться в новой версии, клонированной из существующей.
Слишком ранняя публикация приложения без надлежащего планирования может привести к следующим проблемам:
Отслеживайте точность прогнозирования с помощью набора тестов пакета.
Создайте отдельный набор речевых фрагментов, которые не используются в качествепримеров речевых фрагментов или речевых фрагментов конечной точки. Продолжайте улучшать приложение для своего набора тестов. Адаптируйте набор тестов, так чтобы он отражал настоящие высказывания пользователей. Используйте набор тестов для оценки каждой итерации или версии приложения.
Укажите несколько примеров (но не каждое слово или фразу) в списке фраз. LUIS обобщает указанные примеры и учитывает контекст.
Обучение
Схема обучения
Use advance techniques in canvas apps to perform custom updates and optimization - Training
Use advance techniques in canvas apps to perform custom updates and optimization
Документация
Что такое намерения LUIS - Azure AI services
Сведения о намерениях и их использовании в LUIS
Использование намерений в LUIS - Azure AI services
Узнайте, как использовать намерения с LUIS.
Шаблоны и функции - Azure AI services
Используйте эту статью, чтобы узнать о шаблонах и функциях в LUIS