Обновление моделей классификаторов понимания языка на основе краудсорсинга - RU2699587C2

Код документа: RU2699587C2

Чертежи

Показать все 11 чертежа(ей)

Описание

УРОВЕНЬ ТЕХНИКИ

[0001] По мере развития компьютерной технологии становятся доступными мобильные устройства с все увеличивающейся мощностью. Например, смартфоны и другие вычислительные устройства стали общим местом. Возможности обработки данных таких устройств привели в результате к разработке различных типов функциональных возможностей, таких как функциональные возможности, относящиеся к персональным цифровым секретарям.

[0002] Персональный цифровой секретарь может использоваться для выполнения задач или услуг для индивидуума. Например, персональный цифровой секретарь может быть модулем программного обеспечения, исполняющимся в мобильном устройстве или компьютере-десктопе. Помимо этого, персональный цифровой секретарь, реализованный в мобильном устройстве, имеет интерактивные и встроенные возможности понимания разговорной речи, чтобы быть способным отвечать на вопросы или речевые команды пользователя. Примеры задач и услуг, которые могут выполняться персональным цифровым секретарем, могут включать в себя осуществление телефонных вызовов, отправку электронной почты или текстового сообщения и настройку календарных напоминаний.

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

СУЩНОСТЬ ИЗОБРЕТЕНИЯ

[0004] Это краткое изложение сущности изобретения приведено для представления в упрощенной форме подборки концепций, которые дополнительно раскрываются ниже в подробном описании изобретения. Данное краткое изложение сущности изобретения не предназначено для идентификации ключевых признаков или существенных признаков заявляемого изобретения, а также не предназначено использоваться в качестве помощи в определении объема заявляемого изобретения.

[0005] В соответствии с одним или более аспектами, способ обновления моделей классификаторов понимания языка может включать в себя этапы, на которых принимают через один или более микрофонов вычислительного устройства цифровой голосовой ввод от пользователя вычислительного устройства. Также, ввод может быть принят от пользователя с использованием других вводов (например, посредством текстового ввода или других типов ввода). Обработка естественного языка выполняется с использованием цифрового голосового ввода для выявления пользовательского голосового запроса. По установлению того, что пользовательский голосовой запрос не согласуется с по меньшей мере одной из множества заранее заданных задач в определении агента (например, определении схемы расширяемого языка разметки (XML)) персонального цифрового секретаря, работающего на вычислительном устройстве, графический пользовательский интерфейс помечающего инструмента конечного пользователя (EULT) вычислительного устройства может использоваться для приема пользовательского выбора. Задача может определяться посредством голосовой (или текстовой) команды, а также посредством одного или более дополнительных средств, например, через основывающуюся на правилах подсистему, классификаторы машинного обучения и т.п. Пользовательский выбор может включать в себя по меньшей мере одно намерение из множества имеющихся в наличии намерений для предметной области. В необязательном порядке, пользовательский выбор может включать в себя по меньшей мере одну позицию для этого по меньшей мере одного намерения. Упомянутое по меньшей мере одно намерение связано с по меньшей одним действием, используемым для выполнения по меньшей мере одной функции категории функций для упомянутой предметной области. Будучи включенной в пользовательский выбор, упомянутая по меньшей мере одна позиция указывает значение, используемое для выполнения этого по меньшей мере одного действия. Набор отмеченных данных может быть сгенерирован посредством спаривания (или иного связывания) пользовательского голосового запроса с пользовательским выбором (например, выбранными предметной областью, намерением и/или позицией). Классификатор понимания языка может быть выбран из множества имеющихся в наличии классификаторов понимания языка, ассоциированных с определением агента, каковой выбор основывается, по меньшей мере, на по меньшей мере одном намерении, выбранном пользователем. Выбранный классификатор понимания языка может быть обновлен на основе сгенерированного набора отмеченных данных.

[0006] Согласно одному или более аспектам, предложен серверный компьютер, который включает в себя процессорное устройство и память, подключенную к процессорному устройству. Серверный компьютер может быть сконфигурирован для выполнения операций для обновления моделей классификаторов понимания языка. Операции могут включать в себя прием от по меньшей мере одного вычислительного устройства из множества вычислительных устройств, подключенных к серверному компьютеру, первого пользовательского выбора по меньшей мере одного намерения из множества имеющихся в наличии намерений. В необязательном порядке, пользовательский выбор может включать в себя по меньшей мере одну позицию для этого по меньшей мере одного намерения. Будучи включенным в пользовательский выбор, упомянутое по меньшей мере одно намерение может быть связано с по меньшей мере одним действием, используемым для выполнения по меньшей мере одной функции категории функций для предметной области. Упомянутая по меньшей мере одна позиция может указывать значение, используемое для выполнения этого по меньшей мере одного действия. Первый пользовательский выбор может быть ассоциирован с цифровым голосовым вводом, принятым на по меньшей мере одном вычислительном устройстве. Множество последующих пользовательских выборов, которые идентичны первому пользовательскому выбору, могут приниматься от по меньшей мере одного другого вычислительного устройства из множества вычислительных устройств. Набор отмеченных данных может быть сгенерирован посредством спаривания цифрового голосового ввода с первым пользовательским выбором. Классификатор понимания языка может быть выбран из множества имеющихся в наличии классификаторов понимания языка, ассоциированных с одним или более определениями схемы XML, каковой выбор основывается, по меньшей мере, на одном или более из цифрового голосового ввода, предметной области, намерения и/или позиции, соответствующих первому пользовательскому выбору. Выбранный классификатор понимания языка может быть обновлен на основе сгенерированного набора отмеченных данных.

[0007] Согласно одному или более аспектам, машиночитаемый носитель может включать в себя инструкции, которые при их исполнении предписывают вычислительному устройству выполнять операции для обновления моделей классификаторов понимания языка. Операции могут включать в себя выявление пользовательского запроса на основе пользовательского ввода, принятого на вычислительном устройстве. Пользовательский запрос может быть принят через по меньшей мере одно из текстового ввода и голосового ввода, и данный запрос может быть на предмет функциональных возможностей персонального цифрового секретаря, работающего в вычислительном устройстве. Операции могут дополнительно включать в себя установление того, что пользовательский запрос не согласуется с по меньшей мере одной из множества заранее заданных задач (например, голосовых команд) в определении схемы расширяемого языка разметки (XML) персонального цифрового секретаря. В одной реализации показатель достоверности может быть сгенерирован путем применения одного из множества имеющихся в наличии классификаторов понимания языка, ассоциированных с определением схемы XML, к пользовательскому запросу. По установлению того, что показатель достоверности меньше порогового значения, пользовательский выбор может быть принят с использованием графического пользовательского интерфейса помечающего инструмента конечного пользователя (EULT) вычислительного устройства. В другой реализации, другие методы могут быть использованы (например, вместо использования порогового значения) для установления того, использовать ли EULT для приема пользовательского выбора по меньшей мере одного из предметной области, намерения и/или информации позиции. Пользовательский выбор может включать в себя по меньшей мере одно намерение из множества имеющихся в наличии намерений. В необязательном порядке, пользовательский выбор может включать в себя предметную область и/или по меньшей мере одну позицию для по меньшей мере одного намерения. По меньшей мере одно намерение связано с по меньшей мере одним действием, используемым для выполнения по меньшей мере одной функции категории функций для предметной области. Будучи включенным в пользовательский выбор, по меньшей мере одна позиция может указывать значение, используемое для выполнения по меньшей мере одного действия. Набор отмеченных данных может быть сгенерирован путем спаривания пользовательского голосового запроса и пользовательского выбора. Классификатор понимания языка может быть выбран из множества имеющихся в наличии классификаторов понимания языка, ассоциированных с определением схемы XML, каковой выбор основывается на по меньшей мере одном намерении и/или позиции, выбранных пользователем. Обновленный классификатор понимания языка может быть сгенерирован путем обучения выбранного классификатора понимания языка с использованием сгенерированного набора отмеченных данных (например, связывания классификатора с голосовым запросом и по меньшей мере одним из предметной области, намерения и/или позиции в пользовательском выборе).

[0008] Как описывается в настоящем документе, разнообразие других признаков и преимуществ могут быть введены в предложенные технологии по необходимости.

ПЕРЕЧЕНЬ ФИГУР ЧЕРТЕЖЕЙ

[0009] Фиг.1 - блок-схема, иллюстрирующая примерную архитектуру для обновления моделей классификаторов понимания языка, согласно примерному варианту осуществления настоящего раскрытия.

[0010] Фиг.2 - блок-схема, иллюстрирующая различные варианты использования классификаторов понимания языка голосовыми приложениями, согласно примерному варианту осуществления настоящего раскрытия.

[0011] Фиг.3A-3B иллюстрируют пример циклов обработки для обновления моделей классификаторов понимания языка, согласно примерному варианту осуществления настоящего раскрытия.

[0012] Фиг.4A-4B иллюстрируют примерные пользовательские интерфейсы помечающего инструмента конечного пользователя, которые могут использоваться в соответствии с примерным вариантом осуществления настоящего раскрытия.

[0013] Фиг.5-7 - логические блок-схемы, иллюстрирующие обновление моделей классификаторов понимания языка согласно одному или более вариантам осуществления.

[0014] Фиг.8 - блок-схема, иллюстрирующая примерное мобильное вычислительное устройство, в сочетании с которым могут быть реализованы инновации, раскрытые в настоящем документе.

[0015] Фиг.9 - схема примерной вычислительной системы, в которой могут быть реализованы некоторые описанные варианты осуществления.

[0016] Фиг.10 - примерное окружение облачных вычислений, которое может использоваться в сочетании с технологиями, описанными в настоящем документе.

ПОДРОБНОЕ ОПИСАНИЕ ИЗОБРЕТЕНИЯ

