KR101453937B1 - Cjk 성명 검출 - Google Patents

Cjk 성명 검출 Download PDF

Info

Publication number
KR101453937B1
KR101453937B1 KR1020107012445A KR20107012445A KR101453937B1 KR 101453937 B1 KR101453937 B1 KR 101453937B1 KR 1020107012445 A KR1020107012445 A KR 1020107012445A KR 20107012445 A KR20107012445 A KR 20107012445A KR 101453937 B1 KR101453937 B1 KR 101453937B1
Authority
KR
South Korea
Prior art keywords
name
statement
characters
delete delete
detection model
Prior art date
Application number
KR1020107012445A
Other languages
English (en)
Other versions
KR20100105586A (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 KR20100105586A publication Critical patent/KR20100105586A/ko
Application granted granted Critical
Publication of KR101453937B1 publication Critical patent/KR101453937B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • G06F40/295Named entity recognition

Abstract

성명 검출에 관한 태양이 제공된다. 방법은 성의 집합과 주해된 코퍼스― 주해된 코퍼스는 n-그램의 집합을 포함하고, n-그램 각각은 상기 주해된 코퍼스에서 성명으로서 출현할 상응하는 확률을 가짐―를 사용하여 로우 성명 검출 모델을 생성하는 단계를 포함한다. 이 방법은 주해된 반-구조화 데이터― 주해된 반-구조화 데이터는 성명을 식별하는 n-그램과 성명을 식별하지 않는 n-그램을 식별함―를 형성하기 위하여, 상기 로우 성명 검출 모델을 반-구조화 데이터의 집합에 적용하는 단계, 및 성명을 식별하는 대규모 비주해된 코퍼스의 n-그램과 성명을 식별하지 않는 n-그램을 식별하는 대규모 주해된 코퍼스 데이터를 형성하기 위하여, 상기 대규모 비주해된 코퍼스에 상기 로우 성명 검출 모델을 적용하는 단계를 포함한다. 이 방법은 성명 검출 모델을 생성하는 단계를 포함하고, 이 성명 검출 모델을 생성하는 단계는, 성명을 식별하는 상기 주해된 반-구조화 데이터 및 성명을 식별하는 상기 대규모 주해된 코퍼스 데이터를 사용하여 성명 모델을 유도하는 단계, 성명을 식별하지 않는 상기 반-구조화 데이터를 사용하여 비-성명 모델을 유도하는 단계, 및 상기 대규모 주해된 코퍼스를 사용하여 언어 모델을 유도하는 단계를 포함한다.

Description

CJK 성명 검출{CJK NAME DETECTION}
본 명세서는 성명 검출에 관한 것으로, 특히, 중국, 일본 및 한국("CJK") 언어용 성명 검출에 관한 것이다.
성명 검출은 통상적으로 자연 언어 프로세싱, 예를 들어 ASR(automatic Speech Recognition; 자동 음성 인식), MT(Machine Translation; 기계 번역), OCR(Optical Character Recognition; 광학 문자 인식), 문장 분철(sentence parsing), 비-로마 문자 IME(Input Method Editor) 및 웹 검색 어플리케이션에서 사용된다.
나이브 베이시안 분류(naive bayesian classification) 방법은 문자 "X"의 시퀀스가 성명을 식별하는지를, 주어진 문맥(예를 들어 "X" 전후에 출현하는 문자들)에서 성명을 식별할 "X"의 확률과 주어진 문맥에서 성명을 식별하지 못할 "X"의 확률의 비에 따라서 검출하는데 사용될 수 있다. 언어 모델은 이러한 조건부 확률을 계산하는데 사용된다. 통상적인 통계학적 언어 모델은 그 이력(예를 들어, 데이터의 집합에서 이전 단어 또는 문자 시퀀스의 출현)에 주어진 단어 또는 문자의 시퀀스의 확률 측정이다. 특히, 마코브 가정(markov assumption)에 기초한 종래의 n-그램(n-gram) 언어 모델은 단어 또는 문자의 시퀀스를 예측하는데 사용된다.
n-그램은 예를 들어 단어들이나 문자들과 같은 n개의 연속한 토큰들(consecutive tokens)의 시퀀스이다. n-그램은 n-그램 내 토큰들의 수인 순위(order)를 갖는다. 예를 들어 1-그램(또는 유니그램)은 1개의 토큰을 포함하고; 2-그램(또는 바이-그램)은 2개의 토큰을 포함한다.
주어진 n-그램은 그 n-그램의 다른 부분들에 따라 기술될 수 있다. n-그램은 컨텍스트 및 미래 토큰(future token)으로서 기술될 수 있으며(컨텍스트, c), 여기서 컨텍스트는 길이 n-1을 갖고 c는 미래 토큰을 나타낸다. 예를 들어, 3-그램 "x y z"는 n-그램 컨텍스트와 미래 토큰으로 기술될 수 있다. n-그램 컨텍스트는 n-그램의 마지막 토큰 이전에 있는 n-그램의 모든 토큰들을 포함한다. 주어진 예시에서, "x y"는 컨텍스트이다. 컨텍스트 내에서 가장 왼쪽에 있는 토큰은 왼쪽 토큰으로서 참조된다. 미래 토큰은 n-그램의 마지막 토큰이며, 예시에서 "z"이다. n-그램은 또한, 오른쪽 컨텍스트와 백 오프(backed off) 컨텍스트에 대해 기술될 수 있다. 오른쪽 컨텍스트는 (n-1)-그램으로 표현되며, n-그램의 첫번째 토큰에 후속하는 n-그램의 모든 토큰들을 포함한다. 상술한 예시에서, "y z"는 오른쪽 컨텍스트이다. 추가로, 백 오프 컨텍스트는 컨텍스트에서 가장 왼쪽에 있는 토큰보다 적은 n-그램의 컨텍스트이다. 상술한 예시에서, "y"는 백 오프 컨텍스트이다.
각 n-그램은 훈련 데이터 내에서 n-그램 상대 빈도의 함수로서 산출되는 연관 확률 추정치를 갖는다. 예를 들어, L 토큰의 열은
Figure 112010036137410-pct00001
로 나타난다. 확률은 열
Figure 112010036137410-pct00002
에 다음과 같이 부과될 수 있다:
Figure 112010036137410-pct00003
여기서, 근사는 열 내에서 다음 토큰을 예측할 때에 가장 최근의 (n-1) 토큰만이 관련있다는 마코브 가정에 기초하며, P의 "
Figure 112010036137410-pct00004
" 기호는 확률 함수의 근사임을 나타낸다.
CJK 언어에서, 문장은 단어 경계들을 갖지 않는다. 그 결과, 문장은 사람의 성명을 검출하기 이전에 자동적으로 분할될 필요가 있다. 그러므로 분할 에러가 성명 검출에 있어서 계속 전파될 수 있다.
CJK 성명은 대량의 통계로부터 얻어질 수 있는 형태학적 법칙(morphologic law)을 갖는다. 예를 들어, 300개의 일반적인 중국인 성은 인구의 99% 이상을 커버한다. 여성의 성명은 대개 "
Figure 112010036137410-pct00005
,
Figure 112010036137410-pct00006
,
Figure 112010036137410-pct00007
,
Figure 112010036137410-pct00008
"(나, 홍, 빙, 리)와 같은 문자를 포함한다. 일반적으로, 흔한 이름은 성과는 독립적이다. 예를 들어, 성 "
Figure 112010036137410-pct00009
"과 이름 "
Figure 112010036137410-pct00010
"의 조합에 대한 통계가 있는 경우, 성명을 식별하는 다른 성 "
Figure 112010036137410-pct00011
"과 이름 "
Figure 112010036137410-pct00012
"의 조합은 성을 식별하는 "
Figure 112010036137410-pct00013
"의 통계와 이름을 식별하는 "
Figure 112010036137410-pct00014
"의 통계를 사용하여 예측될 수 있다. 더욱이, 중국어의 일부 단어는 사람의 성명이나 통상의 단어일 수 있다. 예컨대, "
Figure 112010036137410-pct00015
"은 중국의 유명한 가수의 이름이거나, 또는 새벽을 의미하는 일반적인 단어일 수도 있다. 이러한 성명의 검출은 문맥에 따라 크게 달라진다.
또한, CJK 성명은 일반적으로 2-그램(바이그램) 또는 3-그램(트리그램)을 사용하여 식별된다. 왼쪽으로부터 오른쪽으로 CJK 텍스트를 읽는 관습을 가정하면, 컨텍스트의 가장 왼쪽에 있는 문자가 성이다. 오른쪽 컨텍스트는 이름이다. 예를 들어 "x y z"가 CJK 성명이라면, "x"는 성이고, "y z"는 이름이다. 다른 예시로, "x y"가 CJK 성명이라면, "x"가 성이고 "y"가 이름이다.
표의 문자(예컨대, 한자)로 이루어진 성명을 검출하는데 특히 유용한 성명 검출용 시스템, 방법 및 컴퓨터 프로그램 제품이 제공된다. 본 방법은 성의 집합(collection of family name)과 주해된 코퍼스(annotated corpus)― 주해된 코퍼스는 n-그램(gram)의 집합을 포함하고, n-그램 각각은 상기 주해된 코퍼스에서 성명으로서 출현할 상응하는 확률을 가짐―를 사용하여 로우(raw) 성명 검출 모델을 생성하는 단계를 포함한다. 또한, 본 방법은 주해된 반-구조화 데이터― 주해된 반-구조화 데이터는 성명을 식별하는 n-그램과 성명을 식별하지 않는 n-그램을 식별함―를 형성하기 위하여, 상기 로우 성명 검출 모델을 반-구조화 데이터의 집합에 적용하는 단계를 포함한다. 또한, 본 방법은 성명을 식별하는 대규모 비주해된(unannotated) 코퍼스의 n-그램과 성명을 식별하지 않는 n-그램을 식별하는 대규모 주해된 코퍼스 데이터를 형성하기 위하여, 상기 대규모 비주해된 코퍼스에 상기 로우 성명 검출 모델을 적용하는 단계를 포함한다. 본 발명은 또한 성명 검출 모델을 생성하는 단계를 포함하고, 이 성명 검출 모델을 생성하는 단계는, 성명을 식별하는 상기 주해된 반-구조화 데이터 및 성명을 식별하는 상기 대규모 주해된 코퍼스 데이터를 사용하여 성명 모델을 유도하는 단계, 성명을 식별하지 않는 상기 반-구조화 데이터를 사용하여 비-성명 모델을 유도하는 단계, 및 상기 대규모 주해된 코퍼스를 사용하여 언어 모델을 유도하는 단계를 포함한다. 이 특징의 다른 실시예는 시스템과 컴퓨터 프로그램 제품을 포함한다.
본 특징의 구현예는 후술하는 하나 이상의 특징을 포함할 수 있다. 본 특징은 상기 주해된 반-구조화 데이터― 주해된 반-구조화 데이터는 성명을 식별하는 n-그램과 성명을 식별하지 않는 n-그램을 식별함―를 형성하기 위하여 상기 반-구조화 데이터의 집합에 상기 성명 검출 모델을 적용하는 단계, 성명을 식별하는 대규모 비주해된 코퍼스의 n-그램과 성명을 식별하지 않는 n-그램을 식별하는 상기 대규모 주해된 코퍼스 데이터를 형성하기 위하여, 상기 성명 검출 모델을 상기 대규모 비주해된 코퍼스에 적용하는 단계, 및 정교화된 성명 검출 모델(refined name detection model)을 생성하는 단계를 더 포함할 수 있다. 상기 정교화된 성명 검출 모델을 생성하는 단계는, 성명을 식별하는 상기 주해된 반-구조화 데이터 및 성명을 식별하는 상기 대규모 주해된 코퍼스 데이터를 사용하여, 정교화된 성명 모델을 유도하는 단계, 성명을 식별하지 않는 상기 반-구조화 데이터를 사용하여, 정교화된 비-성명 모델을 유도하는 단계, 및 상기 대규모 주해된 코퍼스를 사용하여, 정교화된 언어 모델을 유도하는 단계를 포함할 수 있다.
상기 성명 모델은 성명을 식별하는 상기 주해된 반-구조화 데이터와 성명을 식별하는 상기 대규모 주해된 코퍼스로부터의 n-그램의 집합을 포함할 수 있고, n-그램 각각은 좌측 문자(left character)로서의 성과 우측 컨텍스트(right context)로서의 이름을 포함하고, n-그램 각각은 성명을 식별하는 상응하는 확률을 갖는다. 상기 비-성명 모델은 이름을 식별하지 않는 주해된 반-구조화 데이터로부터의 n-그램의 집합을 포함할 수 있고, n-그램 각각은 좌측 문자로서의 성과 우측 컨텍스트로서의 이름을 포함하고, n-그램 각각은 성명을 식별하지 않는 상응하는 확률을 갖는다. 상기 로우 성명 모델은 주해된 코퍼스로부터의 n-그램의 집합을 포함할 수 있고, n-그램 각각은 성의 집합으로부터의 성인 좌측 문자를 포함하고, n-그램 각각은 상기 주해된 코퍼스에서 상기 성명의 상대 빈도에 따라서 성명을 식별하는 상응하는 확률을 갖는다. 상기 로우 성명 모델은 외국 성(foreign family name)의 집합을 사용하여 생성될 수 있다.
상기 성의 집합은 복수의 희귀 성(sparse family name)을 포함할 수 있고, 상기 로우 성명 검출 모델은 복수의 희귀 성 중 특정 희귀 성의 계산된 확률 대신에 모든 희귀 성의 단일 확률을 사용하여, 성명을 식별하는 n-그램 각각의 확률을 식별하며, n-그램 각각은 희귀 성인 좌측 문자를 포함한다. 상기 성의 집합은 복수의 외국 성을 포함할 수 있다.
대체적인 일 특징으로서, 일 방법이 제공된다. 이 방법은 입력 문자열을 수신하는 단계, 및 복수의 문자를 갖는 상기 입력 문자열에 성명 검출 모델을 적용하는 단계를 포함한다. 상기 성명 검출 모델을 적용하는 단계는, 하나 이상의 성명을 포함하지 않는 상기 복수의 문자열 중 가장 가능성 있는 분할(most likely segmentation)을 식별하는 단계, 상기 복수의 문자 중 하나 이상의 문자 시퀀스를, 하나 이상의 이름을 잠재적으로 식별하는 것으로서 검출하는 단계, 상기 복수의 문자―여기서 복수의 문자는 하나 이상의 잠재적 성명을 포함함―의 분할을 식별하는 단계, 및 잠재적인 하나 이상의 성명을 포함하는 분할의 가능성(likelihood)이 하나 이상의 성명을 포함하지 않는 가장 가능성 있는 분할보다 클 때, 상기 복수의 문자를 하나 이상의 성명을 포함하는 것으로 분할하는 단계를 포함한다. 본 특징의 다른 실시예는 시스템과 컴퓨터 프로그램 제품을 포함한다.
본 특징의 다른 구현예는 하나 이상의 후술하는 특징을 포함할 수 있다. 본 특징은 복수의 문자가 하나 이상의 성명을 포함하는 것으로 분할될 때 하나 이상의 성명을 검출하는 단계를 더 포함할 수 있다. 본 특징은 복수의 문자를 포함하는 열을 수신하는 단계, 및 성과 이름을 포함하는 성명을, 상기 열의 특정 시퀀스가 식별하는 확률을 계산하는 단계를 더 포함한다. 상기 확률을 계산하는 단계는, 코퍼스 내 특정 시퀀스의 빈도가 임계치보다 작으면, 상기 특정 시퀀스가 성명을 식별하는 확률을, 이름을 나타내는 상기 시퀀스의 부분이 임의의 성과 함께 출현하는 상대 빈도 및 상기 성을 나타내는 시퀀스 부분의 상대 빈도의 함수로서 결정하는 단계를 포함한다.
본 특징은 사용자 입력 데이터를 수신하는 단계, 및 주해된 사용자 입력 데이터―주해된 사용자 입력 데이터는 성명을 식별하는 n-그램과 성명을 식별하지 않는 n-그램을 식별함―를 형성하기 위하여 상기 사용자 입력 데이터에 로우 성명 검출 모델을 적용하는 단계를 더 포함할 수 있다. 상기 성명 검출 모델을 생성하는 단계는, 성명을 식별하는 상기 주해된 사용자 입력 데이터를 사용하여 성명 모델을 유도하는 단계, 성명을 식별하지 않는 상기 주해된 사용자 입력 데이터를 사용하여 비-성명 모델을 유도하는 단계, 및 상기 주해된 사용자 입력 데이터를 사용하여 언어 모델을 유도하는 단계를 더 포함할 수 있다.
본 명세서에 설명되는 주제의 특정 실시예는 하나 이상의 후술하는 특징을 실현하기 위하여 구현될 수 있다. CJK 성명 검출은 입력 텍스트를 워드로 미리-분할하거나 미리-분할하지 않고 수행될 수 있다. 미리 분할하는 경우, 성명 검출 에러로 귀착되는 워드 분할 에러가 방지된다. 성명 검출 모델을 훈련시키는 것은 대량의 인간 주해 데이터(human annotated data)를 요구하지 않는다. 일부 훈련 데이터가 반-구조화 데이터에 적용될 수 있다(예컨대, xml 파일에서 다운로드의 기술(description of downloads)). 성명 검출 모델을 훈련시키는데 대량의 비주해 데이터, 특히, 다국어 입력기(IME) 사용자 입력, IME 사용자 사전, 웹 페이지, 탐색 쿼리 로그, 이메일, 블로그, 인스턴트 메시지(IM) 스크립트, 및 뉴스 기사가 사용될 수 있다. 이러한 데이터의 사용은 성명 검출에 있어서 높은 정밀도와 높은 리콜(recall)을 모두 보장한다. 또한, 성명 검출 모델은 희귀한 성이나 외국 성의 성명을 검출하는데 사용될 수 있다. 더욱이, CJK 성명 검출은 이전의 성명 검출 모델에 부가되는 성명을 검출하기 위해 성명 검출 모델을 더욱 정교화하기 위하여 반복적 훈련을 포함한다.
본 명세서에 설명되는 주제의 하나 이상의 실시예의 상세한 내용은 첨부 도면과 아래의 설명에 개시된다. 본 주제의 다른 특징, 태양, 장점은 상세한 설명, 도면 및 청구항으로부터 명백하게 된다.
본 발명은 표의 문자(예컨대, 한자)로 이루어진 성명을 검출하는데 특히 유용한 성명 검출용 시스템, 방법 및 컴퓨터 프로그램 제품을 제공한다.
도1a-1b는 예시적 중국어 텍스트를 나타낸다.
도2는 로우 성명 검출 모델의 예시적 생성을 나타내는 블록도이다.
도3은 성명 검출 모델의 예시적 생성을 나타내는 블록도이다.
도4는 예시적 성명 검출 모델의 구성요소를 나타내는 블록도이다.
도5는 중국어 문자의 관찰된 시퀀스에 대한 예시적인 숨겨진 마코브 모델을 나타내는 블록도이다.
도6은 성명을 검출하는 예시적 프로세스를 나타내는 흐름도이다.
도7은 CJK 성명 검출용 예시적 시스템이다.
다양한 도면에서 동일한 참조번호와 명칭은 동일한 요소를 나타낸다.
성명을 검출하기 위한 공식
중국어에서 일부 단어는 사람의 성명이나 일반적인 단어 중 하나일 수 있는데, 예컨대
Figure 112010036137410-pct00016
은 중국의 유명한 가수의 성명 혹은 새벽을 의미하는 통상적인 단어일 수 있다. 예를 들어, 도 1a는 새벽을 의미하는 문자열
Figure 112010036137410-pct00017
(100)을 포함하는 중국어 텍스트를 나타낸다. 다른 예로서, 도 1b는 중국의 유명한 가수의 성명으로서 문자열
Figure 112010036137410-pct00018
(102)을 포함하는 중국어 텍스트를 나타낸다. 이들 문자열은 성명을 식별하거나 성명을 식별하지 않는 것으로서 분류될 수 있다.
특히, n-그램은 성명을 식별하거나 성명을 식별하지 않는 것으로서 분류된다. 주어진 n-그램 w는 베이즈 정리(Bayes Rule)를 이용하여 성명을 식별하는 것(NAME)이나 성명을 식별하지 않는 것(NONAME)으로서 분류 가능하다. 베이즈 정리는 주어진 n-그램 w가 주어진 문맥(Context)에서 성명을 식별할 확률을 다음과 같이 정의할 수 있다고 제시한다.
Figure 112010036137410-pct00019
마찬가지로, 주어진 n-그램이 성명을 식별하지 않을 확률을 다음과 같이 정의할 수 있다.
Figure 112010036137410-pct00020
나아가, 비율은 다음과 같이 정의할 수 있다.
Figure 112010036137410-pct00021
일 실시형태에서, 만약 결과적인 비율(Ratio)값이 1보다 크다면, 그 n-그램은 성명을 식별하는 것으로 분류된다. 즉, n-그램 w가 성명을 식별하는 비용 가중된 가능성(Cost-weighted Likelihood)은 n-그램 w가 성명을 식별하지 않는 비용 가중된 가능성보다 더 크다. 그렇지 않으면, n-그램은 성명을 식별하지 않는 것으로서 분류된다. L은 특정한 손실 함수를 나타낸다. 일부 구현예에서, 이러한 손실 함수는 상수이며, 따라서 방정식은 다음과 같이 간단하게 될 수 있다.
Figure 112010036137410-pct00022
여기서 c는 상수이다. 결합 확률(Joint Probability)
Figure 112010036137410-pct00023
Figure 112010036137410-pct00024
은 도 2 내지 4에 관하여 이하에 추가적으로 기술하는 바와 같이 성명 검출 모델로부터의 출력으로서 제공될 수 있다.
처음의 개요로서, 성명 검출 모델은 성명 모델, 비 성명 모델 및 언어 모델을 포함한다. 주해된 코퍼스의 n-그램이 성명을 식별하는지 여부를 확인하기 위하여 주해된 코퍼스와 성의 미리 정의된 집합을 이용하여 로우 성명 모델이 생성된다. 이 로우 성명 모델은 성명 검출 모델을 생성하기 위하여 반-구조화(Semi-structured) 데이터와 대형 비주해 데이터(Large Unannotated Data)에 적용된다.
특히, 성명 검출 모델은
Figure 112010036137410-pct00025
Figure 112010036137410-pct00026
로부터 확률 추정치를 얻는다. 구체적으로는, 결합 확률
Figure 112010036137410-pct00027
은 다음과 같이 재작성이 가능하다.
Figure 112010036137410-pct00028
Figure 112010036137410-pct00029
는 다음과 같이 추가적으로 근사 가능하다.
식[1]
Figure 112010036137410-pct00030
또한, 상기 결합 확률
Figure 112010036137410-pct00031
는 마찬가지로 다음과 같이 근사 가능하다.
식[2]
Figure 112010036137410-pct00032
로우(Raw) 성명 검출 모델
도 2는 로우 성명 검출 모델(206)의 예시적인 생성을 나타내는 블록도(200)이다. 편의상 로우 성명 검출 모델(206)의 생성은 그러한 생성을 수행하는 시스템에 관하여 기술될 것이다.
CJK 텍스트에서, 주어진 n-그램은 그 n-그램에서의 좌측 문자가 성인 경우에만 성명을 식별할 수 있다. 우측 문맥은 이름이다. 따라서 미리 정의된 성(204)의 집합은 로우 성명 검출 모델(206)을 생성하기 위해 사용된다. 본 시스템은 소량의 주해된 훈련 데이터를 이용하여 로우 성명 검출 모델(206)을 생성할 수 있다. 본 시스템은 미리 정의된 성(204)의 집합과 주해된 코퍼스(예컨대, 작은 주해된 코퍼스(202))를 이용함으로써 로우 성명 모델(206)을 훈련시킨다.
미리 정의된 성(204)은 하나 이상의 CJK 언어에 있어서 성의 집합을 포함한다. 예컨대, 중국어 성명 검출 모델의 경우, 미리 정의된 성(204)은 소정의 인구에서 가능한 중국어 성의 99%나 그 이상을 통계적으로 포괄하는 300개의 일반적인 중국어 성의 집합을 포함할 수 있다. 소형의 주해된 코퍼스(202)는 예컨대 웹 문서나 검색 쿼리 등 텍스트 데이터의 작은 집합을 포함한다. 작은 주해된 코퍼스(202)의 텍스트 데이터는 성명을 식별하는 것 혹은 성명을 식별하지 않는 것으로서 확인된(예컨대, 주해된) n-그램을 포함한다. 예를 들어, 성명은 한 명 이상의 개인에 의해 수동으로 식별될 수 있다.
생성 후, 로우 성명 검출 모델(206)은 작은 주해된 코퍼스(202)에 있어서 n-그램의 상대적 빈도의 함수로서 연산된 확률 추정치를 포함하며, 그러한 성(204)의 집합에서 발견된 좌측 문자는 성명을 식별하고 n-그램은 성명을 식별하지 않는다. 따라서 로우 성명 모델(206)은 (예컨대, 상술한 비율(ratio)에 기초하여 성명을 검출하기 위하여) 입력 n-그램이 성명을 검출하거나 성명을 검출하지 않는 확률을 연산하는데 이용 가능하다. 그러나, 이는 작은 주해된 코퍼스의 확률에 의하여 제한되며, 이는 대규모의 데이터 집합에 걸쳐서 정확하지 않을 수 있다. 그 결과, 로우 성명 검출 모델(206)은 도 3에 관하여 이하에 추가적으로 논의하는 바와 같이 성명 검출 모델을 생성하기 위하여 훈련 데이터에 추가 적용된다.
훈련 데이터
도 3은 성명 검출 모델(314)의 예시적인 생성을 나타내는 블록도(300)이다. 주해 프로세스(316)(예컨대, 로우 성명 검출 모델(206)에 의하여 수행됨)는 확장형 성명 검출 모델을 생성하기 위하여 주해되지 않은 데이터에 적용된다. 반-구조화 데이터(302)와 대규모 비주해 코퍼스(308)는 상기 주해되지 않은 데이터로서 사용 가능하다.
반-구조화 데이터(302)는 예컨대 XML 파일을 포함할 수 있다. 반-구조화 데이터(302)는 다수의 서로 다른 필드를 갖는 데이터를 포함할 수 있다. 특정한 필드는 성명 및 성명이 아닌 것을 식별하기 위하여 사용될 수 있다. 예컨대, 반-구조화 데이터(302)는 그 필드 중 하나가 연주자 필드인 음악 정보를 식별하는 XML 파일을 포함할 수 있다.
대규모의 비주해 코퍼스(308)는 대상 언어(예컨대, 중국어, 일본어 혹은 한국어)에 있어서 텍스트의 집합을 제공한다. 대규모 비주해 코퍼스(308)는 예컨대 웹 쿼리, 웹 페이지 및 뉴스 기사 등을 포함하여 다수의 다양한 텍스트 소스를 포함할 수 있다. 일부 구현예에서, 대규모 비주해 코퍼스(308)는 수백억 내지 수천억의 수준이나 훨씬 더 많은 텍스트를 포함한다.
주해 프로세스(316)가 적용되어, 성명 검출 모델(314)의 하위 모델을 훈련시키기 위하여 사용된 훈련 데이터의 하위 세트를 형성한다. 특히, 로우 성명 검출 모델(206)을 생성하기 위하여 작은 주해된 코퍼스(202)로부터 결정된 성명을 식별하는 n-그램과 성명을 식별하지 않는 n-그램의 확률 추정치는 성명을 식별하지 않는 훈련 데이터 및 성명을 식별하는 훈련 데이터로 훈련 데이터를 분리하는데 이용된다.
본 시스템은 주해된 반-구조화 데이터(예컨대, 304 및 306)를 형성하기 위해 반-구조화 데이터(302)에 주해 프로세스(316)를 적용한다. 특히, 로우 성명 검출 모델(206)은 반-구조화 데이터(302)를 분리하여, 성명을 식별하는 n-그램을 포함하는 주해된 반-구조화 데이터(304)의 하위 세트를 형성하고, 성명을 식별하지 않는 n-그램을 포함하는 주해된 반-구조화 데이터의 하위 세트를 형성하기 위해 사용된다. 예컨대, 만약 n-그램 "연주가: c1 c2 c3"를 XML 파일이 포함하고 있고 "c1 c2 c3"이 CJK 성명인 경우라면, n-그램은 성명을 식별하는 n-그램을 포함하는 주해된 반-구조화 데이터(304)의 하위 세트에 배치된다. 다른 예로서, 만약 XML 파일이 n-그램 "제목: c4 c5" 역시 포함하고 여기서 "c4 c5"가 성명을 식별하지 않는다면(예컨대, 노래의 제목), 그러한 n-그램은 성명을 식별하지 않는 n-그램을 포함하는 주해된 반-구조화 데이터(306)의 하위 세트에 배치된다.
또한, 본 시스템은 주해 프로세스(316)를 대규모 비주해 코퍼스(308)에 적용하여 대규모 주해 코퍼스 데이터(예컨대, 310 및 312)를 형성한다. 특히, 로우 성명 검출 모델(206)은 성명을 식별하는 n-그램을 포함하는 대규모 주해 코퍼스 데이터(310)의 세트와 성명을 식별하지 않는 n-그램을 포함하는 대규모 주해 데이터(312)의 세트로 대규모 비주해 코퍼스를 분리하기 위해 사용된다. 예컨대, 만약 웹 페이지 문장이 문자열 "c1 c2 c3 c4 c5 c6"을 포함하고 있고 "c2 c3 c4"가 CJK 성명인 경우라면, 그러한 문장은 성명을 식별하는 n-그램을 포함하는 대규모 주해 코퍼스 데이터(310)의 세트로 배치된다. 선택적으로, 만약 주해 프로세스(316)가 문장에 적용되는 경우에 성명을 검출하지 않는다면, 그러한 문장은 성명을 식별하지 않는 n-그램을 포함하는 대규모 주해 코퍼스 데이터(312)의 세트로 배치된다.
훈련 프로세스(318)는 이하에서 도 4에 관하여 더욱 상세하게 논의하는 바와 같이, 성명 검출 모델(314)을 생성하기 위해 주해된 반-구조화 데이터(예컨대, 304 및 306)와 대규모 주해 코퍼스 데이터(예컨대, 310 및 312)를 사용한다.
일부 구현예에서, 주해되지 않은 데이터는 예컨대 IME의 스크립트와 단어나 구절의 사용자 편집된 리스트를 포함하여 사용자 입력 데이터를 포함할 수 있다. 본 시스템은 성명을 식별하는 주해된 사용자 입력 데이터와 성명을 식별하지 않는 주해된 사용자 입력 데이터를 형성하기 위하여 사용자 입력 데이터에 주해 프로세스(316)를 적용한다. 그러면 훈련 프로세스(318)는 성명 검출 모델(314)을 생성하기 위하여 주해된 사용자 입력 데이터를 이용한다.
성명 검출 모델
도 4는 예시적인 성명 검출 모델(314)의 컴포넌트를 나타내는 블록도이다. 이러한 성명 검출 모델(314)은 성명 모델(402), 비 성명 모델(404) 및 언어 모델(406)을 포함한다.
성명 모델
성명을 식별하는 n-그램을 포함하는 반-구조화 데이터(304)의 하위 세트와 성명을 식별하는 n-그램을 포함하는 대규모 주해 코퍼스 데이터(310)의 세트는 성명 모델(402)을 얻기 위하여 사용된다. 본 시스템은 이들 데이터 세트를 이용하여 성과 이름을 포함하는 n-그램이 성명을 식별할 확률을 결정한다. 즉,
Figure 112010036137410-pct00033
특히, 성명을 식별하는 n-그램을 포함하는 반-구조화 데이터(304)의 하위 세트와 성명을 식별하는 n-그램을 포함하는 대규모 주해 코퍼스 데이터의 세트는 그러한 데이터의 세트에서 발생하는 성명을 식별하는 n-그램의 상대적 빈도의 함수로서 확률 추정치를 생성하기 위해 사용된다.
일부 구현예에서, 주해된 사용자 입력이 확률 추정치를 생성하기 위해 사용된다.
비 성명 모델
성명을 식별하지 않는 n-그램을 포함하는 반-구조화 데이터의 하위 세트는 비 성명 모델(404)을 얻기 위해 사용된다. 본 시스템은 성과 이름을 포함하는 n-그램이 성명을 식별하지 않을 확률을 결정하기 위하여 이러한 데이터의 하위 세트를 사용한다. 즉,
Figure 112010036137410-pct00034
특히, 이러한 데이터의 하위 세트는 데이터의 하위 세트에서 성명을 식별하는 n-그램의 상대적 빈도의 함수로서 확률 추정치를 생성하기 위해 사용된다.
일부 구현예에서, 주해된 사용자 입력은 확률 추정치를 생성하기 위하여 사용된다.
언어 모델
대규모 주해 데이터(예컨대, 310 및 312)의 세트는 언어 모델(406)을 얻기 위하여 사용된다. 본 시스템은 n-그램의 문맥을 이용하여 n-그램이 성명을 식별하거나 성명을 식별하지 않는 확률을 결정하기 위하여 이러한 데이터의 세트를 이용한다. 구체적으로는, 본 시스템은 성명을 갖는 언어 하위 모델을 얻어내기 위하여, 성명 후보가 주어진 때에 접미사가 성명을 식별하고 접두사가 주어진 때에 성명 후보가 성명을 식별할 확률을 결정한다. 즉,
Figure 112010036137410-pct00035
Figure 112010036137410-pct00036
나아가, 본 시스템은 성명을 갖지 않는 언어 하위 모델을 얻기 위하여, 성명 후보가 주어진 때에 접미사가 성명을 식별하지 못하고 접두사가 주어진 때에 성명 후보가 성명을 식별하지 못할 확률을 결정한다. 즉,
Figure 112010036137410-pct00037
Figure 112010036137410-pct00038
접두사는 n-그램 성명 후보에 선행하는 문자열 중 하나 이상의 문자이다. 접미사는 n-그램 후보를 뒤따르는 문자열 중 하나 이상의 문자이다. 예컨대, 문자열 "c1 c2 c3 c4 c5 c6 c7"에 있어서 성명 후보가 "c3 c4 c5"인 경우 접두사는 "c1 c2"이고, 접미사는 "c6 c7"이다.
성명을 식별하는 n-그램을 포함하는 대규모 주해 데이터(310)의 세트는 특정한 접두사나 접미사가 주어진 경우 n-그램이 데이터의 세트에 있어서 성명이 되는 상대적인 빈도의 함수로서 확률 추정치를 생성하도록 사용된다. 또한, 성명을 식별하지 않는 n-그램을 포함하는 대규모 주해 데이터(312)의 세트는 특정한 접두사나 접미사가 주어진 경우 n-그램이 데이터의 세트에서 성명이 되지 않는 상대적인 빈도의 함수로서 확률 추정치를 생성하기 위해 사용된다.
일부 구현예의 경우, 주해된 사용자 입력은 확률 추정치를 생성하기 위해 사용된다.
요컨대, 로우 성명 검출 모델(206)은 주해 프로세스(316)에서 사용되어 반-구조화 데이터(302)와 대규모 비주해 코퍼스(308)를 분리하고 주해된 반-구조화 데이터(304 및 306)와 대규모 주해 코퍼스(310 및 312)를 형성한다. 본 시스템은 이러한 주해된 데이터와 훈련 프로세스(318)를 이용하여 성명 모델(402), 비 성명 모델(404) 및 언어 모델(406)을 포함하는 성명 검출 모델(314)을 훈련시킨다.
성명을 검출하기 위한 정교화된 공식
성명 모델과 언어 모델로부터의 확률 추정치는
Figure 112010036137410-pct00039
을 결정하기 위하여 사용된다. 예컨대, 문자열이 "c1 c2 c3 c4 c5 c6 c7"이고 "c3 c4 c5"가 성명이라면, 주어진 문맥에서 "c3 c4 c5"가 성명일 확률(즉, 접두사는 "c1 c2"이고 접미사는 "c6 c7"), 즉
Figure 112010036137410-pct00040
는 상술한 식[1]로부터 얻을 수 있다.
Figure 112010036137410-pct00041
는 다음과 같이 표현 가능하다.
Figure 112010036137410-pct00042
이러한 표현은 일반적으로 다음과 같이 재작성될 수 있다.
Figure 112010036137410-pct00043
여기서,
Figure 112010036137410-pct00044
이다.
상술한 바와 같이, 성명 모델은
Figure 112010036137410-pct00045
을 결정하기 위하여 훈련될 수 있다. 나아가, 언어 모델은
Figure 112010036137410-pct00046
Figure 112010036137410-pct00047
을 결정하기 위하여 훈련될 수 있다.
성명 모델과 언어 모델로부터의 확률 추정치는
Figure 112010036137410-pct00048
을 마찬가지 방식으로 결정하기 위하여 사용된다. 예컨대, 문자열이 "c1 c2 c3 c4 c5 c6 c7"이고 "c3 c4 c5"가 성명이 아니라면, 주어진 문맥에서 "c3 c4 c5"가 성명이 아닐 확률(즉, 접두사는 "c1 c2"이고 접미사는 "c6 c7"), 즉
Figure 112010036137410-pct00049
는 상술한 식[2]로부터 얻을 수 있다.
Figure 112010036137410-pct00050
는 다음과 같이 표현 가능하다.
Figure 112010036137410-pct00051
이러한 표현은 일반적으로 다음과 같이 재작성 가능하다.
Figure 112010036137410-pct00052
상술한 바와 같이, 비 성명 모델은
Figure 112010036137410-pct00053
을 결정하기 위하여 훈련될 수 있다. 나아가, 언어 모델은
Figure 112010036137410-pct00054
Figure 112010036137410-pct00055
을 결정하기 위하여 훈련될 수 있다.
훈련 반복
일부 구현예의 경우, 성명 검출 모델(314)은 반-구조화 데이터(302)와 대규모 비주해 코퍼스(308)를 주해된 반-구조화 데이터(304 및 306)와 대규모 주해 코퍼스(310 및 312)로 분리하기 위하여 추가적으로 사용된다. 예컨대, 도 3의 경우 성명 검출 모델(314)은 주해 프로세스(316)에서 사용되어 반-구조화 데이터(302)와 대규모 비주해 코퍼스(308)를 분리한다. 일부 구현예의 경우, 이러한 새로운 훈련 데이터의 세트를 사용하여 더욱 정교화된 성명 검출 모델을 생성한다. 더욱 정교화된 성명 검출 모델은 성명을 검출하거나 성명을 검출하지 않는 n-그램의 확률 추정치를 얻기 위하여 더 큰 훈련 데이터를 사용하기 때문에 로우 성명 검출 모델보다 더 큰 범위를 갖는다.
일부 구현예에서, 주해된 사용자 입력은 더욱 정교화된 성명 검출 모델을 생성하기 위하여 사용된다.
성명 검출 모델의 추가적인 정교화는 2 이상의 반복에서 성명 검출 모델을 훈련시킴으로써 구현될 수 있다. 각각의 반복은 성명 모델의 커버리지(Coverage)를 강화한다. 일부 구현예에서, 다수의 반복(예컨대, 3번의 반복)이 지정될 수 있다. 선택적으로, 반복의 수는 예컨대 성명 검출 모델에 의한 출력으로서 제공된 확률 추정치가 반복하는 사이 임계치보다 더 많이 변하지 않는다는 조건 등의 조건에 기초할 수 있다.
성명 검출 모델의 추가적인 정교화
상대적 빈도는 특정한 성명(예컨대 희귀 성명, 희귀 성 혹은 훈련 데이터에서의 발생 빈도가 낮은 외국 성명)에 대하여 낮을 수 있다. 결과적으로, 그 대응하는 확률 추정치는 부정확할 수 있다. 이는 부가적인 희귀 데이터 문제를 야기한다. 따라서 낮은 빈도, 즉 희귀한 성명에 대처하기 위하여 완화 기법을 사용할 수 있다. 훈련 데이터에서 나타나는 문자열의 빈도가 임계치보다 낮은 경우, 완화 기법을 사용할 수 있다.
희귀한 성명
일부 구현예의 경우, 성명이 나타날 확률은 성이 나타나고 이름이 나타날 확률과는 독립적이다. 예컨대, 만약 "y"가 성 "x"에 대한 이름이라면, 성명은 "x y"이다. 나아가, "z"는 희귀한 성일 수 있다. 성명 "z y"는 희귀한 성 "z"와 이름 "y"을 나타내며, 여기서 희귀한 성 "z"는 샘플링되지 않거나 낮은 빈도로 샘플링되었다(예컨대, 지정된 임계 빈도 미만). 일 구현예에서, 본 시스템은 "z y"의 확률을 근사하기 위하여 "x y"의 확률을 이용한다. 특히, "x"가 성인 이벤트와 "y"가 이름인 이벤트의 확률은 독립적으로 취급된다.
결과적으로, 희귀한 성 "z" 가 주어진 경우에 이름 "y"가 나타날 확률, 즉
Figure 112010036137410-pct00056
는 "x y"의 통계에 있어서 근사될 수 있다. 여기서,
Figure 112010036137410-pct00057
예컨대, 만약 훈련 데이터에서 "z y"의 빈도가 임계치보다 작다면, "z y"가 성명일 확률은 "y"가 어떤 성명에 대해서라도 이름일 확률과 성 "z"가 나타날 확률의 함수이다.
예컨대, 성명을 검출하기 위한 정교화된 공식으로 돌아가서,
Figure 112010036137410-pct00058
이 정확하게 평가되지 않을 수 있다. 일부 구현예에서, 백오프(Back-off) 기법을 구현할 수 있으며, 이 경우
Figure 112010036137410-pct00059
는 다음과 같이 표현될 수 있다.
Figure 112010036137410-pct00060
희귀한 성
일부 구현예에서, 모든 희귀한 성의 가능성이 단일의 희귀한 성의 가능성에 대한 대체물로서 이용된다. 예컨대, "a"가 이름이고 "b"가 성이라고 한다. 주어진 문맥에서 성명이 나타날 확률은
Figure 112010036137410-pct00061
에 의하여 나타내어질 수 있다. 만약 "b"가 희귀한 성이라면, 확률
Figure 112010036137410-pct00062
는 부정확할 수 있다. 이러한 구현예에서, 주어진 문맥에서 성명이 나타날 확률은 주어진 문맥에서 모든 희귀한 성이 훈련 데이터에 발생할 확률을 주어진 모든 희귀한 성에 대하여 "a"가 훈련 데이터에 나타날 확률을 곱한 것을 이용함으로써 더욱 정확하게 나타낼 수 있다. 즉,
Figure 112010036137410-pct00063
외국 성명 검출 모델
외국 성명(예컨대, 번역한 성명)의 상대적 빈도 역시 낮을 수 있으며, 부정확한 확률 추정치를 낳을 수 있다. 따라서 외국 성명 검출 모델은 성명 검출 모델(314)을 생성하는 것과 관련하여 상술한 것과 동일한 스텝에 따라 생성 가능하다. 특히, 로우 외국 성명 검출 모델은 로우 성명 검출 모델(206)을 생성하는 것과 마찬가지 방식으로 외국 성의 미리 정의된 집합으로부터 생성된다. 로우 외국 성명 검출 모델은 성명 검출 모델(314)을 생성하는 것과 마찬가지의 방식으로 외국 성명 검출 모델을 생성하기 위하여 다른 데이터(예컨대, 대규모 비주해 데이터 및 반-구조화 데이터)에 적용될 수 있다.
분할(segmentation)
n-그램의 주어진 입력 시퀀스에 대하여 성명을 검출하기 위해 성명 검출 모델(name detection model)을 사용하는 경우, 식별하는 성명 또는 식별하지 않은 성명 중 하나에 대한 n-그램의 확률 예상치(probability estimates)는 단어(words) 내의 문자(character)의 시퀀스를 분할하기 위해 사용될 수 있고, 이와 동시에 성명을 검출하기 위해 사용될 수 있다.
일부 구현예에서, CJK 문자의 시퀀스는 은닉 마르코프 모델(Hidden Markov Model)로 배열된다. 은닉 마르코프 모델은 은닉 파라미터(hidden parameter)와 식별가능 파라미터(observable parameter)를 포함하는 통계적 모델이다. 예를 들어, 식별가능 파라미터는 CJK 문자의 시퀀스이고, 은닉 파라미터는 CJK 문자의 가능한 시퀀스(possible sequence)이다. 보다 상세하게, CJK내 문자의 특정 문자의 시퀀스는 하나 이상의 단어 시퀀스가 될 수 있는데, 이는 CJK 문자 또는 CJK 문자의 조합이 다른 의미를 가질 수 있기 때문이다. 예를 들어, "c1 c2 c3" 문자의 시퀀스는 CJK의 가능한 시퀀스이다. 이에 더하여, "c1 c2"도 다른 CJK 단어의 가능한 시퀀스일 수 있다.
일부 구현예에서, 은닉 마르코프 모델을 분할하기 위하여 비터비 알고리즘(Viterbi algorithm)이 사용될 수 있다. 비터비 알고리즘은 관찰된 이벤트(observed event)의 시퀀스로 되는 가장 가능성 있는 은닉 상태(예를 들어, 분할 경로)의 시퀀스를 찾는 동적 프로그래밍 알고리즘이다. 예를 들어, 비터비 알고리즘은 CJK 문자의 시퀀스가 되는 가장 가능성 있는 CJK 문자의 시퀀스를 찾기 위해 사용될 수 있다.
가장 가능성 있는 CJK 문자의 시퀀스는 아래와 같이 쓰일 수 있다.
Figure 112010036137410-pct00064
이는 CJK 문자의 시퀀스를 설명하고, W는 CJK 문자의 모든 가능한 시퀀스이외의 것이고, P(W│C)에 대하여 최상 값을 제공하며, 여기서 W=w1, w2, …, wM 이고, C는 C=c1, c2, …, cL로 표현된 CJK 문자의 시퀀스이다. 추가적으로, 아래와 같은 베이스 규칙(Bayes rule)이 제공된다.
Figure 112010036137410-pct00065
언어 모델은 P(W)를 제공한다. 베이스 규칙을 사용하여, CJK 문자의 시퀀스 가 주어진 CJK 단어의 가장 가능성 있는 시퀀스는 아래와 같이 다시 쓸 수 있다.
Figure 112010036137410-pct00066
따라서 가장 가능성이 높은 W(예를 들어, CJK 단어의 가장 가능성이 높은 시퀀스)는 W가 발생할 확률과 W가 C로 구성될 확률(예를 들어, CJK 문자의 주어진 시퀀스가 CJK 문자의 시퀀스상에 보여질 확률)의 곱을 최대화한 것이다.
CJK 성명 검출은 문자에서 단어의 시퀀스를 분할함으로써 CJK 성명을 검출한다.
도 5를 참조하여, 예를 들면, CJK 문자에 대한 관찰된 입력 스트링(502)은
Figure 112010036137410-pct00067
를 포함하고, 여기서 "周"는 시퀀스의 시작을 나타내는 식별자 <S>에 의해 앞에 오고,
Figure 112010036137410-pct00068
뒤에는 시퀀스의 종단을 나타내는 식별자 <E>가 온다.
문자
Figure 112010036137410-pct00069
Figure 112010036137410-pct00070
의 시퀀스가 훈련에서 이전에 검출된 단어라고 가정한다. 또,
Figure 112010036137410-pct00071
Figure 112010036137410-pct00072
는 잠재적 성명(potential name)(예를 들어, 훈련 데이터에서 식별하는 데이터로서 검출됨)이라고 가정한다. 네이비 모델(
Figure 112010036137410-pct00073
)에서, 만약
Figure 112010036137410-pct00074
Figure 112010036137410-pct00075
는 단어로서 검출된 적이 없으면,
Figure 112010036137410-pct00076
Figure 112010036137410-pct00077
가 단어가 될 확률은 낮고, 문자의 시퀀스가 단일 문자에서 분할될 가능성이 있다. 이러한 분할 스키마 이후에 성명을 검출하는 것은 오류가 된다.
네이비 모델에서는, 은닉 마크로프 모델(예를 들어, 은닉 마르코프 모델 500)에서의 단어에 대한 일부 예시적 분할은 아래와 같다.
Figure 112010036137410-pct00078
그러나, 성명 검출 모델을 통합함으로써, 문자
Figure 112010036137410-pct00079
의 시퀀스는 성명으로 식별될 가능성이 있는 문자로서 검출될 수 있고, 또한 문자
Figure 112010036137410-pct00080
의 시퀀스도 성명으로 식별될 가능성이 있는 문자로서 검출될 수 있다. 문자의 시퀀스가 잠재적으로 성명을 식별할 가능성에 대한 확률과 연관된다는 의미에서, 문자의 이러한 시퀀스들은 문자가 될 가능성과 연관된다.
그러므로, 단어의 다른 예시적 분할이 상기 모델에 추가된다. 이 개량된 은닉 마르코프 모델에서, 단어의 추가적 예시 세그먼트는 아래와 같다.
Figure 112010036137410-pct00081
이 모델을 사용함으로써, 문자의 시퀀스 분할은 잠재적 성명을 포함하는 세그먼트에 대한 가능성에 의존하는 단어에서 문자의 시퀀스를 분할하는 것을 포함한다. 잠재적 성명을 포함하는 다른 가능성이 있는 시퀀스의 도입(introduction)은 상술된 분할 에러가 성명 검출로 전파되는 것을 방지한다. 성명이 포함된 분할 경로가 성명이 포함되지 않는 분할 경로보다 발생할 가능성이 있으면, 성명을 포함하는 분할 경로가 사용되어 성명이 검출된다. 성명을 식별하는 문자의 검출된 시퀀스와 성명을 식별하는 그것의 상응하는 가능성이 성명 검출 모델(314)에 추가된다.
일부 구현예에서, 성명 검출 모델(314)은 입력 텍스트에서 성명을 검출하기 위해 사용된다. 예를 들어, 검출기는 CJK 입력 텍스트를 수신하고, 단어에서 CJK 입력 텍스트를 동시에 분할하기 위하여 성명 검출 모델(314)을 사용해서 CJK 입력 텍스트로부터 성명을 검출한다.
도 6은 성명을 검출하는 예시적 처리(600)를 보여주는 플로우차트이다. 편의상, 이름을 검출하는 처리(600)는 검출을 수행하는 시스템에 관련되어 설명된다. 이름을 검출하는 처리(600)가 수행되는 동안, 시스템은 성명에 대하여 시퀀스의 시작 부분부터 시퀀스의 종단까지 수신된 문자의 시퀀스를 스캔한다.
시스템은 문자의 시퀀스(예를 들어, 중국 문자의 시퀀스)를 수신한다(602). 특히, 시스템은 그 시퀀스의 첫 번째 문자를 식별한다(604). 시스템은 식별된 문자가 성 후보(Family name candidate)인지를 판단한다. 만약 문자가 성 후보이면(예를 들어, 성(204)의 집합에 속하는 문자이면), 시스템은 상술된 바와 같이 성명을 검출하기 위해 개량된 함수(예를 들어, 개량의 비율)를 사용하여 성명을 검출한다(614).
만약 문자가 성 후보가 아니면, 시스템은 문자가 성 후보의 경칭(prefix)인지를 판단한다(608). 만약 문자가 성 후보의 경칭이면, 시스템은 상술된 바와 같이 성명을 검출하기 위해 개량된 함수(예를 들어, 개량의 비율)를 사용하여 성명을 검출한다(614).
만약 문자가 성 후보의 경칭이 아니면, 시스템은 문자의 시퀀스의 종단에 도달하였는지를 판단한다(610). 유사하게, 성명을 검출하기 위한 개량된 함수를 이용하여 성명을 검출(614)한 후, 또한 시스템은 시스템이 문자의 시퀀스의 종단에 도달하였는지를 판단한다(610). 만약 시스템이 시퀀스의 종단에 도달하면, 처리가 종료된다(616). 만약 시스템이 문자의 시퀀스의 종단에 도달하지 않으면, 시스템은 시퀀스의 다음 순서의 문자를 식별하고, 시퀀스의 종단에 도달할 때까지 시퀀스의 다른 문자에 대하여 단계(606, 608, 610) 및 추가적 단계(614)를 반복적으로 수행한다.
예시적 시스템
도 7은 CJK 성명 검출을 위한 예시적 시스템(700)이다. 데이터 처리 장치(710)는 하드웨어/펌웨어, 운영 체계(operating system), 및 검출 프로그램(720)을 포함하는 하나 이상의 프로그램을 포함할 수 있다. 검출 프로그램(720)은, 데이터 처리 장치(710)에 결합되어, 본 명세서에서 설명된 동작들을 달성하기 위해 동작한다. 따라서 검출 프로그램(720)은, 하나 이상의 프로세서 및 컴퓨터 판독가능 매체(computer-readable memory)(예를 들어, 메모리)와 결합되어, 시스템(700)에서 하나 이상의 구조적 구성요소를 나타낸다.
검출 프로그램(720)은 검출 처리 애플리케이션 또는 부분(portion)일 수 있다. 본 명세서에서 사용된 것과 같이, 애플리케이션은 정의된 목적을 위한 별개의 컴퓨터 도구(computer tool)로서 사용자가 인지하는 컴퓨터 프로그램이다. 애플리케이션은 데이터 처리 장치(710)의 운용 체계(OS)내에서 완전히 구축되거나, 애플리케이션은 다른 위치에 위치한 다른 구성요소(예를 들어, 운영 체계 또는 커널(kernel) 모드에서 일 부분, 사용자 모드에서의 일 부분, 및 원격 서버에서의 일 부분)를 가질 수 있고, 애플리케이션은 장치(710)의 소프트웨어 플랫폼으로서 역할하는 구동시간 라이브러리(runtime library) 상에 구축될 수 있다. 더욱이, 애플리케이션 처리는 하나 이상의 프로세서(790)를 사용하여 네트워크(780)를 통해 분배될 수 있다. 예를 들어, 검출 프로그램(720)의 언어 모델은 하나 이상의 프로세서(790)를 통해 분배적으로 훈련될 수 있다.
데이터 처리 장치(710)는 하나 이상의 프로세서(730)와 적어도 하나의 컴퓨터 판독가능 매체(740)(예를 들어, RAM(Random Access Memory), 저장 디바이스 등)를 포함한다. 또한, 데이터 처리 장치(710)는 통신 인터페이스(750), 하나 이상의 사용자 인터페이스 디바이스(760), 및 하나 이상의 추가 장치(770)를 포함할 수 있다. 사용자 인터페이스 디바이스(760)는 디스플레이 스크린, 키보드, 마우스, 스타일러스(stylus) 또는 이것들의 임의 조합을 포함할 수 있다.
프로그램되자마자, 데이터 처리 장치(710)는 언어 모델(language models), 성명 모델(name models), 및 외국 성명 모델(foreign name models)을 수집하기 위해 동작할 수 있다.
본 명세서에 기재된 요지와 기능적 동작들의 실시예들은 디지털 전자 회로로 구현되거나, 또는 상세한 설명에 기재된 구조 및 그들의 구조적 등가물을 포함하는 컴퓨터 소프트웨어, 펌웨어, 또는 하드웨어로 구현되거나, 또는 이들 중 하나 이상의 조합으로 구현될 수 있다. 본 명세서에 기재된 요지의 실시예들은 하나 이상의 컴퓨터 프로그램 제품, 즉, 데이터 프로세싱 장치에 의해 실행되거나 또는 그 장치의 동작을 제어하도록, 유형의 프로그램 운반체(carrier)에 구체화된 컴퓨터 프로그램 명령의 하나 이상의 모듈로서 구현될 수 있다. 유형의 프로그램 운반체는 전파되는(propagated) 신호 또는 컴퓨터 판독가능 매체일 수 있다. 전파되는 신호는 인공적으로 생성된 신호(예를 들어, 기계-생성 전기, 광 또는 전자기 신호)로서, 컴퓨터에 의한 실행을 위하여 적절한 수신 장치로 전송하기 위한 정보를 인코딩하기 위해 생성된다. 컴퓨터 판독가능 매체는 기계 판독가능 저장 디바이스, 기계 판독가능 저장 기판(substrate), 메모리 디바이스, 기계 판독가능 전파되는 신호를 실현하는 조성물, 또는 이들 중 하나 이상의 조합일 수 있다.
"데이터 프로세싱 장치"라는 용어는 데이터를 처리하기 위한 모든 장치, 디바이스 및 기계를 포괄하며, 예를 들어, 프로그래머블 프로세서, 컴퓨터 또는 복수의 프로세서나 컴퓨터를 포함한다. 장치는, 하드웨어 외에도, 당해 컴퓨터 프로그램에 대한 실행 환경을 생성하는 코드를 포함한다. 코드는 예를 들어, 프로세서 펌웨어, 프로토콜 스택, 데이터베이스 관리 시스템, 운영 시스템, 또는 이들 중 하나 이상의 조합을 구성한다.
컴퓨터 프로그램(프로그램, 소프트웨어, 소프트웨어 애플리케이션, 스크립트 또는 코드로도 알려짐)은 컴파일 또는 인터프리터 언어나 선언적 또는 절차적 언어를 포함하는 모든 형태의 프로그래밍 언어로 작성될 수 있으며, 독립형 프로그램이나 모듈, 컴포넌트, 서브루틴 또는 컴퓨터 환경에서 사용하기에 적합한 그 밖의 유닛을 포함하는 임의의 형태로도 배치될 수 있다. 컴퓨터 프로그램은 파일 시스템의 파일에 반드시 상응해야 하는 것은 아니다. 프로그램은 다른 프로그램 또는 데이터를 보유하는 파일의 일부에 저장되거나(예를 들어, 마크업 언어 문서 내에 저장되는 하나 이상의 스크립트), 당해 프로그램 전용의 단일 파일에 저장되거나, 또는 다수의 조화된(coordinated) 파일들(예를 들어, 하나 이상의 모듈, 서브프로그램, 코드의 부분을 저장하는 파일)에 저장될 수 있다. 컴퓨터 프로그램은 하나의 컴퓨터에서, 또는 한 위치에 배치되거나 또는 다수의 위치에 걸쳐서 분산되고 통신 네트워크에 의해 접속된 다수의 컴퓨터에서 실행되도록 배치될 수 있다.
본 명세서에서 설명된 프로세서와 논리 흐름은 입력 데이터로 동작하고 출력을 생성함으로써 동작을 수행하는 하나 이상의 프로그램을 수행하는 프로그램 가능 프로세서에 의해 구현할 수 있다. 예를 들어, FPGA(field programmable gate array) 또는 ASIC(application specific integrated circuit)과 같은 전용 논리 회로가 프로세스와 논리 흐름을 수행하거나, 장치를 구현할 수 있다.
컴퓨터 프로그램의 실행에 적합한 프로세서에는, 예를 들어, 범용 및 전용 마이크로프로세서, 및 임의 종류의 디지털 컴퓨터 중 하나 이상의 프로세서가 있다. 일반적으로, 프로세서는 판독 전용 메모리(ROM), 또는 랜덤 액세스 메모리(RAM), 또는 양자로부터 명령과 데이터를 수신한다. 컴퓨터의 필수 구성요소는 명령을 실행하는 프로세서, 및 명령과 데이터를 저장하는 하나 이상의 메모리 디바이스이다. 일반적으로, 컴퓨터는 데이터를 저장하기 위한 하나 이상의 대용량 저장 디바이스(예를 들어, 자기 디스크, 광자기 디스크, 또는 광디스크)를 포함하거나, 또는 이 디바이스와 데이터를 송수신하기 위하여 동작적으로(operatively) 결합될 수 있다. 하지만 컴퓨터는 이러한 디바이스를 반드시 구비할 필요는 없다. 더욱이, 컴퓨터는 예를 들어, 모바일 전화기, 개인 정보 단말(PDA), 모바일 오디오 또는 비디오 재생기, 게임 콘솔, GPS(global positioning system) 수신기 등과 같은 다른 디바이스에 내장될 수 있다.
컴퓨터 프로그램 명령과 데이터를 저장하기 적합한 컴퓨터 판독가능 매체에는, 예를 들어, 반도체 메모리 디바이스(예를 들어, EPROM, EEPROM, 플래시 메모리 디바이스); 자기 디스크(예를 들어, 내부 하드디스크, 착탈식 디스크); 광자기 디스크; 및 CD ROM과 DVD-ROM 디스크를 포함하는 모든 형태의 비휘발성 메모리, 매체 및 메모리 디바이스가 있다. 프로세서와 메모리는 전용 논리 회로에 의해 보완되거나 또는 전용 논리 회로에 통합될 수 있다.
사용자와의 상호작용을 제공하기 위하여, 본 명세서에 기술된 요지의 실시예는, 정보를 사용자에게 디스플레이하기 위한 디스플레이 디바이스(예를 들어, CRT(cathode ray tube) 또는 LCD(liquid crystal display) 모니터), 키보드 및 포인팅 디바이스(예를 들어, 마우스 또는 트랙볼)를 구비한 컴퓨터에 구현될 수 있다. 사용자는 키보드와 포인팅 디바이스를 이용하여 컴퓨터에 입력을 제공할 수 있다. 사용자와의 상호작용을 제공하기 위하여 다른 종류의 디바이스가 또한 사용될 수 있다. 예를 들어, 사용자에게 제공되는 피드백(feedback)은 예를 들어, 시각 피드백, 청각 피드백 또는 촉각 피드백인 임의 형태의 감각 피드백일 수 있고, 사용자로부터의 입력은 음향, 음성 또는 촉각 입력을 포함하는 임의의 형태로 수신될 수 있다.
본 명세서에 기술된 요지의 실시예는, 예를 들어, 데이터 서버와 같은 백엔드(back-end) 구성요소를 구비하는 컴퓨팅 시스템; 또는 예를 들어, 애플리케이션 서버와 같은 미들웨어 구성요소를 구비하는 컴퓨팅 시스템; 또는 예를 들어, 사용자가 본 명세서에 기술된 요지의 구현예와 상호작용할 수 있는 그래픽 사용자 인터페이스 또는 웹브라우저를 구비한 클라이언트 컴퓨터와 같은 프론트엔드(front-end) 구성요소를 구비하는 컴퓨터 시스템; 또는 이러한 백엔드, 미들웨어 또는 프론트엔드 구성요소들의 임의 조합을 구비하는 컴퓨팅 시스템으로 구현될 수 있다. 시스템의 구성요소는 디지털 데이터 통신의 임의 형태 또는 매체(예를 들어, 통신 네트워크)에 의해 상호접속될 수 있다. 통신 네트워크의 예에는 근거리 네트워크(LAN)와 인터넷과 같은 광역 네트워크(WAN)가 포함된다.
컴퓨팅 시스템은 클라이언트와 서버를 포함할 수 있다. 클라이언트와 서버는 보통 서로 떨어져 있으며, 일반적으로는 통신 네트워크를 통하여 상호작용한다. 클라이언트와 서버의 관계는 각각의 컴퓨터상에서 실행되고 상호 클라이언트-서버 관계를 갖는 컴퓨터 프로그램에 의하여 발생한다.
본 명세서가 다수의 특정한 구현 세부사항을 포함하고 있지만, 이는 발명의 범위나 청구할 사항의 범위에 대한 어떠한 제한으로서도 이해되어서는 안 되며, 특정 발명의 특정한 실시형태에 고유할 수 있는 특징의 설명으로서 이해되어야 한다. 별개의 실시형태의 문맥으로 본 명세서에서 설명된 소정 특징은 조합되어 단일 실시형태로 구현될 수 있다. 반대로, 단일 실시형태의 문맥에서 설명한 다양한 특징은 복수의 실시형태에서 별개로 구현되거나 어떤 적당한 하위 조합으로서도 구현 가능하다. 또한, 앞에서 특징이 소정 조합에서 동작하는 것으로서 설명되고 그와 같이 청구되었지만, 청구된 조합으로부터의 하나 이상의 특징은 일부 경우에 해당 조합으로부터 삭제될 수 있으며, 청구된 조합은 하위 조합이나 하위 조합의 변형으로 될 수 있다.
마찬가지로, 도면에서 특정한 순서로 동작을 묘사하고 있지만, 그러한 동작이 바람직한 결과를 얻기 위해, 도시한 특정 순서나 순차적인 순서로 수행되어야 한다거나, 설명한 모든 동작이 수행되어야 한다는 것을 의미하는 것은 아니다. 소정 환경에서, 멀티태스킹 및 병렬 프로세싱이 바람직할 수 있다. 또한, 상술한 실시형태에 있어서 다양한 시스템 구성요소의 분리는 모든 실시형태에서 그러한 분리를 요구하는 것으로 이해해서는 안 되며, 설명한 프로그램 구성요소와 시스템은 단일 소프트웨어 제품으로 통합되거나 또는 복수의 소프트웨어 제품으로 패키지될 수 있다는 점을 이해해야 한다.
본 명세서에서 설명한 요지의 특정 실시형태가 기술되었다. 그 밖의 실시형태는 후술하는 청구범위 내에 속한다. 예를 들어, 청구항에 인용된 동작들은 상이한 순서로 수행될 수 있지만, 여전히 바람직한 결과를 달성한다. 일 실시예로서, 첨부한 도면에 도시한 프로세스는, 바람직한 결과를 얻기 위해, 도시한 특정 순서나 순차적인 순서를 반드시 요구하는 것은 아니다. 소정 구현예에서, 멀티태스킹과 병렬 프로세싱이 바람직할 수 있다.

Claims (38)

  1. 삭제
  2. 삭제
  3. 삭제
  4. 삭제
  5. 삭제
  6. 삭제
  7. 삭제
  8. 삭제
  9. 입력 문자열을 수신하는 단계; 및
    복수의 문자를 갖는 상기 입력 문자열에 성명 검출 모델을 적용하는 단계를 포함하고,
    상기 성명 검출 모델을 적용하는 단계는,
    하나 이상의 성명을 포함하지 않는 상기 복수의 문자열 중 가장 가능성 있는 분할(most likely segmentation)을 식별하는 단계;
    상기 복수의 문자 중 하나 이상의 문자 시퀀스를, 하나 이상의 이름을 잠재적으로 식별하는 것으로서 검출하는 단계;
    상기 복수의 문자―여기서 복수의 문자는 하나 이상의 잠재적 성명을 포함함―의 분할을 식별하는 단계; 및
    잠재적인 하나 이상의 성명을 포함하는 분할의 가능성(likelihood)이 하나 이상의 성명을 포함하지 않는 가장 가능성 있는 분할보다 클 때, 상기 복수의 문자를 하나 이상의 성명을 포함하는 것으로 분할하는 단계를 포함하는 것을 특징으로 하는 방법.
  10. 청구항9에 있어서, 상기 복수의 문자가 하나 이상의 성명을 포함하는 것으로 분할될 때 하나 이상의 성명을 검출하는 단계를 더 포함하는 방법.
  11. 삭제
  12. 삭제
  13. 삭제
  14. 입력 문자열을 수신하는 수단; 및
    복수의 문자를 갖는 상기 입력 문자열에 성명 검출 모델을 적용하는 수단을 포함하고,
    상기 성명 검출 모델의 적용은,
    하나 이상의 성명을 포함하지 않는 상기 복수의 문자열 중 가장 가능성 있는 분할을 식별하고,
    상기 복수의 문자 중 하나 이상의 문자 시퀀스를, 하나 이상의 이름을 잠재적으로 식별하는 것으로서 검출하고,
    상기 복수의 문자―여기서 복수의 문자는 하나 이상의 잠재적 성명을 포함함―의 분할을 식별하고, 및
    잠재적인 하나 이상의 성명을 포함하는 분할의 가능성이 하나 이상의 성명을 포함하지 않는 가장 가능성 있는 분할보다 클 때, 상기 복수의 문자를 하나 이상의 성명을 포함하는 것으로 분할하는 것을 포함하는 것을 특징으로 하는 시스템.
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
  23. 컴퓨터 프로그램이 수록된 컴퓨터 판독 가능 기록 매체로서, 상기 컴퓨터 프로그램은 데이터 처리 장치로 하여금,
    입력 문자열을 수신하는 단계; 및
    복수의 문자를 갖는 상기 입력 문자열에 성명 검출 모델을 적용하는 단계로서,
    하나 이상의 성명을 포함하지 않는 상기 복수의 문자열 중 가장 가능성 있는 분할을 식별하는 단계;
    상기 복수의 문자 중 하나 이상의 문자 시퀀스를, 하나 이상의 이름을 잠재적으로 식별하는 것으로서 검출하는 단계;
    상기 복수의 문자―여기서 복수의 문자는 하나 이상의 잠재적 성명을 포함함―의 분할을 식별하는 단계; 및
    잠재적인 하나 이상의 성명을 포함하는 분할의 가능성이 하나 이상의 성명을 포함하지 않는 가장 가능성 있는 분할보다 클 때, 상기 복수의 문자를 하나 이상의 성명을 포함하는 것으로 분할하는 단계를 포함하는 상기 성명 검출 모델을 적용하는 단계를 포함하는 동작을 수행시키는 것을 특징으로 하는 컴퓨터 판독 가능 기록 매체.
  24. 청구항23에 있어서, 상기 데이터 처리 장치로 하여금, 상기 복수의 문자가 하나 이상의 성명을 포함하는 것으로 분할될 때 하나 이상의 성명을 검출하는 단계를 더 포함하는 동작을 수행시키는 것을 특징으로 하는 컴퓨터 판독 가능 기록 매체.
  25. 삭제
  26. 삭제
  27. 삭제
  28. 삭제
  29. 삭제
  30. 삭제
  31. 삭제
  32. 삭제
  33. 삭제
  34. 삭제
  35. 하나 이상의 컴퓨터를 포함하는 시스템으로서, 상기 컴퓨터는
    입력 문자열을 수신하는 단계; 및
    복수의 문자를 갖는 상기 입력 문자열에 성명 검출 모델을 적용하는 단계로서,
    하나 이상의 성명을 포함하지 않는 상기 복수의 문자열 중 가장 가능성 있는 분할을 식별하는 단계;
    상기 복수의 문자 중 하나 이상의 문자 시퀀스를, 하나 이상의 이름을 잠재적으로 식별하는 것으로서 검출하는 단계;
    상기 복수의 문자―여기서 복수의 문자는 하나 이상의 잠재적 성명을 포함함―의 분할을 식별하는 단계; 및
    잠재적인 하나 이상의 성명을 포함하는 분할의 가능성이 하나 이상의 성명을 포함하지 않는 가장 가능성 있는 분할보다 클 때, 상기 복수의 문자를 하나 이상의 성명을 포함하는 것으로 분할하는 단계를 포함하는 상기 성명 검출 모델을 적용하는 단계를 포함하는 동작을 수행할 수 있는 것을 특징으로 하는 시스템.
  36. 청구항35에 있어서, 상기 하나 이상의 컴퓨터는, 상기 복수의 문자가 하나 이상의 성명을 포함하는 것으로 분할될 때 하나 이상의 성명을 검출하는 단계를 더 포함하는 동작을 수행할 수 있는 것을 특징으로 하는 시스템.
  37. 삭제
  38. 삭제
KR1020107012445A 2007-12-06 2007-12-06 Cjk 성명 검출 KR101453937B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2007/003464 WO2009070931A1 (en) 2007-12-06 2007-12-06 Cjk name detection

Publications (2)

Publication Number Publication Date
KR20100105586A KR20100105586A (ko) 2010-09-29
KR101453937B1 true KR101453937B1 (ko) 2014-10-23

Family

ID=40717264

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020107012445A KR101453937B1 (ko) 2007-12-06 2007-12-06 Cjk 성명 검출

Country Status (6)

Country Link
US (1) US8478787B2 (ko)
EP (1) EP2227757A4 (ko)
JP (1) JP5379155B2 (ko)
KR (1) KR101453937B1 (ko)
CN (1) CN101939741B (ko)
WO (1) WO2009070931A1 (ko)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8639510B1 (en) 2007-12-24 2014-01-28 Kai Yu Acoustic scoring unit implemented on a single FPGA or ASIC
US8352265B1 (en) 2007-12-24 2013-01-08 Edward Lin Hardware implemented backend search engine for a high-rate speech recognition system
US8463610B1 (en) 2008-01-18 2013-06-11 Patrick J. Bourke Hardware-implemented scalable modular engine for low-power speech recognition
US20110184723A1 (en) * 2010-01-25 2011-07-28 Microsoft Corporation Phonetic suggestion engine
CN102193709B (zh) * 2010-03-01 2015-05-13 深圳市世纪光速信息技术有限公司 一种字符输入方法及装置
US9535895B2 (en) * 2011-03-17 2017-01-03 Amazon Technologies, Inc. n-Gram-based language prediction
US9218334B2 (en) * 2011-11-08 2015-12-22 Verisign, Inc. Pronounceable domain names
US9348479B2 (en) 2011-12-08 2016-05-24 Microsoft Technology Licensing, Llc Sentiment aware user interface customization
US9378290B2 (en) 2011-12-20 2016-06-28 Microsoft Technology Licensing, Llc Scenario-adaptive input method editor
US8880989B2 (en) 2012-01-30 2014-11-04 Microsoft Corporation Educating users and enforcing data dissemination policies
US9087039B2 (en) 2012-02-07 2015-07-21 Microsoft Technology Licensing, Llc Language independent probabilistic content matching
CN110488991A (zh) 2012-06-25 2019-11-22 微软技术许可有限责任公司 输入法编辑器应用平台
US8959109B2 (en) 2012-08-06 2015-02-17 Microsoft Corporation Business intelligent in-document suggestions
KR101911999B1 (ko) 2012-08-30 2018-10-25 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 피처 기반 후보 선택 기법
CN103065630B (zh) * 2012-12-28 2015-01-07 科大讯飞股份有限公司 用户个性化信息语音识别方法及系统
WO2015018055A1 (en) 2013-08-09 2015-02-12 Microsoft Corporation Input method editor providing language assistance
CN105320663A (zh) * 2014-06-11 2016-02-10 安凯(广州)微电子技术有限公司 一种控制方法、装置和智能机器
CN105988993B (zh) * 2015-03-06 2019-05-07 阿里巴巴集团控股有限公司 检测网站上注册的姓名合理性的方法和装置
US10049099B2 (en) * 2015-04-10 2018-08-14 Facebook, Inc. Spell correction with hidden markov models on online social networks
US9898452B2 (en) 2015-10-16 2018-02-20 International Business Machines Corporation Annotation data generation and overlay for enhancing readability on electronic book image stream service
CN106874256A (zh) * 2015-12-11 2017-06-20 北京国双科技有限公司 识别领域命名实体的方法及装置
US10311860B2 (en) * 2017-02-14 2019-06-04 Google Llc Language model biasing system
CN107038157B (zh) * 2017-05-05 2020-09-29 百度在线网络技术(北京)有限公司 基于人工智能的识别错误发现方法、装置及存储介质
JP6781905B1 (ja) * 2019-07-26 2020-11-11 株式会社Fronteo 情報処理装置、自然言語処理システム、制御方法、および制御プログラム
US20220319497A1 (en) * 2021-04-02 2022-10-06 Samsung Electronics Co., Ltd. Electronic device and operation method thereof

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020003898A1 (en) 1998-07-15 2002-01-10 Andi Wu Proper name identification in chinese
US20030229487A1 (en) 2002-06-11 2003-12-11 Fuji Xerox Co., Ltd. System for distinguishing names of organizations in Asian writing systems
JP2005539283A (ja) 2001-12-21 2005-12-22 ウエスト パブリッシング カンパニー,ディー.ビー.エー.ウエスト グループ 名前をハイパーリンクするためのシステム、方法、及びソフトウェア

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6311152B1 (en) * 1999-04-08 2001-10-30 Kent Ridge Digital Labs System for chinese tokenization and named entity recognition
WO2005064490A1 (en) * 2003-12-31 2005-07-14 Agency For Science, Technology And Research System for recognising and classifying named entities
US8280719B2 (en) * 2005-05-05 2012-10-02 Ramp, Inc. Methods and systems relating to information extraction
US7464078B2 (en) 2005-10-25 2008-12-09 International Business Machines Corporation Method for automatically extracting by-line information
KR100755678B1 (ko) * 2005-10-28 2007-09-05 삼성전자주식회사 개체명 검출 장치 및 방법
US8185376B2 (en) * 2006-03-20 2012-05-22 Microsoft Corporation Identifying language origin of words
US20080046824A1 (en) * 2006-08-16 2008-02-21 Microsoft Corporation Sorting contacts for a mobile computer device
CN101815996A (zh) * 2007-06-01 2010-08-25 谷歌股份有限公司 检测名称实体和新词

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020003898A1 (en) 1998-07-15 2002-01-10 Andi Wu Proper name identification in chinese
JP2005539283A (ja) 2001-12-21 2005-12-22 ウエスト パブリッシング カンパニー,ディー.ビー.エー.ウエスト グループ 名前をハイパーリンクするためのシステム、方法、及びソフトウェア
US20030229487A1 (en) 2002-06-11 2003-12-11 Fuji Xerox Co., Ltd. System for distinguishing names of organizations in Asian writing systems

Also Published As

Publication number Publication date
CN101939741A (zh) 2011-01-05
WO2009070931A1 (en) 2009-06-11
KR20100105586A (ko) 2010-09-29
EP2227757A4 (en) 2018-01-24
US20100306139A1 (en) 2010-12-02
EP2227757A1 (en) 2010-09-15
US8478787B2 (en) 2013-07-02
JP5379155B2 (ja) 2013-12-25
JP2011505638A (ja) 2011-02-24
CN101939741B (zh) 2013-03-20

Similar Documents

Publication Publication Date Title
KR101453937B1 (ko) Cjk 성명 검출
JP6675463B2 (ja) 自然言語の双方向確率的な書換えおよび選択
Lu et al. Better punctuation prediction with dynamic conditional random fields
US8731901B2 (en) Context aware back-transliteration and translation of names and common phrases using web resources
Shoufan et al. Natural language processing for dialectical Arabic: A survey
CN102483743B (zh) 对书写体系和语言的检测
US8630847B2 (en) Word probability determination
KR101650112B1 (ko) 음역을 위한 기계 학습
US10803241B2 (en) System and method for text normalization in noisy channels
JP6090531B2 (ja) 単語訳取得方法
KR101500617B1 (ko) 한국어 어휘 의미망을 이용한 문맥 철자오류 교정 장치 및 방법
JP2005267638A (ja) 改善されたスペルチェックのためのシステムおよび方法
KR101573854B1 (ko) 관계어 기반 확률추정 방법을 이용한 통계적 문맥의존 철자오류 교정 장치 및 방법
JP6705318B2 (ja) 対訳辞書作成装置、対訳辞書作成方法、及び対訳辞書作成プログラム
Zhikov et al. An efficient algorithm for unsupervised word segmentation with branching entropy and MDL
JP2010537286A (ja) 領域辞書の作成
Sun et al. Capturing paradigmatic and syntagmatic lexical relations: Towards accurate Chinese part-of-speech tagging
JP5770753B2 (ja) Cjk名前検出
Sajjad et al. Statistical models for unsupervised, semi-supervised, and supervised transliteration mining
Onyenwe et al. Toward an effective igbo part-of-speech tagger
Mekki et al. Tokenization of Tunisian Arabic: a comparison between three Machine Learning models
Fernandes et al. Lightweight context-based web-service composition model for mobile devices
Baishya et al. Present state and future scope of Assamese text processing
CN103136190B (zh) Cjk姓名检测
Babhulgaonkar et al. Experimenting with factored language model and generalized back-off for Hindi

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: 20181010

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20191002

Year of fee payment: 6