способ и система для предоставления речевого интерфейса
Классы МПК: | G10L15/26 речь для текстовых систем |
Автор(ы): | АДЛЕР Марк (US), КИШШ Имре (FI), ПОЛИФРОНИ Джозеф (US), ВУ Тао (US) |
Патентообладатель(и): | Нокиа Корпорейшн (FI) |
Приоритеты: |
подача заявки:
2009-09-10 публикация патента:
27.09.2013 |
Изобретение относится к пользовательскому интерфейсу на основе речевых команд. Техническим результатом является обеспечение более быстрого доступа к информации и решению задач, а также эффективная обработка предпочтений пользователя и контекста. Классифицирующий речевой интерфейс пользовательского терминала может принять запрос, произвести его анализ для идентификации атрибута и обработать запрос для выбора первого зависящего от домена речевого интерфейса из множества зависящих от домена речевых интерфейсов на основе указанного атрибута, при этом каждый зависящий от домена речевой интерфейс содержит информацию для обработки запросов различных типов. Кроме того, классифицирующий речевой интерфейс может подавать команду первому зависящему от домена речевому интерфейсу обработать указанный запрос и выдавать в речевой форме ответ первого зависящего от домена речевого интерфейса на указанный запрос. 6 н. и 21 з.п. ф-лы, 8 ил.
Формула изобретения
1. Способ предоставления классифицирующего речевого интерфейса, включающий: прием запроса;
анализ запроса для идентификации атрибута;
обработку запроса для выбора первого зависящего от домена речевого интерфейса из множества зависящих от домена речевых интерфейсов на основе указанного атрибута, при этом каждый из зависящих от домена речевых интерфейсов содержит информацию для обработки запросов различных типов,
подачу команды первому зависящему от домена речевому интерфейсу обработать указанный запрос и
выдачу в речевой форме ответа первого зависящего от домена речевого интерфейса на указанный запрос.
2. Способ по п.1, дополнительно включающий прием речевого входного сигнала для активации классификатора.
3. Способ по п.2, в котором речевой входной сигнал соответствует идентификатору, который назначен классификатору.
4. Способ по п.1, в котором первый зависящий от домена речевой интерфейс выбирают посредством идентификации ключевых слов в запросе.
5. Способ по п.1, в котором первый зависящий от домена речевой интерфейс выбирают посредством обработки естественного языка запроса.
6. Способ по п.5, в котором обработка естественного языка включает использование доменных знаний для обработки запроса.
7. Способ по п.5, в котором обработка естественного языка включает использование грамматики для обработки запроса.
8. Способ по п.5, в котором обработка естественного языка включает использование статистических моделей для обработки запроса.
9. Способ по п.5, в котором обработка естественного языка включает использование пользовательских данных для обработки запроса.
10. Способ по п.1, в котором первый зависящий от домена речевой интерфейс выбирают путем передачи запроса в первый зависящий от домена речевой интерфейс для интерпретации этого запроса, чтобы подтвердить, что выбор первого зависящего от домена речевого интерфейса является подходящим.
11. Способ по п.1, в котором первый зависящий от домена речевой интерфейс выбирают на основе того, что каждый из множества зависящих от домена речевых интерфейсов интерпретирует запрос с генерацией балла ответа, и выбирают наивысший балл ответа.
12. Способ по п.1, дополнительно включающий идентификацию контекстной информации, соответствующей запросу, при этом первый зависящий от домена речевой интерфейс выбирают на основе указанной контекстной информации.
13. Способ по п.12, в котором контекстная информация включает предпочтения пользователя.
14. Машиночитаемый носитель, хранящий выполняемые компьютером инструкции, которые при их исполнении процессором заставляют его выполнять способ по любому из пп.1-13.
15. Устройство мобильной связи, содержащее:
средство для приема запроса;
средство для анализа запроса для идентификации атрибута;
средство для обработки указанного запроса для выбора первого зависящего от домена речевого интерфейса из множества зависящих от домена речевых интерфейсов на основе указанного атрибута, при этом каждый из зависящих от домена речевых интерфейсов содержит информацию для обработки запросов различных типов, и
средство для подачи команды первому зависящему от домена речевому интерфейсу обработать указанный запрос,
причем указанное устройство сконфигурировано для выдачи в речевой форме ответа первого зависящего от домена речевого интерфейса на указанный запрос.
16. Способ предоставления классифицирующего речевого интерфейса, включающий:
прием атрибута;
применение функции подсчета баллов для генерации балла полезности для каждого из множества шаблонов ответов на запрос на основе указанного атрибута;
выбор по меньшей мере одного из множества шаблонов ответов на запрос на основе указанных баллов полезности и
вывод в звуковой форме ответов на запрос, сгенерированных по меньшей мере из одного шаблона ответов на запрос.
17. Способ по п.16, в котором указанный атрибут представляет собой один из множества атрибутов.
18. Способ по п.17, дополнительно включающий ранжирование множества атрибутов на основе предпочтений пользователя для назначения соответствующего веса каждому из множества атрибутов.
19. Способ по п.18, в котором указанным атрибутам присваивают веса на основе контекстной информации.
20. Способ по п.16, дополнительно включающий предложение пользователю ввести следующий запрос.
21. Способ по п.16, дополнительно включающий идентификацию внутридоменного действия, соответствующего первому баллу полезности.
22. Способ по п.21, дополнительно включающий выполнение внутридоменного действия.
23. Способ по п.21, дополнительно включающий идентификацию междоменного действия, ассоциированного с указанным внутридоменным действием.
24. Способ по п.23, дополнительно включающий передачу обработки в зависящий от домена речевой интерфейс для выполнения междоменного действия.
25. Способ по п.24, дополнительно включающий прием результата междоменного действия из зависящего от домена речевого интерфейса.
26. Машиночитаемый носитель, хранящий выполняемые компьютером инструкции, которые при их исполнении процессором заставляют его выполнять способ по любому из пп.16-25.
27. Устройство мобильной связи, содержащее:
средство для приема атрибута;
средство для применения функции подсчета баллов для генерации балла полезности для каждого из множества шаблонов ответов на запрос на основе указанного атрибута;
средство для выбора по меньшей мере одного из множества шаблонов ответов на запрос на основе указанных баллов полезности и
средство для вывода в звуковой форме ответов на запрос, сгенерированных по меньшей мере из одного шаблона ответов на запрос.
Описание изобретения к патенту
ОБЛАСТЬ ТЕХНИКИ
[0001] Примеры осуществления настоящего изобретения в целом относятся к речевым запросам. Более конкретно, варианты осуществления настоящего изобретения относятся к пользовательскому интерфейсу на основе речевых команд.
УРОВЕНЬ ТЕХНИКИ
[0002] В мобильные устройства, такие как мобильные телефоны, внедряют все более и более сложные функции. Современные мобильные устройства обеспечивают доступ к разнообразной информации через сетевые интерфейсы и дисплеи графического пользовательского интерфейса, но обычно для выбора необходимого приложения пользователь ограничивается использованием клавиатуры для навигации по иерархическому меню.
[0003] В дополнение к графическим пользовательским интерфейсам были разработаны активируемые голосом пользовательские интерфейсы. Диктовка коротких сообщений (SMS), диктовка электронной почты, приложения с набором телефонных номеров по имени, диалоговые ежедневники и приложения для воспроизведения музыки могут в интерактивном режиме направлять пользователя в процессе выполнения задачи. Обычные речевые диалоговые системы задают пользователю ряд фиксированных вопросов в заданном порядке для сужения области возможных ответов. Например, чтобы найти ресторан, система может предложить пользователю уточнить свои предпочтения относительно кухни, близости ресторана, диапазона цен и т.д. перед предоставлением каких-либо ответов. Такой тип взаимодействия не способен предоставить требуемую информацию пользователям, у которых нет четких предпочтений или которые могут пожелать изучить весь диапазон возможностей.
[0004] Также были разработаны стандартные алгоритмы, которые моделируют диалог в виде Марковского процесса принятия решений и оптимизируют модель посредством усиленного обучения. Однако эти алгоритмы основаны на сложных и дорогостоящих обучающих данных, полученных в результате большого количества взаимодействий человек-машина или моделирования таких диалогов.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
[0005] Далее представлено упрощенное изложение нескольких вариантов осуществления настоящего изобретения для обеспечения их основного понимания. Данное изложение сущности изобретения не представляет собой расширенного обзора и не предназначено для идентификации ключевых или критических элементов или для определения объема формулы изобретения. Нижеследующее изложение сущности изобретения представляет просто некоторые концепции и примеры осуществления настоящего изобретения в упрощенном виде и предваряет более подробное описание, приведенное далее.
[0006] Примеры вариантов осуществления настоящего изобретения относятся к устройству, способу и системе для предоставления классифицирующего речевого интерфейса. Более конкретно, способы, устройство и системы согласно примерам осуществления настоящего изобретения предусматривают прием запроса, анализ запроса для идентификации атрибута, обработку запроса для выбора первого зависящего от домена речевого интерфейса из множества зависящих от домена речевых интерфейсов на основе указанного атрибута, при этом каждый из зависящих от домена речевых интерфейсов содержит специфическую информацию для обработки запросов различных типов, и подачу команды первому зависящему от домена речевому интерфейсу обработать указанный запрос.
[0007] Дополнительные примеры вариантов осуществления настоящего изобретения относятся к устройству, способу и системам для предоставления зависящего от домена речевого интерфейса. Более конкретно, способы, устройство и системы согласно некоторым вариантам осуществления настоящего изобретения предусматривают прием атрибута, применение функции подсчета баллов для генерации оценки полезности для каждого из множества шаблонов ответов на запрос на основе указанного атрибута, выбор по меньшей мере одного из множества шаблонов ответов на запрос на основе указанных баллов полезности и вывод в звуковой форме ответа на запрос, сгенерированного по меньшей мере из одного шаблона ответов на запрос.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0008] Более полное понимание настоящего изобретения и обеспечиваемых им преимуществ можно получить из последующего описания со ссылками на сопроводительные чертежи, на которых одинаковыми позициями обозначены одинаковые элементы, при этом:
[0009] на фиг.1 показан пользовательский терминал согласно вариантам осуществления настоящего изобретения;
[0010] на фиг.2 показана архитектура ряда многоуровневых программных приложений согласно примерам осуществления настоящего изобретения;
[0011] на фиг.3 показана база знаний согласно примерам осуществления настоящего изобретения;
[0012] на фиг.4 показан домен согласно вариантам осуществления настоящего изобретения;
[0013] на фиг.5 показаны классифицирующий речевой интерфейс и зависящий от домена речевой интерфейс согласно вариантам осуществления настоящего изобретения;
[0014] на фиг.6 проиллюстрирован способ сбора и индексации метаданных для генерации базы знаний согласно вариантам осуществления настоящего изобретения;
[0015] на фиг.7 проиллюстрирован способ обработки пользовательского запроса, чтобы выбрать зависящий от домена речевой интерфейс для обработки запроса согласно вариантам осуществления настоящего изобретения;
[0016] на фиг.8 проиллюстрирован способ обработки запроса в идентифицированном зависящем от домена речевом интерфейсе согласно вариантам осуществления настоящего изобретения.
ПОДРОБНОЕ ОПИСАНИЕ
[0017] В последующем описании различных вариантов осуществления настоящего изобретения приводятся ссылки на сопроводительные чертежи, которые являются частью этого описания и на которых иллюстрируются различные варианты осуществления настоящего изобретения, которые могут быть реализованы на практике. Понятно, что могут быть использованы другие варианты осуществления настоящего изобретения и могут быть осуществлены структурные и функциональные модификации без выхода за пределы объема настоящего изобретения.
[0018] На фиг.1 показан пользовательский терминал 102 согласно примерам осуществления настоящего изобретения. Пользовательский терминал 102 может иметь звуковой речевой интерфейс для ответа на речевые команды от пользователя. Пользователь может вступить в диалог с речевым интерфейсом, чтобы заставить пользовательский терминал 102 выполнить задачу. Например, речевой интерфейс может принять запрос от пользователя, обработать этот запрос для идентификации одного или более соответствующих ответов, соответствующих этому запросу, и в звуковой форме представить динамический набор из одного или более ответов или выполнить действие. Таким образом, вместо того, чтобы в речевой форме представить фиксированный набор запросов в заданном порядке, речевой интерфейс может обработать запрос для идентификации динамических ответов на запрос для их звукового представления пользователю.
[0019] В примерах осуществления настоящего изобретения пользовательский терминал 102 может быть устройством мобильной связи, мобильным телефоном или мобильным компьютером, как показано, но он может также быть цифровым видеомагнитофоном (DVR, digital video recorder), телевизионной приставкой (STB, set-top box), компьютерным сервером, компьютером, жестким диском, устройством с Интернет-браузером, игровым устройством, аудио/видеопроигрывателем, цифровым фотоаппаратом/цифровой видеокамерой, телевизором, радиовещательным приемником, устройством позиционирования, проводным или беспроводным устройством связи и/или любой комбинацией перечисленных устройств. Пользовательский терминал 102 может быть автономным блоком, таким как на фиг.1, или может быть встроен в другое устройство. Например, пользовательский терминал 102 может быть встроен в автомобиль для предоставления речевого интерфейса для взаимодействия с пользователем, который управляет автомобилем. Пользовательский терминал 102 может быть встроен, например, в приборную панель автомобиля или может быть соединен с автомобилем с помощью проводного или беспроводного соединения.
[0020] В представленном на чертеже примере пользовательский терминал 102 может включать дисплей 104, процессор 106, приемопередатчик 108, пользовательский интерфейс 110, звуковой приемопередатчик 112, память 114 и базу 116 метаданных. Пользовательский интерфейс 110 может включать клавиатуру, сенсорный экран, речевой интерфейс, четыре клавиши управления курсором, джойстик, управляющую перчатку, мышь, шариковый манипулятор, сенсорный экран или другое подходящее устройство с возможностью приема входных данных от пользователя для управления пользовательским терминалом 102.
[0021] Приемопередатчик 108 может позволить пользовательскому терминалу 102 осуществлять связь по проводному или беспроводному каналу. Звуковой приемопередатчик 112 может содержать включать громкоговоритель для вывода звуковых сигналов пользователю и может содержать микрофон для приема звукового сигнала от пользователя.
[0022] Выполняемые компьютером инструкции и данные, используемые процессором 106, а также другие компоненты в пользовательском терминале 102 могут храниться в памяти 114 для выполнения любого из шагов способа и описанных ниже функций. Память 114 может быть реализована посредством любой комбинации модулей постоянной памяти или оперативной памяти, опционально включая как энергозависимую, так и энергонезависимую память. Также некоторые или все выполняемые компьютером инструкции для пользовательского терминала 102 могут быть реализованы в аппаратных средствах или встроенном программном обеспечении (не показано). Например, пользовательский терминал 102 может включать один или более модулей, которые содержат аппаратные средства, встроенное программное обеспечение, программы, выполняемые процессором 106, и/или любую их комбинацию.
[0023] В одном из вариантов осуществления настоящего изобретения процессор 106 может выполнять ряд многоуровневых программных приложений для предоставления речевого интерфейса в пользовательском терминале 102. Указанный набор многоуровневых приложений может включать приложение классифицирующего речевого интерфейса и одно или более зависящих от домена приложений речевого интерфейса. Для создания классифицирующего речевого интерфейса процессор 106 может выполнять приложение классифицирующего речевого интерфейса, а для предоставления соответствующих зависящих от домена речевых интерфейсов процессор может выполнять одно или более приложений зависящих от домена речевых интерфейсов. Набор многоуровневых приложений программного обеспечения может обрабатывать запрос, принятый звуковым приемопередатчиком 112 пользовательского терминала 102 так, как будет описано далее.
[0024] На фиг.2 проиллюстрирована архитектура многоуровневых приложений программного обеспечения в соответствии с примерами вариантов осуществления настоящего изобретения. Первоначально классифицирующий речевой интерфейс 202 может принять от пользователя входной речевой сигнал (например, запрос). Классифицирующий речевой интерфейс 202 может предоставлять речевой интерфейс высшего уровня, который используется для выбора одного из множества зависящих от домена речевых интерфейсов 204 для обработки запроса. Каждый из зависящих от домена речевых интерфейсов 204 может иметь специфические знания для выполнения детального анализа запросов конкретного типа и проведения внутридоменного диалога с пользователем, тогда как классифицирующий речевой интерфейс 202 может обеспечить менее детальный анализ и может ограничить обработку запроса определением, какой из зависящих от домена речевых интерфейсов 204 следует активировать для выполнения детального анализа запроса.
[0025] Для выбора зависящего от домена речевого интерфейса 204 классифицирующий речевой интерфейс 202 может провести анализ запроса для идентификации атрибутов запроса. Атрибуты могут быть ключевыми словами или группами ключевых слов, которые могут быть интерпретированы классифицирующим речевым интерфейсом 202 как команды. Классифицирующий речевой интерфейс 202 может также принять во внимание контекстную информацию, включенную в контекстный реестр 208, и веса 210 атрибутов, включенных в запрос, при назначении запроса конкретному зависящему от домена речевому интерфейсу 204. Контекстная информация может относиться к информации, обеспечивающей контекст запросу. Контекстная информация может включать текущее время и дату, предпочтения пользователя, местоположение или другую информацию, как будет описано далее. Веса 210 атрибутов могут представлять собой информацию, описывающую степень важности атрибута. Веса 210 атрибутов могут основываться на предпочтениях пользователя или другой информации, как будет описано ниже. В одном из вариантов осуществления настоящего изобретения классифицирующий речевой интерфейс 202 может взаимодействовать с базой 116 метаданных для получения контекстной информации и веса атрибута. Классифицирующий речевой интерфейс 202 может затем выбрать один из зависящих от домена речевых интерфейсов 204 для дальнейшей обработки запроса.
[0026] После того, как классифицирующий речевой интерфейс 202 выбран, он может передать команду 206 в выбранный зависящий от домена речевой интерфейс 204. Команда может включать идентификатор выбранного зависящего от домена речевого интерфейса 204, атрибут и запрос. В иллюстрируемом варианте осуществления настоящего изобретения классифицирующий речевой интерфейс 202 может передать команду 206 в зависящий от домена речевой интерфейс 204_1. На фиг.2 штриховые стрелки указывают, что классифицирующий речевой интерфейс 202 может также передать команды в зависящие от домена речевые интерфейсы 204_2-204_N, если они были выбраны.
[0027] Выбранный зависящий от домена речевой интерфейс 204 может принять и обработать указанную команду. Выбранный зависящий от домена речевой интерфейс 204, так же как и другие зависящие от домена речевые интерфейсы, может быть ассоциирован с соответствующим набором доменов. Набор доменов может представлять собой информацию специализированного словаря или синтаксис, который уникален для соответствующих зависящих от домена речевых интерфейсов 204. Соответствующие зависящие от домена речевые интерфейсы 204 могут использовать доменную информацию для обработки запроса пользователя. Домены могут быть ассоциированы с набором из одного или более шаблонов ответов на запрос. Шаблоны ответов на запрос могут быть ассоциированы с атрибутами, и зависящие от домена речевые интерфейсы 204 могут обработать атрибуты, принятые в команде 206, для выбора подходящего шаблона для ответа на этот запрос. Выбор шаблона ответов на запрос подробно описан далее.
[0028] Шаблоны ответов на запрос могут включать шаблон, предназначенный для такого ответа на запрос, который в речевой форме выдается пользователю в ответ на его запрос. Зависящий от домена речевой интерфейс 204 для ответа на запрос пользователя может заполнить шаблон ответов на запрос с генерацией ответа на запрос на основе информации и может подать команду пользовательскому терминалу 102 выдать ответ на запрос в речевой форме. Например, шаблон ответов на запрос может быть следующим: «У вас сегодня [Введите количество встреч]». Если пользователь спрашивает: «Сколько у меня сегодня встреч?», зависящий от домена речевой интерфейс 204 может заполнить шаблон ответов на запрос с генерацией ответа на запрос и подать команду пользовательскому терминалу 102 выдать ответ на запрос пользователя в речевой форме. Таким образом, классифицирующий речевой интерфейс 202 может первоначально обработать исходный запрос пользователя для получения из него атрибутов, идентифицировать подходящий зависящий от домена речевой интерфейс 204 на основе этих атрибутов и отправить запрос в подходящий зависящий от домена речевой интерфейс 204 для дальнейшей обработки.
[0029] Например, пользовательский терминал 102 может включать два зависящих от домена речевых интерфейса: зависящий от домена речевой интерфейс «календарь» и зависящий от домена речевой интерфейс «места». Классифицирующий речевой интерфейс 202 может обработать звуковой запрос, принятый от пользователя (например, «Какие встречи у меня сегодня») и может определить, что запрос заключается в том, чтобы узнать, какие встречи запланированы у пользователя. Классифицирующий речевой интерфейс 202 может обработать запрос и определить, что для проведения дальнейшего диалога с пользователем и обработки указанного запроса лучше всего подходит зависящий от домена речевой интерфейс «календарь». Затем классифицирующий речевой интерфейс 202 перенаправляет команду в зависящий от домена речевой интерфейс «календарь» для дальнейшей обработки этого запроса на основе имеющихся там специальных знаний. Затем зависящий от домена речевой интерфейс «календарь» генерирует ответ на запрос (например, «У вас сегодня две встречи»).
[0030] В еще одном примере классифицирующий речевой интерфейс 202 может направить запрос пользователя в зависящий от домена речевой интерфейс 204 «музыка». Исходный запрос пользователя может сопровождаться несколькими сменами направления диалога между пользователем и зависящим от домена речевым интерфейсом 204, включая фильтрацию и суммирование. Например, если пользователь запрашивает блюзовую музыку, зависящий от домена речевой интерфейс 204 может осуществить фильтрацию музыкальных произведений пользователя для поиска музыкальных дорожек в стиле блюз. Даже если пользователь не знаком с параметрами доменных данных, зависящий от домена речевой интерфейс 204 может суммировать эти признаки для пользователя в терминах небольшого количества признаков, выбранных или потому, что они являются наиболее полезными для отсеивания данных, или потому, что они указывают полезный или необычный признак данных. Например, зависящий от домена речевой интерфейс 204 может обработать и профильтровать музыкальные произведения пользователя и выдать в речевой форме: «В вашем списке недавно прослушанных произведений содержатся десять из этих блюзовых дорожек». Зависящий от домена речевой интерфейс 204 может также отвечать за осуществление действий внутри домена, например, проигрывание конкретных песен, создание нового списка произведений для воспроизведения и т.д., но не ограничиваясь указанными примерами. Дополнительные детали классификации запроса в классифицирующем речевом интерфейсе 202 и обработка запроса зависящим от домена речевым интерфейсом 204 рассмотрены далее.
[0031] Каждый из зависящих от домена речевых интерфейсов 204 может быть ассоциирован с набором из одного или более доменов. Домен может относиться к набору признаков (например, поднаборы люди, места и медиаресурсы в пользовательском терминале). Домены могут быть организованы как база знаний, имеющая иерархическую структуру.
[0032] На фиг.3 показана база знаний согласно вариантам осуществления настоящего изобретения. В этом варианте база 302 знаний может иметь иерархическую структуру с одним или более уровнями доменов. Например, первый уровень 304 может включать домен 308_1 «люди», домен 308_2 «места» и домен 308_3 «медиаресурсы». Каждый из доменов на первом уровне 304 может быть ассоциирован с различными зависящими от домена речевыми интерфейсами 204. Например, домен 308_1 «люди» может быть ассоциирован с зависящим от домена речевым интерфейсом 204 «люди», домен 308_2 «места» может быть ассоциирован с зависящим от домена речевым интерфейсом 204 «места», а домен 308_3 «медиаресурсы» может быть ассоциирован с зависящим от домена речевым интерфейсом 204 «медиаресурсы».
[0033] Первый уровень 304 может включать дополнительные подуровни доменов, такие как домены на втором уровне 306 иерархии в базе знаний. Например, домен 308_1 «люди» может включать домен 308_4 «контакты» и домен 308_5 «электронная почта» на втором уровне 306, а также домен «служба передачи коротких сообщений» (SMS, Short Message Service), домен «служба передачи мультимедиа-сообщений» (MMS, Multimedia Messaging Service), домен «календарь» (не показаны). Домен 308_2 «места» может включать домен 308_6 «позиционирования GPS» (глобальная система определения местоположения) и домен 308_7 «карты» на втором уровне 306, а также домен «карты», домен «места, представляющие интерес», домен «деловой справочник» и домен «навигация» (не показаны). Домен 308_3 «медиаресурсы» может включать домен 308_8 «изображения» и домен 308_9 «видео» на втором уровне 306, а также домен «музыка» и домен «подкасты» (не показаны).
[0034] Зависящий от домена речевой интерфейс 204 «люди» может обрабатывать запросы, соответствующие домену 308_1 «люди», домену 308_4 «контакты», домену 308_5 «электронная почта», а также любым другим доменам более низкого уровня (не показаны). Аналогично, зависящий от домена речевой интерфейс «места» может обрабатывать запросы, соответствующие домену 308_2 «места», домену 308_6 GPS, домену 308_7 «карты», а также любым другим доменам более низкого уровня (не показаны). Иерархия базы 302 знаний дана только для примера, и может использоваться иерархия, имеющая больше или меньше уровней, а также уровни, имеющие больше, меньше доменов или другие домены, чем показанные на фиг.3. Обработка зависящими от домена речевыми интерфейсами 204 подробно описана далее.
[0035] На фиг.4 показан домен 308 согласно вариантам осуществления настоящего изобретения. Домен 308 может включать один или более объектов 404. В показанном примере домен 308 может включать объекты 404_1-404_3. В общем случае объект 404 может быть экземпляром категории класса. Например, каждый объект в пределах домена «электронная почта» может представлять собой конкретное электронное письмо. Объекты 404 могут включать одну или более пар 406 атрибут-значение, одно или более внутридоменных действий 408 и шаблон 412 ответов на запрос, и опционально может включать одно или более междоменных действий 410. Примерами объектов 404 могут быть запись о контакте, запись в календаре, помеченное место на карте, снимок, сделанный пользователем, и т.д. Примером пар 406 атрибут-значение, описывающих объект 404, представляющий собой запись о контакте, может быть: «Имя: Джон, Фамилия: Смит», где «Имя» является атрибутом, а «Джон» является значением. Примером пар 406 атрибут-значение, описывающих объект 404, представляющий собой запись в календаре, может быть «Название: обзорное собрание», «Дата: 29 июня 2008 г.», «Время: 13:00-14:00 восточного поясного времени». Примеры действий в домене 408, описывающих объект 404, представляющий собой запись о контакте, могут включать: Действие 1) вызов контакта; Действие 2) передача сообщения SMS контакту; Действие 3) передача сообщения MMS контакту; Действие 4) прием сообщения SMS от контакта, Действие 4) прием сообщения MMS от контакта. Кроме того, могут быть определены другие действия в домене, связанные с данной записью. Примерами междоменных действий 410 могут быть: Действие 1) вход в контакт с доменом: навигация для попадания в домен «места»; Действие 2) домен «мультимедиа»: передача видеоклипа по электронной почте, для обращения к домену «люди»; Действие 3) показ географического положения места, где был сделан снимок, в домене «места». Кроме того, могут использоваться другие междоменные действия. Шаблоны 412 ответов на запрос могут включать шаблон для такого ответа на запрос, который в речевой форме представляют пользователю в ответ на запрос пользователя. Каждый классифицирующий речевой интерфейс 202 и зависящие от домена речевые интерфейсы 204 могут быть ассоциированы с конкретным словарем, который обеспечивает соответствующие знания для идентификации конкретного объекта 404 в домене 308.
[0036] На фиг.5 показан классифицирующий речевой интерфейс 202 и зависящий от домена речевой интерфейс 204, имеющие конкретный словарь согласно вариантам осуществления настоящего изобретения. Конкретный словарь может быть метаданными, доменными индексами и шаблонами ответов на запрос. Классифицирующий речевой интерфейс 202 может включать указатель 502_1 метаданных, указывающий на его метаданные в базе 116 метаданных, и указатель 504_1 доменных индексов, указывающий на его доменные индексы в памяти 114. Зависящий от домена речевой интерфейс 204 может включать указатель 502_2 метаданных, указывающий на его метаданные в базе 116 метаданных, и указатель 504_2 доменных индексов, указывающий на его доменные индексы в памяти 114. Кроме того, зависящий от домена речевой интерфейс 204 может включать один или более указателей 506 шаблонов ответов на запрос, указывающих на его шаблоны 412 ответов на запрос в памяти 114.
[0037] Например, зависящий от домена речевой интерфейс 204 «люди» может быть ассоциирован с метаданными, доменными индексами и шаблонами ответов на запрос для обработки запросов пользователя, соответствующих информации о людях, тогда как зависящий от домена речевой интерфейс 204 «места» может быть ассоциирован с метаданными, доменными индексами и шаблонами ответов на запрос для обработки запросов пользователя, которые соответствуют информации о местах. Метаданные могут относиться к атрибутам, описывающим объект. Например, метаданные для музыкальной дорожки могут включать название дорожки, название альбома, исполнителя, композитора и т.д. Доменные индексы могут быть атрибутами, которые относятся к специфическому домену. Для контактной информации доменными индексами могут быть имя и телефонный номер. Для электронной почты примеры доменных индексов включают имя, тему и временную метку. Вышеуказанные доменные индексы не представляют собой исчерпывающий список, и каждый доменный индекс не обязательно является уникальным для специфического домена. Шаблоны 412 ответов на запрос могут быть набором шаблонов для ответов на запрос, которые могут быть заполнены информацией для ответа на запрос пользователя, при этом пользовательский терминал 102 может выдать в речевой форме ответ на запрос на основе заполненного шаблона запроса.
[0038] Классифицирующий речевой интерфейс 202 и зависящие от домена речевые интерфейсы 204 могут быть выполнены с возможностью конфигурирования данных. Метаданные, доменные индексы и шаблоны ответов на запрос могут обновляться для расширения или исправления словарей и/или языковых моделей. Словарь может быть списком слов и их произношения в такой форме, в которой могут быть обработаны классифицирующим речевым интерфейсом 202 и зависящими от домена речевыми интерфейсами 204. Например, если в списке контактов появляется новая запись «Джон Смит», классифицирующий речевой интерфейс 202 словаря и зависящие от домена речевые интерфейсы 204 соответствующего зависящего от домена речевого интерфейса 204 могут быть расширены словами «Джон» и «Смит», если эти слова еще не были частью словаря. Языковая модель может описывать порядок, в котором слова следуют за друг другом в конкретном языке, и может обеспечить такое средство для классифицирующего речевого интерфейса 202 и зависящих от домена речевых интерфейсов 204, которое позволяет различать более вероятные и менее вероятные последовательности слов для улучшения точности распознавания слов. Например, за последовательностью слов «после того, как я съел свой», с большей вероятностью будут следовать слова «обед», «завтрак» или «сэндвич», в то время как слова «шляпа», «ноутбук» или «фондовая биржа» менее вероятны. Языковая модель может «захватывать» информацию о вероятности последовательности слов в рамках статистической модели, которая автоматически обучается на больших объемах текста. Кроме того, языковые модели могут быть приспособлены к стилю речи пользователя и типам предложений, которые зависящие от домена речевые интерфейсы 204 ожидают принять в данном домене.
[0039] Зависящий от домена речевой интерфейс 204 может строиться по меньшей мере полуавтоматически с использованием структурированного основанного на объектах представления в базе 302 знаний для выполнения внутридоменных действий 408 и междоменных действий 410, а также многократного использования шаблонов 412 ответов на запрос, как подробно описано далее. Соответствующие словари классифицирующего речевого интерфейса 202 и зависящих от домена речевых интерфейсов 204 могут быть собраны и индексированы для обеспечения базы 302 знаний, как рассмотрено ниже.
[0040] На фиг.6 проиллюстрирован способ сбора и индексации метаданных для генерации базы знаний согласно вариантам осуществления настоящего изобретения.
[0041] В блоке 602 пользовательский терминал 102 может хранить метаданные в базе 116 метаданных в поддерживаемых доменах 308 базы 302 знаний. База 116 метаданных может хранить метаданные от всех поддерживаемых доменов 402. Пользовательский терминал 102 может собирать, индексировать для поиска и хранить метаданные в базе 116 метаданных. Классифицирующий речевой интерфейс 202 и зависящий от домена речевой интерфейс 204 могут иметь доступ к базе 116 метаданных. Классифицирующий речевой интерфейс 202 и зависящий от домена речевой интерфейс 204 могут обращаться к базе 116 медиаданных для персонализации, обеспечивая согласованную звуковую презентацию, независимо от используемого речевого интерфейса. В пределах каждого домена релевантными могут быть различные метаданные. Пользовательский терминал 102 может обрабатывать предпочтения пользователя, либо заданные посредством явных действий со стороны пользователя, либо изученные в течение долгого времени, для суммирования этих данных в пределах предпочтительных для пользователя категорий. Например, один пользователь может предпочитать объединять музыку по альбомам, тогда как другой может покупать отдельные песни и объединять музыку по исполнителям.
[0042] В блоке 604 пользовательский терминал 102 может генерировать объекты для представления записей в доменах. Объект может быть задан одной или более парами 406 атрибут-значение, описывающими объект 308, одним или более внутридоменными действиями 408, заданными в домене 308, одним или более междоменными действиями 410, которые разрешены между доменами, и/или любой комбинацией перечисленного. Пользовательский терминал 102 может индексировать и хранить пары 406 атрибут-значение объектов 404 для каждого из доменов 308 в базе 116 метаданных.
[0043] В блоке 606 пользовательский терминал 102 может генерировать контекстный реестр. Контекстный реестр может содержать контекстную информацию для идентификации определенных текущих событий и пользовательские предпочтения для предоставления контекста к запросу пользователя. Контекстная информация может включать предпочтения пользователя, обнаруженные события, изменения в поведении пользователя при взаимодействии и/или любую комбинацию перечисленного. Контекстная информация в контекстном реестре может обновляться пользователем вручную (например, путем задания предпочтений), пользовательским терминалом 102 на основе автоматического обнаружения событий (например, прошло время начала встречи, высокая физическая активность, обнаруженная акселерометрами, предполагает, что пользователь находится в движении, и т.д.) или автоматически путем обнаружения изменений в поведении пользователя при взаимодействии (например, более длительные задержки при ответе, необходимость повторных исправлений ошибок во время диалога и т.д.).
[0044] Контекстный реестр 208 может использоваться для персонализации речевых интерфейсов для пользователя. Классифицирующий речевой интерфейс 202 и зависящий от домена речевой интерфейс 204 могут представлять пользователю диалог на основе техники суммирования. Можно использовать статистические методы для обнаружения, какие категории метаданных лучше всего подходят для группировки данных в логические поднаборы, которые могут помочь пользователю сосредоточиться на правильном наборе данных. Например, значение свойства, которое делит большую часть данных на небольшое количество кластеров, или значение свойства, которое является необычным, могут быть двумя методами, которые обеспечивают полезное суммирование. Например, «Большая часть вашей новой электронной почты пришла из вашего департамента и три письма помечены как срочные» В зависимости от предпочтений пользователя один и тот же зависящий от домена речевой интерфейс 204 может вести себя по-разному для различных пользователей.
[0045] В одном из вариантов осуществления настоящего изобретения классифицирующий речевой интерфейс 202 и зависящий от домена речевой интерфейс 204 могут получать контекстную информацию из основанного на объектах представления и могут хранить контекстную информацию в контекстном реестре 208. Контекстная информация может быть получена от различных датчиков и программных «демонов», которые постоянно контролируют состояние пользовательского терминала 102. Примеры контекстной информации могут включать позиционирование с помощью GPS, профиль (тишина, вне помещения, совещание) или активность пользователя (вождение автомобиля, ходьба). Хранение контекстной информации в контекстном реестре 208 позволяет различным зависящим от домена речевым интерфейсам 204 модифицировать звуковой выход, представляемый пользователю, на основе желательного для пользователя формата презентации или предпочтений по представлению данных. Например, если встреча назначена на данное время и система обнаруживает очень малое перемещение пользовательского терминала 102, включающего устройство для обнаружения перемещения, такое как встроенный акселерометр, но не ограничиваясь этим, зависящий от домена речевой интерфейс 204 может автоматически модифицировать предпочтение по представлению выходных данных и выдавать их в графическом виде, а не в речевом. Зависящий от домена речевой интерфейс 204 может генерировать выходной объект, который представляет информацию для пользователя. Форма вывода может быть определена алгоритмически путем изучения предпочтений пользователя и контекстной информации для определения предпочтительного представления из набора многомодальных опций. Затем последовательность операций на фиг.6 может завершиться.
[0046] Классифицирующий речевой интерфейс 202 может использовать одну или более пар 406 атрибут-значение, описывающих объект 404, одно или более внутридоменнных действий 408, заданных в том домене 308, к которому принадлежит объект 404, одно или более междоменных действий 410, которые разрешены между доменами для данного объекта 404, и контекстную информацию для классификации речевых запросов, принятых от пользователя.
[0047] На фиг.7 проиллюстрирован способ обработки запроса пользователя для выбора зависящего от домена речевого интерфейса 204, чтобы обработать запрос согласно вариантам осуществления настоящего изобретения.
[0048] В блоке 702 пользовательский терминал 102 может принять входной речевой сигнал от пользователя для активации классифицирующего речевого интерфейса 202. В одном из вариантов осуществления настоящего изобретения пользователь может назначить классифицирующему речевому интерфейсу 202 идентификатор (например, пользователь может назначить в качестве идентификатора «N95»). Для речевой активации классифицирующего речевого интерфейса 202 пользователь может произнести этот идентификатор. Идентификатор может быть словом или фразой, назначенной пользователем классифицирующему речевому интерфейсу 202. Если пользователь не назначил идентификатор классифицирующему речевому интерфейсу 202, классифицирующий речевой интерфейс 202 также может иметь идентификатор по умолчанию. Идентификатор позволяет пользователю запустить классифицирующий речевой интерфейс 202 одной фразой и не требует, чтобы классифицирующий речевой интерфейс 202 предлагал пользователю сделать запрос, но если это необходимо, классифицирующий речевой интерфейс 202 может предложить пользователю сделать запрос. Также классифицирующий речевой интерфейс 202 может быть активирован пользователем путем нажатия кнопки или путем другого ввода данных. Дополнительно классифицирующий речевой интерфейс 202 может непрерывно осуществлять управление и обработку звуковых данных, чтобы определить, был ли принят запрос от пользователя. Если голосом активируются только определенные приложения, предпочтительно, чтобы классифицирующий речевой интерфейс 202 мог также сообщить пользователю, что запрашиваемая характеристика активации голосом недоступна.
[0049] Классифицирующий речевой интерфейс 202 может активировать зависящие от домена речевые интерфейсы 204, чтобы разрешить пользователю использовать зависящий от домена речевой интерфейс 204 без необходимости вспоминать идентификатор каждого зависящего от домена речевого интерфейса 204 (например, пользователь может не говорить «электронная почта» или «календарь» для соответствующих приложений). Не требуется, чтобы пользователь понимал, как реализован или сконфигурирован классифицирующий речевой интерфейс 202. Кроме того, пользователь может произнести идентификатор, который он выбирает для классифицирующего речевого интерфейса 202, и может давать простые команды или запросы для получения желательных результатов.
[0050] В блоке 704 классифицирующий речевой интерфейс 202 пользовательского терминала 102 может принять запрос от пользователя через звуковой приемопередатчик 112. Классифицирующий речевой интерфейс 202 может обработать запрос для идентификации, какой зависящий от домена речевой интерфейс 204 (например, зависящий от домена речевой интерфейс «электронная почта», зависящий от домена речевой интерфейс «календарь», зависящий от домена речевой интерфейс «музыкальный проигрыватель», зависящий от домена речевой интерфейс «погода», зависящий от домена речевой интерфейс «карты», зависящий от домена речевой интерфейс «трафик» и т.д.) лучше всего подходит для обработки запроса. Классифицирующий речевой интерфейс 202 может использовать правила или технику машинного обучения, чтобы идентифицировать метки в пользовательском запросе для отправки запроса в соответствующий зависящий от домена речевой интерфейс 204. Например, путем собирания набора типичных запросов, которые охватывают все соответствующие домены, определенные слова и фразы могут быть более близко ассоциированы с одним доменом, чем с другим. Эти характерные слова и фразы служат метками для этих доменов. Это соответствие может быть определено либо автоматически путем изучения статистических корреляций (например, посредством машинного обучения), либо на основе инженерных знаний, чтобы определить, какие метки лучше всего представляют каждый домен. Классифицирующий речевой интерфейс 202 может делегировать обработку запроса зависящему от домена речевому интерфейсу 204, имеющему более подходящие доменные знания в терминах словаря и синтаксиса команд, для предоставления значимых ответов на запрос таким способом, который кажется естественным в рамках звукового диалога между пользователем, классифицирующим речевым интерфейсом 202 и одним или более зависящими от домена речевыми интерфейсами 204.
[0051] В блоке 706 классифицирующий речевой интерфейс 202 может провести анализ запроса для идентификации атрибута. Классифицирующий речевой интерфейс 202 может провести анализ запроса для идентификации информации (например, слов в запросе). В зависимости от домена, для определения домена может быть достаточно наличия одной метки или множества меток. В других случаях для указания признаков и значений, связанных с доменом, можно использовать более детализированную грамматику, чтобы выяснить, включает ли запрос слова в правильной последовательности.
[0052] В блоке 708 классифицирующий речевой интерфейс 202 может идентифицировать зависящий от домена речевой интерфейс 204 на основе указанного атрибута. Для идентификации зависящего от домена речевого интерфейса 204 на основе указанного атрибута классифицирующий речевой интерфейс 202 может использовать один или более из следующих подходов: подход, связанный с поиском ключевых слов, подход, связанный с пониманием естественного языка, гибридный подход и подход, связанный с начислением баллов, чтобы сравнить различные зависящие от домена речевые интерфейсы 204.
[0053] В подходе, связанном с поиском ключевых слов, классифицирующий речевой интерфейс 202 может обработать запрос пользователя для идентификации одного или более ключевых слов. Например, каждый из зависящих от домена речевых интерфейсов 204 может быть ассоциирован с уникальным набором слов. Если пользователь произнес одно или более из этих слов, классифицирующий речевой интерфейс 202 может определить, что пользователь вызывает ассоциированный зависящий от домена речевой интерфейс 204. Например, в запросе «Есть ли новая электронная почта?» классифицирующий речевой интерфейс 202 может идентифицировать в качестве ключевого слова термин «электронная почта» для вызова зависящего от домена речевого интерфейса «электронная почта». Индикаторами этого же домена могут быть также и другие ключевые слова. В запросе «Прочитай мне последнее сообщение от Джо» классифицирующий речевой интерфейс 202 может идентифицировать в качестве ключевого слова термин «сообщение» для вызова зависящего от домена речевого интерфейса «электронная почта».
[0054] В подходе, использующем понимание естественного языка, для разработки более полной интерпретации запроса классифицирующий речевой интерфейс 202 может применять знания о домене, грамматику, статистические модели и собственные данные пользователя (например, список имен контактов). Например, на основе запроса классифицирующий речевой интерфейс 202 может генерировать «фрейм» (например, компьютерную модель) намерений пользователя. Классифицирующий речевой интерфейс 202 может заполнить этот фрейм возможными подробностями, такими как местоположение, конкретные имена из списка контактов, время, дата и требуемое действие пользователя. Затем фрейм может использоваться для определения соответствующего зависящего от домена речевого интерфейса 204. Фрейм может быть объектом, который включает атрибуты и значения для выявления намерений пользователя. Фрейм может быть отфильтрованным представлением того, что было понято из предоставленного речевого входа. Например, для идентификации домена «календарь» классифицирующий речевой интерфейс 202 может идентифицировать грамматику в выражении <глагол, относящийся к календарю> <заполнитель> <существительное, относящееся к календарю> <заполнитель> во входных речевых данных (например, «Перенесите мою следующую встречу с Джо на следующую неделю»). В примерах, где используются статистические модели, термин «сообщение» может относиться или к сообщениям SMS, или к электронной почте, но для конкретного пользователя, который никогда не посылает сообщении SMS, статистическая модель может сделать выбор в сторону домена «электронная почта». В примере обработки пользовательских данных последние могут включать предпочтения пользователя (например, в домене «ресторан» сравнительную важность пользователь придает качеству пищи, обслуживанию, цене и т.д.), а также историю взаимоотношений (например, в домене «электронная почта» для определения, какие сообщения являются важными, требующими некоторых действий и т.д.).
[0055] В гибридном подходе классифицирующий речевой интерфейс 202 может сделать первоначальный выбор одного из зависящих от домена речевых интерфейсов 204 для дальнейшей обработки запроса, а классифицирующий речевой интерфейс 202 может подать команду идентифицированному зависящему от домена речевому интерфейсу 204 повторно интерпретировать запрос пользователя с учетом более подробного знания о домене для подтверждения его выбора. Например, для первоначального выбора зависящего от домена речевого интерфейса 204 классифицирующий речевой интерфейс 202 может использовать подход, связанный с поиском ключевых слов, или подход, связанный с пониманием естественного языка, а затем может передать команду выбранному зависящему от домена речевому интерфейсу 204 для обработки запроса. Зависящий от домена речевой интерфейс 204 может подтвердить правильность выбора, сделанного классифицирующим речевым интерфейсом 202, или может решить, что выбор не является подходящим, и может потребовать, чтобы классифицирующий речевой интерфейс 202 выбрал другой зависящий от домена речевой интерфейс 204 для обработки запроса. Например, при использовании поиска слов некоторые термины могут быть неоднозначными, и более детализированный анализ запроса может показать, что был сделан неправильный выбор. Термин «сообщение» может означать сообщение SMS или сообщение электронной почты. Если классифицирующий речевой интерфейс 202 предполагает, что речь идет о сообщении SMS, а пользователь выдает адрес назначения в формате электронной почты, то зависящий от домена речевой интерфейс 204 «SMS» может обнаружить несоответствие и запросить, чтобы классифицирующий речевой интерфейс 202 выбрал для обработки запроса другой зависящий от домена речевой интерфейс 204. Кроме того, зависящий от домена речевой интерфейс 204 «SMS» может предложить подходящий домен.
[0056] В подходе, связанном с начислением баллов, классифицирующий речевой интерфейс 202 может подать команду всем зависящим от домена речевым интерфейсам 204 обработать запрос и может выбрать тот интерфейс, у которого интерпретация запроса наилучшая (например, наивысший балл по некоторой нормализованной шкале). Для некоторых доменов зависящие от домена речевые интерфейсы 204 со специальной грамматикой и словарями могут быть неспособны обработать запрос и могут возвратить низкий балл. Этот подход может также быть полезным при идентификации языка запроса. Высказывание может быть представлено, например, на английском и китайском языке, при этом только подходящий зависящий от домена речевой интерфейс 204 сможет понять запрос. Этот подход может использоваться с удаленным пользовательским терминалом 102, связанным по сети с сервером, который выполняет обработку в рамках соответствующего зависящего от домена речевого интерфейса 204, или может быть полностью выполнен в пользовательском терминале 102. Классифицирующий речевой интерфейс 202 может идентифицировать соответствующий зависящий от домена речевой интерфейс 204 на основе идентифицирующих атрибутов и их соответствующих значений в запросе с использованием одного из вышеуказанных подходов.
[0057] В блоке 710 классифицирующий речевой интерфейс 202 пользовательского терминала 102 может подать команду идентифицированному зависящему от домена речевому интерфейсу 204 обработать запрос. В одном из вариантов осуществления настоящего изобретения классифицирующий речевой интерфейс 202 может отправить команду, заставляющую идентифицированный зависящий от домена речевой интерфейс 204 обработать запрос. Команда может включать одну или более пар 406 атрибут-значение, выявленных в результате анализа информации, входящей в запрос. Например, пользователь может спросить: «Какие встречи у меня сегодня?» Классифицирующий речевой интерфейс 202 может проанализировать запрос для идентификации атрибута периода времени и может включить значение «сегодня» для указания периода времени, представляющего интерес для пользователя. Классифицирующий речевой интерфейс 202 может отправить пару атрибут-значение {период времени: сегодня} в команде в зависящий от домена речевой интерфейс 204. Затем последовательность операций, показанных на фиг.7, может завершиться.
[0058] При обработке запроса выбранный зависящий от домена речевой интерфейс 204 может использовать функцию подсчета баллов для генерации одного или более оптимальных ответов на каждом этапе диалога. Для подсчета баллов зависящий от домена речевой интерфейс 204 может обработать одну или более пар атрибут-значение, принятых в команде из классифицирующего речевого интерфейса 202. Зависящий от домена речевой интерфейс 204 также позволяет персонализировать обработку запроса на основе местоположения пользователя, контекста диалога, информационно-теоретической метрики, примененной к доменным данным, и информации о модели пользователя. Например, информация о местоположении может использоваться для настройки подходящей временной зоны при вводе календарных данных, а контекст диалога может использоваться для «запоминания» результатов более ранних шагов в диалоге (например, если пользователь уже спрашивал о встречах в понедельник, то время встречи без уточнения новой даты все еще будет относиться к понедельнику). Информационно-теоретическая метрика может относиться к статистическому анализу такого набора данных, который уже был сужен посредством диалога. Информационно-теоретическая метрика может позволить суммировать данные содержательным способом, а моделирование пользователя может использоваться для изучения и использования информации о предпочтениях пользователя, чтобы либо отфильтровать данные, либо упорядочить данные согласно предпочтениям пользователя. Например, если пользователь предпочитает узнавать о почте от участников его рабочей группы до личной почты, то это предпочтение пользователя может влиять на порядок представления информации. Зависящий от домена речевой интерфейс 204 может использовать информационно-теоретические метрики для определения лучшего ответа на запрос, чтобы помочь пользователю наиболее эффективно сузить выбор на основе контекста запроса.
[0059] Зависящий от домена речевой интерфейс 204 может обрабатывать каждый возможный ответ на запрос в качестве опции для ответа и может назначать численное значение каждой опции для ответа путем вычисления взвешенной функции подсчета баллов с использованием многомерной функции полезности (MAUT, Multy-Attribute Utility Theory). Теория MAUT обеспечивает прямой способ реализации использования упорядоченных предпочтений пользователя для подгонки информации под конкретного пользователя. Теория MAUT может использоваться для определения того, что итоговое предпочтение пользователя определяется взаимодействием множества отдельных факторов. Каждый зависящий от домена речевой интерфейс 204 может иметь набор из одной или более возможных опций для ответа, для которых имеются шаблоны 412 ответов на запрос с одними или большим количеством атрибутов, соответствующих конкретному домену 308. Например, зависящий от домена речевой интерфейс 204 «календарь» может быть ассоциирован с рядом указателей 506 на шаблоны ответов на запрос, указывающими на шаблоны 412 ответов на запрос домена 306_4 «карты», хранящиеся в памяти 114. Примером шаблона 412 ответов на запрос может быть фраза «У вас встреча в [Введите время] с [Введите участника встречи]», при этом зависящий от домена речевой интерфейс 204 заполняет текст в скобках соответствующей информацией с генерацией ответа на запрос пользователя. Каждый из шаблонов 412 ответов на запрос может включать один или более атрибутов. Примеры атрибутов включают период времени, имя, местоположение и т.д.
[0060] Зависящий от домена речевой интерфейс 204 может использовать теорию MAUT для определения веса, назначаемого каждому атрибуту, поскольку взаимодействие различных атрибутов в различных опциях для ответа может повлиять на то, какой шаблон ответов на запрос является оптимальным выбором для ответа на запрос. Веса атрибутов можно определить путем ранжирования атрибутов по важности, как подробно описано ниже. Зависящий от домена речевой интерфейс 204 может линейно комбинировать веса для вычисления баллов полезности для каждого шаблона ответов на запрос. По существу, зависящий от домена речевой интерфейс 204 может рассматривать возможный ответ на запрос в качестве проблемы оптимизации как для выбора контента, так и для представления информации, при этом оптимальный ответ на запрос может быть вычислен на каждом этапе диалога.
[0061] Ранжирование для конкретных атрибутов может быть обусловлено информацией, собранной во время взаимодействий пользователя с пользовательским терминалом 102, или может быть явно выяснено у пользователей. Ранжирование может быть преобразовано к весам w с использованием следующего уравнения (из теории MAUT): , где К - количество атрибутов в ранжировании. Веса из модели пользователя и скалярные величины, ассоциированные со значениями атрибута, комбинируют с использованием простой аддитивной функции, дающей полную полезность U для объекта h: . Атрибуты, которые имеют наивысший балл полезности в этой метрике, и являются теми, которые лучше всего согласуются с предпочтениями пользователя.
[0062] Веса для атрибутов могут быть основаны на предпочтениях пользователя. Объективные данные, которые отражают эти веса, могут быть взяты из полей базы данных или данных, сгенерированных потребителем, при этом атрибуты и ассоциированные значения получены из обзоров. В случаях, когда предпочтения может быть выведены или извлечены с использованием модели пользователя, зависящий от домена речевой интерфейс 204 может ранжировать атрибуты на основе таких предпочтений. Подсчет баллов на основе модели пользователя может продолжаться, как рассмотрено выше. Предпочтения пользователя могут быть основаны, например, на склонности пользователя к различным видам музыки, предпочтениях пользователя к более или менее многословной связи с зависящим от домена речевым интерфейсом 204, что может зависеть от степени знакомства пользователя с зависящим от домена речевым интерфейсом 204, или от других факторов. Веса могут быть получены через функцию теории MAUT, рассмотренную выше.
[0063] В других случаях для назначения весов атрибутам зависящий от домена речевой интерфейс 204 может использовать объективные критерии, основанные на контексте запроса. Например, зависящий от домена речевой интерфейс 204 может учитывать физическое расстояние в тех случаях, в которых местоположение представляет собой атрибут (то есть представляя информацию пользователю в зависимости от того, где он находится и чем занимается), или стоимость диалога в случаях, когда опции имеют разветвления в пределах зависящего от домена речевого интерфейса 204, например, предусматривая стирание хранящегося контекста. В качестве веса можно использовать физическое расстояние. Например, зависящий от домена речевой интерфейс 204 может умножать баллы для конкретного ресторана на 1/d, где d - расстояние от пользователя до этого ресторана. Это приведет к тому, что ресторан, который расположен дальше от пользователя, будет иметь меньший балл. В некоторых случаях конкретные ответы имеют стоимость в полном диалоге, например, при потере контекста, когда далее следует новая линия диалога. Если такой ответ дан, пользователю, чтобы возвратиться к желательному контексту, вероятно, придется повторно ввести все ранее указанные уточнения. В подобных случаях стоимость может быть связана с выбором конкретного ответа, который отражает количество атрибутов, которые можно забыть, и прежде, чем принять такой ответ, может быть вызван поддиалог подтверждения. Кроме того, новые атрибуты, обнаруженные посредством автоматической обработки сгенерированных потребителем медиаданных, могут быть легко добавлены к базе 116 метаданных с весами по умолчанию, которые можно модифицировать, когда пользователи взаимодействуют с зависящим от домена речевым интерфейсом 204 и используют новые атрибуты. Веса по умолчанию могут модифицироваться со временем по мере того, как собирается больше информации об изменениях в предпочтениях пользователя.
[0064] По существу, веса, назначенные атрибутам, могут быть персонализированы в терминах контекста запроса, предпочтений пользователя и собственных данных пользователя (например, музыкальных произведений). Такая персонализация позволяет речевым интерфейсам обрабатывать меняющийся контент данных (например, хранилище музыкальных произведений, ящик входящей электронной почты или изображения/видео) в соответствующих доменах 402.
[0065] На фиг.8 проиллюстрирован способ обработки запроса в идентифицированном зависящем от домена речевом интерфейсе 204 согласно вариантам осуществления настоящего изобретения.
[0066] В блоке 802 зависящий от домена речевой интерфейс 204 пользовательского терминала 102 может принять из классифицирующего речевого интерфейса 202 команду обработать входные речевые данные. Эта команда может включать одну или более пар 406 атрибут-значение. Например, пользователь может ввести речевые данные, представляющие собой запрос: «Сколько у меня сегодня встреч?», при этом классифицирующий речевой интерфейс 202 может проанализировать запрос с генерацией команды, включающей пару атрибут-значение «период времени: сегодня». Зависящий от домена речевой интерфейс 204 может принять пару атрибут-значение наряду с любыми другими парами атрибут-значение, которые введены в контекст ранее и которые еще можно использовать. Зависящий от домена речевой интерфейс 204 может также идентифицировать и обработать дополнительные связи атрибут-значение на основе дополнительных входных речевых данных, предоставленных пользователем.
[0067] В блоке 804 зависящий от домена речевой интерфейс 204 может ранжировать каждую пару атрибут-значение. Для ранжирования пар 406 атрибут-значение зависящий от домена речевой интерфейс 204 может извлечь контекстную информацию из контекстного реестра 208 базы 116 метаданных. Например, пользователь зависящего от домена речевого интерфейса 204 «ресторан» может иметь предпочтения по качеству пищи (например, высокое), обслуживанию (например, высокое), цене (например, невысокая), кухне (например, конкретный набор типов кухни), местоположению (например, конкретный ряд по соседству) и отделке интерьера (например, хорошая), причем в указанном порядке. Формула MAUT может возвратить веса 0,41 (качество пищи), 0,24 (обслуживание), 0,16 (цена), 0,10 (кухня), 0,06 (местоположение) и 0,03 (интерьер). Значения таким атрибутам, как качество пищи, можно назначить в виде скалярного представления (например, «превосходное» = 5; «очень хорошее» = 4 и т.д.). Веса, умноженные на скалярные величины для атрибутов и просуммированные по всем перечисленным атрибутам, составляют балл полезности для конкретного ответа. Ответ может содержать единственный ресторан, и в этом случае балл отражает полезность самого ресторана, или в нем может упоминаться группа ресторанов («Множество ресторанов в Бэк Бей предлагает превосходное качество пищи и высококачественное обслуживание»), в этом случае полезность ответа определяется атрибутами, значениями и специфическими весами.
[0068] Контекстная информация может быть, например, предпочтениями пользователя для каждой пары 406 атрибут-значение, входящей в команду и указывающей, что пользователь идентифицировал определенные атрибуты как более важные по сравнению с другими. Зависящий от домена речевой интерфейс 204 может ранжировать каждый атрибут на основе контекстной информации. Контекстная информация, такая как местоположение или близость, также может использоваться для подсчета баллов конкретного ответа. В случае определения местоположения на грубом уровне (например, соседство), контекст может оцениваться так, как описано выше. Для близости могут быть назначены обратные веса, чтобы больше баллов получили объекты, расположенные ближе.
[0069] Для обнаружения ассоциации среди атрибутов зависящий от домена речевой интерфейс 204 опционально может использовать машинное самообучение. Для определения этих ассоциаций можно применить индукцию с использованием дерева решений. Кроме того, для упрощения и облегчения вычислений деревья решений можно относительно легко преобразовать в представления естественного языка.
[0070] В блоке 806 зависящий от домена речевой интерфейс 204 может использовать функцию подсчета баллов для каждой пары 406 атрибут-значение и суммировать по всем парам 406 атрибут-значение для получения балла полезности для каждого шаблона 412 ответов на запрос. Зависящий от домена речевой интерфейс 204 может извлечь шаблоны 412 ответов на запрос для соответствующего домена 308 из памяти 114, в которой имеется по меньшей мере один из атрибутов, идентифицированных в команде из классифицирующего речевого интерфейса 202. Для каждого шаблона 412 ответов на запрос зависящий от домена речевой интерфейс 204 может подсчитать баллы для каждой пары 406 атрибут-значение и просуммировать по всем парам 406 атрибут-значение в шаблоне 412 ответов на запрос для получения баллов полезности для шаблона 412 ответов на запрос, как описано выше.
[0071] Применение функции подсчета баллов к каждому шаблону 412 ответов на запрос позволяет зависящему от домена речевому интерфейсу 204 вычислить статистический профиль всех возможных ответов на запрос на основе контекстной информации. С использованием статистического профиля зависящий от домена речевой интерфейс 204 может исследовать диапазон возможных типов ответов на запрос. Хотя оказывается возможным определить, какие ответы наиболее близки к профилю конкретного пользователя, зависящий от домена речевой интерфейс 204 может также идентифицировать другие ответы, которые, возможно, и не имеют столь высоких баллов, но имеют интересные альтернативы в пределах специфических атрибутов, как рассмотрено далее.
[0072] На основе статистического профиля зависящий от домена речевой интерфейс 204 может выбрать лишь небольшой набор оптимальных ответов на запрос, о котором известно, что он соответствует предпочтениям пользователя/общим предпочтениям. Размер, тип и модальность устройства вывода (например, дисплея 104, звукового приемопередатчика 112 и т.д.) в пользовательском терминале 102 может определить, насколько широкий выбор предоставить пользователю. Пользовательский терминал 102 может показать более широкий выбор, если дисплей 104 является большим. Карты также могут повлиять на представление информации. Более узкий выбор может быть предложен для сугубо речевого интерфейса, в котором все ответы должны быть представлены пользователю только в речевой форме.
[0073] Кроме того, зависящий от домена речевой интерфейс 204 может выбрать как оптимальные ответы на запрос, так и интересные выпавшие ответы, представляющие альтернативы, различные атрибуты которых пользователь может быть заинтересован проанализировать. Пользователь, который заинтересован в высоком качестве пищи, хорошем обслуживании, местоположении и цене, причем в указанном порядке, может задать ряд ограничений, которые определят набор ресторанов высокого ранга по качеству и обслуживанию, но относительно дорогих. Поскольку два наиболее высоко желательных признака для этого пользователя - это качество пищи и обслуживание, цена может внести относительно малую часть вклада в итоговое определение наборов ресторанов для отображения на дисплее. Однако если один из наборов ресторанов не попал в разряд основных, но все элементы в нем характеризуются высоким качеством и обслуживанием и очень дешевы, этот набор также может быть выбран для показа пользователю.
[0074] Кроме того, зависящий от домена речевой интерфейс 204 может представить полный диапазон опций для ответа (например, в случае вывода на графический интерфейс пользователя) в таком порядке, который помогает пользователю разобраться в большом количестве данных и позволяют ему исследовать весь диапазон возможностей. Ответы могут быть упорядочены по баллам полезности, на основе предпочтений и т.д.
[0075] В блоке 808 зависящий от домена речевой интерфейс 204 может определить, соответствует ли балл полезности одному объекту. Например, балл полезности может быть ассоциирован с передачей электронной почты конкретному контакту. В случаях, когда пользователи запрашивают определенные действия, зависящий от домена речевой интерфейс 204 может выполнить это действие, если у него достаточно информации для его выполнения. Если зависящий от домена речевой интерфейс 204 определил, что ему нужно больше информации, зависящий от домена речевой интерфейс 204 может запросить ее у пользователя (например, получателя сообщения электронной почты или, возможно, заголовок темы). Если идентифицирован единственный объект, процесс продолжается в блоке 812. Если идентифицировано множество объектов или ни одного объекта не идентифицировано, процесс продолжается в блоке 810.
[0076] В блоке 810 зависящий от домена речевой интерфейс 204 может выбрать N лучших шаблонов 412 ответов на запрос для представления пользователю, где «N» соответствует целому числу. Лучшие N шаблонов 412 ответов на запрос можно использовать для приглашения пользователя ввести дополнительную информацию. Зависящий от домена речевой интерфейс 204 может в речевой форме представить один или более ответов на запрос, сгенерированных по соответствующим шаблонам 412 ответов на запрос, предлагая пользователю предоставить информацию, позволяющую направить пользователя к более узким или более широким доменам в пределах иерархической базы 302 знаний. Например, на фиг.2 показано, что домен 308_1 «люди» на первом уровне 304 может содержать домен 308_4 «контакты» и домен 308_5
«электронная почта» в качестве доменов более низкого уровня (то есть более специфических доменов). Лучшие N ответов на запрос могут относиться к зависящему от домена речевому интерфейсу 204, предлагающему пользователю предоставить больше информации для определения одного или более действий, которые пользователь желает предпринять в доменах 308_4 «контакты».
[0077] Для определения N лучших ответов на запрос зависящий от домена речевой интерфейс 204 может иметь порог для ответов и может выбрать N лучших ответов на запрос, имеющих баллы полезности, которые превышают этот порог. Затем зависящий от домена речевой интерфейс 204 может в речевой форме сгенерировать N лучших ответов на запрос на основе шаблонов 412 ответов на запрос и может предложить пользователю ввести речевые входные данные, которые обеспечат дальнейшие ограничения. Например, пользовательский терминал 102 может вывести звуковое описание более узких или более широких доменов и попросить, чтобы пользователь оговорил дальнейшие ограничения. Например, для передачи текстового сообщения зависящий от домена речевой интерфейс 204 может предложить пользователю продолжать ввод до тех пор, пока не будет однозначно идентифицирован по меньшей мере один конкретный получатель. Если пользователь просто определил «Джона» и имеется множество записей в списке контактов пользователя с заданным именем «Джон», зависящий от домена речевой интерфейс 204 может запросить у пользователя уточнений. Процесс может возвратиться в блок 802 для обработки входных речевых данных, обеспечивающих дополнительные ограничения. Возвращаясь к блоку 808, если действие идентифицировано, процесс может продолжиться в блоке 812.
[0078] В блоке 812 зависящий от домена речевой интерфейс 204 может выполнить внутридоменные действия 408, ассоциированные с идентифицированным объектом 404. Внутридоменные действия могут быть выполнены по требованию пользователя. Как рассмотрено выше, объект 404 может быть ассоциирован с одним или более действиями в домене 408. Если пользователь делает запрос на передачу сообщения, зависящий от домена речевой интерфейс 204 может вызвать приложение передачи сообщения. Если из контекста понятно, что пользователь имеет в виду SMS-сообщение (а не электронную почту) и получатель идентифицирован, зависящий от домена речевой интерфейс 204 может приступить к заполнению сообщения. Если либо тип сообщения, либо получатель не ясны, зависящий от домена речевой интерфейс 204 может попросить уточнения.
[0079] В блоке 814 зависящий от домена речевой интерфейс 204 может определить, имеются ли какие-нибудь междоменные действия 410, ассоциированные с идентифицированным объектом 404. Каждый зависящий от домена речевой интерфейс 204 может идентифицировать действия в других доменах, так чтобы высказывание пользователя, которое вызывает действие в другом домене, можно было соответствующим образом обработать. Если нет никаких междоменных действий 410, процесс может возвратиться в блок 704, когда все внутридоменные действия 408 завершены, чтобы разрешить классифицирующему речевому интерфейсу 202 обработать следующий запрос от пользователя, как описано при рассмотрении фиг.7.
[0080] Если имеются междоменные действия 410, ассоциированные с объектом 404, зависящий от домена речевой интерфейс 204 может передать обработку запроса новому зависящему от домена речевому интерфейсу 204 с командой на выполнение междоменного действия 410. Если междоменное действие обнаружено, зависящий от домена речевой интерфейс 204 может передать смысловое представление текущей фразы вместе со всей историей беседы в новый зависящий от домена речевой интерфейс 204.
[0081] Во время обработки новый зависящий от домена речевой интерфейс 204 может применять контекстную информацию, содержащуюся в контекстном реестре 208 для персонализации диалога с пользователем. Предпочтения пользователя по словесному наполнению и использованию графической/речевой модальности могут быть распространены на другой зависящий от домена речевой интерфейс 204 в процессе передачи диалогов в другой зависящий от домена речевой интерфейс 204 для выполнения междоменных действий 410. Как только междоменное действие 410 выполнено, новый зависящий от домена речевой интерфейс 204 может возвратить исходному зависящему от домена речевому интерфейсу 204 результат междоменного действия 410.
[0082] Например, отправка электронной почты может потребовать междоменного действия 410 между зависящим от домена речевым интерфейсом «электронная почта» и зависящим от домена речевым интерфейсом «календарь». Пользователь может голосом связаться с зависящим от домена речевым интерфейсом «календарь» для идентификации следующей встречи, назначенной пользователем. Зависящий от домена речевой интерфейс «календарь» может выполнить внутридоменное действие 408 (то есть извлечь встречи, назначенные пользователем, и вычислить ту, которая наиболее близка к текущему моменту времени). Если пользователь изменяет время встречи, зависящий от домена речевой интерфейс «календарь» может выполнить внутридоменные действия 408, такие как приглашение пользователю ввести новое время. Кроме того, объект 404 может быть ассоциирован с междоменным действием 410, а именно с запросом адреса электронной почты для лиц, приглашенных на встречу.
[0083] В блоке 816 исходный зависящий от домена речевой интерфейс 204 может завершить любые оставшиеся внутридоменные действия 406 объекта 404. Если вернуться к примеру с электронной почтой в блоке 814, зависящий от домена речевой интерфейс 204 «контакты» может возвратить адрес электронной почты и может передать обработку зависящему от домена речевому интерфейсу 204 «электронная почта». Затем зависящий от домена речевой интерфейс 204 «электронная почта» может ввести адрес электронной почты в сообщение и завершить внутридоменное действие 404 по отправке электронной почты. Как только это действие закончено, процесс может возвратиться в блок 704, показанный на фиг.7, чтобы разрешить классифицирующему речевому интерфейсу 202 обработать следующий запрос от пользователя, как рассмотрено выше.
[0084] Опционально, зависящий от домена речевой интерфейс 204 может хранить историю диалога, позволяя учесть последующие запросы. Например, после отправки электронной почты, получатель может все еще находиться в центре внимания пользователя, что может привести к таким последующим запросам, как, например, «какой у него номер телефона?» Зависящий от домена речевой интерфейс 204 в этом месте может попросить уточнения (например, «телефонный номер кого?») или может просмотреть междоменную предысторию и обнаружить объект, который находится в центре внимания, в данном случае получателя электронной почты, и предоставить телефонный номер для этого контакта. Затем процесс на фиг.8 может завершиться.
[0085] Описанная выше система может обеспечить широкие функциональные возможности благодаря двухуровневому подходу (то есть классифицирующему и зависящему от домена речевому интерфейсу) при обеспечении одноуровневого доступа для пользователя. Набор функциональных возможностей можно легко увеличить благодаря структурированному основанному на объекте представлению элементов и хранилищу метаданных с возможностью глобального поиска. Извлекая информацию из приложений «календарь», «электронная почта», «список контактов» и других приложений, речевой интерфейс позволяет пользователю легко перемещаться по различным зависящим от домена речевым интерфейсам без необходимости повторного уточнения различных атрибутов, которые находятся в центре внимания. Кроме того, можно комбинировать информацию из множества источников, чтобы определить, когда выделить определенные действия. Например, входящее сообщение электронной почты от кого-либо, с кем у пользователя запланирована встреча на ближайшее будущее, может быть помечено как потенциально важное.
[0086] Ниже дано два примера речевых интерфейсов в соответствии с настоящим изобретением. В первом примере, первоначально пользователь может произнести такой вопрос: «Какие встречи у меня сегодня?» Классифицирующий речевой интерфейс 202 может проанализировать вопрос и идентифицировать слова «встречи» и «сегодня». Классифицирующий речевой интерфейс 202 может идентифицировать подходящий зависящий от домена речевой интерфейс 204, а именно зависящий от домена речевой интерфейс «календарь», и может определить пару атрибут-значение «период времени: сегодня». Классифицирующий речевой интерфейс 202 может передать в зависящий от домена речевой интерфейс «календарь» команду, включающую такую пару атрибут-значение, как {(1) тип: зависящий от домена речевой интерфейс 204: «календарь»; (2) ограничения {период времени: сегодня}}. Затем зависящий от домена речевой интерфейс «календарь» может ранжировать пару атрибут-значение и применить функцию подсчета баллов для определения балла полезности для каждого из шаблонов ответов на запрос, имеющих атрибут {период времени}. Речевой интерфейс «календарь» может определить, что шаблон ответов на запрос, имеющий самый высокий балл полезности, соответствует формулировке, «У вас [ввести количество утренних встреч, опустить, если нуль] встреч утром, [ввести количество дневных встреч, опустить, если нуль] встреч днем и [ввести количество вечерних встреч, опустить, если нуль] встреч вечером. Ваша следующая встреча состоится через [ввести временной интервал до следующей встречи] в [ввести место встречи]». Формулировки в скобках соответствуют информации, которую зависящий от домена речевом интерфейс «календарь» вставляет или опускает, если это применимо, прежде, чем в речевой форме выдать пользователю ответ на запрос на основе шаблона запроса. Зависящий от домена речевой интерфейс «календарь» может вставить соответствующую информацию в шаблон ответов на запрос и может подать команду пользовательскому терминалу 102 сгенерировать и выдать в речевой форме следующее: «У вас две встречи этим утром и три этим днем. Ваша следующая встреча состоится через тридцать четыре минуты в вашем офисе». Это действие завершает ответ на запрос, и зависящий от домена речевой интерфейс «календарь» может возвратить управление классифицирующему речевому интерфейсу 202 для мониторинга дальнейших запросов.
[0087] Затем пользователь может произнести: «Для меня есть какие-нибудь новые сообщения?» Если тип сообщения не ясен из контекста, классифицирующий речевой интерфейс 202 может попросить снять неоднозначность выбора между звуковой почтой и электронной почтой. Если далее пользователь уточняет, что речь идет об электронной почте, классифицирующий речевой интерфейс 202 может проанализировать запрос для определения пары атрибут-значение {атрибут: непрочитанное} и может передать команду, включающую пару атрибут-значение в зависящий от домена речевой интерфейс «электронная почта», например, {(1) тип: зависящий от домена речевой интерфейс 204: «электронная почта»; (2) ограничение: {атрибут: непрочитанное}}. Классифицирующий речевой интерфейс 202 может использовать простую технику обработки естественного языка, чтобы определить ограничения на атрибуты/значения, содержащиеся, например, внутри фразы пользователя. Затем зависящий от домена речевой интерфейс «электронная почта» может ранжировать пару атрибут-значение и применить функцию подсчета баллов для определения балла полезности для каждого из шаблонов ответов на запрос в домене, имеющем атрибут {период времени}. Речевой интерфейс «электронная почта» может определить, что шаблон ответов на запрос, имеющий наивысший балл полезности, соответствует формулировке: «Вам пришло [ввести количество новых сообщений, опустить, если нуль] сообщений, включая [ввести количество срочных сообщений, опустить, если нуль] от [ввести имя отправителя], отправленных [ввести время, когда были посланы срочные сообщения]». Затем зависящий от домена речевой интерфейс «электронная почта» может заставить пользовательский терминал 102 вывести в речевой форме следующее: «Вам пришло пятнадцать новых сообщений, включая два срочных электронных письма от Боба, отправленных вчера вечером». Это действие завершает ответ на запрос, и зависящий от домена речевой интерфейс «электронная почта» может возвратить управление классифицирующему речевому интерфейсу 202 для мониторинга дальнейших запросов.
[0088] Во втором примере пользователь может присвоить классифицирующему речевому интерфейсу 202 идентификатор «N95». Для активации классифицирующего речевого интерфейса 202 пользователь может произнести вслух указанный идентификатор. Первоначально пользователь может сказать «N95, какие у меня встречи сегодня?» Классифицирующий речевой интерфейс 202 может проанализировать запрос для идентификации слов «встречи» и «сегодня». Классифицирующий речевой интерфейс 202 может идентифицировать соответствующий зависящий от домена речевой интерфейс 204, а именно зависящий от домена речевой интерфейс «календарь», и может определить пару атрибут-значение «период времени: сегодня». Классифицирующий речевой интерфейс 202 может передать команду, идентифицирующую зависящий от домена речевой интерфейс «календарь» и включающую пару атрибут-значение, например {(1) тип: зависящий от домена речевой интерфейс: «календарь»; (2) ограничения {период времени: сегодня}}. Речевой интерфейс «календарь» может определить, что шаблон ответов на запрос, имеющий наивысший балл полезности, соответствует формулировке «У вас [ввести тип встречи, если таковая имеется] встреча в [ввести место встречи] в [ввести время] и [ввести тип встречи, если таковая имеется] встреча в [ввести место встречи] в [ввести время]». Зависящий от домена речевой интерфейс «календарь» может вставить информацию, относящуюся к сегодняшним встречам, в шаблон ответов на запрос и может заставить пользовательский терминал 102 вывести в речевой форме следующее: «У вас встреча на территории клиентов в корпорации XYZ в 9:30 и встреча по проекту в офисе в 14:00». Это действие завершает ответ на запрос, и зависящий от домена речевой интерфейс «календарь» может возвратить управление классифицирующему речевому интерфейсу 202 для мониторинга дальнейших запросов.
[0089] Затем пользователь может спросить: «Как мне добраться в XYZ?» Классифицирующий речевой интерфейс 202 может проанализировать слова «добраться в» и «XYZ». Классифицирующий речевой интерфейс 202 может проанализировать запрос и определить пару атрибут-значение (местоположение: корпорация XYZ} и может передать команду, включающую пару атрибут-значение, в зависящий от домена речевой интерфейс «места», например: {(1) тип: зависящий от домена речевой интерфейс: «места»; (2) {местоположение: корпорация XYZ}}. Затем зависящий от домена речевой интерфейс может ранжировать пару атрибут-значение и может применить функцию подсчета баллов для определения балла полезности для каждого из шаблонов ответов на запрос в домене, имеющем атрибут {местоположение}. Речевой интерфейс «места» может использовать GPS или другую систему позиционирования для определения текущего местоположения пользовательского терминала 102 или может предложить пользователю ввести свое текущее местоположение. Речевой интерфейс «места» может извлечь инструкции и затем может подать команду пользовательскому терминалу 102 в речевой форме направить пользователя в корпорацию XYZ. Это действие завершает ответ на запрос, и зависящий от домена речевой интерфейс «места» может возвратить управление классифицирующему речевому интерфейсу 202 для мониторинга дальнейших запросов.
[0090] Вместо того, чтобы просто маршрутизировать запросы пользователя в зависящий от домена речевой интерфейс 204 посредством представления пользователю фиксированной последовательности запросов в фиксированном порядке, в рассматриваемом примере варианта осуществления настоящего изобретения предложен классифицирующий речевой интерфейс 202 в виде объединенного речевого интерфейса, предназначенного для интеллектуального направления пользователя в один из множества зависящих от домена речевых интерфейсов 204. Речевые интерфейсы согласно вариантам осуществления настоящего изобретения обеспечивают гибкость по сравнению с современными диалоговыми системами, которые в основном разрабатываются для представления фиксированной последовательности ответов при взаимодействии с пользователем. Варианты осуществления настоящего изобретения обеспечивают создание доменно-независимый способ автоматического конфигурирования зависящего от домена речевого интерфейса 204, позволяющего осуществлять навигацию как стратегию поиска информации при взаимодействии с конкретным зависящим от домена речевым интерфейсом 204. Вместо того, чтобы представлять пользователю фиксированный набор ответов в фиксированном порядке, варианты осуществления настоящего изобретения позволяют определить динамический набор соответствующих ответов на запрос на каждом этапе диалога для сужения списка опций для ответов для следующего этапа.
[0091] Классифицирующий речевой интерфейс 202 может служить унифицированной основой для принятия решения о выборе контента и представления информации с использованием множества доменов в базе знаний. Этот унифицированный подход позволяет значительно сократить взаимодействие с пользователем при решении тех же самых задач. Развивая диалог вместо того, чтобы положиться лишь на однонаправленный командный интерфейс, пользовательский терминал 102 может предоставить свою интерпретацию (или интерпретации) запроса пользователя, и пользователь может взаимодействовать с системой для улучшения понимания со стороны системы, вместо того, чтобы позволить системе отвечать без подтверждения или уточнения возможной неправильной интерпретации запроса пользователя.
[0092] Вместо того, чтобы просто предложить пользователю выбрать конкретный домен в базе знаний, классифицирующий речевой интерфейс 202 может обработать запрос пользователя для идентификации соответствующего зависящего от домена речевого интерфейса 204. Кроме того, классифицирующий речевой интерфейс 202 может быть выполнен локально в пользовательском терминале 102, вместо того, чтобы относиться к системе на основе сервера, хотя система на основе сервера также может быть создана. Кроме того, контекстный реестр может обновляться на основе запросов пользователя и текущего состояния диалога, создавая персонализированное диалоговое взаимодействие с пользователем.
[0093] Речевые интерфейсы позволяют также преодолеть ограничения, определяемые форм-фактором в случае, когда пользовательский терминал 102 представляет собой мобильный телефон. Пользователь может испытывать ограничения при использовании графического интерфейса пользователя (GUI) на малом дисплее мобильного телефона для завершения задачи. Эти неудобства использования становятся еще обременительней, когда пользователь сосредотачивает все свое внимание на клавиатуре или экране, например, за рулем автомобиля.
[0094] Кроме того, речевые интерфейсы согласно вариантам осуществления настоящего изобретения могут применяться без использования модели синтаксиса с большим словарем на мобильной платформе и, следовательно, не нагружают ограниченные ресурсы (например, вычислительные ресурсы, память, мощность батареи и т.д.) мобильного устройства. Интерпретация запроса пользователя может потребовать глубокого понимания данных и диапазона действий, которые могут быть затребованы. Развитие одной системы, которая обладает такими «глубокими знаниями» о ряде доменов, привело бы к трудностям при интерпретации запросов пользователя, поскольку часто имеют место пересечения по словарям и действиям для различных поддоменов. При использовании подхода «разделяй и властвуй» речевые интерфейсы согласно вариантам осуществления настоящего изобретения могут легче удовлетворить ожидания пользователя.
[0095] Вышеописанный процессор 106 может включать один или более модулей, которые реализованы в виде аппаратных средств, встроенных программ, программного обеспечения и/или любой их комбинации. Например, процессор 106 может содержать модуль анализа запроса, модуль обработки запроса, модуль подачи команд и другие модули для реализации функций и признаков, описанных выше.
[0096] Кроме того, варианты осуществления настоящего изобретения обеспечивают архитектуру для реализации диалогового речевого интерфейса с широким диапазоном функциональных возможностей в пользовательском терминале, который конфигурируется данными, легко может быть персонализирован и может эффективно обрабатывать предпочтения пользователя и контекст.
[0097] И, наконец, указанная архитектура путем эффективной обработки речевых входных данных от пользователя может обеспечить более быстрый доступ к информации и решению задач, чем при печати вводимой информации. Кроме того, способы объединения, обсуждаемые выше, могут направлять действия пользователя быстрее, чем другие способы, особенно по сравнению с интерфейсами, которые принимают вводимые пользователем данные в печатном виде. Например, объединяя новые электронные письма по теме и отправителю, пользователь может «перескочить» к критически важному сообщению, не прослушивая все предыдущие сообщения. В рамках аспекта, относящегося к обработке входных речевых данных, указанная архитектура позволяет осуществлять подсказки пользователю для эффективного направления его при вводе пользователем дополнительных ограничений, если в первоначальном запросе информация отсутствует, чтобы определить, какую информацию пользователь ищет и/или какую задачу он желает решить. Если вся необходимая информация присутствует в исходном запросе или после дополнительного предложения пользователю дать дополнительную информацию, архитектура прямо и прозрачно передает указанные данные в конкретный зависящий от домена речевой интерфейс с использованием речевого ввхода, таким образом сокращая время, необходимое пользователю для завершения задачи. Кроме того, если в ответе имеется большое количество данных, архитектура, обсуждаемая выше, позволяет объединить графические и речевые интерфейсы для уменьшения количества информации, представляемой в речевой форме.
[0098] Предыдущее описание было дано в отношении речевых интерфейсов в пользовательском терминале 102. Очевидно, что принципы, описанные выше, могут быть распространены на другие типы пользовательских терминалов 102, включая те, которые работают в проводных и беспроводных сетях. Кроме того, признаки, описанные в контексте конкретного варианта осуществления настоящего изобретения, могут быть объединены с признаками и/или использоваться вместо признаков, описанных в отношении других вариантов осуществления настоящего изобретения.
[0099] Хотя объект изобретения был описан на языке конкретных конструктивных признаков и/или методологических действий, очевидно, что объект изобретения, определенный в формуле изобретения, не обязательно ограничен конкретными признаками или действиями, описанными выше. Напротив, конкретные признаки и действия, описанные выше, раскрыты в качестве примера реализации пунктов формулы изобретения.
Класс G10L15/26 речь для текстовых систем