[0017] Как описывается в настоящем документе, различные технологии и технические решения могут быть применены для обновления моделей классификаторов понимания языка. Более конкретно, спецификация определения агента (например, спецификация определения голосовой команды (VCD), спецификация определения реагирующего агента (RAD) или другой тип машиночитаемого документа) может быть использована для определения одного или более агентов, ассоциированных с персональным цифровым секретарем, функционирующим на вычислительном устройстве. Спецификация определения агента может задавать информацию предметной области, информацию намерения, информацию позиции, информацию состояния, ожидаемые пользовательские реплики (или голосовые команды), переходы между состояниями, строки и шаблоны ответов, информацию локализации и любую другую информацию, вводимую через RADE для обеспечения визуального/декларативного представления функциональных возможностей реагирующих агентов. Спецификация определения агента может быть реализована в голосовом приложении (например, персональном цифровом секретаре, собственном для операционной системы устройства, или стороннем голосовом приложении) наряду с одним или более классификаторами понимания языка (определение понятия "классификатор" приведено здесь ниже). Каждый классификатор может быть также ассоциирован с одним или более из предметной области, намерения и позиции, а также с пользовательской репликой.

[0018] В случаях, когда пользовательская реплика (или текстовый ввод) не согласуется с конкретной репликой/командой в рамках спецификации определения агента, помечающий инструмент конечного пользователя (EULT) может использоваться в вычислительном устройстве для обеспечения пользователю возможности выбирать одно или более из предметной области, намерения для предметной области и/или один или более позиций для намерения. В случаях, когда предметная область является недоступной, пользователь может добавлять предметную область и, в необязательном порядке, задавать намерение и/или позицию для этой предметной области. Набор отмеченных данных может быть создан посредством связывания пользовательской реплики с выбранными предметной областью, намерением и/или позицией. Классификатор, связанный с выбранным намерением (и/или предметной областью или позицией), затем может быть обновлен с использованием набора отмеченных данных. Обновление в отношении классификатора может быть запущено только после того, как некоторое количество пользователей сделают, по существу, одинаковый пользовательский запрос (т.е. запросят одинаковые или схожие предметную область, намерение и/или позицию), дабы избежать жульнического манипулирования и обновления классификатора. Обновление в отношении классификатора может делаться локально (внутри вычислительного устройства), и обновленный классификатор может затем быть сохранен в облачной базе данных, где его могут использовать другие пользователи. В качестве альтернативы, информация пользовательского выбора может быть отправлена на серверный компьютер (облачный сервер), где может быть создан набор отмеченных данных и классификатор может быть обновлен после выполнения достаточным количеством пользователей одних и тех же (или аналогичных) реплики и пользовательского выбора.

[0019] В этом документе детализируются разнообразные способы, процессы и процедуры. Хотя конкретные этапы могут описываться в определенной последовательности, такая последовательность, в основном, - для удобства и ясности. Конкретный этап может повторяться более одного раза, может выполняться до или после других этапов (даже если эти этапы иным образом описаны в другой последовательности) и может выполняться параллельно с другими этапами. Требуется, чтобы второй этап следовал за первым этапом только тогда, когда первый этап должен быть завершен до того, как начнется второй этап. Такая ситуация будет конкретно обозначаться, когда она не ясна из контекста. Некий отдельный этап может быть опущен; некий отдельный этап является необходимым только тогда, когда его исключение окажет материальное воздействие на другой этап.

[0020] В этом документе используются термины "и", "или" и "и/или". Такие термины должны читаться как имеющие одинаковое смысловое значение; то есть, инклюзивно. Например, "A и B" может означать, по меньшей мере, следующее: "и A, и B", "только A", "только B", "по меньшей мере, как A, так и B". В качестве другого примера, "A или B" может означать, по меньшей мере, следующее: "только A", "только B", "и A, и B", "по меньшей мере, как A, так и B". Когда подразумевается исключающее или, это будет конкретно указываться (например, "либо A, либо B", "максимум одно из A и B").

[0021] В этом документе описываются различные компьютерно-реализуемые способы, процессы и процедуры. Следует понимать, что различные действия (прием, сохранение, отправка, осуществление связи, отображение и т.д.) выполняются аппаратным устройством, даже если действие может быть санкционировано, инициировано или запущено пользователем, либо даже если аппаратное устройство управляется компьютерной программой, программным обеспечением, встроенным микропрограммным обеспечением (firmware) и т.п. Помимо этого, следует понимать, что аппаратное устройство оперирует данными, даже если данные могут представлять концепты или объекты реального мира, таким образом, явное указание как "данные" как таковое опускается. Например, когда аппаратное устройство описывается как "сохраняющее запись", следует понимать, что аппаратное устройство сохраняет данные, которые представляют запись.

[0022] Термин "агент" или "реагирующий агент", в том смысле как он используется здесь, относится к структуре данных/команд, которая может быть использована персональным цифровым секретарем для реализации одного или более ответных диалогов (например, голосовых, текстовых и/или тактильных откликов), ассоциированных с функциональными возможностями устройства. Функциональные возможности устройства (например, обмен электронной почтой, обмен сообщениями и т.д.) могут активироваться посредством пользовательского ввода (например, голосовой команды) в персональный цифровой секретарь. Реагирующий агент (или агент) может быть определен с использованием XML-документа определения голосового агента (VAD), определения голосовой команды (VCD) или определения реагирующего агента (RAD) (или другого типа машиночитаемого документа), а также кода программирования (например, кода C++), используемого для ведения агента по диалогу. Например, реагирующий агент электронной почты может использоваться, чтобы, основываясь на пользовательских задачах (например, голосовых командах), открывать новое окно электронной почты, составлять сообщение электронной почты на основе голосового ввода и отправлять сообщение электронной почты по адресу электронной почты, задаваемому голосовым вводом в персональный цифровой секретарь. Реагирующий агент может использоваться для выдачи одного или более ответов (например, аудио/видео/тактильных откликов) во время диалогового сеанса, инициированного с персональным цифровым секретарем на основе пользовательского ввода.

[0023] Термин "схема XML", в том смысле, как он используется здесь, относится к документу с совокупностью сегментов XML-кода, которые используются для описания и проверки данных в XML-окружении. Более конкретно, схема XML может перечислять элементы и атрибуты, используемые для описания контента в XML-документе, где каждый элемент является допустимым, какой тип контента является допустимым и т.п. Пользователь может генерировать файл XML (например, для использования в определении реагирующего агента), который привязан к схеме XML.

[0024] Термин "предметная область", в том смысле как он используется здесь, может использоваться для обозначения сферы или диапазона персональных знаний и может быть связан с категорией функций, выполняемых вычислительным устройством. Примерные предметные области включают в себя электронную почту (например, агент электронной почты может использоваться персональным цифровым секретарем (DPA) для генерирования/отправки электронной почты), сообщение (например, агент сообщений может использоваться персональным цифровым секретарем (DPA) для генерирования/отправки текстовых сообщений), предупреждение (реагирующий агент предупреждения может использоваться для настройки/удаления/модификации предупреждений) и т.д.

[0025] Термин "намерение", в том смысле как он используется здесь, может использоваться для обозначения по меньшей мере одного действия, используемого для выполнения по меньшей мере одной функции категории функций для идентифицированной предметной области. Например, намерение "задать предупреждение" может быть использовано для предметной области, относящейся к предупреждениям.

[0026] Термин "позиция", в том смысле как он используется здесь, может использоваться для обозначения конкретного значения или набора значений, используемых для совершения конкретного действия для заданной пары предметная область-намерение. Позиция может быть ассоциирована с одним или более намерениями и может быть явно предусмотрена (т.е., аннотирована) в шаблоне схемы XML. В типичном случае, предметная область, намерение и одна или более позиций составляют конструкцию понимания языка, в то же время, в рамках заданного сценария агента, позиция может использоваться совместно по множеству намерений. В качестве примера, если предметная область является предупреждением с двумя разными намерениями - задать предупреждение и удалить предупреждение, - то оба эти намерения могли бы совместно использовать одну и ту же позицию "Время предупреждения". В этом отношении, позиция может быть связана с одним или более намерениями.

[0027] Термин "пользовательский выбор" (в связи с помечающим инструментом конечного пользователя), в том смысле как он используется здесь, относится к выбору пользователем информации предметной области и/или намерения и/или позиции. В этом отношении, является возможным индивидуальный выбор предметной области или намерения или позиции (например, только намерение может быть выбрано), а также любых пар (например, выбор предметной области-намерения и без позиции).

[0028] Термин "классификатор" или "классификатор понимания языка", в том смысле как он используется здесь, относится к статистическому основывающемуся на правилах или на машинном обучении алгоритму или программной реализации, которая может соотносить заданный пользовательский ввод (речевой или текстовый) с предметной областью или намерением. Этот алгоритм может также выдавать показатель достоверности для любой классификации, выполняемой с использованием классификатора. Тот же самый алгоритм или дополнительный блок программного обеспечения может затем логически выводить/устанавливать набор позиций, задаваемых пользователем как часть реплики, для пары предметная область-намерение. Данная пользовательская реплика может обучать множество классификаторов - некоторые для положительного случая и другие для отрицательного случая. В качестве примера, пользовательская реплика (или голосовая/текстовая команда) "сообщи Робу, что я буду бегать поздно" могла бы использоваться для обучения классификатора "обмена сообщениями" в качестве позитивного обучающего набора, и классификатора "электронной почты" в качестве негативного обучающего набора. Классификатор может быть связан с одной или более частями отмеченных данных (например, пользовательской реплики, предметной области, намерения и/или позиции).

[0029] Фиг.1 - блок-схема, иллюстрирующая примерную архитектуру (100) для обновления моделей классификаторов понимания языка, в соответствии с примерным вариантом осуществления настоящего раскрытия. Согласно Фиг.1, клиентское вычислительное устройство (например, смартфон или другое мобильное вычислительное устройство, такое как устройство 800 на Фиг.8) может исполнять программное обеспечение, организованное в соответствии с архитектурой 100 для обеспечения обновления моделей классификаторов понимания языка.

[0030] Архитектура 100 включает в себя вычислительное устройство 102 (например, телефон, планшет, лэптоп, десктоп или другой тип вычислительного устройства), подключенное к удаленному серверному компьютеру (или компьютерам) 140 через сеть 130. Вычислительное устройство 102 включает в себя микрофон 106 для преобразования звука в электрический сигнал. Микрофон 106 может быть динамическим, емкостным или пьезоэлектрическим микрофоном, использующим электромагнитную индукцию, изменение в емкости или пьезоэлектричество, соответственно, для создания электрического сигнала из изменений давления воздуха. Микрофон 106 может включать в себя усилитель, один или более аналоговых или цифровых фильтров и/или аналого-цифровой преобразователь для создания цифрового звукового ввода. Цифровой звуковой ввод может содержать воспроизведение голоса пользователя, например, когда пользователь выдает команду в персональный цифровой секретарь 110 выполнить команду.

[0031] Персональный цифровой секретарь 110 работает в вычислительном устройстве 102 и позволяет пользователю вычислительного устройства 102 выполнять различные действия, используя голосовой (или текстовый) ввод. Персональный цифровой секретарь 110 может содержать модуль 112 обработки естественного языка, структуру 114 определения агента, пользовательские интерфейсы 116, модель классификаторов понимания языка (LUCM) 120 и помечающий инструмент конечного пользователя (EULT) 118. Персональный цифровой секретарь 110 может принимать пользовательский голосовой ввод через микрофон 106, выявлять соответствующую задачу (например, голосовую команду) из пользовательского голосового ввода с использованием структуры 114 определения агента (например, структуры данных голосовой команды или структуры определения реагирующего агента) и выполнять эту задачу (например, голосовую команду). В некоторых ситуациях, персональный цифровой секретарь 110 посылает пользовательскую (голосовую или текстовую) команду в одно из сторонних голосовых приложений 108. В других ситуациях персональный цифровой секретарь 110 обрабатывает задачу сам.

[0032] Операционная система (OS) 104 устройства управляет функциями пользовательского ввода, функциями вывода, функциями доступа к хранилищу, функциям сетевой связи и прочими функциями для устройства 110. OS 104 устройства обеспечивает персональному цифровому секретарю 110 доступ к таким функциям.

[0033] Структура 114 определения агента может определять одного или боле агентов DPA 110 и может задавать задачи или команды (например, голосовые команды), поддерживаемые DPA 110 и/или сторонними голосовыми приложениями 108, наряду с ассоциированными вариациями голосовых команд и примерами голосовых команд. В некоторых реализациях, структура 114 определения агента реализуется в формате XML. В качестве дополнения, структура 114 определения агента может идентифицировать голосовые приложения, которые доступны удаленно из магазина 146 приложений, и/или голосовые сервисы, доступные удаленно с web-службы 148 (например, путем осуществления доступа к определению схемы, доступному с удаленных серверных компьютеров 140, которым определяются функциональные возможности для удаленных приложений и/или удаленных сервисов).

[0034] Структура 114 определения агента может предоставляться совместно с моделью классификаторов понимания языка (LUCM) 120 (например, как часть операционной системы 104, либо может инсталлироваться во время инсталляции DPA 110). LUCM 120 может включать в себя множество классификаторов C1, …, Cn, где каждый классификатор может быть связан с одним или более из предметной области (D1, …, Dn), намерения (I1, …, In) и/или позиции (S1, …, Sn). Каждый из классификаторов может включать в себя статистический основывающийся на правилах или машинном обучении алгоритм или программную реализацию, которая может соотносить данный пользовательский ввод (голосовой или текстовый) с предметной областью и намерением. Это алгоритм может также выдавать показатель достоверности для любой классификации, выполняемой с использованием классификатора. В некоторых реализациях классификатор может быть связан с одним или более из информации предметной области, намерения и/или позиции и может обеспечивать показатель достоверности при его применении к данному пользовательскому голосовому/текстовому вводу (примерный сценарий реализации описан со ссылкой на Фиг.2).

[0035] Даже хотя LUCM 120 проиллюстрирована как являющаяся частью DPA 110 наряду со структурой 114 определения агента, настоящее раскрытие не ограничено в этом отношении. В некоторых вариантах осуществления, LUCM 120 может быть локальной копией модели классификаторов, которая включает в себя классификаторы (C1, …, Cn), релевантные структуре 114 определения агента и DPA 110. Другая (например, глобальная) модель классификаторов (например, LUCM 170) может храниться в облаке (например, как часть серверных компьютеров 140). Глобальная LUCM 170 может использоваться во время создания структуры определения агента, с тем чтобы подмножество (например, релевантных) классификаторов могло быть включено с такой структурой определения и реализовано как часть приложения (например, стороннего приложения 108, DPA 110 и/или OS 104).

[0036] DPA 110 может обрабатывать голосовой ввод, используя модуль 112 обработки естественного языка. Модуль 112 обработки естественного языка может принимать цифровой звуковой ввод и переводить слова, произнесенные пользователем, в текст, используя распознавание речи. Извлеченный текст может быть семантически проанализирован для установления задачи (например, пользовательской голосовой команды). Посредством анализа цифрового звукового ввода и выполнения действий в качестве реакции на произнесенные команды, персональным цифровым секретарем 110 можно управлять посредством голосового ввода со стороны пользователя. Например, персональный цифровой секретарь 110 может сравнивать извлеченный текст со списком потенциальных пользовательских команд (например, сохраненным в структуре 114 определения агента), чтобы выявить команду, в наибольшей степени соответствующую намерению пользователя. DPA 110 может также применять один или более из классификаторов из LUCM 120 для установления показателя достоверности, выбора классификатора на основе показателя достоверности и выявления команды, в наибольшей степени соответствующей намерению пользователя, на основе команды (или реплики), ассоциированной с классификатором. В этом отношении, данное сопоставление может основываться на статистических или вероятностных методах, деревьях решений или прочих правилах, других подходящих критериях сопоставления или комбинации перечисленного. Потенциальные команды могут быть собственными командами DPA 110 и/или командами, определенными в структуре 114 определения агента. Таким образом, путем определения команд в структуре 114 определения агента и классификаторов в LUCM 120, ряд задач, который может выполняться от имени пользователя посредством DPA 110, может быть расширен. Потенциальные команды могут также включать в себя голосовые команды для выполнения задач сторонних голосовых приложений 108.

[0037] Персональный цифровой секретарь 110 включает в себя голосовые и/или графические пользовательские интерфейсы 116. Пользовательские интерфейсы 116 могут предоставлять пользователю информацию, описывающую возможности DPA 110 (например, возможности EULT 118) и/или сторонних голосовых приложений 108.

[0038] Помечающий инструмент конечного пользователя (EULT) 118 может содержать подходящие логические средства, схемы, интерфейсы и/или код и может быть выполнен с возможностью предоставлять функциональные возможности для обновления моделей классификаторов понимания языка, как описывается в настоящем документе. Например, EULT 118 может быть запущен в случаях, когда в структуре 114 определения агента нет строки голосовой команды, которая соответствует голосовой/текстовой команде пользователя, либо когда один или более из имеющихся в наличии классификаторов возвращают показатель достоверности, который ниже пороговой величины (как видно на Фиг.2). Пользователь может затем использовать EULT 118 для выбора предметной области, намерения и/или позиции и связывания задачи (например, голосовой команды, выраженной как реплика) или текстовой команды с выбранной пользователем информацией предметной области, намерения и/или позиции. Сделанные пользователем выборы или введенная пользователем голосовая/текстовая команда могут быть посланы на серверные компьютеры 140, где глобальный набор классификаторов 170 может быть обновлен (например, классификатор, который соответствует пользовательской голосовой/текстовой команде, обновляется введенными пользователем предметной областью, намерением и/или позицией). В этом отношении, подход на основе краудсорсинга может использоваться для обучения/помечания классификаторов и, следовательно, улучшения глобальной и локальной LUCM (170 и 120).

[0039] Персональный цифровой секретарь 110 может осуществлять доступ к удаленным сервисам 142, исполняющихся в удаленных серверных компьютерах 140. Удаленные сервисы 142 могут включать в себя программные функции, предоставляемые по сетевому адресу через сеть, такую как сеть 130. Сеть 130 может включать в себя локальную сеть (LAN), глобальную сеть (WAN), Интернет, интернет, проводную сеть, беспроводную сеть, сотовую сеть, их комбинации или любую сеть, подходящую для обеспечения канала для осуществления связи между вычислительным устройством 102 и удаленными серверными компьютерами 140. Следует понимать, что сетевая топология, проиллюстрированная на Фиг.1, упрощена и что множественные сети и сетевые устройства могут использоваться для взаимного соединения различных компьютерных систем, раскрытых здесь.

[0040] Удаленные сервисы 142 могут включать в себя различные компьютерные сервисы, которые являются доступными с удаленных серверных компьютеров 140 через сеть 130. Удаленные сервисы 142 могут включать в себя сервис 144 обработки естественного языка (например, вызываемый персональным цифровым секретарем 110 для выполнения или получения содействия посредством функций обработки естественного языка от модуля 112). Удаленные сервисы 142 могут включать в себя магазин 146 приложений (например, магазин приложений, предоставляющий голосовые приложения, по которым можно осуществлять поиск, либо которые можно скачивать и инсталлировать). Удаленные сервисы 142 могут также включать в себя web-службы 148, к которым может быть осуществлен доступ посредством голосового ввода с использованием персонального цифрового секретаря 110. Удаленные сервисы 142 могут также включать в себя помечающий инструмент 150 разработчика, сервис 152 обучения модели классификаторов и сервис 154 обнаружения фальсификации модели классификаторов, как поясняется ниже. Удаленные серверные компьютеры 140 могут также управлять базой 160 данных реплик и базой 162 данных отмеченных данных.

