KR101265263B1 - 발음 기호를 이용한 문자열 매칭 방법 및 시스템과 그방법을 기록한 컴퓨터 판독 가능한 기록매체 - Google Patents
발음 기호를 이용한 문자열 매칭 방법 및 시스템과 그방법을 기록한 컴퓨터 판독 가능한 기록매체 Download PDFInfo
- Publication number
- KR101265263B1 KR101265263B1 KR1020060000161A KR20060000161A KR101265263B1 KR 101265263 B1 KR101265263 B1 KR 101265263B1 KR 1020060000161 A KR1020060000161 A KR 1020060000161A KR 20060000161 A KR20060000161 A KR 20060000161A KR 101265263 B1 KR101265263 B1 KR 101265263B1
- Authority
- KR
- South Korea
- Prior art keywords
- string
- representative
- phonetic
- input
- notation
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 55
- 238000013507 mapping Methods 0.000 claims abstract description 75
- 238000006243 chemical reaction Methods 0.000 claims abstract description 34
- 238000012545 processing Methods 0.000 claims description 4
- 239000000284 extract Substances 0.000 claims description 2
- 238000000605 extraction Methods 0.000 claims 1
- 230000007246 mechanism Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 4
- 241000238366 Cephalopoda Species 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000000354 decomposition reaction Methods 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
- 238000013518 transcription Methods 0.000 description 1
- 230000035897 transcription Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L9/00—Details or accessories of suction cleaners, e.g. mechanical means for controlling the suction or for effecting pulsating action; Storing devices specially adapted to suction cleaners or parts thereof; Carrying-vehicles specially adapted for suction cleaners
- A47L9/24—Hoses or pipes; Hose or pipe couplings
- A47L9/248—Parts, details or accessories of hoses or pipes
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/08—Text analysis or generation of parameters for speech synthesis out of text, e.g. grapheme to phoneme translation, prosody generation or stress or intonation determination
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3343—Query execution using phonetics
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
- G10L15/183—Speech classification or search using natural language modelling using context dependencies, e.g. language models
- G10L15/187—Phonemic context, e.g. pronunciation rules, phonotactical constraints or phoneme n-grams
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Theoretical Computer Science (AREA)
- Acoustics & Sound (AREA)
- General Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Mechanical Engineering (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Machine Translation (AREA)
Abstract
본 발명에 따라 다양한 방법으로 표기된 동일 의미의 문자열들을 대표하는 대표 문자열을 검색하는 문자열 매칭 방법 및 시스템과 그 방법을 기록한 컴퓨터 판독 가능한 기록매체가 개시된다.
본 발명에 따른 문자열 매칭 방법은, 입력 문자열이 씌여진 언어와 발음 기호 간의 매핑 정보가 저장된 발음 기호 매핑 테이블을 참조하여, 입력 문자열을 하나 이상의 발음 표기로 변환한 변환 리스트를 생성하는 발음 표기 생성단계와, 대표 문자열과 그에 대응하는 대표 발음 표기가 저장된 대표 리스트 데이터베이스에서, 변환 리스트에 포함된 하나 이상의 발음 표기와 동일한 대표 발음 표기를 가진 레코드를 찾아 후보 리스트를 생성하는 대표 리스트 검색단계와, 후보 리스트의 레코드 중 하나에 포함된 대표 문자열을 출력 문자열로 결정하는 대표 문자열 결정단계를 포함한다.
이상과 같은 본 발명에 의하면, 다른 표기로 기록된 동일 의미의 문자열에 대한 대표 문자열을 찾을 수 있으므로, 문자열에 의해 분류를 제공하는 서비스에 유용하다.
문자열 매칭, 발음 기호, ID3 태그, MP3
Description
도 1은 본 발명의 일실시예에 따른 발음 기호를 이용한 문자열 매칭 시스템의 구성도,
도 2는 본 발명의 다른 실시예에 따른 발음 기호를 이용한 문자열 매칭 시스템의 구성도,
도 3은 본 발명에 따른 발음 기호를 이용한 문자열 매칭 방법의 매커니즘 흐름도,
도 4는 발음 표기 생성단계의 매커니즘 흐름도,
도 5는 대표 문자열 결정단계에서 사용자가 대표 문자열을 결정하는 경우의 매커니즘 흐름도,
도 6은 대표 문자열 결정단계에서 매칭 점수를 이용하여 대표 문자열을 결정하는 경우의 매커니즘 흐름도,
도 7a 및 도 7b는 한글 매핑 테이블 및 영어 매핑 테이블의 예,
도 8은 이전결과 데이터베이스의 예,
도 9는 대표 리스트 데이터베이스의 예,
도 10은 MP3(MPEG Audio Layer-3) 파일의 구조.
본 발명은 문자열의 매칭에 관한 것으로, 더욱 상세하게는 동일한 의미를 가진 것으로 간주되는 문자열들을 분류하기 위한 방법 및 시스템과 그 방법을 기록한 컴퓨터 판독 가능한 기록매체에 관한 것이다.
MP3(MPEG Audio Layer-3) 등의 멀티미디어 파일의 메타 정보를 이용한 응용 서비스에 있어서, 메타 정보에 포함된 아티스트명이나 장르 등의 정보를 기준으로 멀티미디어 데이터를 분류하여 사용자에게 보여주는 기능이 필요한 경우가 많다.
이러한 메타 정보는, 외국어로 입력된 경우 다양한 외국어 표기가 가능하고, 공백(' ')이나 하이픈('-') 등의 특수 문자가 섞여 있는 경우도 많고, 일반 사용자가 입력하는 경우도 많기 때문에, 같은 의미를 가진 문자열이라도 일관성 없이 입력되어 있어 다른 문자열로 해석되고 분류되는 문제가 있다.
예컨대, MP3 플레이어에서 아티스트별로 음악을 분류하는 응용 프로그램에 있어서, 종래의 방법에 의하면 '이미자', '이 미자', 'Lee Mi-Za', 'Lee Mi Ja', 'Lee Miza' 등으로 입력되어 있는 아티스트가 동일인임에도 불구하고 각기 다른 가수로 분류되어 사용자에게 불편을 초래하고 응용 서비스의 개발에 제약이 따르는 형편이다.
본 발명은 상기와 같은 문제를 해결하여, 다양한 방법으로 표기된 동일 의미의 문자열들을 대표하는 대표 문자열을 검색하는 문자열 매칭 방법 및 시스템과 그 방법을 기록한 컴퓨터 판독 가능한 기록매체를 제공하는 것을 목적으로 한다.
상기와 같은 과제를 해결하기 위한 본 발명의 하나의 특징은, 입력 문자열에 매칭되는 대표 문자열을 출력하는 문자열 매칭 방법에 있어서, 상기 입력 문자열이 씌여진 언어와 발음 기호 간의 매핑 정보가 저장된 발음 기호 매핑 테이블을 참조하여, 상기 입력 문자열을 하나 이상의 발음 표기로 변환한 변환 리스트를 생성하는 발음 표기 생성단계와, 대표 문자열과 그에 대응하는 대표 발음 표기가 저장된 대표 리스트 데이터베이스에서, 상기 변환 리스트에 포함된 상기 하나 이상의 발음 표기와 동일한 대표 발음 표기를 가진 레코드를 찾아 후보 리스트를 생성하는 대표 리스트 검색단계와, 상기 후보 리스트의 레코드 중 하나에 포함된 대표 문자열을 출력 문자열로 결정하는 대표 문자열 결정단계를 포함하는 것이다.
바람직하게는 상기 문자열 매칭 방법이, 문자열과 그에 대응하는 대표 문자열이 포함된 매칭 결과가 저장되는 이전 결과 데이터베이스를 검색하여 상기 입력 문자열과 동일한 문자열이 존재하면, 그에 대응하는 대표 문자열을 출력 문자열로 결정하는 이전 결과 검색단계와, 상기 입력 문자열과 상기 대표 문자열 결정단계에서 결정된 상기 출력 문자열로 구성된 레코드가 상기 이전 결과 데이터베이스에 존재하지 않는 경우, 상기 이전 결과 데이터베이스에 저장하는 결과 저장단계를 더 포함한다.
바람직하게는 상기 발음 표기 생성단계가, 상기 변환 전에 상기 입력 문자열에 포함된 유효하지 않은 소정의 특수문자를 제거하는 특수문자 처리단계를 더 포함한다.
바람직하게는 상기 입력 문자열이 씌여진 언어가 한글인 경우, 상기 발음 기호 매핑 테이블은, 한글의 모든 글자를 하나 이상의 발음 기호로 매핑하는 정보를 포함한다.
바람직하게는 상기 입력 문자열이 씌여진 언어가 영어인 경우, 상기 발음 기호 매핑 테이블은, 영어의 모든 음절을 하나 이상의 발음 기호로 매핑하는 정보를 포함하고, 상기 발음 표기 생성단계는, 상기 입력 문자열을 하나 이상의 음절로 나누는 단계와, 상기 하나 이상의 음절을 상기 하나 이상의 발음 기호와 매핑하여 상기 입력 문자열을 상기 하나 이상의 발음 표기로 변환하는 단계를 더 포함한다.
바람직하게는 상기 입력 문자열을 하나 이상의 음절로 나누는 단계가, 상기 입력 문자열에 포함된 하나 이상의 연속된 자음과 하나 이상의 연속된 모음을 별도의 음절로 구분하고, 상기 입력 문자열의 끝에 포함된 단독 자음은 상기 단독 자음 앞의 모음이 속하는 음절에 포함시키는 단계를 포함한다.
바람직하게는 상기 문자열 매칭 방법이, 상기 매핑 정보에 항목별 우선순위 점수를 부여하는 단계를 더 포함하고, 상기 발음 표기 생성단계는, 상기 우선순위 점수를 이용하여 상기 변환된 하나 이상의 발음 표기에 대한 매칭 점수를 계산하여 부여하는 단계와, 상기 매칭 점수를 참조하여, 상기 변환된 하나 이상의 발음 표기 중에서 상기 변환 리스트에 포함될 발음 표기를 결정하는 단계를 더 포함한다.
바람직하게는 상기 문자열 매칭 방법이, 상기 사용자에 의해 선택된 상기 후보 리스트 레코드의 대표 문자열을 그에 대응하는 발음 표기로 변환하는데 사용된 매핑 정보 항목들에 대해서는 지정된 가산점을 부여한 새로운 우선순위 점수를 부여하는 우선순위 변경단계를 더 포함한다.
바람직하게는 상기 대표 문자열 결정단계가, 상기 매칭 점수를 참조하여 상기 출력 문자열을 결정하는 단계를 더 포함한다.
본 발명의 또 다른 특징은. 입력 문자열에 매칭되는 대표 문자열을 출력하는 문자열 매칭 시스템에 있어서, 대표 문자열과 그에 대응하는 대표 발음 표기가 저장되는 대표 리스트 데이터베이스와, 언어별 발음 기호 매핑 정보가 저장되는 하나 이상의 발음 기호 매핑 테이블과, 상기 하나 이상의 발음 기호 매핑 테이블을 참조하여, 상기 입력 문자열을 하나 이상의 발음 표기로 변환한 변환 리스트를 생성하는 발음 표기 생성수단과, 상기 대표 리스트 데이터베이스를 검색하여 상기 변환 리스트에 포함된 상기 하나 이상의 발음 표기와 동일한 대표 발음 표기를 가진 레코드로 구성된 후보 리스트를 생성하는 대표 리스트 검색수단과, 상기 후보 리스트의 레코드 중 하나에 포함된 대표 문자열을 출력 문자열로 결정하는 대표 문자열 결정수단을 포함하는 것이다.
바람직하게는 상기 문자열 매칭 시스템이, 문자열과 그에 대응하는 대표 문자열이 포함된 문자열 매칭 결과가 저장되는 이전 결과 데이터베이스와, 상기 이전 결과 데이터베이스를 검색하여 상기 입력 문자열과 동일한 문자열이 존재하면, 그에 대응하는 대표 문자열을 출력 문자열로 결정하는 이전 결과 검색수단과, 상기 입력 문자열과 상기 대표 문자열 결정수단에 의해 결정된 출력 문자열이 상기 이전 결과 데이터베이스에 존재하지 않는 경우, 상기 이전 결과 데이터베이스에 저장하는 결과 저장수단을 더 포함한다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 설명한다.
도 1은 본 발명의 일실시예에 따른 발음 기호를 이용한 문자열 매칭 시스템의 구성도로서, 대표 문자열에 대한 정보가 저장되는 대표 리스트 데이터베이스(DB)(130), 언어별 발음 기호 매핑 정보가 저장되는 하나 이상의 발음 기호 매핑 테이블(120), 입력 문자열을 하나 이상의 발음 표기로 변환한 변환 리스트를 생성하는 발음 표기 생성수단(101), 변환 리스트로부터 대표 문자열의 후보 리스트를 생성하는 대표 리스트 검색수단(102), 후보 리스트에서 하나의 대표 문자열을 선택하는 대표 문자열 결정수단(103)을 포함한다.
대표 리스트 데이터베이스(130)는 매칭이 완료된 대표 문자열과 그에 대응하는 발음 표기가 저장되어 있다. 도 9는 대표 리스트 데이터베이스(130)의 구성 예로서, 아티스트들의 대표적인 이름 표기(대표 문자열, 901)와 그에 대한 발음 표기인 대표 발음 표기(902)가 저장되어 있음을 알 수 있다. 여기서, 발음 기호는 문자열의 각 글자 또는 음절에 대한 발음을 나타내는 기호를 의미하는 용어로, 발음 표기는 문자열을 발음 기호들로 변환한 표기를 의미하는 용어로 사용한다. 예컨대, 한글의 '비'라는 글자에 대응하는 발음 기호 중 하나는 'bi'이고 '참'이라는 글자에 대응하는 발음 기호 중 하나는 't∫am'이므로, '비참'이라는 문자열에 대응 하는 'bit∫am'이라는 발음 표기가 생성된다.
발음 기호 매핑 테이블(120)은 시스템에서 사용될 수 있는 각 언어로 씌여진 문자열을 발음 표기로 변환하기 위한 정보를 저장하기 위한 것으로, 각 언어당 하나씩 복수 개의 매핑 테이블이 사용될 수 있다. 도 7a 및 도 7b는 한글 매핑 테이블 및 영어 매핑 테이블의 예이며, 국제 발음 기호를 사용하고 있다.
도 7a를 참조하면, 한글 매핑 테이블은, 한글의 모든 글자를 하나 이상의 발음 기호로 매핑하기 위한 정보를 포함한다. 즉, 한글의 각 글자(710)에 대한 복수 개의 발음 기호(720) 정보를 저장한다. 도 7b를 참조하면, 영어 매핑 테이블은, 영어의 모든 음절을 하나 이상의 발음 기호로 매핑하는 정보를 포함한다. 즉, 영어의 각 음절(730)에 대한 복수 개의 발음 기호(740) 정보를 저장한다. 도 7a 및 도 7b의 발음 기호 매핑 테이블들은, 한글로 된 문자열을 각 글자로 분해한 후 발음 표기로 변환하고, 영어로 된 문자열은 각 음절로 분해한 후 발음 표기로 변환하기 위한 정보를 포함하고 있으나, 그외의 다른 방법으로 문자열을 분해할 수 있다. 예컨대, 한글 매핑 테이블이 한글의 모든 자음과 모음에 대한 발음 기호를 포함하고, 입력된 한글 문자열을 자음과 모음으로 분해한 후 상기 한글 매핑 테이블을 이용하여 발음 표기로 변환하는 응용도 가능하다. 또한, 도 7a 및 도 7b의 발음 기호 매핑 테이블들은, 한 요소(글자 또는 음절) 당 3개의 매핑 정보 항목(발음 기호)을 가지고 있으나, 실시예에 따라 다양한 개수로 구현될 수 있다.
발음 표기 생성수단(101)은 언어별 발음 기호 매핑 테이블(120)을 이용하여 입력된 문자열을 가능한 모든 발음 표기로 변환한 리스트를 생성한다. 대표 리스 트 검색수단(102)은 이 변환 리스트의 발음 표기들이 대표 리스트 데이터베이스(130)에 있는지 검색하여 일치하는 발음 표기를 가진 레코드를 찾아 후보 리스트에 포함시킨다. 대표 문자열 결정수단(103)은 이 후보 리스트의 레코드 중 하나에 포함된 대표 문자열을 선택하여 출력 문자열로 결정한다.
또한, 발음 표기 생성수단(101)은, 입력 문자열에 포함된 소정의 특수문자를 제거한 후 발음 표기로 변환함으로써, 특수문자가 포함된 문자열의 경우도 정확한 매칭이 가능하도록 한다. 가수 이름이나 그룹 이름 등은 의미 있는 특수문자를 포함할 가능성이 있기 때문에, '-'(하이픈)과 ' '(공백)에 대해서만 삭제 처리하는 것이 바람직하다. 예컨대, 입력 문자열 '이 미 자', 'Lee Mi-Ja'는 각각 '이미자', 'LeeMiJa'로 수정된다. 실시예에 따라 적절한 특수문자에 대해 삭제 등의 처리가 필요할 것이다. 의미 있는 특수문자는 그대로 둔다. 또한, 영어 등의 언어에는 대문자와 소문자가 존재하므로 그 중 어느 하나로, 예컨대 소문자로 변경한 후 변환 작업을 수행하고, 발음 표기 매핑 테이블에도 소문자로 된 음절에 대한 정보를 저장하는 것이 효율적이다.
도 2는 본 발명의 다른 실시예에 따른 발음 기호를 이용한 문자열 매칭 시스템의 구성도로서, 도 1의 실시예에 포함된 구성 요소인 대표 리스트 데이터베이스(130), 발음 기호 매핑 테이블(120), 발음 표기 생성수단(101), 대표 리스트 검색수단(102) 및 대표 문자열 결정수단(103)을 구비한다. 또한, 문자열과 그에 대응하는 대표 문자열이 포함된 과거의 문자열 매칭 결과가 저장되는 이전 결과 데이터베이스(140), 과거에 입력 문자열과 동일한 문자열에 대해 매칭한 적이 있는지 검 색하는 이전 결과 검색수단(104) 및 매칭 결과를 이전 결과 데이터베이스(140)와 대표 리스트 데이터베이스(130)에 저장하는 결과 저장수단(106)을 더 구비한다. 또한, 우선순위를 점수를 변경하는 우선순위 변경수단(105)을 더 구비할 수 있다.
도 8은 본 발명에 따른 이전 결과 데이터베이스(140)의 예로서, 사용자가 입력할 수 있는 다양한 표기의 문자열(801)과 그에 대응하는 대표 문자열(802)을 저장하고 있다. 이는 시스템 운영중 결과 저장수단(106)에 의해 축적된 문자열 매칭 결과에 대한 정보이다. 입력 문자열이 이전 결과 데이터베이스(140)에 존재한다면 더 이상 매칭 작업을 수행할 필요가 없다. 이전 결과 검색수단(104)은 먼저 이전 결과 데이터베이스(140)를 검색하여 입력 문자열과 동일한 문자열이 존재하면, 그에 대응하는 대표 문자열을 출력 문자열로 결정하므로 효율적이다. 예컨대, 입력 문자열이 'leemi-za'이면, (leemi-za, 이미자)라는 레코드가 이전 결과 데이터베이스(140)에 존재하므로, 이전에도 동일 문자열에 대해 매칭 작업을 수행한 적이 있음을 알 수 있으며, 대표 문자열로 '이미자'가 출력된다.
반면, 이전 결과 데이터베이스(140)에 존재하지 않는 문자열이 입력되어 그에 매칭되는 대표 문자열이 결정되었다면, 결과 저장수단(106)은 입력 문자열과 출력된 대표 문자열을 이전 결과 데이터베이스(140)에 저장하고, 추후 동일한 문자열이 입력된 경우는 이 정보를 참조한다.
한편, 언어별 발음 기호 매핑 테이블(120)에 저장된 매핑 정보에는 항목별 우선순위 점수가 부여될 수 있으며, 발음 표기 생성수단(101)은, 우선순위 점수를 이용하여 변환 리스트에 포함된 각 발음 표기에 대한 매칭 점수를 계산하여 부여하 고, 매칭 점수가 높은 지정된 개수의 발음 표기만을 변환 리스트에 포함시켜 출력할 수 있다.
생성된 변환 리스트는 대표 리스트 검색수단(102)에 입력되며, 대표 리스트 검색수단(102)은 대표 리스트 데이터베이스(130)를 검색하여 변환 리스트에 포함된 발음 표기와 동일한 대표 발음 표기가 포함된 레코드들을 찾아 후보 리스트를 생성한다.
대표 문자열 결정수단(103)은, 후보 리스트를 사용자에게 보여주고 사용자가 선택한 레코드의 대표 문자열을 출력 문자열로 결정할 수 있다. 만일, 사용자가 후보 리스트의 레코드 중 어느 것도 선택하지 않은 경우는, 입력 문자열을 출력 문자열로 결정한다. 이 경우, 결과 저장수단(106)은 입력 문자열을 대표 리스트 데이터베이스(130)의 대표 문자열로 저장하여 추후 매칭 작업에 이용될 수 있도록 한다. 이때, 후보 리스트의 발음 표기 중 매칭 점수가 최고인 것이 대표 발음 표기로 함께 저장되는 것이 바람직하다.
한편, 대표 문자열 결정수단(103)은, 사용자에게 질의하지 않고, 후보 리스트에 포함된 발음 표기 중 매칭 점수가 최고인 발음 표기에 대응하는 대표 문자열을 출력 문자열로 결정할 수 있다. 또한, 후보 리스트에 포함된 발음 표기 중 지정된 매칭 점수 이상인 것이 없는 경우는 입력 문자열을 출력 문자열로 결정할 수 있다. 이 경우도 결과 저장수단(106)에 의해, 입력 문자열과 함께 후보 리스트의 발음 표기 중 최고 매칭 점수를 가진 발음 표기가 대표 리스트 데이터베이스(130)에 저장될 수 있다.
발음 기호 매핑 테이블의 각 매핑 정보 항목에 우선순위 점수를 부여하고, 이 점수를 변환 리스트 및 출력 문자열의 결정에 이용할 수 있다. 일반적으로 사용되므로 매칭 확률이 큰 한글 글자와 발음 기호 간의 매핑 항목에 상대적으로 높은 우선 점수를 부여한다. 또한, 우선순위 변경수단(105)은 이 우선순위 점수를 변경한다. 예컨대, 사용자에 의해 출력 문자열이 결정되는 경우, 선택된 후보 리스트 레코드의 대표 문자열을 그에 대응하는 발음 표기로 변환하는데 사용된 매핑 정보 항목들에 대해서는 지정된 가산점을 더한 새로운 우선순위 점수를 부여할 수 있다. 이렇게 문자열 매칭 결과에 따라 적응적으로 우선순위 점수를 변경하여 매핑 정보의 우선순위 점수를 최적화할 수 있다.
한편, 입력 문자열이 포함된 멀티미디어 정보를 입력받고 멀티미디어 정보로부터 입력 문자열을 추출하는 입력 문자열 추출수단(도시되지 않음)이 포함될 수 있다. 또한, 대표 문자열 결정수단(103)은 멀티미디어 정보의 입력 문자열을 결정된 출력 문자열로 수정할 수 있다.
도 3은 본 발명에 따른 발음 기호를 이용한 문자열 매칭 방법의 메커니즘 흐름도이다.
먼저, 문자열을 입력 받는다(S301). MP3(MPEG Audio Layer-3) 파일의 아티스트명을 대상으로 하는 응용의 경우, 이 파일을 파싱함으로써 ID3 태그에 포함된 아티스트명을 추출하여 입력 문자열로 할 수 있다. 도 10은 MP3 파일 구조를 도시한 것이다. 이 파일은 오디오 데이터(1010)와 태그(1020)로 구성되며, 태그(1020) 정보에서 아티스트명(1021)을 파싱하여 추출할 수 있다.
문자열이 입력되면(S301), 문자열에 포함된 특수문자를 처리한다(S302). 특수문자의 처리는 소정의 특수문자를 제거하는 과정이 될 수 있으며, 제거되는 특수문자는 '-'와 ' ' 등이다. 그리고, 이전 결과 데이터베이스(140)를 검색하여(S303) 이전 결과가 존재하면, 즉 과거의 매칭 결과가 존재하면(S304), 그에 해당하는 대표 문자열을 출력 문자열로 결정하여 출력하고 종료한다(S305).
과거의 매칭 결과가 존재하지 않으면(S304), 입력 문자열이 씌여진 언어에 해당하는 발음 기호 매핑 테이블을 이용하여, 입력 문자열을 하나 이상의 발음 표기로 변환한 변환 리스트를 생성한다(S308).
다음으로, 변환 리스트의 발음 표기가 대표 리스트 데이터베이스(130)의 대표 리스트 정보에 존재하는지 검색하여 후보 리스트를 생성한다(S309). 후보 리스트는 변환 리스트의 발음 표기와 일치하는 대표 발음 표기와 그에 대응하는 대표 문자열이 포함된 레코드들의 리스트이다.
후보 리스트가 생성되면, 후보 리스트의 대표 문자열 중 하나를 대표 문자열로 결정하고 출력한다(S310). 대표 문자열의 출력은 멀티미디어 정보에 기록된 입력 문자열을 출력 문자열로 직접 수정함으로써 수행될 수도 있다. 예컨대, ID3 태그(1020)의 아티스트명(1021)을 대표 문자열로 직접 수정하도록 구현할 수 있다.
상기와 같이 입력 문자열에 매칭되는 대표 문자열로 결정된 출력 문자열을 입력 문자열과 함께 이전 결과 데이터베이스(140)에 저장한다(S311). 또한, 사용자가 후보 리스트를 모두 거부하거나, 대표 리스트 데이터베이스(130)에서 동일한 대표 발음 표기를 찾지 못해 후보 리스트가 비어 있는 등의 이유로, 입력 문자열이 대표 문자열로 결정되어 출력되는 경우, 즉 대표 리스트 데이터베이스(130)에 존재하지 않는 대표 문자열이 선택된 경우는 입력 문자열을 대표 문자열로 하여 대표 리스트 데이터베이스(130)에 저장한다(S311). 이때, 후보 리스트나 변환 리스트의 발음 표기 중 매칭 점수가 최고인 발음 표기를 대표 발음 표기로 하여 함께 저장할 수 있다.
사용자에 의해 출력 문자열이 선택된 경우는 이 출력 문자열의 발음 표기에 해당하는 매핑 정보 항목들에 대해서 우선순위 점수를 변경하여 다음 매칭에 적용되도록 할 수 있다(S312).
도 4는 발음 표기 생성단계의 매커니즘 흐름도이다. 먼저 입력 문자열을 분해한다(S308-1). 분해 방법은 언어에 따라 다를 수 있으며, 그 분해 방법에 따라 그 언어에 대한 발음 기호 매핑 테이블이 구성된다. 예를 들어, 입력 문자열이 한글인 경우, 각 글자를 분리함으로써 입력 문자열을 분해하고, 입력 문자열이 영어인 경우, 입력 문자열을 하나 이상의 음절로 나눈다. 영어의 음절을 나누는 방법 중 하나는, 문자열에 포함된 하나 이상의 연속된 자음과 하나 이상의 연속된 모음을 별도의 음절로 구분하고, 문자열의 끝에 포함된 단독 자음은 상기 단독 자음 앞의 모음이 속하는 음절에 포함시키는 것이다.
해당 언어의 발음 기호 매핑 테이블을 참조하여, 분해된 입력 문자열의 각 요소에 하나 이상의 발음 기호를 할당하여 입력 문자열에 대한 하나 이상의 발음 표기로 변환한다(S802-2). 입력 문자열이 '가솔'이라면, 이는 '가'와 '솔'로 분해되며, 도 7a에 예시된 한글 매핑 테이블에 저장된 '가'에 대한 발음 기호 'ga' 및 'ga:'와 '솔'에 대한 발음 기호 'sol' 및 'soul'을 조합하여, 'gasol', 'gasoul', 'ga:sol', 'ga:soul'과 같이 4개의 발음 표기가 생성된다. 효율적인 검색을 위해, 생성된 발음 표기 중 정해진 개수(n)만 포함된 변환 리스트를 생성할 필요가 있을 수 있다. 이러한 경우 발음 기호 매핑 테이블의 매핑 정보에 항목별 우선순위 점수를 부여하고, 이 우선순위 점수를 이용하여, 생성된 발음 표기들에 대한 매칭 점수를 계산하고(S308-3), 매칭 점수가 높은 상위 n개의 발음 표기만을 변환 리스트에 포함한다(S308-4). 우선순위 점수는 매핑 테이블의 각 열에 부여되거나, 매핑 테이블의 각 매핑 정보 항목마다 부여될 수 있다. 예컨대, 도 7a의 한글 매핑 테이블에서 '발음 기호 1' 열에 10점, '발음 기호 2' 열에 7점, '발음 기호 3' 열에 4점을 부여하였다면, '가솔'에 대해 다음과 같이 매칭 점수가 계산될 수 있다(S308-3).
'gasol' = 20점('ga'의 10점 + 'sol'의 10점)
'gasoul' = 17점('ga'의 10점 + 'soul'의 7점)
'ga:sol' = 17점('ga:'의 7점 + 'sol'의 10점)
'ga:soul' = 14점('ga:'의 7점 + 'soul'의 7점)
n이 3인 경우라면, 'gasol', 'gasoul', 'ga:sol' 만이 변환 리스트에 포함될 것이다(S308-4). 한편, 실시예에 따라서는 매칭 점수가 지정된 점수 이상인 발음 표기만 변환 리스트에 포함시킬 수도 있다.
도 5는 대표 문자열 결정단계에서 사용자가 대표 문자열을 결정하는 경우의 매커니즘 흐름도이다. 먼저, 전 단계(S309)에서 생성된 후보 리스트가 입력된다 (S310-0). 예컨대 '루라'라는 한글 입력 문자열에 대해 'rula', 'ru:la', 'lula'라는 발음 표기들을 포함한 변환 리스트가 생성되고, 매칭 점수가 각각 20점, 17점, 14점인 경우, 대표 리스트 데이터베이스(130)의 검색을 통해 (룰라, rula), (루우라, ru:la)라는 후보 리스트가 생성되어 입력될 수 있다. 사용자가 후보 리스트의 레코드 중 하나를 선택하면(S310-1), 선택된 레코드의 문자열이 출력 문자열로 결정된다(310-2). 상기 예에서, 사용자가 (룰라, rula)를 선택하였다면, 입력 문자열과 출력 문자열로 된 레코드인 (루라, 룰라)가 이전 결과 데이터베이스(130)에 저장되고, 다음 매칭에서 '루라'가 입력되면 이 정보가 참조된다.
사용자가 후보 리스트 전부를 거부하고 입력 문자열을 그대로 사용하기를 원하는 경우는(S310-1) 입력 문자열 '루라'가 출력 문자열로 결정되며(S310-3), 입력 문자열을 대표 리스트 데이터베이스(130)의 대표 문자열로 저장하며, 이때 후보 리스트 중 매칭 점수가 가장 높은 발음 표기인 'rula'가 대표 발음 표기로써 함께 저장되는 것이 바람직하다(S311-1). 또한, 이 경우도 매칭 결과인 입력 문자열 '루라'와 출력 문자열 '루라'는 이전 결과 데이터베이스(140)에 저장되어 다음 문자열 매칭시 우선적으로 참조 된다(S311-2). 이처럼 사용자에 의해 출력 문자열이 선택된 경우는 출력 문자열에 대응하는 매핑 정보 항목들의 우선순위 점수를 변경한다(S312). 즉, 소정의 가산점을 더하여 사용자의 의사가 매핑 정보에 반영되도록 하는 것이다.
도 6은 대표 문자열 결정단계에서 매칭 점수를 이용하여 대표 문자열을 결정하는 경우의 매커니즘 흐름도이다. 사용자의 선택 입력이 번거롭거나 불필요한 서 비스인 경우는, 입력되는 후보 리스트(S310-0)에 포함된 대표 발음 표기 중 매칭 점수가 최고인 발음 표기에 대응하는 대표 문자열이 출력 문자열로 선택될 수 있다(S310-10). 이때, 후보 리스트에 포함된 대표 발음 표기 중 지정된 기준 점수 이상인 발음 표기가 없는 경우는(S310-11), 입력 문자열을 대표 문자열로 결정하여 출력하고(S310-3) 대표 리스트 데이터베이스(130)에 저장하도록 하여(S311-1), 매칭 결과에 대한 신뢰도를 향상시킬 수 있다. 한편, 최고 점수를 가진 발음 표기에 대한 문자열에 대해 사용자의 허락을 받아(S310-12) 사용자가 컨펌한 경우만 출력 문자열로 결정할 수도 있다(S310-13). 마찬가지로 매칭 결과인 입력 문자열과 출력 문자열을 이전 결과 데이터베이스(140)에 저장한다(S311-2).
본 발명은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다.
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
이상에서 설명한 바와 같은 본 발명의 구성에 의하면, 다른 표기로 기록된 동일 의미의 문자열에 대한 대표 문자열을 찾을 수 있으므로, 문자열에 의해 분류를 제공하는 서비스에 유용하다. 예컨대, 도 9의 대표리스트 데이터베이스에 따라, '비 참', 'Bee Cham', '비참', 'Bicham' 등으로 다양하게 표기된 문자열들이 하나의 대표 이름인 '비참'(910)으로 매칭될 수 있다. 또한, 발음 기호를 사용하므로 입력 언어에 상관없이 적용될 수 있으며 정확도를 더욱 향상시킬 수 있다. 또한, 매핑 정보의 우선순위 점수를 적응적으로 변경함으로써 매칭이 수행될수록 더욱 최적화된 결과를 얻을 수 있다.
Claims (30)
- 발음 기호를 이용한 문자열 매칭 시스템에서 입력 문자열에 매칭되는 대표 문자열을 출력하는 문자열 매칭 방법에 있어서,발음 표기 생성수단이, 상기 입력 문자열이 씌여진 언어와 발음 기호 간의 매핑 정보가 저장된 발음 기호 매핑 테이블을 참조하여, 상기 입력 문자열을 하나 이상의 발음 표기로 변환한 변환 리스트를 생성하는 발음 표기 생성단계와,대표 리스트 검색수단이, 대표 문자열과 그에 대응하는 대표 발음 표기가 저장된 대표 리스트 데이터베이스에서, 상기 변환 리스트에 포함된 상기 하나 이상의 발음 표기와 동일한 대표 발음 표기를 가진 레코드를 찾아 후보 리스트를 생성하는 대표 리스트 검색단계와,대표 문자열 결정수단이, 상기 후보 리스트의 레코드 중 하나에 포함된 대표 문자열을 출력 문자열로 결정하는 대표 문자열 결정단계를 포함하는 것을 특징으로 하는 발음 기호를 이용한 문자열 매칭 방법.
- 제1항에 있어서,이전 결과 검색수단이, 문자열과 그에 대응하는 대표 문자열이 포함된 매칭 결과가 저장되는 이전 결과 데이터베이스를 검색하여 상기 입력 문자열과 동일한 문자열이 존재하면, 그에 대응하는 대표 문자열을 출력 문자열로 결정하는 이전 결과 검색단계와,결과 저장수단이, 상기 입력 문자열과 상기 대표 문자열 결정단계에서 결정된 상기 출력 문자열로 구성된 레코드가 상기 이전 결과 데이터베이스에 존재하지 않는 경우, 상기 이전 결과 데이터베이스에 저장하는 결과 저장단계를 더 포함하는 것을 특징으로 하는 발음 기호를 이용한 문자열 매칭 방법.
- 제2항에 있어서,상기 발음 표기 생성단계는,상기 발음 표기 생성수단이, 상기 변환 전에 상기 입력 문자열에 포함된 유효하지 않은 소정의 특수문자를 제거하는 특수문자 처리단계를 더 포함하는 것을 특징으로 하는 발음 기호를 이용한 문자열 매칭 방법.
- 제3항에 있어서,상기 특수문자는 '-'과 ' '을 포함하는 것을 특징으로 하는 발음 기호를 이용한 문자열 매칭 방법.
- 제2항에 있어서,상기 입력 문자열이 씌여진 언어가 한글인 경우에는,상기 발음 기호 매핑 테이블은, 한글의 모든 글자를 하나 이상의 발음 기호로 매핑하는 정보를 포함하는 것을 특징으로 하는 발음 기호를 이용한 문자열 매칭 방법.
- 제2항에 있어서,상기 입력 문자열이 씌여진 언어가 영어인 경우에는,상기 발음 기호 매핑 테이블은, 영어의 모든 음절을 하나 이상의 발음 기호로 매핑하는 정보를 포함하고,상기 발음 표기 생성단계는,상기 발음 표기 생성수단이, 상기 입력 문자열을 하나 이상의 음절로 나누는 단계와,상기 발음 표기 생성수단이, 상기 하나 이상의 음절을 상기 하나 이상의 발음 기호와 매핑하여 상기 입력 문자열을 상기 하나 이상의 발음 표기로 변환하는 단계를 더 포함하는 것을 특징으로 하는 발음 기호를 이용한 문자열 매칭 방법.
- 제6항에 있어서,상기 입력 문자열을 하나 이상의 음절로 나누는 단계는,상기 발음 표기 생성수단이, 상기 입력 문자열에 포함된 하나 이상의 연속된 자음과 하나 이상의 연속된 모음을 별도의 음절로 구분하고, 상기 입력 문자열의 끝에 포함된 단독 자음은 상기 단독 자음 앞의 모음이 속하는 음절에 포함시키는 단계를 포함하는 것을 특징으로 하는 발음 기호를 이용한 문자열 매칭 방법.
- 제2항에 있어서,상기 발음 표기 생성단계는,상기 발음 표기 생성수단이, 상기 매핑 정보에 부여된 항목별 우선순위 점수를 이용하여 상기 변환된 하나 이상의 발음 표기에 대한 매칭 점수를 계산하여 부여하는 단계와,상기 발음 표기 생성수단이, 상기 매칭 점수를 참조하여, 상기 변환된 하나 이상의 발음 표기 중에서 상기 변환 리스트에 포함될 발음 표기를 결정하는 단계를 더 포함하는 것을 특징으로 하는 발음 기호를 이용한 문자열 매칭 방법.
- 제8항에 있어서,상기 변환 리스트에 포함될 발음 표기를 결정하는 단계는,상기 발음 표기 생성수단이, 상기 변환된 하나 이상의 발음 표기 중에서, 지정된 개수의 발음 표기만을 상기 변환 리스트에 포함시키는 단계를 포함하는 것을 특징으로 하는 발음 기호를 이용한 문자열 매칭 방법.
- 제8항에 있어서,상기 변환 리스트에 포함될 발음 표기를 결정하는 단계는,상기 발음 표기 생성수단이, 상기 변환된 하나 이상의 발음 표기 중에서, 상기 매칭 점수가 지정된 점수 이상인 발음 표기만을 상기 변환 리스트에 포함시키는 단계를 포함하는 것을 특징으로 하는 발음 기호를 이용한 문자열 매칭 방법.
- 제2항에 있어서,상기 대표 문자열 결정단계는,상기 대표 문자열 결정수단이, 상기 후보 리스트에서 사용자가 선택한 레코드의 대표 문자열을 출력 문자열로 결정하는 단계를 포함하는 것을 특징으로 하는 발음 기호를 이용한 문자열 매칭 방법.
- 제2항에 있어서,상기 대표 문자열 결정단계는,상기 대표 문자열 결정수단이, 사용자가 상기 후보 리스트의 레코드 중 어느 것도 선택하지 않은 경우, 상기 입력 문자열을 상기 출력 문자열로 결정하는 단계를 더 포함하고,상기 결과 저장단계는,상기 결과 저장수단이, 상기 입력 문자열을 상기 출력 문자열로 결정하는 경우, 상기 입력 문자열과 상기 후보 리스트에 포함된 발음 표기 중 최고 매칭 점수를 가진 발음 표기를 상기 대표 리스트 데이터베이스에 저장하는 단계를 더 포함하는 것을 특징으로 하는 발음 기호를 이용한 문자열 매칭 방법.
- 제11항에 있어서,우선순위 변경수단이, 상기 사용자에 의해 선택된 상기 후보 리스트 레코드의 대표 문자열을 그에 대응하는 발음 표기로 변환하는데 사용된 매핑 정보 항목들에 대해서는 지정된 가산점을 부여한 새로운 우선순위 점수를 부여하는 우선순위 변경단계를 더 포함하는 것을 특징으로 하는 발음 기호를 이용한 문자열 매칭 방법.
- 제8항에 있어서,상기 대표 문자열 결정단계는,상기 대표 문자열 결정수단이, 상기 매칭 점수를 참조하여 상기 출력 문자열을 결정하는 단계를 더 포함하는 것을 특징으로 하는 발음 기호를 이용한 문자열 매칭 방법.
- 제14항에 있어서,상기 매칭 점수를 참조하여 출력 문자열을 결정하는 단계는,상기 대표 문자열 결정수단이, 상기 후보 리스트에 포함된 대표 발음 표기 중 상기 매칭 점수가 최고인 발음 표기에 대응하는 대표 문자열을 출력 문자열로 결정하는 단계를 포함하는 것을 특징으로 하는 발음 기호를 이용한 문자열 매칭 방법.
- 제14항에 있어서,상기 매칭 점수를 참조하여 출력 문자열을 결정하는 단계는,상기 대표 문자열 결정수단이, 상기 후보 리스트에 포함된 발음 표기 중 지정된 기준 점수 이상인 발음 표기가 없는 경우 상기 입력 문자열을 상기 출력 문자열로 결정하는 단계를 더 포함하고,상기 결과 저장단계는,상기 결과 저장수단이, 상기 입력 문자열을 상기 출력 문자열로 결정하는 경우, 상기 입력 문자열과 상기 후보 리스트에 포함된 발음 표기 중 최고 매칭 점수를 가진 발음 표기를 상기 대표 리스트 데이터베이스에 저장하는 단계를 더 포함하는 것을 특징으로 하는 발음 기호를 이용한 문자열 매칭 방법.
- 제8항에 있어서,입력 문자열 추출수단이, 상기 입력 문자열이 포함된 멀티미디어 정보를 입력받고, 상기 멀티미디어 정보로부터 상기 입력 문자열을 추출하는 입력 문자열 추출단계를 더 포함하는 것을 특징으로 하는 발음 기호를 이용한 문자열 매칭 방법.
- 제17항에 있어서,상기 멀티미디어 정보는 MP3 파일이고,상기 입력 문자열 추출단계는,상기 입력 문자열 추출수단이, 상기 MP3 파일을 파싱하여 ID3 태그에 포함된 아티스트명을 상기 입력 문자열로 추출하는 단계를 포함하는 것을 특징으로 하는 발음 기호를 이용한 문자열 매칭 방법.
- 제18항에 있어서,상기 대표 문자열 결정단계는,상기 대표 문자열 결정수단이, 상기 멀티미디어 정보에 포함된 상기 입력 문자열을 상기 결정된 출력 문자열로 수정하는 단계를 더 포함하는 것을 특징으로 하는 발음 기호를 이용한 문자열 매칭 방법.
- 제1항 내지 제19항 중 어느 한 항의 방법을 수행하는 프로그램을 기록한 컴퓨터 판독 가능한 기록매체.
- 입력 문자열에 매칭되는 대표 문자열을 출력하는 문자열 매칭 시스템에 있어서,대표 문자열과 그에 대응하는 대표 발음 표기가 저장되는 대표 리스트 데이터베이스와,언어별 발음 기호 매핑 정보가 저장되는 하나 이상의 발음 기호 매핑 테이블과,상기 하나 이상의 발음 기호 매핑 테이블을 참조하여, 상기 입력 문자열을 하나 이상의 발음 표기로 변환한 변환 리스트를 생성하는 발음 표기 생성수단과,상기 대표 리스트 데이터베이스를 검색하여 상기 변환 리스트에 포함된 상기 하나 이상의 발음 표기와 동일한 대표 발음 표기를 가진 레코드로 구성된 후보 리스트를 생성하는 대표 리스트 검색수단과,상기 후보 리스트의 레코드 중 하나에 포함된 대표 문자열을 출력 문자열로 결정하는 대표 문자열 결정수단을 포함하는 것을 특징으로 하는 발음 기호를 이용한 문자열 매칭 시스템.
- 제21항에 있어서,문자열과 그에 대응하는 대표 문자열이 포함된 문자열 매칭 결과가 저장되는 이전 결과 데이터베이스와,상기 이전 결과 데이터베이스를 검색하여 상기 입력 문자열과 동일한 문자열이 존재하면, 그에 대응하는 대표 문자열을 출력 문자열로 결정하는 이전 결과 검색수단과,상기 입력 문자열과 상기 대표 문자열 결정수단에 의해 결정된 출력 문자열이 상기 이전 결과 데이터베이스에 존재하지 않는 경우, 상기 이전 결과 데이터베이스에 저장하는 결과 저장수단을 더 포함하는 것을 특징으로 하는 발음 기호를 이용한 문자열 매칭 시스템.
- 제22항에 있어서,상기 하나 이상의 발음 기호 매핑 테이블은, 한글의 모든 글자를 하나 이상의 발음 기호로 매핑하는 정보를 포함하는 한글 매핑 테이블을 포함하는 것을 특징으로 하는 발음 기호를 이용한 문자열 매칭 시스템.
- 제22항에 있어서,상기 하나 이상의 발음 기호 매핑 테이블은, 영어의 모든 음절을 하나 이상의 발음 기호로 매핑하는 정보를 포함하는 영어 매핑 테이블을 포함하고,상기 발음 표기 생성수단은, 상기 입력 문자열에 포함된 하나 이상의 연속된 자음과 하나 이상의 연속된 모음을 별도의 음절로 구분하고, 상기 입력 문자열의 끝에 포함된 단독 자음은 상기 단독 자음 앞의 모음이 속하는 음절에 포함시킴으로써 상기 입력 문자열을 하나 이상의 음절로 나누고, 상기 하나 이상의 음절을 상기 하나 이상의 발음 기호와 매핑함으로써 상기 입력 문자열을 상기 하나 이상의 발음 표기로 변환하는 것을 특징으로 하는 발음 기호를 이용한 문자열 매칭 시스템.
- 제22항에 있어서,상기 언어별 발음 기호 매핑 정보에는 항목별 우선순위 점수가 부여되어 있고,상기 발음 표기 생성수단은,상기 우선순위 점수를 이용하여 상기 변환된 하나 이상의 발음 표기에 대한 매칭 점수를 계산하여 부여하고, 상기 매칭 점수를 참조하여 상기 변환된 하나 이상의 발음 표기 중에서 상기 변환 리스트에 포함될 발음 표기를 결정하는 것을 특징으로 하는 발음 기호를 이용한 문자열 매칭 시스템.
- 제22항에 있어서,상기 대표 문자열 결정수단은,상기 후보 리스트에서 사용자가 선택한 레코드의 대표 문자열을 출력 문자열로 결정하고, 상기 사용자가 상기 후보 리스트의 레코드 중 어느 것도 선택하지 않은 경우 상기 입력 문자열을 상기 출력 문자열로 결정하고,상기 결과 저장수단은,상기 입력 문자열을 상기 출력 문자열로 결정하는 경우, 상기 입력 문자열과 상기 후보 리스트에 포함된 발음 표기 중 최고 매칭 점수를 가진 발음 표기를 상기 대표 리스트 데이터베이스에 저장하는 것을 특징으로 하는 발음 기호를 이용한 문자열 매칭 시스템.
- 제26항에 있어서,상기 사용자의 선택에 의해 상기 출력 문자열이 결정되는 경우, 상기 선택된 후보 리스트 레코드의 대표 문자열을 그에 대응하는 발음 표기로 변환하는데 사용된 매핑 정보 항목들에 대해서는 지정된 가산점을 부여한 새로운 우선순위 점수를 부여하는 우선순위 변경수단을 더 포함하는 것을 특징으로 하는 발음 기호를 이용한 문자열 매칭 시스템.
- 제25항에 있어서,상기 대표 문자열 결정수단은,상기 부여된 매칭 점수를 참조하여 상기 출력 문자열을 결정하는 것을 특징으로 하는 발음 기호를 이용한 문자열 매칭 시스템.
- 제28항에 있어서,상기 입력 문자열이 포함된 멀티미디어 정보를 입력받고, 상기 멀티미디어 정보로부터 상기 입력 문자열을 추출하는 입력 문자열 추출수단을 더 포함하는 것을 특징으로 하는 발음 기호를 이용한 문자열 매칭 시스템.
- 제29항에 있어서,상기 대표 문자열 결정수단은,상기 멀티미디어 정보의 입력 문자열을 상기 결정된 출력 문자열로 수정하는 것을 특징으로 하는 발음 기호를 이용한 문자열 매칭 시스템.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060000161A KR101265263B1 (ko) | 2006-01-02 | 2006-01-02 | 발음 기호를 이용한 문자열 매칭 방법 및 시스템과 그방법을 기록한 컴퓨터 판독 가능한 기록매체 |
US11/636,634 US8117026B2 (en) | 2006-01-02 | 2006-12-11 | String matching method and system using phonetic symbols and computer-readable recording medium storing computer program for executing the string matching method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060000161A KR101265263B1 (ko) | 2006-01-02 | 2006-01-02 | 발음 기호를 이용한 문자열 매칭 방법 및 시스템과 그방법을 기록한 컴퓨터 판독 가능한 기록매체 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20070072723A KR20070072723A (ko) | 2007-07-05 |
KR101265263B1 true KR101265263B1 (ko) | 2013-05-16 |
Family
ID=38225646
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060000161A KR101265263B1 (ko) | 2006-01-02 | 2006-01-02 | 발음 기호를 이용한 문자열 매칭 방법 및 시스템과 그방법을 기록한 컴퓨터 판독 가능한 기록매체 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8117026B2 (ko) |
KR (1) | KR101265263B1 (ko) |
Families Citing this family (63)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9318108B2 (en) | 2010-01-18 | 2016-04-19 | Apple Inc. | Intelligent automated assistant |
CN101206659B (zh) * | 2006-12-15 | 2013-09-18 | 谷歌股份有限公司 | 自动搜索查询校正 |
US8977255B2 (en) | 2007-04-03 | 2015-03-10 | Apple Inc. | Method and system for operating a multi-function portable electronic device using voice-activation |
WO2009029865A1 (en) | 2007-08-31 | 2009-03-05 | Google Inc. | Automatic correction of user input |
US8103506B1 (en) * | 2007-09-20 | 2012-01-24 | United Services Automobile Association | Free text matching system and method |
US8676904B2 (en) | 2008-10-02 | 2014-03-18 | Apple Inc. | Electronic devices with voice command and contextual data processing capabilities |
US20120309363A1 (en) | 2011-06-03 | 2012-12-06 | Apple Inc. | Triggering notifications associated with tasks items that represent tasks to perform |
US9208259B2 (en) * | 2009-12-02 | 2015-12-08 | International Business Machines Corporation | Using symbols to search local and remote data stores |
US8433557B2 (en) * | 2010-05-07 | 2013-04-30 | Technology Development Center, King Abdulaziz City For Science And Technology | System and method of transliterating names between different languages |
US20130054227A1 (en) * | 2011-08-28 | 2013-02-28 | George Mizhen Wang | Phonetic Symbol System |
US10417037B2 (en) | 2012-05-15 | 2019-09-17 | Apple Inc. | Systems and methods for integrating third party services with a digital assistant |
EP3809407A1 (en) | 2013-02-07 | 2021-04-21 | Apple Inc. | Voice trigger for a digital assistant |
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 |
US10176167B2 (en) | 2013-06-09 | 2019-01-08 | Apple Inc. | System and method for inferring user intent from speech inputs |
IL227135B (en) * | 2013-06-23 | 2018-05-31 | Drori Gideon | Method and system for preparing a database of consolidated items |
US9966065B2 (en) | 2014-05-30 | 2018-05-08 | Apple Inc. | Multi-command single utterance input method |
US10170123B2 (en) | 2014-05-30 | 2019-01-01 | Apple Inc. | Intelligent assistant for home automation |
US9715875B2 (en) | 2014-05-30 | 2017-07-25 | Apple Inc. | Reducing the need for manual start/end-pointing and trigger phrases |
US10339465B2 (en) * | 2014-06-30 | 2019-07-02 | Amazon Technologies, Inc. | Optimized decision tree based models |
US9338493B2 (en) | 2014-06-30 | 2016-05-10 | Apple Inc. | Intelligent automated assistant for TV user interactions |
US9886953B2 (en) | 2015-03-08 | 2018-02-06 | Apple Inc. | Virtual assistant activation |
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 |
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 |
US10747498B2 (en) | 2015-09-08 | 2020-08-18 | Apple Inc. | Zero latency digital 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 |
US10387543B2 (en) * | 2015-10-15 | 2019-08-20 | Vkidz, Inc. | Phoneme-to-grapheme mapping 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 |
US10223066B2 (en) | 2015-12-23 | 2019-03-05 | Apple Inc. | Proactive assistance based on dialog communication between devices |
CN106126521B (zh) | 2016-06-06 | 2018-06-19 | 腾讯科技(深圳)有限公司 | 目标对象的社交账号挖掘方法及服务器 |
US10586535B2 (en) | 2016-06-10 | 2020-03-10 | Apple Inc. | Intelligent digital assistant in a multi-tasking environment |
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 |
DK180048B1 (en) | 2017-05-11 | 2020-02-04 | Apple Inc. | MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION |
US10726832B2 (en) | 2017-05-11 | 2020-07-28 | Apple Inc. | Maintaining privacy of personal information |
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 |
DK201770429A1 (en) | 2017-05-12 | 2018-12-14 | Apple Inc. | LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT |
US10303715B2 (en) | 2017-05-16 | 2019-05-28 | Apple Inc. | Intelligent automated assistant for media exploration |
US20180336892A1 (en) | 2017-05-16 | 2018-11-22 | Apple Inc. | Detecting a trigger of a digital assistant |
US10789410B1 (en) * | 2017-06-26 | 2020-09-29 | Amazon Technologies, Inc. | Identification of source languages for terms |
US10818288B2 (en) | 2018-03-26 | 2020-10-27 | Apple Inc. | Natural assistant interaction |
US11145294B2 (en) | 2018-05-07 | 2021-10-12 | Apple Inc. | Intelligent automated assistant for delivering content from user experiences |
US10928918B2 (en) | 2018-05-07 | 2021-02-23 | Apple Inc. | Raise to speak |
US10892996B2 (en) | 2018-06-01 | 2021-01-12 | Apple Inc. | Variable latency device coordination |
DK180639B1 (en) | 2018-06-01 | 2021-11-04 | Apple Inc | DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT |
DK179822B1 (da) | 2018-06-01 | 2019-07-12 | Apple Inc. | Voice interaction at a primary device to access call functionality of a companion device |
US11462215B2 (en) | 2018-09-28 | 2022-10-04 | Apple Inc. | Multi-modal inputs for voice commands |
CN109658938B (zh) * | 2018-12-07 | 2020-03-17 | 百度在线网络技术(北京)有限公司 | 语音与文本匹配的方法、装置、设备及计算机可读介质 |
US11348573B2 (en) | 2019-03-18 | 2022-05-31 | Apple Inc. | Multimodality in digital assistant systems |
US11307752B2 (en) | 2019-05-06 | 2022-04-19 | Apple Inc. | User configurable task triggers |
DK201970509A1 (en) | 2019-05-06 | 2021-01-15 | Apple Inc | Spoken notifications |
US11140099B2 (en) | 2019-05-21 | 2021-10-05 | Apple Inc. | Providing message response suggestions |
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 |
US11468890B2 (en) | 2019-06-01 | 2022-10-11 | Apple Inc. | Methods and user interfaces for voice-based control of electronic devices |
US11061543B1 (en) | 2020-05-11 | 2021-07-13 | Apple Inc. | Providing relevant data items based on context |
US11038934B1 (en) | 2020-05-11 | 2021-06-15 | Apple Inc. | Digital assistant hardware abstraction |
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 |
Family Cites Families (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5956739A (en) * | 1996-06-25 | 1999-09-21 | Mitsubishi Electric Information Technology Center America, Inc. | System for text correction adaptive to the text being corrected |
US6292768B1 (en) | 1996-12-10 | 2001-09-18 | Kun Chun Chan | Method for converting non-phonetic characters into surrogate words for inputting into a computer |
CA2357007C (en) * | 1998-05-21 | 2002-04-02 | Equifax Inc. | System and method for authentication of network users with preprocessing |
US6144958A (en) | 1998-07-15 | 2000-11-07 | Amazon.Com, Inc. | System and method for correcting spelling errors in search queries |
KR20000060727A (ko) | 1999-03-18 | 2000-10-16 | 오민희 | 다중 검색어를 갖는 전자사전 및 그 제어방법 |
KR100326936B1 (ko) | 1999-08-02 | 2002-03-13 | 이계철 | 외국어로 표기된 한글을 한글표기로 변환하여 검색하는 시스템및 그 방법 |
JP3500097B2 (ja) | 1999-08-26 | 2004-02-23 | 日本電信電話株式会社 | 複合メディア検索方法および複合メディア検索用プログラム記録媒体 |
US6848080B1 (en) * | 1999-11-05 | 2005-01-25 | Microsoft Corporation | Language input architecture for converting one text form to another text form with tolerance to spelling, typographical, and conversion errors |
US7177795B1 (en) * | 1999-11-10 | 2007-02-13 | International Business Machines Corporation | Methods and apparatus for semantic unit based automatic indexing and searching in data archive systems |
KR100373812B1 (ko) | 2000-05-30 | 2003-02-26 | 한상학 | 음성 자막 재생 시스템 및 방법과 자막 표시 기능을 갖는휴대용 디지털 오디오 재생기 |
US6990449B2 (en) * | 2000-10-19 | 2006-01-24 | Qwest Communications International Inc. | Method of training a digital voice library to associate syllable speech items with literal text syllables |
US7451087B2 (en) * | 2000-10-19 | 2008-11-11 | Qwest Communications International Inc. | System and method for converting text-to-voice |
US6950792B1 (en) | 2000-10-25 | 2005-09-27 | Cisco Technology, Inc. | Arrangement for providing international prompts in a unified messaging system |
EP1221692A1 (en) | 2001-01-09 | 2002-07-10 | Robert Bosch Gmbh | Method for upgrading a data stream of multimedia data |
US20020156816A1 (en) * | 2001-02-13 | 2002-10-24 | Mark Kantrowitz | Method and apparatus for learning from user self-corrections, revisions and modifications |
US7107215B2 (en) | 2001-04-16 | 2006-09-12 | Sakhr Software Company | Determining a compact model to transcribe the arabic language acoustically in a well defined basic phonetic study |
EP1808788B1 (en) | 2001-04-25 | 2010-08-25 | Sony France S.A. | Information type identification method and apparatus, e.g. for music file name content identification |
US6990451B2 (en) * | 2001-06-01 | 2006-01-24 | Qwest Communications International Inc. | Method and apparatus for recording prosody for fully concatenated speech |
US6810374B2 (en) | 2001-07-23 | 2004-10-26 | Pilwon Kang | Korean romanization system |
BR0212419A (pt) | 2001-09-10 | 2004-08-03 | Thomson Licensing Sa | Método e aparelho para criar uma lista de execução indexada em um executor de dados de áudio digital |
FR2835642B1 (fr) | 2002-02-07 | 2006-09-08 | Francois Teytaud | Procede et dispositif pour faire comprendre une langue |
US6864809B2 (en) | 2002-02-28 | 2005-03-08 | Zi Technology Corporation Ltd | Korean language predictive mechanism for text entry by a user |
US7089188B2 (en) * | 2002-03-27 | 2006-08-08 | Hewlett-Packard Development Company, L.P. | Method to expand inputs for word or document searching |
KR20030094943A (ko) | 2002-06-10 | 2003-12-18 | 푸른정보기술(주) | 인터넷 라디오 방송정보를 수집하여 곡별 순위를 집계하는시스템 및 서비스 방법 |
US20060190249A1 (en) * | 2002-06-26 | 2006-08-24 | Jonathan Kahn | Method for comparing a transcribed text file with a previously created file |
KR100467590B1 (ko) * | 2002-06-28 | 2005-01-24 | 삼성전자주식회사 | 발음 사전 갱신 장치 및 방법 |
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 |
US7292971B2 (en) | 2003-10-27 | 2007-11-06 | Kuojui Su | Language phonetic system and method thereof |
JP2005174212A (ja) | 2003-12-15 | 2005-06-30 | Sony Corp | 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム |
US20050216253A1 (en) | 2004-03-25 | 2005-09-29 | Microsoft Corporation | System and method for reverse transliteration using statistical alignment |
US7797629B2 (en) * | 2006-04-05 | 2010-09-14 | Research In Motion Limited | Handheld electronic device and method for performing optimized spell checking during text entry by providing a sequentially ordered series of spell-check algorithms |
US7542973B2 (en) * | 2006-05-01 | 2009-06-02 | Sap, Aktiengesellschaft | System and method for performing configurable matching of similar data in a data repository |
-
2006
- 2006-01-02 KR KR1020060000161A patent/KR101265263B1/ko not_active IP Right Cessation
- 2006-12-11 US US11/636,634 patent/US8117026B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US8117026B2 (en) | 2012-02-14 |
US20070156404A1 (en) | 2007-07-05 |
KR20070072723A (ko) | 2007-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101265263B1 (ko) | 발음 기호를 이용한 문자열 매칭 방법 및 시스템과 그방법을 기록한 컴퓨터 판독 가능한 기록매체 | |
KR100739726B1 (ko) | 문자열 매칭 방법 및 시스템과 그 방법을 기록한 컴퓨터판독 가능한 기록매체 | |
JP4218758B2 (ja) | 字幕生成装置、字幕生成方法、及びプログラム | |
KR20080031166A (ko) | 정보 처리 장치, 정보 처리 방법 및 정보 처리 프로그램 | |
US7684975B2 (en) | Morphological analyzer, natural language processor, morphological analysis method and program | |
JP2009205357A (ja) | 中国語の品詞を判定する装置、方法およびプログラム | |
US20140358522A1 (en) | Information search apparatus and information search method | |
KR100288144B1 (ko) | 한글로 표기된 외래어 코드화 방법 및 그를 이용한 검색 방법 | |
JP2010198425A (ja) | 文書管理方法、装置 | |
JP7102710B2 (ja) | 情報生成プログラム、単語抽出プログラム、情報処理装置、情報生成方法及び単語抽出方法 | |
JP2013069170A (ja) | 検索装置、検索方法およびプログラム | |
US10614065B2 (en) | Controlling search execution time for voice input facility searching | |
JP6619932B2 (ja) | 形態素解析装置およびプログラム | |
KR20120046850A (ko) | 한글에 대한 유사도 계산 방법 | |
JP2006031385A (ja) | 音声入力による検索システムと方法並びにプログラム | |
JP4307287B2 (ja) | メタデータ抽出装置 | |
JP4248828B2 (ja) | 文書処理装置、文書処理方法及び記録媒体 | |
JP2006126883A (ja) | 情報検索装置及び情報検索方法 | |
JP2009129373A (ja) | 同姓同名文書分別装置及びプログラム | |
JP7200474B2 (ja) | 変換補助装置、変換補助システム、変換補助方法及びコンピュータプログラム | |
JP2008083410A (ja) | 音声認識装置及びその方法 | |
JPH1049187A (ja) | 音声情報検索装置 | |
JP4061283B2 (ja) | 字句をデータに変換する装置、方法及びプログラム | |
JP6577925B2 (ja) | 施設検索装置、施設検索方法、コンピュータプログラム及びコンピュータプログラムを記録した記録媒体 | |
JP6567372B2 (ja) | 編集支援装置、編集支援方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
LAPS | Lapse due to unpaid annual fee |