KR101850124B1 - 교차-언어 쿼리 제안을 위한 쿼리 번역 평가 - Google Patents

교차-언어 쿼리 제안을 위한 쿼리 번역 평가 Download PDF

Info

Publication number
KR101850124B1
KR101850124B1 KR1020147001968A KR20147001968A KR101850124B1 KR 101850124 B1 KR101850124 B1 KR 101850124B1 KR 1020147001968 A KR1020147001968 A KR 1020147001968A KR 20147001968 A KR20147001968 A KR 20147001968A KR 101850124 B1 KR101850124 B1 KR 101850124B1
Authority
KR
South Korea
Prior art keywords
query
candidate
segmentation
language
segments
Prior art date
Application number
KR1020147001968A
Other languages
English (en)
Other versions
KR20140061357A (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 KR20140061357A publication Critical patent/KR20140061357A/ko
Application granted granted Critical
Publication of KR101850124B1 publication Critical patent/KR101850124B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2452Query translation
    • 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
    • G06F16/3337Translation of the query language, e.g. Chinese to English
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/13File access structures, e.g. distributed indices
    • G06F16/134Distributed indices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2308Concurrency control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2452Query translation
    • G06F16/24522Translation of natural language queries to structured queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2453Query optimisation
    • G06F16/24534Query rewriting; Transformation
    • G06F16/24535Query rewriting; Transformation of sub-queries or views
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24553Query execution of query operations
    • G06F16/24558Binary matching operations
    • G06F16/2456Join operations
    • 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/332Query formulation
    • G06F16/3322Query formulation using system suggestions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/42Data-driven translation
    • G06F40/45Example-based machine translation; Alignment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/51Translation evaluation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/58Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation

Abstract

교차-언어 쿼리 제안들을 발생시키기 위한 컴퓨터-구현 방법, 시스템, 컴퓨터 프로그램물이 설명된다. 제 1 자연 언어로 표기된 각각의 쿼리 제안에 대해, 후보 세그먼테이션들이 쿼리 제안으로부터 발생되고, 후보 번역들이 각각의 후보 세그먼테이션으로부터 발생된다. 각각의 후보 번역이 도출되는 각각의 후보 세그먼테이션과 관련된 세그먼테이션 품질의 정도, 그리고 타겟 언어 쿼리 로그에서 후보 번역의 발생 빈도에 근거하여 후보 번역들이 평가된다. 각각의 후보 세그먼테이션과 관련된 세그먼테이션 품질의 정도는 또한 소스 언어 쿼리 로그에서 후보 세그먼테이션의 발생 빈도에 근거한다. 이러한 평가의 결과에 근거하여 후보 번역이 일차 언어 쿼리 제안에 대한 교차-언어 쿼리 제안으로서 제공된다.

Description

교차-언어 쿼리 제안을 위한 쿼리 번역 평가{EVALUATING QUERY TRANSLATIONS FOR CROSS-LANGUAGE QUERY SUGGESTION}
본 명세서는 컴퓨터-구현 쿼리 제안 서비스(computer-implemented query suggestion services)에 관한 것으로, 특히 교차-언어 쿼리 제안(cross-language query suggestions)을 제공하는 것에 관한 것이다.
검색 엔진(search engine)들은 사용자의 쿼리 입력에 대응하는 입력 제안들(예를 들어, 쿼리 제안들)을 제공할 수 있다. 입력 제안들은 사용자가 입력한 부분적 쿼리 입력과 매칭되는 사용자-제출 검색 쿼리 및/또는 제안들에 대한 퀴리 대안들(예를 들어, 자동-완성)을 포함한다. 사용자의 관심 및 현재 정보 요구와 관련될 확률이 높은 입력 제안들을 제공하기 위해, 검색 엔진은 사용자에게 제시할 특정 입력 제안 후보들을 선택하기 전에 다양한 기준에 근거하여 입력 제안 후보들을 평가한다.
동일한 주제 혹은 정보와 관련된 인터넷 콘텐츠는 종종, 월드 와이드 웹(World Wide Web)에서 여러 가지 자연 언어(natural languages) 및/또는 표기 체계(writing systems)로 존재한다. 다중-언어 사용자는 해당하는 쿼리를 여러 가지 언어 및/또는 표기 체계로 표현하려 할 수 있고 그 여러 가지 언어 및/또는 표기 체계로 된 관련 콘텐츠를 찾기 위해 해당 쿼리를 검색 엔진에 제공하려 할 수 있다. 그러나, 효과적인 검색 쿼리를 비-모국어 혹은 표기 체계로 표현하는 것은, 다중-언어 사전의 도움을 받는다 하여도, 다수의 다중-언어 사용자들에게는 쉬운 일이 아닐 수 있다. 교차-언어 입력 제안들(예를 들어, 교차-언어 쿼리 제안들)을 제공할 수 있는 검색 엔진은 이러한 어려움을 경감시킬 수 있다. 머신-발생 교차-언어 쿼리 제안들의 품질 및 유효성을 향상시키기 위한 기술들이 필요하다.
본 명세서는 교차-언어 쿼리 제안의 발생에 관한 기술을 설명한다.
일반적으로, 본 명세서에서 설명되는 주된 내용의 일 실시형태는 방법으로 구현될 수 있는바, 이 방법은: 제 1 언어로 표기된 쿼리를 수신하는 동작과(여기서, 쿼리는 검색 엔진에 제출된 사용자 입력에 근거하여 발생되는 일차-언어 쿼리 제안(primary-language query suggestion)임); 제 1 언어로 된 쿼리의 하나 이상의 고유한 후보 세그먼테이션(unique candidate segmentation)들을 획득하는 동작과(여기서, 각각의 고유한 후보 세그먼테이션은 제 1 언어로 된 쿼리를 세그먼트(segment)화함으로써 생성된 세그먼트들의 각각의 시퀀스(sequence)로 구성됨); 하나 이상의 고유한 후보 세그먼테이션들 각각에 대해, 후보 세그먼테이션의 세그먼트들의 각각의 시퀀스를 번역(translating)함으로써 제 2 언어로 된 하나 이상의 후보 번역들의 각각의 세트를 결정하는 동작과; 하나 이상의 고유한 후보 세그먼테이션들 각각의 후보 번역 각각에 대해: (1) 제 1 쿼리 로그(query log)에서 제 1 언어로 표기된 완성된 쿼리(complete query)로서의 고유한 후보 세그먼테이션의 각각의 제 1 발생 빈도 그리고 고유한 후보 세그먼테이션의 세그먼트들의 각각의 시퀀스로부터 얼마나 많은 제외어(stop word)들이 제거되었는지에 적어도 부분적으로 근거하여 고유한 후보 세그먼테이션에 대한 각각의 세그먼테이션 품질(segmentation quality)을 결정하는 동작과, 그리고 (2) 제 2 쿼리 로그에서 제 2 언어로 표기된 완성된 쿼리로서의 후보 번역의 각각의 제 2 발생 빈도 그리고 고유한 후보 세그먼테이션에 대해 결정된 각각의 세그먼테이션 품질에 적어도 근거하여 후보 번역에 대한 각각의 점수(score)를 결정하는 동작과; 그리고 후보 번역들의 각각의 점수들에 근거하여 쿼리에 대한 교차-언어 쿼리 제안(cross-language query suggestion)으로서 후보 번역들 중 적어도 하나를 제공하는 동작을 포함한다.
일반적으로, 본 명세서에서 설명되는 주된 내용의 일 실시형태는 방법으로 구현될 수 있는바, 이 방법은: 제 1 언어로 표기된 쿼리를 수신하는 동작과; 제 1 언어로 된 쿼리의 하나 이상의 고유한 후보 세그먼테이션들을 획득하는 동작과(여기서, 각각의 고유한 후보 세그먼테이션은 제 1 언어로 된 쿼리를 세그먼트화함으로써 생성된 세그먼트들의 각각의 시퀀스로 구성됨); 하나 이상의 고유한 후보 세그먼테이션들 각각에 대해: (1) 고유한 후보 세그먼테이션에 대한 세그먼테이션 품질의 각각의 정도(measure)를 결정하는 동작과, 그리고 (2) 후보 세그먼테이션의 세그먼트들의 각각의 시퀀스를 번역함으로써 제 2 언어로 된 하나 이상의 후보 번역들의 각각의 세트를 획득하는 동작과; 하나 이상의 고유한 후보 세그먼테이션들 각각의 후보 번역 각각에 대해: (1) 제 1 쿼리 로그에서 제 2 언어로 표기된 완성된 쿼리로서의 후보 번역의 제 1 발생 빈도를 결정하는 동작과, (2) 제 1 쿼리 로그에서 제 2 언어로 표기된 완성된 쿼리로서의 후보 번역의 제 1 발생 빈도, 그리고 후보 세그먼테이션에 대한 세그먼테이션 품질의 정도에 적어도 근거하여 후보 번역에 대한 각각의 점수를 결정하는 동작과; 그리고 후보 번역들의 각각의 점수들에 근거하여 쿼리에 대한 교차-언어 쿼리 제안으로서 후보 번역들 중 적어도 하나를 제공하는 동작을 포함한다.
이러한 실시형태의 다른 실시예는 대응하는 컴퓨터 시스템, 장치 및 (하나 이상의 컴퓨터 저장 디바이스에 기록되는) 컴퓨터 프로그램물을 포함하는바, 그 각각은 앞서의 방법들의 동작들을 수행하도록 구성된다. 하나 이상의 컴퓨터들의 시스템은 작동시 시스템으로 하여금 이러한 동작들을 수행하도록 하는, 시스템 상에 설치된 소프트웨어, 펌웨어, 하드웨어 혹은 이들의 조합을 통해 그렇게 구성될 수 있다. 하나 이상의 컴퓨터 프로그램들은 데이터 프로세싱 장치에 의해 실행될 때 장치로 하여금 이러한 동작들을 수행하도록 하는 명령들을 통해 그렇게 구성될 수 있다.
이러한 실시예 및 다른 실시예는 선택에 따라서 아래와 같은 특징들 중 하나 이상의 특징을 포함할 수 있다.
일부 구현예에서, 제 1 언어로 된 쿼리의 하나 이상의 고유한 후보 세그먼테이션들을 획득하는 동작은 또한, 제 1 언어로 된 쿼리의 파티션(partition)인 적어도 하나의 후보 세그먼테이션을 획득하는 것을 포함한다. 일부 구현예에서, 제 1 언어로 된 쿼리의 하나 이상의 고유한 후보 세그먼테이션들을 획득하는 동작은 또한, 후보 세그먼테이션으로부터 하나 이상의 제외어들이 제거된 적어도 하나의 후보 세그먼테이션을 획득하는 것을 포함한다.
일부 구현예에서, 하나 이상의 고유한 후보 세그먼테이션들 각각에 대해, 고유한 후보 세그먼테이션에 대한 세그먼테이션 품질의 각각의 정도를 결정하는 동작은 또한, 후보 세그먼테이션의 세그먼트들의 각각의 시퀀스로부터 얼마나 많은 제외어들이 제거되었는지에 적어도 부분적으로 근거하여 세그먼테이션 품질의 각각의 정도를 결정하는 것을 포함한다.
일부 구현예에서, 하나 이상의 고유한 후보 세그먼테이션들 각각에 대해, 고유한 후보 세그먼테이션에 대한 세그먼테이션 품질의 각각의 정도를 결정하는 동작은 또한, 제 2 쿼리 로그에서 제 1 언어로 표기된 완성된 쿼리로서의 후보 세그먼테이션의 각각의 제 2 발생 빈도를 결정하는 것과; 그리고 제 2 쿼리 로그에서 제 1 언어로 표기된 완성된 쿼리로서의 후보 세그먼테이션의 각각의 제 2 발생 빈도에 적어도 부분적으로 근거하여 세그먼테이션 품질의 각각의 정도를 결정하는 것을 포함한다.
본 명세서에서 설명되는 주된 내용의 특정 실시예는 아래와 같은 장점들 중 하나 이상 장점을 실현하도록 구현될 수 있다.
본 명세서에서 설명되는 기법들의 특정 실시예에서, 쿼리 입력을 제 1 언어(예를 들어, 사용자의 모국어)로 입력하는 사용자는 교차-언어 쿼리 제안들(즉, 제 2 언어로 된 쿼리 제안들)을 자동으로 제공받을 수 있다. 교차-언어 쿼리 제안들은 사용자의 초기 쿼리 입력에 근거하여 제공되는 제 1 언어로 된 대응하는 쿼리 제안들과 함께 제공될 수 있다. 각각의 교차-언어 쿼리 제안은, 검색 엔진에 의해 평가되며, 제 1 언어로 된 대응하는 쿼리 제안들(예를 들어, 일차 언어 쿼리 제안)의 적합한 혹은 정확한 번역인지가 결정될 뿐만 아니라, 일차 언어 쿼리 제안이 목표로 하는 것과 동일한 주제 혹은 정보와 관련된 교차-언어 콘텐츠를 검색하기 위해 유효한 검색 쿼리인지가 결정된다. 교차-언어 쿼리 제안을 선택함으로써, 사용자는 제 1 언어로 입수가능한 콘텐츠보다 더 관련성 있거나 더 포괄적일 수 있는 제 2 언어로 된 콘텐츠를 검색할 수 있다. 추가적으로, 검색 작업은 효율적으로 구현될 수 있고 좋은 사용자 경험을 제공할 수 있다. 일차-언어 쿼리 제안을 수동으로 번역할 필요가 없을 뿐만 아니라, 머신 번역에 근거하여 발생되는 교차-언어 쿼리 제안의 유효성이 또한 향상될 수 있다.
본 명세서에서 설명되는 주된 내용의 하나 이상의 실시예들의 세부사항이 아래의 상세한 설명 및 첨부되는 도면에서 제시된다. 이러한 주된 내용의 다른 특징, 실시형태 및 장점은 상세한 설명, 도면, 그리고 특허청구범위로부터 명백하게 될 것이다.
도 1은 쿼리 제안들을 서로 다른 자연 언어로 발생시키는 예시적인 시스템에서의 데이터 흐름의 예를 나타낸 블록도이다.
도 2는 제 1 언어로 된 제 1 쿼리 제안들의 그룹 및 상이한 제 2 언어로 된 제 2 쿼리 제안들의 그룹을 제시하는 예시적인 웹 페이지를 나타낸 스크린샷(screenshot)이다.
도 3은 번역 서브시스템의 정제 모듈에 의해 수행된 쿼리 번역 평가들에 근거하여 교차-언어 쿼리 제안으로서 쿼리의 번역(예를 들어, 일차 언어 쿼리 제안)을 제공하는 번역 서브시스템의 예를 나타낸 블록도이다.
도 4는 도 3에 예시된 번역 서브시스템 내의 정제 모듈의 예를 나타낸 블록도이다.
도 5는 가능성 있는 교차-언어 쿼리 제안들로서 쿼리 번역들을 평가하고 이러한 평가에 근거하여 교차-언어 쿼리 제안으로서 쿼리 번역을 제공하기 위한 예시적인 프로세스를 나타낸 흐름도이다.
다양한 도면에서 동일한 참조번호 및 표시는 동일한 요소를 표시한다.
검색 엔진은 사용자에 의해 입력된 쿼리에 응답하여 일차 언어 쿼리 제안들을 제공할 수 있다. 일차 언어 쿼리 제안들은 사용자의 본래의 쿼리 입력의 언어 혹은 표기 체계로 표기된 쿼리 제안들이다. 검색 엔진은 또한 각각의 일차 언어 쿼리 제안에 대한 교차-언어 쿼리 제안을 제공할 수 있는바, 여기서 교차-언어 쿼리 제안은 일차 언어 쿼리 제안의 언어 혹은 표기 체계와는 다른 이차 언어 혹은 표기 체계로 표기된 쿼리이다. 교차-언어 쿼리 제안을 제공하는 경우, 검색 엔진은 일차 언어 쿼리 제안에 대한 다수의 후보 번역들을 평가하고, 일차 언어 쿼리 제안의 정확한 번역인(뿐만 아니라 일차 언어 쿼리 제안이 목표로 하는 일차 언어 콘텐츠와 동일한 주제에 관한 교차-언어 콘텐츠를 검색하기 위해 유효한 검색 쿼리일 확률이 높은) 후보 번역을 선택한다.
본 명세서에서 설명되는 바와 같이, 검색 엔진은 다수의 인자들에 의존할 수 있는바, 이러한 인자들은, 일차 언어 쿼리 제안으로부터 발생된 각각의 후보 세그먼테이션의 세그먼테이션 품질을 포함할 뿐만 아니라 일차 언어 쿼리 제안에 대한 가능성 있는 교차-언어 쿼리 제안으로서 후보 번역들을 평가하기 위해 각각의 후보 세그먼테이션으로부터 발생된 각각의 후보 번역의 번역 품질을 포함한다. 다른 인자들 가운데에서도, 후보 세그먼테이션의 세그먼테이션 품질은, 후보 세그먼테이션과 매칭됨(예를 들어, 후보 세그먼테이션과 동일한 혹은 하나 이상의 제외어 이외의 부분이 후보 세그먼테이션과 동일함)과 아울러 일차 언어 쿼리 로그(이것은 또한, "소스 언어 쿼리 로그(source language query log)"로서 지칭됨)에서 발견되는 사용자-제출 검색 쿼리의 쿼리 빈도(query frequency)(혹은 쿼리 카운트(query count))에 근거할 수 있다. 유사하게, 후보 세그먼테이션의 후보 번역의 번역 품질은, 후보 번역과 매칭됨과 아울러 교차-언어 쿼리 로그(이것은 또한, "타겟 언어 쿼리 로그(target language query log)"로서 지칭됨)에서 발견되는 사용자-제출 검색 쿼리의 쿼리 빈도(혹은 쿼리 카운트)에 근거할 수 있다.
쿼리 빈도는, 검색 엔진이 특정 번역이 타겟 언어에서의 관례적 언어 사용법을 따르는지 여부를 평가하는데 도움을 줄 수 있을 뿐만 아니라, 검색 엔진이 특정 번역이 타겟 언어의 원어민들인 사람들이 검색 쿼리를 표현하는 방식을 따르는지 여부를 평가하는데 도움을 줄 수 있다.
도 1은 서로 다른 형태의 자연 언어 표현으로 입력 제안들(예를 들어, 쿼리 제안들)을 발생시키는 예시적인 시스템에서의 데이터 흐름의 예를 나타낸 블록도이다. 클라이언트 디바이스(115) 상에서 실행되는 모듈(110)(예를 들어, 자바스크립트 스크립트(JavaScript script))은 사용자(122)로부터 검색 엔진 쿼리 입력 필드에서 수신되는 입력(120)을 모니터링한다. 입력(120)은 제 1 형태의 자연 언어 표현으로 표기된다(예를 들어, 중국어 문자, 핀인(Pinyin), 히라가나(Hiragana), 혹은 카타카나(Katakana)로 용어 혹은 어구가 표기되는 것).
더 구체적으로, 제 1 형태는 제 1 자연 언어에 대해 사용되는 제 1 표기 체계이다. 예로서, 제 1 표기 체계는 (한자들을 사용하여 표현되는) 한자일 수 있으며 제 1 자연 언어 중국어에 대해 사용될 수 있다. 대안적으로, 제 1 표기 체계는 (예를 들어, 영어 알파벳의 문자들을 사용하여 표현되는) 표음식 철자 체계일 수 있으며 제 1 자연 언어 영어에 대해 사용될 수 있다. 일부 표기 체계들은 다수의 자연 언어들을 표현하기 위해 사용될 수 있다. 이러한 표기 체계는 다수의 자연 언어들에서의 의미를 기호화하기 위해 서로 다른 음성 체계(예를 들어, 음소(phoneme)들의 체계)와 함께 사용될 수 있다. 예로서, 제 1 표기 체계는 (예를 들어, 표준형 혹은 확장형 라틴 알파벳의 문자들을 사용하여 표현되는) 표음식 철자 체계일 수 있으며, 자연 언어 영어, 자연 언어 독일어, 혹은 (예를 들어, 중국어 로마자 표기법 혹은 핀인에서 사용되는 바와 같은) 자연 언어 중국어에 대해 사용될 수 있다.
일부 구현예들에서, 모듈(110)은 클라이언트 디바이스(115) 상에서 실행되는 웹 브라우저에 설치된 플러그-인 소프트웨어(plug-in software)이다. 일부 대안적 실시예들에서, 모듈(110)은 예를 들어 클라이언트 디바이스(115)로부터 입력(120)을 수신하는 중간 서버 상에 설치된다. 모듈(110)은 입력(120)을 수신하고, 입력(120)이 수신됨에 따라 입력(120)을 제안 서비스 모듈(125)에 자동으로 전송한다. 일부 구현예들에서, 제안 서비스 모듈(125)은, 텍스트 입력(예를 들어, 사용자-제출 검색 쿼리)을 수신하고 텍스트 입력에 대한 대안물(예를 들어, 쿼리 제안)을 리턴(return)하는 서버(예를 들어, 중간 서버와는 별개의 서버) 상에서 실행되는 소프트웨어이다.
제안 서비스 모듈(125)은 제 1 형태로 된 제 1 입력 제안들(예를 들어, 일차 언어 쿼리 제안들)의 세트를 결정하고, 제 1 입력 제안들 중 하나 이상의 입력 제안을 번역 서비스 모듈(130)에 전송한다. 제 1 입력 제안들은 입력(120)에 대한 대안물(예를 들어, 확장물 및 완성물)이다. 예를 들어, 만약 입력(120)이 영어로 표기된 문자 혹은 단어를 포함한다면, 제 1 입력 제안들은 입력(120)과 매칭되는 관련된 대안적 쿼리들 혹은 자동-완성된 쿼리들인 영어로 표기된 쿼리 제안들을 포함할 수 있다.
일부 구현예들에서, 번역 서비스 모듈(130)은 텍스트 입력(예를 들어, 제 1 형태로 된 쿼리 제안)을 수신하고 텍스트 입력에 대한 상이한 표기 체계 혹은 자연 언어로 표현된 대안물(예를 들어, 번역 및 음역)을 리턴한다. 번역 서비스(130)는 상이한 제 2 형태로 된 제 1 입력 제안들의 표현들을 식별시키기 위해 사용될 수 있다.
상이한 제 2 형태는 제 1 형태와 동일한 자연 언어에 대해 제 1 형태와는 다른 표기 체계일 수 있다. 달리 말하면, 상이한 제 2 형태로 된 제 1 입력 제안의 표현은 음역일 수 있다. 예로서, 제 1 입력 제안은 한자 "
Figure 112014007343286-pct00001
"(예를 들어, 영어로 "car")일 수 있으며, 관련된 제 2 입력 제안은 "
Figure 112014007343286-pct00002
"(예를 들어, "
Figure 112014007343286-pct00003
"의 중국어 로마자 표현)일 수 있다.
상이한 제 2 형태는 또한 제 1 형태와는 다른 자연 언어에 대한 것일 수 있으며 그리고/또는 제 1 형태와는 다른 표기 체계일 수 있다. 달리 말하면, 상이한 제 2 형태로 된 제 1 입력 제안의 표현은 상이한 표기 체계로 된 번역일 수 있다. 예로서, 제 1 입력 제안은 영어 단어 "car"일 수 있으며, 관련된 제 2 입력 제안은 "
Figure 112014007343286-pct00004
"(예를 들어, "car"를 의미하는 한자)일 수 있다.
더욱이, 상이한 제 2 형태는 제 1 형태와는 다른 자연 언어에 대해 제 1 형태와 동일한 표기 체계일 수 있다. 달리 말하면, 상이한 제 2 형태로 된 제 1 입력 제안의 표현은 동일한 표기 체계로 된 번역일 수 있다. 예로서, 제 1 입력 제안은 영어 단어 "car"일 수 있으며, 관련된 제 2 입력 제안은 "
Figure 112014007343286-pct00005
"(예를 들어, "car"를 의미할 수 있는 한자 "
Figure 112014007343286-pct00006
"의 중국어 로마자 표현)일 수 있다.
일부 구현예들에서, 사용자(122)는 사용자 선호도에서의 설정에 의해 상이한 제 2 형태를 특정한다. 일부 구현예들에서, 모듈(110)은 제 1 형태를 포함하는 빈번하게 사용되는 언어 쌍들로부터 상이한 제 2 형태를 자동으로 선택한다.
상이한 제 2 형태로 된 제 1 입력 제안들의 표현은 제 2 입력 제안들(예를 들어, 교차-언어 쿼리 제안들)로서 식별된다. 번역 서비스 모듈(130)은 제 2 입력 제안들을 제안 서비스 모듈(125)에 리턴한다. 번역 서비스 모듈(130)은 또한 제 1 입력 제안들과 제 2 입력 제안들 간의 관련성들을 식별시키는 데이터를 리턴한다. 관련성은 특정 제 2 입력 제안이 제 1 형태로 된 특정 제 1 입력 제안의 제 2 형태로 된 표현임을 표시한다.
모듈(110)은 제안 서비스(125)로부터 제 1 입력 제안들, 제 2 입력 제안들 및 관련성들을 수신한다. 제 1 입력 제안들과 제 2 입력 제안들은 모두 입력(120)과는 별개의 것이다.
모듈(110)은 제 1 입력 제안들(예를 들어, 일차 언어 쿼리 제안들) 및 제 2 입력 제안들(예를 들어, 교차-언어 쿼리 제안들)을 사용자(122)에 실시간으로(즉, 사용자(122)가 검색 엔진 쿼리 입력 필드에 문자들을 타이핑함에 따라) 제시할 수 있다. 예를 들어, 모듈(110)은 사용자(122)에 의해 타이핑된 제 1 문자와 관련된 제 1 입력 제안들과 제 2 입력 제안들의 제 1 그룹을 제시할 수 있고, 사용자(122)가 연속적으로 제 2 문자를 타이핑하는 것에 응답하여 제 1 문자와 제 2 문자의 시퀀스와 관련된 제 1 입력 제안들과 제 2 입력 제안들의 제 2 그룹을 제시할 수 있는 등이다.
도 1은 일차 언어 쿼리 제안들과 교차-언어 쿼리 제안들 모두를 제공하는 시스템에서의 전체적인 예시적 데이터 흐름을 나타낸다. 제 1 형태로 된 각각의 쿼리 제안(예를 들어, 각각의 일차 언어 쿼리 제안)에 대해 복수의 후보 번역들이 (예를 들어, 머신 번역 서브시스템(machine translation subsystem)을 사용하여) 발생될 수 있지만, 모든 후보 번역들이 제 1 형태로 된 쿼리 제안과 동일한 주제에 관한 콘텐츠를 목표로 하는 유효한 쿼리들은 아니다. 본 명세서에서 설명되는 바와 같이, 번역 서비스 모듈(130)은 가능성 있는 교차-언어 쿼리 제안들로서 복수의 후보 번역들을 평가하고, 이러한 평가에 근거하여 (제 1 형태로 된 쿼리 제안의 정확한 번역임과 아울러 제 1 형태로 된 쿼리 제안이 목표로 하는 주제와 동일한 주제에 관한 교차-언어 콘텐츠를 검색하기 위해 유효한 쿼리인) 후보 번역을 식별한다. 그 다음에, 식별된 후보 번역은 제안 서비스 모듈(125)을 통해 사용자에게 제공된다.
도 2는 제 1 형태 된 제 1 입력 제안들(예를 들어, 일차 언어 쿼리 제안들)의 그룹 및 상이한 제 2 형태로 된 제 2 입력 제안들(예를 들어, 교차-언어 쿼리 제안들)의 그룹을 제시하는 웹 페이지(200)의 예를 나타낸 스크린샷이다. 웹 페이지는 검색 쿼리 입력 필드(220)를 포함한다. 검색 쿼리 입력 필드(220)는 사용자-제출 쿼리 입력 "
Figure 112014007343286-pct00007
", 예를 들어, 영어로 "long"을 의미하는 중국어 로마자 표현 "
Figure 112014007343286-pct00008
" 혹은 영어로 "elder"를 의미하는 중국어 로마자 표현 "
Figure 112014007343286-pct00009
"을 포함한다.
쿼리 입력이 입력됨에 응답하여, 사용자의 디바이스는 (예를 들어, 도 1에서의 모듈(110)에 의해) 제안 서비스 모듈(예를 들어, 도 1에서의 제안 서비스 모듈(125))로부터의 입력 제안들을 요청한다. 클라이언트 디바이스가 제 1 입력 제안들을 수신한 이후에, 클라이언트 디바이스는 웹 페이지(200)를 보여주는 웹 브라우저의 인터페이스 요소에서의 디스플레이를 위해 제 1 입력 제안들을 제공한다. 도 2의 예에서, 인터페이스 요소는 한자 "
Figure 112014007343286-pct00010
"의 표현들인 제 1 입력 제안들(예를 들어, 영어로 "ivy"를 의미하는 "
Figure 112014007343286-pct00011
", 그리고 영어로 "Evergreen", 항공사를 의미하는 "
Figure 112014007343286-pct00012
" 등)을 보여주는 드랍-다운 메뉴(drop-down menu)이다.
도 2의 예에서, 클라이언트 디바이스는 또한, 제안 서비스 모듈로부터의 제 1 입력 제안들에 대응하는 제 2 입력 제안들을 요청하도록 구성된다. 제 2 입력 제안들을 수신한 이후에, 클라이언트 디바이스는 웹페이지(200)의 별개의 부분에서 나란히 디스플레이되는 제 1 입력 제안들 및 제 2 입력 제안들을 제공한다. 예를 들어, 동일한 인터페이스 요소(예를 들어, 드랍-다운 메뉴)의 제 1 부분(240)에는 제 1 입력 제안들이 제공되고, 제 2 부분(250)에는 제 2 입력 제안들이 제공된다.
도 2의 예에서, 각각의 제 1 입력 제안과 그 대응하는 제 2 입력 제안 간의 관련성이 또한, 시각적으로 제 1 입력 제안과 그 대응하는 제 2 입력 제안의 수평 정렬로 나타나 있다. 예를 들어, 제 1 입력 제안 "
Figure 112014007343286-pct00013
"은 "
Figure 112014007343286-pct00014
"의 번역인 제 2 입력 제안 "ivy"와 수평으로 줄 맞춰져 있다. 제 1 입력 제안 "
Figure 112014007343286-pct00015
"은 "
Figure 112014007343286-pct00016
"의 번역인 제 2 입력 제안 "Evergreen"과 수평으로 줄 맞춰져 있다. 제 1 입력 제안 "
Figure 112014007343286-pct00017
"은 "
Figure 112014007343286-pct00018
"의 번역인 제 2 입력 제안 "ivy league"와 수평으로 줄 맞춰져 있다.
하나 이상의 제 1 입력 제안들은 임의의 적절한 제 2 입력 제안들과 관련되지 않을 수 있다. 도 2의 예에서, 임의의 제 2 입력 제안들과 관련되지 않은 제 1 입력 제안들은 임의의 제 2 입력 제안들과 줄 맞춰져 있지 않다. 예로서, 제 1 입력 제안 "
Figure 112014007343286-pct00019
"는 제 2 입력 제안과 줄 맞춰져 있지 않다. 한자들의 전체 시퀀스인 "
Figure 112014007343286-pct00020
"는 영어로 된 의미있는 표현을 갖지 않는다. 그러나, 개별적으로 "
Figure 112014007343286-pct00021
"은 영어로 "Chang'an"(당 왕조(Tang Dynasty) 동안 중국의 수도)을 의미할 수 있고, "
Figure 112014007343286-pct00022
"는 영어로 "car"를 의미할 수 있음에 유의해야 한다.
사용자가 사용자 인터페이스 요소로부터의 입력 제안들 중 하나를 선택하는 경우, 모듈(110)은 이러한 선택을 검색을 위한 요청으로 전송하고, 웹 브라우저 인스턴스는 그 선택된 입력 제안에 대해 검색 엔진에 의해 발생된 검색 결과들을 디스플레이하는 웹 페이지로 리디렉트(redirect)된다.
도 2의 예에서 제시된 바와 같이, 일부 제 1 입력 제안들은 제 2 형태로 상당히 명확한 번역들을 갖는다. 예를 들어, "
Figure 112014007343286-pct00023
"의 영어 직역은 "ivy"다. "
Figure 112014007343286-pct00024
"과 "ivy"는 모두, 검색 쿼리들로서 사용되는 경우, 중국어와 영어로 된 동일한 타입의 상록 식물(evergreen plant)에 관한 콘텐츠를 검색하는 데 있어 각각 동등하게 유효하다. 이에 반하여, "
Figure 112014007343286-pct00025
"은 "ivy university", "ivy college", "ivy league", "ivy schools"로서 번역될 수 있다. "ivy university", "ivy college" 및 "ivy schools"이 중국어 단어들 "
Figure 112014007343286-pct00026
"과 "
Figure 112014007343286-pct00027
"에 대해 더 직접적인 직역이긴 하지만, 제 2 입력 제안으로서 더 좋은 선택은 "ivy league"다. 그 이유는 영어를 모국어로 사용하는 사용자들에 의해 영어로 된 검색 쿼리로서 "ivy league"가 더 빈번하게 입력되고 있으며 "ivy university", "ivy college" 및 "ivy schools"보다 중국어 쿼리 "
Figure 112014007343286-pct00028
"이 목표로 하는 것과 동일한 주제에 관한 영어 콘텐츠를 검색함에 있어 더 효과적일 수 있기 때문이다.
도 3은 쿼리(310)의 복수의 후보 쿼리 번역들의 평가에 근거하여 교차-언어 쿼리 제안으로서 쿼리(310)의 번역(380)을 제공하는 서브시스템(300)의 예를 나타낸다. 쿼리(310)는 도 1에서 제안 서비스 모듈(125)에 의해 번역 서비스 모듈(130)에 제공되는 제 1 입력 제안들 중 하나일 수 있다. 서브시스템(300)은 도 1에서의 번역 서비스 모듈(130)로서의 역할을 할 수 있다.
도 3에 예시된 바와 같이, 예시적인 서브시스템(300)은 세그먼테이션 모듈(segmentation module)(320), 번역 모듈(330), 교차-언어 제안(Cross-Language Suggestion)(이후 "CLS"라 지칭함) 사전(340), 정제 모듈(refinement module)(350), 타겟 언어 쿼리 로그(target language query log)(360), 소스 언어 쿼리 로그(source language query log)(370)를 포함한다.
서브시스템(300) 내에 포함되는 바와 같은 모듈들 및 요소들에 있어서, 세그먼테이션 모듈(320)은 제 1 형태(예를 들어, 제 1 자연 언어 및 관련된 표기 체계)로 표기된 쿼리(310)로부터 하나 이상의 고유한 후보 세그먼테이션들을 발생시키기 위한 것이다. 쿼리(310)의 각각의 후보 세그먼테이션은, 제외어들이 제거된 채 혹은 제거되지 않은 채, 특정 방식으로 입력 쿼리(310)를 세그먼트화함으로써 혹은 분할함으로써 획득된 세그먼트들의 고유한 시퀀스로 구성된다. 각각의 세그먼트는 입력 쿼리(310)를 구성하는 하나 이상의 n-그램(n-gram)들(예를 들어, 영어 혹은 독일어 쿼리로 된 단어들, 또는 중국어 혹은 한국어 쿼리로 된 문자들)을 포함한다. 만약 쿼리(310)를 세그먼트화 혹은 분할하는 특정 방식으로부터 생성된 세그먼트들이 하나 이상의 제외어들을 포함하는 경우, 제외어들은 제거될 수 있고, 이에 따라 제외어들이 없는 세그먼트들만이 최종 세그먼테이션에 남아 있게 된다. 만약 제외어들이 세그먼테이션으로부터 제거되지 않는다면, 이러한 세그먼테이션은 이른바 쿼리(310)의 "파티션(partition)"으로도 지칭된다. 쿼리(310)의 파티션은 입력 쿼리(310)를 세그먼트화 혹은 분할하는 특정 방식으로부터 생성된 모든 세그먼트들을 포함한다. 각각의 입력 쿼리에 대해, 하나 이상의 후보 세그먼테이션들이 세그먼테이션 모듈(320)에 의해 생성될 수 있다. 세그먼테이션 모듈(320)에 의해 사용되는 알고리즘들에 따라, 일부 후보 세그먼테이션들은 다른 후보 세그먼테이션들보다 더 좋은 품질을 갖는다. 더 높은 품질의 세그먼테이션은 세그먼테이션들의 세그먼트들이 번역 모듈(330)에 의해 번역되는 경우 입력 쿼리(310)를 정확히 번역할 수 있는 더 좋은 기회로 이어질 것이다.
번역 모듈(330)은 하나 이상의 고유한 후보 세그먼테이션들 각각의 세그먼트들의 각각의 시퀀스를 제 2 형태(예를 들어, 제 2 자연 언어 및 관련된 표기 체계)로 된 하나 이상의 후보 번역들의 각각의 세트로 번역하기 위한 것이다. 후보 세그먼테이션의 하나 이상의 세그먼트들은 제 2 형태로 된 하나 이상의 번역을 가질 수 있기 때문에, 각각의 후보 세그먼테이션도 또한 제 2 형태로 된 하나 이상의 번역을 가질 수 있다.
번역 모듈(330)은 입력 쿼리(310)의 각각의 후보 세그먼테이션에 근거하여 입력 쿼리(310)에 대한 후보 번역들을 발생시키기 위해 다양한 머신 번역 기법들을 사용할 수 있다. 예를 들어, 번역 모듈은 온라인 머신 번역 서비스 혹은 다중-언어 사전을 이용할 수 있다. 일부 구현예들에서, 번역 모듈(330)은 입력 쿼리(310)의 후보 세그먼테이션들에 근거하여 입력 쿼리(310)를 번역하기 위해 특수 사전(예를 들어, CLS 사전(340))을 이용할 수 있다. CLS 사전(340)은 또 다른 사전(예를 들어, 온라인 사전), 온라인 배포 정보, 그리고 (제 1 언어로 된 단어들 혹은 어구들과 이들의 대응하는 제 2 언어로 된 번역들로 구성되는 번역 쌍들을 제공하는) 세미-구조화된 웹 페이지(semi-structured web pages) 중 적어도 하나에 근거하여 생성된 다수의 엔트리(entry)들을 포함한다.
번역 모듈(330)이 후보 세그먼테이션들 각각에 근거하여 입력 쿼리(310)에 대한 후보 번역들을 발생시킨 이후에, 번역 모듈(330)은 후보 번역들을 정제 모듈(350)에 제공할 수 있다. 정제 모듈(350)은 후보 번역들을 가능성 있는 제 2 입력 제안들(예를 들어, 교차-언어 쿼리 제안들)로서 평가하기 위한 것이다. 정제 모듈(350)은 이러한 평가의 결과에 근거하여, 입력 쿼리(310)의 정확한 번역들일 뿐만 아니라 입력 쿼리(310)와 동일한 주제에 관한 교차-언어 콘텐츠를 검색하기 위해 유효한 검색 쿼리들인 하나 이상의 후보 번역들(예를 들어, 한 개의 후보 번역)을 식별할 수 있다.
번역 모듈(320)에 의해 생성된 후보 번역들을 평가하는 경우, 정제 모듈(350)은 하나 이상의 쿼리 로그들에 저장된 정보에 의존할 수 있다. 쿼리 로그들은 사용자들에 의해 이전에 검색 엔진에 제출된 쿼리들을 저장한다. 일부 구현예들에서, 검색 엔진은 서로 다른 도메인 명칭을 사용하여 서로 다른 지역 혹은 지리적 영역에 대한 검색 인터페이스들을 제공할 수 있다(예를 들어, 영국에 대해서는 www.search.com.uk; 홍콩에 대해서는 www.search.com.hk; 프랑스에 대해서는 www.search.com.fr, 등). 따라서, 쿼리 로그들은, 지리적 영역 혹은 나라별로 나누어질 수 있고 그리고/또는 서로 다른 지리적 영역 혹은 나라와 공통적으로 관련된 언어별로 나누어질 수 있다.
도 3에 제시된 바와 같이, 소스 언어 쿼리 로그(370)는, 제 1 형태(예를 들어, 제 1 언어 및 관련된 표기 체계)로 표기된 사용자 쿼리들을 저장하고, 타겟 언어 쿼리 로그(360)는 제 2 형태(예를 들어, 제 2 언어 및 관련된 표기 체계)로 표기된 사용자 쿼리들을 저장한다. 일부 구현예들에서, 각각의 쿼리 로그는 또한, 쿼리 로그 내에서 각각의 사용자-제출 검색 쿼리에 대한 각각의 쿼리 빈도를 나타내는 데이터를 포함한다. 사용자-제출 검색 쿼리의 쿼리 빈도는 소정의 시간 동안 제출된 검색 쿼리의 쿼리 카운트일 수 있으며, 또는 쿼리 로그에 누적된 검색 쿼리의 총 쿼리 카운트일 수 있다. 일부 구현예들에서, 쿼리 빈도는 갱신 인자(freshness factor)에 의해 조정될 수 있고, 그리고 쿼리 로그에 최근에 나타났지만 짧은 시간 동안 쿼리 카운트가 급격히 상승된 것으로 관측된 검색 쿼리에 대해서는 그 쿼리 빈도에 있어서 부스트(boost)(예를 들어, 일(unity)보다 큰 승수(multiplier))가 부여될 수 있다.
아래의 예에서 더 상세히 설명되는 바와 같이, 세그먼테이션 모듈(320)은 쿼리(310)의 세그먼테이션들을 발생시키기 위해 쿼리 로그들에 저장된 정보에 액세스할 수 있다. 정제 모듈(350)은 세그먼테이션 품질, 번역 품질을 평가할 뿐만 아니라 입력 쿼리(310)에 대한 교차-언어 쿼리 제안으로서의 후보 번역들의 유효성을 평가하기 위해 쿼리 로그들에 저장된 정보에 액세스할 수 있다.
정제 모듈(350)이 입력 쿼리(310)의 서로 다른 후보 번역들을 평가하는 것을 끝낸 이후, 정제 모듈(350)은 입력 쿼리(310)에 대한 가장 적합한 쿼리 번역으로서 후보 쿼리 번역들 중 하나(예를 들어, 번역(380))를 식별할 수 있고, 식별된 후보 쿼리 번역(380)을 교차-언어 쿼리 제안으로서 제안 서비스 모듈(예를 들어, 도 1에서의 제안 서비스 모듈(125))을 통해 사용자에게 다시 제공할 수 있다. 교차-언어 쿼리 제안은 그 다음에, 제 1 쿼리 제안들과 제 2 쿼리 제안들의 리스트로 된 쿼리 제안들의 쌍으로서 입력 쿼리(310)와 함께 제시될 수 있다.
일부 구현예들에서, 식별된 쿼리 제안들의 쌍은 인덱스(index)에 저장될 수 있고, 이 경우 인덱스 내의 각각의 엔트리는, 서로 간의 번역들임과 아울러 그 각각의 언어들로 된 동일한 주제에 관한 콘텐츠를 검색함에 있어 유효한 사용자-제출 모국어 쿼리들인 쿼리 제안들의 쌍을 포함한다. 이러한 인덱스가 발생된 이후, 제 1 언어 입력 제안에 대한 교차-언어 쿼리 제안은 온더플라이(on the fly)로 도출되는 것이 아니라, 인덱스 내에서 검색될 수 있다.
예시적 목적으로, 서브시스템(300)의 동작은 아래에 제시되는 예시적 시나리오 하에서 상세히 논의되는바, 이러한 예시적 시나리오에서 제 1 언어는 중국어이고, 제 2 언어는 영어이며, 입력 쿼리(310)는 영어로 "travel destination"의 의미를 갖는 중국어 문자들의 시퀀스 "旅游目的地"이다.
입력 쿼리(310) "旅游目的地"를 수신하는 경우(여기서, "旅游目的地"는 검색 엔진 웹 페이지를 통해 사용자에 의해 입력된 쿼리 입력 "旅"에 응답하여 발생된 일차 언어 쿼리 제안임), 세그먼테이션 모듈(320)은 입력 쿼리(310) "旅游目的地"를 세그먼트들의 시퀀스로 분할함으로써 하나 이상의 고유한 후보 세그먼테이션들을 발생시킨다. 입력 쿼리 "旅游目的地"에서의 분할 포인트(dividing point)들의 위치에 따라, 서로 다른 후보 세그먼테이션들이 생성될 수 있다.
일부 구현예들에서, 후보 세그먼테이션들은 입력 쿼리(310)의 연속하는 문자들의 모든 가능한 조합들을 열거함으로써 획득될 수 있다. 예를 들어, "旅游目的地"는 다음과 같이 세그먼트들의 고유한 시퀀스들로 세그먼트화될 수 있다: (1) "旅, 游, 目, 的, 地"; (2) "旅游, 目, 的, 地"; (3) "旅游目, 的, 地"; (4) "旅游目的, 地"; (5) "旅游目的地"; (6) "旅, 游目, 的, 地"; (7) "旅, 游目的, 地"; (8) "旅, 游目的地"; (9) "旅, 游, 目的, 地"; (10) "旅, 游, 目的地"; (11) "旅游, 目的地"; (12) "旅游, 目, 的地"; (13) "旅游, 目的, 地"; 등.
일부 구현예들에서, 세그먼테이션 모듈(320)은 또한, 특정 세그먼테이션이 CLS 사전(340)에서 찾을 수 없는 세그먼트들을 생성했는지 여부를 결정하기 위해 CLS 사전(340)을 참조할 수 있다. 입력 쿼리(310)를 세그먼트화하는 특정 방식이 CLS 사전(340)에서 찾을 수 없는 (제외어들인 세그먼트들 이외의) 세그먼트들을 생성한 경우, 세그먼테이션 모듈(320)은 입력 쿼리(310)를 세그먼트화하는 이러한 방식이 부적합한 세그먼테이션를 생성한다고 결정할 수 있고, 입력 쿼리(310)를 세그먼트화하는 이러한 방식에 근거하는 후보 세그먼테이션의 발생을 피할 수 있다. 예를 들어, 만약 세그먼트 "游目的"을 CLS 사전(340)에서 찾을 수 없다면, 세그먼테이션 모듈(320)은 입력 쿼리 "旅游目的地"에 대한 후보 세그먼테이션으로서 세그먼테이션 "旅, 游目的, 地"를 제거할 수 있다.
일부 구현예들에서, 세그먼테이션 모듈(320)은 또한, 중국어와 관련된 쿼리 로그(예를 들어, 소스 언어 쿼리 로그(370))를 참조한다. 입력 쿼리를 세그먼트화하는 특정 방식이 중국어와 관련된 쿼리 로그에 없는 세그먼트들을 생성한 경우, 세그먼테이션 모듈(320)은 입력 쿼리(310)를 세그먼트화하는 이러한 방식이 부적합한 세그먼테이션을 생성한다고 결정할 수 있고, 입력 쿼리를 세그먼트화하는 이러한 방식에 근거하는 후보 세그먼테이션의 발생을 피할 수 있다. 예를 들어, 만약 세그먼트 "游目的"을 소스 언어 쿼리 로그(370)에서 찾을 수 없다면, 세그먼테이션 모듈(320)은 입력 쿼리 "旅游目的地"에 대한 후보 세그먼테이션으로서 세그먼테이션 "旅, 游目的, 地"를 제거할 수 있다.
일부 구현예들에서, 세그먼테이션 모듈(320)은 또한, 특정 세그먼테이션이 쿼리 로그에 존재하는지 여부를 알아내기 위해 중국어와 관련된 쿼리 로그를 참조할 수 있다. 특정 세그먼테이션이 중국어의 쿼리 로그에 존재한다면, 이러한 특정 세그먼테이션은 중국어로 된 입력 쿼리(310)의 적합한 세그먼테이션일 확률이 매우 높다. 예를 들어, 만약 "旅游目 的地"가 많은 사용자들에 의해 검색 쿼리로서 입력되었고 소스 언어 쿼리 로그(370)에 로그(log)되었다면, 세그먼테이션 모듈(320)은 "旅游, 目的地"가 입력 쿼리 "旅游目的地"의 품질 높은 후보 세그먼테이션이라고 결정할 수 있다.
일부 구현예들에서, 만약 특정 세그먼테이션이 제 1 언어의 쿼리 로그에서 사용자-제출 검색 쿼리로서 발견된다면, 세그먼테이션 모듈(320)은 그 특정 후보 세그먼테이션과 관련된 사용자-제출 검색 쿼리의 쿼리 빈도를 기록할 수 있고, 이에 따라 정제 모듈(350)은 이러한 쿼리 빈도를 사용하여 그 특정 세그먼테이션의 세그먼테이션 품질을 평가할 수 있게 된다. 쿼리 빈도 혹은 쿼리 카운트가 더 높다는 것은 세그먼테이션 품질이 더 높은 품질임을 표시한다. 일부 구현예들에서, 쿼리 빈도는 사용자-제출 검색 쿼리의 갱신에 근거하는 조정된 쿼리 빈도일 수 있다.
CLS 사전(340)에서 발견되지 않은 (제외어들인 세그먼트들 이외의) 세그먼트들을 포함하는 세그먼테이션들을 제거한 이후, 세그먼테이션 모듈(320)이 다음과 같은 고유한 후보 세그먼테이션들: (1) "旅游, 目, 的, 地"; (2) "旅游, 目的, 地"; 그리고 (3) "旅游, 目的地"를 생성한다고 가정한다.
후보 세그먼테이션들 각각에 대해, 세그먼테이션 모듈(320)은 후보 세그먼테이션이 임의의 제외어들을 포함하고 있는지 여부를 결정한다. 일부 구현예들에서는, 제외어인 임의의 세그먼트를 후보 세그먼테이션이 포함하고 있는지 여부를 결정하기 위해 소정의 제외어 리스트가 참조될 수 있다. 영어로 된 제외어의 예는 "the", "a", "to", "of" 등을 포함한다. 중국어로 된 제외어의 예는 "的", "了", "
Figure 112014007343286-pct00029
" 등을 포함한다. 일부 구현예들에서, 세그먼테이션 모듈(320)은 각각의 후보 세그먼테이션으로부터 제외어들로서 식별된 세그먼트들을 제거할 수 있고, 이에 따라 후보 세그먼테이션은 CLS 사전에서 발견되는 단어들인 세그먼트들만을 포함하게 된다.
예를 들어, 세그먼테이션 (1)에서, 제외어 "的"이 제거된 이후, 후보 세그먼테이션 (1)은 "旅游, 目, 地"가 된다. CLS 사전(340)은 번역 쌍들, 예를 들어, "旅游: travel", "旅游: trip", "目: eye", "目: catalogue", "地: earth", 및 "地: ground"를 포함한다. 달리 말하면, 이후에 세그먼트들 "旅游", "目", 및 "地"만이 번역 모듈(330)에 의해 번역될 것이다.
일부 구현예들에서, 세그먼테이션 모듈(320)은 후보 세그먼테이션로부터 제거된 제외어들의 개수를 기록할 수 있고, 이에 따라 그 개수는 후보 세그먼테이션의 품질을 결정함에 있어서, 아울러 그 세그먼테이션의 세그먼트들을 번역함으로써 생성된 후보 번역들의 품질을 결정함에 있어서 하나의 인자로서 정제 모듈(350)에 의해 사용될 수 있게 된다. 일반적으로, 더 적은 개수의 제외어들이 제거되는 경우, 최종 세그먼테이션 및 관련된 후보 번역들은 더 좋은 품질을 갖는 것으로 고려된다.
유사하게, 세그먼테이션 (2) "旅游, 目的, 地"에서는 어떠한 제외어들도 세그먼트들에서 식별되지 않는다. 따라서, 후보 세그먼테이션은 여전히, "旅游, 目的, 地"이다. 어떠한 제외어들도 제거되지 않았기 때문에, 이러한 후보 세그먼테이션은 입력 쿼리의 모든 문자들을 포함하고 있고, 따라서 입력 쿼리(310)의 파티션이다. 모든 조건이 동일한 경우, 파티션은 하나 이상의 제외어들이 제거된 후보 세그먼테이션보다 더 높은 세그먼테이션 품질을 갖는 것으로 고려된다. CLS 사전(340)은 번역 쌍들, 예를 들어, "旅游: travel", "旅游: trip", "目的: aim", "目的: goal", "目的: purpose", "地: earth" 및 "地: ground"를 포함한다. 따라서, 이러한 후보 세그먼테이션에 근거하여 입력 쿼리(310)의 후보 번역들을 발생시키기 위해 세그먼트들 "旅游", "目的" 및 "地"가 번역 모듈(330)에 의해 번역될 것이다.
세그먼테이션 (3)에서, 세그먼트들 "旅游" 및 "目的地"는 모두 CLS 사전(340)에서 발견되고, 세그먼테이션 (3)은 제외어인 어떠한 세그먼트도 포함하지 않는다. 따라서, 세그먼테이션 (3)도 또한 입력 쿼리(310)의 파티션이다. CLS 사전(340)은 이러한 두 개의 세그먼트들에 대한 번역 쌍들, 예를 들어, "旅游: travel", "旅游: trip" 및 "目的地: destination"을 포함한다. 따라서, 이러한 후보 세그먼테이션에 근거하여 입력 쿼리(310)의 후보 번역들을 발생시키기 위해 세그먼트들 "旅游" 및 "目的地"가 번역 모듈(330)에 의해 사용될 것이다.
일부 구현예들에서, 세그먼테이션 모듈(320)은 또한, 세그먼테이션 품질을 결정하기 위해 제 1 언어와 관련된 쿼리 로그(예를 들어, 소스 언어 쿼리 로그(370)) 내의 정보를 사용할 수 있다. 예를 들어, 사용자들이 검색 엔진을 사용하여 검색을 수행하는 경우, 때에 따라 일부 사용자들은 적합한 세그먼테이션들을 이미 제시한 형태로 된 검색 쿼리들을 입력할 수 있는 반면, 다른 사용자들은 세그먼트화되지 않은 검색 쿼리들을 입력할 것이다. 예를 들어, 검색 쿼리 "旅游目的地"에 대해, 일부 사용자는 검색 엔진에 이러한 쿼리를 입력할 때 "旅游"와 "目的地" 사이에 여백을 삽입할 수 있다. 따라서, 후보 세그먼테이션 "旅游, 目的地"는 소스 언어 쿼리 로그에서 발견될 것이다. 만약 쿼리 "旅游, 目的地"의 쿼리 빈도가 높다면, 후보 세그먼테이션 "旅游, 目的地"는 높은 세그먼테이션 품질 점수를 받을 수 있다.
일부 구현예들에서, 세그먼테이션 모듈(320)은 후보 세그먼테이션을 채점하지 않고 단지 후보 세그먼테이션과 관련된 쿼리 빈도를 기록하며, 이에 따라 후보 세그먼테이션의 세그먼테이션 품질을 결정하기 위해 이러한 쿼리 빈도는 정제 모듈에 의해 사용될 수 있게 된다. 일부 구현예들에서, 세그먼테이션 품질의 채점시에 쿼리 빈도는 후보 세그먼테이션으로부터 제거된 제외어들의 개수보다 더 큰 가중치를 받는다.
또 다른 예로서, 쿼리 로그에서 높은 쿼리 빈도로 발견될 확률이 높은 또 다른 쿼리는 (영어로 "travel purpose"를 의미하는) "旅游 目的"이다. 이러한 특정 세그먼테이션은 예를 들어, 후보 세그먼테이션 "旅游, 目的, 地"에서 발견될 수 있다. 일부 구현예들에서, 이러한 부분적 매칭은 후보 세그먼테이션 "旅游, 目的, 地"가 적어도 부분적으로 적합함을 결정하는데 이용될 수 있다. 일부 구현예들에서, "地"는 때때로 "的"과 유사한 방식으로 사용되기 때문에, 문자 "地"는 제외어인 것으로 고려될 수 있으며 후보 세그먼테이션로부터 제거될 수 있다. 따라서, 이러한 구현예들에서, "旅游 目的"은 소스 언어 쿼리 로그(370)로부터의 데이터에 따른 적합한 세그먼테이션인 것으로 고려될 수 있다. 그러나, 후보 세그먼테이션 "旅游 目的"의 전체 세그먼테이션 품질은 후보 세그먼테이션 "旅游, 目的地"보다 더 낮은 점수를 갖는데, 왜냐하면 후보 세그먼테이션 "旅游 目的"은 제거된 하나의 제외어를 갖지만, 후보 세그먼테이션 "旅游, 目的地"는 제거된 어떠한 제외어도 갖지 않기 때문이다.
앞서의 동작들에 근거하여, 세그먼테이션 모듈(320)은 쿼리(310) "旅游目的地"를 세 개의 고유한 후보 세그먼테이션들 (1) "旅游, 目的, 地"; (2) "旅游, 目, 地"; 그리고 (3) "旅游, 目的地"로 세그먼트화하고, 이들을 번역을 위해 번역 모듈(330)로 전송하고 평가를 위해 정제 모듈(350)로 전송한다.
세 개의 고유한 후보 세그먼테이션들의 수신시, 번역 모듈(330)은 CLS 사전(340)에 포함된 번역 쌍들에 근거하여 이들을 영어로 된 다양한 번역들로 번역한다. 일부 구현예들에서, 이러한 번역은 최종 번역들이 기존의 용법을 따르는지 아니면 전체적으로 의미를 갖는지에 상관없이 후보 세그먼테이션에서의 각각의 세그먼트의 직역에 근거한다. 예를 들어, 후보 세그먼테이션 "旅游, 目, 地"에 관하여, 번역 모듈(330)은 이것의 최종 번역들 중 일부 또는 모두가 합당한 의미를 갖지 않을지라도 혹은 일상생활에서 말하거나 표기할 때의 관습적 용법에서 나타나는 것이 않일지라고, 이들을 "trip eye earth", "trip catalogue earth", "travel eye ground" 및 "travel catalogue ground" 등을 포함하는 후보 번역들로 번역할 수 있다.
일부 구현예들에서, 번역 모듈(330)은 예를 들어, 다른 세그먼트들의 의미와는 맞지 않는 의미를 갖는 세그먼트들을 생략함으로써, 합당한 번역을 도출하기 위해 종래의 번역 기법들을 사용할 수 있지만, 다른 구현예들에서는, 후보 번역들이 후보 세그먼테이션의 세그먼트들에 엄격히 대응하도록 하는 것이 바람직하다. 일상생활에서 말하거나 표기할 때의 관습적 용법을 완벽하게 따르지 않는 번역들을 유지시키는 이유는, 검색 엔진에 제출되는 검색 쿼리들이 종종 일반적으로 사람들이 또 다른 사람에게 말하거나 혹은 표기하는 방식과는 다르게 구조화되기 때문이다. 따라서, 일상생활에서 말하거나 표기할 때의 관례적 용법으로부터 약간 벗어난 후보 번역임에도 불구하고 이러한 후보 번역은 검색 쿼리로서 유효할 수 있다.
일부 구현예들에서, 번역 모듈(330)이 후보 세그먼테이션들을 번역할 때, 최종 번역은 제 2 언어로 된 제외어들을 포함할 수 있다. 예를 들어, 후보 세그먼테이션 "旅游, 目的"을 번역하기 위해 종래의 머신 번역 서비스가 사용되는 경우, 최종 번역은 "the purpose of travel"과 같은 기존의 용법을 따르는 어구일 수 있다. 번역은 두 개의 제외어 "the"와 "of"를 포함하고 있으며, 두 개의 단어 "purpose"와 "travel"의 순서는 두 개의 단어 "旅游"와 "目的"의 순서와 비교해 볼 때 뒤바뀌어 있다. 일부 구현예들에서, 번역 모듈은 후보 번역으로부터 제외어들을 제거할 수 있고, 번역에서의 용어들의 순서를 뒤바꿀 수 있는데, 이에 따라 후보 번역은 어떠한 제외어도 포함하지 않게 되며 용어들의 순서는 후보 세그먼테이션에서의 용어들의 순서에 대응하게 된다. 일부 구현예들에서 단어들의 순서는 무시된다.
예를 들어, 후보 세그먼테이션 "旅游, 目的"에 대해서, 번역 모듈(330)은 이것을 "the purpose of travel"로 번역할 수 있고, 제외어 "the"와 "of"가 제거되고 단어 순서가 뒤바뀐 이후에 이것은 결과적으로 "travel purpose"로 번역된다. 제외어들을 제거하고 용어들의 순서를 뒤바꾸거나 무시하는 한 가지 이유는, 제 2 언어와 관련된 쿼리 로그(예를 들어, 타겟 언어 쿼리 로그(360))에서 발견되는 쿼리들에 대응시켜 후보 번역을 평가할 때, 쿼리 로그 내의 쿼리들은 제외어들이 이미 제거되어 있기 때문이다.
후보 세그먼테이션들의 번역이 완료되면, 결과적으로 생성된 하나 이상의 후보 번역들은 평가를 위해 정제 모듈(350)로 집합적으로 전달된다. 이러한 평가는, 후보 번역이 도출되는 기반인 세그먼테이션의 품질, 그리고 제 2 언어로 된 검색 쿼리로서의 번역의 품질에 적어도 근거한다. 본 명세서에서 앞서 간략하게 설명된 바와 같이, 후보 세그먼테이션의 세그먼테이션 품질은 후보 세그먼테이션으로부터 제거된 제외어들의 개수에 근거하여 결정될 수 있다. 모든 조건이 동일한 경우, 제거된 제외어들의 개수가 더 많다는 것은 세그먼테이션 품질 점수가 더 낮다는 것에 대응한다. 추가적으로 혹은 대안적으로, 만약 후보 세그먼테이션이 제 1 언어의 쿼리 로그(예를 들어, 소스 언어 쿼리 로그(370))에서 발견될 수 있다면, 그 후보 세그먼테이션에 대해서는 세그먼테이션 품질 점수에 있어 부스트가 부여될 수 있다. 세그먼테이션 품질 점수에 부여된 부스트의 양은 특정 후보 세그먼테이션과 매칭되는 쿼리와 관련된 쿼리 빈도에 근거할 수 있다. 더 높은 쿼리 빈도에 대해 더 큰 부스트가 부여될 수 있다. 일부 구현예들에서, 이러한 매칭은 완벽한 매칭일 것이 요구된다(즉, 세그먼트가 어떠한 수정도 없이 쿼리 로그에서 완성된 쿼리로서 나타나는 것). 일부 구현예들에서는, 부분적 매칭도 매칭되는 것으로 고려될 수 있다.
일부 구현예들에서, 검색 쿼리로서의 후보 번역의 품질은, 2 언어와 관련된 쿼리 로그(예를 들어, 타겟 언어 쿼리 로그(360))에서 후보 번역이 발견될 수 있는지 여부에 근거하여 결정될 수 있는바, 만약 발견될 수 있다면, 쿼리 로그에서 그매칭되는 쿼리와 관련된 쿼리 빈도에 근거하여 결정될 수 있다. 쿼리 빈도가 더 높다는 것은 후보 번역에 대한 번역 품질이 더 높다는 것과 관련될 수 있다. 일부 구현예들에서는, 완벽한 매칭이 요구된다. 일부 구현예들에서는, 부분적 매칭이 또한 고려될 수 있다.
일부 구현예들에서, 정제 모듈(350)은 세그먼테이션 모듈(320)과 번역 모듈(330)로부터 후보 번역들을 채점하기 위해 사용되는 데이터(예를 들어, 쿼리 빈도, 제거된 제외어들의 개수, 쿼리 로그들에서의 쿼리들과 매칭되는 매칭의 정도)를 획득할 수 있다. 일부 구현예들에서, 정제 모듈(350)은 이러한 데이터의 일부를 쿼리 로그들(360 및 370)로부터 직접적으로 획득할 수 있다.
도 4는 도 3에 제시된 바와 같은 예시적인 정제 모듈(350)의 블록도이다. 도 4에 예시된 바와 같이, 정제 모듈(350)은 세그먼테이션 평가 서브모듈(segmentation evaluation submodule)(410), 번역 평가 서브모듈(translation evaluation submodule)(420) 및 채점 서브모듈(scoring submodule)(430)을 포함한다. 다양한 구현예들에서, 정제 모듈(350)의 서브모듈들은 정제 모듈(350) 내에서 서로 통신 및 상호작용할 수 있고, 그리고/또는 정제 모듈(350) 외부의 다른 모듈들과 통신 및 상호작용할 수 있다.
도 3에서의 특정 예 "旅游目的地"를 계속 사용하면, 하나 이상의 고유한 후보 세그먼테이션들 각각의 후보 번역 각각에 대해, 번역 평가 서브모듈(420)은 타겟 언어 쿼리 로그(예를 들어, 도 3에서의 쿼리 로그(360))로부터 데이터를 검색함으로써 타겟 언어 쿼리 로그(예를 들어, 영어 쿼리 로그)에서 영어로 표기된 완성된 쿼리로서의 후보 번역의 발생 빈도를 결정할 수 있다. 예를 들어, 후보 세그먼테이션 "旅游, 目, 地"에 대한 후보 번역 "travel eye ground"에 관해서, 비록 이러한 번역이 타겟 언어 쿼리 로그에 존재할지라도, 쿼리 "travel eye ground"와 관련된 쿼리 빈도는 매우 작거나 혹은 무시가능하다. 그러나, 후보 세그먼테이션 "旅游, 目的地"에 대한 후보 번역 "travel destination" 또는 "trip destination"에 관해서, 그 각각은 상대적으로 큰 쿼리 빈도(예를 들어, 총 쿼리 카운트: 1000만, 혹은 월 평균 쿼리 카운트: 1만)로 타겟 쿼리 로그에서 영어로 된 쿼리로서 발견될 수 있다. 번역 평가는 각각의 후보 번역에 대한 서브점수(subscore) 혹은 관련된 쿼리 빈도를 채점 서브모듈(430)에 제공할 수 있다. 그 다음에, 채점 모듈(430)은 타겟 쿼리 로그(160)에서 완성된 쿼리로서의 각각의 후보 번역의 발생 횟수(이것은 실제 쿼리 빈도 혹은 조정된 쿼리 빈도로서 나타내어짐)에 근거하여 후보 번역들을 평가할 수 있다.
세그먼테이션 평가 서브모듈(410)은 하나 이상의 고유한 후보 세그먼테이션들 각각에 대한 세그먼테이션 품질의 각각의 정도를 결정한다. 본 명세서에서 앞서 설명된 바와 같이, 이러한 결정은, 후보 세그먼테이션의 세그먼트들의 각각의 시퀀스로부터 얼마나 많은 제외어들이 제거되었는지에 적어도 부분적으로 근거할 수 있고 그리고/또는 소스 언어 쿼리 로그(370)에서 중국어로 표기된 완성된 쿼리로서의 후보 세그먼테이션의 각각의 발생 빈도(예를 들어, 이것은 실제 쿼리 빈도 혹은 조정된 쿼리 빈도로서 나타내어짐)에 적어도 부분적으로 근거할 수 있다. 세그먼테이션 평가 모듈(410)은 이러한 데이터를 세그먼테이션 모듈(320)로부터 획득할 수 있거나 혹은 소스 언어 쿼리 로그(370)(예를 들어, 중국어 쿼리 로그)로부터 직접적으로 획득할 수 있다.
"旅游目的地"의 예를 계속 사용하면, 후보 세그먼테이션 "旅游, 目, 地"는 제거된 하나의 제외어(즉, "的")를 가지며, 후보 세그먼테이션들 "旅游, 目的, 地" 및 "旅游, 目的地"는 제거된 제외어를 갖지 않는다. 따라서, 세그먼테이션 평가 서브모듈(410)은 후보 세그먼테이션 "旅游, 目, 地"에 대한 세그먼테이션 품질에 대해서, 다른 두 개의 세그먼테이션들보다 더 작은 기본 점수(base score)를 부여할 수 있다. 채점 서브모듈(430)은 후보 세그먼테이션들로부터 도출된 후보 번역들을 평가할 때 이러한 기본 점수를 사용할 수 있다.
추가적으로, 세그먼테이션 평가 모듈(410)은 소스 언어 쿼리 로그(예를 들어, 중국어 쿼리 로그)에서 제 1 언어로 표기된 완성된 쿼리로서의 후보 세그먼테이션의 각각의 발생 빈도를 결정하는바, 만일 세그먼테이션 "旅游 目的地"가 중국어 쿼리 로그에서 세그먼테이션들 "旅游 目 地" 및 "旅游 目的 地"보다 쿼리로서 더 빈번하게 입력된다면, 후보 세그먼테이션 "旅游, 目的地"는 후보 세그먼테이션들 "旅游, 目, 地" 및 "旅游, 目的, 地"보다 세그먼테이션 품질 점수에 있어 더 높은 부스트를 부여받을 수 있다.
일부 구현예들에서, 세그먼테이션 평가 서브모듈(410)은 세그먼테이션 모듈(320)로부터 후보 세그먼트들의 세그먼테이션 품질을 평가하기 위한 데이터를 획득할 수 있다. 일부 구현예들에서, 세그먼테이션 평가 서브모듈(410)은 이러한 데이터의 일부를 소스 언어 쿼리 로그(370)로부터 직접적으로 획득할 수 있다.
번역 품질 평가 서브모듈(420) 및 세그먼테이션 평가 모듈(410)이 각각의 채점을 완료한 이후, 채점 서브모듈(430)은 번역 평가 모듈(420) 및 세그먼테이션 평가 모듈(410)에 의해 생성된 서브점수들을 결합시킴으로써 각각의 후보 번역에 대한 최종 점수를 계산할 수 있다. 다양한 구현예들에서, 서로 다른 가중치들이 번역 평가 모듈(420)에 의해 생성된 서브점수들 및 세그먼테이션 평가 모듈(410)에 의해 생성된 서브점수들과 관련될 수 있다.
일부 구현예들에서, 채점 서브모듈(430)은, 타겟 언어 쿼리 로그(360)에서 완성된 쿼리로서의 후보 번역의 발생 빈도, 소스 언어 쿼리 로그(370)에서 후보 번역과 관련된 세그먼테이션의 발생 빈도, 그리고 세그먼테이션으로부터 제거된 제외어들의 개수에 직접적으로 근거하여 점수를 결정할 수 있다. 예시적 목적으로, 발생 빈도의 일 실시형태에 있어서, 후보 번역 "travel destination"은 다른 후보 번역들과 비교해서 타겟 언어 쿼리 로그(360)에서 가장 높은 쿼리 빈도와 관련된 것으로 발견된다. 동시에, 번역 "travel destination"와 관련된 후보 세그먼테이션("旅游, 目的地")은 다른 두 개의 후보 세그먼테이션들과 비교해 가장 높은 세그먼테이션 품질을 갖는데, 왜냐하면 제거된 제외어를 가지고 있지 않을 뿐만 아니라 소스 언어 쿼리 로그(370)에서 다른 두 개의 세그먼테이션들과 비교해 완성된 쿼리로서 가장 높은 쿼리 빈도와 관련되어 있기 때문이다. 이에 따라, 채점 서브모듈(430)은 후보 번역 "travel destination"에 가장 높은 점수를 할당할 것이다. 마찬가지로, 채점 서브모듈(330)은 다른 후보 번역들에게 더 낮은 점수들을 할당할 수 있다.
일부 구현예들에서, 채점 모듈(430)은 후보 번역들 각각에 대한 최종 점수를 도출하고, 그 각각의 최종 점수들에 따라 후보 번역들의 순위를 정한다. 마지막으로, 정제 모듈(350)은 일차 언어 쿼리 제안 "旅游目的地"에 대한 교차-언어 쿼리 제안으로서 가장 높은 최종 점수를 갖는 후보 번역 "travel destination"을 출력한다.
일부 구현예들에서, 앞서 설명된 프로세스는 제안 모듈에 의해 발생된 각각의 일차 언어 쿼리 제안에 대해 반복될 수 있고, 그리고 일차 언어 쿼리 제안들 각각에 대한 대응하는 교차-언어 쿼리 제안이 식별될 수 있다. 일부 구현예들에서는, 임계 점수가 확립될 수 있는바, 이에 따라 일차 언어 쿼리 제안의 어떠한 후보 번역도 임계 점수를 넘지 않는 경우 일차 언어 쿼리 제안에 대한 어떠한 교차-언어 쿼리 제안도 제공되지 않게 된다. 결과적으로 생성된 교차-언어 쿼리 제안은 도 2에 제시된 바와 같이 드랍 다운 메뉴를 통해 사용자에게 제시될 수 있다. 일부 구현예들에서는, 결과적으로 생성된 교차-언어 쿼리 제안들은 다른 방식으로(예를 들어, 검색 인터페이스 상의 테이블 내에서) 사용자에게 제시될 수 있다.
검색 인터페이스 내에 제시된 교차-언어 쿼리 제안, 예를 들어 "travel destination"을 선택 혹은 클릭(click)함으로써, 검색 쿼리 "travel destination"이 검색 엔진에 전달되고, 검색 엔진은 검색 쿼리 "travel destination"에 근거하여 식별된 검색 결과들을 사용자에게 리턴한다.
앞서의 설명은 단지 예시적 목적을 가지며 본 발명의 기술분야에서 숙련된 자는 본 명세서에서 설명된 기법들의 범위 및 사상을 벗어남이 없이 다양한 조작 및 수정을 행할 수 있음에 유의해야 한다. 예를 들어, 세그먼테이션의 과정 동안, 하나 이상의 고유한 후보 세그먼테이션들에서의 제외어들을 더 잘 식별하기 위해 그리고 후속 번역을 위한 후보 세그먼테이션들로서 특정 세그먼테이션들을 배척하기 위해 다른 적절한 기준들이 사전에 확립될 수 있다. 추가적으로, 하나 이상의 후보 번역들이 교차-언어 쿼리 제안들로서 사용자들에게 제시될 수 있다. 일부 구현예들에서, 서로 다른 소스-타겟 언어 쌍들에 대한 쿼리 제안 쌍들의 데이터베이스 혹은 인덱스가 본 명세서에서 설명되는 방법들에 근거하여 시간 경과에 따라 확립될 수 있는바, 이에 따라 데이터베이스 혹은 인덱스 내에서 일차 언어 쿼리 제안에 근거하는 간단한 검색을 통해 대응하는 이차 언어 쿼리 제안에 도달할 수 있게 된다.
도 5는 쿼리의 후보 번역들을 평가하고 이러한 평가에 근거하여 교차-언어 쿼리 제안으로서 후보 번역들 중 하나를 제공하기 위한 예시적인 프로세스(500)를 나타낸 흐름도이다. 예시적인 프로세스(500)는 예를 들어, 도 1에 제시된 번역 서비스 모듈(130)의 하나 이상의 모듈들에 의해 수행될 수 있다.
프로세스(500)는 번역 모듈이 제 1 언어로 표기된 쿼리를 수신할 때 시작한다(510). 쿼리는 사용자에 의해 입력된 쿼리 입력에 응답하여 제안 모듈에 의해 발생된 일차 언어 쿼리 제안일 수 있다. 그 다음에, 프로세스(500)는 단계(520)로 진행한다. 단계(520)에서, 번역 모듈은 (예를 들어, 도 3에서의 세그먼테이션 모듈(320)에 의해 구현되는 바와 같은) 제 1 언어로 된 쿼리의 하나 이상의 고유한 후보 세그먼테이션들을 획득한다. 각각의 고유한 후보 세그먼테이션은 제 1 언어로 된 쿼리를 세그먼트화함으로써 생성된 세그먼트들의 각각의 시퀀스로 구성된다. 하나 이상의 고유한 후보 세그먼테이션들 각각에 대해, 번역 서비스 모듈은, 단계(530)에서, (예를 들어, 도 4에서의 세그먼테이션 평가 서브모듈(410)에 의해 구현되는 바와 같은) 고유한 후보 세그먼테이션에 대한 세그먼테이션 품질의 각각의 정도를 결정한다. 추가적으로, 단계(540)에서, 하나 이상의 고유한 후보 세그먼테이션들 각각에 대해, 번역 서비스 모듈은 후보 세그먼테이션의 세그먼트들의 각각의 시퀀스를 번역함으로써 제 2 언어로 된 하나 이상의 후보 번역들의 각각의 세트를 획득한다.
그 다음에, 하나 이상의 고유한 후보 세그먼테이션들 각각의 후보 번역 각각에 대해, 번역 서비스 모듈은, 단계(550)에서, (예를 들어, 번역 평가 서브모듈(420)에 의해 구현되는 바와 같은) 제 1 쿼리 로그에서(예를 들어, 타겟 언어 쿼리 로그)에서 제 2 언어로 표기된 완성된 쿼리로서의 후보 번역의 제 1 발생 빈도를 결정한다. 추가적으로, 하나 이상의 고유한 후보 세그먼테이션들 각각의 후보 번역 각각에 대해, 번역 서비스 모듈은, 단계(560)에서, (예를 들어, 도 4에서의 채점 서브모듈(430)에 의해 구현되는 바와 같은) 제 1 쿼리 로그에서 제 2 언어로 표기된 완성된 쿼리로서의 후보 번역의 제 1 발생 빈도, 그리고 후보 세그먼테이션에 대한 세그먼테이션 품질의 정도에 적어도 근거하여 후보 번역에 대한 각각의 점수를 결정한다.
단계(570)에서, 번역 서비스 모듈은 후보 번역의 각각의 점수들에 근거하여 쿼리에 대한 교차-언어 쿼리 제안으로서 후보 번역들 중 적어도 하나를 제공한다.
앞서의 예시적인 프로세스 및 다른 프로세스들의 다른 특징들은 예를 들어, 도 1 내지 도 4에 관한 본 명세서의 다른 부분에서 설명된다.
본 명세서에서 설명되는 주된 내용 및 기능적 동작들의 실시예들은 디지털 전자 회로 내에서 구현될 수 있거나, 혹은 컴퓨터 소프트웨어, 펌웨어, 혹은 하드웨어로 구현될 수 있는바, 여기에는 본 명세서에서 개시되는 구조들 및 그 구조적 등가물이 포함되며, 또는 이들의 하나 이상의 조합으로 구현될 수 있다. 본 명세서에서 설명되는 주된 내용의 실시예들은 하나 이상의 컴퓨터 프로그램물로서 구현될 수 있는바, 즉, 데이터 프로세싱 장치에 의한 실행을 위해 혹은 데이터 프로세싱 장치의 동작을 제어하기 위해 유형의 프로그램 캐리어 상에 인코딩되는 컴퓨터 프로그램 명령들의 하나 이상의 모듈들로서 구현될 수 있다. 유형의 프로그램 캐리어는 컴퓨터-판독가능 매체일 수 있다. 컴퓨터-판독가능 매체는 머신-판독가능 저장 디바이스, 머신-판독가능 저장 기판, 메모리 디바이스, 혹은 이들의 하나 이상의 조합일 수 있다.
용어 "데이터 프로세싱 장치"는 데이터를 프로세싱하기 위한 모든 장치, 디바이스 및 머신을 포괄하는바, 예를 들어, 여기에는 프로그래밍가능 프로세서, 컴퓨터, 또는 다중 프로세서 혹은 컴퓨터가 포함된다. 이러한 장치는, 하드웨어에 추가하여, 해당 컴퓨터 프로그램에 대한 실행 환경을 생성하는 코드를 포함할 수 있는바, 예를 들어, 프로세서 펌웨어, 프로토콜 스택, 데이터베이스 관리 시스템, 오퍼레이팅 시스템, 또는 이들의 하나 이상의 조합을 구성하는 코드를 포함할 수 있다.
프로그램, 소프트웨어, 소프트웨어 애플리케이션, 스크립트, 또는 코드로서 또한 알려진, 컴퓨터 프로그램은 컴파일링 혹은 해석된 언어들, 또는 선언 혹은 절차 언어들을 포함하는 임의 형태의 프로그래밍 언어로 기입될 수 있고, 이러한 프로그램은 임의의 형태로 배치될 수 있는바, 예를 들어, 독립 프로그램으로서 배치될 수 있거나 또는 모듈, 컴포넌트, 서브루틴, 혹은 컴퓨팅 환경에 사용하기에 적합한 다른 유닛으로서 배치될 수 있다. 컴퓨터 프로그램은 파일 시스템 내에서 파일에 반드시 대응할 필요는 없다. 프로그램은 다른 프로그램 또는 데이터(예를 들어, 마크업 언어 문서로 저장된 하나 이상의 스크립트)를 보유하는 파일의 일부에 저장될 수 있거나, 해당 프로그램 전용의 단일 파일에 저장될 수 있거나, 또는 다수의 조정된 파일들(예를 들어, 하나 이상의 모듈들, 서브-프로그램들, 또는 코드 부분을 저장하는 파일들)에 저장될 수 있다. 컴퓨터 프로그램은 하나의 사이트에 위치하거나 또는 다수의 사이트들에 걸쳐 분산되어 있는 그리고 통신 네트워크에 의해 상호연결된 다수의 컴퓨터들에서 실행되거나 또는 하나의 컴퓨터에서 실행되도록 배치될 수 있다.
본 명세서에서 설명되는 프로세스들 및 로직 흐름들은 입력 데이터에 작용하여 출력을 발생시킴으로써 기능을 수행하는 하나 이상의 컴퓨터 프로그램들을 실행시키는 하나 이상의 프로그래밍가능한 프로세서들에 의해 수행될 수 있다. 이러한 프로세스들 및 로직 흐름들은 또한, 특수 목적 로직 회로, 예를 들어, FPGA(Field Programmable Gate Array) 또는 ASIC(Application-Specific Integrated Circuit)에 의해 수행될 수 있고, 장치가 또한 이들 회로로서 구현될 수 있다.
컴퓨터 프로그램을 실행하는데 적합한 프로세서들은, 예를 들어, 일반 및 특수 목적 마이크로프로세서들 및 임의 종류의 디지털 컴퓨터의 임의의 하나 이상의 프로세서들을 포함한다. 일반적으로, 프로세서는 판독-전용 메모리 또는 랜덤 액세스 메모리 또는 이들 둘 모두로부터 명령 및 데이터를 수신한다. 컴퓨터의 본질적인 요소는 명령을 수행하기 위한 프로세서, 그리고 명령 및 데이터를 저장하기 위한 하나 이상의 메모리 디바이스이다. 일반적으로, 컴퓨터는 또한 데이터를 저장하기 위한 하나 이상의 대용량 저장 디바이스들, 예를 들어, 자기 디스크, 광자기 디스크, 또는 광디스크를 포함하거나, 또는 이들 디바이스로부터 데이터를 수신하거나 또는 이들 디바이스에 데이터를 전달하거나 또는 이들 디바이스에 이러한 두 가지 동작 모두를 수행하도록 동작가능하게 결합된다. 그러나, 컴퓨터는 이러한 디바이스들을 구비하지 않아도 된다. 더욱이, 컴퓨터는 또 하나의 다른 디바이스, 예를 들어, 단지 몇 가지 언급하면, 모바일 전화기, 개인 휴대 단말기(Personal Digital Assistant, PDA), 모바일 오디오 혹은 비디오 플레이어, 게임 콘솔(game console), 위성 위치확인 시스템(Global Positioning System, GPS) 수신기에 내장될 수 있다.
컴퓨터 프로그램 명령 및 데이터를 저장하는데 적합한 컴퓨터-판독가능 매체들은 모든 형태의 비휘발성 메모리, 미디어 및 메모리 디바이스들을 포함하는바, 여기에는 예를 들어, 반도체 메모리 디바이스, 예컨대, EPROM, EEPROM 및 플래시 메모리 디바이스들; 자기 디스크, 예컨대, 내부 하드 디스크 또는 탈착가능 디스크; 광자기 디스크; 그리고 CD-ROM 및 DVD-ROM 디스크가 포함된다. 이러한 프로세서 및 메모리는 특수 목적 로직 회로에 의해 보충될 수 있거나 혹은 특수 목적 로직 회로에 통합될 수 있다.
사용자와의 상호대화를 제공하기 위해, 본 명세서에 설명되는 주된 내용의 실시예들은 정보를 사용자에게 디스플레이하기 위한 디스플레이 디바이스, 예를 들어, CRT(Cathode Ray Tube) 또는 LCD(Liquid Crystal Display) 모니터, 그리고 사용자로 하여금 컴퓨터에 입력을 제공할 수 있게 하는 키보드 및 포인팅 디바이스(pointing device), 예를 들어, 마우스 또는 트랙볼을 구비하는 컴퓨터 상에서 구현될 수 있다. 다른 종류의 디바이스들이 또한 사용자와의 상호대화를 제공하기 위해 사용될 수 있으며; 예를 들어, 사용자에게 제공되는 피드백은 임의의 형태의 감각적 피드백, 예를 들어, 시각적 피드백, 청각적 피드백, 또는 촉각적 피드백일 수 있고; 그리고 사용자로부터의 입력은 음향적, 음성적, 또는 촉각적 입력을 포함하는 임의의 형태로 수신될 수 있다.
본 명세서에 설명되는 주된 내용의 실시예들은 컴퓨팅 시스템으로 구현될 수 있는바, 여기서 컴퓨팅 시스템은 백-엔드 컴포넌트(back-end component)를 예를 들어, 데이터 서버로서 포함하거나, 또는 미들웨어 컴포넌트(middleware component), 예를 들어, 애플리케이션 서버를 포함하거나, 또는 프런트-엔드 컴포넌트(front-end component), 예를 들어, 사용자가 본 명세서에 설명되는 주된 내용의 구현예와 상호대화할 수 있는 그래픽 사용자 인터페이스 또는 웹 브라우저를 구비하는 클라이언트 컴퓨터를 포함하며, 또는 이러한 백-엔드, 미들웨어 또는 프런트-엔드 컴포넌트들 중 하나 이상 컴포넌트들의 임의의 조합을 포함한다. 이러한 시스템의 컴포넌트들은 디지털 데이터 통신의 임의 형태 또는 매체, 예를 들어, 통신 네트워크에 의해 상호 연결될 수 있다. 통신 네트워크들의 예들은 로컬 영역 네트워크(Local Area Network, "LAN") 및 와이드 영역 네트워크(Wide Area Network, "WAN"), 예를 들어 인터넷을 포함한다.
컴퓨팅 시스템은 클라이언트들 및 서버들을 포함할 수 있다. 클라이언트와 서버는 일반적으로 서로 떨어져 있고 전형적으로는 통신 네트워크를 통해 상호작용한다. 클라이언트와 서버의 관계는, 각각의 컴퓨터들 상에서 실행됨과 아울러 서로 클라이언트-서버 관계를 갖는 컴퓨터 프로그램들을 통해 발생한다.
본 명세서가 다수의 특정 구현예의 세부사항들을 포함하고 있지만, 이것은 임의의 구현예의 범위 혹은 청구될 수 있는 것의 범위에 관한 한정적 의미로서 해석돼서는 안 되며, 오히려 이것은 특정 구현의 특정 실시예들에 특정될 수 있는 특징들을 설명하는 것으로서 해석돼야 한다. 개별적 실시예들에 관해서 본 명세서에서 설명된 어떤 특징들은 또한 조합되어 단일 실시예로 구현될 수 있다. 역으로, 단일 실시예에 관해서 설명된 다양한 특징들은 또한 다수의 실시예들로 개별적으로 구현될 수 있거나 혹은 임의의 적절한 서브조합으로 구현될 수 있다. 더욱이, 이러한 특징들이 앞에서 특정 조합으로 동작하는 것으로서 설명될 수 있고, 심지어 처음에 이와 같이 기재될 수 있을지라도, 기재된 조합으로부터의 하나 이상의 특징들은 일부 경우에 있어서 이러한 조합으로부터 배제될 수 있고, 기재된 조합은 서브조합 혹은 서브조합의 변형에 관한 것일 수 있다.
마찬가지로, 도면에서는 동작들이 특정 순서로 제시되고 있지만, 이러한 동작들이 바람직한 결과를 달성하기 위해 제시된 특정 순서로 수행되어야 함 또는 순차적으로 수행되어야 함 또는 예시된 모든 동작들이 수행되어야 함을 요구하는 것으로 이해돼서는 안 된다. 특정 상황에서는, 멀티태스킹(multitasking) 및 병렬 프로세싱(parallel processing)이 이로울 수 있다. 더욱이, 앞서 설명된 실시예들에서의 다양한 시스템 컴포넌트들의 분리는 모든 실시예들에서 이러한 분리를 요구하는 것으로 이해돼서는 안 되며, 설명되는 프로그램 컴포넌트들 및 시스템들은 일반적으로 단일 소프트웨어 제품으로 함께 통합될 수 있거나 혹은 다수의 소프트웨어 제품들로 패키징될 수 있음을 이해해야 한다.
본 명세서에서 설명되는 주된 내용의 특정 실시예들이 기술되었다. 아래의 특허청구범위 내에서 다른 실시예들이 존재할 수 있다. 예를 들어, 청구항에 기재되는 동작들은 서로 다른 순서로 수행될 수 있으며, 여전히 바람직한 결과를 달성할 수 있다. 예를 들어, 첨부되는 도면에서 제시되는 프로세스들은 바람직한 결과의 달성을 위해 그 제시된 특정 순서 혹은 순차적 순서를 반드시 요구하지 않는다. 특정 구현예들에서는, 멀티태스킹 및 병렬 프로세싱이 이로울 수 있다.

Claims (11)

  1. 컴퓨터에 의해 구현되는 방법으로서,
    제 1 언어로 된 쿼리(query)를 획득하는 단계와, 여기서 상기 쿼리는 사용자에 의해 검색 엔진(search engine)에 제출된 부분적인 쿼리 입력에 근거하여 생성되는 일차 언어 쿼리 제안(primary-language query suggestion)이고;
    상기 제 1 언어로 된 상기 쿼리의 하나 이상의 고유한 후보 세그먼테이션(unique candidate segmentation)들을 획득하는 단계와, 여기서 상기 고유한 후보 세그먼테이션들 각각은 상기 제 1 언어로 된 상기 쿼리를 세그먼트(segment)화함으로써 생성된 세그먼트들의 각각의 시퀀스(sequence)로 구성되고;
    상기 하나 이상의 고유한 후보 세그먼테이션들 각각에 대해, 상기 후보 세그먼테이션의 세그먼트들의 상기 각각의 시퀀스를 번역(translating)함으로써 제 2 언어로 된 하나 이상의 후보 번역들의 각각의 세트를 결정하는 단계와;
    상기 하나 이상의 고유한 후보 세그먼테이션들 각각의 후보 번역 각각에 대해:
    제 1 쿼리 로그(query log)에서 상기 제 1 언어로 표기된 완성된 쿼리(complete query)로서의 상기 고유한 후보 세그먼테이션의 각각의 제 1 발생 빈도 그리고 상기 고유한 후보 세그먼테이션의 세그먼트들의 상기 각각의 시퀀스로부터 얼마나 많은 제외어(stop word)들이 제거되었는지에 적어도 부분적으로 근거하여 상기 고유한 후보 세그먼테이션에 대한 각각의 세그먼테이션 품질(segmentation quality)을 결정하는 단계와; 그리고
    제 2 쿼리 로그에서 상기 제 2 언어로 표기된 완성된 쿼리로서의 상기 후보 번역의 각각의 제 2 발생 빈도 그리고 상기 고유한 후보 세그먼테이션에 대해 결정된 상기 각각의 세그먼테이션 품질에 적어도 근거하여 상기 후보 번역에 대한 각각의 점수(score)를 결정하는 단계와; 그리고
    상기 후보 번역들의 각각의 점수들에 근거하여 상기 쿼리에 대한 교차 언어 쿼리 제안(cross-language query suggestion)으로서 상기 후보 번역들 중 적어도 하나를 제공하는 단계를 포함하는 것을 특징으로 컴퓨터에 의해 구현되는 방법.
  2. 컴퓨터에 의해 구현되는 방법으로서,
    제 1 언어로 표기된 쿼리를 수신하는 단계와, 여기서 상기 쿼리는 사용자에 의해 검색 엔진(search engine)에 제출된 부분적인 쿼리 입력에 근거하여 생성되는 일차 언어 쿼리 제안(primary-language query suggestion)이고;
    상기 제 1 언어로 된 상기 쿼리의 하나 이상의 고유한 후보 세그먼테이션들을 획득하는 단계와, 여기서 상기 고유한 후보 세그먼테이션들 각각은 상기 제 1 언어로 된 상기 쿼리를 세그먼트화함으로써 생성된 세그먼트들의 각각의 시퀀스로 구성되고;
    상기 하나 이상의 고유한 후보 세그먼테이션들 각각에 대해:
    상기 고유한 후보 세그먼테이션에 대한 세그먼테이션 품질의 각각의 정도(measure)를 결정하는 단계와; 그리고
    상기 후보 세그먼테이션의 세그먼트들의 상기 각각의 시퀀스를 번역함으로써 제 2 언어로 된 하나 이상의 후보 번역들의 각각의 세트를 획득하는 단계와;
    상기 하나 이상의 고유한 후보 세그먼테이션들 각각의 후보 번역 각각에 대해:
    제 1 쿼리 로그에서 상기 제 2 언어로 표기된 완성된 쿼리로서의 상기 후보 번역의 제 1 발생 빈도를 결정하는 단계와;
    상기 제 1 쿼리 로그에서 상기 제 2 언어로 표기된 완성된 쿼리로서의 상기 후보 번역의 상기 제 1 발생 빈도 그리고 상기 후보 세그먼테이션에 대한 상기 세그먼테이션 품질의 정도에 적어도 근거하여 상기 후보 번역에 대한 각각의 점수를 결정하는 단계와; 그리고
    상기 후보 번역들의 각각의 점수들에 근거하여 상기 쿼리에 대한 교차 언어 쿼리 제안으로서 상기 후보 번역들 중 적어도 하나를 제공하는 단계를 포함하는 것을 특징으로 하는 컴퓨터에 의해 구현되는 방법.
  3. 제2항에 있어서,
    상기 제 1 언어로 된 상기 쿼리의 상기 하나 이상의 고유한 후보 세그먼테이션들을 획득하는 단계는 또한,
    상기 제 1 언어로 된 상기 쿼리의 파티션(partition)인 적어도 하나의 후보 세그먼테이션을 획득하는 것을 포함하는 것을 특징으로 하는 컴퓨터에 의해 구현되는 방법.
  4. 제2항에 있어서,
    상기 제 1 언어로 된 상기 쿼리의 상기 하나 이상의 고유한 후보 세그먼테이션들을 획득하는 단계는 또한,
    상기 후보 세그먼테이션으로부터 하나 이상의 제외어들이 제거된 적어도 하나의 후보 세그먼테이션을 획득하는 것을 포함하는 것을 특징으로 하는 컴퓨터에 의해 구현되는 방법.
  5. 제4항에 있어서,
    상기 하나 이상의 고유한 후보 세그먼테이션들 각각에 대해, 상기 고유한 후보 세그먼테이션에 대한 상기 세그먼테이션 품질의 각각의 정도를 결정하는 단계는 또한,
    상기 후보 세그먼테이션의 세그먼트들의 상기 각각의 시퀀스로부터 얼마나 많은 제외어들이 제거되었는지에 적어도 부분적으로 근거하여 상기 세그먼테이션 품질의 각각의 정도를 결정하는 것을 포함하는 것을 특징으로 하는 컴퓨터에 의해 구현되는 방법.
  6. 제2항에 있어서,
    상기 하나 이상의 고유한 후보 세그먼테이션들 각각에 대해, 상기 고유한 후보 세그먼테이션에 대한 상기 세그먼테이션 품질의 각각의 정도를 결정하는 단계는 또한,
    제 2 쿼리 로그에서 상기 제 1 언어로 표기된 완성된 쿼리로서의 상기 후보 세그먼테이션의 각각의 제 2 발생 빈도를 결정하는 것과; 그리고
    상기 제 2 쿼리 로그에서 상기 제 1 언어로 표기된 완성된 쿼리로서의 상기 후보 세그먼테이션의 상기 각각의 제 2 발생 빈도에 적어도 부분적으로 근거하여 상기 세그먼테이션 품질의 각각의 정도를 결정하는 것을 포함하는 것을 특징으로 하는 컴퓨터에 의해 구현되는 방법.
  7. 하나 이상의 프로세서들 및 메모리를 포함하는 시스템으로서,
    상기 메모리에는 명령들이 저장되어 있고, 상기 명령들은 상기 하나 이상의 프로세서들에 의해 실행될 때 상기 하나 이상의 프로세서들로 하여금,
    제 1 언어로 표기된 쿼리를 수신하는 것과, 여기서 상기 쿼리는 사용자에 의해 검색 엔진(search engine)에 제출된 부분적인 쿼리 입력에 근거하여 생성되는 일차 언어 쿼리 제안(primary-language query suggestion)이고;
    상기 제 1 언어로 된 상기 쿼리의 하나 이상의 고유한 후보 세그먼테이션들을 획득하는 것과, 여기서 상기 고유한 후보 세그먼테이션들 각각은 상기 제 1 언어로 된 상기 쿼리를 세그먼트화함으로써 생성된 세그먼트들의 각각의 시퀀스로 구성되고;
    상기 하나 이상의 고유한 후보 세그먼테이션들 각각에 대해:
    상기 고유한 후보 세그먼테이션에 대한 세그먼테이션 품질의 각각의 정도를 결정하는 것과; 그리고
    상기 후보 세그먼테이션의 세그먼트들의 상기 각각의 시퀀스를 번역함으로써 제 2 언어로 된 하나 이상의 후보 번역들의 각각의 세트를 획득하는 것과;
    상기 하나 이상의 고유한 후보 세그먼테이션들 각각의 후보 번역 각각에 대해:
    제 1 쿼리 로그에서 상기 제 2 언어로 표기된 완성된 쿼리로서의 상기 후보 번역의 제 1 발생 빈도를 결정하는 것과;
    상기 제 1 쿼리 로그에서 상기 제 2 언어로 표기된 완성된 쿼리로서의 상기 후보 번역의 상기 제 1 발생 빈도 그리고 상기 후보 세그먼테이션에 대한 상기 세그먼테이션 품질의 정도에 적어도 근거하여 상기 후보 번역에 대한 각각의 점수를 결정하는 것과; 그리고
    상기 후보 번역들의 각각의 점수들에 근거하여 상기 쿼리에 대한 교차 언어 쿼리 제안으로서 상기 후보 번역들 중 적어도 하나를 제공하는 것을 포함하는 동작들을 수행하도록 하는 것을 특징으로 하는 시스템.
  8. 제7항에 있어서,
    상기 제 1 언어로 된 상기 쿼리의 상기 하나 이상의 고유한 후보 세그먼테이션들을 획득하는 것은 또한,
    상기 제 1 언어로 된 상기 쿼리의 파티션인 적어도 하나의 후보 세그먼테이션을 획득하는 것을 포함하는 것을 특징으로 하는 시스템.
  9. 제7항에 있어서,
    상기 제 1 언어로 된 상기 쿼리의 상기 하나 이상의 고유한 후보 세그먼테이션들을 획득하는 것은 또한,
    상기 후보 세그먼테이션으로부터 하나 이상의 제외어들이 제거된 적어도 하나의 후보 세그먼테이션을 획득하는 것을 포함하는 것을 특징으로 하는 시스템.
  10. 제9항에 있어서,
    상기 하나 이상의 고유한 후보 세그먼테이션들 각각에 대해, 상기 고유한 후보 세그먼테이션에 대한 상기 세그먼테이션 품질의 각각의 정도를 결정하는 것은 또한,
    상기 후보 세그먼테이션의 세그먼트들의 상기 각각의 시퀀스로부터 얼마나 많은 제외어들이 제거되었는지에 적어도 부분적으로 근거하여 상기 세그먼테이션 품질의 각각의 정도를 결정하는 것을 포함하는 것을 특징으로 하는 시스템.
  11. 제7항에 있어서,
    상기 하나 이상의 고유한 후보 세그먼테이션들 각각에 대해, 상기 고유한 후보 세그먼테이션에 대한 상기 세그먼테이션 품질의 각각의 정도를 결정하는 것은 또한,
    제 2 쿼리 로그에서 상기 제 1 언어로 표기된 완성된 쿼리로서의 상기 후보 세그먼테이션의 각각의 제 2 발생 빈도를 결정하는 것과; 그리고
    상기 제 2 쿼리 로그에서 상기 제 1 언어로 표기된 완성된 쿼리로서의 상기 후보 세그먼테이션의 상기 각각의 제 2 발생 빈도에 적어도 부분적으로 근거하여 상기 세그먼테이션 품질의 각각의 정도를 결정하는 것을 포함하는 것을 특징으로 하는 시스템.
KR1020147001968A 2011-06-24 2011-06-24 교차-언어 쿼리 제안을 위한 쿼리 번역 평가 KR101850124B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2011/076275 WO2012174738A1 (en) 2011-06-24 2011-06-24 Evaluating query translations for cross-language query suggestion

Publications (2)

Publication Number Publication Date
KR20140061357A KR20140061357A (ko) 2014-05-21
KR101850124B1 true KR101850124B1 (ko) 2018-04-19

Family

ID=47362834

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147001968A KR101850124B1 (ko) 2011-06-24 2011-06-24 교차-언어 쿼리 제안을 위한 쿼리 번역 평가

Country Status (4)

Country Link
US (1) US20120330990A1 (ko)
KR (1) KR101850124B1 (ko)
CN (1) CN104011712B (ko)
WO (1) WO2012174738A1 (ko)

Families Citing this family (191)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060116865A1 (en) 1999-09-17 2006-06-01 Www.Uniscape.Com E-services translation utilizing machine translation and translation memory
US7904595B2 (en) 2001-01-18 2011-03-08 Sdl International America Incorporated Globalization management system and method therefor
US7983896B2 (en) 2004-03-05 2011-07-19 SDL Language Technology In-context exact (ICE) matching
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
US10319252B2 (en) 2005-11-09 2019-06-11 Sdl Inc. Language capability assessment and training apparatus and techniques
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US10002189B2 (en) 2007-12-20 2018-06-19 Apple Inc. Method and apparatus for searching using an active ontology
US9330720B2 (en) 2008-01-03 2016-05-03 Apple Inc. Methods and apparatus for altering audio output signals
US8996376B2 (en) 2008-04-05 2015-03-31 Apple Inc. Intelligent text-to-speech conversion
US20100030549A1 (en) 2008-07-31 2010-02-04 Lee Michael M Mobile device having human language translation capability with positional feedback
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US10241752B2 (en) 2011-09-30 2019-03-26 Apple Inc. Interface for a virtual digital assistant
US10706373B2 (en) 2011-06-03 2020-07-07 Apple Inc. Performing actions associated with task items that represent tasks to perform
US10241644B2 (en) 2011-06-03 2019-03-26 Apple Inc. Actionable reminder entries
US9431006B2 (en) 2009-07-02 2016-08-30 Apple Inc. Methods and apparatuses for automatic speech recognition
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
US10417646B2 (en) 2010-03-09 2019-09-17 Sdl Inc. Predicting the cost associated with translating textual content
US10657540B2 (en) 2011-01-29 2020-05-19 Sdl Netherlands B.V. Systems, methods, and media for web content management
US9547626B2 (en) 2011-01-29 2017-01-17 Sdl Plc Systems, methods, and media for managing ambient adaptability of web applications and web services
US9063931B2 (en) * 2011-02-16 2015-06-23 Ming-Yuan Wu Multiple language translation system
US10580015B2 (en) 2011-02-25 2020-03-03 Sdl Netherlands B.V. Systems, methods, and media for executing and optimizing online marketing initiatives
US10140320B2 (en) 2011-02-28 2018-11-27 Sdl Inc. Systems, methods, and media for generating analytical data
US9262612B2 (en) 2011-03-21 2016-02-16 Apple Inc. Device access using voice authentication
US10057736B2 (en) 2011-06-03 2018-08-21 Apple Inc. Active transport based notifications
US9984054B2 (en) 2011-08-24 2018-05-29 Sdl Inc. Web interface including the review and manipulation of a web document and utilizing permission based control
US9384184B2 (en) * 2012-01-11 2016-07-05 International Business Machines Corporation Predicting a command in a command line interface
US10134385B2 (en) 2012-03-02 2018-11-20 Apple Inc. Systems and methods for name pronunciation
US9684653B1 (en) 2012-03-06 2017-06-20 Amazon Technologies, Inc. Foreign language translation using product information
US9036888B2 (en) * 2012-04-30 2015-05-19 General Electric Company Systems and methods for performing quality review scoring of biomarkers and image analysis methods for biological tissue
US9773270B2 (en) 2012-05-11 2017-09-26 Fredhopper B.V. Method and system for recommending products based on a ranking cocktail
US9280610B2 (en) 2012-05-14 2016-03-08 Apple Inc. Crowd sourcing information to fulfill user requests
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
US10261994B2 (en) 2012-05-25 2019-04-16 Sdl Inc. Method and system for automatic management of reputation of translators
US9721563B2 (en) 2012-06-08 2017-08-01 Apple Inc. Name recognition system
EP2867749A4 (en) * 2012-06-29 2015-12-16 Microsoft Technology Licensing Llc INTERLINGUISTIC INPUT METHOD EDITOR
US8918308B2 (en) * 2012-07-06 2014-12-23 International Business Machines Corporation Providing multi-lingual searching of mono-lingual content
US9081762B2 (en) * 2012-07-13 2015-07-14 Enyuan Wu Phrase-based dictionary extraction and translation quality evaluation
US11308528B2 (en) 2012-09-14 2022-04-19 Sdl Netherlands B.V. Blueprinting of multimedia assets
US11386186B2 (en) 2012-09-14 2022-07-12 Sdl Netherlands B.V. External content library connector systems and methods
US10452740B2 (en) 2012-09-14 2019-10-22 Sdl Netherlands B.V. External content libraries
US9547647B2 (en) 2012-09-19 2017-01-17 Apple Inc. Voice-based media searching
US9916306B2 (en) 2012-10-19 2018-03-13 Sdl Inc. Statistical linguistic analysis of source content
US8914395B2 (en) * 2013-01-03 2014-12-16 Uptodate, Inc. Database query translation system
JP2016508007A (ja) 2013-02-07 2016-03-10 アップル インコーポレイテッド デジタルアシスタントのためのボイストリガ
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
US9183198B2 (en) 2013-03-19 2015-11-10 International Business Machines Corporation Customizable and low-latency interactive computer-aided translation
WO2014197334A2 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for user-specified pronunciation of words for speech synthesis and recognition
WO2014197335A1 (en) 2013-06-08 2014-12-11 Apple Inc. Interpreting and acting upon commands that involve sharing information with remote devices
CN110442699A (zh) 2013-06-09 2019-11-12 苹果公司 操作数字助理的方法、计算机可读介质、电子设备和系统
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
US10296160B2 (en) 2013-12-06 2019-05-21 Apple Inc. Method for extracting salient dialog usage from live data
JP2015172792A (ja) * 2014-03-11 2015-10-01 株式会社リコー 翻訳システム、情報処理装置、情報処理方法およびプログラム
CN103885608A (zh) * 2014-03-19 2014-06-25 百度在线网络技术(北京)有限公司 一种输入方法及系统
US10140282B2 (en) 2014-04-01 2018-11-27 Verisign, Inc. Input string matching for domain names
US9836554B2 (en) * 2014-04-30 2017-12-05 Excalibur Ip, Llc Method and system for providing query suggestions including entities
US9842101B2 (en) * 2014-05-30 2017-12-12 Apple Inc. Predictive conversion of language input
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US9966065B2 (en) 2014-05-30 2018-05-08 Apple Inc. Multi-command single utterance input method
US9760559B2 (en) * 2014-05-30 2017-09-12 Apple Inc. Predictive text input
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US9524293B2 (en) * 2014-08-15 2016-12-20 Google Inc. Techniques for automatically swapping languages and/or content for machine translation
US9818400B2 (en) 2014-09-11 2017-11-14 Apple Inc. Method and apparatus for discovering trending terms in speech requests
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
US10102269B2 (en) * 2015-02-27 2018-10-16 Microsoft Technology Licensing, Llc Object query model for analytics data access
US10152299B2 (en) 2015-03-06 2018-12-11 Apple Inc. Reducing response latency of intelligent automated assistants
US10567477B2 (en) 2015-03-08 2020-02-18 Apple Inc. Virtual assistant continuity
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US9965569B2 (en) * 2015-03-13 2018-05-08 Microsoft Technology Licensing, Llc Truncated autosuggest on a touchscreen computing device
CN104850545A (zh) * 2015-04-29 2015-08-19 均康(上海)信息科技有限公司 一种进行网络资源翻译的在线协作系统及方法
US10460227B2 (en) 2015-05-15 2019-10-29 Apple Inc. Virtual assistant in a communication session
US10545958B2 (en) * 2015-05-18 2020-01-28 Microsoft Technology Licensing, Llc Language scaling platform for natural language processing systems
US10200824B2 (en) 2015-05-27 2019-02-05 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US9578173B2 (en) 2015-06-05 2017-02-21 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US11025565B2 (en) 2015-06-07 2021-06-01 Apple Inc. Personalized prediction of responses for instant messaging
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
US10740384B2 (en) 2015-09-08 2020-08-11 Apple Inc. Intelligent automated assistant for media search and playback
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US20170075998A1 (en) * 2015-09-14 2017-03-16 Ebay Inc. Assessing translation quality
US10366158B2 (en) 2015-09-29 2019-07-30 Apple Inc. Efficient word encoding for recurrent neural network language models
US11010550B2 (en) 2015-09-29 2021-05-18 Apple Inc. Unified language modeling framework for word prediction, auto-completion and auto-correction
US11587559B2 (en) 2015-09-30 2023-02-21 Apple Inc. Intelligent device identification
US9830384B2 (en) * 2015-10-29 2017-11-28 International Business Machines Corporation Foreign organization name matching
US10614167B2 (en) 2015-10-30 2020-04-07 Sdl Plc Translation review workflow systems and methods
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10956666B2 (en) 2015-11-09 2021-03-23 Apple Inc. Unconventional virtual assistant interactions
CN105335358B (zh) * 2015-11-18 2018-07-06 成都优译信息技术有限公司 翻译系统中使用语料等级评价方法
US10049668B2 (en) 2015-12-02 2018-08-14 Apple Inc. Applying neural network language models to weighted finite state transducers for automatic speech recognition
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US10446143B2 (en) 2016-03-14 2019-10-15 Apple Inc. Identification of voice inputs providing credentials
CN106021239B (zh) * 2016-04-29 2018-10-26 北京创鑫旅程网络技术有限公司 一种翻译质量实时评价方法
US9934775B2 (en) 2016-05-26 2018-04-03 Apple Inc. Unit-selection text-to-speech synthesis based on predicted concatenation parameters
US9972304B2 (en) 2016-06-03 2018-05-15 Apple Inc. Privacy preserving distributed evaluation framework for embedded personalized systems
US10249300B2 (en) 2016-06-06 2019-04-02 Apple Inc. Intelligent list reading
US11227589B2 (en) 2016-06-06 2022-01-18 Apple Inc. Intelligent list reading
US10049663B2 (en) 2016-06-08 2018-08-14 Apple, Inc. Intelligent automated assistant for media exploration
DK179309B1 (en) 2016-06-09 2018-04-23 Apple Inc Intelligent automated assistant in a home environment
US10067938B2 (en) 2016-06-10 2018-09-04 Apple Inc. Multilingual word prediction
US10509862B2 (en) 2016-06-10 2019-12-17 Apple Inc. Dynamic phrase expansion of language input
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
US10490187B2 (en) 2016-06-10 2019-11-26 Apple Inc. Digital assistant providing automated status report
US10192552B2 (en) 2016-06-10 2019-01-29 Apple Inc. Digital assistant providing whispered speech
DK179049B1 (en) 2016-06-11 2017-09-18 Apple Inc Data driven natural language event detection and classification
DK179343B1 (en) 2016-06-11 2018-05-14 Apple Inc Intelligent task discovery
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
US9922029B1 (en) * 2016-06-30 2018-03-20 Facebook, Inc. User feedback for low-confidence translations
US10474753B2 (en) 2016-09-07 2019-11-12 Apple Inc. Language identification using recurrent neural networks
US10043516B2 (en) 2016-09-23 2018-08-07 Apple Inc. Intelligent automated assistant
US11281993B2 (en) 2016-12-05 2022-03-22 Apple Inc. Model and ensemble compression for metric learning
US10593346B2 (en) 2016-12-22 2020-03-17 Apple Inc. Rank-reduced token representation for automatic speech recognition
US11204787B2 (en) 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
US10686750B2 (en) * 2017-03-07 2020-06-16 Verisign, Inc. Alternate character set domain name suggestion and registration using translation and transliteration
DK201770383A1 (en) 2017-05-09 2018-12-14 Apple Inc. USER INTERFACE FOR CORRECTING RECOGNITION ERRORS
US10417266B2 (en) 2017-05-09 2019-09-17 Apple Inc. Context-aware ranking of intelligent response suggestions
DK201770439A1 (en) 2017-05-11 2018-12-13 Apple Inc. Offline personal assistant
DK180048B1 (en) 2017-05-11 2020-02-04 Apple Inc. MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION
US10395654B2 (en) 2017-05-11 2019-08-27 Apple Inc. Text normalization based on a data-driven learning network
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
DK201770429A1 (en) 2017-05-12 2018-12-14 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
US11301477B2 (en) 2017-05-12 2022-04-12 Apple Inc. Feedback analysis of a digital assistant
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK201770432A1 (en) 2017-05-15 2018-12-21 Apple Inc. Hierarchical belief states for digital assistants
DK201770431A1 (en) 2017-05-15 2018-12-20 Apple Inc. Optimizing dialogue policy decisions for digital assistants using implicit feedback
US10311144B2 (en) 2017-05-16 2019-06-04 Apple Inc. Emoji word sense disambiguation
DK179549B1 (en) 2017-05-16 2019-02-12 Apple Inc. FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES
US10303715B2 (en) 2017-05-16 2019-05-28 Apple Inc. Intelligent automated assistant for media exploration
US10403278B2 (en) 2017-05-16 2019-09-03 Apple Inc. Methods and systems for phonetic matching in digital assistant services
US20180336892A1 (en) 2017-05-16 2018-11-22 Apple Inc. Detecting a trigger of a digital assistant
US10657328B2 (en) 2017-06-02 2020-05-19 Apple Inc. Multi-task recurrent neural network architecture for efficient morphology handling in neural language modeling
US10445429B2 (en) 2017-09-21 2019-10-15 Apple Inc. Natural language understanding using vocabularies with compressed serialized tries
US10755051B2 (en) 2017-09-29 2020-08-25 Apple Inc. Rule-based natural language processing
US10552547B2 (en) * 2017-10-10 2020-02-04 International Business Machines Corporation Real-time translation evaluation services for integrated development environments
US10635863B2 (en) 2017-10-30 2020-04-28 Sdl Inc. Fragment recall and adaptive automated translation
US10636424B2 (en) 2017-11-30 2020-04-28 Apple Inc. Multi-turn canned dialog
US10817676B2 (en) 2017-12-27 2020-10-27 Sdl Inc. Intelligent routing services and systems
US10733982B2 (en) 2018-01-08 2020-08-04 Apple Inc. Multi-directional dialog
US10733375B2 (en) 2018-01-31 2020-08-04 Apple Inc. Knowledge-based framework for improving natural language understanding
US11157564B2 (en) * 2018-03-02 2021-10-26 Thoughtspot, Inc. Natural language question answering systems
US10789959B2 (en) 2018-03-02 2020-09-29 Apple Inc. Training speaker recognition models for digital assistants
US10592604B2 (en) 2018-03-12 2020-03-17 Apple Inc. Inverse text normalization for automatic speech recognition
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US10909331B2 (en) 2018-03-30 2021-02-02 Apple Inc. Implicit identification of translation payload with neural machine translation
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US10984780B2 (en) 2018-05-21 2021-04-20 Apple Inc. Global semantic word embeddings using bi-directional recurrent neural networks
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
DK201870355A1 (en) 2018-06-01 2019-12-16 Apple Inc. VIRTUAL ASSISTANT OPERATION IN MULTI-DEVICE ENVIRONMENTS
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
US11386266B2 (en) 2018-06-01 2022-07-12 Apple Inc. Text correction
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
US10496705B1 (en) 2018-06-03 2019-12-03 Apple Inc. Accelerated task performance
US11010561B2 (en) 2018-09-27 2021-05-18 Apple Inc. Sentiment prediction from textual data
US11170166B2 (en) 2018-09-28 2021-11-09 Apple Inc. Neural typographical error modeling via generative adversarial networks
US10839159B2 (en) 2018-09-28 2020-11-17 Apple Inc. Named entity normalization in a spoken dialog system
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
US11256867B2 (en) 2018-10-09 2022-02-22 Sdl Inc. Systems and methods of machine learning for digital assets and message creation
US11475898B2 (en) 2018-10-26 2022-10-18 Apple Inc. Low-latency multi-speaker speech recognition
US11638059B2 (en) 2019-01-04 2023-04-25 Apple Inc. Content playback on multiple devices
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
KR102353381B1 (ko) * 2019-04-30 2022-01-19 정철환 작명을 지원하는 전자 장치, 방법, 및 컴퓨터 프로그램
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
US11475884B2 (en) 2019-05-06 2022-10-18 Apple Inc. Reducing digital assistant latency when a language is incorrectly determined
US11423908B2 (en) 2019-05-06 2022-08-23 Apple Inc. Interpreting spoken requests
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
US11289073B2 (en) 2019-05-31 2022-03-29 Apple Inc. Device text to speech
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. USER ACTIVITY SHORTCUT SUGGESTIONS
DK201970511A1 (en) 2019-05-31 2021-02-15 Apple Inc Voice identification in digital assistant systems
US11496600B2 (en) 2019-05-31 2022-11-08 Apple Inc. Remote execution of machine-learned models
US11360641B2 (en) 2019-06-01 2022-06-14 Apple Inc. Increasing the relevance of new available information
US11468890B2 (en) 2019-06-01 2022-10-11 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
US11442932B2 (en) 2019-07-16 2022-09-13 Thoughtspot, Inc. Mapping natural language to queries using a query grammar
US11488406B2 (en) 2019-09-25 2022-11-01 Apple Inc. Text detection using global geometry estimators
US11061543B1 (en) 2020-05-11 2021-07-13 Apple Inc. Providing relevant data items based on context
US11183193B1 (en) 2020-05-11 2021-11-23 Apple Inc. Digital assistant hardware abstraction
US11755276B2 (en) 2020-05-12 2023-09-12 Apple Inc. Reducing description length based on confidence
US11490204B2 (en) 2020-07-20 2022-11-01 Apple Inc. Multi-device audio adjustment coordination
US11438683B2 (en) 2020-07-21 2022-09-06 Apple Inc. User identification using headphones

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020078204A1 (en) 1998-12-18 2002-06-20 Dan Newell Method and system for controlling presentation of information to a user based on the user's condition
US20050283468A1 (en) 2004-06-22 2005-12-22 Kamvar Sepandar D Anticipated query generation and processing in a search engine
US20090024613A1 (en) * 2007-07-20 2009-01-22 Microsoft Corporation Cross-lingual query suggestion
US20100185670A1 (en) * 2009-01-09 2010-07-22 Microsoft Corporation Mining transliterations for out-of-vocabulary query terms

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060129531A1 (en) * 2004-12-09 2006-06-15 International Business Machines Corporation Method and system for suggesting search engine keywords
US7716201B2 (en) * 2006-08-10 2010-05-11 Yahoo! Inc. Method and apparatus for reconstructing a search query
CN101271461B (zh) * 2007-03-19 2011-07-13 株式会社东芝 跨语言检索请求的转换及跨语言信息检索方法和系统
US8799307B2 (en) * 2007-05-16 2014-08-05 Google Inc. Cross-language information retrieval
US20090043741A1 (en) * 2007-08-09 2009-02-12 Dohyung Kim Autocompletion and Automatic Input Method Correction for Partially Entered Search Query

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020078204A1 (en) 1998-12-18 2002-06-20 Dan Newell Method and system for controlling presentation of information to a user based on the user's condition
US20050283468A1 (en) 2004-06-22 2005-12-22 Kamvar Sepandar D Anticipated query generation and processing in a search engine
US20090024613A1 (en) * 2007-07-20 2009-01-22 Microsoft Corporation Cross-lingual query suggestion
US20100185670A1 (en) * 2009-01-09 2010-07-22 Microsoft Corporation Mining transliterations for out-of-vocabulary query terms

Also Published As

Publication number Publication date
KR20140061357A (ko) 2014-05-21
CN104011712B (zh) 2018-04-24
US20120330990A1 (en) 2012-12-27
WO2012174738A1 (en) 2012-12-27
CN104011712A (zh) 2014-08-27

Similar Documents

Publication Publication Date Title
KR101850124B1 (ko) 교차-언어 쿼리 제안을 위한 쿼리 번역 평가
US11514035B1 (en) Query refinements using search data
US9542476B1 (en) Refining search queries
US10635717B2 (en) Query suggestion templates
US8706474B2 (en) Translation of entity names based on source document publication date, and frequency and co-occurrence of the entity names
US8229732B2 (en) Automatic correction of user input based on dictionary
US9916304B2 (en) Method of creating translation corpus
CN104102720B (zh) 高效输入的预测方法和装置
RU2730278C2 (ru) Выявление навигационных результатов поиска
KR20160060253A (ko) 자연어 질의 응답 시스템 및 방법
US9805142B2 (en) Ranking suggestions based on user attributes
US9805120B2 (en) Query selection and results merging
JP2010531492A (ja) ワード確率決定
US20120330989A1 (en) Detecting source languages of search queries
US20120330919A1 (en) Determining cross-language query suggestion based on query translations
US20190303437A1 (en) Status reporting with natural language processing risk assessment
US20130226913A1 (en) Use of statistical language modeling for generating exploratory search results
US20120203541A1 (en) Generating input suggestions
WO2022226549A2 (en) Matching service requester with service providers
Kit et al. Online bilingual dictionary as a learning tool: Today and tomorrow
JP7139271B2 (ja) 情報処理装置、情報処理方法、及びプログラム
KR101686764B1 (ko) 술어 치환 장치 및 이의 명사 술어의 동사술어 치환을 위한 동사술어 순위부여 방법

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
AMND Amendment
X701 Decision to grant (after re-examination)