[0041] Фиг.2 - блок-схема 200, иллюстрирующая разнообразные варианты использования классификаторов понимания языка голосовыми приложениями, согласно примерному варианту осуществления настоящего раскрытия. Со ссылкой на Фиг.1-2, пользователь (например, пользователь устройства 102) может вводить голосовой ввод 202. На этапе 206 распознавания речи (например, 112) речь ввода 202 может преобразовываться в пользовательскую команду (текст) 208. Пользовательская команда 208 может, в качестве альтернативы, быть введена как текстовый ввод 204. На этапе 210 может быть выполнено сопоставление с определением агента путем сопоставления пользовательской команды 208 с одной или более пользовательскими командами, заданными в структуре определения агента (например, 114). Если есть прямое совпадение (на этапе 212), тогда предметная область 216, намерение 218 и/или позиция 220 могут быть логически выведены из совпавшей пользовательской команды, и такая информация может быть использована DPA 110 и/или приложением 108 на этапе 232. Если, в то же время, совпадения нет (на этапе 214), тогда может быть выполнено сопоставление с использованием LUCM 120 (или 170).

[0042] Более конкретно, пользовательская команда 208 может использоваться как ввод в классификаторы C1, …, Cn, и соответствующие показатели 240 достоверности могут быть вычислены. Если для конкретного классификатора (например, C1) показатель достоверности больше или равен пороговому значению (например, 20%), тогда данный классификатор может использоваться для извлечения предметной области 224, намерения 226 и/или позиции 228, связанных с таким классификатором. Извлеченные предметная область/намерение/позиция могут использоваться DPA 110 или приложением 108 (на этапе 230). Если же показатель достоверности ниже порогового значения (например, на этапе 250), тогда модель классификатора может быть обновлена (например, с использованием EULT 118 и как видно на Фиг.3B-4B). Предметная область, намерение и/или позиция, выявленные во время процесса помечания в EULT, могут использоваться DPA 110 и/или приложением 108 (на этапе 232).

[0043] Даже несмотря на то, что показатель достоверности, сгенерированный посредством классификаторов, используется (наряду с пороговым значением) для установления того, следует ли использовать EULT для получения пользовательского выбора, настоящее раскрытие не является ограничивающим в этом отношении. В другом варианте осуществления другие способы могут быть использованы (например, вместо использование порогового значения) для установления того, следует ли использовать EULT для получения пользовательского выбора по меньшей мере одного из информации предметной области, намерения и/или позиции.

[0044] Фиг.3A-3B иллюстрируют примерные циклы обработки для обновления моделей классификаторов понимания языка, в соответствии с примерным вариантом осуществления настоящего раскрытия. Со ссылкой на Фиг.3A, иллюстрируется архитектура 300 для обучения/обновления данных классификаторов с использованием помечающего инструмента 150 разработчика. Как видно на Фиг.3A, структура 114 определения агента может быть привязана к LUCM 120 (LUCM 120 может быть такой же как, либо быть подмножеством LUCM 170). Затем, структура 114 определения агента и LUCM 120 могут быть реализованы как часть приложения 108 (например, являющегося доступным в магазине 146 приложений) или DPA 110. Приложение 108 (и DPA 110) могут затем быть инсталлированы в устройство 102.

[0045] В случаях, когда EULT 118 отключен, пользователь может подать реплику 302 (например, пользовательскую команду). Реплика может быть передана и сохранена как часть базы 160 данных реплик, в которой могут также храниться реплики от пользователей других вычислительных устройств, подключенных с возможностью осуществления связи к серверным компьютерам 140. Администратор сети/разработчик могут затем использовать помечающий инструмент 150 разработчика для извлечения реплики (например, 302) из базы 160 данных и формировать выбор 303 предметной области, намерения и/или позиции (D/I/S). Администраторский выбор 303 может быть привязан к реплике 302 и сохранен в качестве отмеченных данных в базе 162 данных отмеченных данных. Администратор затем может пересылать отмеченные данные в сервис 152 обучения классификаторов (либо отмеченные данные могут автоматически передаваться в обучающие сервис 152 после их сохранения в базе 162 данных).

[0046] Сервис 152 обучения модели классификаторов может содержать надлежащие логические средства, микросхемы, интерфейсы и/или код и может быть выполнен с возможностью осуществлять обучение (или обновление) одного иди более классификаторов в моделях LUCM 120 и/или 170. Во время иллюстративного обучения 304 классификаторов набор отмеченных данных может быть извлечен (например, 302 и 303); информация предметной области, намерения и/или позиции (например, 303) может быть использована (например, в качестве индекса) для доступа к LUCM 120/170 и извлечения классификатора, который связан с такими предметной областью, намерением и/или позицией. Обучающий сервис 152 может затем обновить классификатор так, чтобы он был связан с пользовательской репликой/командой (302), а также одним или более из предметной области, намерения и/или позиции (303), предоставленных администратором с использованием помечающего инструмента 150 разработчика. Обновленная LUCM 120 может быть затем использована и привязана к структуре определения агента для реализации в приложении.

[0047] Со ссылкой на Фиг.3B иллюстрируется архитектура 370 для обучения/обновления данных классификаторов с использованием помечающего инструмента конечного пользователя (EULT) 118. Как видно на Фиг.3B, структура 114 определения агента может быть привязана к LUCM 120 (LUCM 120 может быть такой же как, либо подмножеством LUCM 170). Затем, структура 114 определения агента 114 и LUCM 120 могут быть реализованы как часть приложения 108 (например, являющегося доступным в магазине 146 приложений), DPA 110 и/или приложений 350, 360. Приложения 108, 350, …, 360 (и DPA 110) могут затем быть инсталлированы в устройство 102.

[0048] В случаях, когда EULT 118 включен, пользователь может подать реплику 302 (например, пользовательскую команду). Реплика может быть передана и сохранена как часть базы 160 данных реплик, в которой могут также храниться реплики от пользователей других вычислительных устройств, подключенных с возможностью осуществления связи к серверным компьютерам 140. Пользователь устройства 102 может затем использовать EULT 118 для подачи пользовательского ввода, выбора одного или более из предметной области, намерения и/или позиции, связанных с репликой/командой 302 (в предположении, что нет прямого совпадения (например, 212) с командой в структуре 114 оправления агента, и нет показателя достоверности, который превышает пороговое значение (например, 240)).

[0049] Пользователь может использовать EULT 118, чтобы выбирать предметную область, намерение и/или позицию (D, I и/или S) (например, 320), ассоциированные с репликой 302. DPA 110 (или, иными словами, устройство 102) может выбрать по меньшей мере один из классификаторов C1, …, Cn в LUCM 120 в качестве соответствующего введенному пользовательской выбору 320 (например, классификатор может быть выбран из LUCM 120 на основе сопоставления информации предметной области, намерения и/или позиции, связанной с классификатором, с информацией предметной области, намерения и/или позиции, связанной с пользовательским выбором 320, введенным через EULT 118).

[0050] В соответствии с примерным вариантом осуществления настоящего раскрытия, после того, как совпадающий классификатор извлечен из LUCM 120, устройство 102 может обновить классификатор (например, как обсуждалось выше со ссылкой на 304) и сохранить обновленный/обученный классификатор в качестве локального классификатора 330. Обучение и обновление классификатора и генерирование локального классификатора 330 может выполняться посредством использования сервиса 152 обучения модели классификаторов на удаленных серверных компьютерах 140. В этом отношении, один или более локальных классификаторов 330 могут быть сгенерированы без того, чтобы такие обученные классификаторы присутствовали в глобальной LUCM 170. Локальные классификаторы 330 могут быть связаны с пользовательским профилем 340 и могут использоваться/совместно использоваться между одним или более из приложений 350, 360, инсталлированных в устройстве 102. В необязательном порядке, локальные классификаторы 330 могут храниться на серверных компьютерах 140, как часть пользовательского профиля 340 (профиль может также храниться на серверных компьютерах 140, совместно с другой информацией профилей/учетных записей пользователей).

[0051] DPA 110 может также передавать выбранную пользователем информацию 320 предметной области, намерения и/или позиции наряду с репликой 302 для сохранения в качестве отмеченных данных в базе 162 данных отмеченных данных. Отмеченные данные могут затем пересылаться в сервис 152 обучения классификаторов для обучения. Согласно иллюстративному варианту осуществления настоящего раскрытия, сервис 154 обнаружения фальсификации модели классификаторов может быть использован в сочетании с обучающим сервисом 152. Более конкретно, сервис 154 обнаружения фальсификации может содержать надлежащие логические средства, микросхемы, интерфейсы и/или код и может быть выполнен с возможностью предотвращать обучение/обновление классификаторов, если только определенное минимальное количество (порог) пользователей не запросили то же самое (или, по существу, аналогичное) обновление в отношении классификатора, связанного с такой же (или, по существу, аналогичной) пользовательской репликой. В этом отношении, автоматическое обновление классификаторов может быть предотвращено в случаях, когда пользователь пытается связать задачу (например, реплику для выражения голосовой команды) с предметной областью, намерением и/или позицией, с которыми большинство из остальных пользователей в системе такую реплику не связывают.

[0052] В предположении, что минимальное количество пользователей запросили одно и то же или, по существу, аналогичное обновление для классификатора, то тогда может быть осуществлено обучение/обновление (304) классификатора, как обсуждалось со ссылкой на Фиг.3A. Во время иллюстративного обучения 304 классификатора набор отмеченных данных может быть извлечен (например, 302 и 303); информация предметной области, намерения и/или позиции (например, 303) может быть использована (например, в качестве индекса) для доступа к LUCM 120/170 и извлечения классификатора, который связан с такими предметной областью, намерением и/или позицией. Обучающий сервис 152 может затем обновить классификатор так, чтобы он был связан с пользовательской репликой/командой (302), а также одним или более из предметной области, намерения и/или позиции, предоставленных администратором с использованием помечающего инструмента 150 разработчика. Обновленная LUCM 120 может быть использована и привязана к структуре определения агента для реализации в приложении.

[0053] Фиг.4A-4B иллюстрируют примерные пользовательские интерфейсы помечающего инструмента конечного пользователя, которые могут использоваться в соответствии с примерным вариантом осуществления настоящего раскрытия. Со ссылкой на Фиг.4A, пользовательский интерфейс под ссылочным номером 402 иллюстрирует исходный вид DPA 110, предлагающий пользователю подать задачу (например, голосовую команду). На 404, пользователь подает голосовую команду в 405. На 406, DPA 110 мог выполнить обработку (например, 202-214) и мог определить, что нет совпадающей пользовательской команды в структуре 114 определения агента или достаточно высокого показателя достоверности (240). Обработка затем продолжается (например, на 250) путем активации интерфейса EULT 118. На 407, DPA 110 уведомляет пользователя о том, что задача (например, голосовая команда) является неясной, и спрашивает, желает ли пользователь активировать "Помечающий Инструмент" (EULT 118). Пользователь затем активирует EULT 118 путем нажатия программной кнопки 408.

[0054] Со ссылкой на Фиг.4B, пользовательский интерфейс на 409 предлагает одну или более предметных областей, с тем чтобы пользователь мог выбрать предметную область, релевантную для его задачи (например, голосовой команды). Могут быть перечислены одна или более предметных областей (например, одна или более предметных областей, релевантных (например, потенциально подобных) задаче (или голосовой команде) либо все предметные области, доступные в системе). После того, как пользователь выберет предметную область, пользовательский интерфейс 410 может быть использован для перечисления одного или более намерений, связанных с выбранной предметной областью. В качестве альтернативы, все имеющиеся намерения могут быть приведены для выбора пользователем из них. После того, как пользователь выберет намерение, пользовательский интерфейс 412 может быть использован для перечисления одной или более позиций, связанных с выбранным намерением. В качестве альтернативы, все имеющиеся позиции могут быть приведены для выбора пользователем из них. После выбора позиции, информация 320 предметной области, намерения и/или позиции может дополнительно обрабатываться, как описано выше.

[0055] Фиг.5-7 являются диаграммами процессов, иллюстрирующими генерирование определения реагирующего агента согласно одному или более вариантам осуществления. Со ссылкой на Фиг.1-5, иллюстративный способ 500 может начаться этапом 502, когда первый пользовательский выбор (320) по меньшей мере одного из следующего: по меньшей мере одно намерение из множества имеющихся намерений и/или по меньшей мере одна позиция для этого по меньшей мере одного намерения может быть принят от по меньшей мере одного вычислительного устройства (например, 102) из множества вычислительных устройств, подключенных с возможностью осуществления связи к серверному компьютеру (например, 140). По меньшей мере одно намерение (намерение в пользовательском выборе 320) связано с меньшей мере одним действием, используемым для выполнения по меньшей мере одной функции категории функций для предметной области. По меньшей мере одна позиция (например, в пользовательском выборе 320) указывает значение, используемое для выполнения по меньшей мере одного действия. Первый пользовательский выбор (320) ассоциирован с цифровым голосовым вводом (например, репликой 302), принимаемым на по меньшей мере одном вычислительном устройстве (102). На этапе 504, по приему от по меньшей мере одного другого вычислительного устройства из множества вычислительных устройств множества последующих пользовательских выборов, которые идентичны первому пользовательскому выбору, набор отмеченных данных генерируется путем спаривания цифрового голосового вводa с первым пользовательским выбором. Например, после того, как 302 и 320 спарены для формирования набора отмеченных данных, обучающий сервис 152 может перейти к обучению соответствующего классификатора после того, как некоторое (пороговое) количество пользователей представит такие же (или, по существу, аналогичные) пользовательский выбор и реплику. На этапе 506 сервис 152 обучения модели классификаторов может выбрать классификатор понимания языка из множества имеющихся классификаторов понимания языка (например, из LUCM 170), связанного с одним или более определениями агента. Данный выбор может основываться, по меньшей мере, на по меньшей мере одном намерении. На этапе 508 обучающий сервис 152 может обновить выбранный классификатор понимания языка на основе сгенерированного набора отмеченных данных.

[0056] Со ссылкой на Фиг.1-3B и 6, иллюстративный способ 600 может начаться этапом 602, когда цифровой голосовой ввод (302) от пользователя вычислительного устройства (102) может быть принят через одни или более микрофонов (106) вычислительного устройства (102). На этапе 604 модуль 112 обработки естественного языка может выполнить обработку естественного языка с использованием цифрового голосового ввода, чтобы выявить пользовательский голосовой запрос.

[0057] На этапе 606, по установлению того, что пользовательский голосовой запрос не совпадает (например, 214) с по меньшей мере одной из множества заранее заданных голосовых команд в определении агента (например, 114) персонального цифрового секретаря (110), функционирующего в вычислительном устройстве, пользовательский выбор (320) по меньшей мере одного из следующего: намерение из множества наличествующих намерений и по меньшей мере одна позиция для этого по меньшей мере одного намерения могут быть приняты с использованием графического пользовательского интерфейса помечающего инструмента конечного пользователя (EULT) (118) вычислительного устройства (102). Намерение связано с по меньшей мере одним действием, используемым для выполнения по меньшей мере одной функции категории функций для предметной области, а по меньшей мере одна позиция указывает значение, используемое для выполнения этого по меньшей мере одного действия. На этапе 608 DPA 110 может сгенерировать набор отмеченных данных посредством спаривания пользовательского голосового запроса (320) и пользовательского выбора (302). На этапе 610 DPA 110 (или устройство 102) может выбрать классификатор понимания языка из множества имеющихся в наличии классификаторов понимания языка (например, C1, …, Cn в LUCM 120), связанного с определением агента (например, 114). Данный выбор классификатора может основываться, по меньшей мере, на по меньшей мере одном намерении, выбранном пользователем с использованием EULT 118. На этапе 612 DPA 110 (или устройство 102) может обновить выбранный классификатор понимания языка на основе сгенерированного набора отмеченных данных (например, на основе 302 и 320, создавая локальный классификатор 330).

[0058] Ссылаясь на Фиг.1-3B и 7, иллюстративный способ 700 может начинаться этапом 702, когда пользовательский запрос может быть выявлен на основе пользовательского ввода (302), принятого в компьютерном устройстве (102). Пользовательский запрос может быть принят через по меньшей мере одно из текстового ввода (204) и/или голосового ввода (202), каковой запрос - на предмет функциональных возможностей персонального цифрового секретаря (110), работающего в вычислительном устройстве. На этапе 704 DPA 110 (или устройство 102) может установить, что пользовательский запрос не согласуется с по меньшей мере одной из множества заранее заданных задач (например, голосовых команд) в определении (114) агента персонального цифрового секретаря (например, 214).

[0059] На этапе 706 DPA 110 (или устройство 102) может сгенерировать показатель достоверности (240) путем применения множества имеющихся в наличии классификаторов понимания языка (C1, …, Cn), связанного с определением агента, к пользовательскому запросу (208). На этапе 708, по установлению того, что показатель достоверности меньше порогового значения (250), DPA 110 принимает, используя графический пользовательский интерфейс помечающего инструмента конечного пользователя (EULT) (118) вычислительного устройства, пользовательский выбор (320) по меньшей мере одного из следующего: по меньшей мере одно намерение из множества наличествующих намерений и по меньшей мере одна позиция для этого по меньшей мере одного намерения. По меньшей мере намерение связано с по меньшей мере одним действием, используемым для выполнения по меньшей мере одной функции категории функций для предметной области, а по меньшей мере одна позиция показывает значение для выполнения этого по меньшей мере одного действия.

[0060] На этапе 710 DPA 110 (или устройство 102) генерирует набор отмеченных данных путем спаривания пользовательского голосового запроса (302) и пользовательского выбора (320). На этапе 712 DPA 110 (или устройство 102) выбирает классификатор понимания языка из множества имеющихся в наличии классификаторов понимания языка (LUCM 120), связанного с определением агента, каковой выбор основывается, по меньшей мере, на по меньшей мере одном намерении, выбранном пользователем. На этапе 714 DPA 110 (или устройство 102) генерирует обновленный классификатор понимания языка посредством обучения выбранного классификатора понимания языка с использованием сгенерированного набора отмеченных данных (например, генерирования локального классификатора 330).

[0061] Фиг.8 - блок-схема, иллюстрирующая примерное мобильное вычислительное устройство, в сочетании с которым описанные здесь инновации могут быть реализованы. Мобильное устройство 800 включает в себя разнообразие необязательных аппаратных и программных компонентов, обобщенно обозначенных ссылочным номером 802. В общем, компонент 802 в мобильном устройстве может сообщаться с любым другим компонентом устройства, хотя, для простоты иллюстрации, не все соединения показаны. Мобильное устройство 800 может быть любым из разнообразия вычислительных устройств (например, сотовым телефоном, смартфоном, наладонным устройством, персональным цифровым информационным устройством (PDA) и т.д.) и может позволять беспроводную двустороннюю связь с одной или более сетями 804 мобильной связи, такими как Wi-Fi, сотовая или спутниковая сеть.

[0062] Проиллюстрированное мобильное устройство 800 может включать в себя контроллер или процессор 810 (например, процессор сигналов, микропроцессор, микроконтроллер, специализированную интегральную схему (ASIC) или иную логическую схему управления и обработки) для выполнения таких задач, как кодирование сигналов, обработка данных, обработка входных/выходных данных, управление мощностью и/или другие функции. Операционная система 812 управляет распределением и использованием компонентов 802 и обеспечивает поддержку для одной или более прикладных программ 811. Операционная система 812 может включать в себя помечающий инструмент 813 конечного пользователя, который может обладать функциональными возможностями, аналогичными функциональным возможностям EULT 118, описанным со ссылкой на Фиг.1-7.

