Амазонка Alexa , Nuance в Mix и Facebook, Wit.ai все используют подобную систему , чтобы указать , как преобразовать текстовую команду в умысел - то есть что - то компьютер поймет. Я не уверен, что это за «официальное» название, но я называю это «признание намерений». В основном путь от «пожалуйста , установите мои огни на 50% яркости» в lights.setBrightness(0.50)
.
Способ, которым они указаны, заключается в том, что разработчик должен предоставить список «типовых высказываний», которые связаны с намерением и, необязательно, помечены местоположениями «сущностей» (в основном параметров). Вот пример из Wit.ai:
Мой вопрос: как сделать эти системы? Поскольку все они очень похожи , я полагаю , есть некоторая плодотворная работа , что все они используют. Кто-нибудь знает, что это?
Интересно Houndify использует другую систему , которая больше похожа регулярных выражений: ["please"] . ("activate" | "enable" | "switch on" | "turn on") . [("the" | "my")] . ("lights" | "lighting") . ["please"]
. Я предполагаю, что это интегрировано в поиск луча в их системе распознавания голоса, тогда как у Alexa, Wit.ai и Mix, кажется, есть отдельные системы Speech-> Text и Text-> Intent.
Изменить: Я нашел отправную точку - механизм для человека - робот Interaction через Неофициальные голосовые команды . Для сравнения высказываний используется метод скрытого семантического анализа. Я собираюсь прочитать об этом. По крайней мере , он дал мне отправную точку в сети цитируемости.
Edit 2: LSA, по существу , сравнивая слова , используемые (мешок слов) в каждом абзаце текста. Я не вижу , как это может работать очень хорошо для этого случая , как он полностью теряет порядок слов. Хотя , может быть , порядок слов не имеет большого значения для этих видов команд.
Редактировать 3: Скрытая тема Марковские модели выглядят так, как будто они могут быть интересными.