ОБЕСПЕЧЕНИЕ РУКОВОДСТВА ТЕМАТИЧЕСКИМ ПОИСКОМ
SUPPORTING GUIDELINES OF THEMATIC SEARCH

УРОВЕНЬ ТЕХНИКИ
[0001] Пользователи имеют возможность находить релевантные веб-сайты и другой контент с использованием поисковой машины. Есть разные типы поисков. Некоторые поиски осуществляют поиск конкретного ответа на вопрос (например, какой самый большой город в Канзасе?), а другие поиски осуществляют поиск для изучения темы (например, как работает космический лифт?). Пользователям может быть трудно формулировать запросы, которые возвращают результаты, которые являются полезными. Некоторые поисковые машины предлагают популярные запросы (на основе предыдущих запросов, поданных поисковой машине), которые пользователь может подать вместо написания своего собственного запроса. Однако, популярные запросы часто относятся к одной и той же теме или предмету и порождают сходные результаты. Популярные запросы не помогают пользователю формулировать запрос, который возвращает результаты поиска, относящиеся к сравнительно непопулярным темам.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
[0002] Это краткое изложение сущности изобретения предоставлено для введения подборки концепций в упрощенной форме, которые дополнительно описаны ниже в подробном описании. Это краткое изложение сущности изобретения не предназначено ни для того, чтобы идентифицировать ключевые признаки или существенные признаки заявленного изобретения, ни для использования в качестве помощи в определении объема заявленного изобретения.
[0003] Варианты осуществления настоящего изобретения предоставляют предложения и/или обратную связь тематического поиска. Предложения тематического поиска обеспечивают пользователю возможность обозначения темы или предмета, подлежащего поиску, в комбинации с запросом или вместо запроса. Настоящее изобретение может генерировать многочисленные темы на основе поискового ввода, предоставленного пользователем. В одном варианте осуществления, поисковый ввод является поисковым префиксом, который включает в себя одно или более слов, введенных в поле поискового запроса до того, как завершенный поисковый запрос подается в поисковую машину. Поисковый интерфейс затем представляет пользователю темы, полученные исходя из поискового префикса. Интерфейс может отображать темы в выпадающем списке, который обеспечивает пользователю возможность выбора одной из тем вместо завершения запроса. Варианты осуществления настоящего изобретения могут также представлять предложения автоматически завершенных запросов и соответствующую тему.
[0004] В одном варианте осуществления, пользователь обозначает многочисленные поисковые вводы. Поисковыми вводами может быть текст внутри веб-страницы, обозначенный пользователем в качестве поискового ввода. Поисковыми вводами могли бы быть многочисленные поисковые запросы, поданные во время сеанса поиска. Настоящее изобретение генерирует результаты поиска на основе поисковых вводов и затем представляет темы, извлеченные из результатов поиска. В одном варианте осуществления, темы извлекаются посредством выполнения анализа естественного языка метаданных результатов поиска. Метаданные могут включать в себя унифицированный указатель ресурса ("URL"), заголовок и краткий текст (т.е. небольшую выдержку, показанную с результатом поиска) результата поиска.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0005] Варианты осуществления данного изобретения описаны подробно ниже со ссылкой на прилагающиеся чертежи, в которых:
[0006] фиг. 1 является блок-схемой примерной вычислительной среды, подходящей для реализации вариантов осуществления данного изобретения;
[0007] фиг. 2 является схемой архитектуры вычислительной системы, подходящей для генерирования предложений тематических запросов, в соответствии с вариантом осуществления настоящего изобретения;
[0008] фиг. 3 является схемой связи, осуществляемой между компонентами в вычислительной среде, которая генерирует предложения тематических запросов, в соответствии с вариантом осуществления настоящего изобретения;
[0009] фиг. 4 является графическим представлением поискового интерфейса, который показывает предложения тематических запросов и автоматически завершенные запросы в ответ на поисковый префикс, в соответствии с вариантом осуществления настоящего изобретения;
[0010] фиг. 5 является схемой последовательности операций, показывающей способ генерирования предложений тематических запросов, в соответствии с вариантом осуществления настоящего изобретения;
[0011] фиг. 6 является схемой последовательности операций, показывающей способ генерирования предложений тематических запросов исходя из поискового префикса, в соответствии с вариантом осуществления настоящего изобретения; и
[0012] фиг. 7 является схемой последовательности операций, показывающей способ генерирования предложений тематических запросов в ответ на многочисленные поисковые вводы, в соответствии с вариантом осуществления настоящего изобретения.
ПОДРОБНОЕ ОПИСАНИЕ
[0013] Предмет вариантов осуществления данного изобретения описывается здесь со спецификой, чтобы отвечать установленным требованиям. Однако, само описание не предназначено для ограничения объема этого патента. Напротив, авторы изобретения предполагают, что заявленный предмет мог бы также быть осуществлен другими путями, чтобы включать в себя разные этапы или комбинации этапов, аналогичных этапам, описанным в этом документе, совместно с другими настоящими и будущими технологиями. Более того, хотя термины "этап" и/или "блок" могут быть использованы в настоящем документе, чтобы означать разные элементы используемых способов, данные термины не следует интерпретировать как предполагающие какой-либо конкретный порядок среди или между различными этапами, раскрытыми в настоящем документе, если только порядок отдельных этапов не описан явно.
[0014] Варианты осуществления настоящего изобретения вычисляют и представляют потенциальные предложения и/или обратную связь тематического поиска. Предложения тематического поиска обеспечивают пользователю возможность обозначения темы или предмета, подлежащего поиску, в комбинации с запросом или вместо запроса. Настоящее изобретение может генерировать многочисленные темы на основе поискового ввода, предоставленного пользователем. В одном варианте осуществления, поисковый ввод является поисковым префиксом, который включает в себя одно или более слов, введенных в поле поискового запроса до того, как завершенный поисковый запрос подается в поисковую машину. Поисковый интерфейс затем представляет пользователю темы, полученные исходя из поискового префикса. Интерфейс может отображать темы в выпадающем списке, который обеспечивает пользователю возможность выбора одной из тем вместо завершения запроса. Варианты осуществления настоящего изобретения могут также представлять предложения автоматически завершенных запросов и соответствующую тему.
[0015] В одном варианте осуществления, пользователь обозначает многочисленные поисковые вводы. Поисковыми вводами может быть текст внутри веб-страницы, обозначенный пользователем в качестве поискового ввода. Поисковыми вводами могли бы быть многочисленные поисковые запросы, поданные во время сеанса поиска. Настоящее изобретение генерирует результаты поиска на основе поисковых вводов и затем представляет темы, извлеченные из результатов поиска. В одном варианте осуществления, темы извлекаются посредством выполнения анализа естественного языка метаданных результатов поиска. Метаданные могут включать в себя унифицированный указатель ресурса ("URL"), заголовок и краткий текст (т.е. небольшую выдержку, показанную с результатом поиска) результата поиска.
[0016] В одном аспекте, предоставляется способ генерирования предложений тематических запросов. Способ включает в себя этапы, на которых принимают поисковый запрос и генерируют предварительный набор результатов поиска для поискового запроса. Способ также содержит этап, на котором извлекают темы из набора результатов поиска. Способ также содержит этапы, на которых выводят темы для отображения до того, как предварительные результаты поиска выводятся для отображения, и принимают выбор отдельной темы в рамках тем. Способ также содержит этап, на котором выводят для отображения поднабор результатов поиска из предварительного набора результатов поиска, которые связаны с этой отдельной темой.
[0017] В другом аспекте, предоставляется способ генерирования предложений тематических запросов исходя из поискового префикса. Способ включает в себя этап, на котором принимают поисковый префикс. Поисковым префиксом является группа символов, введенных пользователем в поисковый интерфейс. Поисковый префикс на один или более символов меньше, чем завершенный поисковый запрос. Способ также содержит этап, на котором генерируют автоматически завершенный запрос, который основан на поисковом префиксе. Способ также содержит этап, на котором генерируют набор результатов поиска для автоматически завершенного запроса. Способ также содержит этап, на котором извлекают темы из набора результатов поиска. Способ также содержит этап, на котором выводят темы для отображения и выбора пользователем.
[0018] В другом аспекте, предоставляется способ генерирования предложений тематических запросов в ответ на многочисленные поисковые вводы. Способ включает в себя этапы, на которых принимают многочисленные поисковые вводы от пользователя, которые все являются частью сеанса поиска, и для каждого пользовательского ввода генерируют набор результатов поиска. Способ также включает в себя этап, на котором извлекают темы из каждого набора результатов поиска. Способ также включает в себя этап, на котором идентифицируют одну или более общих тем, которые были извлечены из по меньшей мере двух наборов результатов поиска. Способ также включает в себя этап, на котором выводят одну или более общих тем для отображения. Способ также включает в себя этап, на котором принимают выбор отдельной темы из этих одной или более общих тем. Способ также включает в себя этап, на котором выводят для отображения поднабор результатов поиска из набора результатов поиска, которые связаны с этой отдельной темой.
[0019] Кратко описав обзор вариантов осуществления настоящего изобретения, ниже описывается примерная операционная среда, подходящая для использования при реализации вариантов осуществления данного изобретения.
Примерная операционная среда
[0020] Ссылаясь на чертежи в общем, и первоначально на фиг. 1 в частности, примерная операционная среда для реализации вариантов осуществления данного изобретения показана и обозначена в общем как вычислительное устройство 100. Вычислительное устройство 100 является всего одним примером подходящей вычислительной среды и не предназначено для наложения какого-либо ограничения в отношении объема использования или функциональности данного изобретения. Вычислительное устройство 100 не должно интерпретироваться как имеющее какую-либо зависимость или требование, относящееся к какому-либо одному или комбинации проиллюстрированных компонентов.
[0021] Данное изобретение может быть описано в основном контексте компьютерного кода или используемых машиной инструкций, включая исполняемые компьютером инструкции, такие как программные компоненты, исполняемые компьютером или другой машиной, такой как персональный цифровой помощник или другое карманное устройство. В основном, программные компоненты, включающие в себя стандартные программы, программы, объекты, компоненты, структуры данных и подобное, относятся к коду, который выполняет конкретные задачи или реализует конкретные абстрактные типы данных. Варианты осуществления данного изобретения могут быть применены на практике в разнообразии конфигураций систем, включающих в себя карманные устройства, потребительскую электронику, компьютеры общего назначения, специальные вычислительные устройства и т.д. Варианты осуществления данного изобретения могут также быть применены на практике в распределенных вычислительных средах, где задачи выполняются устройствами удаленной обработки данных, которые связаны через сеть связи.
[0022] В продолжение ссылки на фиг. 1, вычислительное устройство 100 включает в себя шину 110, которая прямо или косвенно соединяет следующие устройства: память 112, один или более процессоров 114, один или более компонентов 116 представления то, порты 118 ввода/вывода (I/O), компоненты 120 I/O и иллюстративный источник 122 питания. Шина 110 представляет то, что может быть одной или более шинами (такой как адресная шина, шина данных или их комбинацией).
Хотя различные блоки с фиг. 1 показаны линиями для ясности, в реальности, очерчивание различных компонентов не настолько очевидно, и, образно говоря, линии были бы скорее серыми и нечеткими. Например, компонентом представления, таким как устройство отображения, может считаться компонент 120 I/O. Также, процессоры имеют память. Авторы настоящего изобретения понимают, что такова природа данной области техники, и повторяют, что схема по фиг. 1 является лишь иллюстративной для примерного вычислительного устройства, которое может быть в связи с одним или более вариантами осуществления данного изобретения. Различие не делается между такими категориями как "рабочая станция", "сервер", "переносной компьютер", "карманное устройство" и т.д., так как все они могут предполагаться в рамках объема по фиг.1, и ссылки на них даются как на "компьютер" или "вычислительное устройство".
[0023] Вычислительное устройство 100 обычно включает в себя разнообразие компьютерных носителей данных. В качестве примера, а не ограничения, компьютерные носители данных могут содержать оперативную память (RAM); постоянную память (ROM); электронно-стираемую программируемую постоянную память (EEPROM); флэш-память или другие технологии памяти; постоянную память на компакт-диске (CDROM), универсальные цифровые диски (DVD) и другие оптические или голографические носители; магнитные кассеты, магнитные пленки, накопители на магнитном диске или другие магнитные запоминающие устройства. Компьютерные носители данных могут быть постоянными.
[0024] Память 112 включает в себя компьютерные носители данных в виде энергозависимой и энергонезависимой памяти. Память 112 может быть съемной, несъемной или их комбинацией. Примерная память включает в себя твердотельную память, накопители на жестких дисках, накопители на оптических дисках и т.д. Вычислительное устройство 100 включает в себя один или более процессоров 114, которые считывают данные из различных объектов, таких как шина 110, память 112 или компоненты 120 I/O. Компонент(ы) 116 представления представляет указатели данных пользователю или другому устройству. Примерные компоненты 116 представления включают в себя устройство отображения, динамик, печатающий компонент, вибрирующий компонент и т.д. Порты 118 I/O обеспечивают вычислительному устройству 100 возможность логического соединения с другими устройствами, включающими в себя компоненты 120 I/O, некоторые из которых могут быть встроенными. Иллюстративные компоненты 120 I/O включают в себя микрофон, джойстик, игровой контроллер, спутниковую тарелку, сканер, принтер, беспроводное устройство и т.д.
Примерная архитектура системы
[0025] Обращаясь теперь к фиг. 2, показана примерная архитектура 200 вычислительной системы, подходящая для генерирования предложений тематических запросов, в соответствии с вариантом осуществления настоящего изобретения. Архитектура 200 вычислительной системы, показанная на фиг. 2, является примером одной подходящей архитектуры 200 вычислительной системы. Архитектура 200 вычислительной системы содержит одно или более вычислительных устройств, аналогичных вычислительному устройству 100, описанному со ссылкой на фиг. 1. Архитектура 200 вычислительной системы не должна быть интерпретирована как имеющая какую-либо зависимость или требование, относящееся к какому-либо одиночному модулю/компоненту или комбинации модулей/компонентов, проиллюстрированных в ней. Архитектура 200 вычислительной системы включает в себя интерфейсный компонент 210 поиска, поисковая машина 212, блок 214 извлечения темы, хранилище 216 данных поиска и компонент 218 автоматического завершения запроса.
[0026] Интерфейсный компонент 210 поиска генерирует поисковый интерфейс, посредством которого пользователь вводит критерии поиска и принимает результаты поиска. Поисковый интерфейс может быть передан по сети, такой как Интернет, и отображен в браузере, работающем на клиентском устройстве. В другом варианте осуществления, поисковый интерфейс может взаимодействовать с панелью инструментов поиска. Интерфейсный компонент 210 поиска взаимодействует с поисковой машиной 212 для приема результатов поиска, которые выводятся для отображения пользователю. Интерфейсный компонент 210 поиска может передавать поисковый запрос в поисковую машину и принимать набор результатов поиска от поисковой машины 212. Интерфейсный компонент 210 поиска может осуществлять связь с другими компонентами, такими как блок 214 извлечения темы.
[0027] Блок 214 извлечения темы может передавать последовательность тем, относящихся к запросу, на интерфейсный компонент 210 поиска. Эти темы могут быть представлены для выбора пользователем в рамках интерфейса, сгенерированного интерфейсным компонентом 210 поиска. Интерфейсный компонент 210 поиска может осуществлять связь с другими компонентами, которые не показаны внутри архитектуры 200 вычислительной системы. Например, интерфейсный компонент 210 поиска может осуществлять связь с рекламной машиной, которая предоставляет рекламные объявления, которые должны быть представлены на странице результатов поиска. Интерфейсный компонент 210 поиска может передавать выбранную пользователем тему в рекламную машину и принимать рекламные объявления, которые относятся к выбранной пользователем теме.
[0028] Поисковая машина 212 принимает поисковые запросы и генерирует результаты поиска для пользователя. Поисковая машина может включать в себя поисковых роботов, которые исследуют доступный контент и создают индекс, который может быть использован для идентификации релевантного контента в ответ на поисковые запросы. Поисковая машина может также ранжировать результаты поиска на основе релевантности или реакции на запрос. Результаты поисковых запросов, показанные в ответ на поисковые запросы, и взаимодействия пользователя с этими результатами могут быть сохранены внутри хранилища 216 данных поиска. Хранилище 216 данных поиска может также включать в себя упомянутые ранее поисковые индексы, также как и другие наборы данных, сгенерированные компонентами, показанными или не показанными на фиг. 2. В дополнение к поисковой машине 212, другие компоненты могут считывать из хранилища 216 данных поиска и записывать в него данные.
[0029] Блок 214 извлечения темы извлекает темы из различного контента. Например, блок 214 извлечения темы имеет возможность извлечения тем из веб-страниц. В одном варианте осуществления, поисковая машина 212 отправляет набор результатов поиска, содержащий веб-страницы, в блок 214 извлечения темы. Блок 214 извлечения темы анализирует веб-страницы для извлечения ключевых слов, объектов, и определения темы, которая связана с веб-страницей. Тема является предметной категорией, связанной с веб-страницей. Как только блок 214 извлечения темы выявил одну или более тем для веб-страниц, эти темы могут быть переданы на интерфейсный компонент 210 поиска, который отображает их пользователю для выбора.
[0030] Темы могут быть извлечены с использованием технологий обработки естественного языка, такой как TF-IDF (частота термина на обратную частоту документа), которая может быть использована для определения списка ключевых слов или вероятных тем для каждой страницы. Наиболее часто извлекаемые темы из многочисленных страниц могут быть представлены пользователю для содействия с запросами. Блок 214 извлечения темы может поддерживать индекс, который идентифицирует темы и веб-страницу, из которой они извлечены. После того, как тема выбрана пользователем, индекс может быть использован для возврата результатов поиска, которые связаны с данной темой.
[0031] В одном варианте осуществления, блок 214 извлечения темы анализирует только метаданные веб-страницы для определения темы, например унифицированный указатель ресурса ("URL"), краткий текст (т.е. небольшую выдержку, показанную с результатом поиска) и заголовок. В этом варианте осуществления, оставшийся контент веб-страницы не анализируется блоком извлечения темы для определения предмета или темы веб-страницы.
[0032] Компонент 218 автоматического завершения принимает поисковый префикс и пытается сгенерировать предлагаемые запросы на основе поискового префикса. Поисковый префикс включает в себя символы, поданные пользователем в поисковый интерфейс до выбора или подачи поиска. Префикс может быть меньше, чем целое слово или всего лишь одной буквой. В других вариантах осуществления, префикс может включать в себя многочисленные слова. В другом варианте осуществления, префикс может включать в себя несколько слов, также как и незавершенное слово. Компонент 218 автоматического завершения генерирует предлагаемые запросы и представляет их пользователю для возможного выбора. По мере введения пользователем дополнительных символов префикс может изменяться, и компонент 218 автоматического завершения может изменить предлагаемые запросы в соответствии с принятыми дополнительными символами. Компонент 218 автоматического завершения может попытаться сопоставить поисковый префикс с запросами, которые часто подавались ранее другими пользователями. Компонент 218 автоматического завершения может передать один или более автоматически завершенных запросов поисковой машине 212, которая генерирует результаты поиска, которые передаются в блок 214 извлечения темы. Таким образом, темы генерируются для представления пользователю до завершения поискового запроса.
[0033] Обращаясь теперь к фиг. 3, показана связь, которая обеспечивает темам возможность отображения пользователю в поисковом интерфейсе, в соответствии с вариантом осуществления настоящего изобретения. Вычислительная среда 300 включает в себя клиентское устройство 305, интерфейсный компонент 310, поисковая машина 312 и блок 314 извлечения темы. Клиентское устройство 305 может быть вычислительным устройством, аналогичным вычислительному устройству 100, описанному ранее со ссылкой на фиг. 1. Примерные устройства включают в себя переносной компьютер, настольный компьютер, планшетный компьютер, интеллектуальный телефон и телевизор. Клиентское устройство 305 может быть коммуникационно соединено с другими компонентами посредством сети, такой как Интернет.
[0034] Интерфейсный компонент 310 поиска может быть аналогичным интерфейсному компоненту 210 поиска, описанному ранее со ссылкой на фиг. 2. Поисковая машина 312 может быть аналогичной поисковой машине 212, описанной ранее со ссылкой на фиг. 2. Блок 314 извлечения темы может быть аналогичным блоку 214 извлечения темы, описанному ранее со ссылкой на фиг. 2.
[0035] Первоначально, клиентское устройство 305 передает поисковый префикс 320 в интерфейсный компонент 310 поиска. Поисковый префикс 320 может быть последовательностью символов, которые начинают образовывать поисковый запрос. Поисковый префикс 320 может включать в себя символы, введенные в поисковый интерфейс до подачи завершенного поискового запроса. Интерфейсный компонент 310 поиска пересылает поисковый префикс 320 в поисковую машину 312.
[0036] Поисковая машина 312 генерирует 322 последовательность результатов поиска, которые отвечают поисковому префиксу. Поисковая машина может сначала передать поисковый префикс 320 компоненту автоматического завершения (не показан), который генерирует целые запросы на основе поискового префикса. Целый запрос может совпадать или частично совпадать с поисковым префиксом. Один или более из целых запросов могут быть использованы для генерирования результатов поиска. Результаты 324 поиска затем генерируются с использованием одного или более целых запросов. Эти результаты 324 передаются из поисковой машины 312 в блок 314 извлечения темы. Блок 314 извлечения темы извлекает 330 темы 332 из результатов 324 поиска. Как упомянуто ранее, блок 314 извлечения темы может использовать способ обработки естественного языка для извлечения тем из результатов.
[0037] Темы 332 передаются из блока 314 извлечения темы в интерфейсный компонент 310 поиска. Интерфейсный компонент 310 поиска затем интегрирует 334 темы в функцию содействия с запросами, которая может быть аналогичной функции содействия с запросами, описываемой в дальнейшем со ссылкой на фиг. 4. Функция помощи затем передается как автоматическое предложение 336 на клиентское устройство 305. Пользователь клиентского устройства 305 может выбрать одну или более тем.
[0038] Обращаясь теперь к фиг. 4, показан поисковый интерфейс 400, показывающий тематические предложения, в соответствии с вариантом осуществления настоящего изобретения. Поисковый интерфейс 400 может быть сгенерирован интерфейсным компонентом поиска и отображен в окне браузера. Варианты осуществления настоящего изобретения не ограничены отображением интерфейса в окне браузера. Интерфейс 400 включает в себя поле 410 поискового ввода. Буквы "ягу" 412 введены внутри поля 410 поискового ввода. Буквы "ягу" 412 являются примером поискового префикса. Как упомянуто ранее, поисковый префикс содержит один или более символов, введенных в поле поискового ввода до подачи запроса.
[0039] Ниже поля поискового ввода показано поле 420 содействия поиску. Поле 420 содействия поиску включает в себя автоматически завершенный запрос "ягуар" 422. Автоматически завершенным запросом может быть популярный запрос, который начинается с поискового префикса, введенного в поле поиска. Автоматически завершенный запрос является целым запросом, который пользователь может выбрать вместо подачи своего запроса.
[0040] Поле 420 содействия поиску также включает в себя три темы, которые может выбрать пользователь. Темы включают в себя "ягуар кошка" 424, "ягуар автомобиль" 426 и "ягуар футбол" 428. Пользователь может выбрать любую из этих тем и затем принять результаты поиска, которые отвечают запросу "ягуар" и находятся в рамках выбранной темы. Например, если пользователь выбрал "ягуар кошка" 424, будут показаны результаты поиска, которые отвечали запросу "ягуар" и относились к теме "кошка". В этом случае, темы показываются с автоматически завершенным запросом как пара. В другом варианте осуществления, темы могут быть показаны без автоматически завершенного запроса. Например, поле содействия поиску могло бы привести список "футбол", "автомобиль" и "кошка" вместо "ягуар футбол", "ягуар автомобиль" и "ягуар кошка".
[0041] Обращаясь теперь к фиг. 5, показана схема последовательности операций, показывающая способ 500 генерирования предложений тематических запросов, в соответствии с вариантом осуществления настоящего изобретения. Предложение тематического запроса дает пользователю одну или более тем для выбора в комбинации со своим запросом или вместо своего запроса. На этапе 510 принимается поисковый запрос. Поисковый запрос может быть автоматически завершенным поисковым запросом, сгенерированным на основе поискового префикса, введенного в поисковый интерфейс пользователем. В другом варианте осуществления, поисковый запрос вводится в поисковый интерфейс, но не подается для поиска.
[0042] На этапе 520 генерируется предварительный набор результатов поиска. Предварительный набор результатов поиска отвечает поисковому запросу. Предварительный набор результатов поиска может быть сгенерирован поисковой машиной. Предварительный набор результатов поиска может содержать пороговое число общих ответных результатов поиска, возвращенных поисковой машиной (которое может легко насчитывать тысячи). Например, 50 лучших результатов поиска, возвращенных поисковой машиной, могут образовать набор результатов поиска. Результаты поиска могут быть ранжированы релевантности до применения порога для образования набора результатов поиска. Таким образом, предварительным набором результатов поиска могут быть 50 результатов поиска с наивысшим рангом.
[0043] На этапе 530 темы извлекаются из набора результатов поиска. В одном варианте осуществления, темы извлекаются с использованием метода обработки естественного языка. В одном варианте осуществления, темы извлекаются посредством применения метода обработки естественного языка только к метаданным, связанным с результатами поиска. Примеры метаданных включают в себя унифицированный указатель ресурса ("URL") и заголовок результата поиска. Другие метаданные включают в себя ключевые слова, связанные с результатами поиска, и краткий текст (т.е. с результатом поиска). В другом варианте осуществления, контент веб-страниц или документов анализируется вместо метаданных или в дополнение к ним.
[0044] На этапе 540 темы выводятся для отображения. Темы выводятся для отображения до вывода для отображения предварительных результатов поиска. Другими словами, пользователю представляется одна или более тем до отображения пользователю каких-либо результатов поиска. В одном варианте осуществления, темы отображаются пользователю в выпадающем списке содействия с запросами, таком как выпадающий список, описанный ранее со ссылкой на фиг. 4. Возможны другие интерфейсы. Например, пользователю может быть представлен интерфейс выбора темы, который обеспечивает пользователю возможность выбора одной или более тем.
[0045] На этапе 550 принимается выбор отдельной темы среди упомянутых тем. Пользователь может выбрать тему посредством щелчка (клика) на ней. Выбор может быть передан из поискового интерфейса в поисковую машину, которая использует данный выбор для возврата релевантных результатов. На этапе 560 выводится для отображения поднабор результатов поиска из предварительного набора результатов поиска, которые связаны с упомянутой отдельной темой. Поднабор результатов поиска может быть выбран поисковой машиной. Если результатов поиска меньше, чем пороговое число результатов поиска внутри предварительного набора результатов поиска, которые соответствуют выбранной теме, то дополнительные результаты поиска, которые не относятся к данной теме, могут быть представлены в нижней части страницы результатов поиска. Например, страница результатов поиска может показывать пользователю десять результатов поиска. Если доступны только семь результатов поиска, которые относятся к выбранной теме, то они показываются в верхней части страницы результатов поиска с дополнительными тремя результатами поиска, вытащенными из одной или более других тем. В другом варианте осуществления, поисковая машина осуществляет поиск дополнительных результатов, которые отвечают теме из вне предварительного набора результатов поиска, которые были сгенерированы первоначально. Это может быть совершено посредством перезапуска поиска, который был использован для генерирования предварительных результатов поиска, и затем фильтрации посредством выбранной темы.
[0046] В дополнительном варианте осуществления, темы представляются для отображения вместе с результатами поиска даже после того, как тема была выбрана ранее пользователем. При событии, когда пользователь не находит результатов поиска, которые отвечают на вопрос пользователя, пользователь может выбрать разные темы, и результаты поиска будут обновлены на основе выбора темы без введения пользователем нового запроса.
[0047] Обращаясь теперь к фиг. 6, показан способ 600 генерирования предложений тематических запросов исходя из поискового префикса, в соответствии с вариантом осуществления настоящего изобретения. Как упомянуто выше, поисковым префиксом является группа символов, введенных пользователем в поисковый интерфейс. В общем, поисковый префикс на один или более символов меньше, чем завершенный поисковый запрос. Например, символы "ягу" могут быть поисковым префиксом запроса "ягуар". Таким образом, поисковый префикс предполагает, что поисковый запрос является в некотором смысле незавершенным и что пользователь все еще добавляет символы. Однако, в одном варианте осуществления, поисковый префикс может быть завершенным запросом, но до того, как запрос фактически подается в поисковую машину. Как только поисковый запрос подается в поисковую машину, он становится завершенным запросом и больше не является поисковым префиксом.
[0048] На этапе 610 принимается поисковый префикс. Поисковый префикс может быть принят компонентом автоматического завершения. На этапе 620 генерируется автоматически завершенный запрос, который основан на поисковом префиксе. Генерирование автоматически завершенного запроса было описано ранее.
[0049] На этапе 630 генерируется набор результатов поиска, которые отвечают автоматически завершенному запросу. Как упомянуто ранее, набором результатов поиска могут быть 50 наиболее релевантных поисковых запросов, которые отвечают автоматически завершенному запросу. Пятьдесят является лишь примером, и для генерирования набора результатов поиска могло бы быть использовано другое пороговое число результатов поиска.
[0050] На этапе 640 темы извлекаются из набора результатов поиска. Как упомянуто, для извлечения тем может быть использован метод обработки естественного языка. В одном варианте осуществления, темы извлекаются посредством анализа только метаданных, связанных с результатами поиска. На этапе 650 выводятся темы для отображения и выбора пользователем. После того, как принят выбор отдельной темы, результаты поиска, которые отвечают этой отдельной теме, могут быть выведены для отображения. Это иллюстрирует, что темы выводятся для отображения до вывода для отображения результатов поиска. Другими словами, результаты поиска генерируются в фоновом режиме, так чтобы темы могли быть извлечены из них, но первоначальный набор результатов поиска не представляется для вывода для отображения. В одном варианте осуществления, темы выводятся для отображения в комбинации с одним или более предложениями автоматически завершенных запросов. В качестве примера с фиг. 4, автоматически завершенный запрос "ягуар" мог бы быть объединен с темой "кошка".
[0051] Обращаясь теперь к фиг. 7, показан способ 700 генерирования предложений тематических запросов в ответ на многочисленные поисковые вводы, в соответствии с вариантом осуществления настоящего изобретения. На этапе 710 от пользователя принимаются многочисленные поисковые вводы. Многочисленные поисковые вводы все являются частью сеанса поиска. То, что поисковые вводы все являются частью сеанса поиска, может быть сделано явным посредством ввода, принятого от пользователя. Например, пользователь может нажать кнопку на поисковом интерфейсе, такую как кнопка, связанная с панелью инструментов поиска, что указывает начало сеанса поиска. В другом варианте осуществления, очерчивание границ сеанса поиска определяется посредством анализа поведения пользователя в сети. Например, поисковые вводы, подаваемые в близкой последовательности друг к другу, могут быть определены как часть общего сеанса поиска. По истечении некоторого времени между поисковыми запросами, последовательные поисковые вводы могут быть ассоциированы с новым сеансом поиска. В дополнение к заданию того, что начался сеанс поиска, пользователь может предоставить явный ввод, указывающий, что сеанс поиска закончен. Поисковыми вводами может быть запрос. В некоторых случаях, запрос может быть подан в поисковую машину, и результаты возвращены. В этом варианте осуществления, многочисленные поисковые вводы являются последовательностью поисков, проведенных пользователем, из поисковых вводов этапа 710.
[0052] В другом варианте осуществления, поисковыми вводами являются участи текста (например, слова или фразы), явно обозначенные пользователем как поисковый ввод. Например, пользователь может выделить или щелкнуть по словам внутри веб-страницы, чтобы обозначить их как поисковые вводы. В одном варианте осуществления, пользователь может "перетащить" (drag) слова и фразы в интерфейс сеанса поиска. Слова и фразы в рамках одного "отпускания" (drop) могут составлять один поисковый ввод. Таким образом, по мере повторения пользователем операции перетаскивания с разными фразами, генерируются многочисленные поисковые вводы.
[0053] В другом варианте осуществления, поисковыми вводами являются ключевые слова, которые автоматически извлекаются из веб-страницы, которую просматривает пользователь. Таким образом, ключевые слова извлекаются из веб-страниц, по мере осуществления навигации пользователем по последовательности страниц во время сеанса поиска. Пользователь не должен явно задавать какие-либо ключевые слова в этом варианте осуществления.
[0054] На этапе 720 для каждого поискового ввода генерируется набор результатов поиска. Результаты поиска могут быть сгенерированы поисковой машиной. На этапе 730 темы извлекаются из каждого набора результатов поиска. На этапе 740 идентифицируются одна или более общих тем среди наборов результатов поиска. Извлеченные темы могут быть ранжированы на основе частоты появления внутри разных наборов результатов поиска. Например, если тема извлечена из каждого из наборов результатов поиска, она может быть ранжирована высоко. В дополнение, может учитываться число раз, которое тема имеет место внутри каждого набора результатов поиска. Таким образом, тема, которая возникает несколько раз в каждом наборе результатов поиска, может быть ранжирована выше, чем тема, которая возникает только раз в каждом наборе результатов поиска. В одном варианте осуществления, больше веса дается количеству наборов результатов поиска, из которых извлечена тема, чем числу раз, которое тема извлечена из одного набора результатов поиска.
[0055] На этапе 750 одна или более тем выводятся для отображения. На этапе 760 принимается выбор отдельных тем среди одной или более общих тем. На этапе 780 поднабор результатов поиска из набора результатов поиска выводится для отображения пользователю. Поднабор результатов поиска связан с отдельной темой. В одном варианте осуществления, набор результатов поиска не выводится для отображения пользователю до приема выбора.
[0056] В одном варианте осуществления, инструкция для начала нового сеанса поиска принимается от пользователя. Поисковые вводы собираются посредством одного или более способов до тех пор, пока пользователь не предоставит инструкцию, что сеанс поиска завершен. В это время, темы отображаются пользователю для выбора. Пользователь затем выбирает тему или темы, и предоставляются результаты поиска, отвечающие этим темам.
[0057] Варианты осуществления данного изобретения были описаны как иллюстративные, а не ограничивающие. Следует понимать, что конкретные признаки и подкомбинации являются полезными и могут быть использованы без ссылки на другие признаки и подкомбинации. Это предусматривается формулой изобретения и находится в рамках ее объема.