[0063] Проиллюстрированное мобильное устройство 800 может включать в себя память 820. Память 820 может включать в себя несъемную память 822 и/или съемную память 824. Несъемная память 822 может включать в себя ОЗУ, ПЗУ, флэш-память, жесткий диск или иные запоминающие устройства широко известных технологий. Съемная память 824 может включать в себя флэш-память или карту модуля идентификации абонента (SIM), которая широко известна в системах GSM (Глобальной системы мобильной связи), или иные запоминающие устройства широко известных технологий, например, ʺсмарт-картыʺ. Память 820 может использоваться для хранения данных и/или кода для исполнения операционной системы 812 и прикладных программ 811. Примерные данные могут включать в себя web-страницы, текст, изображения, звуковые файлы, видеоданные или иные наборы данных для отправки в и/или приема от одного или более сетевых серверов или других устройств через одну или более проводных или беспроводных сетей. Память 820 может использоваться для хранения идентификатора абонента, такого как международный идентификатор абонента мобильной связи (IMSI), и идентификатора оборудования, такого как международный идентификатор мобильного устройства (IMEI). Такие идентификаторы могут передаваться на сетевой сервер для идентификации пользователей и оборудования.

[0064] Мобильное устройство 800 может поддерживать одно или более устройств 830 ввода, таких как сенсорный экран 832 (например, приспособленный для захвата вводов касаниями пальцами или вводов нажатиями клавиш для виртуальной клавиатуры или клавишной панели), микрофон 834 (например, приспособленный для захвата голосового ввода), камера 836 (например, приспособленная для захвата неподвижных изображений и/или видео изображений), физическая клавиатура 838, кнопки и/или трекбол 840, и одно или более устройств 850 вывода, таких как громкоговорители 852 и дисплей 854. Другие возможные устройства вывода (не показаны) могут включать в себя пьезоэлектрические или тактильные устройства вывода. Некоторые устройства могут служить более чем одной функции ввода/вывода. Например, сенсорный экран 832 и дисплей 854 могут быть объединены в одно устройство ввода/вывода. Мобильное устройство 800 может обеспечивать один или более естественных пользовательских интерфейсов (NUI). Например, операционная система 821 или приложения 811 могут содержать программное обеспечение обработки мультимедиа, такое как аудио/видео проигрыватель.

[0065] Беспроводной модем 860 может быть подключен к одной или более антеннам (не показаны) и может поддерживать двустороннюю связь между процессором 810 и внешними устройствами, что должно быть ясно из уровня техники. Модем 860 показан обобщенно и может включать в себя сотовый модем для осуществления связи на дальние расстояния с сетью 804 мобильной связи, модем 864, совместимый с Bluetooth, или модем 862, совместимый с Wi-Fi для осуществления связи на короткие расстояния с внешним устройством с оборудованием Bluetooth или локальной беспроводной сетью передачи данных или маршрутизатором. Беспроводной модем 860 в типичном случае сконфигурирован для осуществления связи с одной или более сотовыми сетями, такими как сеть GSM, для обмена данными и голосовой связи внутри одной сотовой сети, между сотовыми сетями или между мобильным устройством и коммутируемой телефонной сетью общего пользования (PSTN).

[0066] Мобильное устройство может дополнительно включать в себя по меньшей мере один порт 880 ввода/вывода, источник 2782 питания, приемник спутниковой 2784 системы навигации (GPS), датчики 886, такие как акселерометр, гироскоп или инфракрасный датчик близости для обнаружения ориентации и движения устройства 800 и для приема жестовых команд в качестве ввода, приемопередатчик 888 (для беспроводной передачи аналоговых или цифровых сигналов) и/или физический разъем 890, который может быть портом USB, портом IEEE 1394 (Fire Wire) и/или портом RS-232. Проиллюстрированные компоненты 802 не являются необходимыми или исчерпывающими, и некоторые компоненты могут быть удалены, а другие компоненты могут быть добавлены.

[0067] Мобильное устройство может определять данные местоположения, которые указывают местоположение мобильного устройства, основываясь на информации, принимаемой через приемник 884 спутниковой навигационной системы (например, GPS-приемник). В качестве альтернативы, мобильное устройство может определять данные местоположения, которые указывают местоположение мобильного устройства, иным образом. Например, местоположение мобильного устройства может быть определено посредством триангуляции между сотовыми вышками сотовой сети. Либо, местоположение мобильного устройства может быть определено на основе известных местоположений маршрутизаторов Wi-Fi вблизи мобильного устройства. Данные местоположения могут обновляться каждую секунду или на некоей иной основе, в зависимости от реализации и/или пользовательских настроек. Независимо от источника данных местоположения, мобильное устройство может подавать данные местоположения в средство навигации по карте для использовании при навигации по карте.

[0068] В качестве клиентского вычислительного устройства, мобильное устройство 800 может посылать запросы в серверное вычислительное устройство (например, поисковый сервер, сервер-маршрутизатор и т.п.) и принимать картографические изображения, расстояния, направления, прочие картографические данные, результаты поиска (например, достопримечательности (POI) на основе поиска POI в пределах намеченной территории поиска), либо иные данные в ответ с серверного вычислительного устройства.

[0069] Мобильное устройство 800 может быть частью окружения реализации, в котором различные типы сервисов (например, вычислительные сервисы) предоставляются вычислительным "облаком". Например, облако может содержать совокупность вычислительных устройств, которые могут располагаться централизованно или распределенным образом, которые предоставляют облачные услуги различным типам пользователей и устройств, подсоединенных через сеть, такую как Интернет. Некоторые задачи (например, обработка пользовательского ввода и представление пользовательского интерфейса) могут выполняться на локальных вычислительных устройствах (например, подсоединенных устройствах), тогда как другие задачи (например, хранение данных, которые должны быть использованы в последующей обработке, взвешивании данных и ранжировании данных) могут выполняться в облаке.

[0070] Хотя Фиг.8 иллюстрирует мобильное устройство 800, в более общем смысле, описанные здесь инновации могут быть реализованы с помощью устройств, имеющих другие возможности экрана и форм-факторы устройства, таких как компьютер-десктоп, экран телевизора или устройство, подключенное к телевизору (например, приставка или игровая консоль). Услуги могут предоставляться посредством облака через поставщиков (провайдеров) услуг или через других поставщиков онлайновых услуг. Кроме того, поскольку описанные здесь технологии могут относиться к потоковой передаче звука, экран устройства может не требоваться или не использоваться (дисплей может использоваться в случаях, когда аудио/видео контент передается потоком в мультимедийное оконечное устройство с функциональными возможностями воспроизведения видео).

[0071] Фиг.9 - схема иллюстративной вычислительной системы, в которой некоторые описанные варианты осуществления могут быть реализованы. Вычислительная система 900 не подразумевается налагающей какое-либо ограничение в отношении объема использования или функциональных возможностей, поскольку предложенные инновации могут быть реализованы в разнообразных вычислительных системах общего или специального назначения.

[0072] Со ссылкой на Фиг.9, вычислительная система 900 включает в себя одно или более процессорных устройств 910, 915 и память 920, 925. На Фиг.9 эта базовая конфигурация 930 заключена в пунктирную линию. Процессорные устройства 910, 915 исполняют машиноисполняемые инструкции. Процессорное устройство может представлять собой центральное процессорное устройство (CPU) общего назначения, процессор в специализированной интегральной микросхеме (ASIC) или любой другой тип процессора. В многопроцессорной системе множественные процессоры исполняют машиноисполняемые инструкции для повышения вычислительной мощности. Например, Фиг.9 показывает центральное процессорное устройство 910, а также графическое процессорное устройство или сопроцессор 915. Физическая память 920, 925 может быть энергозависимой памятью (например, регистры, кэш, ОЗУ), энергонезависимой памятью (например, ПЗУ, EEPROM, флэш-памятью и т.п.) или некоторой их комбинацией, которые являются доступными для процессорного устройства (устройств). В памяти 920, 925 хранится программное обеспечение 980, реализующее одну или более инноваций, описанных в настоящем документе, в форме машиноисполняемых инструкций, подходящих для исполнения процессорным устройством (устройствами).

[0073] Вычислительная система может также иметь дополнительные признаки. Например, вычислительная система 900 включает в себя хранилище 940, одно или более устройств 950 ввода, одно или более устройств 960 вывода и одно или более коммуникационных соединений 970. Механизм межсоединения (не показан), такой как шина, контроллер или сеть, соединяет компоненты вычислительной системы 900 между собой. В типичном случае, программное обеспечение операционной системы (не показано) обеспечивает рабочую среду для другого программного обеспечения, исполняющегося в вычислительной системе 900, и координирует действия компонентов вычислительной системы 900.

[0074] Физическое хранилище 940 может быть съемным или несъемным и включает в себя магнитные диски, магнитные ленты или кассеты, CD-ROM, DVD или любой другой носитель, который может использоваться для хранения информации и к которому может осуществляться доступ в пределах вычислительной системы 900. В хранилище 940 хранятся инструкции для программного обеспечения 980, реализующего одну или более инноваций, описанных в настоящем документе.

[0075] Устройство(а) 950 ввода может быть сенсорным устройством ввода, таки как клавиатура, мышь, перо или трекбол, устройством голосового ввода, сканирующим устройством или другим устройством, которое обеспечивает ввод в вычислительную систему 900. Для видеокодирования устройство(а) 950 ввода может представлять собой камеру, видеокарту, карту ТВ тюнера или аналогичное устройство, которым принимается видео ввод в аналоговой или цифровой форме, либо привод CD-ROM или CD-RW, который считывает видео сэмплы в вычислительную систему 900. Устройство(а) 960 вывода может быть дисплеем, принтером, громкоговорителем, пишущим CD-приводом или иным устройством, которым обеспечивается вывод из вычислительной системы 900.

