KR20190084319A - 이름들을 매칭시키기 위한 방법 및 장치 - Google Patents

이름들을 매칭시키기 위한 방법 및 장치 Download PDF

Info

Publication number
KR20190084319A
KR20190084319A KR1020197018218A KR20197018218A KR20190084319A KR 20190084319 A KR20190084319 A KR 20190084319A KR 1020197018218 A KR1020197018218 A KR 1020197018218A KR 20197018218 A KR20197018218 A KR 20197018218A KR 20190084319 A KR20190084319 A KR 20190084319A
Authority
KR
South Korea
Prior art keywords
name
matched
names
matching
standard
Prior art date
Application number
KR1020197018218A
Other languages
English (en)
Other versions
KR102151367B1 (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 KR20190084319A publication Critical patent/KR20190084319A/ko
Application granted granted Critical
Publication of KR102151367B1 publication Critical patent/KR102151367B1/ko

Links

Images

Classifications

    • 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
    • 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
    • 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/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed 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/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2468Fuzzy queries
    • 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/334Query execution
    • 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/334Query execution
    • G06F16/3343Query execution using phonetics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • G06F16/90344Query processing by using string matching techniques
    • G06F17/27
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/247Thesauruses; Synonyms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Computational Linguistics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Fuzzy Systems (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Probability & Statistics with Applications (AREA)
  • Artificial Intelligence (AREA)
  • Automation & Control Theory (AREA)
  • Acoustics & Sound (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)
  • Alarm Systems (AREA)

Abstract

본 출원의 구현들은 이름을 매칭시키기 위한 방법 및 장치를 개시한다. 방법은, 매칭될 이름을 획득하는 단계; 상기 매칭될 이름을 매칭시키는 데 사용되는 표준 이름 세트를 결정하는 단계; 상기 매칭될 이름이 상기 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 상기 이름들의 글자들이 동일하지 않은지 여부를 결정하기 위해 상기 매칭될 이름을 검출하는 단계; 및 검출 결과에 기초하여 상기 매칭될 이름의 매칭 결과를 결정하는 단계를 포함한다. 본 출원의 구현을 사용함으로써 매칭 정확도가 개선될 수 있고 위험 제어 시스템의 오경보율이 감소될 수 있다.

Description

이름들을 매칭시키기 위한 방법 및 장치
본 출원은 컴퓨터 소프트웨어 기술들의 분야에 관한 것으로, 특히 이름들을 매칭시키기 위한 방법 및 장치에 관한 것이다.
사람 이름 매칭은 위험 제어 분야에서 매우 중요한 기술이다. 예를 들어, 위험 제어 시스템은 결정된 비인가 사용자들의 사람 이름들을 블랙리스트에 기록한다. 그 후, 위험 제어 동작을 수행할 때, 현재 서비스를 수행하는 각각의 사용자에 대해, 각각의 사용자의 사람 이름이 스캐닝을 통해 블랙리스트의 각각의 사람 이름과 매칭된다. 매칭이 성공하는 경우, 사용자는 비인가 사용자로서 간주될 수 있고, 사용자의 서비스는 소정의 위험들을 방지하기 위해 거부된다.
사람 이름 매칭은 정확한 사람 이름 매칭 및 사람 이름 퍼지 매칭(person name fuzzy matching)으로 분류될 수 있다. 비교하면, 사람 이름 퍼지 매칭은 적절한 퍼지 정도를 제어하기가 어렵기 때문에 기술들의 관점에서 더 어렵다.
기존의 기술에서, 사람 이름 퍼지 매칭을 수행하기 위해 문자열 매칭 알고리즘(string matching algorithm)이 일반적으로 사용되며, 문자열 매칭 정도 임계치가 퍼지 정도를 결정한다. 그러나 문자열 매칭 정도 임계치는 모두 경험에 따라 설정된다. 누락을 감소시키기 위해, 문자열 매칭 정도 임계치는 일반적으로 비교적 낮은 값으로 설정된다. 결과적으로, 매칭 정확도가 비교적 낮고, 위험 제어 시스템의 오경보율이 비교적 높다.
본 출원의 구현들은 이름들을 매칭시키기 위한 방법 및 장치를 제공하여 다음의 기술적인 문제를 완화한다. 기존의 기술에서, 문자열 매칭 알고리즘을 사용하여 사람 이름 퍼지 매칭을 수행할 때, 비교적 낮은 매칭 정확도와 비교적 높은 시스템 오경보율이 발생한다.
이전의 기술적인 문제를 완화하기 위해, 본 출원의 구현들은 다음과 같이 구현된다.
본 출원의 구현은 이름들을 매칭시키기 위한 방법을 제공하며, 이 방법은, 매칭될 이름을 획득하는 단계; 매칭될 이름을 매칭시키는 데 사용되는 표준 이름 세트를 결정하는 단계; 매칭될 이름이 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 이름들의 글자(character)들이 동일하지 않은지 여부를 결정하기 위해 매칭될 이름을 검출하는 단계; 및 검출 결과에 기초하여 매칭될 이름의 매칭 결과를 결정하는 단계를 포함한다.
본 출원의 구현은 이름들을 매칭시키기 위한 장치를 제공하며, 이 장치는, 매칭될 이름을 획득하도록 구성된 획득 모듈; 매칭될 이름을 매칭시키는 데 사용되는 표준 이름 세트를 결정하도록 구성된 결정 모듈; 매칭될 이름이 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 이름들의 글자들이 동일하지 않은지 여부를 결정하기 위해 매칭될 이름을 검출하도록 구성된 검출 모듈; 및 검출 결과에 기초하여 매칭될 이름의 매칭 결과를 결정하도록 구성된 매칭 모듈을 포함한다.
본 출원의 구현들에 사용된 적어도 하나의 기술적 솔루션은 다음의 유익한 효과들을 달성할 수 있다. 이름은 사람 이름을 포함할 수 있다. 실제로, 매칭될 사람 이름은 데이터 입력 동안 적시성 및 불확실성 그리고 사람 이름의 가변성으로 인해 실제 사람 이름과 상이할 수 있다. 이는 또한 퍼지 매칭을 수행하는 이유이다. 이러한 이유로, 본 출원의 솔루션에서, 매칭될 이름이 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 이름들의 글자들이 동일하지 않은지 여부를 결정하기 위해 매칭될 사람 이름이 검출되고, 사람 이름 매칭 결과가 검출 결과에 기초하여 결정된다. 경험에 따라 설정된 문자열 매칭 정도 임계치만을 사용함으로써 퍼지 정도가 제어되는 기존의 기술과 비교하면, 본 출원은 퍼지 정도를 제어하는 정확도를 개선하는데 보다 도움이 된다. 따라서, 매칭 정확도가 개선될 수 있고 위험 제어 시스템의 오경보율이 감소될 수 있다. 따라서 기존 기술들의 문제들 중 일부 또는 전부가 완화될 수 있다.
본 출원의 구현들 또는 기존의 기술에서의 기술적 솔루션을 보다 명확하게 설명하기 위해, 다음은 구현들 또는 기존의 기술을 설명하는 데 필요한 첨부 도면들을 간략하게 설명한다. 명백하게, 다음의 설명에서 첨부 도면은 단지 본 출원의 일부 구현들을 도시할 뿐이며, 당업자는 창의적인 노력 없이도 이들 첨부 도면으로부터 다른 도면을 여전히 유도할 수 있다.
도 1은 본 출원의 구현에 따라 이름들을 매칭시키기 위한 방법을 예시하는 개략적인 흐름도이다.
도 2는 본 출원의 구현에 따라, 실제 애플리케이션 시나리오에서 이름들을 매칭시키기 위한 방법에서 예비 선별(preliminary screening)의 구현을 예시하는 개략적인 흐름도이다.
도 3은 본 출원의 구현에 따라, 실제 애플리케이션 시나리오에서 이름들을 매칭시키기 위한 방법에서 통합된 알고리즘을 사용함으로써 퍼지 매칭을 수행하는 구현을 예시하는 개략적인 흐름도이다.
도 4는 본 출원의 구현에 따라, 실제 애플리케이션 시나리오에서 이름들을 매칭시키기 위한 방법의 구현을 예시하는 개략적인 흐름도이다.
도 5는 본 출원의 구현에 따라, 도 1에 대응하고 이름들을 매칭시키기 위한 장치를 예시하는 개략적인 구조도이다.
본 출원의 구현들은 이름들을 매칭시키기 위한 방법 및 장치를 제공한다.
당업자가 본 출원의 기술적 솔루션을 더 잘 이해할 수 있도록 하기 위해, 다음은 본 출원의 구현들의 첨부 도면들을 참조하여 본 출원의 구현들의 기술 솔루션들을 명확하고 포괄적으로 설명한다. 명백하게, 설명된 구현들은 본 출원의 모든 구현들이기 보다는, 단지 일부일 뿐이다. 창의적인 노력 없이 본 출원의 구현들에 기초하여 당업자에 의해 획득된 다른 모든 구현들은 본 개시내용의 보호 범위 내에 있다.
위에서 설명된 바와 같이, 실제로, 매칭될 사람 이름은 데이터 입력 동안 적시성 및 불확실성 그리고 사람 이름의 가변성(이는 주로 사람 이름의 "형상(즉, 글자)"의 변화를 나타냄)으로 인해 실제 사람 이름과 상이할 수 있다. 이해를 용이하게 하기 위해, 영어 사람 이름이 예로서 사용된다. 영어 사람 이름의 일반적인 변형 유형들 및 사례들이 표 1에 도시된다.

영어 사람 이름의 공통 변동 유형

사람 이름 변동 유형의 사례

철자오기

Jaxson, Jakson, 및 Jaxon은 원래 동일한 사람 이름을 표현하는 것으로 예상됨. SMYTH 및 SMITH는 원래 동일한 사람 이름을 표현하는 것으로 예상됨. 철자 오류

표음 철자 차이

Michel, Michal, 및 Migue은 동일한 사람 이름을 표현하는 것으로 예상됨. 유사한 발음들에 의해 야기된 철자오기

별명

Mike, Mick, 및 Mikey은 동일한 사람의 별명을 표현함

호칭

Dr., Mr. 등은 사림을 칭하는 용어이며, 이들이 사람 이름과 함께 나타날 때 사람 이름의 의미에 영향을 주지 않음

동의어

Mohamed, Mohammed, 및 Mohammad은 사람 이름에서 나타날 때 동의어임

약어

사람 이름 ROB는 ROBBIN에 대한 약어이고, ROB 및 ROBBIN은 동의어임. 사람 이름 BOB은 BOBBY에 대한 약어이고, ROB 및 BOBBY는 동의어임

다국 언어 차이

러시아인 BORISOV는 BORISOVNA와 상이한 의미를 갖고, 스페인의 JUANLTA는 JUAN과 동의어임
문자열 매칭 방법만이 사람 이름을 매칭시키는 데 사용되는 경우, 소정의 문자를 "철자오기(misspelling)"하는 변동 유형들에 대한 매칭이 시도될 수 있는 것이 가능하다(실제로, 매칭은 우연히 성공하고 확고한 근거가 존재하지 않음). 그러나 다른 변동 유형들에 대해 매칭 정확도가 매우 낮다.
본 출원의 솔루션들에서, 특정 검출, 이를테면, 약어 검출, 호칭 검출, 복수 언어 검출 또는 가명 검출이 다른 변동 유형들에 대해 수행될 수 있어서, 사람 이름들이 동의어지만 사람 이름들의 글자들이 동일하지 않은 상황(즉, 이름들이 동의어지만, 형상들이 상이함)이 포괄적으로 고려될 수 있고, 매칭 정확도가 추가로 개선될 수 있다. "상이한 형상"은 철자오기로 인해 "틀린" 상이한 형상들일 수 있지만, 다음 구현들에서, 주로, 다른 변동 유형들로 인해 "타당하고 올바른" 상이한 형상들일 수 있다는 것에 유념할 가치가 있다.
본 출원의 솔루션들은 사람 이름 매칭에 적용될 수 있을 뿐만 아니라, 사람 이름 이외의 이름들 예를 들어, 장소 이름 또는 객체 이름의 매칭에도 적용 가능하다.
본 출원의 솔루션들은 아래에서 상세히 설명된다.
도 1은 본 출원의 구현에 따라 이름들을 매칭시키기 위한 방법을 예시하는 개략적인 흐름도이다. 절차를 실행하는 프로그램이 설치될 수 있는 디바이스는, 개인용 컴퓨터, 대형 또는 중형 컴퓨터, 컴퓨터 클러스터, 모바일 폰, 태블릿 컴퓨터, 스마트 웨어러블 디바이스, 차량 머신 등을 포함(그러나 이에 제한되지 않음)한다. 이 프로세스는 일반적으로 위험 제어 분야에서 사용될 수 있으며 위험 제어 시스템 또는 관련된 시스템에 의해 실행된다.
도 1에 도시된 절차는 다음 단계들을 포함할 수 있다.
S101. 매칭될 이름을 획득한다.
본 출원의 현재 구현에서, 매칭될 이름이 속하는 언어는 제한되지 않으며, 영어, 러시아어, 스페인어 또는 중국어일 수 있다. 설명의 용이함을 위해, 다음 구현은 주로, 매칭될 이름이 속한 언어가 영어인 예를 사용하여 설명된다.
S102. 매칭될 이름을 매칭시키는 데 사용되는 표준 이름 세트를 결정한다.
본 출원의 현재 구현에서, 표준 이름 세트는 더 큰 이름 세트로부터 선별되는(screened out) 서브세트일 수 있거나, 또는 직접적으로, 더 큰 이름 세트일 수 있다. 설명의 용이함을 위해, 여기에서의 선별은 "예비 선별(preliminary screening)"로서 지칭될 수 있다. 예를 들어, 배경 기술의 시나리오에서, 더 큰 이름 세트는 위험 제어 시스템에 의해 보유된 블랙리스트일 수 있다.
이전 상황에서, 서브세트는 매칭될 이름과 유사한 이름들만을 포함하는 세트일 수 있다. 여기에서의 "유사한"이란 것은, 유사성을 추가로 결정하는 일련의 후속 동작이 존재하기 때문에 그렇게 엄격하진 않을 수 있다. 이는 "미세 선별"이 후속적으로 수행됨을 의미한다. 매칭 범위는 예비 선별을 통해 신속하게 감소될 수 있어서, 후속 미세 선별의 작업부하가 감소될 수 있고, 미세 선별의 적절성이 개선될 수 있으며, 이는 본 출원의 솔루션들의 효율을 개선하는 데 도움이 된다.
S103. 매칭될 이름이 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 이름들의 글자들이 동일하지 않은지 여부를 결정하기 위해 매칭될 이름을 검출한다.
본 출원의 현재 구현에서, 검출되고 결정될 필요가 있는 "이름들이 동의어지만, 이름들의 글자들이 동일하지 않음(names are synonymous but characters of the names are not identical)"이는 것은, 주로 표 1의 하나 이상의 변동 유형들에 의해 야기되며, 검출은 약어 검출, 호칭 검출, 복수 언어 검출, 또는 가명 검출(이들은 아래에서 상세히 설명됨)과 같은 검출들 중 적어도 하나를 포함할 수 있다.
본 출원의 현재 구현에서, 복수의 검출들이 존재하는 경우, 복수의 검출들은 순서대로 연속적으로 수행될 수 있다. 매칭될 이름의 매칭 결과가 검출 프로세스에서 결정될 수 있는 경우, 잔여 검출들은 수행되지 않을 수 있다. 물론, 실행 효율을 개선하기 위해, 복수의 검출들이 병렬로 수행될 수 있고, 그 후 검출 결과들이 요약될 수 있다.
S104. 검출 결과에 기초하여 매칭될 이름의 매칭 결과를 결정한다.
본 출원의 현재 구현에서, 단계(S103)를 수행함으로써, 매칭될 이름의 매칭 결과는, 매칭될 이름이 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 이름들의 글자들이 동일하지 않다고 결정되는 경우, 직접적으로 결정될 수 있다. 이 상황에서, 단계(S103)의 검출 프로세스는 실제로 매칭될 이름의 전체 매칭 프로세스이다.
매칭될 이름이 다음의 조건: 즉 매칭될 이름이 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 이름들의 글자들이 동일하지 않다는 조건을 만족하지 않는 것으로 결정되는 경우, 매칭될 이름의 매칭 결과를 결정하기 위해 다른 매칭 방법을 이용함으로써 매칭될 이름에 대하여 매칭이 추가로 수행될 수 있다.
도 1에 도시된 방법을 통해, 이름은 사람 이름을 포함할 수 있다. 실제로, 매칭될 사람 이름은 데이터 입력 동안 적시성 및 불확실성 그리고 사람 이름의 가변성으로 인해 실제 사람 이름과 상이할 수 있다. 이는 또한 퍼지 매칭을 수행하는 이유이다. 이러한 이유로, 본 출원의 솔루션에서, 매칭될 이름이 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 이름들의 글자들이 동일하지 않은지 여부를 결정하기 위해 매칭될 사람 이름이 검출되고, 사람 이름 매칭 결과가 검출 결과에 기초하여 결정된다. 경험에 따라 설정된 문자열 매칭 정도 임계치만을 사용함으로써 퍼지 정도가 제어되는 기존의 기술과 비교하면, 본 출원은 퍼지 정도를 제어하는 정확도를 개선하는데 보다 도움이 된다. 따라서, 매칭 정확도가 개선될 수 있고 위험 제어 시스템의 오경보율이 감소될 수 있다. 따라서 기존 기술들의 문제들 중 일부 또는 전부가 완화될 수 있다.
도 1의 방법에 기초하여, 본 출원의 현재 구현은 아래에서 설명되는 방법 및 확장 솔루션의 일부 구현을 추가로 제공한다.
본 출원의 현재 구현에서, 매칭될 상이한 이름들의 복잡성이 상이할 수 있으며, 포함된 정보가 또한 상이할 수 있다. 소량의 정보 또는 단순한 정보 특징을 갖는 일부 매칭될 이름들의 경우에, 매칭될 이름에 대해 매칭이 수행되더라도, 획득된 매칭 결과의 값이 기대에 도달하기 어렵다. 예를 들어, "Jim", "Jimmy", "David", "John" 또는 "Mike"와 같이 이름이 너무 단순하고 일반적인 경우, 매칭이 성공하더라도 소정의 사람을 결정하는 것은 어렵다.
이런 상황으로 인해 이름 매칭을 위해 사용되는 프로세싱 자원들의 낭비를 완화하기 위해, 매칭될 이름은 획득된 이후 먼저 필터링되어 매칭을 지속할지 여부를 결정할 수 있다. 또한, 매칭될 이름이 화이트리스트에 포함되는 경우, 유사한 문제가 존재하고, 매칭될 이름은 이 방법을 사용함으로써 또한 프로세싱될 수 있다.
단계들(S101 및 S102) 동안, 매칭될 이름이 획득된 후에 그리고 매칭될 이름을 매칭시키는 데 사용되는 표준 이름 세트가 결정되기 전에, 다음의 단계들, 즉, 매칭될 필요가 없는 미리 결정된 이름들의 세트를 획득하는 단계; 매칭될 이름이 매칭될 필요가 없는 이름들의 세트에 포함되는지 여부를 결정하는 단계; 및 만약 그렇다면, 후속 단계들을 계속 수행하는 단계가 추가로 수행될 수 있다. 그렇지 않으면, 매칭은 매칭될 이름에 대해 수행되지 않을 수 있다.
본 출원의 현재 구현에서, 단계(S102)("예비 선별"의 이전 상황에 대응함)의 구현이 설명을 위한 예로서 사용된다. 단계(S102)에 있어서, 매칭될 이름을 매칭시키는 데 사용되는 표준 이름 세트를 결정하는 것은, 매칭될 이름을 매칭시키는 데 사용될 수 있는 퍼스트 네임 세트를 결정하고; 그리고 매칭될 이름에 포함된 각각의 단어 및 퍼스트 네임 세트 내의 이름에 포함된 각각의 단어에 대해 유사성 매칭(similarity matching)을 수행함으로써 매칭될 이름을 매칭시키는 데 사용되는 표준 이름 세트를 결정하는 것을 포함할 수 있다.
또한, 유사성 매칭을 수행하는 방법에 대한 복수의 구현들이 존재한다. 단어 세그먼테이션 매칭(word segmentation matching)이 매칭될 이름에 대해 수행될 수 있거나, 또는 풀-텍스트 매칭이 매칭될 이름에 대해 수행될 수 있거나, 기타 등등이 매칭될 이름에 대해 수행될 수 있다.
단어 세그먼테이션 매칭의 예에서, 매칭될 이름에 포함된 각각의 단어 및 퍼스트 네임 세트 내의 이름에 포함된 각각의 단어에 대해 유사성 매칭을 수행함으로써 매칭될 이름을 매칭시키는 데 사용되는 표준 이름 세트를 결정하는 것은, 퍼스트 네임 세트에 포함된 각각의 이름의 인덱스를 획득하고 ― 이름의 인덱스는 이름에 포함된 임의의 단어임 ― ; 매칭될 이름에 포함된 각각의 단어를 획득하기 위해 매칭될 이름을 세그먼팅하고; 퍼스트 네임(first name) 세트의 서브세트를 획득하도록 매칭될 이름에 포함된 각각의 단어 및 각각의 인덱스에 대해 유사성 매칭을 수행하는 것을 포함할 수 있다. 획득된 서브세트는 성공적으로 매칭된, 각각의 인덱스에 의해 인덱싱된 이름 및 각각의 서브세트에 기초하여 매칭될 이름을 매칭시키는 데 사용되는 표준 이름 세트를 포함한다.
이전 예에서의 인덱스는 미리 설정되며, 인덱스에 기초하여 단어 세그먼테이션 매칭을 수행하는 이점은, 매칭 프로세스에서 세트에 필요한 이름을 획득하는 속도가 효과적으로 가속될 수 있다는 것이다. 단어 세그먼테이션 매칭이 인덱스에 기초하여 수행되지 않는 경우, 효율이 영향을 받는다는 것을 제외하면, 단어 세그먼테이션 매칭은 여전히 구현될 수 있다(예를 들어, 세트를 저장하는 데이터 표는 단어 세그먼테이션 매칭을 위해 Select 문을 사용하여 필요한 이름에 대해 직접 질의됨).
또한, 매칭될 이름에 포함된 각각의 단어 및 각각의 인덱스에 대해 유사성 매칭을 수행하는 것은, 문자열 매칭 알고리즘을 이용함으로써 매칭될 이름에 포함된 각각의 단어 및 각각의 인덱스에 대해 유사성 매칭을 수행하는 것을 포함할 수 있으며, 여기서 문자열 매칭 알고리즘은 하나 이상의 알고리즘들, 예를 들어, 프리픽스 트리 매칭 알고리즘, 사전 트리 매칭 알고리즘, 문자열 유사성 매칭 알고리즘 및 발음 유사성 매칭 알고리즘을 포함할 수 있다. 여기서, 문자열 매칭 알고리즘을 사용하는 것이 단지 더 좋은 방법일 수 있거나, 또는 유사성 매칭을 구현하는 데 사용될 수 있는, 텍스트 매칭 알고리즘과 같은 다른 알고리즘이 사용될 수 있다.
각각의 서브세트에 기초하여 매칭될 이름을 매칭시키는 데 사용되는 표준 이름 세트를 결정하는 복수의 구현들이 존재할 수 있다. 예를 들어, N개의 문자열 매칭 알고리즘이 사용되는 경우, 단어 세그먼테이션을 통해 획득된 M개의 단어들 각각에 대해, N개의 서브세트들을 상응하게 획득하기 위해 단어를 각각의 인덱스와 매칭시키는데 각각의 문자열 매칭 알고리즘이 사용된다. 그 후, N개의 서브세트들의 유니온 세트(union set)가 취해진다. M개의 유니온 세트들의 총계가 획득되고, M개의 유니온 세트의 총 발생 수가 특정된 임계치를 초과하는 각각의 이름이 선택되고 표준 이름 세트로서 결정된다. 다른 예로, N개의 서브세트들이 획득되고, 그 후 N개의 서브세트들의 교차 세트가 취해지고 표준 이름 세트로서 결정된다.
"예비 선별" 프로세스는 위에 설명되어 있다. 이해의 용이함을 위해, 본 출원의 구현은 도 2에 도시된 바와 같이, 실제 애플리케이션 시나리오에서 이름들을 매칭시키기 위한 방법에서 예비 선별의 구현을 예시하는 개략적인 흐름도를 추가로 제공한다.
실제 애플리케이션 시나리오에서, 퍼스트 네임 세트는 영어 사람 이름들의 리스트이고, 리스트 내의 각각의 이름에 대한 인덱스는 미리 결정되고(대응하는 이름 이외의 관련 정보는 인덱스를 사용함으로써 인덱싱될 수 있음), 인덱스는 인덱스에 대응하는 이름의 단어이고, 각각의 인덱스는 주(primary) 키로서 인덱스에 대응하는 단어를 사용함으로써 설정된 인덱스 표에 포함된다고 가정하면, 매칭될 이름은 영어 사람 이름 "Kit Wai Jackson Wong"이며, 사람의 이름을 세그먼팅하기 위한 구분 기호로서 공백이 사용되고 단어 세그먼테이션 결과가 표 2에 도시된다.

매칭될 사람 이름

Kit Wai Jackson Wong

단어 세그먼트 이후

단어1: Kit

단어2 : Wai

단어3 : Jackson

단어4 : Wong
도 2에서, M = 4이고, 단어 세그먼테이션 결과는 {Kit, Wai, Jackson, Wong}이다. 단어 세그먼테이션을 통해 획득된 각각의 단어는 4개의 매칭 알고리즘들을 사용함으로써 획득된 단일 단어인 매칭 결과들(1, 2, 3 및 4)의 인덱스들에 대응하는 이름 세트를 출력하기 위해, 프리픽스 트리 매칭 알고리즘, 사전 트리 매칭 알고리즘, 문자열 유사성 매칭 알고리즘(이를테면, Simstring 알고리즘), 및 발음 유사성 매칭 알고리즘(이를테면, 메타폰 알고리즘)을 사용하여 각각의 인덱스와 매칭된다.
각각의 단어의 포괄적인 매칭 결과를 획득하기 위해 각각의 단어의 매칭 결과들의 유니온 세트가 취해진다.
적어도 2개의 포괄적인 매칭 결과들에 포함된 이름들이 선택되어 세트를 형성하고, 그 세트는 생성된 예비 선별 결과로서 사용된다.
본 출원의 현재 구현에서, 표준 이름 세트가 결정된 후, 매칭될 이름이 검출될 수 있다. 그러나, 하나 이상의 유형들의 사전 프로세싱이 검출 이전에 추가로 수행될 수 있다. 사전프로세싱은 후속 검출 결과의 신뢰성을 개선하는 데 도움이 된다. 사전프로세싱은 정렬 프로세싱, 대문자 및 소문자 단일화 프로세싱, 줄임형식-종래형식(simplified-traditional) 프로세싱 등을 포함할 수 있다.
정렬 프로세싱이 예로서 사용된다. 단계(S103)에 있어서, 매칭될 이름을 검출하기에 이전에, 표준 이름 세트 내의 이름에 포함된 각각의 단어와 매칭될 이름에 포함된 각각의 단어 사이의 유사성에 기초하여, 표준 이름 세트 내의 이름에 포함된 각각의 단어를 매칭될 이름에 포함된 각각의 단어와 정렬하는 프로세싱이 추가로 수행될 수 있다,
실제로, 유사성에 기초하여 정렬 프로세싱을 수행하는 원리는 유사성-기반 최대화 원리일 수 있다. 구체적으로, 최대 유사성을 갖는 단어들을 포함하는 이름들의 위치들이 정렬된다.
예를 들어, 매칭될 이름이 "Kate Lee Smith"이고 표준 이름 세트에 "Smith Catherine Lee"와 같은 이름의 정렬 결과가 표 3에 보여진다.

매칭될 이름

Kate

Lee

Smith

표준 이름 세트에서 정렬 프로세싱 이후에 획득된 이름

Catherine

Lee

Smith
또한, 정렬 프로세싱이 수행될 때, 단계(S103)에 있어서, 매칭될 이름을 검출하는 것은, 매칭될 이름이 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 이름들의 글자들이 동일하지 않은지 여부를 결정하기 위해 정렬된 표준 이름 세트에 기초하여 매칭될 이름을 검출하는 것을 포함할 수 있다.
본 출원의 현재 구현에서, 단계(S103)에서의 검출은 사람 이름 퍼지 매칭의 매칭 정확도를 개선하기 위한 핵심 부분이다. 단계(S103)에 있어서, 매칭될 이름을 검출하는 것은, 매칭될 이름이 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 이름들의 글자들이 동일하지 않은지 여부를 결정하기 위해 매칭될 이름에 대해 약어 검출, 호칭 검출, 복수 언어 검출 또는 가명 검출 중 적어도 하나를 수행하는 것을 포함할 수 있다. 몇 개의 검출들이 아래에 개별적으로 설명된다.
본 출원의 현재 구현에서, 두문자어 검출은 약어 검출에서 가장 일반적이다. 두문자어 검출 외에도, 부분사(partitive)를 생략한 약어 검출이 존재한다. 구현에서, 매칭될 이름에 대해 약어 검출을 수행하는 것은, 미리 결정된 약어 콘트라스트 조합 데이터를 획득하는 것 ― 각각의 약어 콘트라스트 조합은 적어도 하나의 단어와 단어의 약어 간의 약어 맵핑 관계를 반영함 ― ; 약어 콘트라스트 조합 데이터에 기초하여, 매칭될 이름에 포함된 단어가 표준 이름 세트 내의 이름에 포함된 단어와 약어 맵핑 관계를 갖는지 여부를 검출하는 것; 및 검출 결과에 기초하여, 매칭될 이름이 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 이름들의 글자들이 동일하지 않은지 여부를 결정하는 것을 포함할 수 있다.
예를 들어, 영어 사람 이름 "Ben Williams"는 "B. Williams"로 축약될 수 있다고 미리 결정된 경우, "Ben Williams" 및 "B. Williams"가 약어 콘트라스트 조합으로서 사용될 수 있다. 매칭될 이름 및 표준 이름 세트 내의 이름이 약어 콘트라스트 조합인 것으로 검출되는 경우, 이름들이 동의어지만 이름들의 글자들이 동일하지 않은 상황이 존재하는 것으로 결정될 수 있다.
본 출원의 현재 구현에서, 매칭될 이름에 대해 호칭 검출을 수행하는 것은, 미리 결정된 호칭 데이터를 획득하는 것; 매칭될 이름이 호칭을 포함하는지 여부를 검출하는 것 ― 호칭은 호칭을 포함하는 이름의 의미에 영향을 미치지 않는 것으로 간주됨 ― ; 및 검출 결과에 기초하여, 매칭될 이름이 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 이름들의 글자들이 동일하지 않은지 여부를 결정하는 것을 포함할 수 있다.
사람 이름의 관점에서, 호칭은 일반적으로 경칭(이를테면, 미스터 또는 미스) 또는 직함(이를테면, 닥터 또는 프로페서)과 같이 오리지널 사람 이름의 적어도 일부에 붙여지는 단어이다. 사람 이름 매칭 환경에서, 호칭은 호칭에 대응하는 오리지널 사람 이름의 적어도 일부의 의미에 영향을 주지 않는다. 따라서, 매칭될 이름에 호칭을 포함하고 호칭 이외의 다른 부분들이 표준 이름 세트 내의 이름과 매칭될 수 있다고 결정되는 경우, 매칭될 이름이 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 이름들의 글자들은 동일하지 않다는 것이 결정될 수 있다.
본 출원의 현재 구현에서, 매칭될 이름에 대해 가명 검출을 수행하는 것은, 미리 결정된 가명 콘트라스트 조합 데이터를 획득하는 것 ― 각각의 가명 콘트라스트 조합은 적어도 하나의 단어와 단어의 가명 간의 가명 맵핑 관계를 반영함 ― ; 가명 콘트라스트 조합 데이터에 기초하여, 매칭될 이름에 포함된 단어가 표준 이름 세트 내의 이름에 포함된 단어와 가명 맵핑 관계를 갖는지 여부를 검출하는 것; 및 검출 결과에 기초하여, 매칭될 이름이 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 이름들의 글자들이 동일하지 않은지 여부를 결정하는 것을 포함할 수 있다.
실제로, 가명이 가명에 대응하는 이름의 별명(예를 들어, 표 1의 Mick은 Mikey의 별명임) 또는 상이한 필드들에서 가명에 대응하는 이름의 동의어 이름을 포함한다. 후자의 경우, 상이한 필드들은 상이한 구역들(예를 들어, 다른 국가들 또는 지방들), 상이한 언어들(예를 들어, 다른 국가들의 언어들 또는 다른 국적들의 언어들), 상이한 산업들 등일 수 있다.
상응하게, 매칭될 이름의 별명이 검출되는 것, 또는 상이한 필드들에서 매칭될 이름의 동의어 이름이 검출되는 것 중 적어도 하나가 수행된다.
가명은 또한 가명에 대응하는 이름의 의미에 영향을 주지 않는다. 따라서, 매칭될 이름이 표준 이름 세트 내의 이름의 별명이라고 결정되는 경우, 매칭될 이름이 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 이름들의 글자들은 동일하지 않다는 것이 결정될 수 있다.
위에서 설명된 콘트라스트 조합 데이터 및 호칭 데이터의 저장 형태들은 본 출원에서 제한되지 않는다는 것에 유의할 가치가 있다. 일반적인 방법은 대응하는 데이터 표에 콘트라스트 조합 데이터와 호칭 데이터를 저장하고, 데이터가 사용될 필요가 있을 때 데이터베이스로부터 데이터를 판독하는 것이다.
본 출원의 현재 구현에서, 매칭될 이름에 대해 복수 언어 검출을 수행하는 것은, 매칭될 이름에 대응하는 언어를 결정하는 것; 언어 또는 다른 언어 중 적어도 하나의 철자 변형 동의어 규칙(spelling deformation synonym rule) 또는 철자 변형 동음이의어 규칙(spelling deformation homonym rule) 중 적어도 하나를 획득하는 것; 매칭될 이름이 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 이름들의 글자들이 동일하지 않은지 여부를 결정하기 위해, 철자 변형 동의어 규칙 또는 철자 변형 동음이의어 규칙 중 적어도 하나에 따라 매칭될 이름을 검출하는 것을 포함할 수 있다.
복수 언어 검출은 주로 다음과 같은 상황, 예를 들어, 영어 "Pooh"는 독일어로 "puh"로 표기되는 상황을 겨냥하며, 두 단어들은 사람 이름들에서 나타날 때 동의어이다.
문자열 매칭 정도를 계산하는 데 사용되는 알고리즘을 이전에 수행된 검출들에 사용할 수 있다는 것에 유념할 가치가 있다.
본 출원의 현재 구현에서, 검출 결과에 기초하여 매칭될 이름의 매칭 결과를 결정하는 것은, 매칭될 이름이 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 이름들의 글자들이 동일하지 않다고 결정되는 경우, 매칭될 이름의 매칭 결과로서 적어도 하나의 이름을 결정하는 것; 또는 그렇지 않으면(구체적으로, 매칭이 이전 검출을 통해 실패할 때), 하나 이상의 유사성 알고리즘들을 사용하여 매칭될 이름을 표준 이름 세트 내의 이름과 매칭시킴으로써 매칭될 이름의 매칭 결과를 결정하는 것을 포함할 수 있다.
본 출원의 현재 구현에서, 복수의 유사성 알고리즘들은 상이한 차원들에 기초할 수 있고, 따라서 매칭 결과의 신뢰성을 개선하는데 도움이 될 수 있다. 이러한 아이디어에 따라, 유사성 알고리즘은 텍스트 매칭 정도를 계산하는 데 사용되는 알고리즘(이를테면, n-gram 알고리즘), 표음 매칭 정도를 계산하는 데 사용되는 알고리즘(이를테면, Phonex 알고리즘), 문자열 매칭 정도를 계산하는 데 사용되는 알고리즘(이를테면, Jaro-Winkler 알고리즘 등)일 수 있다.
복수의 유사성 알고리즘들이 사용될 때, 유사성 알고리즘들에 대응하는 매칭 결과들은 포괄적인 매칭 결과를 획득하기 위해 포괄적으로 측정될 수 있다. 측정 방법은 본 출원에서 제한되지 않으며, 일반적인 방법은 가중 합계(weighting summation)이다.
예를 들어, n-gram 알고리즘이 사용될 때, 알고리즘 입력은 매칭될 이름에 포함된 각각의 단어 및 단어의 정렬된 위치의 각각의 단어이고, 알고리즘 출력은 정렬된 단어들의 각각의 쌍의 텍스트 매칭 정도이며, F1로서 표시된다.
Jaro-Winkler 알고리즘이 사용될 때, 알고리즘 입력은 매칭될 이름에 포함된 각각의 단어 및 단어의 정렬된 위치의 각각의 단어이고, 알고리즘 출력은 정렬된 단어들의 각각의 쌍의 문자열 매칭 정도이며, F2로서 표시된다.
Phonex 알고리즘이 사용될 때, 알고리즘 입력은 매칭될 이름에 포함된 각각의 단어 및 단어의 정렬된 위치의 각각의 단어이고, 알고리즘 출력은 정렬된 단어들의 각각의 쌍의 표음 매칭 정도이며, F3로서 표시된다.
정렬된 단어들의 각각의 쌍에 대한 포괄적인 매칭 정도(F)는, 다음의 수식에 나타낸 바와 같이, 텍스트 매칭 정도, 문자열 매칭 정도 및 표음 매칭 정도에 대해 가중치 합계를 수행함으로써 획득된다.
Figure pct00001
단어들의 각각의 쌍의 포괄적인 매칭 정도(F)에 기초하여, 매칭될 이름과 표준 이름 세트 내의 이름 간의 매칭 결과는 평균값을 계산함으로써 획득된다. 예를 들어, 표 3의 이름들 쌍에 대해, 획득된 매칭 결과가 표 4에 보여진다.

검출된 이름

Kate

Lee

Smith

리스트 내의 이름

Catherine

Lee

Smith

포괄적인 매칭 정도

0.872

1

1

매칭 결과

(0.872+1+1)/3=0.957
예비 선별 이후의 검출 및 매칭 프로세스는 위에서 설명되었다. 이 프로세스에서, 복수의 매칭-관련 알고리즘들이 사용될 수 있다. 본 출원의 솔루션들의 구현 동안, 사용될 수 있는 알고리즘들은 통합될 수 있고, 이 프로세스는 통합된 알고리즘을 사용함으로써 퍼지 매칭을 수행하는 프로세스이다.
본 출원의 현재 구현에서, 통합 알고리즘을 이용하여 퍼지 매칭을 수행한 후, 소정의 규칙들에 기초한 일부 포스트 필터링(post filtering)이 추가로 수행될 수 있는데, 예를 들면, 매칭 결과의 매칭 정도가 텍스트 기술 정보에 맵핑되거나, 또는 매칭 정도가 소정의 시나리오에 기초하여 적절히 보상되거나 감소된다.
이전의 설명에 기초하여, 보다 직관적으로, 본 출원의 구현은 도 3에 도시된 바와 같이, 실제 애플리케이션 시나리오에서 이름들을 매칭시키기 위한 방법에서 통합된 알고리즘을 사용함으로써 퍼지 매칭을 수행하는 구현을 예시하는 개략적인 흐름도를 추가로 제공한다. 도 3에서, 다양한 방법들에서 다양한 검출들을 수행하고 매칭 정도들을 계산하는 시퀀스는 단지 예일 뿐이며, 본 출원을 제한하기 위한 것이 아니다.
도 3에서, 매칭될 이름의 매칭이 이전의 검출들 중 임의의 하나를 통해 성공하는 경우, 매칭 결과는 직접 출력될 수 있고; 그렇지 않으면, 매칭될 이름의 매칭 결과는 매칭 정도 계산을 위한 하나 이상의 방법들(예를 들어, 텍스트 매칭 정도 계산, 표음 매칭 정도 계산 및 문자열 매칭 정도 계산)을 이용함으로써 결정 및 출력될 수 있다.
물론, 다양한 방법들에서 다양한 검출들 및 매칭 정도 계산이 또한 완전히 수행될 수 있고, 그 후 다양한 방법들에서 다양한 검출 결과들 및 매칭 정도 계산 결과들이 포괄적으로 고려되어 매칭될 문자열의 매칭 결과를 결정할 수 있다.
추가로, 본 출원의 구현은 도 4에 도시된 바와 같이, 실제 애플리케이션 시나리오에서 이름들을 매칭시키기 위한 방법의 구현을 예시하는 개략적인 흐름도를 추가로 제공한다. 도 4에서, 매칭될 이름이 매칭될 필요가 없는 이름들의 세트에 포함되는지 여부 결정하는 것이 소정의 규칙들에 기초하여 미리 결정될 수 있으며, 여기서 스캔 리스트 인덱스는 표준 이름 세트 내의 이름들의 인덱스이다.
도 3 및 도 4의 단계들은 위에서 상세히 설명되었고 세부사항들은 여기서 간략함을 위해 생략된다.
본 출원의 현재 구현에서 제공되는, 이름들을 매칭시키기 위한 방법이 위에서 설명되었다. 도 5에 도시된 바와 같이, 동일한 본 발명의 아이디어에 기초하여, 본 출원의 구현은 추가로 대응하는 장치를 제공한다.
도 5는 본 출원의 구현에 따라, 도 1에 대응하고 이름들을 매칭시키기 위한 장치를 예시하는 개략적인 구조도이다. 점선은 선택적인 모듈을 나타내고, 장치는 매칭될 이름을 획득하도록 구성된 획득 모듈(501); 매칭될 이름을 매칭시키는 데 사용되는 표준 이름 세트를 결정하도록 구성된 결정 모듈(502); 매칭될 이름이 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 이름의 글자들이 동일하지 않은지 여부를 결정하기 위해 매칭될 이름을 검출하도록 구성된 검출 모듈(503); 및 검출 결과에 기초하여 매칭될 이름의 매칭 결과를 결정하도록 구성된 매칭 모듈(504)을 포함한다.
선택적으로, 매칭될 이름을 매칭시키는 데 사용되는 표준 이름 세트를 결정하기 전에, 결정 모듈(502)은, 매칭될 필요가 없는 미리 결정된 이름들의 세트를 획득하고, 그리고 매칭될 이름이 매칭될 필요가 없는 이름들의 세트에 포함되지 않는다고 결정하도록 구성된다.
선택적으로, 매칭될 이름을 매칭시키는 데 사용되는 표준 이름 세트를 결정하도록 구성된 결정 모듈(502)은 다음을 포함한다:
결정 모듈(502)은, 매칭될 이름을 매칭시키는 데 사용될 수 있는 퍼스트 네임 세트를 획득하고, 그리고 매칭될 이름에 포함된 각각의 단어 및 퍼스트 네임 세트 내의 이름에 포함된 각각의 단어에 대해 유사성 매칭(similarity matching)을 수행함으로써 매칭될 이름을 매칭시키는 데 사용되는 표준 이름 세트를 결정하도록 구성된다.
선택적으로, 매칭될 이름에 포함된 각각의 단어 및 퍼스트 네임 세트 내의 이름에 포함된 각각의 단어에 대해 유사성 매칭을 수행함으로써 매칭될 이름을 매칭시키는 데 사용되는 표준 이름 세트를 결정하도록 구성된 결정 모듈(502)은 다음을 포함한다:
결정 모듈(502)은, 제 1 이름 세트에 포함된 각각의 이름의 인덱스를 획득하고 ― 이름의 인덱스는 이름에 포함된 임의의 단어임 ― ; 매칭될 이름에 포함된 각각의 단어를 획득하기 위해 매칭될 이름을 세그먼팅하고; 제 1 이름 세트의 서브세트를 획득하도록 매칭될 이름에 포함된 각각의 단어 및 각각의 인덱스에 대해 유사성 매칭을 수행하도록 구성된다. 획득된 서브세트는 성공적으로 매칭된, 각각의 인덱스에 의해 인덱싱된 이름 및 서브세트에 기초하여 매칭될 이름을 매칭시키는 데 사용되는 표준 이름 세트를 포함한다.
선택적으로, 매칭될 이름에 포함된 각각의 단어 및 각각의 인덱스에 대해 유사성 매칭을 수행하도록 구성된 결정 모듈(502)은 다음을 포함한다:
결정 모듈(502)은, 문자열 매칭 알고리즘을 이용함으로써 매칭될 이름에 포함된 각각의 단어 및 각각의 인덱스에 대해 유사성 매칭을 수행하도록 구성되며, 여기서 문자열 매칭 알고리즘은 프리픽스 트리 매칭 알고리즘, 사전 트리 매칭 알고리즘, 문자열 유사성 매칭 알고리즘 또는 발음 유사성 매칭 알고리즘 중 적어도 하나를 포함한다.
선택적으로, 장치는, 검출 모듈(503)이 매칭될 이름을 검출하기 전에, 표준 이름 세트 내의 이름에 포함된 각각의 단어와 매칭될 이름에 포함된 각각의 단어 사이의 유사성에 기초하여, 표준 이름 세트 내의 이름에 포함된 각각의 단어를 매칭될 이름에 포함된 각각의 단어와 정렬하도록 구성된 정렬 모듈(505)을 더 포함한다.
매칭될 이름을 검출하도록 구성된 검출 모듈(503)은 다음을 포함한다:
검출 모듈(503)은, 매칭될 이름이 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 이름들의 글자들이 동일하지 않은지 여부를 결정하기 위해 정렬된 표준 이름 세트에 기초하여 매칭될 이름을 검출하도록 구성된다.
선택적으로, 매칭될 이름을 검출하도록 구성된 검출 모듈(503)은 다음을 포함하는데: 검출 모듈(503)은 매칭될 이름이 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 이름들의 글자들이 동일하지 않은지 여부를 결정하기 위해 매칭될 이름에 대해 약어 검출, 호칭 검출, 복수 언어 검출 또는 가명 검출 중 적어도 하나를 수행하도록 구성된다.
선택적으로, 매칭될 이름에 대해 약어 검출을 수행하도록 구성된 검출 모듈(503)은 다음을 포함한다:
검출 모듈은, 미리 결정된 약어 콘트라스트 조합 데이터를 획득하고 ― 각각의 약어 콘트라스트 조합은 적어도 하나의 단어와 단어의 약어 간의 약어 맵핑 관계를 반영함 ― ; 약어 콘트라스트 조합 데이터에 기초하여, 매칭될 이름에 포함된 단어가 표준 이름 세트 내의 이름에 포함된 단어와 약어 맵핑 관계를 갖는지 여부를 검출하고; 그리고 검출 결과에 기초하여, 매칭될 이름이 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 이름들의 글자들이 동일하지 않은지 여부를 결정하도록 구성된다.
선택적으로, 매칭될 이름에 대해 호칭 검출을 수행하도록 구성된 검출 모듈(503)은 다음을 포함한다:
검출 모듈(503)은, 미리 결정된 호칭 데이터를 획득하고; 매칭될 이름이 호칭을 포함하는지 여부를 검출하고 ― 호칭은 호칭을 포함하는 이름의 의미에 영향을 미치지 않는 것으로 간주됨 ― ; 및 검출 결과에 기초하여, 매칭될 이름이 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 이름들의 글자들이 동일하지 않은지 여부를 결정하도록 구성된다.
선택적으로, 가명은 가명에 대응하는 이름의 별명 또는 상이한 필드들에서 가명에 대응하는 이름의 동의어 이름을 포함한다. 매칭될 이름에 대해 가명 검출을 수행하도록 구성된 이 검출 모듈(503)은 다음을 포함한다:
검출 모듈(503)은, 매칭될 이름의 별명을 검출하는 것, 또는 상이한 필드들에서 매칭될 이름의 동의어 이름을 검출하는 것 중 적어도 하나를 수행하도록 구성된다.
선택적으로, 매칭될 이름에 대해 복수 언어 검출을 수행하도록 구성된 검출 모듈(503)은 다음을 포함하는데: 검출 모듈(503)은, 매칭될 이름에 대응하는 언어를 결정하고; 언어의 철자 변형 동의어 규칙 또는 철자 변형 동음이의어 규칙 중 적어도 하나를 획득하고; 그리고 매칭될 이름이 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 이름들의 글자들이 동일하지 않은지 여부를 결정하기 위해, 철자 변형 동의어 규칙 또는 철자 변형 동음이의어 규칙 중 적어도 하나에 따라 매칭될 이름을 검출하도록 구성된다.
선택적으로, 매칭될 이름에 대해 가명 검출을 수행하도록 구성된 이 검출 모듈(503)은 다음을 포함한다:
검출 모듈(503)은, 미리 결정된 가명 콘트라스트 조합 데이터를 획득하고 ― 각각의 가명 콘트라스트 조합은 적어도 하나의 단어와 단어의 가명 간의 가명 맵핑 관계를 반영함 ― ; 가명 콘트라스트 조합 데이터에 기초하여, 매칭될 이름에 포함된 단어가 표준 이름 세트 내의 이름에 포함된 단어와 가명 맵핑 관계를 갖는지 여부를 검출하고; 그리고 검출 결과에 기초하여, 매칭될 이름이 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 이름들의 글자들이 동일하지 않은지 여부를 결정하도록 구성된다.
선택적으로, 검출 결과에 기초하여 매칭될 이름의 매칭 결과를 결정하도록 구성된 매칭 모듈(504)은 다음을 포함한다.
매칭 모듈(504)은, 매칭될 이름이 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 이름들의 글자들이 동일하지 않다고 검출 모듈(503)이 결정하는 경우, 매칭될 이름의 매칭 결과로서 적어도 하나의 이름을 결정하고; 또는 그렇지 않으면, 하나 이상의 유사성 알고리즘들을 사용하여 매칭될 이름을 표준 이름 세트 내의 이름과 매칭시킴으로써 매칭될 이름의 매칭 결과를 결정하도록 구성된다.
선택적으로, 유사성 알고리즘은 텍스트 매칭 정도를 계산하는 데 사용되는 알고리즘, 표음 매칭 정도를 계산하는 데 사용되는 알고리즘 또는 문자열 매칭 정도를 계산하는 데 사용되는 알고리즘 중 적어도 하나를 포함한다.
선택적으로 이름은 사람 이름이다.
본 출원의 구현들에 제공된 장치들은 방법들과 일-대-일 대응 관계에 있다. 따라서, 장치들 및 방법들은 유사한 유익한 기술적 효과들을 갖는다. 방법들의 유익한 기술적 효과들이 위에서 상세히 설명되었고, 이에 따라 장치들의 유익한 기술적 효과들은 간략화를 위해 여기서 생략된다.
또한, 이전의 장치들 및 방법들의 애플리케이션 시나리오들은 본 출원에서 제한되지 않는다. 배경 기술에서 언급된 위험 제어 분야(예를 들어, 자금 세탁 방지 및 사용자 인증과 같은 분야들) 외에도, 본 출원의 솔루션들은 이름 매칭 기술을 사용할 필요가 있는 임의의 다른 분야들에도 적용 가능하다.
1990년대에, 기술적 개선이 하드웨어 개선(예를 들어, 다이오드, 트랜지스터 또는 스위치와 같은 회로 구조에 대한 개선) 또는 소프트웨어 개선(방법 절차에 대한 개선)인지 여부가 명확하게 구분될 수 있다. 그러나 기술이 발전함에 따라, 다수의 방법 절차들에 대한 현재의 개선들은 하드웨어 회로 구조들에 대한 직접적인 개선들로서 간주될 수 있다. 설계자는 일반적으로, 개선된 방법 절차를 하드웨어 회로에 프로그래밍하여 대응하는 하드웨어 회로 구조를 획득한다. 따라서, 하드웨어 엔티티 모듈을 사용함으로써 방법 절차가 개선될 수 있다. 예를 들어, PLD(programmable logic device)(예를 들어, FPGA(field programmable gate array))가 이러한 집적 회로이고, PLD의 로직 함수가 디바이스 프로그래밍을 통해 사용자에 의해 결정된다. 설계자는 주문형 집적 회로 칩을 설계 및 생산하도록 칩 제조자에 요청하지 않고 디지털 시스템을 PLD에 "통합"하는 프로그래밍을 수행한다. 또한, 현재, 집적 회로 칩을 수동으로 제조하는 대신에, 이러한 프로그래밍은 대부분 "로직 컴파일러(logic compiler)" 소프트웨어를 사용함으로써 구현된다. 로직 컴파일러 소프트웨어는 프로그램을 개발 및 작성하는 데 사용되는 소프트웨어 컴파일러와 유사하다. 오리지널 코드는 컴파일을 위해 특정 프로그래밍 언어로 작성될 필요가 있다. 이 언어는 HDL(hardware description language)로서 지칭된다. ABEL(Advanced Boolean Expression Language), AHDL(Altera Hardware Description Language), Confluence, CUPL(Cornell University Programming Language), HDCal, JHDL(Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, 및 RHDL(Ruby Hardware Description Language)와 같은 다수의 HDL들이 존재한다. VHDL(very-high-speed integrated circuit hardware description language) 및 Verilog가 가장 일반적으로 사용된다. 또한, 당업자는, 논리적 방법 절차가 설명된 여러 하드웨어 설명 언어들을 사용함으로써 논리적으로 프로그래밍되고 집적 회로 내로 프로그래밍될 때, 방법 절차를 구현하는 하드웨어 회로가 쉽게 획득될 수 있다는 것을 이해해야 한다.
제어기는 임의의 적절한 방법을 사용하여 구현될 수 있다. 예를 들어, 제어기는 마이크로프로세서 또는 프로세서, 및 마이크로프로세서 또는 프로세서에 의해 실행될 수 있는 컴퓨터 판독 가능 프로그램 코드(이를테면, 소프트웨어 또는 펌웨어)를 저장하는 컴퓨터 판독 가능 매체, 로직 게이트, 스위치, 주문형 집적 회로(ASIC), 프로그래밍 가능 로직 제어기 또는 내장형 마이크로제어기일 수 있다. 제어기의 예들은 다음의 마이크로프로세서들 즉 ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20 및 Silicone Labs C8051F320를 포함(그러나 이에 제한되지 않음)한다. 메모리 제어기는 또한 메모리의 제어 로직의 부분으로서 구현될 수 있다. 당업자는 또한, 컴퓨터 판독 가능 프로그램 코드를 사용함으로써 제어기를 구현하는 것 외에도, 제어기가 로직 게이트, 스위치, 주문형 집적 회로, 프로그래밍 가능 로직 제어기 및 내장형 마이크로제어기의 형태들로 동일한 기능을 구현하도록 허용하는 방법 단계들에 대한 로직 프로그래밍이 수행될 수 있다는 것을 알고 있다. 따라서, 제어기는 하드웨어 컴포넌트로서 간주될 수 있고, 제어기의 다양한 기능들을 구현하도록 구성된 장치는 또한 하드웨어 컴포넌트의 구조로서 간주될 수 있다. 또는, 다양한 기능들을 구현하도록 구성된 장치조차도 하드웨어 컴포넌트의 구조 및 방법을 구현하는 소프트웨어 모듈 둘 모두로서 간주될 수 있다.
이전의 구현들에서 예시된 시스템, 장치, 모듈 또는 유닛은 컴퓨터 칩 또는 엔티티를 사용함으로써 구현될 수 있거나, 또는 소정의 기능을 갖는 제품을 사용함으로써 구현될 수 있다. 통상적인 구현 디바이스는 컴퓨터이다. 컴퓨터는 예를 들어, 개인용 컴퓨터, 랩톱 컴퓨터, 셀룰러 폰, 카메라 폰, 스마트폰, 개인용 디지털 보조기기, 미디어 플레이어, 내비게이션 디바이스, 이메일 디바이스, 게임 콘솔, 태블릿 컴퓨터, 웨어러블 디바이스 또는 이들 디바이스들의 임의의 조합일 수 있다.
설명을 용이하게 하기 위해, 위의 장치는 기능들을 다양한 유닛들로 분할하여 설명된다. 물론, 본 출원이 구현될 때, 유닛들의 기능들은 소프트웨어 및/또는 하드웨어의 하나 이상의 부분들에서 구현될 수 있다.
당업자는, 본 개시내용의 구현이 방법, 시스템 또는 컴퓨터 프로그램 제품으로서 제공될 수 있다는 것을 이해해야 한다. 따라서, 본 개시내용은, 하드웨어 단독 구현들, 소프트웨어 단독 구현들 또는 소프트웨어와 하드웨어의 조합을 갖는 구현들의 형태를 사용할 수 있다. 또한, 본 개시내용은 컴퓨터 사용 가능 프로그램 코드들을 포함하는 하나 이상의 컴퓨터 사용 가능 저장 매체들(디스크 메모리, CD-ROM, 광학 메모리 등을 포함(그러나 이에 제한되지 않음)함) 상에 구현되는 컴퓨터 프로그램 제품의 형태를 사용할 수 있다.
본 개시내용은 본 개시내용의 구현들에 기초하여 방법, 디바이스(시스템) 및 컴퓨터 프로그램 제품의 흐름도들 및/또는 블록도들을 참조하여 설명된다. 컴퓨터 프로그램 명령들이 흐름도들 및/또는 블록도들의 각각의 프로세스 및/또는 각각의 블록 및 흐름도들 및/또는 블록도들의 프로세스 및/또는 블록의 조합을 구현하는 데 사용될 수 있다는 점에 주목할 가치가 있다. 이들 컴퓨터 프로그램 명령들은 머신을 생성하도록 범용 컴퓨터, 전용 컴퓨터, 내장 프로세서 또는 다른 프로그래밍 가능 데이터 프로세싱 디바이스의 프로세서에 제공될 수 있어서, 컴퓨터 또는 다른 프로그래밍 가능 데이터 프로세싱 디바이스의 프로세서에 의해 실행되는 명령들은, 흐름도들의 하나 이상의 프로세스들에서 그리고/또는 블록도들 내의 하나 이상의 블록들에서 특정 기능을 구현하기 위한 장치를 생성하게 된다.
이들 컴퓨터 프로그램 명령들은 컴퓨터 또는 다른 프로그래밍 가능 데이터 프로세싱 디바이스가 특정 방식으로 동작하도록 지시할 수 있는 컴퓨터 판독 가능 메모리에 저장될 수 있어서, 컴퓨터 판독 가능 메모리에 저장된 명령들은 명령 디바이스를 포함하는 가공품(artifact)을 생성하게 된다. 명령 디바이스는 흐름도들의 하나 이상의 프로세스들에서 그리고/또는 블록도들의 하나 이상의 블록들에서 특정 기능을 구현한다.
이들 컴퓨터 프로그램 명령들은 컴퓨터 또는 다른 프로그래밍 가능 데이터 프로세싱 디바이스 상에 로딩될 수 있어서, 일련의 동작들 및 동작들 및 단계들이 컴퓨터 또는 다른 프로그래밍 가능 디바이스 상에서 수행되어 컴퓨터-구현 프로세싱을 생성하게 된다. 따라서, 컴퓨터 또는 다른 프로그래밍 가능 디바이스 상에서 실행되는 명령들은 흐름도들의 하나 이상의 프로세스들에서 그리고/또는 블록도들의 하나 이상의 블록들에서 특정 기능을 구현하기 위한 단계들을 제공한다.
통상적인 구성에서, 컴퓨팅 디바이스는 하나 이상의 프로세서들(CPU), 하나 이상의 입/출력 인터페이스들, 하나 이상의 네트워크 인터페이스들 및 하나 이상의 메모리들을 포함한다.
메모리는 컴퓨터 판독 가능 매체에 있는 비-영구적 메모리, RAM(random access memory), 비-휘발성 메모리 및/또는 다른 형태, 예를 들어, ROM(read-only memory) 또는 플래시 메모리(플래시 RAM)를 포함할 수 있다. 메모리는 컴퓨터 판독 가능 매체의 예이다.
컴퓨터 판독 가능 매체는 임의의 방법 또는 기술을 사용함으로써 정보를 저장할 수 있는 영구적, 비-영구적, 이동식 및 비이동식 매체들을 포함한다. 정보는 컴퓨터 판독 가능 명령, 데이터 구조, 프로그램 모듈 또는 다른 데이터일 수 있다. 컴퓨터-저장 매체의 예들은, PRAM(phase-change random access), SRAM(static random access memory), DRAM(dynamic random access memory), 다른 유형의 RAM(random access memory), ROM(read-only memory), EEPROM(electrically erasable programmable read-only memory), 플래시 메모리 또는 다른 메모리 기술, CD-ROM(compact disc read-only memory), DVD(digital versatile disc) 또는 다른 광학 저장소, 카세트 자기 테이프, 자기 테이프/자기 디스크 저장 또는 다른 자기 저장 디바이스, 또는 임의의 다른 비-송신 매체를 포함(그러나 이에 제한되지 않음)한다. 컴퓨터 저장 매체는 컴퓨팅 디바이스에 의해 액세스 가능한 정보를 저장하는 데 사용될 수 있다. 본 명세서에서의 설명에 기초하여, 컴퓨터 판독 가능 매체는 변조된 데이터 신호 및 캐리어와 같은 일시적인 컴퓨터 판독 가능 매체들(일시적인 매체들)을 포함하지 않는다.
"포함하다(include, comprise)"라는 용어 또는 그의 임의의 다른 파생어들은 비-배타적인 포함을 커버하도록 의도되어서, 엘리먼트들의 리스트를 포함하는 프로세스, 방법, 제품 또는 디바이스가 이러한 엘리먼트들을 포함할 뿐만 아니라 명시적으로 열거되지 않은 다른 엘리먼트들도 포함하거나, 또는 그러한 프로세스, 방법, 제품 또는 디바이스에 고유한 엘리먼트들을 더 포함한다는 점에도 추가로 주목할 가치가 있다. 더 많은 제약들 없이, "~를 포함한다(includes a …)" 로 끝나는 엘리먼트는 그 엘리먼트를 포함하는 프로세스, 방법, 제품 또는 디바이스에서 부가적인 동일한 엘리먼트들의 존재를 배제하지 않는다.
당업자는, 본 출원의 구현이 방법, 시스템 또는 컴퓨터 프로그램 제품으로서 제공될 수 있다는 것을 이해해야 한다. 따라서, 본 출원은, 하드웨어 단독 구현들, 소프트웨어 단독 구현들 또는 소프트웨어와 하드웨어의 조합을 갖는 구현들의 형태를 사용할 수 있다. 게다가, 본 출원은 컴퓨터 사용 가능 프로그램 코드들을 포함하는 하나 이상의 컴퓨터 사용 가능 저장 매체들(디스크 메모리, CD-ROM, 광학 메모리 등을 포함(그러나 이에 제한되지 않음)함) 상에 구현되는 컴퓨터 프로그램 제품의 형태를 사용할 수 있다.
본 출원은 컴퓨터에 의해 실행되는 컴퓨터 실행 가능 명령들, 예를 들어, 프로그램 모듈의 일반적인 맥락에서 설명될 수 있다. 일반적으로, 프로그램 모듈은 특정 작업을 실행하거나 특정 추상 데이터 유형을 구현하는 루틴, 프로그램, 객체, 컴포넌트, 데이터 구조 등을 포함한다. 본 출원은 또한 분산 컴퓨팅 환경들에서 실시될 수 있다. 분산 컴퓨팅 환경들에서, 작업들은 통신 네트워크를 통해 연결된 원격 프로세싱 디바이스에 의해 수행된다. 분산 컴퓨팅 환경에서, 프로그램 모듈은 저장 디바이스들을 포함하는 로컬 및 원격 컴퓨터 저장 매체들 둘 모두에 위치될 수 있다.
본 출원의 구현들은 점진적인 방식으로 설명된다. 구현들의 동일하거나 유사한 부분들의 경우, 구현들이 참조할 수 있다. 각각의 구현은 다른 구현들과의 차이점에 초점을 맞춘다. 특히, 시스템 구현은 기본적으로 방법 구현과 유사하고, 이에 따라 간략히 설명된다. 관련된 부분들의 경우, 방법 구현에서의 관련된 설명이 참조될 수 있다.
이전의 설명들은 본 출원의 구현들이며, 본 출원을 제한하려는 것은 아니다. 당업자는 본 출원에 다양한 수정들 및 변경들을 가할 수 있다. 본 출원의 사상 및 원리를 벗어나지 않고 이루어지는 임의의 수정, 등가의 교체 또는 개선은 본 출원의 청구항들의 범위에 속해야 한다.

Claims (30)

  1. 이름들을 매칭시키기 위한 방법으로서,
    매칭될 이름을 획득하는 단계;
    상기 매칭될 이름을 매칭시키는 데 사용되는 표준 이름 세트를 결정하는 단계;
    상기 매칭될 이름이 상기 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 상기 이름들의 글자(character)들이 동일하지 않은지 여부를 결정하기 위해 상기 매칭될 이름을 검출하는 단계; 및
    검출 결과에 기초하여 상기 매칭될 이름의 매칭 결과를 결정하는 단계를 포함하는,
    이름들을 매칭시키기 위한 방법.
  2. 제 1 항에 있어서,
    상기 매칭될 이름을 매칭시키는 데 사용되는 표준 이름 세트를 결정하기 전에, 상기 방법은,
    매칭될 필요가 없는 미리 결정된 이름들의 세트를 획득하는 단계; 및
    상기 매칭될 이름이 상기 매칭될 필요가 없는 이름들의 세트에 포함되지 않는다고 결정하는 단계를 더 포함하는,
    이름들을 매칭시키기 위한 방법.
  3. 제 1 항에 있어서,
    상기 매칭될 이름을 매칭시키는 데 사용되는 표준 이름 세트를 결정하는 단계는,
    상기 매칭될 이름을 매칭시키는 데 사용될 수 있는 퍼스트 네임 세트(first name set)를 결정하는 단계;
    상기 매칭될 이름에 포함된 각각의 단어 및 상기 퍼스트 네임 세트 내의 이름에 포함된 각각의 단어에 대해 유사성 매칭(similarity matching)을 수행함으로써 상기 매칭될 이름을 매칭시키는 데 사용되는 상기 표준 이름 세트를 결정하는 단계를 포함하는,
    이름들을 매칭시키기 위한 방법.
  4. 제 3 항에 있어서,
    상기 매칭될 이름에 포함된 각각의 단어 및 상기 퍼스트 네임 세트 내의 이름에 포함된 각각의 단어에 대해 유사성 매칭을 수행함으로써 상기 매칭될 이름을 매칭시키는 데 사용되는 상기 표준 이름 세트를 결정하는 단계는,
    상기 퍼스트 네임 세트에 포함된 각각의 이름의 인덱스를 획득하는 단계 ― 상기 이름의 인덱스는 상기 이름에 포함된 임의의 단어임 ― ;
    상기 매칭될 이름에 포함된 각각의 단어를 획득하기 위해 상기 매칭될 이름을 세그먼팅하는 단계;
    상기 퍼스트 네임 세트의 서브세트를 획득하기 위해 상기 매칭될 이름에 포함된 각각의 단어 및 각각의 인덱스에 대해 유사성 매칭을 수행하는 단계 ― 상기 획득된 서브세트는 성공적으로 매칭되는, 각각의 인덱스에 의해 인덱싱된 이름을 포함함 ― ; 및
    각각의 서브세트에 기초하여 상기 매칭될 이름을 매칭시키는 데 사용되는 표준 이름 세트를 결정하는 단계를 포함하는,
    이름들을 매칭시키기 위한 방법.
  5. 제 4 항에 있어서,
    상기 매칭될 이름에 포함된 각각의 단어 및 각각의 인덱스에 대해 유사성 매칭을 수행하는 단계는,
    문자열 매칭 알고리즘을 이용함으로써 상기 매칭될 이름에 포함된 각각의 단어 및 각각의 인덱스에 대해 유사성 매칭을 수행하는 단계를 포함하고,
    상기 문자열 매칭 알고리즘은 프리픽스 트리 매칭 알고리즘, 사전 트리 매칭 알고리즘, 문자열 유사성 매칭 알고리즘 또는 발음 유사성 매칭 알고리즘 중 적어도 하나를 포함하는,
    이름들을 매칭시키기 위한 방법.
  6. 제 1 항에 있어서,
    상기 매칭될 이름을 검출하기 전에, 상기 방법은,
    상기 표준 이름 세트 내의 이름에 포함된 각각의 단어와 상기 매칭될 이름에 포함된 각각의 단어 사이의 유사성에 기초하여, 상기 표준 이름 세트 내의 상기 이름에 포함된 각각의 단어를 상기 매칭될 이름에 포함된 각각의 단어와 정렬하는 단계를 더 포함하고,
    상기 매칭될 이름을 검출하는 단계는,
    상기 매칭될 이름이 상기 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 상기 이름들의 글자들이 동일하지 않은지 여부를 결정하기 위해 상기 정렬된 표준 이름 세트에 기초하여 상기 매칭될 이름을 검출하는 단계를 포함하는,
    이름들을 매칭시키기 위한 방법.
  7. 제 1 항에 있어서,
    상기 매칭될 이름을 검출하는 단계는,
    상기 매칭될 이름이 상기 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 상기 이름들의 글자들이 동일하지 않은지 여부를 결정하기 위해 상기 매칭될 이름에 대해 약어 검출, 호칭 검출, 복수 언어 검출 또는 가명 검출 중 적어도 하나를 수행하는 단계를 포함하는,
    이름들을 매칭시키기 위한 방법.
  8. 제 7 항에 있어서,
    상기 매칭될 이름에 대해 약어 검출을 수행하는 단계는,
    미리 결정된 약어 콘트라스트 조합 데이터를 획득하는 단계 ― 각각의 약어 콘트라스트 조합은 적어도 하나의 단어와 상기 단어의 약어 간의 약어 맵핑 관계를 반영함 ― ;
    상기 약어 콘트라스트 조합 데이터에 기초하여, 상기 매칭될 이름에 포함된 단어가 상기 표준 이름 세트 내의 이름에 포함된 단어와 상기 약어 맵핑 관계를 갖는지 여부를 검출하는 단계; 및
    검출 결과에 기초하여, 상기 매칭될 이름이 상기 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 상기 이름들의 글자들이 동일하지 않은지 여부를 결정하는 단계를 포함하는,
    이름들을 매칭시키기 위한 방법.
  9. 제 7 항에 있어서,
    상기 매칭될 이름에 대해 호칭 검출을 수행하는 단계는,
    미리 결정된 호칭 데이터를 획득하는 단계;
    상기 매칭될 이름이 상기 호칭을 포함하는지 여부를 검출하는 단계 ― 상기 호칭은 상기 호칭을 포함하는 이름의 의미에 영향을 미치지 않는 것으로 간주됨 ― ; 및
    검출 결과에 기초하여, 상기 매칭될 이름이 상기 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 상기 이름들의 글자들이 동일하지 않은지 여부를 결정하는 단계를 포함하는,
    이름들을 매칭시키기 위한 방법.
  10. 제 7 항에 있어서,
    상기 가명은 상기 가명에 대응하는 이름의 별명 또는 상이한 필드들에서 상기 가명에 대응하는 이름의 동의어 이름을 포함하고,
    상기 매칭될 이름에 대해 가명 검출을 수행하는 단계는,
    상기 매칭될 이름의 별명을 검출하는 단계, 또는 상이한 필드들에서 상기 매칭될 이름의 동의어 이름을 검출하는 단계 중 적어도 하나를 포함하는,
    이름들을 매칭시키기 위한 방법.
  11. 제 7 항에 있어서,
    상기 매칭될 이름에 대해 복수 언어 검출을 수행하는 단계는,
    상기 매칭될 이름에 대응하는 언어를 결정하는 단계;
    상기 언어 또는 다른 언어 중 적어도 하나의 철자 변형 동의어 규칙 또는 철자 변형 동음이의어 규칙 중 적어도 하나를 획득하는 단계; 및
    상기 매칭될 이름이 상기 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 상기 이름들의 글자들이 동일하지 않은지 여부를 결정하기 위해, 상기 철자 변형 동의어 규칙 또는 상기 철자 변형 동음이의어 규칙 중 적어도 하나에 따라 상기 매칭될 이름을 검출하는 단계를 포함하는,
    이름들을 매칭시키기 위한 방법.
  12. 제 7 항에 있어서,
    상기 매칭될 이름에 대해 가명 검출을 수행하는 단계는,
    미리 결정된 가명 콘트라스트 조합 데이터를 획득하는 단계 ― 각각의 가명 콘트라스트 조합은 적어도 하나의 단어와 상기 단어의 가명 간의 가명 맵핑 관계를 반영함 ― ;
    상기 가명 콘트라스트 조합 데이터에 기초하여, 상기 매칭될 이름에 포함된 단어가 상기 표준 이름 세트 내의 이름에 포함된 단어와 상기 가명 맵핑 관계를 갖는지 여부를 검출하는 단계; 및
    검출 결과에 기초하여, 상기 매칭될 이름이 상기 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 상기 이름들의 글자들이 동일하지 않은지 여부를 결정하는 단계를 포함하는,
    이름들을 매칭시키기 위한 방법.
  13. 제 1 항에 있어서,
    상기 검출 결과에 기초하여 상기 매칭될 이름의 매칭 결과를 결정하는 단계는,
    상기 매칭될 이름이 상기 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 상기 이름들의 글자들이 동일하지 않다고 결정하는 것에 대한 응답으로, 상기 매칭될 이름의 매칭 결과로서 상기 적어도 하나의 이름을 결정하는 단계; 또는
    상기 매칭될 이름이 상기 표준 이름 세트 내의 상기 적어도 하나의 이름과 동의어가 아니라고 결정한 것에 대한 응답으로, 하나 이상의 유사성 알고리즘들을 사용하여 상기 매칭될 이름을 상기 표준 이름 세트 내의 이름과 매칭시킴으로써 상기 매칭될 이름의 매칭 결과를 결정하는 단계를 포함하는,
    이름들을 매칭시키기 위한 방법.
  14. 제 13 항에 있어서,
    상기 유사성 알고리즘은 텍스트 매칭 정도를 계산하는 데 사용되는 알고리즘, 표음 매칭 정도를 계산하는 데 사용되는 알고리즘 또는 문자열 매칭 정도를 계산하는 데 사용되는 알고리즘 중 적어도 하나를 포함하는,
    이름들을 매칭시키기 위한 방법.
  15. 제 1 항 내지 제 14 항 중 어느 한 항에 있어서,
    상기 이름은 사람 이름인,
    이름들을 매칭시키기 위한 방법.
  16. 이름들을 매칭시키기 위한 장치로서,
    매칭될 이름을 획득하도록 구성된 획득 모듈;
    상기 매칭될 이름을 매칭시키는 데 사용되는 표준 이름 세트를 결정하도록 구성된 결정 모듈;
    상기 매칭될 이름이 상기 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 상기 이름들의 글자들이 동일하지 않은지 여부를 결정하기 위해 상기 매칭될 이름을 검출하도록 구성된 검출 모듈; 및
    검출 결과에 기초하여 상기 매칭될 이름의 매칭 결과를 결정하도록 구성된 매칭 모듈을 포함하는,
    이름들을 매칭시키기 위한 장치.
  17. 제 16 항에 있어서,
    상기 매칭될 이름을 매칭시키는 데 사용되는 표준 이름 세트를 결정하기 전에, 상기 결정 모듈은, 매칭될 필요가 없는 미리 결정된 이름들의 세트를 획득하고, 그리고 상기 매칭될 이름이 상기 매칭될 필요가 없는 이름들의 세트에 포함되지 않는다고 결정하도록 구성되는,
    이름들을 매칭시키기 위한 장치.
  18. 제 16 항에 있어서,
    상기 매칭될 이름을 매칭시키는 데 사용되는 표준 이름 세트를 결정하도록 구성된 결정 모듈은,
    상기 매칭될 이름을 매칭시키는 데 사용될 수 있는 퍼스트 네임 세트를 획득하고, 그리고 상기 매칭될 이름에 포함된 각각의 단어 및 상기 퍼스트 네임 세트 내의 이름에 포함된 각각의 단어에 대해 유사성 매칭(similarity matching)을 수행함으로써 상기 매칭될 이름을 매칭시키는 데 사용되는 상기 표준 이름 세트를 결정하도록 구성되는 결정 모듈을 포함하는,
    이름들을 매칭시키기 위한 장치.
  19. 제 18 항에 있어서,
    상기 매칭될 이름에 포함된 각각의 단어 및 상기 퍼스트 네임 세트 내의 이름에 포함된 각각의 단어에 대해 유사성 매칭(similarity matching)을 수행함으로써 상기 매칭될 이름을 매칭시키는 데 사용되는 상기 표준 이름 세트를 결정하도록 구성된 상기 결정 모듈은,
    상기 퍼스트 네임 세트에 포함된 각각의 이름의 인덱스를 획득하고 ― 상기 이름의 인덱스는 상기 이름에 포함된 임의의 단어임 ― ;
    상기 매칭될 이름에 포함된 각각의 단어를 획득하기 위해 상기 매칭될 이름을 세그먼팅하고;
    상기 퍼스트 네임 세트의 서브세트를 획득하기 위해 상기 매칭될 이름에 포함된 각각의 단어 및 각각의 인덱스에 대해 유사성 매칭을 수행하고 ― 상기 획득된 서브세트는 성공적으로 매칭되는, 각각의 인덱스에 의해 인덱싱된 이름을 포함함 ― ; 그리고
    상기 서브세트에 기초하여 상기 매칭될 이름을 매칭시키는 데 사용되는 표준 이름 세트를 결정하도록 구성된 결정 모듈을 포함하는,
    이름들을 매칭시키기 위한 장치.
  20. 제 19 항에 있어서,
    상기 매칭될 이름에 포함된 각각의 단어 및 각각의 인덱스에 대해 유사성 매칭을 수행하도록 구성된 상기 결정 모듈은,
    문자열 매칭 알고리즘을 이용함으로써 상기 매칭될 이름에 포함된 각각의 단어 및 각각의 인덱스에 대해 유사성 매칭을 수행하도록 구성되는 결정 모듈을 포함하고,
    상기 문자열 매칭 알고리즘은 프리픽스 트리 매칭 알고리즘, 사전 트리 매칭 알고리즘, 문자열 유사성 매칭 알고리즘 또는 발음 유사성 매칭 알고리즘 중 적어도 하나를 포함하는,
    이름들을 매칭시키기 위한 장치.
  21. 제 16 항에 있어서,
    상기 장치는,
    상기 검출 모듈이 상기 매칭될 이름을 검출하기 전에, 상기 표준 이름 세트 내의 이름에 포함된 각각의 단어와 상기 매칭될 이름에 포함된 각각의 단어 사이의 유사성에 기초하여, 상기 표준 이름 세트 내의 상기 이름에 포함된 각각의 단어를 상기 매칭될 이름에 포함된 각각의 단어와 정렬하도록 구성된 정렬 모듈을 더 포함하고,
    상기 매칭될 이름을 검출하도록 구성된 상기 검출 모듈은,
    상기 매칭될 이름이 상기 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 상기 이름들의 글자들이 동일하지 않은지 여부를 결정하기 위해 상기 정렬된 표준 이름 세트에 기초하여 상기 매칭될 이름을 검출하도록 구성되는 검출 모듈을 포함하는,
    이름들을 매칭시키기 위한 장치.
  22. 제 16 항에 있어서,
    상기 매칭될 이름을 검출하도록 구성된 상기 검출 모듈은,
    상기 매칭될 이름이 상기 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 상기 이름들의 글자들이 동일하지 않은지 여부를 결정하기 위해 상기 매칭될 이름에 대해 약어 검출, 호칭 검출, 복수 언어 검출 또는 가명 검출 중 적어도 하나를 수행하도록 구성되는 검출 모듈을 포함하는,
    이름들을 매칭시키기 위한 장치.
  23. 제 22 항에 있어서,
    상기 매칭될 이름에 대해 약어 검출을 수행하도록 구성된 상기 검출 모듈은,
    미리 결정된 약어 콘트라스트 조합 데이터를 획득하고 ― 각각의 약어 콘트라스트 조합은 적어도 하나의 단어와 상기 단어의 약어 간의 약어 맵핑 관계를 반영함 ― ;
    상기 약어 콘트라스트 조합 데이터에 기초하여, 상기 매칭될 이름에 포함된 단어가 상기 표준 이름 세트 내의 이름에 포함된 단어와 상기 약어 맵핑 관계를 갖는지 여부를 검출하고; 그리고
    검출 결과에 기초하여, 상기 매칭될 이름이 상기 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 상기 이름들의 글자들이 동일하지 않은지 여부를 결정하도록 구성되는 검출 모듈을 포함하는,
    이름들을 매칭시키기 위한 장치.
  24. 제 22 항에 있어서,
    상기 매칭될 이름에 대해 호칭 검출을 수행하도록 구성된 상기 검출 모듈은,
    미리 결정된 호칭 데이터를 획득하고; 상기 매칭될 이름이 상기 호칭을 포함하는지 여부를 검출하고 ― 상기 호칭은 상기 호칭을 포함하는 이름의 의미에 영향을 미치지 않는 것으로 간주됨 ― ; 및
    검출 결과에 기초하여, 상기 매칭될 이름이 상기 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 상기 이름들의 글자들이 동일하지 않은지 여부를 결정하도록 구성되는 검출 모듈을 포함하는,
    이름들을 매칭시키기 위한 장치.
  25. 제 22 항에 있어서,
    상기 가명은 상기 가명에 대응하는 이름의 별명 또는 상이한 필드들에서 상기 가명에 대응하는 이름의 동의어 이름을 포함하고,
    상기 매칭될 이름에 대해 가명 검출을 수행하도록 구성된 상기 검출 모듈은,
    상기 매칭될 이름의 별명을 검출하는 것, 또는 상이한 필드들에서 상기 매칭될 이름의 동의어 이름을 검출하는 것 중 적어도 하나를 수행하도록 구성되는 검출 모듈을 포함하는,
    이름들을 매칭시키기 위한 장치.
  26. 제 22 항에 있어서,
    상기 매칭될 이름에 대해 복수 언어 검출을 수행하도록 구성된 상기 검출 모듈은,
    상기 매칭될 이름에 대응하는 언어를 결정하고;
    상기 언어 또는 다른 언어의 철자 변형 동의어 규칙, 철자 변형 동음이의어 규칙 중 적어도 하나를 획득하고; 그리고
    상기 매칭될 이름이 상기 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 상기 이름들의 글자들이 동일하지 않은지 여부를 결정하기 위해, 상기 철자 변형 동의어 규칙 또는 상기 철자 변형 동음이의어 규칙 중 적어도 하나에 따라 상기 매칭될 이름을 검출하도록 구성되는 검출 모듈을 포함하는,
    이름들을 매칭시키기 위한 장치.
  27. 제 22 항에 있어서,
    상기 매칭될 이름에 대해 가명 검출을 수행하도록 구성된 상기 검출 모듈은,
    미리 결정된 가명 콘트라스트 조합 데이터를 획득하고 ― 각각의 가명 콘트라스트 조합은 적어도 하나의 단어와 상기 단어의 가명 간의 가명 맵핑 관계를 반영함 ― ;
    상기 가명 콘트라스트 조합 데이터에 기초하여, 상기 매칭될 이름에 포함된 단어가 상기 표준 이름 세트 내의 이름에 포함된 단어와 상기 가명 맵핑 관계를 갖는지 여부를 검출하고; 그리고
    검출 결과에 기초하여, 상기 매칭될 이름이 상기 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 상기 이름들의 글자들이 동일하지 않은지 여부를 결정하도록 구성되는 검출 모듈을 포함하는,
    이름들을 매칭시키기 위한 장치.
  28. 제 16 항에 있어서,
    상기 검출 결과에 기초하여 상기 매칭될 이름의 매칭 결과를 결정하도록 구성된 상기 매칭 모듈은,
    상기 매칭될 이름이 상기 표준 이름 세트 내의 적어도 하나의 이름과 동의어지만 상기 이름들의 글자들이 동일하지 않다고 상기 검출 모듈이 결정하는 경우, 상기 매칭될 이름의 매칭 결과로서 상기 적어도 하나의 이름을 결정하거나; 또는
    상기 매칭될 이름이 상기 표준 이름 세트 내의 상기 적어도 하나의 이름과 동의어가 아니라고 상기 결정 모듈이 결정하는 경우, 하나 이상의 유사성 알고리즘들을 사용하여 상기 매칭될 이름을 상기 표준 이름 세트 내의 이름과 매칭시킴으로써 상기 매칭될 이름의 매칭 결과를 결정하도록 구성되는 매칭 모듈을 포함하는,
    이름들을 매칭시키기 위한 장치.
  29. 제 28 항에 있어서,
    상기 유사성 알고리즘은 텍스트 매칭 정도를 계산하는 데 사용되는 알고리즘, 표음 매칭 정도를 계산하는 데 사용되는 알고리즘 또는 문자열 매칭 정도를 계산하는 데 사용되는 알고리즘 중 적어도 하나를 포함하는,
    이름들을 매칭시키기 위한 장치.
  30. 제 16 항 내지 제 29 항 중 어느 한 항에 있어서,
    상기 이름은 사람 이름인,
    이름들을 매칭시키기 위한 장치.
KR1020197018218A 2016-11-25 2017-11-17 이름들을 매칭시키기 위한 방법 및 장치 KR102151367B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201611055619.8 2016-11-25
CN201611055619.8A CN108108373B (zh) 2016-11-25 2016-11-25 一种名称匹配方法及装置
PCT/CN2017/111604 WO2018095281A1 (zh) 2016-11-25 2017-11-17 一种名称匹配方法及装置

Publications (2)

Publication Number Publication Date
KR20190084319A true KR20190084319A (ko) 2019-07-16
KR102151367B1 KR102151367B1 (ko) 2020-09-03

Family

ID=62196168

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020197018218A KR102151367B1 (ko) 2016-11-25 2017-11-17 이름들을 매칭시키기 위한 방법 및 장치

Country Status (14)

Country Link
US (1) US10726028B2 (ko)
EP (1) EP3547164A4 (ko)
JP (1) JP6860668B2 (ko)
KR (1) KR102151367B1 (ko)
CN (1) CN108108373B (ko)
AU (1) AU2017364745C1 (ko)
BR (1) BR112019010669B1 (ko)
CA (1) CA3044847A1 (ko)
MX (1) MX2019006027A (ko)
PH (1) PH12019501163B1 (ko)
RU (1) RU2725777C1 (ko)
TW (1) TWI724237B (ko)
WO (1) WO2018095281A1 (ko)
ZA (1) ZA201904091B (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023229230A1 (ko) * 2022-05-26 2023-11-30 주식회사 카카오게임즈 닉네임 간 유사도를 이용하여 다중 접속계정을 탐지하기 위한 방법 및 장치

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108962232B (zh) * 2018-07-16 2021-01-01 上海小蚁科技有限公司 语音识别方法及装置、存储介质、终端
CN109189809B (zh) * 2018-10-17 2020-01-03 北京金堤科技有限公司 一种股东名称关联匹配的方法和装置
CN109408561A (zh) * 2018-10-17 2019-03-01 杭州骑轻尘信息技术有限公司 业务名称匹配方法及装置
CN109472029B (zh) * 2018-11-09 2023-04-07 天津开心生活科技有限公司 药品名称处理方法与装置
CN109471960B (zh) * 2018-11-13 2020-10-13 深圳市景旺电子股份有限公司 智能识别pcb资料工具层名的方法及装置
CN109840316A (zh) * 2018-12-21 2019-06-04 上海诺悦智能科技有限公司 一种客户信息制裁名单匹配系统
GB201902772D0 (en) * 2019-03-01 2019-04-17 Palantir Technologies Inc Fuzzy searching 7 applications thereof
CN110909532B (zh) * 2019-10-31 2021-06-11 银联智惠信息服务(上海)有限公司 用户名称匹配方法、装置、计算机设备和存储介质
CN111092758A (zh) * 2019-12-06 2020-05-01 上海上讯信息技术股份有限公司 降低告警及恢复误报的方法、装置及电子设备
US20210287069A1 (en) * 2020-03-12 2021-09-16 Oracle International Corporation Name matching engine boosted by machine learning
CN111563139B (zh) * 2020-07-15 2020-10-23 平安国际智慧城市科技股份有限公司 Ocr识别发票药品名的校验方法、装置及计算机设备
CN113268986B (zh) * 2021-05-24 2024-05-24 交通银行股份有限公司 一种基于模糊匹配算法的单位名称匹配、查找方法及装置
US20230039689A1 (en) * 2021-08-05 2023-02-09 Ebay Inc. Automatic Synonyms, Abbreviations, and Acronyms Detection
CN113822049B (zh) * 2021-09-29 2023-08-25 平安银行股份有限公司 基于人工智能的地址审核方法、装置、设备及存储介质
WO2023132029A1 (ja) * 2022-01-06 2023-07-13 日本電気株式会社 情報処理装置、情報処理方法及びプログラム
CN114880430B (zh) * 2022-05-10 2023-07-18 马上消费金融股份有限公司 名称处理方法及装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030212541A1 (en) * 2002-05-13 2003-11-13 Gary Kinder Method for editing and enhancing readability of authored documents

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8812300B2 (en) * 1998-03-25 2014-08-19 International Business Machines Corporation Identifying related names
US20040024760A1 (en) * 2002-07-31 2004-02-05 Phonetic Research Ltd. System, method and computer program product for matching textual strings using language-biased normalisation, phonetic representation and correlation functions
US8423563B2 (en) * 2003-10-16 2013-04-16 Sybase, Inc. System and methodology for name searches
US20060074883A1 (en) * 2004-10-05 2006-04-06 Microsoft Corporation Systems, methods, and interfaces for providing personalized search and information access
US8700568B2 (en) * 2006-02-17 2014-04-15 Google Inc. Entity normalization via name normalization
US9026514B2 (en) * 2006-10-13 2015-05-05 International Business Machines Corporation Method, apparatus and article for assigning a similarity measure to names
EP2132648A2 (en) * 2007-02-26 2009-12-16 Basis Technology Corporation Name indexing for name matching systems
CN101727464B (zh) * 2008-10-29 2012-08-08 北京搜狗科技发展有限公司 获取别称匹配对的方法及装置
US20110055234A1 (en) * 2009-09-02 2011-03-03 Nokia Corporation Method and apparatus for combining contact lists
TWI443529B (zh) 2010-04-01 2014-07-01 Inst Information Industry 自動化領域名詞建置方法及系統,及其電腦程式產品
US9424556B2 (en) * 2010-10-14 2016-08-23 Nokia Technologies Oy Method and apparatus for linking multiple contact identifiers of an individual
US8468167B2 (en) * 2010-10-25 2013-06-18 Corelogic, Inc. Automatic data validation and correction
US8364692B1 (en) * 2011-08-11 2013-01-29 International Business Machines Corporation Identifying non-distinct names in a set of names
US9275339B2 (en) * 2012-04-24 2016-03-01 Raytheon Company System and method for probabilistic name matching
US9229926B2 (en) 2012-12-03 2016-01-05 International Business Machines Corporation Determining similarity of unfielded names using feature assignments
CN103167056B (zh) * 2013-01-31 2016-03-02 中国科学院计算机网络信息中心 一种基于自动审核的域名注册方法
CN103970798B (zh) * 2013-02-04 2019-05-28 商业对象软件有限公司 数据的搜索和匹配
US10089302B2 (en) 2013-02-26 2018-10-02 International Business Machines Corporation Native-script and cross-script chinese name matching
CN103177122B (zh) * 2013-04-15 2017-04-26 天津理工大学 一种基于同义词的个人桌面文件搜索方法
CN103425739B (zh) * 2013-07-09 2016-09-14 国云科技股份有限公司 一种字符串匹配方法
US9691075B1 (en) * 2014-03-14 2017-06-27 Wal-Mart Stores, Inc. Name comparison
CN104331475B (zh) * 2014-11-04 2018-03-23 郑州悉知信息科技股份有限公司 一种信息检测方法及装置
US9535903B2 (en) * 2015-04-13 2017-01-03 International Business Machines Corporation Scoring unfielded personal names without prior parsing
CN104765858A (zh) * 2015-04-21 2015-07-08 北京航天长峰科技工业集团有限公司上海分公司 公安用同义词库的构建方法及获得的公安用同义词库
CN104820713B (zh) 2015-05-19 2018-02-27 苏州中炎工业科技有限公司 一种基于用户历史数据获得工业产品名称同义词的方法
CN105843950A (zh) * 2016-04-12 2016-08-10 乐视控股(北京)有限公司 敏感词过滤方法及装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030212541A1 (en) * 2002-05-13 2003-11-13 Gary Kinder Method for editing and enhancing readability of authored documents

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023229230A1 (ko) * 2022-05-26 2023-11-30 주식회사 카카오게임즈 닉네임 간 유사도를 이용하여 다중 접속계정을 탐지하기 위한 방법 및 장치

Also Published As

Publication number Publication date
JP2020501255A (ja) 2020-01-16
EP3547164A4 (en) 2019-10-16
AU2017364745A1 (en) 2019-06-20
BR112019010669B1 (pt) 2021-12-07
PH12019501163A1 (en) 2020-02-24
BR112019010669A2 (pt) 2019-10-01
TW201820179A (zh) 2018-06-01
US10726028B2 (en) 2020-07-28
TWI724237B (zh) 2021-04-11
AU2017364745C1 (en) 2020-09-10
CN108108373A (zh) 2018-06-01
JP6860668B2 (ja) 2021-04-21
ZA201904091B (en) 2021-05-26
MX2019006027A (es) 2019-08-14
US20190251085A1 (en) 2019-08-15
AU2017364745B2 (en) 2020-04-09
CN108108373B (zh) 2020-09-25
CA3044847A1 (en) 2018-05-31
PH12019501163B1 (en) 2020-02-24
EP3547164A1 (en) 2019-10-02
KR102151367B1 (ko) 2020-09-03
WO2018095281A1 (zh) 2018-05-31
RU2725777C1 (ru) 2020-07-06

Similar Documents

Publication Publication Date Title
KR20190084319A (ko) 이름들을 매칭시키기 위한 방법 및 장치
EP3554000B1 (en) Validation code based verification method and device
US10467266B2 (en) Information query
JP2020524314A (ja) 危険アドレス識別方法及び機器、並びに電子装置
US8639496B2 (en) System and method for identifying phrases in text
US20180157646A1 (en) Command transformation method and system
CN111159697B (zh) 一种密钥检测方法、装置及电子设备
CN107329964B (zh) 一种文本处理方法及装置
US9773047B2 (en) Foreign organization name matching
Sui et al. Set generation networks for end-to-end knowledge base population
KR101706827B1 (ko) 개체 간 사회 관계 추출 장치 및 방법
US20160078072A1 (en) Term variant discernment system and method therefor
OA19238A (en) Name matching method and apparatus.
CN110018957B (zh) 一种资损核对脚本检测方法及装置
KR20150111587A (ko) 디비피디아를 활용한 uri 스포팅 시스템 및 방법
CN113642603B (zh) 一种数据匹配方法、装置、存储介质及电子设备
CN107391489B (zh) 一种文本分析方法及装置
CN107427732B (zh) 用于组织和处理基于特征的数据结构的系统和方法
US20200065368A1 (en) Implementing enhanced autocomplete via multiple mobile keyboards
CN116049687A (zh) 数据处理方法、装置及设备
CN114239493A (zh) 一种数据拦截方法及装置
WO2014190714A1 (en) Method and apparatus for word counting

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant