Тестирование модели классификатора NLU
Оценка понимания намерений
Оценка дает нам совокупные показатели практической ценности созданной модели NLU ассистента. Это необходимо, чтобы уже на этапе разработки контролировать "пробелы" которые появляются в классификации намерений пользователей.
Методы ручной оценки
Намерения как некоторый корпус обучающих данных создается и заполняется на вкладке Тренировочные данные. После заполнения намерений и их значений здесь же возможна проверка и оценка их точности в ручном режиме.
Нужно ввести фразу от имени пользователя и получим оценку в виде вероятности совпадения с одним из намерений нашего корпуса данных. В примере ниже мы видим, что введенная фраза с вероятностью 100% ассоциируется с намерением Приветствие. Если намерение отсутствует, через это поле можно выполнить создание нового и присвоить ему текущую фразу.
То же самое, но с более развернутой информацией для анализа можно выполнить с вкладки API. Это можно сделать удаленно с помощью HTTPS запроса (форма которого генерируется динамически) при вводе проверяемой фразы. Здесь же отображается весь спектр совпадений с существующими в базе намерениями. Все они проранжированы в порядке уменьшения вероятности совпадения. Таким образом можно понять причины неправильной ассоциации, которые приводят к ошибкам в диалогах.
Недостаток данного метода оценки эффективности модели NLU заключается в том, что при достаточно большой базе намерений этот метод довольно трудоемкий и не даст ощутимых результатов. Он подходит для разбора исключительных единичных случаев требующих анализа при явном обнаружении ошибок.
Методы автоматизированной оценки
Как правило, при разработке моделей машинного обучения рекомендуется оставлять часть корпуса данных на которых планируется обучать модель в целях оценки качества работы этой модели. То же самое рекомендуется делать и в отношении моделей NLU:
- Преимущества создания тестового набора для оценок не всегда превышают стоимость создания менее производительной модели из-за заимствования части обучающих данных.
- Тестовый набор данных нужно постоянно совершенствовать и поддерживать, поскольку характер данных меняется, когда ассистент работает в среде реальных пользователей с различными способами выражения своих целей и намерений.
Работать с отдельным набором данных в режиме тестирования мы можем на вкладке Оценка.
Загрузка набора тестов выполняется в виде отдельного файла.
Создание подобного файла рекомендуется выполнять с помощью редактора Chatito.
Сам проект редактора является OpenSource и доступен в репозитории GitHub. Chatito помогает создавать наборы данных для обучения и проверки моделей ассистентов с помощью простого языка разметки DSL. Спецификация языка разметки DSL доступна здесь.