[0076] Коммуникационное соединение(я) 970 обеспечивают связь по среде связи с другим вычислительным субъектом. Среда связи передает информацию, такую как машиноисполняемые инструкции, аудио или видео входные или выходные данные в модулированном информационном сигнале. Модулированный информационный сигнал представляет собой сигнал, одна или более характеристик которого устанавливаются или изменяются таким образом, чтобы кодировать информацию в этом сигнале. В качестве примера, но не ограничения, среды связи могут использовать электрический, оптический, инфракрасный или другой носитель.

[0077] Предложенные инновации могут быть описаны в общем контексте машиноисполняемых инструкций, таких как те, что включены в программные модули, исполняющиеся в вычислительной системе на целевом реальном или виртуальном процессоре. В общем, программные модули включают в себя процедуры, программы, библиотеки, объекты, классы, компоненты, структуры данных и т.п., которые выполняют конкретные задачи или реализуют конкретные абстрактные типы данных. Функциональные возможности программных модулей могут комбинироваться или разделяться между программными модулями, как необходимо в различных вариантах осуществления. Машиноисполняемые инструкции для программных модулей могут исполняться в локальной или распределенной вычислительной системы.

[0078] Термины "система" и "устройство" используются в настоящем документе взаимозаменяемо. Ни один из этих терминов не подразумевает какое-либо ограничение касаемо типа вычислительной системы или вычислительного устройства, если контекстом четко не указывается обратное. В общем, вычислительная система или вычислительное устройство могут быть локальными или распределенными и могут включать в себя любую комбинацию аппаратных средств специального назначения и/или аппаратных средств общего назначения с программным обеспечением, реализующим описанные здесь функциональные возможности.

[0079] Фиг.10 - примерное окружение облачных вычислений, которое может быть использовано в сочетании с технологиями, описанными в настоящем документе. Окружение 1000 облачных вычислений содержит сервисы 1010 облачных вычислений. Сервисы 1010 облачных вычислений могут содержать различные типы ресурсов облачных вычислений, такие как компьютерные серверы, репозитории для хранения данных, сетевые ресурсы и т.д. Сервисы 1010 облачных вычислений могут централизованно размещенными (например, предоставляться центром хранения и обработки данных (дата-центром) предприятия или организации) или распределенными (например, предоставляться посредством различных вычислительных ресурсов, размещенных в разных местоположениях, например, разными дата-центрами, и/или размещенных в разных городах или странах). Помимо этого, сервис 1010 облачных вычислений может реализовывать EULT 118 и другие описанные здесь функциональные возможности, относящиеся к обновлению моделей классификаторов понимания языка.

[0080] Сервисы 1010 облачных вычислений используются различными типами вычислительных устройств (например, клиентскими вычислительными устройствами), такими как вычислительные устройства 1020, 1022 и 1024. Например, вычислительные устройства (например, 1020, 1022 и 1024) могут представлять собой компьютеры (например, компьютеры-десктопы или компьютеры-лэптопы), мобильные устройства (например, планшетные компьютеры или смартфоны) или другие типы вычислительных устройств. Например, вычислительные устройства (например, 1020, 1022 и 1024) могут использовать сервисы 1010 облачных вычислений для выполнения вычислительных операций (например, обработки данных, хранения данных, генерирования и редактирование определения реагирующего агента и т.п.).

[0081] В целях ясности изложения, в подробном описании используются такие термины, как "определять" и "использовать", чтобы описывать компьютерные операции в вычислительной системе. Эти термины являются высокоуровневыми абстракциями для операций, выполняемых компьютером, и их не следует путать с действиями, выполняемыми человеком. Фактические компьютерные операции, соответствующие этим терминам, варьируются в зависимости от реализации.

[0082] Хотя операции некоторых способов описаны в конкретном, последовательном порядке для удобства изложения, следует понимать, что этот способ описания охватывает перестановку, если конкретный порядок не требуется специальным языком, как изложено ниже. Например, операции, описанные последовательно, могут в некоторых случаях быть переупорядочены или выполняться одновременно. Более того, в целях простоты, приложенные фигуры чертежей могут не показывать различные пути, которыми раскрытые способы могут быть использованы с другими способами.

[0083] Любые из раскрытых способов могут быть реализованы в виде машиноисполняемых инструкций или компьютерного программного продукта, сохраненного на одном или более машиночитаемых носителях информации, и исполняться в вычислительном устройстве (например, любом имеющемся в наличии вычислительном устройстве, включая смартфоны или другие мобильные устройства, которые включают в себя компьютерные аппаратные средства). Машиночитаемые носители информации представляют собой любые имеющиеся в наличии физические носители, к которым может быть осуществлен доступ в пределах вычислительного окружения (например, один или более оптических мультимедийных дисков, таких как DVD или CD, энергозависимые компоненты памяти (такие как DRAM или SRAM) или энергонезависимые компоненты памяти (такие как флэш-память или накопители на жестких дисках)). В качестве примера и со ссылкой на Фиг.9, машиночитаемые носители информации включают в себя память 920 и 925 и хранилище 940. Термин "машиночитаемые носители информации" не включает в себя сигналы и несущие волны. Кроме того, термин "машиночитаемые носители информации" не включает в себя коммуникационные соединения (например, 970).

[0084] Любые из машиноисполняемых инструкций для реализации раскрытых технологий, а также любые данные, создаваемые и используемые в течение реализации раскрытых вариантов осуществления, могут быть сохранены на одном или более машиночитаемых носителях. Машиноисполняемые инструкции могут быть частью, например, специализированного программного приложения или программного приложения, к которому осуществляется доступ или которое скачивается через web-браузер или другое программное приложение (такое как приложение удаленных вычислений). Такое программное обеспечение может исполняться, например, на одиночном локальном компьютере (например, любом подходящем компьютере, доступном на рынке) или в сетевом окружении (например, через Интернет, глобальную сеть, локальную сеть, клиент-серверную сеть (такую как сеть облачных вычислений) или другую такую сеть) с использованием одного или более сетевых компьютеров.

[0085] В целях ясности, описаны лишь выбранные аспекты программных реализаций. Прочие подробности, которые широко известны в технике, опущены. Например, следует понимать, что раскрытая технология не ограничивается каким-либо конкретным компьютерным языком или программой. Например, раскрытая технология может быть реализована посредством программного обеспечения, написанного на C++, Java, Perl, JavaScript, Adobe Flash или любом другом подходящем языке программирования. Аналогично, раскрытая технология не ограничивается каким-либо конкретным компьютером или типом аппаратных средств. Определенные детали подходящих компьютеров и аппаратных средств широко известны и не требуют подробного пояснения в данном раскрытии.

[0086] Помимо этого, любые из вариантов осуществления, основывающихся на программном обеспечении (включая, например, машиноисполняемые инструкции для предписания компьютеру выполнять любые из раскрытых способов), могут выгружаться, скачиваться или к ним может осуществляться удаленный доступ через подходящие средства связи. Такие подходящие средства связи включают в себя, например, Интернет, Всемирную паутину (World Wide Web), интранет, программные приложения, кабель (включая волоконно-оптический кабель), магнитную связь, электромагнитную связь (включая радиочастотную, микроволновую и инфракрасную связь), электрическую связь или другие такие средства связи.

[0087] Раскрытые способы, устройства и системы не следует трактовать как ограничивающие каким-либо образом. Вместо этого, настоящее раскрытие направлено на все новые и неочевидные признаки и аспекты различных раскрытых вариантов осуществления, поодиночке и в различных комбинациях и подкомбинациях друг с другом. Раскрытые способы, устройства и системы не ограничены каким-либо конкретным аспектом или признаком или их комбинацией, также раскрытые варианты осуществления не требуют, чтобы какие-либо одно или более конкретных преимуществ присутствовали или проблемы были решены.

[0088] Технологии согласно любому примеру могут быть скомбинированы с технологиями, описанными в каких-либо одном или более из других примеров. В виду многих вариантов осуществления, к которым могут быть применены принципы раскрытой технологии, следует осознавать, что проиллюстрированные варианты осуществления являются примерами раскрытой технологии и их не следует рассматривать в качестве ограничения объема раскрытой технологии. Скорее, объем раскрытой технологии включает в себя то, что охватывается существом и объемом, определяемым нижеследующей формулой изобретения.

Реферат

Группа изобретений относится к средствам обновления моделей классификаторов понимания языка. Технический результат – повышение точности распознавания команд пользователя. Для этого предложен способ обновления моделей классификаторов понимания языка, в котором принимают через микрофон вычислительного устройства цифровой голосовой ввод от пользователя вычислительного устройства. Обработку естественного языка с использованием голосового ввода используют для выявления пользовательского голосового запроса. По установлению того, что пользовательский голосовой запрос не согласуется с одной из множества заданных голосовых команд в определении схемы персонального цифрового секретаря, используют GUI помечающего инструмента для приема пользовательского выбора: по меньшей мере одно намерение из множества имеющихся в наличии намерений и/или по меньшей мере одна позиция для этого по меньшей мере одного намерения. Набор отмеченных данных генерируется посредством спаривания пользовательского голосового запроса и пользовательского выбора и используется для обновления классификатора понимания языка. 3 н. и 12 з.п. ф-лы, 12 ил.

Формула

