KR101098703B1 - 다수의 기입 시스템을 가진 언어들에 대한 관련 쿼리들을 식별하기 위한 시스템 및 방법 - Google Patents

다수의 기입 시스템을 가진 언어들에 대한 관련 쿼리들을 식별하기 위한 시스템 및 방법 Download PDF

Info

Publication number
KR101098703B1
KR101098703B1 KR1020087023584A KR20087023584A KR101098703B1 KR 101098703 B1 KR101098703 B1 KR 101098703B1 KR 1020087023584 A KR1020087023584 A KR 1020087023584A KR 20087023584 A KR20087023584 A KR 20087023584A KR 101098703 B1 KR101098703 B1 KR 101098703B1
Authority
KR
South Korea
Prior art keywords
query
characters
queries
candidate set
received
Prior art date
Application number
KR1020087023584A
Other languages
English (en)
Other versions
KR20080114764A (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 KR20080114764A publication Critical patent/KR20080114764A/ko
Application granted granted Critical
Publication of KR101098703B1 publication Critical patent/KR101098703B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/3332Query 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/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99934Query formulation, input preparation, or translation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Databases & Information Systems (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Finance (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 소정의 쿼리와 관련된 하나 이상의 쿼리를 식별하기 위한 방법들 및 시스템들에 관한 것이다. 본 발명의 방법은 다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템에 따라 기입된 쿼리를 수신하는 단계를 포함한다. 수신된 쿼리와 연관된 다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템에 따라 기입된 쿼리들의 후보 세트가 식별된다. 후보 세트 내의 하나 이상의 쿼리의 수신된 쿼리에 대한 유사성을 나타내는 후보 세트 내의 하나 이상의 쿼리의 스코어에 대해 계산된다.
검색 엔진, 광고, 쿼리, 후보 세트, 언어, 기입 시스템

Description

다수의 기입 시스템을 가진 언어들에 대한 관련 쿼리들을 식별하기 위한 시스템 및 방법{SYSTEM AND METHOD FOR IDENTIFYING RELATED QUERIES FOR LANGUAGES WITH MULTIPLE WRITING SYSTEMS}
<저작권 공지>
이 특허 문서의 명세서의 일부는 저작권 보호를 받는 자료를 포함한다. 저작권 소유자는 이 특허 문서 또는 특허 명세서가 특허 상표청 파일들 또는 레코드들에 나타날 때 어느 누군가에 의한 팩시밀리 재생에 반대하지 않지만, 그 외에는 모든 저작권이 보호된다.
<관련 출원들의 상호 참조>
이 출원은 아래의 계류중인 출원들과 관련되며, 이들 각각은 그 전체가 본 명세서에 참고로 반영되어 있다.
- 2005년 8월 10일자로 "SYSTEM AND METHOD FOR DETERMINING ALTERNATE SEARCH QUERIES"라는 제목으로 출원된 미국 특허 출원 번호 11/200,851
- 2005년 11월 9일자로 "MODULAR OPTIMIZED DYNAMIC SETS"라는 제목으로 출원된 미국 가출원 번호 60/736,133
본 발명은 일반적으로 다수의 기입 시스템을 가진 언어에 따라 기입된 소정의 검색 쿼리(query)와 관련된 하나 이상의 쿼리를 식별하기 위한 방법들 및 시스 템들을 제공한다. 보다 상세하게는, 본 발명은 다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템의 조합에 따라 기입된 검색 쿼리를 수신하고 쿼리들의 후보 세트로부터 하나 이상의 관련 쿼리를 식별하기 위한 방법들 및 시스템들을 제공한다.
월드 와이드 웹("웹")을 통해 사용자가 이용할 수 있는 인터넷 및 다수의 웹 페이지, 미디어 콘텐츠, 광고 등의 출현에 따라, 웹으로부터 적절한 정보를 얻기 위한 스트림라인 접근법을 사용자에게 제공하는 것이 필요하게 되었다. 검색 시스템들 및 프로세스들은 사용자들이 이러한 정보를 얻어야 하는 필요를 충족시키기 위해 개발되어 왔다. 그러한 기술들의 예는 야후, 구글 및 기타 검색 제공자 웹 사이트들을 통해 액세스될 수 있다.
현재, 사용자들은 클라이언트 장치들(개인용 컴퓨터(PC), PDA, 스마트폰 등)을 이용하여 원거리 네트워크, 예를 들어 인터넷에 액세스함으로써 콘텐츠를 검색, 수취할 수 있다. 통상적으로, 사용자는 클라이언트 장치를 통해 쿼리를 입력하며, 검색 프로세스는 쿼리와 관련된 링크, 문서, 웹 페이지, 광고 등과 같은 하나 이상의 콘텐츠 항목을 반환한다. 소정의 쿼리에 응답하여 반환되는 콘텐츠 항목들은 사용자가 실제로 찾고 있던 주제 또는 화제와 밀접하게 관련되거나 전혀 무관할 수 있다. 검색된 콘텐츠 항목들이 소정의 쿼리와 얼마나 밀접하게 관련되는지에 기초하여 측정될 수 있는 소정의 검색의 성공은 검색 쿼리의 적절한 해석에 크게 의존할 수 있다.
쿼리는 하나 이상의 단어 및 문구로 이루어진다. 그러나, 인간 사용자들에 의해 입력되는 쿼리들은 종종 소정의 사용자가 찾고 있을 수 있는 콘텐츠를 적절히 기술하지 못한다. 더욱이, 사용자들은 그들이 찾고 있을 수 있는 콘텐츠에 대한 일반적인 또는 막연한 생각만을 갖고 있을 수 있다. 예를 들어, 사용자는 야후 검색 엔진을 이용하여, 텔레비전에 광고되는 제품에 대한 검색을 행하기를 원할 수 있다. 사용자는 제품의 이름, 제조자 등을 알지 못할 수 있으며, 제품을 일반적으로만 기술할 가능성이 있다. 따라서, 사용자에 의해 형성된 쿼리는 너무 광범위하여, 사용자가 찾는 콘텐츠와 전혀 무관한 콘텐츠 항목들의 검색을 유발할 수 있다. 마찬가지로, 사용자에 의해 선택되는 쿼리 항목들은 제품을 적절히 기술하지 못할 수 있으며, 따라서 콘텐츠 항목들이 존재하여도 거의 검색되지 않는 결과를 낳을 수 있다.
소정의 쿼리와 관련될 수 있는 쿼리들의 후보 세트를 생성하기 위한 현재의 기술들이 공지되어 있다. 예를 들어, 사용자는 쿼리 "Apple MP3 player"를 입력하여, "IPOD" "Itunes" 등과 같은 하나 이상의 관련 쿼리를 제공받을 수 있다. 그러나, 검색 제공자들은 소정의 쿼리에 의미상 가장 적합하거나 밀접하게 관련된 쿼리들의 후보 세트로부터 하나 이상의 쿼리를 식별해야 하는 과제를 갖는다. 더욱이, 일어와 같은 소정의 언어들은 다수의 기입 시스템을 가지며, 이는 소정의 쿼리에 의미상 가장 적합하거나 유사한 쿼리들의 후보 세트로부터 쿼리들을 식별하는 것의 복잡성을 더욱 증가시킨다. 예를 들어, 검색 엔진에 제출되는 단일 일어 쿼리는 한자, 가따까나, 히라가나, JASCII, ASCII 등과 같은 하나 이상의 일어 기입 시스 템의 다양한 조합에 따라 기입될 수 있다. 일어 한자 기입 시스템에 따라 기입된 쿼리는 일어 가따까나 및 히라가나 기입 시스템들에 따라 기입된 쿼리와 전혀 다르게 보일 수 있지만, 이 두 쿼리는 매우 유사하거나 동일한 의미를 가질 수 있다.
또한, 야후, MSN 또는 구글과 같은 검색 제공자들은 광고주들이 하나 이상의 광고가 쿼리에 응답하여 표시되도록 하기 위해 용어들에 입찰할 수 있는 입찰 시장을 이용할 수 있다. 예를 들어, 하나 이상의 광고주는 랩탑 컴퓨터에 대한 하나 이상의 광고를 표시하기를 원할 수 있으며, 따라서 용어 "노트북 컴퓨터"에 입찰할 수 있다. 그러나, 용어 "노트북 컴퓨터"는 일어와 같이 다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템에 따라 기입될 수 있다. 예를 들어, 용어 "노트북 컴퓨터"는 일어 히라가나 기입 시스템, 일어 가따까나 기입 시스템 등에 따라 기입될 수 있다.
사용자는 일어 가따까나 기입 시스템에 따라 기입된 용어 "노트북 컴퓨터"를 포함하는 쿼리를 야후와 같은 소정의 검색 제공자에게 제출할 수 있다. 가따까나 용어 "노트북 컴퓨터"에 대한 입찰들과 관련된 하나 이상의 광고가 검색되어 사용자에게 표시될 수 있다. 입찰 시장에서, 가따까나 용어 "노트북 컴퓨터"에 대해 최대 입찰가를 제공한 광고주와 관련된 광고는 웹 페이지의 가장 두드러진 위치에 표시될 수 있는데, 예를 들어 광고 순위 리스트의 처음에 위치하거나, 소정의 검색 결과 페이지의 최상에 표시될 수 있다.
사용자가 표시된 광고들 중 하나 이상을 선택하는 경우, 검색 제공자는 선택된 광고와 연관된 광고주에게 광고주의 입찰가에 기초하는 금액을 청구하는 것 등 에 의해 사용자의 선택을 화폐화할 수 있다. 그러나, 하나 이상의 용어에 대한 입찰들과 관련된 광고들만을 검색하여 표시하는 것은 소정의 검색 제공자의 상당한 수익 손실로 이어질 수 있다. 예를 들어, 사용자가 하나 이상의 광고주에 의해 입찰되지 않은 용어들을 포함하는 쿼리를 입력하는 경우, 검색 제공자는 사용자에게 어떠한 광고도 반환하지 못할 수 있으며, 따라서 사용자가 어떠한 결과도 선택하지 못할 것이므로 이는 검색 제공자의 수익 손실로 이어질 수 있다. 전술한 예와 관련하여, 사용자에 의해 입력된 쿼리가 가따까나 용어 "노트북 컴퓨터"를 포함하지 않지만, 대신에 히라가나 용어 "랩탑 컴퓨터"를 포함하는 경우, 검색 제공자는 가따까나 쿼리 "랩탑 컴퓨터"와 히라가나 쿼리 "노트북 컴퓨터"의 의미 유사성에도 불구하고 적절한 광고들을 표시하지 못할 수 있다.
소정의 쿼리와 의미가 동일하거나 유사한 쿼리들의 후보 세트로부터 하나 이상의 쿼리를 식별하기 위한 기술들이 존재하지만, 현존하는 기술들은 단일 기입 시스템에 따라 기입되는 언어들로 제한된다. 따라서, 현재의 기술들은 다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템에 따라 기입되는 오리지널 쿼리에 의미상 가장 적합하거나 밀접하게 관련된 쿼리들의 식별을 제공하지 못한다. 현존하는 기술들과 연관된 단점들을 극복하기 위하여, 본 발명은 다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템에 따라 기입되는 소정의 검색 쿼리에 대해 의미상 가장 유사한 관련 쿼리들의 후보 세트로부터 하나 이상의 쿼리를 식별하기 위한 시스템들 및 방법들을 제공한다.
<발명의 요약>
본 발명은 소정의 쿼리와 관련된 하나 이상의 쿼리를 식별하기 위한 방법들 및 시스템들에 관한 것이다. 본 발명의 방법은 다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템에 따라 기입된 쿼리를 수신하는 단계를 포함한다. 본 발명의 일 실시예에 따르면, 수신된 쿼리는 일어 히라가나, 가따까나, 가나, 로마자, JASCII 및 한자 기입 시스템들을 포함하는 하나 이상의 일어 기입 시스템의 조합에 따라 기입된 쿼리를 포함한다.
수신된 쿼리와 연관된 다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템에 따라 기입된 쿼리들의 후보 세트가 식별된다. 본 발명의 일 실시예에 따르면, 쿼리들의 후보 세트는 하나 이상의 쿼리 로그에서 지시되는 바와 같은 수신된 쿼리와 관련된 하나 이상의 쿼리를 포함한다.
방법은 후보 세트 내의 하나 이상의 쿼리의 수신된 쿼리에 대한 유사성을 나타내는 후보 세트 내의 하나 이상의 쿼리의 스코어를 계산하는 단계를 더 포함한다. 후보 세트 내의 하나 이상의 쿼리에 대해 계산된 스코어는 후보 세트 중의 소정의 쿼리의 수신된 쿼리에 대한 의미상의 유사성을 나타낸다. 본 발명의 일 실시예에 따르면, 스코어를 계산하는 단계는 각각의 쿼리 내의 하나 이상의 문자를 로마 문자로 변환한 후에 수신된 쿼리와 후보 세트 중에서 선택된 쿼리 간의 문자 편집 거리를 계산하는 단계를 포함한다. 본 발명의 다른 실시예에 따르면, 스코어를 계산하는 단계는 각각의 쿼리 내의 하나 이상의 문자를 로마 문자로 변환하고 각각의 쿼리로부터 공백 문자들을 제거한 후에 수신된 쿼리와 후보 세트 중에서 선택된 쿼리 간의 문자 편집 거리를 계산하는 단계를 포함한다. 본 발명의 또 다른 실시 예에 따르면, 스코어를 계산하는 단계는 수신된 쿼리 및 후보 세트 중에서 선택된 쿼리의 문자들을 로마 문자로 변환하는 단계, 및 1과, 수신된 쿼리 및 선택된 쿼리 내의 고유 공백 분리 공통 발생 단어들의 수와 양 쿼리 내의 고유 공백 분리 단어들의 총 수 간의 비율 사이의 차를 계산하는 단계를 포함한다.
본 발명의 또 다른 실시예에 따르면, 스코어를 계산하는 단계는 숫자가 수신된 쿼리 및 후보 세트 중에서 선택된 쿼리에 고유한지를 식별하는 단계를 포함한다. 또 다른 실시예에 따르면, 스코어를 계산하는 단계는 값 1과, 수신된 쿼리 및 후보 세트 중에서 선택된 쿼리 내의 공통 발생 일어 한자들의 수와 수신된 쿼리 및 후보 세트 중에서 선택된 쿼리 내의 고유 일어 한자들의 총 수 간의 비율 사이의 차를 계산하는 단계를 포함한다. 본 발명의 또 다른 실시예에 따르면, 스코어를 계산하는 단계는 수신된 쿼리 및 후보 세트 중에서 선택된 쿼리의 하나 이상의 문자를 로마 문자로 변환하는 단계, 및 쿼리들이 공통으로 갖는 로마 문자들의 수를 계산하는 단계를 포함한다. 본 발명의 또 다른 실시예에 따르면, 스코어를 계산하는 단계는 수신된 쿼리 또는 후보 세트 중에서 선택된 쿼리가 비 로마 문자를 포함하는지를 식별하는 단계를 포함한다. 본 발명의 또 다른 실시예에 따르면, 스코어를 계산하는 단계는 각각의 쿼리의 일어 한자들을 일어 가나 문자로 변환하고 각각의 쿼리로부터 모든 비 일어 문자를 제거한 후에 수신된 쿼리와 후보 세트 중에서 선택된 쿼리 간의 문자 편집 거리를 계산하는 단계를 포함한다. 또 다른 실시예에 따르면, 스코어를 계산하는 단계는 하나 이상의 쿼리 로그에서 후보 세트 중에서 선택된 쿼리가 수신된 쿼리를 뒤따르는 빈도수와 하나 이상의 쿼리 로그 내의 수신 된 쿼리의 빈도수의 비율을 계산하는 단계를 포함한다.
방법은 분배를 위해 후보 세트의 쿼리들 중 하나 이상을 선택하는 단계를 더 포함한다. 본 발명의 일 실시예에 따르면, 분배를 위해 후보 세트로부터 선택되는 하나 이상의 쿼리는 소정의 임계치를 초과하는 스코어를 갖는 쿼리들을 포함한다. 분배를 위해 선택된 하나 이상의 쿼리는 분배될 수 있다. 본 발명의 일 실시예에 따르면, 분배를 위해 선택된 쿼리들은 하나 이상의 웹 페이지에 삽입된다.
본 발명은 또한, 소정의 쿼리와 관련된 하나 이상의 쿼리를 식별하기 위한 시스템에 관한 것이다. 본 발명의 시스템은 다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템에 따라 기입된 쿼리를 수신하는 검색 엔진을 포함한다. 본 발명의 일 실시예에 따르면, 검색 엔진은 하나 이상의 일어 기입 시스템에 따라 기입된 쿼리를 수신한다. 검색 엔진은 또한, 다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템에 따라 기입된 하나 이상의 쿼리의 후보 세트를 식별한다. 본 발명의 일 실시예에 따르면, 검색 엔진은 하나 이상의 쿼리 로그 내에 지시되는 바와 같은 수신된 쿼리와 관련된 하나 이상의 쿼리를 포함하는 후보 세트를 식별한다.
변환 컴포넌트가 수신된 쿼리 및 후보 세트 내의 하나 이상의 쿼리를 하나 이상의 기입 포맷으로 변환한다. 본 발명의 일 실시예에 따르면, 변환 컴포넌트는 쿼리를 하나 이상의 기입 시스템에 따르는 하나 이상의 기입 포맷으로 변환한다.
유사성 컴포넌트가 후보 세트 내의 하나 이상의 쿼리의 수신된 쿼리에 대한 유사성을 나타내는 후보 세트 내의 하나 이상의 쿼리의 스코어를 계산한다. 유사 성 컴포넌트는 후보 세트 중에서 선택된 쿼리의 수신된 쿼리에 대한 의미상의 유사성을 나타내는 스코어를 계산한다. 본 발명의 일 실시예에 따르면, 유사성 컴포넌트는 수신된 쿼리와 후보 세트 중에서 선택된 쿼리 간의 문자 편집 거리를 계산한다. 본 발명의 다른 실시예에 따르면, 유사성 컴포넌트는 1과, 수신된 쿼리 및 후보 세트 중에서 선택된 쿼리 내의 고유 공백 분리 공통 발생 단어들의 수와 양 쿼리 내의 고유 공백 분리 단어들의 총 수 간의 비율 사이의 차를 계산한다. 본 발명의 또 다른 실시예에 따르면, 유사성 컴포넌트는 숫자가 수신된 쿼리에 고유한지 또는 후보 세트 중에서 선택된 쿼리에 고유한지를 식별한다.
또 다른 실시예에 따르면, 유사성 컴포넌트는 1과, 수신된 쿼리 및 후보 세트 중에서 선택된 쿼리 내의 공통 발생 일어 한자들의 수와 양 쿼리 내의 고유 일어 한자들의 총 수 간의 비율 사이의 차를 계산한다. 본 발명의 또 다른 실시예에 따르면, 유사성 컴포넌트는 수신된 쿼리 및 후보 세트 중에서 선택된 쿼리가 공통으로 갖는 문자들의 수를 계산한다. 본 발명의 또 다른 실시예에 따르면, 유사성 컴포넌트는 수신된 쿼리 또는 후보 세트 중에서 선택된 쿼리가 소정의 기입 시스템의 하나 이상의 문자를 포함하는지를 식별한다. 또 다른 실시예에 따르면, 유사성 컴포넌트는 하나 이상의 쿼리 로그에서 후보 세트로부터 선택된 쿼리가 수신된 쿼리를 뒤따르는 빈도수와 쿼리 로그 내의 수신된 쿼리의 빈도수 간의 비율을 계산한다.
본 발명은, 제한적이 아니라 예시적이며, 동일 참조들이 동일하거나 대응하 는 부분들을 참조하도록 의도되는 첨부 도면들에 도시된다.
도 1은 본 발명의 일 실시예에 따라, 다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템의 조합에 따라 기입된 하나 이상의 관련 쿼리를 식별하기 위한 시스템을 나타내는 블록도이다.
도 2는 본 발명의 일 실시예에 따라, 다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템의 조합에 따라 기입된 하나 이상의 관련 쿼리를 선택하기 위한 방법의 일 실시예를 나타내는 흐름도이다.
도 3은 본 발명의 일 실시예에 따라, 다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템에 따라 기입된 2개의 쿼리 간의 문자 편집 거리를 계산하기 위한 방법의 일 실시예를 나타내는 흐름도이다.
도 4는 본 발명의 일 실시예에 따라, 다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템에 따라 기입된 2개의 쿼리 간의 문자 편집 거리를 계산하기 위한 방법의 다른 실시예를 나타내는 흐름도이다.
도 5는 본 발명의 일 실시예에 따라, 다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템에 따라 기입된 2개의 쿼리 간의 단어 편집 거리를 계산하기 위한 방법의 일 실시예를 나타내는 흐름도이다.
도 6은 본 발명의 일 실시예에 따라, 다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템에 따라 기입된 2개의 쿼리에 나타내는 숫자들의 차이를 식별하기 위한 방법의 일 실시예를 나타내는 흐름도이다.
도 7은 본 발명의 일 실시예에 따라, 기입 시스템들 중 하나만의 문자들을 고려하여 다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템에 따라 기입된 2개의 쿼리 간의 문자 편집 거리를 계산하는 방법의 일 실시예를 나타내는 흐름도이다.
도 8은 본 발명의 일 실시예에 따라, 다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템에 따라 기입된 2개의 쿼리의 프리픽스들에서 중복되는 문자들의 수를 식별하기 위한 방법의 일 실시예를 나타내는 흐름도이다.
도 9는 본 발명의 일 실시예에 따라, 다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템에 따라 기입된 2개의 쿼리가 비 로마 문자를 갖는지를 식별하기 위한 방법의 일 실시예를 나타내는 흐름도이다.
도 10은 본 발명의 일 실시예에 따라, 다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템에 따라 기입된 2개의 쿼리 간의 문자 편집 거리를 양 쿼리가 소정의 기입 시스템으로 변환된 후에 계산하기 위한 방법의 일 실시예를 나타내는 흐름도이다.
도 11은 본 발명의 일 실시예에 따라, 다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템에 따라 기입된 2개의 쿼리의 쿼리 및 문구 대체 확률을 계산하기 위한 방법의 일 실시예를 나타내는 흐름도이다.
아래의 설명에서는, 그의 일부를 구성하고, 본 발명이 실시될 수 있는 구체적인 실시예들을 예시적으로 도시하는 첨부 도면들이 참조된다. 다른 실시예들이 이용될 수 있으며, 본 발명의 범위를 벗어나지 않고 구조 변경들이 이루어질 수 있음을 이해해야 한다.
도 1은 다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템에 따라 기입된 소정의 쿼리와 관련된 하나 이상의 쿼리를 식별하기 위한 시스템의 일 실시예를 나타내는 블록도이다. 도 1의 실시예에 따르면, 클라이언트 장치들(124a, 124b, 124c)은 인터넷과 같이 하나 이상의 근거리 및/또는 원거리 네트워크에 대한 접속을 포함할 수 있는 네트워크(122)에 통신 결합된다. 본 발명의 일 실시예에 따르면, 클라이언트 장치(124a, 124b, 124c)는 프로세서, 임시 및 영구 저장 장치, 입출력 서브시스템 및 범용 개인용 컴퓨터를 구성하는 컴포넌트들 간의 통신 경로를 제공하기 위한 버스를 포함하는 범용 개인용 컴퓨터이다. 예를 들어, 512 MB의 RAM, 40 GB의 하드 드라이브 저장 공간 및 네트워크에 대한 이더넷 인터페이스를 구비한 3.5 GHz 펜티엄 4 개인용 컴퓨터이다. 핸드헬드 장치, 셋톱 단말기, 이동 핸드셋, PDA 등을 포함하지만 이에 한정되지 않는 다른 클라이언트 장치들도 본 발명의 범위 내에 있는 것으로 간주된다.
네트워크(122)에 통신 결합된 클라이언트 장치들(124a, 124b, 124c)의 사용자들은 하나 이상의 용어를 포함하는 검색 쿼리들을 검색 제공자(100)에게 제출할 수 있다. 사용자에 의해 네트워크(122)를 통해 검색 제공자(100)에게 제출되는 검색 쿼리는 다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템에 따라 기입된 하나 이상의 문자, 용어 또는 문구를 포함할 수 있다. 예를 들어, 클라이언트 장치들(124a, 124b, 124c)의 사용자들은 일어 한자, 일어 가따까나 문자 및 JASCII 문자를 포함하는 쿼리들을 형성할 수 있다. 마찬가지로, 클라이언트 장치들(124a, 124b, 124c)의 사용자들은 일어 로마 문자, 일어 히라가나 문자 및 숫자를 포함하는 쿼리들을 형성할 수 있다. 예를 들어, 사용자는 일어 가따까나, 히라가나, 한자 및 ASCII 기입 시스템들의 조합에 따라 기입된 다음과 같은 쿼리, 즉
Figure 112008067752919-pct00001
를 제출할 수 있다.
다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템에 따라 기입된 문자 및 용어를 포함할 수 있는, 클라이언트 장치들(124a, 124b, 124c)의 사용자들에 의해 제출되는 하나 이상의 검색 쿼리들은 관련 쿼리들의 후보 세트를 식별하기 위해 검색 제공자(100)의 검색 엔진(107)에 의해 사용될 수 있다. 관련 쿼리들의 후보 세트를 구성하는 하나 이상의 쿼리는 소정의 쿼리와 관련될 수 있는 하나 이상의 쿼리를 유지하는 하나 이상의 로컬 또는 원격 데이터 스토어(102, 108) 각각 내에 유지될 수 있다. 본 발명의 일 실시예에 따르면, 데이터 스토어(102, 108)는 하나 이상의 쿼리 또는 용어와 관련된 쿼리들의 세트를 식별하는 엔트리들을 갖는 인덱스들을 유지한다. 데이터 스토어(102, 108)에 유지되는 인덱스들에는 관련된 쿼리들 또는 용어들을 나타내는 인간의 편집 정보가 첨부될 수 있다. 예를 들어, 데이터 스토어(102, 108) 내의 인덱스 엔트리는 일어 가따까나, 히라가나, 한자 및 ASCII 기입 시스템들에 따라 기입된 쿼리
Figure 112008067752919-pct00002
, 및 하나 이상의 일어 기입 시스템에 따라 기입된 하나 이상의 관련 쿼리 또는 용어를 포함할 수 있다.
데이터 스토어들(102, 108)은 데이터베이스, CD-ROM, 테이프, 디지털 저장 라이브러리 등과 같이 하나 이상의 쿼리 세트의 검색 및 저장을 제공할 수 있는 데이터베이스들 또는 임의의 다른 타입의 저장 구조들로서 구현될 수 있다. 데이터 스토어들(102, 108)에 유지되는 쿼리들은 다수의 기입 시스템을 가진 소정 언어의 하나 이상의 기입 시스템에 따라 기입된 쿼리들을 포함할 수 있다. 예를 들어, 데이터 스토어들(102, 108)에 유지되는 쿼리들은 일어 한자, 히라가나, 가따까나, JASCII 및 로마자 기입 시스템들에 따라 기입된 쿼리들을 포함할 수 있다.
본 발명의 다른 실시예에 따르면, 검색 엔진(107)에 의해 식별되는 관련 쿼리들의 후보 세트는 하나 이상의 쿼리 로그에서 통계적으로 중요하게 공통 발생하는 쿼리들의 하나 이상의 순차 쌍을 포함한다. 검색 엔진(107)은 쿼리 로그들을 이용하여, 클라이언트 장치들(124a, 124b, 124c)로부터 수신된 쿼리와 관련된 하나 이상의 쿼리를 포함하는 후보 세트를 식별할 수 있다. 다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템에 따라 기입될 수 있는, 사용자들에 의해 검색 제공자(100)에게 제출되는 복수의 쿼리는 쿼리 로그 컴포넌트(106) 내에 유지될 수 있다. 쿼리 로그 컴포넌트(106)는 하나 이상의 기입 시스템에 따라 기입된 하나 이상의 쿼리의 저장을 제공할 수 있는 데이터베이스 또는 유사한 저장 구조로서 구현될 수 있다.
쿼리 로그 컴포넌트(106)는 쿼리들이 검색 제공자(100)에게 제출되는 빈도를 식별하는 정보를 유지할 수 있다. 마찬가지로, 쿼리 로그 컴포넌트(106)는 소정의 쿼리가 관련 쿼리를 뒤따르는 빈도를 식별하는 정보를 유지할 수 있다. 예를 들어, 소정의 세션 동안, 검색을 행하는 사용자는 다수의 기입 시스템을 가진 언어, 예를 들어 일어의 하나 이상의 기입 시스템에 따라 기입된 용어 "지적 재산"을 포함하는 쿼리를 제출할 수 있다. 동일 세션 동안, 사용자는 하나 이상의 일어 기입 시스템에 따라 기입된 용어 "변리사"를 포함하는 쿼리를 제출할 수 있다. 쿼리 로그 컴포넌트(106)는 소정의 사용자 세션 동안 쿼리 "변리사"가 쿼리 "지적 재산"을 뒤따르는 빈도를 식별하는 정보를 유지할 수 있다.
검색 엔진(107)은 쿼리 로그 컴포넌트(106)에 의해 유지되는 쿼리 로그들을 이용하여, 소정의 클라이언트(124a, 124b, 124c)로부터 수신되는 쿼리와 통계적으로 중요하게 관련된 하나 이상의 쿼리를 포함하는 후보 세트를 식별할 수 있다. 쿼리 로그 컴포넌트(106)에 유지되는 쿼리 로그들에 의해 지시되는 바와 같은 소정의 쿼리와 관련된 것으로 식별되는 하나 이상의 쿼리는 관련 쿼리들의 후보 세트를 보충하거나 생성하는 데 사용될 수 있다. 관련 쿼리들의 후보 세트는 일어와 같이 다수의 기입 시스템을 가진 소정 언어의 하나 이상의 기입 시스템에 따라 기입되는 쿼리들을 포함할 수 있다. 쿼리 로그들을 이용하여 소정 쿼리와 관련된 하나 이상의 쿼리를 식별하기 위한 예시적인 방법들은 그 명세서 전체가 여기에 참고로 반영되어 있는 "SYSTEM AND METHOD FOR DETERMINING ALTERNATE SEARCH QUERIES"라는 제목의 미국 특허 출원 번호 11/200,851 및 "MODULAR OPTIMIZED DYNAMIC SETS"라는 제목의 미국 가출원 번호 60/736,133에 기술되어 있다.
유사성 컴포넌트(104)는 검색 엔진(107)에 의해 식별된 후보 세트를 이용하여, 관련 쿼리들의 후보 세트 내의 하나 이상의 쿼리에 대한 유사성 스코어를 계산한다. 유사성 컴포넌트(104)는 관련 쿼리들의 후보 세트로부터 소정 쿼리 Q'를 선택하고, 소정의 클라이언트 장치들(124a, 124b, 124c)로부터 수신된 소정의 쿼리 Q에 대한 Q'의 의미상의 유사성의 강도를 나타내는 Q'에 대한 유사성 스코어를 계산한다. 유사성 컴포넌트(104)는 여기에 설명되는 방법들에 따라 검색 엔진(107)에 의해 식별되는 관련 쿼리들의 후보 세트 내의 하나 이상의 쿼리 각각에 대한 유사성 스코어를 계산한다.
유사성 컴포넌트(104)는 변환 컴포넌트(110)를 이용하여, 검색 엔진(107)에 의해 식별되는 관련 쿼리들의 후보 세트 내의 각각의 쿼리 Q'에 대한 유사성 스코어를 계산할 수 있다. 본 발명의 일 실시예에 따르면, 변환 컴포넌트(110)는 소정의 쿼리를 하나 이상의 기입 포맷으로 변환한다. 변환 컴포넌트(110)에 의해 생성되는 소정 쿼리 Q'의 하나 이상의 기입 포맷은 유사성 스코어의 계산을 돕기 위해 유사성 컴포넌트(104)로 전달될 수 있다. 예를 들어, 유사성 컴포넌트(104)는 사용자로부터 수신되는 소정의 쿼리 Q, 및 관련 쿼리들의 후보 세트로부터 선택되는 관련 쿼리 Q'에 관한 다양한 비교를 수행하여 정확한 유사성 스코어를 계산할 수 있다. 그러나, 전술한 바와 같이, 관련 쿼리들의 후보 세트 내의 하나 이상의 쿼리는 다수의 기입 시스템을 가진 소정 언어의 하나 이상의 기입 시스템에 따라 기입될 수 있다. 마찬가지로, 소정의 클라이언트 장치(124a, 124b, 124c)로부터 수신되는 쿼리는 다수의 기입 시스템을 가진 소정 언어의 하나 이상의 시스템에 따라 기입될 수 있다. 유사성 컴포넌트(104)에 의해 수행되는 하나 이상의 비교는 사용자로부터 수신된 쿼리 Q, 및 관련 쿼리들의 후보 세트로부터 선택된 소정 쿼리 Q'가 특정 기입 시스템에 따라 표현될 것을 요구할 수 있다. 예를 들어, 유사성 컴포넌트(104)는 소정의 쿼리 Q 및 관련 쿼리 Q'의 하나 이상의 JASCII 문자가 두 쿼리를 비교하기 위해 ASCII 문자로 변환될 것을 요구할 수 있다.
상이한 기입 시스템에 따라 기입될 수 있는 쿼리 Q와 쿼리 Q'를 비교하기 위하여, 유사성 컴포넌트(104)는 소정의 쿼리를 변환 컴포넌트(110)로 전달할 수 있다. 본 발명의 일 실시예에 따르면, 변환 컴포넌트(110)는 소정의 쿼리와 연관된 언어 및 기입 시스템을 식별하고 쿼리를 하나 이상의 대체 기입 포맷으로 변환한다. 검색 엔진(107)에 의해 식별되는 후보 세트는 일어 한자, 가나, JASCII 및 로마자 기입 시스템들과 같은 다수의 기입 시스템을 가진 소정 언어의 다양한 기입 시스템에 따라 기입된 쿼리들을 포함할 수 있다. 변환 컴포넌트(110)는 쿼리를 하나 이상의 일어 기입 시스템에 따라 기입된 것으로 식별하고 쿼리를 하나 이상의 대체 기입 시스템으로 변환한다. 예를 들어, 변환 컴포넌트(110)는 쿼리를 일어 가따까나 기입 시스템에 따라 기입된 것으로 식별하고 쿼리를 일어 로마자 기입 시스템에 따라 변환한다. 마찬가지로, 변환 컴포넌트(110)는 쿼리를 하나 이상의 JASCII 문자를 포함하는 것으로 식별하고, 하나 이상의 JASCII 문자를 ASCII 문자로 변환하여 유사성 컴포넌트(104)에 의한 유사성 스코어의 계산을 돕는다.
본 발명의 일 실시예에 따르면, 관련 쿼리들의 후보 세트 내의 하나 이상의 쿼리에 대해 유사성 컴포넌트(104)에 의해 계산되는 유사성 스코어는 분배를 위해 후보 세트로부터 하나 이상의 쿼리를 선택하기 위해 분배 컴포넌트(116)에 의해 사용된다. 유사성 스코어에 기초하는 쿼리들의 선택은 소정의 쿼리 Q에 대해 의미상 가장 유사한 쿼리들의 선택을 가능하게 한다. 예를 들어, 분배 컴포넌트(116)는 관련 쿼리들의 후보 세트로부터 소정 임계치를 초과하는 유사성 스코어를 갖는 하나 이상의 쿼리를 선택할 수 있다. 마찬가지로, 분배 컴포넌트는 후보 세트로부터 최대 유사성 스코어를 갖는 N개의 쿼리를 선택할 수 있다. 이 분야의 전문가들은 유사성 스코어를 이용하여 후보 세트로부터 하나 이상의 쿼리를 선택하는 다른 기술들을 인식하고 있다.
분배 컴포넌트(116)는 후보 세트로부터 선택된 하나 이상의 쿼리를 분배할 수 있다. 본 발명의 일 실시예에 따르면, 분배 컴포넌트(116)는 후보 세트로부터 선택된 쿼리들을 네트워크(122)를 통해 사용자에게 "제안된 대체 쿼리들" 또는 "의미상 유사한 쿼리들"로서 표시한다. 대안으로 또는 위와 함께, 분배 컴포넌트(116)는 선택된 하나 이상의 쿼리를 검색 엔진(107)으로 전달하며, 검색 엔진은 네트워크(122)에 통신 결합된 클라이언트 장치(124a, 124b, 124c)의 소정 사용자가 볼 수 있는 검색 결과 웹 페이지 내에 선택된 쿼리들을 삽입할 수 있다.
후보 세트 내의 하나 이상의 쿼리에 대해 유사성 컴포넌트(104)에 의해 계산된 유사성 스코어는 또한, 소정의 요청에 응답한 분배를 위해 광고를 포함하는 하나 이상의 콘텐츠 항목을 선택하는 데 사용될 수 있다. 본 발명의 일 실시예에 따르면, 광고들은 전술한 데이터 스토어들(102, 108)에 또는 하나 이상의 상이한 데이터 스토어(도시되지 않음)에 유지될 수 있다. 하나 이상의 로컬(102), 원격(108) 또는 상이한 데이터 스토어는 하나 이상의 광고 및 광고에 대응하는 용어들에 대한 관련 입찰을 유지한다. 예를 들어, 소정의 광고주는 노트북 컴퓨터에 대한 소정 광고를 표시하기를 원할 수 있다. 따라서, 광고주는 "노트북 컴퓨터"라는 용어에 입찰하고, 용어 "노트북 컴퓨터"를 포함하는 쿼리에 응답하여 표시되는 광고를 식별할 수 있다. 검색 제공자(100)가 쿼리를 수신할 때, 검색 엔진(107)은 로컬 및 원격 데이터 스토어들(102, 108) 또는 하나 이상의 상이한 데이터 스토어를 검색하여, 하나 이상의 광고주가 수신된 쿼리를 포함하는 하나 이상의 용어에 대한 입찰을 제공하였는지를 판정할 수 있다. 쿼리를 포함하는 용어들에 대한 하나 이상의 입찰이 식별되는 경우, 하나 이상의 용어에 대한 입찰들과 연관된 광고들이 분배 컴포넌트(116)를 이용하여 사용자의 클라이언트 장치(124a, 124b, 124c) 상에서 사용자에게 검색, 표시될 수 있다. 사용자가 표시된 소정의 광고를 선택하는 경우, 선택된 광고와 연관된 광고주는 광고주의 입찰가에 따르는 금액을 청구받을 수 있다.
그러나, 광고주는 다수의 기입 시스템을 가진 언어의 단일 기입 시스템만에 따라 기입되는 용어들에 입찰하는 것을 선택할 수 있다. 예를 들어, 광고주는 일어 히라가나 기입 시스템에만 따라 기입되는 용어들에 입찰하는 것을 선택할 수 있다. 그러나, 전술한 바와 같이, 클라이언트 장치들(124a, 124b, 124c)의 사용자들에 의해 제출되는 하나 이상의 검색 쿼리는 하나 이상의 기입 시스템에 따라 기입되는 용어들 또는 문구들을 포함할 수 있다. 따라서, 검색 엔진(107)은 소정의 임계치를 초과하는 유사성 스코어들을 갖는 쿼리들을 이용하여, 소정의 쿼리에 응답하여 검색되는 광고들의 범위를 확장할 수 있다. 본 발명의 일 실시예에 따르면, 검색 엔진(107)은 소정의 임계치를 초과하는 유사성 스코어들을 가진 하나 이상의 쿼리를 구성하는 용어들에 응답하여 하나 이상의 광고를 식별한다. 소정의 임계치를 초과하는 유사성 스코어들을 가진 쿼리들을 구성하는 용어들에 대한 응답으로서 식별되는 하나 이상의 광고는 하나 이상의 클라이언트 장치(124a, 124b, 124c)에 대한 분배를 위해 선택될 수 있다.
예를 들어, 클라이언트 장치(124a, 124b, 124c)의 사용자는 일어 한자 및 로마자 기입 시스템들 양자에 따라 기입된 일어 용어들을 포함하는 검색 쿼리 Q를 형성할 수 있다. 사용자는 쿼리를 네트워크(122)를 통해 검색 제공자(100)에게 제출할 수 있다. 검색 엔진(107)은 어떠한 광고주도 사용자에 의해 사용된 한자 및 로마자 용어들에 대한 입찰을 제공하지 않은 것으로 결정할 수 있다. 대안으로 또는 위와 함께, 검색 엔진(107)은 사용자에 의해 사용된 한자 및 로마자 용어들과 연관된 입찰들에 대응하는 광고들의 표시가 수익이 있더라도 거의 없을 것으로 결정할 수 있다. 그러나, 검색 엔진(107)은 소정의 임계치를 초과하는 유사성 스코어들을 갖는 후보 세트로부터 선택된 하나 이상의 쿼리를 구성하는 용어들을 이용하여, 관련 입찰들을 갖는 하나 이상의 용어를 식별할 수 있다. 마찬가지로, 검색 엔진(107)은 소정의 임계치를 초과하는 유사성 스코어들을 갖는 후보 세트로부터 선택된 하나 이상의 쿼리를 구성하는 용어들을 이용하여, 소정 임계치를 초과하는 입찰들을 갖는 하나 이상의 용어를 식별할 수 있다. 이후, 검색 엔진(107)은 관련 입찰들을 갖는 하나 이상의 용어, 또는 소정의 임계치를 초과하는 관련 입찰들을 갖는 하나 이상의 용어를 이용하여, 사용자에 의해 형성된 검색 쿼리 Q에 응답하는 하나 이상의 광고를 선택할 수 있다.
다른 예에 따르면, 소정 임계치를 초과하는 유사성 스코어를 갖는 후보 세트로부터 선택된 소정 쿼리 Q'가 히라가나 용어들을 포함하는 반면, 사용자에 의해 형성된 전술한 쿼리 Q가 한자 및 로마자 용어들을 포함하는 것으로 가정한다. 검색 엔진은 쿼리 Q'를 구성하는 하나 이상의 히라가나 용어를 이용하여, 하나 이상의 광고주가 쿼리 Q'를 구성하는 히라가나 용어들에 입찰하였는지를 결정할 수 있다. 마찬가지로, 검색 엔진은 하나 이상의 광고주가 소정 임계치를 초과하는 쿼리 Q'를 구성하는 하나 이상의 히라가나 용어에 입찰을 제공하였는지를 결정할 수 있다. 검색 엔진(107)은 쿼리 Q'를 구성하는 용어들에 대한 관련 입찰들을 갖는 하나 이상의 광고를 검색하고, 하나 이상의 광고를 분배 컴포넌트에 전달할 수 있다. 본 발명의 일 실시예에 따르면, 검색 엔진(107)은 쿼리 Q'를 구성하는 하나 이상의 용어에 대한 최대 관련 입찰을 갖는 하나 이상의 광고를 검색한다. 이후, 분배 컴포넌트(116)는 하나 이상의 광고를 쿼리 Q를 제출한 사용자에게 분배할 수 있다.
위의 실시예는 쿼리들의 수신 및 처리를 설명하고 있지만, 도 1에 도시된 검색 제공자(100) 시스템은 쿼리들의 수신 및 그들에 대한 유사성 스코어들의 계산으로 한정되지 않으며, 하나 이상의 텍스트 스트링을 구성하는 하나 이상의 용어에 대한 유사성 스코어를 계산하는 데에도 사용될 수 있다. 클라이언트 장치들(124a, 124b, 124c)의 사용자들은 다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템에 따라 기입된 구, 문장, 단락 및 문서를 포함하지만 이에 한정되지 않는, 하나 이상의 용어를 포함하는 하나 이상의 텍스트 스트링을 검색 제공자(100)에게 전달할 수 있다. 따라서, 검색 제공자(100)는 이러한 하나 이상의 텍스트 스트링의 로그를 하나 이상의 로그 파일에 기록한다. 검색 제공자(100)는 그의 로그 파일들로부터 하나 이상의 항목을 포함하는 후보 세트를 식별하는데, 여기서 소정 항목은 클라이언트 장치(124a, 124b, 124c)의 소정 사용자에 의해 전달된 하나 이상의 용어와 관련된 하나 이상의 용어 세트를 포함한다. 예를 들어, 후보 세트 내의 소정 항목은 구 또는 문장을 포함할 수 있다. 마찬가지로, 후보 세트 내의 소정 항목은 단락 또는 전체 문서를 포함할 수 있다. 검색 제공자는 클라이언트 장치(124a, 124b, 124c)로부터 수신된 하나 이상의 용어에 대한 한 항목의 의미상의 유사성의 강도를 나타내는 후보 세트 내의 하나 이상의 항목에 대한 유사성 스코어를 계산할 수 있다.
도 2는 소정의 쿼리 Q와 의미상 관련된 후보 세트로부터 하나 이상의 쿼리 Q'를 선택하기 위한 방법의 일 실시예를 나타내는데, 여기서 쿼리 Q 및 Q'는 다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템에 따라 기입된다. 도 2에 도시된 바와 같이, 단계 205에서 소정의 사용자로부터 검색 쿼리가 수신된다. 쿼리는 인터넷과 같은 네트워크에 통신 결합된 클라이언트 장치로부터 수신될 수 있으며, 다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템의 조합들에 따라 기입된 하나 이상의 용어 또는 구를 포함할 수 있다. 예를 들어, 사용자로부터 수신된 쿼리는 한자, 가따까나 및 히라가나 기입 시스템들에 따라 기입된 일어 용어들을 포함할 수 있다.
단계 210에서, 사용자에 의해 형성된 소정 쿼리 Q와 관련된 쿼리들을 포함하는 후보 세트가 식별된다. 후보 세트는 사용자의 쿼리와 연관된 언어의 하나 이상의 기입 시스템에 따라 기입된 쿼리들을 포함할 수 있다. 예를 들어, 소정 쿼리 Q는 쿼리
Figure 112008067752919-pct00003
과 같이 일어 가따까나 기입 시스템에 따라 기입된 용어들을 포함할 수 있다. 따라서, 관련 쿼리들의 후보 세트는 하나 이상의 일어 기입 시스템의 하나 이상의 조합에 따라 기입된 하나 이상의 쿼리를 포함할 수 있다. 예를 들어, 전술한 가따까나 쿼리
Figure 112008067752919-pct00004
과 관련된 쿼리들의 후보 세트는 로마자 쿼리 rakuten, 한자 쿼리
Figure 112008067752919-pct00005
, 히라가나 쿼리
Figure 112008067752919-pct00006
등을 포함할 수 있다.
소정 쿼리 Q와 관련된 쿼리들의 후보 세트는 하나 이상의 쿼리 로그를 이용하여 생성될 수 있다. 본 발명의 일 실시예에 따르면, 쿼리 로그들은 소정의 쿼리 세션 동안 사용자에 의해 형성된 하나 이상의 쿼리를 식별할 수 있다. 예를 들어, 소정의 쿼리 세션 동안, 사용자는 일어 히라가나 및 한자 기입 시스템들에 따라 기입된 용어들을 포함하는 쿼리를 형성할 수 있다. 동일 쿼리 세션 동안, 사용자는 또한, 일어 가따까나 및 로마자 기입 시스템들에 따라 기입된 용어들을 포함하는 쿼리를 형성할 수 있다. 2개의 쿼리가 통계적으로 중요하게 하나 이상의 쿼리 로그에서 공통 발생하는지를 결정하기 위해 분석이 수행될 수 있다. 본 발명의 일 실시예에 따르면, 통계적 중요도 임계값은 하나 이상의 쿼리 로그에 의해 지시되는 바와 같은 소정 쿼리 Q와 가장 많이 관련된 하나 이상의 쿼리를 선택하는 데 사용될 수 있다.
후보 세트는 통계적으로 중요하게 소정 쿼리와 관련된 바와 같은 식별된 하나 이상의 쿼리를 이용하여, 또는 하나 이상의 쿼리 로그에 의해 지시되는 바와 같은 소정의 임계치를 초과하는 통계적 중요도를 이용하여 생성될 수 있다. 관련 쿼리들의 후보 세트를 구성하는 하나 이상의 쿼리는 그 전체가 참고로 반영된 전술한 출원들에서 설명되는 쿼리 로그들을 이용하여 통계적으로 중요하게 관련된 쿼리들을 결정하는 방법에 따라 선택될 수 있다.
단계 215에서, 관련 쿼리들의 후보 세트로부터 소정 쿼리 Q'가 선택된다. 도 2에 도시된 실시예에 따르면, 단계 220에서, 선택된 쿼리 Q'에 대한 유사성 스코어가 계산된다. 소정 쿼리 Q'에 대해 계산된 유사성 스코어는 다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템에 따라 기입된 소정 쿼리 Q의 의미에 대한 쿼리 Q'의 의미의 유사성의 강도를 나타내는 수치 값을 제공한다. 테이블 A는 소정 쿼리 Q'에 대한 유사성 스코어를 계산하는 데 사용될 수 있는 방정식의 일 실시예를 나타낸다.
테이블 A에 제공된 방정식은 한자, 가나, JASCII, 가따까나, 로마자 및 히라가나를 포함하지만 이에 한정되지 않는 하나 이상의 일어 기입 시스템에 따라 기입될 수 있는 소정 쿼리 Q에 대한 소정 쿼리 Q'의 의미상의 유사성의 강도를 나타내는 스코어를 계산하는 데 사용될 수 있다. 이 분야의 전문가는 테이블 A에 표시된 방정식이 다수의 기입 시스템을 가진 다른 언어들에 대한 유사성 스코어의 계산을 제공하도록 수정될 수 있다는 것을 인식한다.
테이블 A
Figure 112008067752919-pct00007
테이블 A에 제공된 방정식에 따르면, Q는 하나 이상의 일어 기입 시스템에 따라 기입된 소정의 쿼리를 나타낸다. Q'는 쿼리 Q와 관련된 쿼리들의 후보 세트로부터 선택된 쿼리를 나타낸다. levr은 모든 일어 문자를 로마 문자로 변환한 후에 Q와 Q' 간의 문자 편집 거리를 계산하기 위한 함수이다. levrs는 모든 일어 문자를 로마 문자로 변환하고 공백들을 제거한 후에 Q와 Q' 간의 문자 편집 거리를 계산하기 위한 함수이다. wordr는 모든 일어 문자를 로마 문자로 변환한 후에 Q와 Q' 사이의 단어 편집 거리이다. digit는 Q가 Q'에 나타나지 않는 임의의 숫자를 포함하는지 그리고 그 반대도 그러한지를 식별하기 위한 함수이다. kanjid는 Q 또는 Q'가 한자를 포함하는지를 결정하고, 그러한 경우에 Q와 Q' 사이의 한자 불일치를 식별하기 위한 함수이다. opr은 각각의 쿼리 내의 모든 일어 문자가 로마 문자로 변환된 후에 Q와 Q'가 각각의 쿼리의 가장 좌측의 문자에서 시작하여 첫 번째 문자 불일치까지 계속하여 공통으로 갖는 문자들의 수를 계산하기 위한 함수이다. levk는 모든 한자가 가나 문자로 변환되고 모든 비 일어 문자가 제거된 후에 Q와 Q' 사이의 문자 편집 거리를 계산하기 위한 함수이다. p12min은 사용자 쿼리 세션들의 로그에서 쿼리 Q에 이어지는 쿼리 Q'의 쿼리 대체 확률을 계산하기 위한 함수이다. 테이블 A에 표시된 유사성 스코어 함수에 의해 사용되는 함수들의 실시예들은 도 3 내지 도 11에 표시된다.
단계 225에서, 후보 세트 내의 하나 이상의 쿼리에 대해 유사성 스코어가 계산되었는지를 결정하기 위한 검사가 수행된다. 후보 세트 내의 하나 이상의 쿼리가 관련 유사성 스코어를 갖지 않는 경우, 단계 215에서 후보 세트로부터 추가 쿼리 Q'가 선택된다. 대안으로, 후보 세트 내의 하나 이상의 쿼리에 대해 유사성 스코어가 계산된 경우, 단계 230에서 후보 세트로부터 소정 쿼리 Q'가 선택된다. 단계 235에서, 후보 세트로부터 선택된 쿼리 Q'와 연관된 유사성 스코어가 소정의 유사성 스코어 임계치를 초과하는지를 결정하기 위한 검사가 수행된다. 본 발명의 일 실시예에 따르면, 유사성 스코어 임계치는 소정 쿼리 Q'와 연관된 유사성 스코어와의 비교를 수행하는 데 사용될 수 있는 수치 값을 포함한다. 유사성 스코어는 쿼리 Q에 대한 소정 쿼리 Q'의 의미상의 유사성의 강도를 나타내므로, 유사성 스코어 임계치의 사용은 쿼리 Q에 대해 의미상 가장 유사한 후보 세트로부터의 하나 이상의 쿼리의 선택을 돕는다.
소정의 쿼리 Q'와 연관된 유사성 스코어가 유사성 스코어 임계치를 초과하는 경우, 단계 245에서 쿼리 Q'가 분배 세트에 추가된다. 본 발명의 일 실시예에 따르면, 분배 세트는 유사성 스코어 임계치를 초과하는 유사성 스코어를 갖는 후보 세트로부터 선택된 하나 이상의 쿼리를 포함한다. 소정의 쿼리 Q'와 연관된 유사성 스코어가 유사성 스코어 임계치를 초과하지 않는 경우, 단계 240에서 쿼리 Q'가 분배 세트에 추가되지 않는다.
단계 250에서, 분석을 필요로 하는 후보 세트 내의 추가 쿼리들이 존재하는지를 결정하기 위한 검사가 수행된다. 후보 세트 내에 하나 이상의 쿼리가 분석을 필요로 하는 경우, 단계 230에서 후보 세트로부터 추가 쿼리 Q'가 선택된다. 대안으로, 후보 세트 내의 모든 쿼리가 분석되었고, 분배 세트가 유사성 스코어 임계치를 초과하는 하나 이상의 쿼리로 채워진 후, 단계 255에서 분배 세트 내의 하나 이상의 쿼리가 분배된다.
유사성 스코어 임계치를 초과하는 쿼리들의 분배 세트 내의 하나 이상의 쿼리는 쿼리 Q를 제출한 사용자에게 전달될 수 있다. 본 발명의 일 실시예에 따르면, 분배 세트 내의 하나 이상의 쿼리는 결과 웹 페이지에서 사용자에게 표시된다. 예를 들어, 사용자는 쿼리 Q에 응답하는 콘텐츠 항목들에 대한 링크들은 물론, 쿼리 Q에 대해 의미상 가장 유사한 분배 세트를 구성하는 하나 이상의 쿼리 Q'와 같은 결과들을 포함하는 웹 페이지를 제공받을 수 있다. 소정의 사용자에게 전달되는 분배 세트 내의 하나 이상의 쿼리는 쿼리 Q에 대한 소정의 쿼리 Q'의 의미상의 유사성의 상대적 강도를 사용자에게 나타내는 유사성 스코어에 따르는 순위화된 리스트에 표시될 수 있다.
도 3 내지 11은 쿼리들의 후보 세트로부터 선택된 소정의 쿼리 Q'에 대한 유사성 스코어를 계산하는 데 사용될 수 있는 테이블 A에 제공된 함수들의 실시예들을 나타낸다. 전술한 바와 같이, 테이블 A에 표시되고 도 3 내지 11에서 더 설명되는 복수의 함수는 하나 이상의 일어 기입 시스템에 따라 기입된 쿼리 Q에 대한 소정 쿼리 Q'의 의미 유사성의 강도를 나타내는 유사성 스코어를 계산하는 데 사용될 수 있다. 그러나, 이 분야의 전문가들은 도 3 내지 11에 설명되는 함수들의 실시예들이 예시적일 뿐, 일어 및 그 기입 시스템으로 한정되는 것을 의도하지 않으며, 다수의 기입 시스템을 갖는 다른 언어들에 대한 유사성 스코어의 계산을 제공하도록 수정될 수 있다는 것을 인식한다. 또한, 이 분야의 전문가들은 도 3 내지 11에 설명되는 함수들이 소정 쿼리와 관련된 하나 이상의 쿼리를 포함하는 후보 세트에 대한 유사성 스코어를 계산하는 것으로 한정되지 않으며, 복수의 기술에 따라 선택된 하나 이상의 쿼리를 포함하는 쿼리들의 후보 세트에 대한 유사성 스코어를 계산하는 데 사용될 수 있다는 것을 인식한다. 또한, 이 분야의 전문가들은 도 3 내지 11에 설명되는 함수들이 하나 이상의 쿼리를 포함하는 후보 세트에 대한 유사성 스코어를 계산하는 것으로 한정되지 않으며, 구, 문장, 단락 및 문서를 포함하지만 이에 한정되지 않는 하나 이상의 용어 세트에 대한 유사성 스코어를 계산하도록 수정될 수 있다는 것을 인식한다.
도 3은 하나 이상의 일어 기입 시스템에 따라 기입된 소정 쿼리 Q와 쿼리들의 후보 세트 중에서 선택된 쿼리 Q' 간의 문자 편집 거리를 계산하기 위한 방법의 일 실시예를 나타낸다. 도 3에 제공되는 방법은 테이블 A에 설명된 유사성 스코어 함수에 의해 사용되는 levk 함수의 일 실시예를 나타낸다.
단계 305에서, 한자, 가따까나, 히라가나 등과 같은 하나 이상의 일어 기입 시스템에 따라 기입될 수 있는 쿼리 Q를 구성하는 하나 이상의 문자가 로마 문자로 변환된다. 단계 310에서, 하나 이상의 쿼리를 포함하는 후보 세트로부터 소정의 쿼리 Q'가 선택된다. 후보 세트로부터 선택된 쿼리 Q'는 쿼리 Q와 연관된 언어의 하나 이상의 기입 시스템에 따라 기입될 수 있다. 예를 들어, Q'는 쿼리 Q와 동일한 기입 시스템 또는 일어 로마자 기입 시스템, 일어 가나 기입 시스템 등과 같은 하나 이상의 대체 일어 기입 시스템에 따라 기입될 수 있다. 단계 315에서, Q'를 구성하는 문자들이 로마 문자 형태인지를 결정하기 위한 검사가 수행된다. 쿼리 Q'가 로마 문자 형태가 아닌 경우, 단계 320에서 Q'를 구성하는 하나 이상의 문자가 로마 문자로 변환된다. Q'를 구성하는 하나 이상의 용어가 이미 로마 문자 형태인 경우, 또는 Q' 내의 모든 문자가 로마 문자 형태로 변환된 후, 단계 325에서 쿼리 Q와 쿼리 Q' 사이의 문자 편집 거리를 식별하기 위한 계산이 수행된다. 문자 편집 거리 값은 Q'에 대한 유사성 스코어를 계산하기 위해 테이블 A에 설명된 유사성 스코어 함수에 제공될 수 있다.
도 4는 하나 이상의 일어 기입 시스템에 따라 기입된 소정 쿼리 Q와 쿼리들의 후보 세트로부터 선택된 쿼리 Q' 사이의 문자 편집 거리를 계산하기 위한 방법의 일 실시예를 나타낸다. 도 4에 도시된 실시예는 테이블 A에 설명된 유사성 스코어 함수에 의해 사용되는 levrs 함수의 일 실시예를 제공한다.
도 4에 도시된 실시예에 따르면, 한자, 가따까나 또는 히라가나와 같은 하나 이상의 일어 기입 시스템에 따라 기입된 쿼리 Q는 단계 405에서 로마 문자 형태로 변환된다. 이어서, 단계 408에서 로마 문자 형태의 쿼리 Q에 나타나는 모든 공백 문자가 제거된다. 예를 들어, 소정의 쿼리 Q가 한자 용어들
Figure 112008067752919-pct00008
을 포함할 수 있다. 쿼리 Q는 로마 문자 형태로 변환된 후, 용어들 "densha otoko"를 포함할 수 있으며, 쿼리 Q는 공백들의 제거 후에 문자들 "denshaotoko"를 포함할 수 있다.
단계 410에서, 하나 이상의 쿼리를 포함하는 후보 세트로부터 소정 쿼리 Q'가 선택된다. 단계 415에서, Q'가 로마 문자 형태인지를 결정하기 위한 검사가 수행된다. 쿼리 Q'가 로마 문자 형태가 아닌 경우, 단계 420에서 쿼리 Q'를 구성하는 하나 이상의 문자가 로마 문자로 변환된다. 쿼리 Q'를 구성하는 문자들이 이미 로마 문자 형태인 경우, 또는 쿼리 Q'를 구성하는 문자들이 로마 문자 형태로 변환된 후, 단계 425에서 쿼리 Q' 내의 모든 공백이 제거된다. 이어서 단계 430에서, 로마 문자 형태의 쿼리 Q와 Q' 사이의 문자 편집 거리가 계산된다. 계산된 쿼리 Q와 Q' 간의 문자 편집 거리는 Q'에 대한 유사성 스코어를 계산하기 위해 테이블 A에 설명된 유사성 스코어 함수에 의해 사용될 수 있다.
도 5는 테이블 A에 설명된 wordr 함수의 일 실시예를 나타낸다. 도 5에 도시된 wordr 함수의 실시예는 하나 이상의 일어 기입 시스템에 따라 기입된 소정 쿼리 Q와 쿼리들의 후보 세트로부터 선택된 쿼리 Q' 사이의 단어 편집 거리의 계산을 제공한다. 본 발명의 일 실시예에 따르면, 소정 쿼리 Q와 쿼리 Q' 간의 단어 편집 거리는 값 1과, Q 및 Q' 내의 고유 공백 분리 공통 발생 단어들의 수와 Q 및 Q' 양자 내의 고유 공백 분리 단어들의 총 수 간의 비율 사이의 차이다.
단계 505에서, 하나 이상의 일어 기입 시스템에 따라 기입된 소정 쿼리 Q를 구성하는 문자들이 로마 문자 형태로 변환된다. 이어서, 단계 506에서 쿼리들의 후보 세트로부터 소정 쿼리 Q'가 선택된다. 단계 508에서, 쿼리 Q'가 로마 문자 형태인지를 결정하기 위한 검사가 수행된다. 쿼리 Q'가 로마 문자 형태가 아닌 경우, 단계 510에서 쿼리 Q'를 구성하는 문자들이 로마 문자로 변환된다. 쿼리 Q'를 구성하는 문자들이 이미 로마 문자 형태인 경우, 또는 Q'를 구성하는 문자들이 로마 문자 형태로 변환된 후, 단계 515에서 Q 및 Q' 내의 고유 공백 분리 공통 발생 단어들의 수가 식별된다. 단계 520에서, Q 및 Q' 내의 고유 공백 분리 공통 발생 단어들의 수와 Q 및 Q' 양자 내의 고유 공백 분리 단어들의 총 수의 비율이 계산된다. 본 발명의 일 실시예에 따르면, 고유 공백 분리 공통 발생 단어들의 수는 소정 쿼리 Q 및 쿼리 Q' 양자에 나타나는 고유 단어들의 수를 포함한다. 또한, Q 및 Q' 양자 내의 고유 공백 분리 단어들의 총 수는 소정 쿼리 Q 및 쿼리 Q' 내의 고유 공백 분리 단어들의 합을 포함한다.
단계 525에서 값 1과 계산된 비율 간의 차가 계산되고, 단계 530에서 'wordr' 레지스터에 할당된다. 본 발명의 일 실시예에 따르면, 'wordr' 레지스터는 소정의 수치 값을 저장하기 위한 메모리 장치를 포함한다. 'wordr' 레지스터에 할당된 값은 쿼리 Q'에 대한 유사성 스코어를 계산하기 위해 테이블 A에 설명된 유사성 스코어 함수에 의해 사용될 수 있다.
예를 들어, 로마 문자 형태의 소정 쿼리 Q는 용어들 "kuruma kemuri"를 포함할 수 있다. 마찬가지로, 로마 문자 형태의 소정 쿼리 Q'는 용어들 "sora kemuri"를 포함할 수 있다. Q 및 Q' 내의 고유 공백 분리 공통 발생 단어들의 수는 하나, 즉 단어 "kemuri"이며, Q 및 Q' 양자 내의 고유 공백 분리 단어들의 총 수는 셋, 즉 단어들 "kuruma", "sora" 및 "kemuri"이다. 따라서, Q 및 Q' 내의 고유 공백 분리 공통 발생 단어들의 수와 Q 및 Q' 양자 내의 고유 공백 분리 단어들의 총 수 간의 비율은 1/3이다. 또한, 1과 계산된 비율 간의 차는 2/3이다. 값 2/3은 "wordr" 레지스터에 할당되어, 쿼리 Q'에 대한 유사성 스코어를 계산하기 위해 테이블 A에 설명된 유사성 스코어 함수에 의해 사용될 수 있다.
도 6은 숫자가 쿼리들의 후보 세트로부터 선택된 쿼리 Q'에 비해, 하나 이상의 일어 기입 시스템에 따라 기입된 소정 쿼리 Q에 대해 고유한지를 결정하는 방법의 일 실시예를 나타낸다. 도 6에 제공되는 실시예는 테이블 A에 설명된 유사성 스코어 함수에 의해 사용되는 digit 함수의 일 실시예를 제공한다.
단계 605에서, 하나 이상의 기입 시스템에 따라 기입된 쿼리들을 포함하는 후보 세트로부터 소정 쿼리 Q'가 선택된다. 소정 쿼리 Q 내의 숫자가 쿼리 Q' 내에 나타나지 않는지를 결정하기 위한 검사가 수행된다. 예를 들어, 소정의 쿼리 Q는 일어 한자 숫자들
Figure 112008067752919-pct00009
(아라비아 숫자 "68"로 표현되는 값에 대응함)을 포함할 수 있고, 소정 쿼리 Q'는 일어 한자 숫자들
Figure 112008067752919-pct00010
(아라비아 숫자 "98"로 표현되는 값에 대응함)을 포함할 수 있다. 따라서, 단계 610에서 수행된 검사는 일어 한자 숫자
Figure 112008067752919-pct00011
이 쿼리 Q'에 나타나지 않으므로, 이는 쿼리 Q에 고유한 것으로 결정할 것이다. 마찬가지로, 소정 쿼리 Q는 일어 한자 문자들 및 아라비아 숫자들
Figure 112008067752919-pct00012
를 포함할 수 있고, 소정 쿼리 Q'는 일어 한자 문자들 및 아라비아 숫자들
Figure 112008067752919-pct00013
를 포함할 수 있다. 단계 610에서 수행된 검사는 아라비아 숫자 5가 쿼리 Q'에 나타나지 않으므로 이는 쿼리 Q에 고유한 것으로 결정할 것이다.
숫자가 쿼리 Q에는 나타나지만 쿼리 Q'에는 나타나지 않는 것으로 식별되는 경우, 단계 620에서 'digit' 레지스터는 쿼리 Q가 쿼리 Q'에 없는 숫자를 포함함을 지시하는 값 1로 설정된다. 본 발명의 일 실시예에 따르면, 'digit' 레지스터는 소정의 수치 값을 저장하기 위한 메모리 장치를 포함한다.
대안으로, Q'가 쿼리 Q에 나타나는 하나 이상의 숫자 각각을 포함하는 경우, 단계 615에서 쿼리 Q' 내의 숫자가 쿼리 Q에 나타나지 않는지를 결정하기 위한 추가 검사가 수행된다. 쿼리 Q'가 쿼리 Q에 나타나지 않는 숫자를 포함하는 경우, 전술한 'digit' 레지스터는 단계 620에서 쿼리 Q'가 Q'에 고유한 숫자를 포함함을 지시하는 값 1로 설정된다. 대안으로, 쿼리 Q가 Q' 내의 하나 이상의 숫자 각각을 포함하는 경우, 'digit' 레지스터는 단계 625에서 쿼리 Q' 내의 하나 이상의 숫자가 쿼리 Q에 나타나고 그 반대도 마찬가지임을 지시하는 0으로 설정된다. 'digit' 레지스터에 할당된 값, 0 또는 1은 쿼리 Q'에 대한 유사성 스코어를 계산하기 위해 테이블 A에 설명된 유사성 스코어 함수에 의해 사용될 수 있다.
도 7은 테이블 A에 설명된 유사성 스코어 함수에 의해 사용되는 kanjid 함수의 일 실시예를 나타낸다. 단계 705에서, 하나 이상의 일어 기입 시스템에 따라 기입될 수 있는 소정 쿼리 Q가 수신된다. 단계 710에서, 쿼리 Q가 하나 이상의 일어 한자를 포함하는지를 결정하기 위한 검사가 수행된다. 쿼리 Q가 어떠한 한자도 포함하지 않는 경우, 단계 708에서 'kanjid' 레지스터가 0으로 설정되는데, 'kanjid' 레지스터는 소정 수치 값을 저장하기 위한 메모리 장치를 포함할 수 있다. 대안으로, 쿼리 Q가 하나 이상의 한자를 포함하는 경우, 단계 715에서 쿼리들의 후보 세트로부터 쿼리 Q'가 선택된다.
단계 720에서, 후보 세트로부터 선택된 쿼리 Q'가 하나 이상의 한자를 포함하는지를 결정하기 위한 검사가 수행된다. 쿼리 Q'가 어떠한 한자도 포함하지 않는 경우, 단계 708에서 전술한 'kanjid' 레지스터가 0으로 설정된다. 이와 달리, Q'가 하나 이상의 한자를 포함하는 경우, 단계 722에서 Q 및 Q' 내의 하나 이상의 비 한자 문자가 제거된다. 이어서 단계 725에서, 쿼리 Q 및 쿼리 Q' 내에서 공통 발생하는 고유 한자의 수가 식별된다. 예를 들어, 비 한자 문자들을 제거한 후에 쿼리 Q가 한자들
Figure 112008067752919-pct00014
을 포함하는 경우, 그리고 비 한자 문자들을 제거한 후에 쿼리 Q'가 한자들
Figure 112008067752919-pct00015
을 포함하는 경우, Q 및 Q' 내의 고유 공통 발생 한자들의 수는 2개, 즉
Figure 112008067752919-pct00016
이다.
이어서 단계 727에서, Q 및 Q' 양자 내의 고유 한자들의 총 수가 식별된다. 예를 들어, 한자들
Figure 112008067752919-pct00017
을 포함하는 Q 및 한자들 을 포함하는 Q' 양자 내의 고유 한자들의 총 수는 6개, 즉 쿼리 Q로부터의 고유 한자
Figure 112008067752919-pct00019
및 쿼리 Q'로부터의 고유 한자
Figure 112008067752919-pct00020
이다. 단계 730에서, 공통 발생 한자들의 수와 고유 한자들의 총 수 간의 비율이 계산된다. 단계 735에서, 'kanjid' 레지스터가 1과 계산된 비율 간의 차이 값으로 설정된다. 'kanjid' 레지스터 값은 Q'에 대한 유사성 스코어를 계산하기 위해 테이블 A에 설명된 유사성 스코어 함수에 의해 사용될 수 있다.
도 8은 각각의 쿼리의 가장 좌측의 문자들의 비교로부터 시작하여 첫 번째 문자 불일치까지 계속되는, 하나 이상의 일어 기입 시스템에 따라 기입된 소정의 쿼리 Q 및 쿼리들의 후보 세트로부터 선택된 쿼리 Q'의 프리픽스들에서 중복되는 문자들의 수를 식별하기 위한 방법의 일 실시예를 나타낸다. 도 8에 제공되는 방법은 테이블 A에 설명된 유사성 스코어 함수에 의해 사용되는 opr 함수의 일 실시예를 나타낸다.
단계 805에서 하나 이상의 일어 기입 시스템에 따라 기입된 소정 쿼리 Q가 로마 문자 형태로 변환된다. 단계 810에서 쿼리들의 후보 세트로부터 쿼리 Q'가 선택된다. 단계 815에서 쿼리 Q'를 구성하는 하나 이상의 문자가 로마 문자 형태인지를 결정하기 위한 검사가 수행된다. 쿼리 Q'를 구성하는 하나 이상의 문자가 로마 문자 형태가 아닌 경우, 단계 820에서 문자들이 로마 문자 형태로 변환된다. Q'를 구성하는 문자들이 이미 로마 문자 형태인 경우, 또는 Q'를 구성하는 하나 이상의 문자가 로마 문자 형태로 변환된 후, 단계 825에서 쿼리 Q 및 쿼리 Q'의 첫 번째 로마 문자들이 선택된다.
단계 835에서 쿼리 Q로부터 선택된 첫 번째 문자와 쿼리 Q'로부터 선택된 첫 번째 문자가 일치하는지를 결정하기 위한 검사가 수행된다. Q 및 Q'로부터 선택된 첫 번째 문자들이 일치하지 않는 경우, 단계 830에서 처리가 종료된다. 대안으로, 선택된 문자들이 일치하는 경우, 단계 850에서 문자 일치 카운트 레지스터가 증분되는데, 이는 쿼리 Q 및 쿼리 Q'에 대한 문자 일치가 식별되었음을 지시한다. 본 발명의 일 실시예에 따르면, 문자 일치 카운트 레지스터는 값 0으로 초기화되며, 쿼리 Q 및 쿼리 Q'로부터의 문자들이 일치하는 것으로 식별될 때 증분된다.
단계 840에서 Q 및 Q'로부터 다음 문자들이 선택되고, 단계 835에서 다음 문자들이 일치하는지를 결정하기 위한 검사가 수행된다. Q 및 Q'로부터 선택된 문자들이 일치하지 않는 경우, 문자 일치 카운트 레지스터는 증분되지 않고, 단계 830에서 처리가 종료된다. 단계 830에서 처리가 종료될 때, 문자 일치 카운트 레지스터의 값은 Q 및 Q'에서 일치하는 문자들의 수를 나타낼 것이다. 문자 일치 카운트 레지스터의 값은 쿼리 Q'에 대한 유사성 스코어를 계산하기 위해 테이블 A에 설명된 유사성 스코어 함수에 의해 사용된다.
도 9는 하나 이상의 일어 기입 시스템에 따라 기입된 소정 쿼리 Q 또는 쿼리들의 후보 세트로부터 선택된 쿼리 Q'가 비 로마 문자들을 포함하는지를 식별하기 위한 방법의 일 실시예를 나타낸다. 도 9에 제공되는 실시예는 테이블 A에 설명된 유사성 스코어 함수에 의해 사용되는 japanese 함수를 나타낸다.
단계 905에서 하나 이상의 일어 기입 시스템에 따라 기입된 소정 쿼리 Q가 수신된다. 단계 910에서 쿼리 Q가 하나 이상의 비 로마 문자를 포함하는지를 결정하기 위한 검사가 수행된다. 쿼리 Q가 하나 이상의 비 로마 문자를 포함하는 경우, 단계 908에서 'japanese' 레지스터가 값 1로 설정된다. 본 발명의 일 실시예에 따르면, 'japanese' 레지스터는 소정의 수치 값을 저장하기 위한 메모리 장치를 포함한다.
쿼리 Q가 하나 이상의 비 로마 문자를 포함하지 않는 경우, 단계 915에서 하나 이상의 쿼리를 포함하는 후보 세트로부터 쿼리 Q'가 선택된다. 단계 920에서 쿼리 Q'가 하나 이상의 비 로마 문자를 포함하는지를 결정하기 위한 검사가 수행된다. 쿼리 Q'가 하나 이상의 비 로마 문자를 포함하는 경우, 단계 908에서 'japanese' 레지스터가 값 1로 설정된다. 대안으로, 쿼리 Q'가 비 로마 문자들만을 포함하는 경우, 단계 922에서 'japanese' 레지스터가 값 0으로 설정되고, 이어서 단계 925에서 처리가 종료된다. 'japanese' 레지스터에 유지된 값은 쿼리 Q'에 대한 유사성 스코어를 계산하기 위해 테이블 A에 설명된 유사성 스코어 함수에 의해 사용될 수 있다.
도 10은 각각의 쿼리로부터 모든 한자 및 비 일어 문자들이 제거된 후에 소정 쿼리 Q와 쿼리 Q' 사이의 문자 편집 거리를 결정하기 위한 방법의 일 실시예를 나타낸다. 도 10에 제공된 방법은 테이블 A에 설명된 유사성 스코어 함수에 의해 사용되는 levk 함수의 일 실시예를 나타낸다.
도 10에 도시된 바와 같이, 단계 1005에서 쿼리들의 후보 세트로부터 소정 쿼리 Q'가 선택된다. 단계 1010에서 쿼리 Q' 또는 하나 이상의 일어 기입 시스템에 따라 기입된 소정 쿼리 Q가 하나 이상의 한자를 포함하는지를 결정하기 위한 검사가 수행된다. 쿼리 Q 또는 쿼리 Q'가 하나 이상의 한자를 포함하는 경우, 단계 1015에서 각각의 쿼리 내의 한자들이 가나 문자로 변환된다. 예를 들어, 쿼리 Q는
Figure 112008067752919-pct00021
과 같이 한자 및 아라비아 숫자 양자를 포함할 수 있다. 한자를 가나 문자로 변환한 후, 쿼리 Q는 문자들
Figure 112008067752919-pct00022
을 포함할 수 있다.
쿼리 Q 또는 쿼리 Q'가 한자를 포함하지 않는 경우, 또는 각각의 쿼리 내의 모든 한자가 가나 문자로 변환된 후, 단계 1020에서 어느 하나의 쿼리가 비 일어 문자를 포함하는지를 결정하기 위한 추가 검사가 수행된다. 본 발명의 일 실시예에 따르면, 비 일어 문자는 하나 이상의 일어 기입 시스템에 따라 기입되지 않은 문자를 포함한다. 예를 들어, 쿼리 Q가
Figure 112008067752919-pct00023
와 같이 가나 문자 및 아라비아 숫자를 포함하는 경우, 아라비아 숫자 "200"은 비 일어 문자를 포함할 수 있다.
쿼리 Q 또는 쿼리 Q'가 비 일어 문자를 포함하는 경우, 단계 1025에서 비 일어 문자가 제거된다. 전술한 예와 관련하여, 쿼리 Q로부터 비 일어 문자들, 즉 아라비아 숫자 "200"을 제거한 후, 쿼리 Q는 가나 문자들
Figure 112008067752919-pct00024
를 포함할 수 있다. 쿼리 Q도 쿼리 Q'도 비 일어 문자를 포함하지 않는 경우, 또는 모든 비 일어 문자가 제거된 후, 단계 1030에서 Q와 Q' 간의 문자 편집 거리가 계산된다. 쿼리 Q와 쿼리 Q' 간의 문자 편집 거리는 Q'에 대한 유사성 스코어를 계산하기 위해 테이블 A에 설명된 유사성 스코어 함수에 의해 사용될 수 있다.
도 11은 테이블 A에 설명된 유사성 스코어 함수에 의해 사용되는 p12min 함수의 일 실시예를 나타낸다. 본 발명의 일 실시예에 따르면, p12min 함수는 소정 쿼리 Q'가 소정 쿼리 Q를 뒤따르는 쿼리 대체 확률을 계산하며, 또한 구 P'가 소정의 구 P를 뒤따르는 구 대체 확률을 계산하는 데 사용될 수 있다. 예를 들어, 쿼리 세션 동안 소정 사용자에 의해 제출된 하나 이상의 쿼리 및 구를 식별하는 하나 이상의 쿼리 로그가 유지될 수 있다. 쿼리 로그들은 예를 들어 사용자가 어떻게 쿼리 Q를 정교화하였는지, 사용자가 어떻게 쿼리 Q를 정정하였는지, 사용자가 쿼리 Q를 표현하기 위해 다수의 기입 시스템을 가진 언어의 하나 이상의 대체 기입 시스템을 어떻게 이용하였는지 등에 대한 지시를 제공하기 위해, 사용자에 의해 제출된 하나 이상의 쿼리 및 구의 순서를 식별할 수 있다. 쿼리 로그들은 하나 이상의 사용자가 하나 이상의 쿼리 또는 구를 제출한 빈도를 더 지시할 수 있다.
단계 1105에서 소정의 쿼리 Q가 하나 이상의 쿼리 로그에 나타나는 빈도가 식별된다. 단계 1110에서 쿼리들의 후보 세트로부터 소정 쿼리 Q'가 선택된다. 단계 1115에서, 하나 이상의 쿼리 로그 중 임의 쿼리 로그에서 쿼리 Q'가 쿼리 Q를 뒤따르는지를 결정하기 위한 검사가 수행된다. 본 발명의 일 실시예에 따르면, 소정 사용자의 쿼리 세션 동안 쿼리 로그들에서 쿼리 Q'가 쿼리 Q를 뒤따르는지를 결정하기 위한 검사가 수행되는데, 쿼리 세션은 소정 기간 동안 사용자에 의해 제출된 하나 이상의 쿼리를 포함할 수 있다.
하나 이상의 쿼리 로그 중 임의의 쿼리 로그에서 쿼리 Q'가 쿼리 Q를 뒤따르지 않는 경우, 단계 1125에서 'p12min' 레지스터가 0으로 설정되는데, 'p12min' 레지스터는 소정 수치 값을 저장하기 위한 메모리 장치를 포함할 수 있다. 대안으로, 하나 이상의 쿼리 로그에서 쿼리 Q'가 쿼리 Q를 뒤따르는 것으로 식별된 경우, 단계 1120에서 쿼리 로그들에서 쿼리 Q'가 쿼리 Q를 뒤따르는 빈도가 식별된다. 단계 1140에서, 'p12min' 레지스터는 쿼리 로그들에서 쿼리 Q'가 쿼리 Q를 뒤따르는 빈도와 쿼리 로그들 내의 쿼리 Q의 빈도의 비율의 값으로 설정된다. 예를 들어, 쿼리 Q가 쿼리 로그들 내에 12 번 나타나고, 쿼리 로그들에서 Q'가 쿼리 Q를 7 번 뒤따르는 경우, 'p12min' 레지스터는 값 "7/12"로 설정될 수 있다.
이 분야의 전문가들은, 도 3 내지 11에 도시되고 테이블 A에 설명된 유사성 스코어 함수에 의해 사용되는 함수들이 일어로 한정되지 않으며, 다수의 기입 시스템을 가진 하나 이상의 언어용으로 수정될 수 있음을 인식한다. 이 분야의 전문가들은 테이블 A에 설명된 유사성 스코어 함수가 다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템에 따라 기입된 소정 쿼리에 대한 유사성 스코어를 계산하기 위해 도 3 내지 11에 도시된 함수들의 하나 이상의 조합을 사용할 수 있음도 인식한다.
본 발명은 바람직한 실시예들과 관련하여 설명되고 도시되었지만, 본 발명의 사상 및 범위를 벗어나지 않고, 이 분야의 전문가들에게 자명할 것인 많은 변형 및 수정이 이루어질 수 있으며, 따라서 본 발명은 그러한 변형들 및 수정들이 본 발명의 범위 내에 포함되는 것으로 의도되므로 전술한 방법 또는 구성의 정확한 상세들로 한정되지 않는다.

Claims (38)

  1. 주어진 쿼리(query)와 관련된 하나 이상의 쿼리를 식별하는 방법으로서,
    다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템에 따라 기입된 쿼리를 수신하는 단계;
    상기 다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템에 따라 기입된 쿼리들의 후보 세트를 식별하는 단계;
    주어진 후보 쿼리에서 상기 수신된 쿼리와 불일치되기 전까지 공통인 문자들의 수를 계산하는 단계;
    상기 주어진 후보 쿼리와 상기 수신된 쿼리 사이의 총 공통 문자들의 수를 계산하는 단계;
    하나 이상의 쿼리 로그에서 상기 후보 세트 중에서 선택된 쿼리가 상기 수신된 쿼리를 뒤따르는 빈도수와 상기 하나 이상의 쿼리 로그 내의 상기 수신된 쿼리의 빈도수의 비율을 계산하는 단계; 및
    상기 불일치되기 전까지 공통인 문자들의 수, 상기 총 공통 문자들의 수, 및 상기 하나 이상의 쿼리 로그에서 상기 후보 세트 중에서 선택된 쿼리가 상기 수신된 쿼리를 뒤따르는 빈도수와 상기 하나 이상의 쿼리 로그 내의 상기 수신된 쿼리의 빈도수의 비율에 기초하여 유사성 스코어를 계산하는 단계 - 상기 유사성 스코어는 상기 수신된 쿼리에 대한 상기 하나 이상의 쿼리의 유사성을 나타냄 -
    를 포함하는 쿼리 식별 방법.
  2. 제1항에 있어서, 상기 쿼리를 수신하는 단계는 하나 이상의 일어 기입 시스템의 조합에 따라 기입된 쿼리를 수신하는 단계를 포함하는 쿼리 식별 방법.
  3. 제1항에 있어서, 상기 쿼리들의 후보 세트를 식별하는 단계는 상기 수신된 쿼리와 관련된 하나 이상의 쿼리의 세트를 식별하는 단계를 포함하는 쿼리 식별 방법.
  4. 제3항에 있어서, 상기 수신된 쿼리와 관련된 쿼리들의 후보 세트를 식별하는 단계는 하나 이상의 쿼리 로그 내에 지시되는 바와 같은 상기 수신된 쿼리와 관련 된 하나 이상의 쿼리를 식별하는 단계를 포함하는 쿼리 식별 방법.
  5. 제1항에 있어서, 상기 쿼리를 수신하는 단계는 일어 히라가나 기입 시스템에 따라 기입된 쿼리를 수신하는 단계를 포함하는 쿼리 식별 방법.
  6. 제1항에 있어서, 상기 쿼리를 수신하는 단계는 일어 가따까나 기입 시스템에 따라 기입된 쿼리를 수신하는 단계를 포함하는 쿼리 식별 방법.
  7. 제1항에 있어서, 상기 쿼리를 수신하는 단계는 일어 가나 기입 시스템에 따라 기입된 쿼리를 수신하는 단계를 포함하는 쿼리 식별 방법.
  8. 제1항에 있어서, 상기 쿼리를 수신하는 단계는 일어 로마자 기입 시스템에 따라 기입된 쿼리를 수신하는 단계를 포함하는 쿼리 식별 방법.
  9. 제1항에 있어서, 상기 쿼리를 수신하는 단계는 일어 JASCII 기입 시스템에 따라 기입된 쿼리를 수신하는 단계를 포함하는 쿼리 식별 방법.
  10. 제1항에 있어서, 상기 쿼리를 수신하는 단계는 일어 한자 기입 시스템에 따라 기입된 쿼리를 수신하는 단계를 포함하는 쿼리 식별 방법.
  11. 제1항에 있어서, 상기 쿼리를 수신하는 단계는 구(phrase)를 포함하는 용어들의 세트를 수신하는 단계를 포함하는 쿼리 식별 방법.
  12. 삭제
  13. 제1항에 있어서,
    상기 유사성 스코어를 계산하는 단계는
    상기 수신된 쿼리의 하나 이상의 문자를 로마 문자로 변환하는 단계;
    상기 후보 세트 중에서 선택된 쿼리의 하나 이상의 문자를 로마 문자로 변환하는 단계; 및
    상기 수신된 쿼리와 상기 후보 세트 중에서 선택된 쿼리 간의 문자 편집 거리를 계산하는 단계
    를 포함하는 쿼리 식별 방법.
  14. 제1항에 있어서,
    상기 유사성 스코어를 계산하는 단계는
    상기 수신된 쿼리의 하나 이상의 문자를 로마 문자로 변환하는 단계;
    상기 후보 세트 중에서 선택된 쿼리의 하나 이상의 문자를 로마 문자로 변환하는 단계;
    상기 수신된 쿼리 및 상기 후보 세트 중에서 선택된 쿼리로부터 공백 문자들을 제거하는 단계; 및
    상기 수신된 쿼리와 상기 후보 세트 중에서 선택된 쿼리 간의 문자 편집 거리를 계산하는 단계
    를 포함하는 쿼리 식별 방법.
  15. 제1항에 있어서,
    상기 유사성 스코어를 계산하는 단계는
    상기 수신된 쿼리의 하나 이상의 문자를 로마 문자로 변환하는 단계;
    상기 후보 세트 중에서 선택된 쿼리의 하나 이상의 문자를 로마 문자로 변환하는 단계;
    상기 수신된 쿼리 및 상기 선택된 쿼리 내의 고유 공백 분리 공통 발생 단어들의 수를 식별하는 단계;
    상기 수신된 쿼리 및 상기 선택된 쿼리 양자 내의 고유 공백 분리 단어들의 총 수를 식별하는 단계;
    상기 고유 공백 분리 공통 발생 단어들의 수와 상기 양 쿼리 내의 고유 공백 분리 단어들의 총 수의 비율을 계산하는 단계; 및
    수치 값 1과 상기 계산된 비율 간의 차를 계산하는 단계
    를 포함하는 쿼리 식별 방법.
  16. 제1항에 있어서, 상기 유사성 스코어를 계산하는 단계는 숫자가 상기 수신된 쿼리에 고유한지 또는 상기 후보 세트 중에서 선택된 쿼리에 고유한지를 식별하는 단계를 포함하는 쿼리 식별 방법.
  17. 제1항에 있어서,
    상기 유사성 스코어를 계산하는 단계는
    상기 수신된 쿼리 및 상기 후보 세트 중에서 선택된 쿼리 내의 공통 발생 일어 한자의 수를 식별하는 단계;
    상기 수신된 쿼리 및 상기 후보 세트 중에서 선택된 쿼리 내의 고유 일어 한자의 총 수를 식별하는 단계;
    상기 공통 발생 일어 한자의 수와 상기 고유 일어 한자의 총 수의 비율을 계산하는 단계; 및
    수치 값 1과 상기 계산된 비율 간의 차를 계산하는 단계
    를 포함하는 쿼리 식별 방법.
  18. 제1항에 있어서,
    상기 유사성 스코어를 계산하는 단계는
    상기 수신된 쿼리의 하나 이상의 문자를 로마 문자로 변환하는 단계;
    상기 후보 세트 중에서 선택된 쿼리의 하나 이상의 문자를 로마 문자로 변환하는 단계; 및
    상기 수신된 쿼리 및 상기 선택된 쿼리가 공통으로 갖는 로마 문자의 수를 계산하는 단계
    를 포함하는 쿼리 식별 방법.
  19. 제1항에 있어서, 상기 유사성 스코어를 계산하는 단계는 상기 수신된 쿼리 또는 상기 후보 세트 중에서 선택된 쿼리가 비 로마 문자(non-Roman character)를 포함하는지를 식별하는 단계를 포함하는 쿼리 식별 방법.
  20. 제1항에 있어서,
    상기 유사성 스코어를 계산하는 단계는
    상기 수신된 쿼리의 하나 이상의 일어 한자를 일어 가나 문자로 변환하는 단계;
    상기 후보 세트 중에서 선택된 쿼리의 하나 이상의 일어 한자를 일어 가나 문자로 변환하는 단계;
    상기 수신된 쿼리 및 상기 후보 세트 중에서 선택된 쿼리로부터 모든 비 일어 문자를 제거하는 단계; 및
    상기 수신된 쿼리와 상기 후보 세트 중에서 선택된 쿼리 간의 문자 편집 거리를 계산하는 단계
    를 포함하는 쿼리 식별 방법.
  21. 삭제
  22. 제1항에 있어서, 분배를 위해 상기 후보 세트의 쿼리들 중 하나 이상을 선택하는 단계를 포함하는 쿼리 식별 방법.
  23. 제22항에 있어서, 상기 분배를 위해 상기 후보 세트의 쿼리들 중 하나 이상을 선택하는 단계는 주어진 임계치를 초과하는 스코어를 갖는 하나 이상의 쿼리를 선택하는 단계를 포함하는 쿼리 식별 방법.
  24. 제1항에 있어서, 주어진 임계치를 초과하는 스코어를 갖는 상기 후보 세트 중의 하나 이상의 쿼리를 분배하는 단계를 포함하는 쿼리 식별 방법.
  25. 제24항에 있어서, 상기 후보 세트 중의 하나 이상의 쿼리를 분배하는 단계는 상기 하나 이상의 쿼리를 웹 페이지에 삽입하는 단계를 포함하는 쿼리 식별 방법.
  26. 주어진 쿼리와 관련된 하나 이상의 쿼리를 식별하는 시스템으로서,
    검색 가능한 쿼리 세트를 저장하는 저장 매체를 포함하는 데이터 스토어;
    다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템에 따라 기입된 쿼리를 수신하고, 상기 다수의 기입 시스템을 가진 언어의 하나 이상의 기입 시스템에 따라 기입된 하나 이상의 쿼리들의 후보 세트를 상기 데이터 스토어에서 식별하는 하나 이상의 처리 구성 요소를 포함하는 검색 엔진;
    상기 수신된 쿼리 및 상기 후보 세트 내의 하나 이상의 쿼리를 하나 이상의 기입 포맷으로 변환하는 하나 이상의 처리 구성 요소를 포함하는 변환 컴포넌트;
    주어진 후보 쿼리에서 상기 수신된 쿼리와 불일치되기 전까지 공통인 문자들의 수를 계산하고, 상기 주어진 후보 쿼리와 상기 수신된 쿼리 사이의 총 공통 문자들의 수를 계산하고, 하나 이상의 쿼리 로그에서 상기 후보 세트 중에서 선택된 쿼리가 상기 수신된 쿼리를 뒤따르는 빈도수와 상기 하나 이상의 쿼리 로그 내의 상기 수신된 쿼리의 빈도수의 비율을 계산하는 하나 이상의 처리 구성 요소를 포함하는 유사성 컴포넌트;
    상기 불일치되기 전까지 공통인 문자들의 수, 상기 후보 세트 중의 상기 하나 이상의 쿼리에 대한 상기 총 공통 문자들의 수, 및 상기 하나 이상의 쿼리 로그에서 상기 후보 세트 중에서 선택된 쿼리가 상기 수신된 쿼리를 뒤따르는 빈도수와 상기 하나 이상의 쿼리 로그 내의 상기 수신된 쿼리의 빈도수의 비율에 기초하여 유사성 스코어를 계산하는 하나 이상의 처리 구성 요소를 포함하는 유사성 스코어 컴포넌트 - 상기 유사성 스코어는 상기 수신된 쿼리에 대한 상기 하나 이상의 쿼리의 유사성을 나타냄 -
    를 포함하는 쿼리 식별 시스템.
  27. 제26항에 있어서, 상기 검색 엔진은 하나 이상의 일어 기입 시스템에 따라 기입된 쿼리를 수신하는 쿼리 식별 시스템.
  28. 제26항에 있어서, 상기 검색 엔진은 상기 수신된 쿼리와 관련된 하나 이상의 쿼리를 포함하는 후보 세트를 식별하는 쿼리 식별 시스템.
  29. 제28항에 있어서, 상기 검색 엔진은 상기 수신된 쿼리와 관련된 하나 이상의 쿼리를 식별하기 위하여 하나 이상의 쿼리 로그를 검색하는 쿼리 식별 시스템.
  30. 제26항에 있어서, 상기 변환 컴포넌트는 쿼리를 하나 이상의 기입 시스템에 따르는 하나 이상의 기입 포맷으로 변환하는 쿼리 식별 시스템.
  31. 삭제
  32. 제26항에 있어서, 상기 유사성 컴포넌트는 상기 수신된 쿼리와 상기 후보 세트 중에서 선택된 쿼리 간의 문자 편집 거리를 계산하는 쿼리 식별 시스템.
  33. 제26항에 있어서,
    상기 유사성 컴포넌트는
    상기 수신된 쿼리 및 상기 선택된 쿼리 내의 고유 공백 분리 공통 발생 단어들의 수를 식별하고,
    상기 수신된 쿼리 및 상기 선택된 쿼리 양자 내의 고유 공백 분리 단어들의 총 수를 식별하고,
    상기 고유 공백 분리 공통 발생 단어들의 수와 상기 양 쿼리 내의 고유 공백 분리 단어들의 총 수의 비율을 계산하며,
    수치 값 1과 상기 계산된 비율 간의 차를 계산하는
    쿼리 식별 시스템.
  34. 제26항에 있어서, 상기 유사성 컴포넌트는 숫자가 상기 수신된 쿼리에 고유 한지 또는 상기 후보 세트 중에서 선택된 쿼리에 고유한지를 식별하는 쿼리 식별 시스템.
  35. 제26항에 있어서,
    상기 유사성 컴포넌트는
    상기 수신된 쿼리 및 상기 후보 세트 중에서 선택된 쿼리 내의 공통 발생 일어 한자들의 수를 식별하고,
    상기 수신된 쿼리 및 상기 후보 세트 중에서 선택된 쿼리 내의 고유 일어 한자들의 총 수를 식별하고,
    상기 공통 발생 일어 한자들의 수와 상기 고유 일어 한자들의 총 수의 비율을 계산하며,
    수치 값 1과 상기 계산된 비율 간의 차를 계산하는
    쿼리 식별 시스템.
  36. 삭제
  37. 제26항에 있어서, 상기 유사성 컴포넌트는 상기 수신된 쿼리 또는 상기 후보 세트 중에서 선택된 쿼리가 주어진 기입 시스템의 하나 이상의 문자를 포함하는지 를 식별하는 쿼리 식별 시스템.
  38. 삭제
KR1020087023584A 2006-02-28 2007-02-27 다수의 기입 시스템을 가진 언어들에 대한 관련 쿼리들을 식별하기 위한 시스템 및 방법 KR101098703B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/365,315 US7689554B2 (en) 2006-02-28 2006-02-28 System and method for identifying related queries for languages with multiple writing systems
US11/365,315 2006-02-28

Publications (2)

Publication Number Publication Date
KR20080114764A KR20080114764A (ko) 2008-12-31
KR101098703B1 true KR101098703B1 (ko) 2011-12-23

Family

ID=38445252

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087023584A KR101098703B1 (ko) 2006-02-28 2007-02-27 다수의 기입 시스템을 가진 언어들에 대한 관련 쿼리들을 식별하기 위한 시스템 및 방법

Country Status (7)

Country Link
US (2) US7689554B2 (ko)
EP (2) EP1929415A4 (ko)
JP (1) JP2009528636A (ko)
KR (1) KR101098703B1 (ko)
CN (2) CN101390097B (ko)
HK (2) HK1130912A1 (ko)
WO (1) WO2007101194A2 (ko)

Families Citing this family (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7286115B2 (en) 2000-05-26 2007-10-23 Tegic Communications, Inc. Directional input system with automatic correction
US7821503B2 (en) 2003-04-09 2010-10-26 Tegic Communications, Inc. Touch screen and graphical user interface
US7750891B2 (en) 2003-04-09 2010-07-06 Tegic Communications, Inc. Selective input system based on tracking of motion parameters of an input device
US7030863B2 (en) 2000-05-26 2006-04-18 America Online, Incorporated Virtual keyboard system with automatic correction
US7689554B2 (en) * 2006-02-28 2010-03-30 Yahoo! Inc. System and method for identifying related queries for languages with multiple writing systems
US8442965B2 (en) 2006-04-19 2013-05-14 Google Inc. Query language identification
US8762358B2 (en) * 2006-04-19 2014-06-24 Google Inc. Query language determination using query terms and interface language
US7689548B2 (en) * 2006-09-22 2010-03-30 Microsoft Corporation Recommending keywords based on bidding patterns
US7925498B1 (en) 2006-12-29 2011-04-12 Google Inc. Identifying a synonym with N-gram agreement for a query phrase
US8201087B2 (en) 2007-02-01 2012-06-12 Tegic Communications, Inc. Spell-check for a keyboard system with automatic correction
US8225203B2 (en) 2007-02-01 2012-07-17 Nuance Communications, Inc. Spell-check for a keyboard system with automatic correction
US20080250008A1 (en) * 2007-04-04 2008-10-09 Microsoft Corporation Query Specialization
WO2008151466A1 (en) * 2007-06-14 2008-12-18 Google Inc. Dictionary word and phrase determination
US8090709B2 (en) * 2007-06-28 2012-01-03 Microsoft Corporation Representing queries and determining similarity based on an ARIMA model
US8290921B2 (en) * 2007-06-28 2012-10-16 Microsoft Corporation Identification of similar queries based on overall and partial similarity of time series
US8132112B2 (en) * 2007-12-03 2012-03-06 Ebay Inc. Live search chat room
US7831588B2 (en) * 2008-02-05 2010-11-09 Yahoo! Inc. Context-sensitive query expansion
US8150838B2 (en) * 2008-03-31 2012-04-03 International Business Machines Corporation Method and system for a metadata driven query
JP5391583B2 (ja) * 2008-05-29 2014-01-15 富士通株式会社 検索装置、生成装置、プログラム、検索方法および生成方法
US8171021B2 (en) * 2008-06-23 2012-05-01 Google Inc. Query identification and association
US8745051B2 (en) * 2008-07-03 2014-06-03 Google Inc. Resource locator suggestions from input character sequence
US20100106704A1 (en) * 2008-10-29 2010-04-29 Yahoo! Inc. Cross-lingual query classification
US9053197B2 (en) * 2008-11-26 2015-06-09 Red Hat, Inc. Suggesting websites
FR2940693B1 (fr) * 2008-12-30 2016-12-02 Thales Sa Procede et systeme optimises de gestion des noms propres pour l'optimisation de la gestion et de l'interrogation des bases de donnees.
CN101464897A (zh) 2009-01-12 2009-06-24 阿里巴巴集团控股有限公司 一种词匹配及信息查询方法及装置
EP2328366A1 (en) * 2009-11-20 2011-06-01 Alcatel Lucent Method and system for conducting surveys
US20110153414A1 (en) * 2009-12-23 2011-06-23 Jon Elvekrog Method and system for dynamic advertising based on user actions
US20110153423A1 (en) * 2010-06-21 2011-06-23 Jon Elvekrog Method and system for creating user based summaries for content distribution
US8751305B2 (en) * 2010-05-24 2014-06-10 140 Proof, Inc. Targeting users based on persona data
US20110295897A1 (en) * 2010-06-01 2011-12-01 Microsoft Corporation Query correction probability based on query-correction pairs
CN102298582B (zh) * 2010-06-23 2016-09-21 商业对象软件有限公司 数据搜索和匹配方法和系统
US8442987B2 (en) * 2010-08-19 2013-05-14 Yahoo! Inc. Method and system for providing contents based on past queries
US20120136718A1 (en) * 2010-11-29 2012-05-31 Microsoft Corporation Display of Search Ads in Local Language
CN102567408B (zh) 2010-12-31 2014-06-04 阿里巴巴集团控股有限公司 推荐搜索关键词的方法和装置
US9355148B2 (en) 2011-04-29 2016-05-31 Hewlett Packard Enterprise Development Lp Systems and methods for in-memory processing of events
US8417718B1 (en) 2011-07-11 2013-04-09 Google Inc. Generating word completions based on shared suffix analysis
US8725497B2 (en) * 2011-10-05 2014-05-13 Daniel M. Wang System and method for detecting and correcting mismatched Chinese character
KR101461062B1 (ko) * 2011-10-24 2014-11-17 네이버 주식회사 로마자 변환을 이용한 일본어 자동 추천 시스템 및 방법
US8756241B1 (en) * 2012-08-06 2014-06-17 Google Inc. Determining rewrite similarity scores
US9971837B2 (en) * 2013-12-16 2018-05-15 Excalibur Ip, Llc Contextual based search suggestion
US9690860B2 (en) * 2014-06-30 2017-06-27 Yahoo! Inc. Recommended query formulation
CN104572836A (zh) * 2014-12-10 2015-04-29 百度在线网络技术(北京)有限公司 一种确定候选查询序列的综合相关度的方法与装置
US10380192B2 (en) * 2015-12-08 2019-08-13 Oath Inc. Method and system for providing context based query suggestions
US10169414B2 (en) 2016-04-26 2019-01-01 International Business Machines Corporation Character matching in text processing
US10891578B2 (en) * 2018-03-23 2021-01-12 International Business Machines Corporation Predicting employee performance metrics
US11170183B2 (en) * 2018-09-17 2021-11-09 International Business Machines Corporation Language entity identification
CN110162593B (zh) * 2018-11-29 2023-03-21 腾讯科技(深圳)有限公司 一种搜索结果处理、相似度模型训练方法及装置
US11194850B2 (en) * 2018-12-14 2021-12-07 Business Objects Software Ltd. Natural language query system
US10956466B2 (en) * 2018-12-26 2021-03-23 Paypal, Inc. Machine learning approach to cross-language translation and search
CN110008237B (zh) * 2019-01-14 2023-05-02 创新先进技术有限公司 一种相似查询识别方法及装置
CN111629020A (zh) * 2019-12-03 2020-09-04 蘑菇车联信息科技有限公司 一种远程输入方法、装置、pc端、安卓设备及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004280259A (ja) * 2003-03-13 2004-10-07 National Institute Of Information & Communication Technology 検索装置
US20060031207A1 (en) * 2004-06-12 2006-02-09 Anna Bjarnestam Content search in complex language, such as Japanese

Family Cites Families (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4833610A (en) * 1986-12-16 1989-05-23 International Business Machines Corporation Morphological/phonetic method for ranking word similarities
JP2809341B2 (ja) * 1994-11-18 1998-10-08 松下電器産業株式会社 情報要約方法、情報要約装置、重み付け方法、および文字放送受信装置。
WO1997008604A2 (en) * 1995-08-16 1997-03-06 Syracuse University Multilingual document retrieval system and method using semantic vector matching
US5778361A (en) * 1995-09-29 1998-07-07 Microsoft Corporation Method and system for fast indexing and searching of text in compound-word languages
AU757550B2 (en) * 1998-03-03 2003-02-27 Amazon.Com, Inc. Identifying the items most relevant to a current query based on items selected in connection with similar queries
US6493709B1 (en) * 1998-07-31 2002-12-10 The Regents Of The University Of California Method and apparatus for digitally shredding similar documents within large document sets in a data processing environment
US6876997B1 (en) * 2000-05-22 2005-04-05 Overture Services, Inc. Method and apparatus for indentifying related searches in a database search system
JP2001337980A (ja) * 2000-05-29 2001-12-07 Sony Corp 電子番組ガイド検索方法及び電子番組ガイド検索装置
US8706747B2 (en) * 2000-07-06 2014-04-22 Google Inc. Systems and methods for searching using queries written in a different character-set and/or language from the target pages
US6999932B1 (en) * 2000-10-10 2006-02-14 Intel Corporation Language independent voice-based search system
TW476895B (en) * 2000-11-02 2002-02-21 Semcity Technology Corp Natural language inquiry system and method
US7558781B2 (en) * 2000-12-12 2009-07-07 Home Box Office, Inc. Digital asset data type definitions
US6892377B1 (en) * 2000-12-21 2005-05-10 Vignette Corporation Method and system for platform-independent file system interaction
US20020165717A1 (en) * 2001-04-06 2002-11-07 Solmer Robert P. Efficient method for information extraction
US7293014B2 (en) * 2001-06-18 2007-11-06 Siebel Systems, Inc. System and method to enable searching across multiple databases and files using a single search
US7051119B2 (en) * 2001-07-12 2006-05-23 Yahoo! Inc. Method and system for enabling a script on a first computer to communicate and exchange data with a script on a second computer over a network
US7403938B2 (en) * 2001-09-24 2008-07-22 Iac Search & Media, Inc. Natural language query processing
US20030065650A1 (en) * 2001-10-03 2003-04-03 Annand Ritchie I. Method and query application tool for searching hierarchical databases
US7149732B2 (en) * 2001-10-12 2006-12-12 Microsoft Corporation Clustering web queries
JP2003296443A (ja) * 2002-03-29 2003-10-17 Konica Corp 医用画像撮影装置、表示制御方法、プログラム
US20070208698A1 (en) * 2002-06-07 2007-09-06 Dougal Brindley Avoiding duplicate service requests
US6947930B2 (en) * 2003-03-21 2005-09-20 Overture Services, Inc. Systems and methods for interactive search query refinement
US7051023B2 (en) * 2003-04-04 2006-05-23 Yahoo! Inc. Systems and methods for generating concept units from search queries
KR101123426B1 (ko) * 2003-04-04 2012-03-23 야후! 인크. 서브도메인 힌트를 포함하는 검색 결과를 생성하고서브도메인에 의해 스폰서되는 결과를 제공하는 시스템
CN100485603C (zh) * 2003-04-04 2009-05-06 雅虎公司 用于从搜索查询中产生概念单元的系统和方法
US7051014B2 (en) * 2003-06-18 2006-05-23 Microsoft Corporation Utilizing information redundancy to improve text searches
US20040260681A1 (en) * 2003-06-19 2004-12-23 Dvorak Joseph L. Method and system for selectively retrieving text strings
CN100437573C (zh) * 2003-09-17 2008-11-26 国际商业机器公司 标识相关姓名的系统及方法
US7346629B2 (en) * 2003-10-09 2008-03-18 Yahoo! Inc. Systems and methods for search processing using superunits
CA2542823C (en) * 2003-10-21 2015-05-26 Suntory Limited Method for prognostic evaluation of carcinoma using anti-p-lap antibody
US7240049B2 (en) * 2003-11-12 2007-07-03 Yahoo! Inc. Systems and methods for search query processing using trend analysis
US20050210008A1 (en) * 2004-03-18 2005-09-22 Bao Tran Systems and methods for analyzing documents over a network
JP4936650B2 (ja) * 2004-07-26 2012-05-23 ヤフー株式会社 類似単語検索装置、その方法、そのプログラム、および、情報検索装置
CN101014954B (zh) * 2004-09-07 2010-05-05 因特曼股份有限公司 信息搜索提供装置及信息搜索提供系统
US20060106769A1 (en) * 2004-11-12 2006-05-18 Gibbs Kevin A Method and system for autocompletion for languages having ideographs and phonetic characters
US7428533B2 (en) * 2004-12-06 2008-09-23 Yahoo! Inc. Automatic generation of taxonomies for categorizing queries and search query processing using taxonomies
US7620628B2 (en) * 2004-12-06 2009-11-17 Yahoo! Inc. Search processing with automatic categorization of queries
US7707201B2 (en) * 2004-12-06 2010-04-27 Yahoo! Inc. Systems and methods for managing and using multiple concept networks for assisted search processing
US20060161520A1 (en) * 2005-01-14 2006-07-20 Microsoft Corporation System and method for generating alternative search terms
JP2006201907A (ja) * 2005-01-19 2006-08-03 Konica Minolta Holdings Inc 更新検出装置
US7574436B2 (en) * 2005-03-10 2009-08-11 Yahoo! Inc. Reranking and increasing the relevance of the results of Internet searches
US7668808B2 (en) * 2005-03-10 2010-02-23 Yahoo! Inc. System for modifying queries before presentation to a sponsored search generator or other matching system where modifications improve coverage without a corresponding reduction in relevance
US7752220B2 (en) * 2005-08-10 2010-07-06 Yahoo! Inc. Alternative search query processing in a term bidding system
US7634462B2 (en) * 2005-08-10 2009-12-15 Yahoo! Inc. System and method for determining alternate search queries
WO2007038714A2 (en) * 2005-09-27 2007-04-05 Looksmart, Ltd. Collection and delivery of internet ads
US8924412B2 (en) * 2005-12-21 2014-12-30 Digimarc Corporation Rules driven pan ID metadata routing system and network
US7689554B2 (en) * 2006-02-28 2010-03-30 Yahoo! Inc. System and method for identifying related queries for languages with multiple writing systems
US7571162B2 (en) * 2006-03-01 2009-08-04 Microsoft Corporation Comparative web search
US8868540B2 (en) * 2006-03-01 2014-10-21 Oracle International Corporation Method for suggesting web links and alternate terms for matching search queries
US8005816B2 (en) * 2006-03-01 2011-08-23 Oracle International Corporation Auto generation of suggested links in a search system
US20070208702A1 (en) * 2006-03-02 2007-09-06 Morris Robert P Method and system for delivering published information associated with a tuple using a pub/sub protocol
US7599931B2 (en) * 2006-03-03 2009-10-06 Microsoft Corporation Web forum crawler
US8832097B2 (en) * 2006-03-06 2014-09-09 Yahoo! Inc. Vertical search expansion, disambiguation, and optimization of search queries
US20070208704A1 (en) * 2006-03-06 2007-09-06 Stephen Ives Packaged mobile search results

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004280259A (ja) * 2003-03-13 2004-10-07 National Institute Of Information & Communication Technology 検索装置
US20060031207A1 (en) * 2004-06-12 2006-02-09 Anna Bjarnestam Content search in complex language, such as Japanese

Also Published As

Publication number Publication date
HK1130912A1 (en) 2010-01-08
EP3301591A1 (en) 2018-04-04
CN101390097A (zh) 2009-03-18
WO2007101194A3 (en) 2008-03-13
US20070203894A1 (en) 2007-08-30
CN101390097B (zh) 2012-07-04
EP1929415A2 (en) 2008-06-11
WO2007101194A2 (en) 2007-09-07
CN102750323B (zh) 2016-05-11
KR20080114764A (ko) 2008-12-31
HK1176711A1 (zh) 2013-08-02
US7689554B2 (en) 2010-03-30
EP1929415A4 (en) 2011-06-15
US20080077588A1 (en) 2008-03-27
JP2009528636A (ja) 2009-08-06
CN102750323A (zh) 2012-10-24

Similar Documents

Publication Publication Date Title
KR101098703B1 (ko) 다수의 기입 시스템을 가진 언어들에 대한 관련 쿼리들을 식별하기 위한 시스템 및 방법
US10921956B2 (en) System and method for assessing content
US8856145B2 (en) System and method for determining concepts in a content item using context
US9323827B2 (en) Identifying key terms related to similar passages
US7962479B2 (en) System and method for generating substitutable queries
US6366908B1 (en) Keyfact-based text retrieval system, keyfact-based text index method, and retrieval method
CN109508414B (zh) 一种同义词挖掘方法及装置
US20100235311A1 (en) Question and answer search
US20070043761A1 (en) Semantic discovery engine
US20070136280A1 (en) Factoid-based searching
CN107180093B (zh) 信息搜索方法及装置和时效性查询词识别方法及装置
US20090254540A1 (en) Method and apparatus for automated tag generation for digital content
US20070219986A1 (en) Method and apparatus for extracting terms based on a displayed text
JP2009259252A (ja) 名前をハイパーリンクするためのシステム、方法、及びソフトウェア
US7555428B1 (en) System and method for identifying compounds through iterative analysis
EP2307951A1 (en) Method and apparatus for relating datasets by using semantic vectors and keyword analyses
CN111475725A (zh) 用于搜索内容的方法、装置、设备和计算机可读存储介质
CN102117285A (zh) 一种基于语义索引的检索方法
CN111737607A (zh) 数据处理方法、装置、电子设备以及存储介质
US9305103B2 (en) Method or system for semantic categorization
CN114255067A (zh) 数据定价方法和装置、电子设备、存储介质
Bisikalo et al. Experimental Investigation of Significant Keywords Search in Ukrainian Content
Stratogiannis et al. Related Entity Finding Using Semantic Clustering Based on Wikipedia Categories
CN115221264A (zh) 一种文本处理方法、装置及可读存储介质
WO2007121171A2 (en) Systems and methods for ranking terms found in a data product

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20141120

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20151118

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20161122

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20171117

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20181115

Year of fee payment: 8