ПРЕДПОСЫЛКИ ИЗОБРЕТЕНИЯ
[1] Распространение смартфонов и других устройств сделало диалоговые системы целенаправленного понимания языка, такие как виртуальные персональные помощники, широко доступными для потребителей. Диалоговые системы целенаправленного понимания языка обеспечивают глубокое понимание пользовательских вводов в ограниченном количестве выбранных предметных областей (т.е. доменов задач). Вне этих доменов задач, диалоговые системы целенаправленного понимания языка возвращаются к поверхностному пониманию или обобщенным методам обработки пользовательского ввода. Обычная альтернатива состоит в обработке внедоменного пользовательского ввода как объекта общего веб-поиска.
[2] Пользователям не всегда известны возможности и ограничения диалоговых систем целенаправленного понимания языка. Например, виртуальный персональный помощник на смартфоне может ограничиваться вызовом, службой коротких сообщений (SMS), электронной почтой, календарем, будильником, напоминанием, блокнотом, погодой, и помещает домены задач, позволяющие виртуальному персональному помощнику помогать пользователям при выполнении таких задач, как установление вызовов, отправка текстовых сообщений и сообщений электронной почты, настройка будильников и напоминаний, создание примечаний и календарных записей и получение информации о погоде или местах. Поскольку смартфон способен к другим действиям (например, воспроизведению музыки), пользователи могут предположить, что виртуальный персональный помощник может помогать также в этих других действиях. Например, пользователь может запросить у виртуального персонального помощника ʺplay a song by Aerosmithʺ, ожидая услышать подборку из музыкальной библиотеки пользователя. В отсутствие музыкального домена задач запрос пользователя не будет понятен. Вместо прослушивания запрошенной музыки, пользователь получает список веб-страниц. Пользователь может пытаться повторить и/или перефразировать запрос, не понимая, что виртуальный персональный помощник не знает, как обрабатывать музыкальные задачи. В то же время, пользователи понимают это альтернативное поведение виртуального персонального помощника и обычно используют простые ключевые слова (например, ʺминимальная заработная платаʺ), ожидая получить результаты альтернативного веб-поиска.
[3] С точки зрения виртуального персонального помощника, ни запрос воспроизводить музыку, ни ключевые слова не покрываются каким-либо из доменов задач, поэтому они обрабатываются как запросы веб-поиска; однако ощущения пользователя весьма разнятся. С точки зрения пользователя, получение результатов веб-поиска в ответ на запрос воспроизводить музыку разочаровывает, поскольку не отвечает ожиданиям пользователя. С другой стороны, результаты веб-поиска удовлетворительны, когда пользователь ожидает именно их. Техническая проблема состоит в том, чтобы отличать запросы, адресованные диалоговой системе целенаправленного понимания языка, но не покрытые каким-либо из ее доменов задач, которые предназначены для достижения результата, отличного от возвращения результатов веб-поиска, от запросов веб-поиска, когда веб-поиск уместен. Настоящее изобретение выполнено, исходя из этих и других соображений. Хотя рассмотрены относительно частные проблемы, следует понимать, что раскрытые здесь аспекты не подлежат ограничению решением специфических проблем, указанных в предпосылках изобретения.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
[4] Эта сущность изобретения призвана представлять в упрощенной форме основные принципы, которые дополнительно описаны в нижеследующем разделе "Подробное описание". Эта сущность изобретения не призвана идентифицировать ключевые признаки или существенные признаки заявленного изобретения, и также не подлежит использованию для помощи в определении объема заявленного изобретения.
[5] Аспекты системы обнаружения орфанных высказываний и соответствующий способ включают в себя блок обнаружения орфанов, который обрабатывает внедоменные высказывания из диалоговой системы целенаправленного понимания языка для определения, выражает ли внедоменное высказывание конкретную цель побудить диалоговую систему целенаправленного понимания языка совершать некоторое действие, когда маловероятно, что альтернативную обработку, например, осуществление общего веб-поиска, можно выполнить посредством веб-поисков. Диалоговая система, включающая в себя блок обнаружения орфанов, принимает одно или более высказываний для обработки. Являются ли высказывания внутридоменными или внедоменными зависит от того, покрывается ли высказывание каким-либо из доменов задач компонента целенаправленного понимания, использующего доменный классификатор. Из высказываний извлекаются признаки для использования в классификации и понимании высказываний. Извлечение признаков может включать в себя одну или более из операции лексического анализа, операции тегирования частей речи, операции синтаксического анализа и операции семантического анализа.
[6] Определение орфана на основании извлеченных признаков указывает, является ли внедоменное высказывание орфаном или нет. Один используемый лексический признак представляет собой просто n-граммы слов из высказывания. Поскольку блок обнаружения орфанов в большей степени опирается на структуру, чем на содержание, классификатор орфанов также может использовать синтаксические признаки. Основными синтаксическими признаками для использования в определении орфана является n-граммы тегов частей речи. В модели классификатора орфанов полезны также семантические признаки. Проверка на наличие сказуемого и набора аргументов предлагает семантические признаки для классификации орфанов с высокой точностью. Орфаны не обрабатываются так же, как запросы общего веб-поиска. Это обеспечивает улучшенные ощущения пользователя. Ощущения пользователя улучшаются не потому, что диалоговая система способна удовлетворять запросу пользователя, но потому, что диалоговая система обеспечивает содержательный ответ, даже когда запросу пользователя не удается удовлетворить.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[7] Дополнительные признаки, аспекты и преимущества настоящего изобретения можно лучше понять со ссылкой на следующие чертежи, элементы которых не выполнены в масштабе для более отчетливой демонстрации деталей, и в которых аналогичные ссылочные позиции указывают аналогичные элементы на нескольких видах:
фиг. 1 - системная схема, демонстрирующая аспекты диалоговой системы целенаправленного понимания языка, использующей блок обнаружения орфанов;
фиг. 2 - обобщенная блок-схема операций, демонстрирующая аспекты способа обнаружения и обработки орфанов;
фиг. 3 демонстрирует пример группового анализа синтаксической структуры;
фиг. 4 демонстрирует пример семантического анализа, применяемый к предложению, синтаксически проанализированному на фиг. 3;
фиг. 5 - обобщенная блок-схема операций, демонстрирующая аспекты способа неконтролируемого обучения семантических моделей для нового (т.е. непокрытого) домена задач с использованием орфанов в сценарии оффлайнового использования;
фиг. 6 - блок-схема, демонстрирующая физические компоненты вычислительного устройства, пригодного для практического применения аспектов настоящего изобретения;
фиг. 7A демонстрирует мобильное вычислительное устройство, пригодное для практического применения аспектов настоящего изобретения;
фиг. 7B - блок-схема, демонстрирующая архитектуру мобильного вычислительного устройства, пригодного для практического применения аспектов настоящего изобретения; и
фиг. 8 - упрощенная блок-схема распределенной вычислительной системы, которая позволяет практически применять аспекты настоящего изобретения.
ПОДРОБНОЕ ОПИСАНИЕ
[8] Различные аспекты настоящего изобретения более полно описаны ниже со ссылкой на прилагаемые чертежи, которые составляют его часть, и где показаны конкретные иллюстративные аспекты настоящего изобретения. Однако настоящее изобретение можно реализовать во многих различных формах и не следует рассматривать как ограниченное изложенными здесь аспектами; напротив, эти аспекты обеспечены таким образом, чтобы это раскрытие было исчерпывающим и полным, и полностью доносило объем различных аспектов до специалистов в данной области техники. Аспекты можно практически применять как способы, системы или устройства. Соответственно, реализации можно практически применять с использованием аппаратного обеспечения, программного обеспечения или комбинации аппаратного обеспечения и программного обеспечения. Поэтому нижеследующее подробное описание не следует понимать в ограничительном смысле.
[9] Аспекты блока обнаружения орфанов и соответствующего способа описаны здесь и проиллюстрированы в прилагаемых чертежах. Блок обнаружения орфанов обрабатывает внедоменные высказывания из диалоговой системы целенаправленного понимания языка для определения, выражает ли внедоменное высказывание конкретную цель побудить диалоговую систему целенаправленного понимания языка совершать определенное действие, когда маловероятно, что альтернативную обработку, например, осуществление общего веб-поиска, можно выполнить посредством веб-поисков. Такие высказывания именуются орфанами, поскольку они не обрабатываться надлежащим образом каким-либо из доменов задач и не подлежат альтернативной обработке. Блок обнаружения орфанов отличает орфаны из запросов веб-поиска от других внедоменных высказываний, сосредотачиваясь, в основном, на структуре высказывания, а не на его содержании. Орфаны, обнаруженные блоком обнаружения орфанов, можно использовать, как онлайн, так и оффлайн для улучшения ощущений пользователя при работе с диалоговыми системами целенаправленного понимания языка. Блок обнаружения орфанов также может использоваться для извлечения структурно аналогичных запросов или предложения из журналов запросов к машине веб-поиска.
[10] На фиг. 1 показана системная схема, демонстрирующая аспекты диалоговой системы целенаправленного понимания языка, использующей блок обнаружения орфанов. Диалоговая система 100 включает в себя блок 102 обнаружения орфанов и компонент 104 целенаправленного понимания. Диалоговую систему можно реализовать в локальной архитектуре с использованием единичного вычислительного устройства или распределенной архитектуры, как показано, с использованием одного или более вычислительных устройств, например, без ограничения, клиентского устройства 106, осуществляющего связь с сервером 108. Клиентское устройство 106 и сервер 108 можно реализовать с использованием различных вычислительных устройств, включая, но без ограничения, серверы или настольные компьютеры, портативные компьютеры, планшетные компьютеры, смартфоны, интеллектуальные часы и интеллектуальные электроприборы. Распределенные компоненты могут осуществлять связь через сеть, например, но без ограничения, локальную сеть, глобальную сеть или интернет.
[11] Диалоговая система 100 обеспечивает пользовательский интерфейс 110 для взаимодействия с пользователем 112 в разнообразных режимах ввода и вывода. Типы и количество режимов ввода и вывода зависит от оборудования клиентского устройства 106. Примеры пригодных режимов ввода и вывода включают в себя, без ограничения, речь, текст, рукописный ввод, касание и жест. Клиентское устройство 106 принимает речевые вводы 114 от пользователя 112 через одно или более устройств 116 ввода и воспроизводит речевые выводы 118 для потребления пользователем 112 через одно или более устройств 120 вывода. Примеры пригодных устройств ввода включают в себя, без ограничения, микрофоны, экраны касания, камеры или сканеры, физические клавиатуры или клавишные панели, виртуальные клавиатуры или клавишные панели. Примеры пригодных устройств вывода включают в себя, без ограничения, громкоговорители, экраны дисплея и проектора.
[12] Для обеспечения контекста посредством примера, аспекты диалоговой системы 100 можно описать как многорежимный виртуальный персональный помощник (VPA), реагирующий на высказывания пользователя. Однако блок 102 обнаружения орфанов можно использовать совместно с разнообразными диалоговыми системами целенаправленного понимания языка и не подлежит ограничению при использовании с виртуальным персональным помощником. Используемый здесь для удобства, термин ʺвысказываниеʺ означает любой речевой ввод в диалоговую систему 100, независимо от режима. Ссылки на или указания любого конкретного режима или речевых вводов следует понимать в широком смысле, охватывающем другие режимы или речевые вводы совместно с соответствующими модификациями аппаратного обеспечения и/или программного обеспечения для реализации других режимов.
[13] При получении нетекстовых высказываний, диалоговая система 100 может включать в себя один или более блоков 122 автоматического распознавания высказываний, которые преобразовывают высказывания не компьютерно-считываемого формата в компьютерно-считываемый формат для обработки с использованием метода декодирования, соответствующего типу ввода. Примеры пригодных блоков 122 автоматического распознавания высказываний включают в себя, без ограничения, блоки распознавания речи, блоки распознавания жестов, блоки оптического распознавания символов и блоки распознавания рукописного ввода. Выходной сигнал блока 122 автоматического распознавания высказываний поступает на компонент 104 целенаправленного понимания.
[14] Блок 124 извлечения признаков извлекает признаки из выходного сигнала блока 122 автоматического распознавания высказываний. Признаки можно извлекать для использования блоком 102 обнаружения орфанов и/или компонентом 104 целенаправленного понимания. Типы извлекаемых признаков для блока 102 обнаружения орфанов включают в себя лексические признаки, признаки тегов частей речи, синтаксические признаки и семантические признаки.
[15] Компонент 104 целенаправленного понимания включает в себя доменный классификатор 126 и компонент 128 понимания языка. Доменный классификатор 126 пытается отображать высказывания в один или более поддерживаемых доменов задач с использованием одной или более доменных моделей. Высказывания, покрытые одним из поддерживаемых доменов задач, называются ʺвнутридоменнымиʺ. Высказывания, покрытые одним из поддерживаемых доменов задач, называются ʺвнедоменнымиʺ. Компонент 128 понимания языка преобразует высказывания в представление смыслового значения путем разбора и анализа компьютерно-считываемого текста на семантические представления, которые могут обрабатываться диалоговой системой. В большинстве многодоменных диалоговых систем, целенаправленная семантическая обработка осуществляется поочередно для каждого домена задач с использованием доменных моделей, специфичных для каждого домена задач, а не с использованием глобальной грамматической или статистической модели для всех доменов задач. Использование целенаправленного понимания позволяет конструкторам системы сосредотачиваться на возможностях диалоговой системы и обеспечивает глубокое понимание внутридоменных высказываний.
[16] Внедоменные высказывания обрабатываются посредством отложенного понимания. Как упомянуто выше, типичным примером отложенного понимания, используемого диалоговыми системами целенаправленного понимания языка, является обработка высказываний, отклоненных всеми доменными классификаторами, как запросов общего веб-поиска. Отложенное понимание в виртуальных персональных помощниках и других диалоговых системах целенаправленного понимания языка также может включать в себя блок 130 обнаружения фактоидных вопросов и/или блок 132 обнаружения неформальной беседы.
[17] Фактоидный вопрос это вопрос для выявления простых фактов о названной сущности. Фактоидные вопросы часто звучат как вопросы "who", "what", "when", "where", "why" или "how". Примером фактоидного вопроса является ʺwhat is the tallest mountain in the United States?ʺ
[18] Неформальная беседа относится к каждодневным высказываниям пустого по своей природе разговора. С виртуальным персональным помощником, неформальная беседа обычно предусматривает запросы несерьезного или полуличного характера. Виртуальный персональный помощник может быть обеспечен ответами на такие запросы, чтобы его поведение было, по меньшей мере, похоже на человеческое. Примеры неформальной беседы включают в себя такие высказывания, как ʺwhere are you fromʺ или ʺtell me a jokeʺ. По существу, неформальная беседа предусматривает непродуктивные взаимодействия, которые помогают придать индивидуальность виртуальному персональному помощнику или другой диалоговой системе целенаправленного понимания языка.
[19] Блок 102 обнаружения орфанов улучшает отложенное понимание благодаря обнаружению орфанов. Используемый здесь термин "орфан" означает запрос, имеющий нефактоидную, однозначную и конкретную цель, в отношении которой известно, что она не покрывается никаким из доменов задач диалоговой системы целенаправленного понимания языка (т.е. внедоменное высказывание). Поэтому орфаны представляют запросы, которые могут покрываться диалоговой системой целенаправленного понимания языка с надлежащим доменом задач и, в большинстве случаев, не могут быть удовлетворены путем осуществления общего веб-поиска.
[20] В онлайновой системе, обеспечивающей своевременные ответы на высказывания пользователя, например, виртуальном персональном помощнике, блок 102 обнаружения орфанов позволяет диалоговой системе 100 разумно отвечать на орфаны надлежащим образом, что улучшает конкретные ощущения пользователя. Например, информацию, предоставляемую блоком 102 обнаружения орфанов, можно использовать онлайн во избежание возвращения безответного общего веб-поиска, когда высказывание пользователя является орфаном, и для предложения надлежащего ответа. При оффлайновом использовании, блок 102 обнаружения орфанов обеспечивает ценную информацию для улучшения функциональных возможностей компонента 104 целенаправленного понимания и, таким образом, улучшения общих ощущений пользователя с диалоговой системой 100. Например, блок 102 обнаружения орфанов можно использовать оффлайн для быстрого добавления новых доменов задач и расширения возможностей диалоговой системы целенаправленного понимания языка или улучшения существующих доменных моделей для обработки орфанов.
[21] Дифференциальный классификатор весьма пригоден для использования в блоке обнаружения орфанов, поскольку дифференциальные классификаторы обычно менее чувствительны к предварительному распределению вероятностей по сравнению с генеративными классификаторами (например, наивными байесовскими классификаторами). Одним примером пригодного дифференциального классификатора является машина опорных векторов (SVM). Машины опорных векторов обычно превосходят другие способы двоичной классификации для задач с большими пространствами признаков. Пространство признаков обнаружения орфанов очень велико, поскольку включает в себя все n-граммы слов и тегов частей речи.
[22] Модели классификатора блока обнаружения орфанов можно строить с использованием обучающих данных, включающих в себя набор часто возникающих запросов веб-поиска и набор высказываний, адресованных диалоговой системе, из диалогового корпуса. Набор запросов веб-поиска обеспечивает класс негативного обучения, тогда как набор высказываний, адресованных диалоговой системе, обеспечивает класс позитивного обучения. Высказывания из набора высказываний, адресованных диалоговой системе, можно аннотировать вручную. Набор высказываний, адресованных диалоговой системе, может включать в себя внутридоменные высказывания и/или внедоменные высказывания, в отношении которых определено, что они адресованы диалоговой системе. В зависимости от наборов признаков, используемых в моделях обнаружения орфанов, блок обнаружения орфанов может использовать один или более из: лексического анализатора, блока тегирования частей речи, синтаксического анализатора и семантического анализатора.
[23] Диспетчер 134 взаимодействия действует на выходном сигнале компонента 104 целенаправленного понимания. Диспетчер 134 взаимодействия является компонентом диалоговой системы с отслеживанием состояния, который, в конечном итоге, отвечает за ход диалога (т.е. разговора). Диспетчер 134 взаимодействия отслеживает разговор, внося в диалоговый сеанс 136 обновления, отражающие текущее состояние диалога, и управляет ходом разговора. Диалоговый сеанс 136 представляет собой набор данных, где могут храниться некоторые или все аспекты взаимодействия между пользователем и диалоговой системой. Типы и объем информации о состоянии диалога, хранимой диалоговым сеансом, могут варьироваться в зависимости от конструкции и сложности диалоговой системы. Например, основная информация о состоянии диалога, хранимая большинством диалоговых систем, включает в себя, но без ограничения, историю высказываний, последнюю команду пользователя и последнее машинное действие, и текущее состояние диалога. Диспетчер 134 взаимодействия осуществляет надлежащие машинные действия на основании текущего состояния диалога, например, но без ограничения, извлечение информации из структурированных или неструктурированных источников информации (например, баз знаний, списков контактов и т.д.)
[24] Генератор 138 ответов генерирует ответ диалоговой системы. Генератор 138 ответов может включать в себя компонент 140 генерации естественного языка, который преобразует ответ в естественно (т.е. по-человечески) звучащий текст для представления пользователям. Генератор 138 ответов также может включать в себя компонент 142 преобразования текста в речь, который переводит ответ в речевую форму и позволяет диалоговой системе вербально взаимодействовать с пользователями. Ответ воспроизводится через одно или более из устройств вывода клиентского устройства.
[25] На фиг. 2 показана обобщенная блок-схема операций, демонстрирующая аспекты способа обнаружения и обработки орфанов. Способ 200 может включать в себя операцию 202 ввода, в которой диалоговая система принимает один или более вводов для обработки. В сценарии онлайнового использования вводами обычно являются отдельные высказывания, принимаемые в реальном времени от пользователя. При необходимости, операция 204 распознавания преобразует высказывание в формат, который может использовать блок 102 обнаружения орфанов. Например, операция 204 распознавания могут предусматривать применение распознавания речи к устному высказыванию для декодирования речи в текст. В сценарии оффлайнового использования, вводы могут исходить из существующего корпуса высказываний или запросов от большого количества пользователей диалоговой системы или журналов запросов к машине веб-поиска.
[26] Операция 206 доменной классификации классифицирует высказывания как внутридоменные или внедоменные, исходя из того, покрывается ли высказывание каким-либо из доменов задач компонента 104 целенаправленного понимания. Операция 206 доменной классификации может использовать подход ʺпринятияʺ, в котором с каждым доменом связан классификатор, который определяет, принадлежит ли высказывание этом домену, подход ʺсортировкиʺ, в котором классификатор верхнего уровня определяет домен для высказывания, или комбинацию этих подходов.
[27] Хотя доменная классификация обычно выражается через включение (т.е. обнаружение высказываний, покрытых заданным доменом задач), аспекты изобретения сосредоточены на обработке внедоменных высказываний. Соответственно, в описании и/или нижеследующей формуле изобретения идет речь об обнаружении и/или классификации внедоменных высказываний. Определение, что высказывание является внедоменным высказыванием, может осуществляться просто отрицанием результата, полученного тестированием высказывания на включение в домены диалоговой системы целенаправленного понимания языка. Другими словами, высказывание, которое не отвечает критериям включения ни для одного домена диалоговой системы целенаправленного понимания языка, определяется как внедоменное высказывание.
[28] После операции 206 доменной классификации осуществляются операция 208 понимания внутридоменного высказывания и операция 210 действия на внутридоменных высказываниях. Операция 208 понимания внутридоменного высказывания определяет цель (т.е. смысловое значение) внутридоменного высказывания. Аспекты присвоения смыслового значения посредством операции 208 понимания внутридоменного высказывания могут включать в себя, без ограничения, извлечение аргументов, заполнение промежутков и другие функции и подходы семантической обработки.
[29] Операция 210 действия на внутридоменных высказываниях осуществляет диалоговое действие, определенное для достижения цели внутридоменного высказывания на основании текущего состояния диалога. Например, операция 210 действия на внутридоменных высказываниях может сопрягаться с приложением будильника для установления будильника на день и время, указанные в аргументах, или приложением телефона для установления вызова с лицом, указанным в аргументах. Зависящие от домена правила или инструкции для обработки внутридоменных высказываний обычно задаются как часть определений домена задач.
[30] В общем случае, взаимодействия внутридоменных высказываний адаптируются к используемым приложению, окружению и устройству. Внутридоменные задачи для интеллектуального телевизора, блока кабельного телевидения или устройства или приложения интернет-телевидения могут включать в себя воспроизведение потокового видеоконтента, переключение каналов и регулировку громкости. Например, на вычислительном устройстве общего назначения, внутридоменные задачи для виртуального персонального помощника могут включать в себя управление напоминаниями, управление будильниками, бронирование авиабилетов и бронирование гостиничных номеров. На смартфоне, внутридоменные задачи для виртуального персонального помощника могут дополняться отправкой текстовых сообщений и установлением вызовов через сотовую сеть.
[31] Операция 212 извлечения признаков извлекает признаки, используемые для классификации и понимания высказываний. Извлечение признаков может включать в себя одну или более из операции 214 лексического анализа, операции 216 тегирования частей речи, операции 218 синтаксического анализа и операции 220 семантического анализа. Извлечение признаков также может использоваться для извлечения признаков, полезных для классификации внедоменных высказываний как неформальной беседы или фактоидных вопросов и для классификации внутридоменных высказываний. Извлечение признаков для внутридоменных высказываний и внедоменных высказываний может происходить отдельно или в объединенной операции, происходящей до операции 204 доменной классификации.
[32] В необязательном порядке, способ 200 может включать в себя операцию 222 обработки фактоидных вопросов и/или операцию 224 обработки неформальной беседы для обнаружения и обработки соответствующих внедоменных высказываний.
[33] Определение 226 орфана указывает, является ли внедоменное высказывание орфаном или нет. Обнаружение орфанов оказалось неожиданно трудной задачей. Определение 226 орфана сосредоточено на том, как выражается цель высказывания (т.е. структуре высказывания), а не на понимании конкретной цели высказывания (т.е. содержания высказывания). Например, внедоменное высказывание, структурированное как команда (например, ʺsend email to momʺ), является скорее запросом к диалоговой системе для осуществления конкретного, но не поддерживаемого, действия, чем ключевыми словами для общего веб-поиска. Аналогично, высказывание, содержащее только названную сущность или именную группу и более ничего (например, hotel), является скорее ключевым словом, адресованным веб-поиску, хотя некоторые примеры могут быть неоднозначными (например, ʺhotel reservationʺ).
[34] Степени достоверности от доменных классификаторов для известных доменов задач не особенно полезны, поскольку вводы в определение 226 орфана являются внедоменными высказываниями, которые были отклонены покрытыми доменами задач.
[35] Задачу классификации SVM с линейным ядром можно формально определить следующим образом: с учетом обучающих данных, D, скомпилированных с использованием признаков, извлеченных из образцов высказываний, адресованных диалоговой системе целенаправленного понимания языка (например, запросов, адресованных VPA), VPA={(X1, -1),..., (xm, -1)}, и образцов запросов веб-поиска, Q={(xn, 1), …, (xm+1, 1)}, задачу классификации SVM с линейным ядром можно формально определить как отыскание гиперплоскости,
[36] Один лексический признак представляет собой просто n-граммы слов из высказывания. Обучение классификатора орфанов с использованием высказываний, покрывающих несколько доменов, существенно уменьшает влияние зависящих от домена слов (т.е. ʺcuisineʺ или ʺmealʺ в ресторанном домене) относительно независимых от домена фраз (например, ʺcould you please show meʺ или ʺwhat is theʺ). Лексические модели позволяют отличать орфаны от запросов веб-поиска даже при наличии небольшого лексического перекрытия со словами содержания, поскольку фразы с внутридоменным индикатором (например, ʺcan youʺ или ʺpleaseʺ) служат хорошими признаками классификации орфанов. Результаты, полученные с использованием классификатора орфанов, обученного с использованием только лексических признаков, обеспечивают нетривиальную основу для сравнения. В таблице 1 сравнивается относительная частота слов первого лица, появляющихся в запросах, адресованных VPA, и запросах веб-поиска.
Таблица 1
[37] Поскольку блок обнаружения орфанов в большей степени опирается на структуру, чем на содержание, классификатор орфанов также может использовать синтаксические признаки. Основными синтаксическими признаками для использования в определении орфана является n-граммы тегов частей речи. Некоторые части речи, появляющиеся как первое слово в высказывании, обеспечивают хороший индикатор, является ли высказывание орфаном или нет. Например, высказывание скорее является орфаном, когда часть речи первого слова является модальным глаголом (например, ʺcouldʺ) или глаголом в основной форме (например, play), чем когда часть речи первого слова является именем собственным. Аналогично, другие части речи, которые являются хорошими индикаторами того, что высказывание, скорее всего, является орфаном, включают в себя личные местоимения в именительном падеже (например, ʺIʺ) или притяжательные личные местоимения (например, ʺmyʺ), появляющиеся как первое слово высказывания.
[38] В таблице 2 сравнивается относительная частота наиболее частых тегов частей речи для первого слова, появляющегося в запросах, адресованных VPA, и запросах веб-поиска. Как можно видеть, в запросе гораздо вероятнее, чем в запросе веб-поиска, в качестве первого слова высказывания появится глагол.
Таблица 2
[39] Фиг. 3 демонстрирует пример группового анализа синтаксической структуры. Слова ʺfind brightness settingsʺ образуют предложение (S), состоящее из глагольной группы (VP) и именной группы (NP). Именная группа состоит из существительного в единственном числе (NN) ʺbrightnessʺ, связанного с существительным во множественном числе (NNS) ʺsettingsʺ. Глагольная группа состоит из глагола (VB) ʺfindʺ с именной группой ʺbrightness settingsʺ, выступающей в роли его дополнения. Структуру дерева синтаксического анализа можно выразить как признак синтаксической формы, S(VP(NP)), которая является одной из наиболее частых форм запросов, адресованных VPA. Форма дерева синтаксического анализа является другим синтаксическим признаком, полезным в модели классификатора орфанов. На практике, в запросах, адресованных VPA, возникает значительно больше форм дерева синтаксического анализа, чем в запросах веб-поиска. Большое количество форм дерева синтаксического анализа для запросов, адресованных VPA, делает форму дерева синтаксического анализа более полезной для эффективности поиска, чем для точности.
[40] В модели классификатора орфанов полезны также семантические признаки. Хотя это не требуется, типичный семантический костяк для внутридоменного высказывания включает в себя цель, которая обычно имеет форму сказуемое/аргумент (например, ʺmake/reservationʺ, ʺbuy/ticketʺ или ʺset/alarmʺ). Проверка на наличие сказуемого и набора аргументов предлагает семантический признак для классификации орфанов с высокой точностью.
[41] Семантический анализ может осуществляться с использованием общего семантического анализатора на основе знаний (например, NLPWin). Поскольку большинство высказываний, оцененных с использованием блока обнаружения орфанов очень коротки и просты для анализа, семантический анализ также осуществляться с использованием поверхностных семантических анализаторов (например, PropBank) или глубокого семантического анализатора (например, FrameNet), хотя такие анализаторы обычно не особенно надежны в случае анализа естественного устного языка.
[42] Фиг. 4 демонстрирует пример семантического анализа, применяемый к предложению, синтаксически проанализированному на фиг. 3. Проиллюстрированное дерево семантического анализа использует формат абстрактного представления смыслового значения (AMR), где ʺARG0ʺ обычно является подлежащим, ʺARG1ʺ - прямым дополнением, ʺmodʺ - модификатором, и ʺmodeʺ указывает диалоговое действие предложения (например, повелительное, вопросительное или восклицательное), что не является правильным утверждением. Структуру семантического анализа можно выразить как признак семантической формы, Pred(Arg0, Arg1, mode:imperative), которая является наиболее частой семантической формой для запросов, адресованных VPA. Напротив, семантическая форма самостоятельного понятия (например, ʺfacebookʺ), появляется приблизительно 16 раз чаще в запросах веб-поиска, чем в запросах, адресованных VPA.
[43] Модели классификаторов орфанов могут объединяться на уровне признаков или уровне решений. Другими словами, единую модель классификатора орфанов можно обучать с использованием нескольких наборов признаков, обеспечивающих единый выходной сигнал, на основании которого принимается решение по классификации орфанов, или отдельные модели классификаторов орфанов можно обучать с использованием каждого набора признаков, обеспечивающего набор выходных сигналов для оценивания при принятии решения по классификации орфанов.
[44] Блок обнаружения орфанов определяет, является ли высказывание, отклоненное доменными моделями, орфаном или запросом веб-поиска, и возвращает орфаны для обработки. Обработка орфанов может варьироваться в зависимости от того, используется ли блок обнаружения орфанов в онлайновом или оффлайновом сценарии.
[45] Согласно фиг. 2, операция 228 обработки орфанов обрабатывает орфаны, идентифицированные путем определения 226 орфана надлежащим образом, для обеспечения улучшенных ощущений пользователя. Например, операция 228 обработки орфанов может избегать подачи орфана в качестве запроса общего веб-поиска или препятствовать сообщению результатов общего веб-поиска для орфана. Напротив, операция 228 обработки орфанов может генерировать сообщение, указывающее, что диалоговая система понимает, что пользователь запросил конкретное действие, но при этом признак в данный момент не поддерживается диалоговой системой. В менее амбициозном подходе, операция 228 обработки орфанов может обеспечивать результаты общего веб-поиска на основании орфана совместно с сообщением, благодаря чему, пользователь знает, что диалоговая система понимает, что орфан выглядит как запрос не поддерживаемого действия и, поскольку запрос не может быть удовлетворен, результаты поиска обеспечиваются только в случае, когда пользователь действительно намерен осуществлять общий веб-поиск. Аспекты операции 228 обработки орфанов могут включать в себя использование степени достоверности, установленной путем определения 226 орфана, для принятия решения, как обрабатывать орфан. Операция 228 обработки орфанов может, альтернативно или дополнительно, предоставлять пользователю возможность обучать диалоговую систему осуществлению не поддерживаемого действия.
[46] Ощущения пользователя улучшаются не потому, что диалоговая система способна удовлетворять запросу пользователя, но потому, что диалоговая система обеспечивает значимый ответ, даже когда не удается удовлетворить запросу пользователя. Пользователь не удивляется, почему диалоговая система обеспечивает бессмысленный ответ (т.е. результаты запроса веб-поиска) вместо того, чтобы делать то, о чем попросил пользователь, что, в свою очередь, в общем случае, уменьшает недовольство пользователя диалоговой системой.
[47] Операция 230 каталогизации высказываний может сохранять высказывания, принятые диалоговой системой, совместно с классификациями, назначенными диалоговой системой. Операцию 230 каталогизации высказываний можно использовать для сохранения всех высказываний, принятых диалоговой системой, или только выбранных классов высказываний (например, без ограничения, внутридоменных, внедоменных, орфанов, запросов веб-поиска, неформальной беседы или фактоидных вопросов) и их комбинаций. Например, операция 230 каталогизации высказываний может сохранять только высказывания, классифицированные как внедоменные. В другом примере, могут сохраняться только орфаны и запросы веб-поиска.
[48] В зависимости от типов и классов принятых вводов, некоторые или все из операций могут быть опущены в оффлайновом сценарии. Например, корпус может включать в себя только внедоменные высказывания для анализа или фильтрации, применяемой к корпусу, что избавляет от таких этапов, как доменная классификация. Аналогично, корпус или журнал будет храниться как текст и не потребует операции распознавания. Дополнительно, фактическая обработка высказываний, в общем случае, не требуется в целях оффлайнового анализа.
[49] На фиг. 5 показана обобщенная блок-схема операций, демонстрирующая аспекты способа неконтролируемого обучения семантических моделей для нового (т.е. непокрытого) домена задач с использованием орфанов в сценарии оффлайнового использования. Способ 500 начинается с осуществления операции 502 общего анализа на орфанах, обнаруженных блоком обнаружения орфанов. Операция 504 группирования запросов группирует аналогичные орфаны и запросы веб-поиска с использованием результатов операции 502 общего анализа и знания от машин веб-поиска. Примеры полезных группировок включают в себя, без ограничения, группировки на основании совместного использования сказуемого и одного и того же типа аргумента (например, ʺplay madonnaʺ и ʺplay some adeleʺ), совместного использования одного и того же типа аргумента (например, ʺshow me delta stockʺ и ʺhow is united doing todayʺ), или совместного использования одного и того же главного аргумента (например, ʺrecipe of a Mediterranean dishʺ и ʺI need the recipe of Tiramisuʺ). Операция 506 семантического шаблонирования порождает семантический шаблон, который, например, может базироваться на формах анализа AMR. Операция 508 начала запросов заполняет начальные запросы с использованием семантической кластеризации (например, латентного размещения Дирихле). Операция 510 обучения обучает модели обнаружения доменов и заполнения промежутков с использованием начальных запросов. Операция 512 дополнительного анализа использует полученную модель для автоматического анализа оставшихся запросов. Операция 514 сохранения сохраняет семантические модели с использованием результатов операции 512 дополнительного анализа.
[50] В доказательство преимуществ обнаружения орфанов в перспективе, анализ диалогового корпуса, содержащего приблизительно миллион высказываний из одной системы виртуального персонального помощника, показал, что большинство высказываний не было классифицировано как принадлежащие одному из девяти атомарных доменов (будильника, календаря, блокнота, вызова, службы коротких сообщений, напоминания, электронной почты, погоды и мест), обрабатываемых виртуальным персональным помощником. Только 30% высказываний были внутридоменными (т.е. принадлежащими одному из девяти доменов). Другие 5% высказываний не поддавались обработке (например, были непонятны). Оставшиеся 65% были внедоменными высказываниями, включающими в себя фактоидные вопросы, неформальные высказывания, запросы веб-поиска и орфаны.
[51] Более пристальное рассмотрение распределения внедоменных высказываний показало, что орфаны насчитывали приблизительно 18% высказываний. Запросы веб-поиска насчитывали еще 23% высказываний. Фактоидные вопросы и неформальная беседа совместно составили остальные 24% высказываний.
[52] Для тестирования n-кратной перекрестной проверки, модели классификатора блока обнаружения орфанов были построены из обучающих данных, включающих в себя приблизительно 100000 запросов веб-поиска, взятых из головы, и среднечастотных запросов безотносительно к частоте и приблизительно 120000 запросов, адресованных VPA, из диалогового корпуса существующего виртуального персонального помощника. Запросы веб-поиска образовывали класс негативного обучения, и запросы, адресованные VPA, образовывали класс позитивного обучения. Для оценивания относительной производительности моделей классификаторов орфанов на основании отдельных наборов признаков (т.е. лексических, тегов частей речи, синтаксического анализа и семантического анализа), при обучении моделей классификаторов орфанов использовались внутридоменные высказывания для всех, кроме одного из семи известных доменов задач. Исключенный домен задач служит для обеспечения известного набора высказываний, которые следует классифицировать как орфаны и которые не подлежат считыванию никакими другими доменами задач.
[53] Двумя основными показателями успешности работы блока обнаружения орфанов являются точность и эффективность поиска. Точность представляет долю орфанов, правильно идентифицированных блоком обнаружения орфанов из суммарного количества орфанов, идентифицированных блоком обнаружения орфанов. Эффективность поиска представляет количество орфанов, правильно идентифицированных блоком обнаружения орфанов, из суммарного количества внедоменных высказываний, обработанных блоком обнаружения орфанов. При тестировании, модели лексики, тегов частей речи, синтаксического анализа и семантического анализа демонстрировали среднюю эффективность поиска свыше 80%, но переменную точность.
[54] В частности, все модели лексики, тегов частей речи, синтаксического анализа и семантического анализа демонстрируют среднюю эффективность поиска свыше 80%, но переменную точность результатов. В таблице 3 показана относительная точность моделей классификаторов орфанов, обученных с использованием каждого из доступных наборов признаков. Точность синтаксических моделей имеет тенденцию к снижению, поскольку фактоидные вопросы (например, ʺcan you paint wood frame homes in winterʺ) и запросы, адресованные VPA (например, ʺcan you tell me a jokeʺ) часто совместно используют одну и ту же синтаксическую структуру. Различение между фактоидными вопросами и запросами, адресованными VPA, состоит в нетривиальной задаче семантического устранения неоднозначности.
Таблица 3
[55] В таблице 4 показаны репрезентативные высказывания, обнаруженные из известного домена задач, который был исключен при обучении модели классификатора орфанов. Моделям лексики и тегов частей речи свойственно возвращать более длинные высказывания с конкретными ключевыми фразами (например, ʺcan you please show me...ʺ) по сравнению с моделями синтаксического и семантического анализа.
Таблица 4
ʺset an alarm for tomorrow at 12:15 so I donʹt forget to get the kids in the car in time for the doctor appointmentʺ
ʺcreate an alarm for weekdays to wake me up at 5 amʺ
ʺwhat time do I need to wake up next weekʺ
ʺI no longer wish to hear the alarmʺ
[56] Аспекты изобретения можно практически применять как системы, устройства и другие изделия или как способы с использованием аппаратного обеспечения, программного обеспечения, компьютерно-считываемых носителей, или их комбинаций. В нижеследующем рассмотрении и соответствующих чертежах описаны выбранные системные архитектуры и вычислительные устройства, представляющие большое количество системных архитектур и вычислительных устройств, которые можно использовать для практического применения описанных здесь аспектов изобретения, и никоим образом не следует использовать для ограничения объема изобретения.
[57] Пользовательские интерфейсы и информация различных типов могут отображаться на дисплеях, встроенных в вычислительное устройство, или на отдельных блоках отображения, связанных с одним или более вычислительными устройствами. Например, возможно отображение пользовательских интерфейсов и информации различных типов и взаимодействие с ними на поверхности стены, на которую проецируются пользовательские интерфейсы и информация различных типов. Взаимодействие с различными вычислительными системами, обеспечивающими практическое применение изобретения, может осуществляться посредством, без ограничения, клавишного ввода, ввода через экран касания, речевого или другого аудио-ввода, жестового ввода, для чего соответствующее вычислительное устройство снабжается функциональными возможностями обнаружения (например, камерой) для захвата и интерпретации жестов пользователя для управления работой вычислительного устройства, и пр.
[58] На фиг. 6 показана блок-схема, демонстрирующая архитектуру вычислительного устройства, позволяющего практически применять аспекты изобретения. Вычислительное устройство 600 пригодно для реализации аспектов изобретения, воплощенных в разнообразных компьютерах и программируемых потребительских электронных устройствах, включающих в себя, но без ограничения, универсальные компьютеры, миникомпьютеры, серверы, персональные компьютеры (например, настольные и портативные компьютеры), планшетные компьютеры, нетбуки, смартфоны, интеллектуальные часы, видеоигровые системы и интеллектуальные телевизоры, и интеллектуальные потребительские электронные устройства.
[59] В базовой конфигурации, указанной пунктирной линией 608, вычислительное устройство 600 может включать в себя, по меньшей мере, один блок 602 обработки и системную память 604. В зависимости от конфигурации и типа вычислительного устройства, системная память 604 может содержать, но без ограничения, энергозависимое хранилище (например, оперативную память), энергонезависимое хранилище (например, постоянную память), флеш-память, или любую комбинацию таких блоков памяти. Системная память 604 может включать в себя операционную систему 605, пригодную для управления работой вычислительного устройства 600 и один или более программных модулей 606, пригодных для выполнения прикладных программ 620, включающих в себя программное обеспечение, реализующее описанные здесь аспекты изобретения.
[60] При выполнении на блоке 602 обработки, прикладные программы 620 могут осуществлять процессы, включающие в себя, но без ограничения, один или более из этапов способов 200 и 500. Другие программные модули, которые можно использовать в соответствии с аспектами изобретения, могут включать в себя приложения электронной почты и контактов, приложения редактирования текста, приложения электронной таблицы, приложения базы данных, приложения слайдовой презентации или прикладные программы компьютерного рисования и т.д.
[61] Помимо базовой конфигурации, вычислительное устройство 600 может иметь дополнительные признаки или функциональные возможности. Например, вычислительное устройство 600 также может включать в себя дополнительные устройства хранения данных (сменные и/или стационарные), например, магнитные диски, оптические диски или ленту. Такое дополнительное хранилище проиллюстрировано сменным запоминающим устройством 609 и стационарным запоминающим устройством 610.
[62] Вычислительное устройство 600 также может иметь одно или более устройств 612 ввода, например, клавиатуру, мышь, перо, устройство ввода звука, устройство ввода касанием и т.д. Также может(гут) быть включен(ы) устройство(а) 614 вывода, например, дисплей, громкоговорители, принтер и т.д. Вышеупомянутые устройства являются примерами, и можно использовать другие. Вычислительное устройство 600 может включать в себя одно или более коммуникационных соединений 616, позволяющих осуществлять связь с другими вычислительными устройствами 618. Примеры пригодных коммуникационных соединений 616 включают в себя, но без ограничения, схему RF передатчика, приемника и/или приемопередатчика; универсальная последовательная шина (USB), параллельные и/или последовательные порты.
[63] Используемый здесь термин компьютерно-считываемые носители может включать в себя компьютерные носители данных. Компьютерные носители данных могут включать в себя энергозависимые и энергонезависимые, сменные и стационарные носители, реализованные посредством любого способа или технологии для хранения информации, например, компьютерно-считываемых инструкций, структур данных или программных модулей. Системная память 604, сменное запоминающее устройство 609 и стационарное запоминающее устройство 610 являются примерами компьютерных носителей данных (т.е. памяти). Компьютерные носители данных могут включать в себя оперативную память (RAM), постоянную память (ROM), электрически стираемую программируемую постоянную память (EEPROM), флеш-память или другую технологию памяти, компакт-диск с возможностью только чтения (CD-ROM), цифровые универсальные диски (DVD) или другое оптическое запоминающее устройство, магнитные кассеты, магнитную ленту, запоминающее устройство на основе магнитного диска или другие магнитные запоминающие устройства или любое другое промышленное изделие, которое можно использовать для хранения информации и к которому может осуществлять доступ вычислительное устройство 600. Любые подобные компьютерные носители данных могут входить в состав вычислительного устройства 600.
[64] Аспекты изобретения можно практически применять в электрической схеме, содержащей дискретные электронные элементы, корпусные или интегральные электронные микросхемы, содержащие логические вентили, схему, использующую микропроцессор, или на едином кристалле, содержащую электронные элементы или микропроцессоры. Например, аспекты изобретения можно практически применять посредством однокристальной системы (SOC), где каждый или многие из проиллюстрированных компонентов могут интегрироваться в единую интегральную схему. Такое устройство SOC может включать в себя один или более блоков обработки, блоков графики, блоки связи, блоки системной виртуализации и различные прикладные функциональные возможности, которые все объединены (или ʺвожженыʺ) на подложке микросхемы в виде единой интегральной схемы. При работе через SOC, функциональные возможности, описанные здесь в отношении прикладных программ 620, можно использовать посредством специализированной логики, объединенной с другими компонентами вычислительного устройства 600 на единой интегральной схеме (микросхеме). Аспекты изобретения также можно осуществлять на практике с использованием других технологий, способных осуществлять логические операции, например, И, ИЛИ и НЕ, включающих в себя, но без ограничения, механические, оптические, жидкостные и квантовые технологии. Кроме того, аспекты изобретения можно практически применять в компьютере общего назначения или в любых других схемах или системах.
[65] Фиг. 7A демонстрирует мобильное вычислительное устройство 700, пригодное для практического применения аспектов настоящего изобретения. Примеры пригодных мобильных вычислительных устройств включают в себя, но без ограничения, мобильный телефон, смартфон, планшетный компьютер, поверхностный компьютер и портативный компьютер. В базовой конфигурации, мобильное вычислительное устройство 700 представляет собой карманный компьютер, имеющий элементы ввода и элементы вывода. Мобильное вычислительное устройство 700 обычно включает в себя дисплей 705 и одну или более кнопок 710 ввода, которые позволяют пользователю вводить информацию в мобильное вычислительное устройство 700. Дисплей 705 мобильного вычислительного устройства 700 также может функционировать как устройство ввода (например, дисплей с экраном касания). Если включен в состав, то необязательный боковой элемент 715 ввода позволяет дополнительно пользовательский ввод. Боковой элемент 715 ввода может представлять собой поворотный переключатель, кнопку или ручной элемент ввода любого другого типа. Мобильное вычислительное устройство 700 может включать в себя больше или меньше элементов ввода. Например, дисплей 705 не обязан быть экраном касания. Мобильное вычислительное устройство 700 также может включать в себя необязательную клавишную панель 735. Необязательная клавишная панель 735 может быть физической клавишной панелью или ʺпрограммнойʺ клавишной панелью, генерируемой на дисплее с экраном касания. Элементы вывода включают в себя дисплей 705 для отображения графического пользовательского интерфейса, визуальный индикатор 720 (например, светодиод), и/или преобразователь 725 аудиосигнала (например, громкоговоритель). Мобильное вычислительное устройство 700 может включать в себя вибрационный преобразователь для обеспечения пользователя тактильной обратной связью. Мобильное вычислительное устройство 700 может включать в себя порты ввода и/или вывода, например, аудио-вход (например, гнездо для подключения микрофона), аудио-выход (например, гнездо для подключения головных телефонов), и видео-выход (например, порт HDMI) для отправки сигналов на внешнее устройство или приема сигналов от них.
[66] На фиг. 7B показана блок-схема, демонстрирующая архитектуру мобильного вычислительного устройства, которое позволяет практически применять аспекты изобретения. В порядке примера, мобильное вычислительное устройство 700 можно реализовать в системе 702, например, смартфоне, способном выполнять одно или более приложений (например, браузеры, почтовые клиенты, блокноты, диспетчеры контактов, клиенты обмена сообщениями, игры и медиа-клиенты/проигрыватели).
[67] Одна или более прикладных программ 765 могут загружаться в память 762 и выполняться на или совместно с операционной системой 764. Примеры прикладных программ включают в себя программы набора телефонного номера, программы электронной почты, программы управления персональной информацией (PIM), программы редактирования текста, программы электронной таблицы, программы интернет-браузера, программы обмена сообщениями и т.д. Система 702 также включает в себя область 768 энергонезависимого хранения в памяти 762. Область 768 энергонезависимого хранения можно использовать для хранения постоянной информации, которая не должна теряться при отключении питания системы 702. Прикладные программы 765 могут использовать и сохранять информацию в области 768 энергонезависимого хранения, например, электронную почту или другие сообщения, используемые приложением электронной почты, и пр. Приложение синхронизации (не показано) также располагается в системе 702 и запрограммировано взаимодействовать с соответствующим приложением синхронизации, присутствующим на главном компьютере для поддержания синхронизации информации, хранящейся в области 768 энергонезависимого хранения, с соответствующей информацией, хранящейся на главном компьютере. Очевидно, в память 762 могут загружаться и на мобильном вычислительном устройстве 700 могут выполняться другие приложения, включающие в себя программное обеспечение, реализующее описанные здесь аспекты изобретения.
[68] Система 702 имеет источник 770 питания, который можно реализовать как одну или более батарей. Источник 770 питания может дополнительно включать в себя внешний источник питания, например, адаптер переменного тока или зарядную док-станцию, которая дополняет или подзаряжает батареи.
[69] Система 702 также может включать в себя блок 772 радиосвязи, который осуществляет функцию передачи и приема радиочастотных сообщений. Блок 772 радиосвязи обеспечивает возможность беспроводного соединения между системой 702 и окружающим миром через оператора телекоммуникационных услуг или поставщика услуг. Передачи на блок 772 радиосвязи и от него проводятся под управлением операционной системы 764. Другими словами, передачи, принятые блоком 772 радиосвязи, могут распространяться на прикладные программы 765 через операционную систему 764 и наоборот.
[70] Визуальный индикатор 720 можно использовать для обеспечения визуальных уведомлений и/или аудиоинтерфейс 774 можно использовать для формирования слышимых уведомлений через преобразователь 725 аудиосигнала. Как показано, визуальным индикатором 720 может быть светодиод (LED). Эти устройства могут быть напрямую подключены к источнику 770 питания, таким образом, что при активации, они остаются включенными в течение длительности, определяемой механизмом уведомления, хотя процессор 760 и другие компоненты могут отключаться для экономии энергии батареи. LED может быть запрограммирован оставаться включенным неопределенно долго, пока пользователь не предпримет действие для указания состояния включенного питания устройства. Аудиоинтерфейс 774 используется для подачи звуковых сигналов пользователю и приема звуковых сигналов от него. Например, помимо подключения к преобразователю 725 аудиосигнала, аудиоинтерфейс 774 также может быть подключен к микрофону для приема слышимого ввода, например, для облегчения телефонного разговора. Микрофон также может служить датчиком аудиосигнала для облегчения управления уведомлениями, что будет описано ниже. Система 702 может дополнительно включать в себя видеоинтерфейс 776, который позволяет пользоваться встроенной камерой 730 для записи неподвижных изображений, видеопотока и пр.
[71] Мобильное вычислительное устройство 700, реализующее систему 702, может иметь дополнительные признаки или функциональные возможности. Например, мобильное вычислительное устройство 700 также может включать в себя дополнительные устройства хранения данных (сменные и/или стационарные), например, магнитные диски, оптические диски или ленту. Такое дополнительное хранилище проиллюстрировано областью 768 энергонезависимого хранения. Периферийный порт 740 позволяет подключать внешние устройства к мобильному вычислительному устройству 700. Внешние устройства могут обеспечивать дополнительные признаки или функциональные возможности мобильного вычислительного устройства 700 и/или позволяют передавать данные на мобильное вычислительное устройство 700 или от него.
[72] Данные/информация, сгенерированные или захваченные мобильным вычислительным устройством 700 и сохраняемые посредством системы 702, могут храниться локально на мобильном вычислительном устройстве 700, как описано выше, или данные могут храниться на любом количестве носителей данных, к которым устройство может осуществлять доступ через блок 772 радиосвязи или через проводное соединение между мобильным вычислительным устройством 700 и отдельным вычислительным устройством, связанным с мобильным вычислительным устройством 700, например, компьютером-сервером в распределенной вычислительной сети, например, интернете. Очевидно, доступ к таким данным/информации можно осуществлять посредством мобильного вычислительного устройства 700 через блок 772 радиосвязи или через распределенную вычислительную сеть. Аналогично, такие данные/информация легко передаются между вычислительными устройствами для хранения и использования с помощью общеизвестных средств передачи и хранения данных/информации, включающих в себя электронную почту и объединенные системы совместного использования данных/информации.
[73] На фиг. 8 показана упрощенная блок-схема распределенной вычислительной системы для практического применения аспектов изобретения. Содержание, которое можно создавать, с которым можно взаимодействовать, или которое можно редактировать с помощью прикладных программ, включающих в себя программное обеспечение, реализующее описанные здесь аспекты изобретения, может сохраняться в различных каналах связи или других типах хранилища. Например, различные документы могут сохраняться с использованием службы 822 каталогов, веб-портала 824, службы 826 почтовых ящиков, хранилища 828 мгновенного обмена сообщениями или сайта 830 социальной сети. Прикладные программы могут использовать любой из этих типов систем и т.п. для обеспечения использования данных, как описано здесь. Сервер 820 может обеспечивать прикладные программы для клиентов. В порядке одного примера, сервер 820 может представлять собой веб-сервер, обеспечивающий прикладные программы по сети. Сервер 820 может обеспечивать прикладные программы по сети для клиентов через сеть 815. В порядке примера, клиентское устройство можно реализовать как вычислительное устройство 600 и воплотить в персональном компьютере 818a, планшетном компьютере 818b и/или мобильном вычислительном устройстве (например, смартфоне) 818c. Любое из этих клиентских устройств может получать содержание из хранилища 816.
[74] Описание и иллюстрация одного или более вариантов осуществления, обеспеченных в этой заявке, предназначены для обеспечения исчерпывающего и полного раскрытия полного объема изобретения для специалистов в данной области техники и никоим образом не призваны ограничивать заявленный объем изобретения. Аспекты, варианты осуществления, примеры и детали, обеспеченные в этой заявке, считаются достаточными для донесения владения и предоставления специалистам в данной области техники возможности практического применения предпочтительных вариантов осуществления заявленного изобретения. Описания структур, ресурсов, операций и действий, считающихся общеизвестными специалистам в данной области техники, могут быть сокращены или опущены во избежание скрытия менее известных или уникальных аспектов изобретения данной заявки. Заявленное изобретение не следует рассматривать как ограничивающееся каким-либо вариантом осуществления, примером или деталью, обеспеченным(ой) в этой заявке, если явно не указано обратное. Независимо от того, показаны или описаны ли они совместно или по отдельности, различные признаки (структурные и методологические) предназначены для выборочного включения или исключения для создания варианта осуществления с конкретным набором признаков. Дополнительно, некоторые или все из показанных или описанных функций и действий, могут осуществляться в любом порядке или одновременно. На основе описания и иллюстрации настоящей заявки, специалист в данной области техники может представить себе вариации, модификации и альтернативы, соответствующие сущности расширенных аспектов общего принципа изобретения, воплощенного в этой заявке, не выходящие за рамки расширенного объема заявленного изобретения.
Изобретение относится к средствам для обнаружения орфанных высказываний. Технический результат заключается в повышении эффективности обнаружения орфанных высказываний. Принимают внедоменное высказывание, отклоненное доменным классификатором системы целенаправленного понимания языка. Оценивают внедоменное высказывание по одному или более признакам семантики, синтаксиса, тега части речи или лексики, определяющим, является ли внедоменное высказывание запросом веб-поиска или орфаном диалоговой системы целенаправленного понимания языка. Определяют, что внедоменное высказывание является орфаном, посредством: проверки оцененного внедоменного высказывания на существование семантического признака, причем семантический признак является сказуемым и/или аргументом; и классификации внедоменного высказывания как орфана, когда сказуемое и аргумент существуют. Генерируют ответ, указывающий, что внедоменное высказывание понято как запрос на выполнение некоторого действия, адресованный диалоговой системе целенаправленного понимания языка. 3 н. и 11 з.п. ф-лы, 9 ил., 4 табл.
1. Способ классификации внедоменного высказывания как запроса веб-поиска или орфана диалоговой системы целенаправленного понимания языка, причем орфан является внедоменным высказыванием, которое выражает конкретную цель, чтобы диалоговая система целенаправленного понимания языка выполнила некоторое действие, причем способ содержит этапы, на которых:
принимают внедоменное высказывание, отклоненное доменным классификатором системы целенаправленного понимания языка;
оценивают внедоменное высказывание по одному или более признакам семантики, синтаксиса, тега части речи или лексики, определяющим, является ли внедоменное высказывание запросом веб-поиска или орфаном диалоговой системы целенаправленного понимания языка;
определяют, что внедоменное высказывание является орфаном, посредством:
проверки оцененного внедоменного высказывания на существование семантического признака, причем семантический признак является сказуемым и/или аргументом; и
классификации внедоменного высказывания как орфана, когда сказуемое и аргумент существуют;
генерируют, когда внедоменное высказывание определено как являющееся орфаном, ответ, указывающий, что внедоменное высказывание понято как запрос на выполнение некоторого действия, адресованный диалоговой системе целенаправленного понимания языка.
2. Способ по п. 1, дополнительно содержащий этапы, на которых:
принимают высказывание, подаваемое в качестве входного сигнала на диалоговую систему целенаправленного понимания языка; и
определяют, что высказывание является внедоменным высказыванием, не покрытым доменом задач, связанным с диалоговой системой целенаправленного понимания языка.
3. Способ по п. 1, дополнительно содержащий этапы, на которых:
генерируют, когда внедоменное высказывание определено как являющееся орфаном, сообщение, сообщающее, что внедоменное высказывание понято как запрос на осуществление машинного действия, адресованный диалоговой системе целенаправленного понимания языка; и
воспроизводят сообщение на устройство вывода, связанное с диалоговой системой целенаправленного понимания языка.
4. Способ по п. 1, в котором этап определения, что внедоменное высказывание является орфаном, дополнительно содержит этап, на котором классифицируют внедоменное высказывание как орфан с использованием классификатора орфанов на основании признаков внедоменного высказывания, подаваемых в качестве входных сигналов на классификатор орфанов.
5. Способ по п. 1, дополнительно содержащий этап, на котором извлекают признаки из высказывания до определения, что внедоменное высказывание является орфаном.
6. Способ по п. 1, дополнительно содержащий этапы, на которых:
семантически кластеризуют множество орфанов; и
идентифицируют семантический кластер, содержащий выбранную меру орфанов, которая указывает пользователей, часто делающих запросы, относящиеся к не поддерживаемому домену задач.
7. Диалоговая система целенаправленного понимания языка, имеющая по меньшей мере один домен, причем диалоговая система целенаправленного понимания языка содержит:
блок извлечения признаков, выполненный с возможностью извлечения признаков из высказывания;
классификатор, выполненный с возможностью приема признаков в качестве входных сигналов, определения, является ли высказывание внедоменным высказыванием, не принадлежащим никакому домену, связанному с классификатором;
блок обнаружения орфанов, выполненный с возможностью приема внедоменного высказывания и определения, является ли внедоменное высказывание орфаном, причем орфан является внедоменным высказыванием, которое выражает конкретную цель, чтобы диалоговая система целенаправленного понимания языка выполнила некоторое действие, причем блок обнаружения орфанов дополнительно содержит:
семантический анализатор, выполненный с возможностью семантически анализировать внедоменное высказывание посредством проверки оцененного внедоменного высказывания на существование семантического признака, причем семантический признак является сказуемым и/или аргументом; и
классификатор, выполненный с возможностью классифицирования внедоменного высказывания как орфана, когда сказуемое и аргумент существуют; и
диспетчер взаимодействия, выполненный с возможностью обработки орфанов без отправки орфана на общий веб-поиск, причем диспетчер взаимодействия дополнительно выполнен с возможностью:
генерировать, когда внедоменное высказывание определено как являющееся орфаном, ответ, указывающий, что внедоменное высказывание понимается как запрос на выполнение некоторого действия, адресованный диалоговой системе целенаправленного понимания языка.
8. Диалоговая система целенаправленного понимания языка по п. 7, в которой диспетчер взаимодействия дополнительно выполнен с возможностью:
генерировать, когда внедоменное высказывание определено как являющееся орфаном, выходной сигнал, указывающий, что орфан понимается как не являющийся запросом веб-поиска, но не поддерживается диалоговой системой целенаправленного понимания языка.
9. Диалоговая система целенаправленного понимания языка по п. 7, в которой блок обнаружения орфанов содержит дифференциальный классификатор, выполненный с возможностью применения модели классификации, использующей признак, связанный с внедоменным высказыванием, полученным с использованием выходного сигнала семантического анализатора, для определения, является ли внедоменное высказывание орфаном.
10. Диалоговая система целенаправленного понимания языка по п. 7, в которой блок обнаружения орфанов дополнительно содержит по меньшей мере один из синтаксического анализатора, блока тегирования частей речи и лексического анализатора.
11. Диалоговая система целенаправленного понимания языка по п. 7, в которой блок обнаружения орфанов содержит дифференциальный классификатор, выполненный с возможностью применения семантической модели классификации.
12. Диалоговая система целенаправленного понимания языка по п. 7, дополнительно содержащая:
устройство ввода, выполненное с возможностью сбора высказываний от пользователя; и
декодер входного сигнала, осуществляющий связь с устройством ввода, причем декодер входного сигнала выполнен с возможностью приема и преобразования высказываний, которые не являются текстовыми, в текст, который может обрабатываться машиной; и
устройство вывода для воспроизведения результата, указывающего орфан, конкретная цель которого не имеет соответствующего диалогового действия, известного диспетчеру взаимодействия.
13. Диалоговая система целенаправленного понимания языка по п. 7, в которой диалоговая система целенаправленного понимания языка является системой выработки, своевременно отвечающей на высказывания пользователей, причем диспетчер взаимодействия дополнительно выполнен с возможностью генерации выходного сигнала, извещающего пользователя о том, что цель неосуществима.
14. Компьютерно-считываемый носитель, содержащий компьютерно-исполнимые инструкции, которые, при выполнении компьютером, вынуждают компьютер осуществлять способ по любому из пп. 1-6.
Изложница с суживающимся книзу сечением и с вертикально перемещающимся днищем | 1924 |
|
SU2012A1 |
Приспособление к автоматическому воздушному тормозу, предназначенное для равномерного торможения и оттормаживания всех вагонов по длине поезда | 1925 |
|
SU20130A1 |
Приспособление для суммирования отрезков прямых линий | 1923 |
|
SU2010A1 |
Изложница с суживающимся книзу сечением и с вертикально перемещающимся днищем | 1924 |
|
SU2012A1 |
Способ защиты переносных электрических установок от опасностей, связанных с заземлением одной из фаз | 1924 |
|
SU2014A1 |
RU 2011121296 A, 10.12.2012. |
Авторы
Даты
2019-09-05—Публикация
2015-08-20—Подача