KR20060017502A - 개별 소스들로부터의 검색 엔진 결과들을 하나의 검색결과로 블렌딩하는 방법 및 시스템 - Google Patents

개별 소스들로부터의 검색 엔진 결과들을 하나의 검색결과로 블렌딩하는 방법 및 시스템 Download PDF

Info

Publication number
KR20060017502A
KR20060017502A KR1020057020296A KR20057020296A KR20060017502A KR 20060017502 A KR20060017502 A KR 20060017502A KR 1020057020296 A KR1020057020296 A KR 1020057020296A KR 20057020296 A KR20057020296 A KR 20057020296A KR 20060017502 A KR20060017502 A KR 20060017502A
Authority
KR
South Korea
Prior art keywords
search
result
list
search engine
entry
Prior art date
Application number
KR1020057020296A
Other languages
English (en)
Other versions
KR100778159B1 (ko
Inventor
로버트 엘. 주니어. 트래비스
Original Assignee
오버츄어 서비시즈, 인크.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 오버츄어 서비시즈, 인크. filed Critical 오버츄어 서비시즈, 인크.
Publication of KR20060017502A publication Critical patent/KR20060017502A/ko
Application granted granted Critical
Publication of KR100778159B1 publication Critical patent/KR100778159B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9538Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99934Query formulation, input preparation, or translation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99944Object-oriented database structure
    • Y10S707/99945Object-oriented database structure processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

복수의 검색 소스 각각으로부터의 복수의 검색 엔진 결과를 하나의 검색 엔진으로 블렌딩하는 방법 및 시스템이 제공된다. 각 검색 소스로부터 엔트리의 결과 리스트가 수신된다. 각 결과 리스트는 리스트 상의 각 엔트리에 대해 적어도 엔트리의 위치, 문서의 어드레스, 및 문서의 상관도 스코어를 포함한다. 판정된 변환은, 변환된 스코어를 생성하기 위해 수신된 결과 리스트 중 적어도 하나 내의 도큐먼ㅌ의 적어도 서브세트의 상관도 스코어에 적용된다. 최종적으로 각 결과 리스트의 부분들이 결합되어 엔트리의 블렌딩된 리스트를 포함하는 블렌딩된 검색 엔진 결과를 생성한다. 엔트리의 블렌딩된 리스트의 순서화는 문서의 변환된 스코어에 적어도 부분적으로 기초한 것이다.
검색 엔진, 검색 소스, 블렌딩, 엔트리, 상관도 스코어

Description

개별 소스들로부터의 검색 엔진 결과들을 하나의 검색 결과로 블렌딩하는 방법 및 시스템{METHOD AND SYSTEM FOR BLENDING SEARCH ENGINE RESULTS FROM DISPARATE SOURCES INTO ONE SEARCH RESULT}
본 발명은, 예컨대 인터넷 또는 인트라넷에 연결된 서버 상에 저장되는 문서와 같은 문서의 집합에 문서들을 위치시키는 검색 엔진 분야에 관한 것으로, 특히, 본 발명은 복수의 검색 엔진 소스들 각각으로부터 복수의 검색 엔진을 블렌딩하여 블렌딩된 검색 엔진 결과를 생성하는 방법 및 시스템에 관한 것이다.
인터넷은 많은 수의 클라이언트 디바이스 및 서버 디바이스 모두를 포함하는 컴퓨터의 대형 네트워크이다. 다른 기능들 중에서, 서버 디바이스는 때때로 네트워크를 통해 클라이언트에 의해 전송된 요청에 응답하여 클라이언트 디바이스에 문서를 네트워크를 통해 제공한다. 요청은 전형적으로 문서의 어드레스를 포함한다. 인터넷 상에서, URL(uniform resource locator)은 문서의 어드레스를 특정하는데 종종 사용되며, 클라이언트가 요청하는 서버상의 특정 문서와 서버 모두를 식별한다. 문서는 텍스트 파일, 워드 프로세싱 파일, 오디오 클립, 비디오 클립, 및 전자 데이터의 임의의 다른 타입을 포함하여, 네트워크를 통해 전송될 수 있는 임의의 수의 정보 타입들 중 하나일 수 있다. 이런 방식에서, 인터넷을 통해 클라이언 트 컴퓨터에 이용가능한 문서의 집합은 통상 웹(world wide web)으로 언급된다.
인터넷에 연결된 컴퓨터는 클라이언트 디바이스, 서버 디바이스, 또는 이들 양자일 수 있다. 인터넷 상의 서버 디바이스의 특정 타입은 검색 엔진 시스템으로 언급된다. 검색 엔진 시스템은 또한 인터넷이 아닌 예컨대 회사 인트라넷과 같은 네트워크상에 존재한다. 그러나, 웹으로부터 정보를 요구하는 클라이언트 디바이스의 사용자는 모든 관련된 문서 또는 그 중 어느 하나의 URL을 확신하지 못하고, 전형적으로 질의로 언급되는 요청을 검색 엔진에 제출한다. 질의는 클라이언트 디바이스의 사용자가 관심 있는 정보의 타입을 기술하는 하나 이상의 용어를 포함한다. 검색 엔진은 전형적으로 문서의 데이터베이스를 웹상에서 유지한다. 각 데이터베이스는 워드 또는 임의의 타입의 전자적으로 저장된 데이터일 수 있는 중요 용어를 포함하며, 중요 용어를 포함하는 문서의 URL과 대응한다. 보다 일반적으로, 중요 용어 대신에 또는 이에 덧붙여, 데이터베이스는 문서의 특징을 저장한다. 일부 특징은 문서의 속성을 직접 나타내는 값이며, 특징의 예는 문서의 길이이다. 다른 특징은 문서와 질의 간의 일부 타입의 비교를 가능하게 하여 질의 내의 주어진 용어가 문서에 나타나는 빈도가 이런 비교의 일례로서 작용하게 된다.
클라이언트 디바이스의 사용자에 의해 제출된 질의에 응답하여, 검색 엔진은 그 데이터베이스에 기초하여, 질의와 관련된 인덱스 내의 문서의 서브세트를 전형적으로 판정한다. 부가적으로, 검색 엔진 시스템은 전형적으로 질의에 대한 서브세트 내의 각 문서의 상관도를 추정하고 질의에 대한 서브세트 내의 각 문서에 대한 "상관도 스코어(relevance score)"를 발생시키는 랭킹 펑션(ranking function) 을 포함한다. 결국, 랭킹 펑션은 엔트리의 순서화된(ordered) 리스트를 포함하는 검색 엔진 결과를 생성한다. 각 엔트리는 서브세트 내의 문서들 중 하나에 대응한다. 엔트리는 사용자가 웹으로부터 문서를 요청할 수 있도록 대응하는 문서의 URL과, 리스트 내의 엔트리의 위치를 포함한다. 리스트가 순서화되면, 리스트 처음에 근접한 위치를 갖는 문서(수치적으로 낮은 위치를 갖는 문서)가 높은 상관도 스코어를 가지게 된다(즉, 리스트의 시작에서 그 끝을 향해 이동할 때 상관도 스코어는 일정하게 감소한다).
웹 상의 문서의 컨텐츠를 정확히 나타내는 문서의 데이터베이스의 생성은 어려운 문제이다. 먼저, 웹 상에는 많은 수의 문서가 있다; 문서 수의 추정은 현재 10억이다. 이는 문서 모두에 대한 정보를 저장하며 필요할 때 정보를 빠르게 탐색할 수 있는 단일 데이터베이스를 생성시 어려움을 생성한다. 둘째, 웹 상의 문서의 컨텐츠는 매우 다양하다. 전문적인 리포터에서 아이들까지 그 능력이 다양한 작가들에 의해 생성되는 문서는 때때로 여러 언어(때때로 다른 알파벳 및 전자 인코딩 스킴을 채용하면서)로 이루어지며, 오락적 사용에서 전자 무역까지의 매우 폭넓은 목적을 위해 생성된다. 이는 문서의 특징 및 중요 용어가 데이터베이스에 포함되는지의 판정을 어려운 문제로 만든다. 결국, 웹 상의 문서의 컨텐츠와, 문서 그 자체의 로케이션은 급속히 변화한다. 다양한 "크럴링(crawling)" 전략은 이들 어려움을 해소하는데 채용되나, 이들 전략 각각은 그 자체의 장점 및 단점을 가진다. 따라서, 하나 이상의 데이터베이스의 사용은 대형의 개별 시변 문서의 집합(예컨대, 웹 상의 문서의 집합)에 사용되는 검색 엔진 시스템에서 이로울 수 있다.
단일 데이터베이스가 웹 상에서 이용가능한 문서를 정확하고 효율적으로 특징지며 개발되었다 할지라도, 질의에 대한 데이터베이스 내의 특정 문서의 상관도 스코어의 결정은 어려운 문제로 남는다. 문서의 상관도 스코어는 검색 엔진 결과 내의 대응하는 엔트리의 위치를 결정하는데 사용된다. 사용자는 전형적으로 검색 엔진 결과 내의 제1의 3개 또는 4개의 엔트리만을 조사하여, 적어도 높은 상관성을 갖는 문서에 대한 정확한 상관도 스코어 판정이 검색 엔진 결과에 대한 사용자의 만족에서 중요한 요소가 된다. 질의에 대한 특정 문서의 상관도의 사용자 인지는 상관도 스코어를 판정하기 위한 단일 알고리즘에서 정확히 복제하기가 어렵다. 이런 이유로, 검색 엔진 시스템에서 상관도 스코어를 판정하기 위해 이용가능한 하나 이상의 방법을 갖는 것이 바람직하다. 예컨대, 일 방법은 단일 언어(예컨대, 영어)로 작성된 문서의 상관도 스코어를 판정하는데 매우 적합하며, 제2 방법은 제2 언어(예컨대, 중국어)에서 문서의 스코어를 판정하는데 가장 적합하다. 그러나, 데이터베이스 내의 문서가 이들 언어 모두의 컨텐츠를 포함할 때, 어느 랭킹 펑션이 사용되야 하는지를 판정하는 것은 어렵게 된다. 다른 예로서, 검색 엔진 시스템은 하나 이상의 데이터베이스를 포함하며, 각 데이터베이스에 대한 별개의 랭킹 펑션을 가진다. 이런 방식으로, 개별 랭킹 펑션은 이들 각 데이터베이스로부터 문서에 대한 상관도 스코어를 판정하는데 최적화된다. 통계적이며 기계적인 학습 기술은 이런 타입의 최적화를 수행하기 위해 점점 사용이 증가하고 있다. 따라서, 하나 이상의 랭킹 펑션으로부터 나오는 검색 엔진 결과를 블렌딩하기 위한 방법 및 시스템이 필요하게 되었다.
전술한 바와 같이, 하나 이상의 검색 소스로부터 검색 엔진 결과를 결합하기 위한 방법 및 시스템으로서, 각 검색 소스가 다른 데이터베이스, 랭킹 펑션, 또는 이들 모두를 가능한 채용하는 것을 고안하는 것이 바람직하다. 특히, 블렌딩된 검색 엔진 내의 상위 3개의 문서 상관도의 사용자 인지 보다 뛰어난, 또는 개별 검색 소스들 중 어느 하나로부터 상위 3개의 문서 상관도의 사용자 인지 보다 열등한 방식으로, 블렌딩된 검색 엔진 결과를 판정하는 방법을 고안하는 것이 바람직하다.
<발명의 요약>
일부 실시예는 복수의 검색 소스들 각각으로부터의 복수의 검색 결과를 하나의 검색 엔진 결과로 블렌딩하는 방법을 제공한다. 먼저, 엔트리의 각 결과 리스트는 각 검색 소스로부터 수신된다. 리스트 상의 각 엔트리에 대한 엔트리의 결과 리스트는 엔트리의 위치, 문서의 어드레스 및 문서의 상관도 스코어를 포함한다. 다음으로, 판정된 변환은 수신된 결과 리스트들 중 적어도 하나에서 문서의 적어도 서브세트의 상관도 스코어에 적용되어, 변환된 스코어를 발생시킨다. 결국, 이들 각각의 결과 리스트의 일부는 블렌딩된 검색 엔진 결과를 생성하기 위해 결합된다. 블렌딩된 검색 엔진 결과는 엔트리의 블렌딩된 리스트를 포함한다. 각 결과 리스트들의 결합의 일부로서, 엔트리의 블렌딩된 리스트의 엔트리는 변환된 스코어 상에 적어도 부분적으로 기초하여 순서화된다.
일부 실시예는 복수의 검색 소스의 제1 검색 소스에 대한 변환을 판정하는 방법을 더 제공한다. 먼저, 클릭 레이트 통계는 적어도 제1 검색 소스 및 제2 검색 소스에 대해 산출 및 저장된다. 다음으로, 그 성능 지수(figure of merit)는 제1 및 제2 검색 소스 각각에 대해 판정된다. 그 성능 지수는 산출 및 저장된 통계에 의해 적어도 부분적으로 판정된다. 결국, 계수의 세트는 제1 및 제2 검색 소스에 대한 성능 지수에 기초하여 판정된다. 계수는 제1 검색 소스에 대한 관련된 상관도 스코어의 변환을 정의한다.
일부 실시예는 검색 엔진 시스템을 제공한다. 검색 엔진 시스템은 복수의 검색 소스를 포함한다. 부가적으로, 검색 엔진 시스템은 질의를 수신하고 검색 결과를 전송하는 적어도 하나의 인터페이스를 구비한다. 검색 엔진 시스템은 복수의 검색 소스에 연결된 적어도 하나의 검색 엔진을 또한 포함한다. 적어도 하나의 검색 엔진은 각 검색 소스로부터 수신된 엔트리에 대응하는 엔트리의 각 결과 리스트를 수신하도록 구성된다. 각각의 결과 리스트는 리스트 상의 각 엔트리에 대해, 적어도, 엔트리의 위치, 문서의 어드레스, 및 문서를 수신된 질의와 관련시키는 상관도 스코어를 포함한다. 검색 엔진 시스템은 수신된 결과 리스트들 중 적어도 하나에서 엔트리의 적어도 서브세트의 상관도 스코어에 판정된 변환을 적용하도록 더 구성된 블렌딩 모듈을 더 포함하여, 변환된 스코어를 생성한다. 블렌딩 모듈은 각각의 결과 리스트의 적어도 일부를 결합하도록 더 구성되어, 블렌딩된 엔트리의 리스크의 순서화를 포함하는, 엔트리의 블렌딩된 리스크를 포함하는 블렌딩된 검색 엔진 결과를 생성한다. 엔트리의 블렌딩된 리스트의 순서화는 변환된 스코어에 의해 적어도 부분적으로 판정된다.
일부 실시예에서, 검색 엔진 시스템은 변환 판정 모듈을 더 포함한다. 변환 판정 모듈은 복수의 검색 소스 중 제1 검색 소스에 대한 변환을 판정하도록 구성된 다. 먼저, 변환 판정 모듈은 제1 검색 소스 및 제2 검색 소스 각각에 대한 클릭 레이트 통계를 산출 및 저장한다. 다음으로, 변환 판정 모듈은 제1 및 제2 검색 소스들 각각에 대한 성능 지수를 판정한다. 성능 지수의 판정은 산출 및 저장된 통계에 적어도 부분적으로 기초한다. 결국, 변환 판정 모듈은 제1 검색 소스에 대해, 제1 및 제2 검색 소스에 대한 성능 지수를 기초로 한 계수의 세트를 판정한다. 이렇게 판정된 계수의 세트는 제1 검색 소스에 대한 변환을 정의한다.
일부 실시예에서, 검색 엔진 시스템은 제1 및 제2 검색 소스에 대한 클릭 레이트 통계를 산출 및 저장하도록 더 구성된다. 검색 엔진은 사용자로부터 질의를 수신하고, 엔트리의 리스트를 포함하는 블렌딩된 결과를 사용자에게 돌려보내도록 더 구성된다. 변환 판정 모듈은 있다면 엔트리 내의 리스트에서 어느 아이템이 사용자에 의해 선택되는지를 기록하도록 더 구성된다. 검색 엔진 시스템은 수신, 돌려보냄, 및 기록을 종료 조건에 도달할 때까지 반복하도록 더 구성된다.
본 발명의 상술한 특징 및 이점들은 물론 추가적인 특징 및 이점들은 도면과 결합되는 본 발명의 바람직한 실시예의 상세 설명을 통해 보다 명확하게 이해할 수 있을 것이다.
도 1A는 네트워크, 하나 이상의 클라이언트 컴퓨터, 월드 와이드 웹, 및 검색 엔진 시스템을 포함하는 개시된 방법 및 시스템의 이용에 대한 허용 컨텍스트를 나타낸다.
도 1B는 엔트리들의 리스트를 포함하며, 각 엔트리, 위치, 해당 문서의 어드 레스, 해당 문서의 설명 및 상관도 스코어와 관련된 검색 엔진 결과를 나타낸다.
도 2A는 제1 검색 소스로부터의 엔트리의 제1 리스트, 제2 검색 소스로부터의 엔트리의 제2 리스트, 엔트리의 제1 리스트의 상관도 스코어에 변환을 적용함으로써 취득된 변환된 스코어, 및 혼합된 검색 엔진 결과를 나타낸다.
도 2B는 혼합 모듈, 변환 판정 모듈, 복수의 검색 소스, 검색 엔진 및 인터페이스를 포함하는 검색 엔진 시스템의 블럭도이다.
도 3은 변환을 판정하는 방법을 나타낸다.
도 4는 블렌딩된 검색 엔진 결과의 엔트리의 리스트에서의 아이템이 사용자에 의해 선택되는 익명 기록을 나타낸다.
도 5는 개시된 검색 엔진 시스템 및 방법을 수행할 수 있는 컴퓨터 시스템을 나타낸다.
유사 참조 번호들은 전체 도면들에 걸쳐 대응하는 부분을 나타낸다.
도 1A를 참조하면, 네트워크화된 환경(100)에서, 네트워크(105)는 하나 이상의 클라이언트 컴퓨터(104), 검섹 엔진 시스템(106) 및 문서(103)들의 집합을 접속하며, 이 경우에는 월드 와이드 웹(102)를 접속한다. 클라이언트 컴퓨터(104-1)는 네트워크(105)를 통해 질문(112)을 제공하고, 이 질문(112)은 검색 엔진 시스템(106)에 의해 수신된다. 검색 엔진 시스템(106)은 네트워크(105)를 통해 클라이언트 컴퓨터(140-1)에 블렌딩된 검색 엔진 결과(114)를 제공함으로써 응답한다.
지금까지 검색 엔진 시스템(16)의 이용에 대한 허용 컨텍스트가 기술되었으며, 블렌딩된 검색 엔진 결과(114)가 추가로 기술될 것이다. 도 1B를 참조하면, 블렌딩된 검색 엔진 결과(114)는 엔트리(130)의 리스트를 포함한다. 각 엔트리(130)는 네트워크상의 대응 문서와 관련된다. 통상적으로, 질문(112)(도 1A)에 응답하여, 검색 엔진 시스템은 질문(112)에 상당히 관련된 문서들과 관련되는 엔트리(130)를 블렌딩된 결과(114)의 부분으로서 제공할 것이다. 사용자에 의한 문서의 위치 및 검색을 유용하게 하기 위해, 각 엔트리(130)는 종종 문서의 URL(122)을 포함한다. URL(122)은 예를 들면, URL이 사용자에게 HTML(hypertext markup language) 앵커 태그의 부분으로서 제공되는 것과 같이, 클라이언트 컴퓨터(104)의 사용자에게 시각적으로 볼 수 없을 수도 있다. URL(122) 대신에, 또는 이에 부가하여, 다른 실시예에서, 엔트리(130)는 엔트리와 관련된 문서에 대한 다른 형태의 어드레스 정보를 포함할 수도 있다. 관련 문서의 상관도를 평가시 사용자에게 보조하기 위해, 각 엔트리(130)는 문서의 간단한 설명(128)을 포함할 수도 있다. 예를 들면, 엔트리(130)는 엔트리와 관련된 문서에서 발견된 제1 몇 라인의 텍스트를 포함할 수도 있다.
블렌딩된 검색 엔진 결과(114)의 엔트리의 리스트에서 각 엔트리(130)(및 그 관련 문서)는 리스트내의 위치(120)와 블렌딩된 상관도 스코어(124) 둘다를 갖는다. 위치(120)는 검색 엔진 결과에 명확하게 포함될 수도 있고 또는 그렇지 않을 수도 있다. 만일 위치(120)가 명확하게 포함되지 않았다면, 리스트상의 다른 엔트리들에 관련된 엔트리의 위치에 기초하여 판정될 수 있다. 블렌딩된 상관도 스코어(124)는 엔트리(130)의 위치(120)를 판정할 시 검색 엔진 시스템에 의해 사용된다. 문서의 블렌딩된 상관도 스코어(124)는 통상적으로 0과 1사이의 범위 또는 등가적으로, 0%와 100%사이의 범위에 있는 수치를 추측한다. 단지 10개의 엔트리만이 도 1B에 도시되었지만, 그 이상의 또는 그 이하의 엔트리가 블렌딩된 검색 엔진 결과(114)에 존재할 수도 있을 것이다.
클라이언트 컴퓨터(104-1)의 사용자(도 1A)에게는 검색 엔진 결과(114)의 시각적인 표시가 제공되며, 엔트리(130)를 통해(즉, 클라이언트 컴퓨터의 디스플레이의 관련 영역을 통해) 커서(126)를 위치시키고 이를 클릭함으로써 문서와 관련된 엔트리(130)를 클릭함으로써 볼 수 있는 문서를 선택할 수 있다. 엔트리가 블렌딩된 검색 엔진 결과의 부분으로서 제공되는 사용자는 엔트리의 "임프레션(impression)"을 행한다고 말한다. 사용자가 엔트리를 클릭할 때, 엔트리의 "클릭 스루(clickthrough)"가 발생한다.
이제, 블렌딩된 검색 엔진 결과가 기술되며, 각 복수의 검색 소스로부터의 복수의 검색 엔진 결과를 단일의 블렌딩된 검색 엔진 결과(114)로 혼합하는 프로세스가 기술된다. 도 2A를 참조하면, 바람직한 실시예에서, 2개의 검색 엔진 결과 세트(160)(또한 여기서는 결과 리스트라고 칭하거나, 간단히 "결과(results)")는 2개의 검색 소스로부터 하나를 수신한다. 제1 검색 소스로부터 수신된 검색 엔진 결과 세트(260-1)는 엔트리(262)의 리스트를 포함한다. 각 엔트리(262)는 차례로, 위치(264), 제1 검색 소스의 데이터베이스내의 문서의 어드레스(266) 및 상관도 스코어(268)를 포함한다. 유사하게, 제2 검색 소스로부터의 검색 엔진 결과 세트(260-2)는 또한 엔트리(270)의 리스트를 포함한다. 각 엔트리(270)는 상관도 스코어(274)를 포함한다.
검색 엔진 결과 세트(260)를 단일의 블렌딩된 검색 엔진 결과(114)에 혼합하는 한가지 목적은 결과 세트(260)의 엔트리중에서 사용자가 판단하는 바와 같이, 가장 높은 상관도 엔트리를 포함하는 결과(114)내의 엔트리의 리스트를 생성하기 위한 것이다. 부가적으로, 결과(114)내의 엔트리의 리스트가 순차적으로 되어 있어서, 리스트상의 위치가 증가함에 따라, 엔트리에 대응하는 문서의 사용자 인식 상관도가 감소되거나 적어도 증가하지 않을 것이다(즉, 리스트가 하나씩 다운 진행됨에 따라 상관도가 단조롭게 감소된다). 주로, 제1 결과 세트(260-1)의 상관도 스코어(268)과 제2 결과 세트(260-2)의 상관도 스코어(274)는 결과 세트(260)들 양측으로부터 엔트리를 직접적으로 랭킹하는데 사용될 것이다. 예를 들면, 2개의 결과 세트중에서 가장 높은 상관도 스코어와 관련된 엔트리가 선택되고, 블렌딩된 결과에 부가되며, 이 오리지널 결과 세트로부터 제거된다. 이 프로세스는 선정된 수의 엔트리를 블렌딩된 결과가 포함할 때까지 반복될 수 있을 것이다. 그러나, 이는 사용자 인식 상관도면에서 순차화된 엔트리의 리스트를 생성할 시 비효과적일 수도 있다. 예를 들면, 상관도 스코어(268) 및 상관도 스코어(270)는 비교가능한 스케일이 아닐 수도 있으며, 하나는 1 내지 1의 범위에 있는 값일 수도 있고, 다른 하나는 4 내지 100의 범위에 있는 값일 수도 있다. 또한, 스코어들은 상관도의 판정시 상이한 기준을 사용하는 랭킹 펑션에 의해 판정될 수도 있기 때문에 직접적으로 비교할 수 없을 수도 있다
이 문제를 해결하기 위해, 검색 엔진 시스템의 실시예는 제1 결과 세트(260-1)내의 엔트리(262)의 상관도 스코어(268)에 판정된 변환(280)(도 3과 관련하여 이하에 기술되는 판정)을 적용한다. 예를 들면, 변환(280)은 엔트리(262-1)의 상관도 스코어(0.85의 값을 가짐)를 취하여 변환된 스코어(272-1), 값 0.99를 갖는 변환된 스코어(272-1)를 생성한다. 유사하게, 변환(280)은 한 세트의 변환된 스코어(272)를 생성하는 다른 상관도 스코어(268)에 적용된다.
다음으로, 결과 세트(260-1) 및 결과 세트(260-2)로부터의 엔트리들은 제1 결과 세트(260-1)의 변환된 스코어(272) 및 제2 결과 세트(260-2)의 상관도 스코어(274)에 기초하여 결합된다. 일부 실시예들은 첫번째로 제1 결과의 변환된 스코어 및 제2 결과의 상관도 스코어 중에서 가장 큰 스코어를 갖는 엔트리를 선택한다. 예를 들면, 도 2A에서, 엔트리(262-1)는 블렌딩된 결과(114)내의 제1 위치에 대해 선택되는데, 이는 0.99의 값을 갖는 엔트리(262-1)의 해당 변환된 스코어(272-2)가 상관된 스코어(274) 중 어느 하나 및 변환된 스코어(272) 중 임의의 다른 하나보다 높기 때문이다. 연속적으로 더 낮은 스코어를 갖는 엔트리들은 결과 세트(114)가 본 경우(10)에 선정된 수의 엔트리를 포함할 때까지 결과 세트(114)에서 선택되고 배치된다. 대안적으로, 제1 및 제2 세트(260)내의 모든 엔트리들은 결과 세트(260-1)의 변환된 스코어(272) 및 결과 세트(260-2)의 상관도 스코어(274)에 따라 결과 세트(114)내에서 선택되고 배치된다. 예를 들면, 엔트리(270-1)는 결과(114)내의 제2 위치에 배치되는데, 이는 0.97의 값을 갖는 대응 상관도 스코어(274-1)가 변환된 스코어(272-1)를 제외하고 모든 다른 상관도 스코어(274) 및 모든 변환된 스코어(272)보다 높기 때문이다. 유사하게, 엔트리(262-2)는 결과(114)내의 제3 위치에 배치된다.
제2 검색 소스로부터 검색 엔진 결과의 블렌딩이 도 2B와 결부되어 기술되었지만, 다른 실시예에서, 그 이상의 검색 엔진 결과는 그에 따른 그 이상의 검색 소스로부터 수신된다. 예를 들면, 일 실시예에서, 5개의 검색 엔진 결과는 5개의 검색 소스로부터 수신될 수도 있다. 일부 실시예에서, 모든 그러나 하나의 결과 세트의 상관도 스코어에 변환이 적용된 후, 결과 세트는 변환된 상관도 스코어에 따라 결합된다. 부가적으로, 각 결과(260)는 10 이하 또는 그 이상의 엔트리를 포함할 수도 있다. 유사하게, 다른 실시예에서, 블렌딩된 검색 결과(114)는 10개의 엔트리 이상 또는 그 이하를 포함한다. 블렌딩된 결과(114)내의 엔트리의 수는 임의의 결과(160)내의 엔트리의 수와 동일할 필요는 없다. 유사하게, 결과(260)는 상이한 수의 엔트리를 가질 수도 있다.
이제까지, 블렌딩된 검색 엔진 결과(114)를 생성하기 위한 프로세스가 기술되었으며, 블렌딩된 검색 엔진 결과를 생성할 수 있는 검색 엔진 시스템이 기술된다. 도 2B를 참조하면, 일 실시예에 따른 검색 엔진 시스템(106)이 나타나 있다. 검색 엔진 시스템(106)은 2개 이상의 검색 소스(208)를 포함한다. 각 검색 소스(208)는 관련된 랭킹 펑션(204) 및 데이터베이스(206)를 갖는다. 시스템(106)은 질문들을 수신하고 블렌딩된 검색 엔진 결과(114)를 전송하기 위한 인터페이스(214)를 더 포함한다. 시스템(106)은 또한 2개 이상의 검색 소스(208)에 결합된 검색 엔진(220)을 포함한다. 검색 엔진(220)이 인터페이스(214)를 통해 질문을 수신할 경우, 검색 엔진(220)은 하나 이상의 검색 소스(208)에 해당 질문(210)을 전송한다. 일부 실시예에서, 질문(210)은 엔진(220)에 의해 수신된 질문과 동일할 수도 있다. 다른 실시예에서, 엔진(220)은 질문과 관련된 적당한 데이터베이스(206)를 갖는 소스(208)에 수신된 질문을 전송할 수도 있다. 예를 들면, 일부 실시예에서, 만일 검색 엔진 시스템(106)이 특정 언어(예를 들면, 중국어)의 용어를 포함하는 질문을 수신한다면, 엔진(220)은 단지 그 언어의 문서를 인덱싱하는 데이터베이스(예를 들면, 206-2)를 갖는 소스(예를 들면, 208-2)에 질문을 전송한다. 유사하게, 만일 시스템(206)이 제2 언어의 용어를 포함하는 질문을 수신하는 경우, 엔진(220)은 단지 제2 언어의 문서를 인덱싱하는 데이터베이스(206)을 갖는 소스(208)에 질문을 패스시킨다. 또 다른 실시예에서, 엔진(220)은 질문(210)을 소스(208)에 전송할 수도 있으며, 이 질문(210)은 시스템(106)에 의해 수신된 질문과는 상이하다. 예를 들면, 오리지널 질문은 검색 엔진(220)에 의해 재구성될 수도 있으며, 이는 특정 소스(208)에 질문(210)으로서 적절하게 제공될 수 있도록 하기 위한 것이다.
검색 엔진(220)은 검색 소스(208)에 연결되어 각 소스(208)로부터 각각의 결과 리스트(260)를 수신할 수 있다. 결과 리스트(260)는 엔트리의 리스트를 포함하며, 각 엔트리는 리스트상의 연관된 위치, 리스트의 검색 소스(208)의 데이터베이스 내의 해당 문서의 주소 및 해당 문서를 쿼리(210)에 연관시키는 연관 소스(a relevance source)를 갖는다. 전형적인 결과 리스트(260)는 도 2A에 대한 상기 논의와 연계되어 설명된다.
검색 엔진 시스템(106)은 블렌딩 모듈(202)을 더 포함한다. 블렌딩 모듈(202)은, 변환된 소스를 생성하기 위해, 판정된 변환을 수신된 결과 리스트(260) 중 적어도 하나 내의 엔트리 중 적어도 서브세트의 연관 소스에 적용하도록 구성된다. 블렌딩 모듈(202)은, 블렌딩된 엔트리의 리스트를 포함하는 블렌딩된 검색 엔진 결과를 생성하기 위해, 적어도 각 결과 리스트(260)의 일부를 조합하도록 더 구성되며, 블렌딩된 엔트리의 리스트를 정렬하는 것을 포함한다. 그런 다음, 블렌딩된 엔트리의 리스트는, 인터페이스(214)를 통해, 블렌딩된 검색 엔진 결과의 일부 또는 전부로서 제공된다. 판정된 변환을 적용하고, 결과 리스트(260)의 부분들을 결합하며, 블렌딩된 검색 엔진 결과를 형성하는 처리는 도 2A에 대한 논의와 함께, 앞서 상세히 논의되었다.
검색 엔진 시스템(106)은 선택적으로 변환 판정 모듈(216)을 포함한다. 변환 판정 모듈(216)은 하나 이상의 검생 엔진(208)에 대한 하나 이상의 변환을 판정하도록 구성된다. 검색 소스에 대해 변환을 판정하는 것은 이하 도 3을 참조하여 상세히 설명될 것이다. 변환은, 일단 판정되면, 블렌딩 모듈(202)에 제공된다. 몇몇 실시예에서, 블렌딩 모듈(202) 및 변환 판정 모듈(216) 모두는 검색 엔진(220) 내에 포함된다. 다른 실시예에서, 블렌딩 모듈(202) 및/또는 선택적 변환 판정 모듈(216)은 검색 엔진 시스템(106) 내에 포함된 다른 시스템의 일부일 수 있다. 몇몇 실시예에서, 검색 소스(208) 및 검색 엔진(202)은 상이한 컴퓨터상에서 구현된다. 이들 실시예에서, 쿼리(210) 및 각 결과 리스트(260)의 전송이, 예를 들어, 네트워크(105)(도 1A 참고)를 통해 수행된다.
검색 엔진 시스템이 기술되었으므로, (몇몇 실시예에서, 도 2A의 변환 판정 모듈한 사용을 위한) 변환의 판정 방법에 대해 기술하기로 한다. 변환 판정 방법(300)의 바람직한 실시예에 있어서, 도 3을 참조하면, 먼저 단계 302에서 제1 검색 소스 및 제2 검색 소스에 대한 클릭 레이트 통계가 산출 및 저장된다. 몇몇 실시예에 있어서, 도 4를 참조하면, (가령, 도 1B에 도시된 바와 같은) 블렌딩된 검색 엔진 결과(114) 내의 엔트리 중 하나를 사용자가 클릭하는 이벤트가 검색 엔진 시스템(106)(도 2B 참고)에 의해 기록된다. 사용자가 블렌딩된 검색 엔진 결과(114)의 엔트리 중 하나를 클릭할 경우, 요구(401)가 검색 엔진 시스템(106)(가령, 검색 엔진(220)의 변환 판정 모듈)로 전송된다. 요구(401)는 블렌딩된 검색 엔진 결과(114) 내에서 선택된 엔트리의 위치에 대한 정보를 포함한다. 사용자 클릭이 검색 엔진 시스템(106)에 전송되는 요구(401)로 귀결되도록 하기 위해, 아이템의 선택이 http 메세지가 사용자에 의해 선택된 문서를 저장하는 서버 대신에 검색 엔진 서버로 전송되도록, 결과 리스트 내의 각 아이템과 관련된 URL이 변경된다. http 메세지(요구)(401)는, 결과 리스트 내의 선택된 아이템의 위치뿐만 아니라, 선택된 문서와 관련된 URL을 포함한다.
요구의 수신에 응답하여, 검색 엔진(220)은 선택된 엔트리의 위치를 블렌딩된 결과(114) 내에 기록한다. 또한, 검색 엔진(220)은, 둘 이상의 결과 리스트(가령, 도 2B의 260-1 및 260-2)가 블렌딩된 결과(114)를 생성하도록 조합되었던 경우, 선택된 엔트리가 취득되었던 검색 소스를 기록한다. 또한, 검색 엔진(220)은 검색 소스 및 모든 비선택 엔트리의 위치를 블렌딩된 결과(114) 내에 기록한다. 저장은, 예를 들어, 변환 판정 모듈(216)(도 2B 참고)에 의해 수행된다. 바람직한 실시예에서, 사용자에 제공된 결과 리스트에 대한 정보는, 결과 리스트가 사용자에게 전송된 경우, 로그 기록 내에 기록된다. 사용자에 의해 선택된 아이템에 관한 정보는 제2 로그 기록 내에 기록된다. 제2 로그 기록은 제1 로그 기록에 대한 참조 또는 포인터를 포함할 수 있다.
다시 도 4를 참조하면, 클라이언트 컴퓨터(104-1)의 사용자는 검색 엔진 결과(114)로부터 선택된 엔트리에 대응하는 문서를 수신하는 것이 필요하다. 이를 달성하기 위해, 검색 엔진 시스템(106)은 "http 리다이렉트(http redirect)" 응답(402)을 클라이언트 컴퓨터(104-1)에 전송하여, 요구된 문서의 URL을 특정한다. http 리다이렉트(402)는 클라이언트 컴퓨터(104-1)가 다운로드되어 상기 URL(403, 404)에 대응하는 문서를 디스플레이하도록 한다. 다른 실시예에서, 검색 엔진 시스템(106)은 요구된 문서를 다운로드한 다음, 그 문서를 클라이언트 컴퓨터(104-1)에 전송할 수 있다.
블렌딩된 결과(114)의 엔트리에 대한 정보를, 클라이언트 컴퓨터(104)의 사용자가 블렌딩된 결과로부터 엔트리를 선택할 때마다 매번 기록하는 것은 필요하지 않다. 다음으로, 몇몇 실시예에서, 블렌딩된 결과로부터의 사용자의 선택의 기록은 선택된 블렌딩된 결과(114)에 대해서만 수행되는데, 이는 랜덤하게 또는 다른 방법으로 선택될 수 있다. 이런 방식으로, 시스템(104)은 블렌딩된 결과로부터 엔트리를 선택하는 사용자에 의해 생성된 모든 요구를 처리함으로써 과부하되지 않는다. 예를 들어, 시스템(106)은, 엔트리가 사용자에 의해 선택될 때, 모든 100개의 결과 중 단 하나만이 요구(401)를 생성하도록 블렌딩된 결과(114)를 생성할 수 있다.
몇몇 실시예에서, 블렌딩된 검색 엔진 결과로부터 엔트리를 선택하는 사용자에 응답하여, 선택된 엔트리의 위치 및 검색 소스가 기록된다. 또한, 선택되지 않고 블렌딩된 결과 내에 제공되는 엔트리의 위치 및 소스도 기록된다. 그런 다음, 하나 이상의 검색 소스에 의해 생성되는 연관 소스에 적용되는 변환을 이들 데이터로부터 판정하는 것이 요구된다. 몇몇 실시예에서, 블렌딩된 검색 결과 내의 각 검색 소스 h및 각 위치 i에 대해 상대적 클릭비가 판정된다. 소스 h 및 소스 i에 대한 상대적 클릭비(Relative Click Ratio: RCR)는, 몇몇 실시예에서 다음 수학식에 의해 판정된다.
Figure 112005060654774-PCT00001
여기서, CR(i)은 소스와 무관한, 위치 i에서의 결과에 대한 클릭 스루비(click-through ratio)이다.
Figure 112005060654774-PCT00002
여기서, "clickthrough(i)"는 측정 기간(가령, 하루 또는 몇일의 기간)동안 위치 i에서 사용자에 의한 기록된 총 클릭 스루수이며, "impressions(i)"는 위치 i 내에 엔트리를 포함하는 블렌딩된 결과가 동일한 측정 기간 동안 사용자에 제공되었던 총 회수이다 (그리고, 결과는, 만약 있다면 아이템이 사용자에 의해 선택되는 서버에 통지하도록 구성되었던 것임). 전술한 등식에서, CRS(i)는, 위치 i에서의 결과의 소스가 소스 h로부터 기인할 경우, 위치 i에서의 결과에 대한 클릭 스루비이다.
Figure 112005060654774-PCT00003
여기서, "clickthrough(i,h)"는 블렌딩된 검색 결과로부터 위치 i 내의 엔트리를 선택하였던 회수이고, 위치 i 내의 엔트리는 원래 검색 소스 h로부터 취득되며, "impressions(i,h)"는 소스 h로부터 위치 i 내에 엔트리를 포함하는 블렌딩된 결과가 사용자에게 제공되었던 총 회수이다(그리고, 결과는 서버에, 만약 있다면, 어느 아이템이 사용자에 의해 선택되었는지를 통지하도록 구성됨). 따라서, RCR은 본래, 특정 소스로부터의 엔트리가 블렌딩된 결과 내의 특정 위치로부터 선택된 상대적 회수에 대한 프록시이다.
도 3을 참조하면, 변환 판정 방법 300에서, 적어도 제1 소스 및 제2 소스에 대한 성능 지수가 판정된다. 소스 h에 대한 성능 지수는 다음 수학식에 다른 일 실시예에서 판정된다.
Figure 112005060654774-PCT00004
여기서, P(i, h)는 블렌딩된 결과 내의 위치 i 및 소스 h에 대한 임프레션 레이트로서 참조된다. 상기 수학식의 가법(summation)이 위치 1부터 10까지 수행 되었지만, 다른 실시예에서의 가법은 위치 1부터 위치 10보다 낮거나 높은 최종 위치까지 취해질 수 있다. 임프레션 레이트 P(i, h)는 다음 수학식에 따라 판정된다.
Figure 112005060654774-PCT00005
여기서, Impressions(i, h)는 블렌딩된 결과가 소스 h로부터 위치 i 내에 엔트리를 포함하였던 회수이다. 소스(208)(도 2B 참고)는 블렌디된 결과에 엔트리를 제공하지만, 이들 엔트리는 (사용자가 다른 소스로부터 엔트리를 선택하는 빈도에 비해) 사용자에 의해 거의 선택되지 않으며, 성능 지수 F(h)는 0에 가까운 값을 가질 것이다. 역으로, 소스가 블렌딩된 결과에 엔트리를 제공한다면, 이들 엔트리는 사용자에 의해 종종 선택될 것이며, 성능 지수 F(h)는 1 이상의 값을 가질 것이다. 1보다 큰 값은 평균보다 큰 레이트에서의 사용자 선택을 나타내며, 1 미만의 값은 평균 미만의 레이트에서의 사용자 선택을 나타낸다. 따라서, 소스 h의 성능 지수 F(h)는 그 소스로부터의 엔트리가 블렌딩된 결과 내의 위치에 올바르게 배치되었다는 사용자의 지각을 위한 프록시로서 역할을 한다.
마지막으로, 변환 판정 방법 300에 있어서, 단계 306에서, 소스에 대한 자점의 형태에 기초하여 하나 이상의 계수 세트가 판정된다. 특정 소스에 대해, 계수의 세트는, 그 소스로부터의 연관 소스에 적용되는 변환을 정의하는데 사용된다. 예컨대, 변환은 시프팅 변환이고, 이 경우에 변환은,
TransformedScore = RelevanceScore + b,
에 따라 수행되고, 여기서 단지 하나의 계수 b만이 변환을 정의하기 위해 이용된다. 이러한 시프팅 계수에 대한 전형적인 값은, 상관도 스코어가 대략 0.0 내지 1.0의 범위일 때, -0.04 내지 0.04 범위내가 된다. 스케일링 변환을 포함하는 다른 가능한 변환에서, 이 변환은,
TransformedScore = a * RelevanceScore,
에 따라 수행되고, 여기서 다시 하나의 계수 a 만이 변환을 정의하기 위해 이용된다. 이러한 스케일링 계수에 대한 전형적인 값은, 상관도 스코어가 대략 0.0 내지 1.0범위일 때, 0.9 내지 1.1 범위내가 된다. 다른 가능한 변환은 밀접(affine) 변환을 포함하고, 여기서 변환은,
TransformedScore = a * RelevanceScore + b,
에 따라 수행되고, 여기서 2개의 계수, 스케일링 계수 a 및 시프팅 계수 b는 변환을 정의하기 위해 이용된다. 상관도 스코어가 대략 0.0 내지 1.0의 범위일 때, 스케일링 계수 a에 대한 전형적인 값은 0.9 내지 1.1 범위내에 있고, 시프팅 계수b에 대한 전형적인 값은 -0.04 내지 0.04 범위가 된다.
하나 이상의 소스의 상관도 스코어에 적용되는 변환의 계수를 판정하는 하나의 목적은 모든 소스에 대한 성능 지수를 동일하게 하는 것이다. 몇몇 실시예에서, 하나의 세트의 발견적인 룰은 소스의 성능 지수에 기초하여 변환의 계수를 판정하는데 적용될 수 있다. 발견적인 룰의 하나의 유형은, 제2 성능 지수에 대한 제1 성능 지수의 비가 소정의 범위의 값 이내일 때, 제1 소스의 상관도 스코어에 적용되는 변환의 계수가 소정의 계수값으로 가정되는 것을 요구한다. 예컨대, 이러한 룰은, 제2 소스의 성능 지수에 대한 제1 소스의 성능 지수의 비, F(1)/F(2)가 0.2 내이 0.4사이일 때, 제2 소스의 상관도 스코어의 시프팅 변환에서의 시프팅 계수의 값은 0.04로 가정되는 것을 요구할 수 있다. 다른 룰은, F(1)/F(2)가 0.4 내지 0.6일 때, 제2 소스의 상관도 스코어의 시프팅 변환에서의 시프팅 계수의 값이 0.02의 값으로 가정되는 것을 요구할 수 있다. 이러한 방식에서, 제1 소스의 상관도 스코어의 변환은 제1 및 제2 소스의 성능 지수가 불필요한 오버슈트없이 동일해지는 경향이 되도록 판정된다.
다른 실시예에서, 이용되는 변환 펑션은 전술한 시프팅, 스케일링, 및 밀접 펑션을 제외한 펑션이 될 수 있다. 특히, 다른 실시예는, 가용 스코어(상관도 스코어가 변환되는 검색 소스로부터의) 및 다른 소스로부터의 결과 모두의 펑션인 블렌딩 변환 펑션을 이용할 수 있다. 즉, 소스 A로부터의 결과에 적용되는 변환 펑션은, 소스 A와 연관된 고정 계수만이 아닌, 다른 소스와 관련된 파라미터를 포함하는 복소 펑션이 될 수 있다.
양호한 실시예에서, 검색 엔진 시스템(106)은 도 5에 개략적으로 도시된 바와 같이, 하나 이상의 컴퓨터 시스템을 이용하여 구현될 수 있다. 당업자가 알 수 있는 바와 같이, 방대한 양의 질의를 처리하도록 설계된 검색 엔진 시스템은 도 5에 도시된 것 보다 더 복잡한 컴퓨터 구조를 이용할 수 있다. 예컨대, 프론트 엔드 서버 세트는 실제로 질의를 처리하는 백 엔드 서버의 세트중에서 질의를 수신 및 분배하도록 이용된다. 이러한 시스템에서, 도 5에 도시된 시스템(106)은 백 엔 드 서버 중의 하나가 된다.
컴퓨터 시스템은 전형적으로 하나 이상의 중앙 처리 유닛(CPU)(504), 네트워크 또는 다른 통신 인터페이스(506), 주 및 부 저장장치(510), 및 이러한 콤포넌트를 상호접속하는 하나 이상의 버스(508)를 구비한다. 주 및 부 저장 장치(510)는 고속 RAM을 포함할 수 있고, 하나 이상의 자기 디스크 저장 장치(도시되지 않음)와 같은 비휘발성 메모리를 포함할 수 있다. 주 및 부 저장장치(510)는 중앙 처리 유닛(504)으로부터 멀리 떨어져 위치하는 대용량 저장장치를 포함할 수 있다. 주 및 부 저장장치(510)는 양호하게는,
●다양한 기본적 시스템 서비스를 처리하고 하드웨어 종속 태스크를 수행하기 위한 프로시져를 포함하는 오퍼레이팅 시스템(512);
●인터넷, 다른 광역 네트워크, LAN(예컨대 로컬 무선 네트워크는 클라이언트 컴퓨터(104)를 시스템(106)에 접속할 수 있음), 메트로폴리탄 영역 네트워크와 같은 하나 이상의 통신 네트워크를 통해, 시스템(106)을 다양한 클라이언트 컴퓨터(104)(도 1A) 및 다른 서버 또는 컴퓨터에 접속하는데 이용되는 네트워크 통신 모듈(514);
●클라이언트 컴퓨터(104)로부터 질의(112)를 수신하고 하나 이상의 소스로부터 하나 이상의 결과 리스트를 생성(또는 수신)하기 위한 검색 엔진(220) - 상기 검색 엔진(또는 검색 소스를 갖는 검색 엔진)은 질의(112)에 관련된 문서에 대한 검색 소스 데이터 베이스를 검색하고, 질의에 관련된 문서의 상관도 스코어를 판정함;
●본 발명의 다수의 양태를 구현하기 위한 블렌딩 모듈(202); 및
●본 발명의 다수의 양태를 구현하기 위한 변환 판정 모듈(216)을 포함한다.
블렌딩 모듈(202)은 실행가능 프로시져, 서브-모듈, 테이블 및 다른 데이터 구조를 포함할 수 있다. 일 실시예에서, 블렌딩 모듈(202)은 하나 이상의 검색 소스에 의해 제공되는 결과 리스트를 결합하기 위한 블렌딩 펑션(530)을 포함한다.
변환 판정 모듈(216)은 그 역할이 클릭-쓰루(click-through) 데이터를 수집하는 것이기 때문에, 블렌딩 모듈과는 상이한 서버상에서 구현될 수 있고, 이것은 전체 시간에 걸쳐 평균될 수 있다. 새로운 변환 펑션 계수는 질의가 처리되는 것보다 덜 빈번하게 주기적으로 판정된다. 예컨대, 새로운 변환 펑션 계수는 계산되어 하루에 한번 또는 몇일 마다 한번 블렌딩 모듈에 분배될 수 있다. 변환 판정 모듈(216)은 실행 가능 프로시져, 서브 모듈, 데이블 및 다른 데이터 구조를 포함할 수 있다. 일 실시예에서, 변환 판정 모듈(216)은,
●산출된 클릭 레이트 통계를 저장하기 위한 데이터 구조(532);
●계수의 세트를 판정하기 위한 판정 펑션(536) - 상기 판정 펑션은 하나 이상의 발견적 룰을 포함할 수 있음; 및
●판정된 계수의 세트를 저장하기 위한 하나 이상의 데이터 구조(620)을 포함한다.
대안적인 실시예에서, 변환 펑션은 단일 변환(즉, 소스에 대한 스코어를 변화시키지 않는 변환)과 관련된 초기에 지정된 하나 이상의 계수값이 되는 각 변환 펑션으로서 모든 검색 소스에 대해 정의된다. 다음에 전술한 바와 같이 여러 다양 한 변환 펑션에 대한 계수 값이 변환 정의 모듈에 의해 수집된 정보에 기초하여 지정된다. 몇몇 구현례에서, 모든 변환 펑션은 계수에 할당되어 비 단일 변환이 모든 검색 소스에 대한 스코어상에서 수행된다. 그러나, 전술한 바와 같이, N개의 검색 소스로부터의 결과를 블렌딩할 때, 비 단일 변환은 일반적으로 고작 N-1 개의 검색 소스에 대해 필요하게 된다.
이해를 위한 목적인 전술한 설명은 본 발명의 완전한 이해를 위해 특정 학명을 이용하였다. 그러나, 당업자는 이러한 특정 설명이 본 발명을 실시하는데 필요한 것은 아니라는 것을 알 수 있다. 실시예는 본 발명의 원리 및 그 실제적인 애플리케이션을 가장 잘 설명하기 위해 선택되어 설명되었고, 당업자는 고려될 수 있는 특정한 사용에 적합한 다양한 수정에 따라 본 발명 및 다양한 실시예를 잘 이용할 수 있게 된다. 따라서, 전술한 설명은 개시된 바로 그 형태로 본 발명을 소진시키거나 제한하도록 의도되는 것은 아니다. 다양한 수정 및 변경이 전술한 교시의 견지에서 이루어질 수 있다.
본 발명의 범주는 다음의 특허청구범위 및 그 균등물에 의해서 한정된다.

Claims (26)

  1. 복수의 검색 소스 각각으로부터의 복수의 검색 엔진 결과를 하나의 검색 엔진 결과로 블렌딩(blending)하는 방법으로서,
    상기 검색 소스 각각으로부터, 엔트리들의 각 결과 리스트를 수신하는 단계 ― 상기 각 결과 리스트는 상기 리스트 상의 각 엔트리에 대해 적어도 상기 엔트리의 위치, 문서의 주소, 및 상기 문서의 상관도 스코어를 포함함 ― 와,
    상기 수신된 결과 리스트 중 적어도 하나의 리스트 내의 문서의 적어도 서브세트의 상기 상관도 스코어에 판정된 변환을 적용하여 변환된 스코어를 생성하는 단계와,
    엔트리의 블렌딩된 리스트를 포함하는 블렌딩된 검색 엔진을 생성하기 위해 상기 각 결과 리스트의 적어도 일부를 결합시키는 단계 ― 상기 문서의 상기 변환된 스코어에 적어도 부분적으로 기초하여 상기 엔트리의 블렌딩된 리스트를 순서화(ordering)하는 것을 포함함 ―
    를 포함하는 방법.
  2. 제1항에 있어서,
    제1 검색 소스 및 제2 검색 소스에 대한 클릭 레이트(click rate) 통계를 산출 및 저장하고,
    상기 제1 및 제2 검색 소스 각각에 대한 성능 지수(figure of merit)를 판정 하고 ― 상기 성능 지수는, 상기 산출 및 저장된 통계에 의해 적어도 부분적으로 판정됨 ― ,
    상기 제1 검색 소스에 대해, 상기 제1 및 제2 검색 소스에 대한 상기 성능 지수에 기초하여 계수 세트를 판정 ― 상기 계수 세트는 상기 제1 검색 소스에 대한 변환을 정의함 ―
    함으로써, 상기 복수의 검색 소스의 상기 제1 검색 소스에 대한 변환을 판정하는 단계를 포함하는 방법.
  3. 제2항에 있어서,
    발견적 룰(heuristic rules) 세트를 적용함으로써 상기 계수 세트를 판정하는 단계를 포함하며,
    상기 발견적 룰 중 하나 이상은, 제1 성능 지수 및 제2 성능 지수의 비율이 사전설정된 값 범위 내에 있을 때 상기 변환의 계수가 사전설정된 계수 값인 것으로 하는 것을 요구하는 방법.
  4. 제1항에 있어서,
    상기 변환은 두 개의 계수에 의해 판정되는 아핀 변환(affine transformation)인 방법.
  5. 제1항에 있어서,
    상기 변환은 하나의 계수에 의해 판정되는 스케일링 변환인 방법.
  6. 제5항에 있어서,
    상기 계수는 0.9 내지 1.1의 범위의 값을 취하는 방법.
  7. 제1항에 있어서,
    상기 변환은 하나의 계수에 의해 판정되는 시프팅 변환인 방법.
  8. 제7항에 있어서,
    상기 계수는 -0.04 내지 0.04의 범위의 값을 취하는 방법.
  9. 제2항에 있어서,
    상기 클릭 레이트 통계를 산출 및 저장하는 단계는,
    사용자로부터 질의를 수신하는 단계와,
    엔트리의 리스트를 포함하는 블렌딩된 결과를 상기 사용자에게 리턴하는 단계와,
    상기 엔트리 리스트 내의, 존재한다면 어떤 엔트리가 상기 사용자에게 선택되는지를 기록하는 단계와,
    종료 조건에 도달될 때까지 상기 수신하는 단계, 리턴하는 단계, 및 기록하는 단계를 반복하는 단계를 포함하는 방법.
  10. 제9항에 있어서,
    상기 기록하는 단계는, 상기 사용자가 상기 엔트리 리스트로부터 어떠한 아이템도 선택하지 않았는지를 기록하는 단계를 포함하는 방법.
  11. 제9항에 있어서,
    상기 클릭 레이트 통계를 산출 및 저장하는 단계는,
    상기 블렌딩된 결과 내의 선택된 엔트리와 연관된 검색 소스 및 위치를 기록하는 단계 ― 상기 선택된 엔트리는 상기 사용자에 의해 선택됨 ― 와,
    상기 사용자에 의해 선택되지 않은 블렌딩된 결과 내의 엔트리와 연관된 검색 소스 및 위치를 기록하는 단계를 더 포함하는 방법.
  12. 제11항에 있어서,
    상기 제1 검색 소스에 대한 성능 지수를 판정하는 단계는,
    상기 복수의 검색 소스 각각에 대해, 상기 블렌딩된 결과 내의 복수의 위치에 대한 복수의 임프레션(impression) 각각을 판정하는 단계와,
    상기 제1 검색 소스에 대해, 상기 블렌딩된 결과 내의 위치에 있는 상기 제1 검색 소스와 연관된 엔트리를 상기 사용자가 선택한 제1 횟수를 판정하는 단계와,
    적어도 부분적으로 상기 제1 횟수 및 상기 복수의 임프레션에 기초하여 상기 제1 검색 소스에 대한 상기 성능 지수를 판정하는 단계를 포함하는 방법.
  13. 검색 엔진 시스템에 있어서,
    복수의 검색 소스와,
    질의를 수신하고 검색 결과를 전송하기 위한 적어도 하나의 인터페이스와,
    상기 복수의 검색 소스에 결합되어, 상기 검색 소스 각각으로부터 상기 수신된 질의에 대응하는 엔트리의 각 결과 리스트를 수신하기 위한 적어도 하나의 검색 엔진 ― 상기 각 결과 리스트는 상기 리스트 상의 각 엔트리에 대해 적어도 상기 엔트리의 위치, 문서의 주소, 및 상기 수신된 질의에 대해 상기 문서를 연관시키는 상관도 스코어를 포함함 ― 과,
    변환된 스코어를 생성하기 위해 상기 수신된 결과 리스트 중 적어도 하나 내의 상기 엔트리의 적어도 서브세트의 상기 상관도 스코어에 판정된 변환을 적용시키도록 구성되며, 엔트리의 블렌딩된 리스트를 포함하는 블렌딩된 검색 엔진 결과를 생성하기 위해 상기 각 결과 리스트의 적어도 일부를 결합시키도록 구성된 블렌딩 모듈 ― 상기 변환된 스코어의 적어도 일부에 기초하여 상기 엔트리의 블렌딩된 리스트를 순서화함 ―
    을 포함하는 검색 엔진 시스템.
  14. 제13항에 있어서,
    상기 적어도 하나의 검색 엔진을 상기 블렌딩 모듈을 포함하는 검색 엔진 시스템.
  15. 제13항에 있어서,
    변환 판정 모듈을 더 포함하며,
    상기 변환 판정 모듈은,
    제1 검색 엔진 및 제2 검색 엔진에 대한 클릭 레이트 통계를 산출 및 저장하고,
    상기 제1 및 제2 검색 소스 각각에 대한 성능 지수를 판정하고 ― 상기 성능 지수는, 상기 산출 및 저장된 통계에 의해 적어도 부분적으로 판정됨 ―,
    상기 제1 검색 소스에 대해, 상기 제1 및 제2 검색 소스에 대한 상기 성능 지수에 기초하여 계수 세트를 판정 ― 상기 계수 세트는 상기 제1 검색 소스에 대한 변환을 정의함 ―
    함으로써, 상기 복수의 검색 소스의 제1 검색 소스에 대한 상기 변환을 판정하도록 구성된 검색 엔진 시스템.
  16. 제15항에 있어서,
    상기 적어도 하나의 검색 엔진은 상기 변환 판정 모듈을 포함하는 검색 엔진 시스템.
  17. 제15항에 있어서,
    상기 변환 판정 모듈은, 발견적 룰 세트를 적용함으로써 상기 계수 세트를 판정하도록 구성되며,
    상기 발견적 룰 중 하나 이상은, 제1 성능 지수 및 제2 성능 지수의 비율이 사전설정된 값 범위 내에 있을 때 상기 변환의 계수가 사전설정된 계수 값인 것으로 하는 것을 요구하는 검색 엔진 시스템.
  18. 제15항에 있어서,
    상기 변환은 두 개의 계수에 의해 판정되는 아핀 변환인 검색 엔진 시스템.
  19. 제15항에 있어서,
    상기 변환은 하나의 계수에 의해 판정되는 스케일링 변환인 검색 엔진 시스템.
  20. 제15항에 있어서,
    상기 계수는 0.9 내지 1.1의 범위의 값을 취하는 검색 엔진 시스템.
  21. 제15항에 있어서,
    상기 변환은 하나의 계수에 의해 판정되는 시프팅 변환인 검색 엔진 시스템.
  22. 제15항에 있어서,
    상기 계수는 -0.04 내지 0.04의 범위의 값을 취하는 검색 엔진 시스템.
  23. 제15항에 있어서,
    상기 검색 엔진 시스템은 상기 제1 검색 소스 및 제2 검색 소스에 대한 클릭 레이트 통계를 산출 및 저장하도록 구성되며,
    상기 검색 엔진은 사용자로부터 질의를 수신하도록 구성되며,
    상기 검색 엔진은 엔트리의 리스트를 포함하는 블렌딩된 결과를 상기 사용자에게 리턴하도록 구성되며,
    상기 변환 판정 모듈은 상기 엔트리 리스트 내의, 존재한다면 어떤 엔트리가 상기 사용자에게 선택되는지를 기록하도록 구성되며,
    상기 검색 엔진 시스템은, 종료 조건에 도달될 때까지 상기 수신, 리턴, 및 기록을 반복하도록 구성된 검색 엔진 시스템.
  24. 제23항에 있어서,
    상기 변환 모듈은, 상기 사용자가 상기 엔트리 리스트로부터 어떠한 아이템도 선택하지 않았는지를 기록하도록 구성된 검색 엔진 시스템.
  25. 제23항에 있어서,
    상기 변환 모듈은,
    상기 블렌딩된 결과 내의 선택된 엔트리와 연관된 검색 소스 및 위치를 기록하고 ― 상기 선택된 엔트리는 상기 사용자에 의해 선택됨 ―,
    상기 사용자에 의해 선택되지 않은 블렌딩된 결과 내의 엔트리와 연관된 검색 소스 및 위치를 기록하도록 구성된 검색 엔진 시스템.
  26. 제25항에 있어서,
    상기 변환 판정 모듈은,
    상기 복수의 검색 소스 각각에 대해, 상기 블렌딩된 결과 내의 복수의 위치에 대한 복수의 임프레션 각각을 판정하고,
    상기 제1 검색 소스에 대해, 상기 블렌딩된 결과 내의 위치에 있는 상기 제1 검색 소스와 연관된 엔트리를 상기 사용자가 선택한 제1 횟수를 판정하고,
    적어도 부분적으로 상기 제1 횟수 및 상기 복수의 임프레션에 기초하여 상기 제1 검색 소스에 대한 상기 성능 지수를 판정
    함으로써, 상기 제1 검색 소스에 대한 성능 지수를 판정하도록 구성된 검색 엔진 시스템.
KR1020057020296A 2003-04-25 2004-04-23 개별 소스들로부터의 검색 엔진 결과들을 하나의 검색결과로 블렌딩하는 방법 및 시스템 KR100778159B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/424,171 US7219090B2 (en) 2003-04-25 2003-04-25 Method and system for blending search engine results from disparate sources into one search result
US10/424,171 2003-04-25

Publications (2)

Publication Number Publication Date
KR20060017502A true KR20060017502A (ko) 2006-02-23
KR100778159B1 KR100778159B1 (ko) 2007-11-22

Family

ID=33299289

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020057020296A KR100778159B1 (ko) 2003-04-25 2004-04-23 개별 소스들로부터의 검색 엔진 결과들을 하나의 검색결과로 블렌딩하는 방법 및 시스템

Country Status (6)

Country Link
US (1) US7219090B2 (ko)
EP (1) EP1631901A4 (ko)
JP (2) JP2006524871A (ko)
KR (1) KR100778159B1 (ko)
CN (1) CN100432921C (ko)
WO (1) WO2004097570A2 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100896614B1 (ko) * 2007-01-29 2009-05-08 엔에이치엔(주) 검색 시스템 및 방법
WO2010138772A3 (en) * 2009-05-27 2011-03-03 Microsoft Corporation Merging search results

Families Citing this family (111)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7663739B2 (en) * 2002-10-18 2010-02-16 Board Of Regents, The University Of Texas System Customizable spectral profiles for filtering
US7403939B1 (en) 2003-05-30 2008-07-22 Aol Llc Resolving queries based on automatic determination of requestor geographic location
US7454417B2 (en) 2003-09-12 2008-11-18 Google Inc. Methods and systems for improving a search ranking using population information
US7505964B2 (en) * 2003-09-12 2009-03-17 Google Inc. Methods and systems for improving a search ranking using related queries
US8521725B1 (en) * 2003-12-03 2013-08-27 Google Inc. Systems and methods for improved searching
US7281008B1 (en) * 2003-12-31 2007-10-09 Google Inc. Systems and methods for constructing a query result set
US8156444B1 (en) 2003-12-31 2012-04-10 Google Inc. Systems and methods for determining a user interface attribute
US7925657B1 (en) 2004-03-17 2011-04-12 Google Inc. Methods and systems for adjusting a scoring measure based on query breadth
US7272601B1 (en) 2004-03-31 2007-09-18 Google Inc. Systems and methods for associating a keyword with a user interface area
US9009153B2 (en) * 2004-03-31 2015-04-14 Google Inc. Systems and methods for identifying a named entity
US8595214B1 (en) 2004-03-31 2013-11-26 Google Inc. Systems and methods for article location and retrieval
US20070282797A1 (en) * 2004-03-31 2007-12-06 Niniane Wang Systems and methods for refreshing a content display
US7761439B1 (en) 2004-06-30 2010-07-20 Google Inc. Systems and methods for performing a directory search
US7363296B1 (en) * 2004-07-01 2008-04-22 Microsoft Corporation Generating a subindex with relevant attributes to improve querying
US7562069B1 (en) 2004-07-01 2009-07-14 Aol Llc Query disambiguation
US7853606B1 (en) 2004-09-14 2010-12-14 Google, Inc. Alternate methods of displaying search results
US7801899B1 (en) * 2004-10-01 2010-09-21 Google Inc. Mixing items, such as ad targeting keyword suggestions, from heterogeneous sources
US7818314B2 (en) 2004-12-29 2010-10-19 Aol Inc. Search fusion
US7349896B2 (en) 2004-12-29 2008-03-25 Aol Llc Query routing
US7571157B2 (en) 2004-12-29 2009-08-04 Aol Llc Filtering search results
US7272597B2 (en) 2004-12-29 2007-09-18 Aol Llc Domain expert search
US7512633B2 (en) * 2005-07-13 2009-03-31 International Business Machines Corporation Conversion of hierarchically-structured HL7 specifications to relational databases
US7984039B2 (en) * 2005-07-14 2011-07-19 International Business Machines Corporation Merging of results in distributed information retrieval
CN100401295C (zh) * 2005-09-26 2008-07-09 北京金山软件有限公司 一种网络词典检索结果的反馈显示方法及系统
US20070150342A1 (en) * 2005-12-22 2007-06-28 Law Justin M Dynamic selection of blended content from multiple media sources
US7779059B2 (en) * 2005-12-22 2010-08-17 Pitney Bowes Software Inc. Geocoding and address hygiene system employing point level and centerline data sets
US8126874B2 (en) * 2006-05-09 2012-02-28 Google Inc. Systems and methods for generating statistics from search engine query logs
US20080155409A1 (en) * 2006-06-19 2008-06-26 Andy Santana Internet search engine
US7752195B1 (en) 2006-08-18 2010-07-06 A9.Com, Inc. Universal query search results
US8087019B1 (en) 2006-10-31 2011-12-27 Aol Inc. Systems and methods for performing machine-implemented tasks
US8661029B1 (en) 2006-11-02 2014-02-25 Google Inc. Modifying search result ranking based on implicit user feedback
US9110975B1 (en) 2006-11-02 2015-08-18 Google Inc. Search result inputs using variant generalized queries
KR100723577B1 (ko) * 2006-12-01 2007-05-31 (주)넷피아닷컴 키워드 처리시스템, 키워드 처리방법 및 이를 실행시키기위한 프로그램을 기록한 기록매체
US8086600B2 (en) 2006-12-07 2011-12-27 Google Inc. Interleaving search results
US7958126B2 (en) * 2006-12-19 2011-06-07 Yahoo! Inc. Techniques for including collection items in search results
US8938463B1 (en) 2007-03-12 2015-01-20 Google Inc. Modifying search result ranking based on implicit user feedback and a model of presentation bias
US8694374B1 (en) 2007-03-14 2014-04-08 Google Inc. Detecting click spam
US8359300B1 (en) * 2007-04-03 2013-01-22 Google Inc. System and method for displaying both localized search results and internet search results
US9092510B1 (en) 2007-04-30 2015-07-28 Google Inc. Modifying search result ranking based on a temporal element of user feedback
US8359309B1 (en) * 2007-05-23 2013-01-22 Google Inc. Modifying search result ranking based on corpus search statistics
US20090043741A1 (en) * 2007-08-09 2009-02-12 Dohyung Kim Autocompletion and Automatic Input Method Correction for Partially Entered Search Query
US8694511B1 (en) 2007-08-20 2014-04-08 Google Inc. Modifying search result ranking based on populations
US7792813B2 (en) * 2007-08-31 2010-09-07 Microsoft Corporation Presenting result items based upon user behavior
US20090094224A1 (en) 2007-10-05 2009-04-09 Google Inc. Collaborative search results
US8909655B1 (en) 2007-10-11 2014-12-09 Google Inc. Time based ranking
WO2009087414A1 (en) * 2008-01-08 2009-07-16 Taptu Ltd. Mobile search service
US8620859B2 (en) * 2008-04-28 2013-12-31 Hewlett-Packard Development Company, L.P. Data processing system and method of evaluating effectiveness of usage of a file system
US9128945B1 (en) 2008-05-16 2015-09-08 Google Inc. Query augmentation
US8745018B1 (en) 2008-07-10 2014-06-03 Google Inc. Search application and web browser interaction
CA2639438A1 (en) * 2008-09-08 2010-03-08 Semanti Inc. Semantically associated computer search index, and uses therefore
US7730061B2 (en) * 2008-09-12 2010-06-01 International Business Machines Corporation Fast-approximate TFIDF
US20100082609A1 (en) * 2008-09-30 2010-04-01 Yahoo! Inc. System and method for blending user rankings for an output display
US8392429B1 (en) * 2008-11-26 2013-03-05 Google Inc. Informational book query
US8396865B1 (en) * 2008-12-10 2013-03-12 Google Inc. Sharing search engine relevance data between corpora
US8455990B2 (en) * 2009-02-25 2013-06-04 Conexant Systems, Inc. Systems and methods of tamper proof packaging of a semiconductor device
US9009146B1 (en) 2009-04-08 2015-04-14 Google Inc. Ranking search results based on similar queries
US20100268709A1 (en) * 2009-04-21 2010-10-21 Yahoo! Inc., A Delaware Corporation System, method, or apparatus for calibrating a relevance score
US20110004608A1 (en) * 2009-07-02 2011-01-06 Microsoft Corporation Combining and re-ranking search results from multiple sources
US8447760B1 (en) 2009-07-20 2013-05-21 Google Inc. Generating a related set of documents for an initial set of documents
US8498974B1 (en) 2009-08-31 2013-07-30 Google Inc. Refining search results
US8972391B1 (en) 2009-10-02 2015-03-03 Google Inc. Recent interest based relevance scoring
US10019518B2 (en) * 2009-10-09 2018-07-10 Excalibur Ip, Llc Methods and systems relating to ranking functions for multiple domains
CN102063432A (zh) 2009-11-12 2011-05-18 阿里巴巴集团控股有限公司 一种检索方法和系统
US8874555B1 (en) 2009-11-20 2014-10-28 Google Inc. Modifying scoring data based on historical changes
US8751516B1 (en) * 2009-12-22 2014-06-10 Douglas Tak-Lai Wong Landing page search results
US8615514B1 (en) 2010-02-03 2013-12-24 Google Inc. Evaluating website properties by partitioning user feedback
US8924379B1 (en) 2010-03-05 2014-12-30 Google Inc. Temporal-based score adjustments
US8959093B1 (en) 2010-03-15 2015-02-17 Google Inc. Ranking search results based on anchors
US8751511B2 (en) * 2010-03-30 2014-06-10 Yahoo! Inc. Ranking of search results based on microblog data
US9623119B1 (en) 2010-06-29 2017-04-18 Google Inc. Accentuating search results
US8306964B2 (en) * 2010-07-20 2012-11-06 Microsoft Corporation Extraction of rich search information from index servers via an alternative asynchronous data path
US8832083B1 (en) 2010-07-23 2014-09-09 Google Inc. Combining user feedback
US20120047247A1 (en) * 2010-08-18 2012-02-23 Openwave Systems Inc. System and method for allowing data traffic search
JP2012068696A (ja) * 2010-09-21 2012-04-05 Fuji Xerox Co Ltd 文書管理装置及び文書管理プログラム
US8346792B1 (en) 2010-11-09 2013-01-01 Google Inc. Query generation using structural similarity between documents
US8484202B2 (en) * 2010-12-09 2013-07-09 Microsoft Corporation Optimizing blending algorithms using interleaving
US9002867B1 (en) 2010-12-30 2015-04-07 Google Inc. Modifying ranking data based on document changes
JP2012190061A (ja) * 2011-03-08 2012-10-04 Sony Corp 情報処理装置、端末装置、情報提示システム、評価スコアの算出方法、及びプログラム
US20120239681A1 (en) 2011-03-14 2012-09-20 Splunk Inc. Scalable interactive display of distributed data
US9053087B2 (en) * 2011-09-23 2015-06-09 Microsoft Technology Licensing, Llc Automatic semantic evaluation of speech recognition results
US8880992B2 (en) 2012-01-10 2014-11-04 Google Inc. Method and apparatus for animating transitions between search results
CN103377240B (zh) 2012-04-26 2017-03-01 阿里巴巴集团控股有限公司 信息提供方法、处理服务器及合并服务器
US10114871B2 (en) * 2012-08-02 2018-10-30 Rule 14 Real-time and adaptive data mining
US10120911B2 (en) * 2012-08-02 2018-11-06 Rule 14 Real-time and adaptive data mining
US10102257B2 (en) * 2012-08-02 2018-10-16 Rule 14 Real-time and adaptive data mining
US10108713B2 (en) * 2012-08-02 2018-10-23 Rule 14 Real-time and adaptive data mining
US10198516B2 (en) * 2012-08-02 2019-02-05 Rule 14 Real-time and adaptive data mining
US10108679B2 (en) * 2012-08-02 2018-10-23 Rule 14 Real-time and adaptive data mining
US10114872B2 (en) * 2012-08-02 2018-10-30 Rule 14 Real-time and adaptive data mining
US10108725B2 (en) * 2012-08-02 2018-10-23 Rule 14 Real-time and adaptive data mining
US10114870B2 (en) * 2012-08-02 2018-10-30 Rule 14 Real-time and adaptive data mining
US10108678B2 (en) * 2012-08-02 2018-10-23 Rule 14 Real-time and adaptive data mining
US10108724B2 (en) * 2012-08-02 2018-10-23 Rule 14 Real-time and adaptive data mining
US10108723B2 (en) * 2012-08-02 2018-10-23 Rule 14 Real-time and adaptive data mining
US10108680B2 (en) * 2012-08-02 2018-10-23 Rule 14 Real-time and adaptive data mining
US10114899B2 (en) * 2012-08-02 2018-10-30 Rule 14 Real-time and adaptive data mining
US10108704B2 (en) * 2012-09-06 2018-10-23 Microsoft Technology Licensing, Llc Identifying dissatisfaction segments in connection with improving search engine performance
US9135307B1 (en) 2012-12-27 2015-09-15 Google Inc. Selectively generating alternative queries
US9183499B1 (en) 2013-04-19 2015-11-10 Google Inc. Evaluating quality based on neighbor features
US9405803B2 (en) * 2013-04-23 2016-08-02 Google Inc. Ranking signals in mixed corpora environments
US10169711B1 (en) * 2013-06-27 2019-01-01 Google Llc Generalized engine for predicting actions
CN104516887B (zh) * 2013-09-27 2019-08-30 腾讯科技(深圳)有限公司 一种网页数据搜索方法、装置和系统
US9430533B2 (en) * 2014-03-21 2016-08-30 Microsoft Technology Licensing, Llc Machine-assisted search preference evaluation
CN103870607A (zh) * 2014-04-08 2014-06-18 北京奇虎科技有限公司 多搜索引擎搜索结果的排序方法及装置
US10268732B2 (en) 2015-06-29 2019-04-23 Google Llc Ranking native applications and native application deep links
US10120951B2 (en) * 2015-08-12 2018-11-06 Samsung Electronics Co., Ltd. Bifurcated search
US10354066B2 (en) 2016-02-26 2019-07-16 Cylance Inc. Retention and accessibility of data characterizing events on an endpoint computer
US10699012B2 (en) 2017-01-11 2020-06-30 Cylance Inc. Endpoint detection and response utilizing machine learning
CN111066015B (zh) 2017-04-26 2024-02-23 西兰克公司 端点检测和响应系统事件特征数据传输
US10423638B2 (en) 2017-04-27 2019-09-24 Google Llc Cloud inference system
US11269960B2 (en) * 2017-05-15 2022-03-08 Microsoft Technology Licensing, Llc Dynamic search interfaces

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3186960B2 (ja) * 1995-11-30 2001-07-11 松下電器産業株式会社 情報検索方法およびその装置
US5948061A (en) * 1996-10-29 1999-09-07 Double Click, Inc. Method of delivery, targeting, and measuring advertising over networks
US5987446A (en) * 1996-11-12 1999-11-16 U.S. West, Inc. Searching large collections of text using multiple search engines concurrently
US6078914A (en) * 1996-12-09 2000-06-20 Open Text Corporation Natural language meta-search system and method
US6006222A (en) * 1997-04-25 1999-12-21 Culliss; Gary Method for organizing information
US6182068B1 (en) * 1997-08-01 2001-01-30 Ask Jeeves, Inc. Personalized search methods
US6078916A (en) * 1997-08-01 2000-06-20 Culliss; Gary Method for organizing information
US6275820B1 (en) * 1998-07-16 2001-08-14 Perot Systems Corporation System and method for integrating search results from heterogeneous information resources
US6370527B1 (en) * 1998-12-29 2002-04-09 At&T Corp. Method and apparatus for searching distributed networks using a plurality of search devices
US6480837B1 (en) * 1999-12-16 2002-11-12 International Business Machines Corporation Method, system, and program for ordering search results using a popularity weighting
KR20010106590A (ko) * 2000-05-22 2001-12-07 함광선 통신상의 웹사이트 통합 검색방법 및 이 방법을수행하도록 프로그램된 소프트웨어가 저장된 매체
KR100388152B1 (ko) * 2000-06-17 2003-06-18 (주)준맨 광고 서버를 이용한 인터넷상의 광고 방법
US20020069194A1 (en) * 2000-12-06 2002-06-06 Robbins Benjamin Jon Client based online content meta search
KR20020069447A (ko) * 2001-02-26 2002-09-04 신하균 각종 컨텐츠의 사이버 머니를 통합적인 기준 환율로변환시키는 시스템
US6920448B2 (en) * 2001-05-09 2005-07-19 Agilent Technologies, Inc. Domain specific knowledge-based metasearch system and methods of using
US6795820B2 (en) * 2001-06-20 2004-09-21 Nextpage, Inc. Metasearch technique that ranks documents obtained from multiple collections
US7058624B2 (en) * 2001-06-20 2006-06-06 Hewlett-Packard Development Company, L.P. System and method for optimizing search results
US6728704B2 (en) * 2001-08-27 2004-04-27 Verity, Inc. Method and apparatus for merging result lists from multiple search engines
CN1389811A (zh) * 2002-02-06 2003-01-08 北京造极人工智能技术有限公司 搜索引擎的智能化搜索方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100896614B1 (ko) * 2007-01-29 2009-05-08 엔에이치엔(주) 검색 시스템 및 방법
WO2010138772A3 (en) * 2009-05-27 2011-03-03 Microsoft Corporation Merging search results
US9495460B2 (en) 2009-05-27 2016-11-15 Microsoft Technology Licensing, Llc Merging search results

Also Published As

Publication number Publication date
EP1631901A4 (en) 2007-10-31
JP2006524871A (ja) 2006-11-02
KR100778159B1 (ko) 2007-11-22
CN100432921C (zh) 2008-11-12
WO2004097570A3 (en) 2005-01-13
JP2011044170A (ja) 2011-03-03
JP5705497B2 (ja) 2015-04-22
WO2004097570A2 (en) 2004-11-11
EP1631901A2 (en) 2006-03-08
CN1809803A (zh) 2006-07-26
US20040215607A1 (en) 2004-10-28
US7219090B2 (en) 2007-05-15

Similar Documents

Publication Publication Date Title
KR100778159B1 (ko) 개별 소스들로부터의 검색 엔진 결과들을 하나의 검색결과로 블렌딩하는 방법 및 시스템
US7827184B2 (en) System and method for modeling user selection feedback in a search result page
US6546388B1 (en) Metadata search results ranking system
US6182065B1 (en) Method and system for weighting the search results of a database search engine
AU2004262352B2 (en) Providing a user interface with search query broadening
US8060456B2 (en) Training a search result ranker with automatically-generated samples
RU2319202C2 (ru) Система и способ предоставления предпочтительного языка упорядочивания результатов поиска
US7966337B2 (en) System and method for prioritizing websites during a webcrawling process
Davison Predicting web actions from html content
US7599911B2 (en) Method and apparatus for search ranking using human input and automated ranking
US8775396B2 (en) Method and system for searching a wide area network
US6640218B1 (en) Estimating the usefulness of an item in a collection of information
US8452758B2 (en) Methods and systems for improving a search ranking using related queries
EP1673703B1 (en) Personalization of web search
US20030018621A1 (en) Distributed information search in a networked environment
US20060184512A1 (en) Content searching and configuration of search results
US20040177015A1 (en) System and method for extracting content for submission to a search engine
CA2546279A1 (en) Systems and methods for unification of search results
LaMacchia Internet fish
US7089305B2 (en) Conditional promotion of bookmarks
LaMacchia Artificial Intelligence Laboratory and Department of Electrical Engineering and Computer Science Massachusetts Institute of Technology

Legal Events

Date Code Title Description
AMND Amendment
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application
J201 Request for trial against refusal decision
AMND Amendment
B701 Decision to grant
GRNT Written decision to grant
G170 Re-publication after modification of scope of protection [patent]
FPAY Annual fee payment

Payment date: 20121019

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20131018

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20141022

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20151016

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20161019

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20171018

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20181018

Year of fee payment: 12