1. Серверный компьютер, содержащий:
процессорное устройство и
память, подключенную к процессорному устройству,
при этом серверный компьютер сконфигурирован выполнять операции для обновления моделей классификаторов понимания языка, причем операции содержат:
прием от по меньшей мере одного вычислительного устройства из множества вычислительных устройств, подключенных с возможностью осуществления связи к серверному компьютеру, первого пользовательского выбора по меньшей мере одного из следующего: по меньшей мере одно намерение из множества имеющихся в наличии намерений и/или по меньшей мере одна позиция для этого по меньшей мере одного намерения, при этом:
упомянутое по меньшей мере одно намерение связано с по меньшей мере одним действием, используемым для выполнения по меньшей мере одной функции категории функций для предметной области,
упомянутая по меньшей мере одна позиция указывает значение, используемое для выполнения этого по меньшей мере одного действия, и
первый пользовательский выбор соответствует цифровому голосовому вводу, принятому на упомянутом по меньшей мере одном вычислительном устройстве;
по приему от по меньшей мере одного другого вычислительного устройства из упомянутого множества вычислительных устройств множественных последующих пользовательских выборов, соответствующих множественным последующим цифровым голосовым вводам, причем множественные последующие пользовательские выборы идентичны первому пользовательскому выбору, а множественные последующие цифровые голосовые вводы, по существу, аналогичны упомянутому цифровому голосовому вводу:
генерирование набора отмеченных данных посредством спаривания цифрового голосового ввода с первым пользовательским выбором;
выбор классификатора понимания языка из множества имеющихся в наличии классификаторов понимания языка, ассоциированных с одним или более определениями агента, каждое из которых соответствует функциональным возможностям устройства, причем данный выбор основывается, по меньшей мере, на упомянутом по меньшей мере одном намерении; и
обновление выбранного классификатора понимания языка на основе сгенерированного набора отмеченных данных.
2. Серверный компьютер по п.1, в котором операции дополнительно содержат:
установление количества множественных последующих пользовательских выборов и
автоматическое обновление выбранного классификатора понимания языка на основе сгенерированного набора отмеченных данных, когда данное количество множественных последующих пользовательских выборов больше первого порогового значения.
3. Серверный компьютер по п.1, в котором операции дополнительно содержат:
прием цифрового голосового ввода от упомянутого по меньшей мере одного вычислительного устройства;
выполнение обработки естественного языка с использованием цифрового голосового ввода, чтобы выявить пользовательский голосовой запрос;
сохранение одного или обоих из цифрового голосового ввода и пользовательского голосового запроса в базе данных реплик;
извлечение одного или обоих из цифрового голосового ввода и пользовательского голосового запроса из базы данных реплик;
генерирование набора отмеченных данных посредством спаривания первого пользовательского выбора с одним или обоими из цифрового голосового ввода и пользовательского голосового запроса и
сохранение сгенерированного набора отмеченных данных в базе данных отмеченных данных.
4. Серверный компьютер по п.1, в котором операции дополнительно содержат:
прием множественных последующих цифровых голосовых вводов, соответствующих множественным последующим пользовательским выборам; и
установление количества множественных последующих пользовательских выборов, которые содержат по меньшей мере одно намерение и по меньшей мере одну позицию, которые отличны от по меньшей мере одного намерения и по меньшей мере одной позиции, соответствующих первому пользовательскому выбору.
5. Серверный компьютер по п.4, в котором операции дополнительно содержат:
генерирование запроса ручного обновления выбранного классификатора понимания языка администратором серверного компьютера, когда установленное количество множественных последующих пользовательских выборов превышает второе пороговое значение;
прием, в ответ на запрос ручного обновления, ввода, которым выбираются по меньшей мере одно намерение и по меньшей мере одна позиция, соответствующие первому пользовательскому выбору, или по меньшей мере одно намерение и по меньшей мере одна позиция, соответствующие упомянутому множеству последующих пользовательских выборов; и
прием ввода, обновляющего выбранный классификатор понимания языка на основе выбранных по меньшей мере одного намерения и по меньшей мере одной позиции.
6. Способ обновления моделей классификаторов понимания языка, содержащий этапы, на которых:
принимают через один или более микрофонов вычислительного устройства цифровой голосовой ввод от пользователя вычислительного устройства;
выполняют обработку естественного языка с использованием цифрового голосового ввода для выявления пользовательского голосового запроса;
по установлению того, что пользовательский голосовой запрос не согласуется с по меньшей мере одной из множества заранее заданных задач в определении агента персонального цифрового секретаря, функционирующего на вычислительном устройстве:
принимают, используя графический пользовательский интерфейс помечающего инструмента конечного пользователя (EULT) вычислительного устройства, пользовательский выбор по меньшей мере одного из следующего: намерение из множества имеющихся в наличии намерений и по меньшей мере одна позиция для этого намерения, при этом:
намерение связано с по меньшей одним действием, используемым для выполнения по меньшей мере одной функции категории функций для предметной области, и
упомянутая по меньшей мере одна позиция указывает значение, используемое для выполнения этого по меньшей мере одного действия;
генерируют набор отмеченных данных посредством спаривания пользовательского голосового запроса и пользовательского выбора;
выбирают классификатор понимания языка из множества имеющихся в наличии классификаторов понимания языка, ассоциированных с определением агента, каковой выбор основывается, по меньшей мере, на намерении, выбранном пользователем; и
обновляют выбранный классификатор понимания языка на основе сгенерированного набора отмеченных данных, причем данное обновление выбранного классификатора понимания языка инициируется только после того, как ряд пользователей сделают, по существу, аналогичный пользовательский выбор.
7. Способ по п.6, в котором упомянутое множество имеющихся в наличии классификаторов понимания языка, ассоциированных с определением агента, хранится в локальном хранилище в вычислительном устройстве, при этом способ дополнительно содержит этапы, на которых:
связывают обновленный классификатор понимания языка с профилем пользователя на вычислительном устройстве;
сохраняют обновленный классификатор понимания языка в локальном хранилище; и
обозначают обновленный классификатор понимания языка как общий ресурс, который может совместно использоваться между персональным цифровым секретарем и по меньшей мере одним сторонним приложением, функционирующим на вычислительном устройстве.
8. Способ по п.6, в котором упомянутое обновление содержит этап, на котором заменяют связку выбранного классификатора понимания языка с по меньшей мере одним из предыдущих намерения и/или позиции на новую связку с по меньшей мере одним из упомянутых намерения и/или по меньшей мере одной позиции, соответствующих пользовательскому выбору.
9. Способ по п.8, дополнительно содержащий этап, на котором создают связку выбранного классификатора понимания языка с обоими из цифрового голосового ввода и пользовательского голосового запроса.
10. Способ по п.6, в котором пользовательский выбор содержит упомянутое намерение, при этом способ дополнительно содержит этап, на котором выбирают упомянутую по меньшей мере одну позицию автоматически, основываясь на упомянутом намерении и пользовательском голосовом запросе.
11. Способ по п.6, в котором определение агента содержит по меньшей мере одно из схемы определения голосовой команды (VCD) и схемы определения реагирующего агента (RAD), ассоциированной с персональным цифровым секретарем, которая определяет реагирующего агента, представляющего собой структуру данных/команд, используемую персональным цифровым секретарем для реализации одного или более диалогов, связанных с функциональными возможностями устройства.
12. Машиночитаемый носитель, на котором сохранены машиноисполняемые инструкции для предписания вычислительному устройству выполнять операции для обновления моделей классификаторов понимания языка, каковые операции содержат:
выявление пользовательского запроса на основе пользовательского ввода, принятого на вычислительном устройстве через по меньшей мере одно из текстового ввода и голосового ввода, каковой запрос - на предмет функциональных возможностей персонального цифрового секретаря, функционирующего в вычислительном устройстве;
установление того, что пользовательский запрос не согласуется с по меньшей мере одной из множества заранее заданных голосовых команд в определении агента персонального цифрового секретаря;
генерирование показателя достоверности путем применения одного из множества имеющихся в наличии классификаторов понимания языка, ассоциированных с определением агента, к пользовательскому запросу;
по установлению того, что показатель достоверности меньше порогового значения:
прием, с использованием графического пользовательского интерфейса помечающего инструмента конечного пользователя (EULT) вычислительного устройства, пользовательского выбора по меньшей мере одного из следующего: по меньшей мере одно намерение из множества имеющихся в наличии намерений и по меньшей мере одна позиция для этого по меньшей мере одного намерения, при этом:
упомянутое по меньшей мере одно намерение связано с по меньшей мере одним действием, используемым для выполнения по меньшей мере одной функции категории функций для предметной области, и
упомянутая по меньшей мере одна позиция указывает значение, используемое для выполнения этого по меньшей мере одного действия;
генерирование набора отмеченных данных путем спаривания пользовательского голосового запроса и пользовательского выбора;
выбор классификатора понимания языка из множества имеющихся в наличии классификаторов понимания языка, ассоциированных с определением агента, каковой выбор основывается, по меньшей мере, на упомянутом по меньшей мере одном намерении, выбранном пользователем; и
генерирование обновленного классификатора понимания языка путем обучения выбранного классификатора понимания языка с использованием сгенерированного набора отмеченных данных, причем данное обновление выбранного классификатора понимания языка инициируется только после того, как ряд пользователей сделают, по существу, аналогичный пользовательский выбор.
13. Машиночитаемый носитель по п.12, в котором операции дополнительно содержат прием, с использованием графического пользовательского интерфейса помечающего инструмента конечного пользователя (EULT) вычислительного устройства, выбора предметной области, связанной с упомянутым по меньшей мере одним намерением.
14. Машиночитаемый носитель по п.12, в котором операции дополнительно содержат, во время упомянутого обучения, связывание выбранного классификатора понимания языка с упомянутыми по меньшей мере одним намерением и по меньшей мере одной позицией, соответствующими пользовательскому выбору.
15. Машиночитаемый носитель по п.12, при этом определение агента содержит по меньшей мере одно из схемы определения голосовой команды (VCD) и схемы определения реагирующего агента (RAD), ассоциированной с персональным цифровым секретарем, которая определяет реагирующего агента, представляющего собой структуру данных/команд, используемую персональным цифровым секретарем для реализации одного или более диалогов, связанных с функциональными возможностями устройства.

Авторы

Патентообладатели

Заявители

СПК: G06F3/167 G10L15/005 G10L15/18 G10L15/1822 G10L15/22

Публикация: 2019-09-06

Дата подачи заявки: 2016-01-15

0
0
0
0
Невозможно загрузить содержимое всплывающей подсказки.
Поиск по товарам