KR20210047192A - Apparatus and method for searching text based on phoneme - Google Patents
Apparatus and method for searching text based on phoneme Download PDFInfo
- Publication number
- KR20210047192A KR20210047192A KR1020190130954A KR20190130954A KR20210047192A KR 20210047192 A KR20210047192 A KR 20210047192A KR 1020190130954 A KR1020190130954 A KR 1020190130954A KR 20190130954 A KR20190130954 A KR 20190130954A KR 20210047192 A KR20210047192 A KR 20210047192A
- Authority
- KR
- South Korea
- Prior art keywords
- search
- phoneme
- phonemes
- expression
- word
- Prior art date
Links
Images
Classifications
-
- 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/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/268—Morphological analysis
Abstract
Description
본 문서에서 개시되는 실시 예들은 음소 단위로 문서에서 특정 부분을 검색하는 장치 및 방법과 관련된다.Embodiments disclosed in this document relate to an apparatus and method for searching for a specific part of a document in units of phonemes.
전자 문서와 관련하여 사용자는 특정 문서에서 사용자가 요구하는 문자를 포함하는 부분을 검색할 수 있고, 사용자가 요구하는 문자를 포함하는 문서를 검색할 수도 있다. 사용자는 찾고자 하는 검색어를 컴퓨팅 디바이스에 입력할 수 있고, 컴퓨팅 디바이스는 입력된 검색어와 매칭되는 부분을 출력할 수 있다. 예를 들어, 컴퓨팅 디바이스는 사용자가 검색어 “한글”을 입력한 경우, 전자 문서에서 “한글”을 포함하는 부분을 검색하고, 검색된 부분을 출력할 수 있다.Regarding the electronic document, the user can search for a portion of a specific document that includes the character requested by the user, and may also search for a document including the character requested by the user. The user may input a search word to be searched for into the computing device, and the computing device may output a portion matching the input search word. For example, when the user inputs the search word “Hangul”, the computing device may search for a portion including “Hangul” in the electronic document and output the searched portion.
최근 들어, 옛한글로 이루어진 문서가 디지털화됨에 따라, 옛한글 문서 내에서 검색의 필요성이 제기되고 있다. 옛한글은 현대 한글에서 사용되지 않는 음소 또는 음소의 조합을 사용하는 한글을 의미할 수 있다. 옛한글의 경우 현대 한글과 다른 특성을 가지고 있으므로, 검색 방법에 있어서도 새로운 기능이 요구될 수 있다.In recent years, as documents composed of Old Hangul have been digitized, the need to search within Old Hangul documents has been raised. Old Hangeul can mean Hangeul using phonemes or combinations of phonemes that are not used in modern Hangeul. Since the old Hangul has different characteristics from the modern Hangul, a new function may also be required in the search method.
옛한글로 이루어진 전자 문서에서 통상적인 검색 엔진을 이용하는 경우, 옛한글의 경우 그 표기 방식이 현대 한글과 상이할 수 있으므로, 검색어에 매칭되는 부분을 검색하기 어려울 수 있다. 예를 들어, 단어 “어마님”의 경우, 옛한글 전자 문서에서 연음으로 인해 “어마님” 또는 “어마니미” 등으로 표기될 수 있고, 검색어로 “어마님”을 입력하는 경우 단어 “어마니미”를 검색할 수 없다는 문제점이 있다. 다른 예를 들면, 옛한글 전자 문서에 포함된 한자 “中”의 경우, “中”, “”, “” 또는 “” 등으로 표기될 수 있으므로, 검색어로 한자 “中”을 입력하는 경우 “”, “” 또는 “” 등을 검색할 수 없다는 문제점이 있다. 이 외에도, 복자음 및 복모음으로 인한 문제, 음가가 없는 음소로 인한 문제, 및 동일한 단어에 대해 다양한 표기 방식을 사용하는 문제 등이 정확한 검색을 어렵게 할 수 있다.When a conventional search engine is used in an electronic document composed of old Hangul, it may be difficult to search for a portion matching the search word because the notation method of the old Hangul may be different from that of the modern Hangul. For example, in the case of the word “Eomma”, it may be expressed as “Eomma-nim” or “Amani-mi” due to a link in an old Korean electronic document. There is a problem that you cannot search for ”. For another example, in the case of the Chinese character “中” included in the old Korean electronic document, “中”, “ ”, “ " or " ”, etc., so if you enter the Chinese character “中” as a search word, “ ”, “ " or " There is a problem that you cannot search for ”etc. In addition, a problem due to a vowel sound and a vowel sound, a problem due to a phoneme without a phonetic value, and a problem of using various notation methods for the same word may make accurate search difficult.
본 발명의 실시 예들은, 전자 문서에 대한 검색을 수행할 때 사용자가 원하는 부분을 효율적이고 정확하게 검색할 수 있는 장치 및 방법을 제공하기 위한 것이다.Embodiments of the present invention are to provide an apparatus and method capable of efficiently and accurately searching for a part desired by a user when searching for an electronic document.
본 문서에 개시되는 일 실시 예에 따른 음소 기반 텍스트 검색 방법은 검색 대상 문서에 대한 검색어를 획득하는 단계, 검색어를 음소 단위로 분할함으로써 하나 이상의 음소를 포함하는 검색식으로 변환하는 단계, 검색 대상 문서에 포함된 텍스트를 복수의 음소로 분할하는 단계, 및 분할된 복수의 음소 중 검색식과 매칭되는 부분을 검색하는 단계를 포함할 수 있다.A phoneme-based text search method according to an embodiment disclosed in this document includes obtaining a search word for a search target document, converting the search word into a search formula including one or more phonemes by dividing the search word into phoneme units, and a search target document It may include dividing the text included in the text into a plurality of phonemes, and searching for a portion of the divided plurality of phonemes that matches the search expression.
일 실시 예에 따르면, 분할하는 단계는, 텍스트를 조합형 유니코드로 변환하는 단계, 및 조합형 유니코드를 음소 단위 코드로 분할하는 단계를 포함할 수 있다.According to an embodiment, the dividing may include converting text into a combined Unicode code, and dividing the combined Unicode code into a phoneme unit code.
일 실시 예에 따르면, 분할하는 단계는, 텍스트에 포함된 복자음 음소 및 복모음 음소를 단자음 음소 및 단모음 음소로 분리하는 단계를 포함할 수 있다.According to an embodiment, the dividing may include dividing a vowel phoneme and a vowel phoneme included in the text into a monophonic phoneme and a short vowel phoneme.
일 실시 예에 따르면, 분할하는 단계는, 텍스트 또는 분할된 복수의 음소에서 음가가 없는 음소를 제거하는 단계를 포함할 수 있다.According to an embodiment, the dividing may include removing a phoneme without a phoneme from text or a plurality of divided phonemes.
일 실시 예에 따르면, 방법은 검색된 부분 또는 검색된 부분에 대응하는 인덱스를 출력하는 단계를 더 포함할 수 있다.According to an embodiment, the method may further include outputting the searched part or an index corresponding to the searched part.
일 실시 예에 따르면, 변환하는 단계는, 검색어를 정규표현식(Regex)으로 이루어진 검색식으로 변환하는 단계를 포함할 수 있다.According to an embodiment, the converting may include converting the search word into a search expression consisting of a regular expression (Regex).
일 실시 예에 따르면, 변환하는 단계는, 검색어 또는 검색식에 포함된 복자음 음소 및 복모음 음소를 단자음 음소 및 단모음 음소로 분리하는 단계를 포함할 수 있다.According to an embodiment, the converting may include dividing a vowel phoneme and a vowel phoneme included in a search word or a search expression into a monophonic phoneme and a short vowel phoneme.
일 실시 예에 따르면, 변환하는 단계는, 검색어 또는 검색식에서 음가가 없는 음소를 제거하는 단계를 포함할 수 있다.According to an embodiment, the converting may include removing a phoneme without a phoneme from a search word or a search expression.
일 실시 예에 따르면, 검색어 또는 검색식은 음소 단위의 와일드 카드를 포함할 수 있다.According to an embodiment, the search word or search expression may include a wild card in units of phonemes.
일 실시 예에 따르면, 변환하는 단계는, 검색어에 한자가 포함된 경우, 미리 저장된 데이터베이스에 기초하여 한자에 대응하는 하나 이상의 음소 세트를 획득하는 단계, 및 검색어를 한자 및 하나 이상의 음소 세트를 포함하는 검색식으로 변환하는 단계를 포함하고, 검색식은 한자를 포함하는 부분 또는 하나 이상의 음소 세트 중 하나를 포함하는 부분과 매칭되도록 구성될 수 있다.According to an embodiment, the converting includes obtaining one or more phoneme sets corresponding to the Chinese characters based on a pre-stored database when the search word contains Chinese characters, and the search word including Chinese characters and one or more phoneme sets. Converting into a search expression, and the search expression may be configured to match a portion including a Chinese character or a portion including one of one or more phoneme sets.
일 실시 예에 따르면, 변환하는 단계는, 미리 저장된 음소 네트워크 정보에 기초하여 검색어에 포함된 음소와 연관된 다른 음소를 획득하는 단계, 및 검색어를 검색어에 포함된 음소 및 다른 음소를 포함하는 검색식으로 변환하는 단계를 포함하고, 검색식은 분할된 복수의 음소 중 음소 및 다른 음소 중 하나를 포함하는 부분과 매칭되도록 구성될 수 있다.According to an embodiment, the converting includes obtaining another phoneme associated with a phoneme included in a search word based on pre-stored phoneme network information, and converting the search word into a search formula including phonemes and other phonemes included in the search word. Including the step of converting, the search expression may be configured to match a portion including one of a phoneme and another phoneme among a plurality of divided phonemes.
본 발명의 일 실시 예에 따른 음소 기반 텍스트 검색 장치는 외부와 통신하도록 구성된 통신 회로, 메모리, 및 통신 회로 및 메모리와 전기적으로 연결된 프로세서를 포함하고, 프로세서는 검색 대상 문서에 대한 검색어를 획득하고, 검색어를 하나 이상의 음소를 포함하는 검색식으로 변환하고, 통신 회로를 이용하여 검색식을 외부 장치로 제공하도록 설정될 수 있다.A phoneme-based text search apparatus according to an embodiment of the present invention includes a communication circuit configured to communicate with the outside, a memory, and a communication circuit and a processor electrically connected to the memory, and the processor obtains a search word for a document to be searched, It may be set to convert the search word into a search formula including one or more phonemes, and to provide the search formula to an external device using a communication circuit.
본 발명의 일 실시 예에 따른 음소 기반 텍스트 검색 장치는 외부와 통신하도록 구성된 통신 회로, 메모리, 및 통신 회로 및 메모리와 전기적으로 연결된 프로세서를 포함하고, 프로세서는 외부 장치로부터 통신 회로를 이용하여 검색 대상 문서에 대한 검색어로부터 변환된 하나 이상의 음소를 포함하는 검색식을 획득하고, 검색 대상 문서에 포함된 텍스트를 복수의 음소로 분할하고, 분할된 복수의 음소 중 검색식과 매칭되는 부분을 검색하도록 설정될 수 있다.A phoneme-based text search device according to an embodiment of the present invention includes a communication circuit configured to communicate with the outside, a memory, and a communication circuit and a processor electrically connected to the memory, and the processor is a search target from an external device using a communication circuit. It will be set to obtain a search expression including one or more phonemes converted from the search word for the document, divide the text included in the search target document into a plurality of phonemes, and search for a portion matching the search expression among the divided plurality of phonemes. I can.
본 문서에 개시되는 실시 예들에 따르면, 음소 단위로 분할된 검색식을 사용함으로써, 전자 문서에서 사용자가 원하는 부분을 효율적이고 정확하게 검색할 수 있다.According to embodiments disclosed in this document, by using a search expression divided by phoneme, it is possible to efficiently and accurately search for a part desired by a user in an electronic document.
또한, 검색 대상 텍스트 및 검색어의 복자음 음소 및 복모음 음소를 단자음 음소 및 단모음 음소로 분리함으로써, 복잡한 복자음 및 복모음으로 인해 검색의 효율성 및 정확성이 저하되는 것을 방지할 수 있다.In addition, by separating the complex consonant phoneme and the complex vowel phoneme of the search target text and the search word into a single phoneme and a short vowel phoneme, it is possible to prevent the efficiency and accuracy of the search from deteriorating due to the complex complex consonant and complex vowels.
또한, 검색 대상 텍스트 및 검색어에서 음가가 없는 음소를 제거함으로써, 연음 현상으로 인한 표기 및 음가가 없는 종성 등으로 인해 검색의 효율성 및 정확성이 저하되는 것을 방지할 수 있다.In addition, by removing phonemes that do not have a phonetic value from the text and search word to be searched, it is possible to prevent the efficiency and accuracy of the search from deteriorating due to the notation due to the linkage phenomenon and the finality without the phonetic value.
또한, 음소 단위의 와일드 카드를 사용함으로써, 검색의 유연성을 향상시킬 수 있다.In addition, by using wildcards for each phoneme, the flexibility of the search can be improved.
또한, 데이터베이스에 기초하여 한자 및 그 한자에 대응하는 다양한 한글 표기를 포함하는 검색식을 제공함으로써, 한자 검색어에 의한 검색의 유연성을 향상시킬 수 있다.In addition, by providing a search expression including Chinese characters and various Korean notation corresponding to the Chinese characters based on the database, it is possible to improve the flexibility of searching by Chinese character search words.
또한, 음소 네트워크를 이용하여 유사 음소를 포함하는 검색식을 제공함으로써, 검색어에 대응하는 유사 음소로 표기된 단어에 대한 검색이 이루어질 수 있다.In addition, by providing a search formula including similar phonemes using the phoneme network, a search for words marked with similar phonemes corresponding to the search word can be performed.
또한, 폐용된 한글 자모의 쓰임에 대한 이해가 부족한 비전문가가 용이하게 활용할 수 있는 검색 방법을 제공할 수 있다.In addition, it is possible to provide a search method that can be easily utilized by non-professionals who lack an understanding of the use of abolished Korean alphabet.
또한, 유연한 검색식과 병렬적 검색어 획득 방법을 제공함으로써, 통시적 어원 연구가 어려운 한글의 어형 변화를 추적하는 검색이 가능하도록 할 수 있다.In addition, by providing a flexible search formula and a parallel search word acquisition method, it is possible to enable a search that tracks changes in the form of Hangul, which is difficult to study the synchronic etymology.
이 외에, 본 문서를 통해 직접적 또는 간접적으로 파악되는 다양한 효과들이 제공될 수 있다.In addition to this, various effects that are directly or indirectly identified through this document can be provided.
도 1은 일 실시 예에 따른 음소 기반 텍스트 검색 장치의 동작 환경을 나타낸다.
도 2는 일 실시 예에 따른 음소 기반 텍스트 검색 장치의 구성을 나타내는 블록도이다.
도 3은 일 실시 예에 따른 음소 기반 텍스트 검색 시스템을 나타내는 블록도이다.
도 4는 일 실시 예에 따른 음소 기반 텍스트 검색 장치에 의해 출력되는 예시적인 검색 결과를 도시한다.
도 5는 일 실시 예에 따른 음소 기반 텍스트 검색 장치에 의해 출력되는 예시적인 검색 결과를 도시한다.
도 6은 일 실시 예에 따른 음소 기반 텍스트 검색 장치에 의해 출력되는 예시적인 검색 결과를 도시한다.
도 7은 일 실시 예에 따른 음소 기반 텍스트 검색 장치에 의해 출력되는 예시적인 검색 결과를 도시한다.
도 8은 일 실시 예에 따른 음소 기반 텍스트 검색 장치에 의해 출력되는 예시적인 검색 결과를 도시한다.
도 9는 일 실시 예에 따른 음소 기반 텍스트 검색 장치에서 사용되는 예시적인 음소 네트워크를 시각적으로 도시한다.
도 10은 일 실시 예에 따른 음소 기반 텍스트 검색 방법을 설명하기 위한 흐름도이다.
도면의 설명과 관련하여, 동일 또는 유사한 구성요소에 대해서는 동일 또는 유사한 참조 부호가 사용될 수 있다.1 illustrates an operating environment of a phoneme-based text search apparatus according to an exemplary embodiment.
2 is a block diagram illustrating a configuration of a phoneme-based text search apparatus according to an exemplary embodiment.
3 is a block diagram illustrating a phoneme-based text search system according to an exemplary embodiment.
4 illustrates exemplary search results output by a phoneme-based text search device according to an embodiment.
5 illustrates exemplary search results output by a phoneme-based text search device according to an embodiment.
6 illustrates an exemplary search result output by a phoneme-based text search device according to an embodiment.
7 illustrates exemplary search results output by a phoneme-based text search device according to an embodiment.
8 illustrates an exemplary search result output by a phoneme-based text search device according to an embodiment.
9 is a visual diagram of an exemplary phoneme network used in a phoneme-based text search device according to an embodiment.
10 is a flowchart illustrating a phoneme-based text search method according to an exemplary embodiment.
In connection with the description of the drawings, the same or similar reference numerals may be used for the same or similar elements.
이하, 본 발명의 실시 예가 첨부된 도면을 참조하여 기재된다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 실시 예의 다양한 변경(modification), 균등물(equivalent), 및/또는 대체물(alternative)을 포함하는 것으로 이해되어야 한다.Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings. However, this is not intended to limit the present invention to a specific embodiment, it should be understood to include various modifications, equivalents, and/or alternatives of the embodiments of the present invention.
도 1은 일 실시 예에 따른 음소 기반 텍스트 검색 장치의 동작 환경을 나타낸다.1 illustrates an operating environment of a phoneme-based text search apparatus according to an exemplary embodiment.
도 1을 참조하면, 일 실시 예에 따른 음소 기반 텍스트 검색 장치는 사용자 단말(110) 또는 서버(120) 형태로 구현될 수 있다. 사용자 단말(110)은 사용자(11)로부터 검색어를 수신할 수 있다. 검색어는, 예를 들어, “부텨”일 수 있다. 사용자 단말(110)은 수신된 검색어를 음소 단위로 분할하여 검색식으로 변환할 수 있다. 검색식은, 예를 들어, “ㅂ ㅜ ㅌ ㅣ ㅓ”일 수 있다. 사용자 단말(110)은 변환된 검색식을 서버(120)로 제공할 수 있다.Referring to FIG. 1, a phoneme-based text search apparatus according to an embodiment may be implemented in the form of a
서버(120)는 외부로부터 또는 서버(120) 내부에 미리 저장된 검색 대상이 되는 전자 문서(12)를 획득할 수 있다. 서버(120)는 사용자 단말(110)로부터 검색식을 획득할 수 있다. 서버(120)는 전자 문서(12)에 포함된 텍스트를 음소 단위로 분할할 수 있다. 서버(120)는 검색식과 음소 단위로 분할된 텍스트를 비교함으로써, 텍스트에서 검색식에 포함된 일련의 음소와 매칭되는 부분을 검색할 수 있다. 예를 들어, 서버(120)는 검색식 “ㅂ ㅜ ㅌ ㅣ ㅓ”와 매칭되는 부분인 텍스트의 3행에 기재된 “부?”을 검색할 수 있다. 서버(120)는 검색된 부분 또는 검색된 부분에 대응하는 인덱스(예: 3행)를 출력할 수 있다.The
사용자 단말(110) 및/또는 서버(120)는 음소 단위 검색을 위해 다양한 기능을 제공할 수 있다. 예를 들어, 복자음 및 복모음 음소를 단자음 및 단모음 음소로 분리하는 기능, 음가가 없는 음소를 제거하는 기능, 음소 단위의 와일드 카드를 제공하는 기능, 한자 검색어를 위한 검색식을 제공하는 기능 및 음소 네트워크를 이용하여 검색식을 제공하는 기능 등이 제공될 수 있다.The
도 1에서는 전자 문서(12)가 옛한글로 이루어진 문서인 것으로 도시되었으나, 이에 제한되지 않고, 전자 문서(12)는 현대 한글로 이루어진 문서일 수도 있다.In FIG. 1, the
도 1에서는 서버(120)와 사용자 단말(110)이 분리된 것으로 도시되었으나, 이에 제한되지 않고, 하나의 컴퓨팅 디바이스로 통합되어 구현될 수도 있다. 또한, 도 1에서는 서버(120) 및 사용자 단말(110)이 각각 하나의 디바이스인 것으로 도시되었으나, 이에 제한되지 않고, 서버(120) 및 사용자 단말(110)은 각각 2 이상의 컴퓨팅 디바이스로 분리되어 구현될 수도 있다.In FIG. 1, the
또한, 도 1을 참조하여 설명된 서버(120)에 의해 수행되는 동작 중 적어도 일부는 사용자 단말(110)에 의해 수행될 수도 있고, 사용자 단말(110)에 의해 수행되는 동작 중 적어도 일부는 서버(120)에 의해 수행될 수도 있다.In addition, at least some of the operations performed by the
도 2는 일 실시 예에 따른 음소 기반 텍스트 검색 장치의 구성을 나타내는 블록도이다.2 is a block diagram illustrating a configuration of a phoneme-based text search apparatus according to an exemplary embodiment.
도 2를 참조하면, 일 실시 예에 따른 음소 기반 텍스트 검색 방법은 사용자 단말(210) 및 서버(220)에 의해 실행될 수 있다. 본 문서에서 음소 기반 텍스트 검색 장치는 사용자 단말(210)을 지칭할 수도 있고, 서버(220)를 지칭할 수도 있다. 사용자 단말(210) 및 서버(220)는 통합된 형태로 구현될 수도 있고, 각각이 분리된 형태로 구현될 수도 있다.Referring to FIG. 2, the phoneme-based text search method according to an embodiment may be executed by the user terminal 210 and the server 220. In this document, the phoneme-based text search apparatus may refer to the user terminal 210 or the server 220. The user terminal 210 and the server 220 may be implemented in an integrated form, or may be implemented in separate forms.
일 실시 예에 따른 사용자 단말(210)은 통신 회로(211), 메모리(212) 및 프로세서(213)를 포함할 수 있다. 통신 회로(211)는 외부와 통신하도록 구성될 수 있다. 통신 회로(211)는 무선 통신 인터페이스 및/또는 유선 통신 인터페이스를 포함할 수 있다. 예를 들어, 통신 회로(211)는 서버(220)와 데이터를 송수신할 수 있다. 메모리(212)는 휘발성 메모리 및/또는 비휘발성 메모리를 포함할 수 있다. 메모리(212)는 사용자 단말(210)에서 취급되는 다양한 데이터를 저장할 수 있다. 예를 들어, 메모리(212)는 서버(220)로부터 수신된 데이터를 저장할 수 있고, 사용자 단말(210) 내부에서 처리된 데이터를 저장할 수도 있다. 프로세서(213)는 통신 회로(211) 및 메모리(212)와 전기적으로 연결될 수 있다. 프로세서(213)는 통신 회로(211) 및 메모리(212)를 제어할 수 있고, 다양한 데이터 처리 및 연산을 수행할 수 있다.The user terminal 210 according to an embodiment may include a
일 실시 예에 따른 서버(220)는 통신 회로(221), 메모리(222) 및 프로세서(223)를 포함할 수 있다. 통신 회로(221)는 외부와 통신하도록 구성될 수 있다. 통신 회로(221)는 무선 통신 인터페이스 및/또는 유선 통신 인터페이스를 포함할 수 있다. 예를 들어, 통신 회로(221)는 사용자 단말(210) 및/또는 다른 외부 장치와 데이터를 송수신할 수 있다. 메모리(222)는 휘발성 메모리 및/또는 비휘발성 메모리를 포함할 수 있다. 메모리(222)는 서버(220)에서 취급되는 다양한 데이터를 저장할 수 있다. 예를 들어, 메모리(222)는 사용자 단말(210) 또는 다른 외부 장치로부터 수신된 데이터를 저장할 수 있고, 서버(220) 내부에서 처리된 데이터를 저장할 수도 있다. 프로세서(223)는 통신 회로(221) 및 메모리(222)와 전기적으로 연결될 수 있다. 프로세서(223)는 통신 회로(221) 및 메모리(222)를 제어할 수 있고, 다양한 데이터 처리 및 연산을 수행할 수 있다.The server 220 according to an embodiment may include a
이하에서 사용자 단말(210)에 의해 수행되는 것으로 설명된 동작은 사용자 단말(210)의 프로세서(213)에 의해 수행되는 것으로 이해될 수 있고, 서버(220)에 의해 수행되는 것으로 설명된 동작은 서버(220)의 프로세서(223)에 의해 수행되는 것으로 이해될 수 있다. 또한, 사용자 단말(210)에 의해 수행되는 것으로 설명된 동작 중 적어도 일부는 서버(220)에 의해 수행될 수도 있고, 서버(220)에 의해 수행되는 것으로 설명된 동작 중 적어도 일부는 사용자 단말(230)에 의해 수행될 수도 있다.The operation described below as being performed by the user terminal 210 may be understood as being performed by the
일 실시 예에 따르면, 사용자 단말(210)은 검색 대상 문서에 대한 검색어를 획득할 수 있다. 사용자 단말(210)은 사용자로부터 입력 장치를 통해 검색어를 수신할 수 있다. 검색어는, 예를 들어, 한글 또는 한자를 포함할 수 있다.According to an embodiment, the user terminal 210 may acquire a search word for a document to be searched. The user terminal 210 may receive a search word from a user through an input device. The search word may include, for example, Korean or Chinese characters.
일 실시 예에 따르면, 사용자 단말(210)은 검색어를 음소 단위로 분할함으로써 하나 이상의 음소를 포함하는 검색식으로 변환할 수 있다. 예를 들어, 사용자 단말(210)은 검색어 “어마님”을 음소 단위로 분할하여 검색식 “ㅇ ㅓ ㅁ ㅏ ㄴ ㅣ ㅁ”으로 변환할 수 있다. 다른 예를 들면, 사용자 단말(210)은 검색어 “ㅅㄱ"을 검색식 “ㅅ ㄱ”로 변환할 수 있다. 이 경우, 초성과 종성의 혼용을 고려하여 초성과 종성의 구분이 없는 한글 자모로 분할할 수 있고, 이를 위해 유니코드의 호환용 한글자모 영역(U+3130에서 U+318F)을 사용할 수 있다. 또한, 옛한글에서 단자음과 쌍자음이 빈번하게 혼용되는 점을 고려하여 쌍자음은 유니코드의 + 기호(하나 이상을 의미)를 활용하여 분할할 수 있고(예를 들어 'ㄲ'은 'ㄱ+'로 분할), 단자음에 정규식 기호 +를 부가하여 변환함으로써 단자음과 쌍자음이 동시에 검색되도록 할 수 있다.According to an embodiment, the user terminal 210 may convert the search word into a search formula including one or more phonemes by dividing the search word into phoneme units. For example, the user terminal 210 may divide the search word “Eomma” into phoneme units and convert it into a search expression “ㅇ ㅓ ㅁ ㅏ ㄴ ㅣ ㅁ”. For another example, the user terminal 210 may convert the search word “ㅅㄱ” into the search expression “ㅅㄱ.” In this case, it is divided into Korean alphabets with no distinction between the first and last names in consideration of the mixed use of the first and last words. For this, a Unicode compatible Hangul character area (U+3130 to U+318F) can be used. It can be divided by using the + sign (meaning more than one) in the code (for example,'ㄲ' is divided by'ㄱ+'), and by adding the regular expression symbol + to the terminal sound, converting it to search for both terminal and double consonants at the same time. You can do it.
일 실시 예에 따르면, 사용자 단말(210)은 검색어를 정규표현식(Regex)으로 이루어진 검색식으로 변환할 수 있다. 사용자 단말(210)은 사용자가 제공한 검색어를 여러 음소의 혼용 및 초성/종성 혼용 등을 표현할 수 있는 정규표현식 검색식으로 변환할 수 있다. 변환된 검색식에 통상적인 정규표현식 처리 엔진을 적용함으로써, 검색의 유연성과 구현의 용이성을 동시에 확보할 수 있다.According to an embodiment, the user terminal 210 may convert a search word into a search expression consisting of a regular expression (Regex). The user terminal 210 may convert the search word provided by the user into a regular expression search expression capable of expressing a mixture of several phonemes and a mixture of an initial/ending voice. By applying a conventional regular expression processing engine to the converted search expression, the flexibility of the search and the ease of implementation can be secured at the same time.
일 실시 예에 따르면, 사용자 단말(210)은 검색어 또는 검색식에 포함된 복자음 음소 및 복모음 음소를 단자음 음소 및 단모음 음소로 분리할 수 있다. 복자음 음소 및 복모음 음소의 분리는 미리 저장된 데이터베이스(예: 복자음-단자음/복모음-단모음 맵핑 테이블)에 기초하여 수행될 수 있다. 복자음 음소 및 복모음 음소를 단자음 음소 및 단모음 음소로 분리함으로써, 복잡한 복자음 및 복모음으로 인해 검색의 효율성 및 정확성이 저하되는 것을 방지할 수 있다. 예를 들어, 사용자 단말(210)은 검색어에 포함된 “ㅺ" 및 “ㅴ" 등과 같은 복자음을 “ㅅ ㄱ” 및 “ㅂ ㅅ ㄱ” 등과 같은 단자음으로 분리할 수 있고, “ㄲ”과 같은 쌍자음을 “ㄱ+”과 같이 단자음과 정규표현식 기호의 조합으로 변환할 수 있다. 다른 예를 들면, 사용자 단말(210)은 검색어에 포함된 “ㅕ” 및 “ㅘ” 등과 같은 복모음을 “ㅣ ㅓ” 및 “ㅗ ㅏ” 등과 같은 단모음으로 분리할 수 있다.According to an embodiment, the user terminal 210 may divide a vowel phoneme and a vowel phoneme included in a search word or a search expression into a single phoneme and a short phoneme. Separation of a vowel phoneme and a vowel phoneme may be performed based on a previously stored database (eg, a vowel-terminal/consonant-short-vowel mapping table). By separating the complex consonant phoneme and the complex vowel phoneme into a single phoneme and a short vowel phoneme, it is possible to prevent the efficiency and accuracy of the search from deteriorating due to the complex complex consonant and complex vowels. For example, the user terminal 210 may separate complex consonants such as “ㅺ” and “ㅴ” included in the search word into terminal sounds such as “ㅅ ㄱ” and “ㅂ ㅅ ㄱ”, and a pair such as “ㄲ” Consonants can be converted into a combination of a terminal sound and a regular expression symbol, such as “ㄱ+”. For another example, the user terminal 210 may separate complex vowels such as “ㅕ” and “ㅘ” included in the search word into short vowels such as “ㅕ” and “ㅗ ㅏ”.
일 실시 예에 따르면, 사용자 단말(210)은 검색어 또는 검색식에서 음가가 없는 음소를 제거할 수 있다. 음가가 없는 음소를 제거함으로써, 연음 현상으로 인한 표기 및 음가가 없는 종성 등으로 인해 검색의 효율성 및 정확성이 저하되는 것을 방지할 수 있다. 예를 들어, 사용자 단말(210)은 검색어 “어마님”에서 음가가 없는 음소 “ㅇ”을 제거하여 검색식 “ㅓ ㅁ ㅏ ㄴ ㅣ ㅁ”을 획득할 수 있다.According to an embodiment, the user terminal 210 may remove a phoneme without a phonetic value from a search word or a search expression. By removing the phoneme without a phonetic value, it is possible to prevent the efficiency and accuracy of the search from deteriorating due to the notation due to the linkage phenomenon and the finality without the phonetic value. For example, the user terminal 210 may obtain the search expression “ㅓ ㅁ ㅏ ㄴ ㅣ ㅁ” by removing the phoneme “ㅇ” without a phonetic value from the search word “Mother”.
일 실시 예에 따르면, 검색어 또는 검색식은 음소 단위의 와일드 카드를 포함할 수 있다. 음소 단위의 와일드 카드를 사용함으로써, 검색의 유연성을 향상시킬 수 있다. 예를 들어, 사용자 단말(210)은 검색어 “ㄹ(모음 와일드 카드)ㄹ”을 획득할 수 있다. 사용자 단말(210)은 검색어를 정규표현식 “(ㄹ)([ㅏ-ㅣㆍㆎ]+)(ㄹ)” 으로 변환할 수 있다. 여기서 “[ㅏ-ㅣㆍㆎ]”는 한글의 모든 단모음에 대응되고, 하나 이상을 의미하는 정규표현식 기호 +가 부가됨으로써 “[ㅏ-ㅣㆍㆎ]+”는 모든 단모음 및 복모음에 대응된다. 상술한 검색어를 이용하여 검색 대상 문서에서 “” 및 “를”을 동시에 검색할 수 있다. 와일드 카드는 상술한 것과 같이 임의의 (자음 및/또는 모음) 음소의 검색, 지정된 음소 중 하나의 검색 또는 인접 연산 등을 위한 것일 수 있다.According to an embodiment, the search word or search expression may include a wild card in units of phonemes. By using the wildcard for each phoneme, the flexibility of the search can be improved. For example, the user terminal 210 may acquire the search word “ㄹ (collection wild card) ㄹ”. The user terminal 210 may convert the search word into a regular expression “(ㄹ)([ㅏ-ㆎ]+)(ㄹ)”. Here, “[ㅏ-ㅣㆍㆎ]” corresponds to all short vowels in Hangul, and “[ㅏ-ㅣㆍㆎ]+” corresponds to all short and complex vowels by adding the regular expression symbol + which means more than one. Using the above-described search word, in the search target document, You can search for "" and "to" at the same time. As described above, the wild card may be for a search for an arbitrary (consonant and/or vowel) phoneme, a search for one of a designated phoneme, or an adjacent operation.
일 실시 예에 따르면, 사용자 단말(210)은 검색어에 한자가 포함된 경우, 미리 저장된 데이터베이스에 기초하여 한자에 대응하는 하나 이상의 음소 세트를 획득하고, 검색어를 한자 및 하나 이상의 음소 세트를 포함하는 검색식으로 변환할 수 있다. 검색식은 한자를 포함하는 부분 또는 하나 이상의 음소 세트 중 하나를 포함하는 부분과 매칭되도록 구성될 수 있다. 데이터베이스에 기초하여 한자 및 그 한자에 대응하는 다양한 한글 표기를 포함하는 검색식을 제공함으로써, 한자 검색어에 의한 검색의 유연성을 향상시킬 수 있다. 예를 들어, 사용자 단말(210)은 검색어 “中”을 획득할 수 있다. 한자 “中”은 한자로 표기될 수도 있고, 옛한글 문서에서 한글 “”, “” 또는 “” 등으로 표기될 수도 있다. 사용자 단말(210)은 한자음 데이터베이스를 이용하여 한자 “中”에 대응하는 음소 세트 “”, “” 또는 “”을 획득할 수 있다. 한자음 데이터베이스는 다양한 전자 문서에 기재된 한자와 한자음이 병기된 부분에 기초하여 구축될 수 있다. 사용자 단말(210)은 “中”, “”, “” 또는 “”을 검색하기 위한 검색식을 획득할 수 있다. 검색식은, 예를 들어, “中 | (ㅈ ㅜ ㆁ) | (ㄷ ㅣ ㅜ ㆁ) | (ㅈ ㅣ ㅜ ㆁ)”일 수 있다. 여기서, 기호 “|”는 논리 연산자 “OR”에 대응할 수 있다. 검색식은 분석 대상 문서에 포함된 “中”, “”, “” 또는 “”과 매칭될 수 있다.According to an embodiment, when the search word contains Chinese characters, the user terminal 210 obtains one or more phoneme sets corresponding to the Chinese characters based on a previously stored database, and searches the search word including Chinese characters and one or more phoneme sets. Can be converted to an equation. The search expression may be configured to match a portion including a Chinese character or a portion including one of one or more phoneme sets. By providing a search expression including Chinese characters and various Korean notation corresponding to the Chinese characters based on the database, it is possible to improve the flexibility of searching by Chinese character search words. For example, the user terminal 210 may acquire the search word “中”. Chinese characters “中” can be written in Chinese characters, or Korean characters “ ”, “ " or " It can also be written as ”. The user terminal 210 uses a Chinese consonant database to provide a phoneme set corresponding to the Chinese character “中”. ”, “ " or " ”Can be obtained. The Chinese consonant database may be constructed based on a portion in which Chinese characters and Chinese consonants described in various electronic documents are added together. User terminal 210 is "中", " ”, “ " or " You can get a search expression to search for "". The search expression is, for example, “中 | (ㅈ ㅜ ㆁ) | (ㄷ ㅣ ㅜ ㆁ) | (ㅈ ㅣ ㅜ ㆁ)” can be. Here, the symbol “|” may correspond to the logical operator “OR”. Search expressions include “中” and “ ”, “ " or " Can be matched with ”.
일 실시 예에 따르면, 사용자 단말(210)은 미리 저장된 음소 네트워크 정보에 기초하여 검색어에 포함된 음소와 연관된 다른 음소를 획득하고, 검색어를 검색어에 포함된 음소 및 다른 음소를 포함하는 검색식으로 변환할 수 있다. 검색식은 검색어에 포함된 음소 및 다른 음소 중 하나를 포함하는 부분과 매칭되도록 구성될 수 있다. 사용자 단말(210)은 음소 네트워크 정보에 기초하여 검색어와 포함된 음소와 연관된 하나 이상의 다른 음소를 사용자에게 제공할 수 있다. 사용자는 하나 이상의 다른 음소 중 적어도 일부를 선택할 수 있다. 사용자 단말(210)은 검색어에 포함된 음소 및 선택된 음소 중 하나를 포함하는 부분과 매칭되도록 검색식을 구성할 수 있다. 음소 네트워크를 이용하여 유사 음소를 포함하는 검색식을 제공함으로써, 유사 음소로 표기된 부분에 대한 검색이 이루어질 수 있다. 예를 들어, 사용자 단말(210)은 검색어 “꽃”을 획득할 수 있다. “꽃”은 옛한글 문서에서 “” 또는 “곶”등으로 표기될 수 있다. 사용자 단말(210)은 “꽃”을 “ㄱ+ㅗㅊ”으로 분할한 후, 음소 네트워크를 이용하여 음소 “ㅊ”과 유사한 음소로 “ㅅ” 및 “ㅈ”을 사용자가 선택하게 할 수 있다. 사용자 단말(210)은, 예를 들어, 검색식 “(ㄱ+)(ㅗ)([ㅈㅊㅅ]+) ”을 획득할 수 있다. 검색식은 분석 대상 문서에 포함된 “꽃” 및 “곶”과 매칭될 수 있다.According to an embodiment, the user terminal 210 acquires another phoneme associated with a phoneme included in a search word based on pre-stored phoneme network information, and converts the search word into a search formula including phonemes and other phonemes included in the search word. can do. The search expression may be configured to match a phoneme included in the search word and a portion including one of another phoneme. The user terminal 210 may provide a search word and one or more other phonemes associated with the included phoneme to the user based on phoneme network information. The user may select at least some of one or more different phonemes. The user terminal 210 may configure a search expression to match a portion including one of the phoneme included in the search word and the selected phoneme. By providing a search formula including similar phonemes using a phoneme network, a search for a portion marked with a similar phoneme can be performed. For example, the user terminal 210 may acquire the search word “flower”. “Flower” means “ It can be written as "" or "cape". After dividing the “flower” into “a+ㅗㅊ”, the user terminal 210 may allow the user to select “ㅅ” and “ㅈ” as phonemes similar to the phoneme “ㅊ” using a phoneme network. The user terminal 210 may obtain, for example, the search expression “(ㄱ+)(ㅗ)([ㅈㅊㅅ]+)”. The search expression may be matched with “flower” and “cape” included in the document to be analyzed.
일 실시 예에 따르면, 서버(220)는 검색 대상 문서에 포함된 텍스트를 복수의 음소로 분할할 수 있다. 서버(220)는 사용자 단말(210)로부터 검색식을 획득할 수 있다. 서버(220)는 음소 단위로 분할된 검색식과 검색 대상 문서에 포함된 텍스트를 매칭하기 위해 텍스트 또한 음소 단위로 분할하여 내부 처리용 텍스트를 구축할 수 있다. 예를 들어, 서버(220)는 텍스트를 조합형 유니코드로 변환하고, 및 조합형 유니코드를 음소 단위 코드로 분할할 수 있다. 서버(220)는 PUA(private users area) 코드의 디지털 텍스트를 유니코드 조합형으로 변환할 수 있다. 서버(220)는 유니코드 조합형에서 유니코드 정준 분해를 활용하여 음절 단위 코드를 초성/중성/종성으로 이루어진 음소 단위 코드로 분리할 수 있다.According to an embodiment, the server 220 may divide text included in a search target document into a plurality of phonemes. The server 220 may obtain a search formula from the user terminal 210. The server 220 may construct text for internal processing by dividing the text into phoneme units in order to match the search expression divided by phoneme units with the text included in the document to be searched. For example, the server 220 may convert text into combinatorial Unicode and divide the combinatorial Unicode into phoneme unit codes. The server 220 may convert digital text of a private users area (PUA) code into a Unicode combination type. The server 220 may divide the syllable unit code into phoneme unit codes consisting of an initial/neutral/lasting voice by utilizing the Unicode canonical decomposition in the Unicode combination type.
일 실시 예에 따르면, 서버(220)는 검색식과 텍스트의 매칭을 위해 검색식에 수행된 처리 과정 중 일부를 검색 대상 문서의 텍스트에 동일하게 적용할 수 있다. 예를 들어, 서버(220)는 텍스트에 포함된 복자음 음소 및 복모음 음소를 단자음 음소 및 단모음 음소로 분리할 수 있다. 다른 예를 들면, 서버(220)는 텍스트 또는 분할된 복수의 음소에서 음가가 없는 음소를 제거할 수 있다.According to an embodiment, the server 220 may equally apply some of the processing performed in the search expression to match the search expression and text to the text of the search target document. For example, the server 220 may separate a vowel phoneme and a vowel phoneme included in the text into a monophonic phoneme and a short vowel phoneme. As another example, the server 220 may remove a phoneme without a phoneme from text or a plurality of divided phonemes.
일 실시 예에 따르면, 서버(220)는 텍스트로부터 분할된 복수의 음소 중 검색식과 매칭되는 부분을 검색할 수 있다. 서버(220)는 음소 단위로 분할된 내부 처리용 텍스트와 검색식을 비교하여 서로 매칭되는 부분을 검색할 수 있다.According to an embodiment, the server 220 may search for a portion matching the search expression among a plurality of phonemes divided from text. The server 220 may search for matching portions by comparing the text for internal processing divided by phoneme units and a search expression.
일 실시 예에 따르면, 사용자 단말(210)은 분석 대상 문서에서 검색된 부분 또는 검색된 부분에 대응하는 인덱스를 출력할 수 있다. 서버(220)는 검색 대상 문서의 원문과 내부 처리용 텍스트 간의 인덱스를 구축함으로써, 내부 처리용 텍스트에서 검색된 부분과 대응되는 검색 대상 문서의 대응 부분에 대한 정보를 획득할 수 있다. 사용자 단말(210)은 검색된 부분에 대한 정보를 서버(220)로부터 수신할 수 있고, 수신된 정보에 기초하여 검색된 부분 또는 인덱스를 출력할 수 있다. 예를 들어, 사용자 단말(210)은 분석 대상 문서에서 검색된 부분을 디스플레이할 수 있다. 다른 예를 들면, 사용자 단말(210)은 분석 대상 문서에서 검색된 부분에 대한 인덱스(예: 2페이지 10열)를 출력할 수 있다.According to an embodiment, the user terminal 210 may output a searched portion or an index corresponding to the searched portion of the document to be analyzed. The server 220 may acquire information on a corresponding part of the search target document corresponding to a part searched in the internal processing text by building an index between the original text of the search target document and the text for internal processing. The user terminal 210 may receive information on the searched part from the server 220 and may output the searched part or index based on the received information. For example, the user terminal 210 may display the searched part of the document to be analyzed. For another example, the user terminal 210 may output an index (eg, 2 pages, 10 columns) of the searched portion of the document to be analyzed.
상술한 것과 같이, 음소 단위로 분할된 검색식을 사용함으로써, 전자 문서에서 사용자가 원하는 부분을 효율적이고 정확하게 검색할 수 있다.As described above, by using a search formula divided by phoneme, it is possible to efficiently and accurately search for a part desired by a user in an electronic document.
도 3은 일 실시 예에 따른 음소 기반 텍스트 검색 시스템을 나타내는 블록도이다.3 is a block diagram illustrating a phoneme-based text search system according to an exemplary embodiment.
도 3을 참조하면, 클라이언트(310)는 사용자에 의해 입력되는 검색어를 획득할 수 있다. 클라이언트(310)는 Regex 변환 알고리즘을 이용하여 Regex 검색식을 생성할 수 있다. 클라이언트(310)는 Regex 검색식을 서버(320)로 제공할 수 있다.Referring to FIG. 3, the client 310 may obtain a search word input by a user. The client 310 may generate a Regex search expression using a Regex conversion algorithm. The client 310 may provide a Regex search formula to the server 320.
서버(320)는 분석 대상 문서를 획득할 수 있다. 서버(320)는 분석 대상 문서에 포함된 텍스트로부터 음소 단위로 분리된 텍스트 데이터를 획득할 수 있다. 서버(320)는 분석 대상 문서를 이용하여 데이터베이스를 구축할 수 있다. 예를 들어, 서버(320)는 분석 대상 문서에서 한자와 한자의 한글 표기가 병기된 부분에 기초하여 한자(예: 中)와 한자의 한글 표기(예: , 또는 )를 매칭하는 데이터베이스를 구축할 수 있다. 다른 예를 들면, 서버(320)는 분석 대상 문서에 기초하여 음소를 혼용하는 단어(예: 꽃과 곶, 또는 를과 )를 매칭하는 데이터베이스를 구축할 수 있다. 또 다른 예를 들면, 서버(320)는 음소 네트워크 데이터베이스를 저장할 수 있다. 데이터베이스는 클라이언트(310)의 Regex 변환 알고리즘으로 제공될 수 있고, Regex 검색식의 생성에 활용될 수 있다. 서버(320)는 Regex 검색 엔진을 이용하여 Regex 검색식과 음소 단위로 분리된 텍스트 데이터를 비교할 수 있다. 서버(320)는 Regex 검색 엔진을 이용하여 검색 결과를 도출할 수 있다.The server 320 may obtain a document to be analyzed. The server 320 may obtain text data separated by phoneme from text included in the document to be analyzed. The server 320 may build a database using the document to be analyzed. For example, the server 320 may display Chinese characters (eg, 中) and Korean characters (eg: , or You can build a database that matches ). For another example, the server 320 is a word (eg, flower and cape, or You can build a database that matches ). As another example, the server 320 may store a phoneme network database. The database may be provided as a Regex conversion algorithm of the client 310 and may be used to generate a Regex search expression. The server 320 may compare a Regex search expression with text data separated by phoneme using a Regex search engine. The server 320 may derive a search result using a Regex search engine.
도 4는 일 실시 예에 따른 음소 기반 텍스트 검색 장치에 의해 출력되는 예시적인 검색 결과를 도시한다.4 illustrates exemplary search results output by a phoneme-based text search device according to an embodiment.
도 4를 참조하면, 일 실시 예에 따른 음소 기반 텍스트 검색 장치는 사용자로부터 검색어(410)를 수신하고, 수신된 검색어(410)를 검색식(420)으로 변환하고, 검색식(420)을 이용하여 검색 결과(430)를 획득할 수 있다.4, the phoneme-based text search device according to an embodiment receives a
예를 들어, 음소 기반 텍스트 검색 장치는 검색어(410) “어마님”을 획득할 수 있다. 검색어(410) “어마님”은 음소 단위로 분할될 수 있고, 검색어(410) 또는 검색식(420)에서 음가가 없는 음소 “ㅇ”이 제거될 수 있다. 상술한 처리를 통해 검색식(420) “ㅓ ㅁ ㅏ ㄴ ㅣ ㅁ”이 획득될 수 있다.For example, the phoneme-based text search device may acquire the
음소 기반 텍스트 검색 장치는 매칭된 검색식(431), 인덱스(432) 및 검색된 부분(433)을 포함하는 검색 결과(430)를 출력할 수 있다. 검색식(420)에 연산자 “|” 또는 와일드 카드가 포함되지 않았으므로, 매칭된 검색식(431)은 모두 검색식(420) “ㅓ ㅁ ㅏ ㄴ ㅣ ㅁ”과 동일할 수 있다. 인덱스(432)는 검색된 부분을 나타내는 정보(예: 행 또는 단어의 순번)일 수 있다. 검색된 부분(433)은 검색식(431)과 매칭된 부분 및 매칭된 부분과 인접한 부분을 함께 포함할 수 있다. 검색 결과(430)를 살펴보면, 분석 대상 문서에서 “어마님” 또는 “어마니미”가 포함된 부분이 검색된 것을 확인할 수 있다. 상술한 것과 같이, 음소 단위의 분리에 의해 연음 현상으로 인한 표기를 반영한 검색 결과가 도출될 수 있다.The phoneme-based text search apparatus may output a
도 5는 일 실시 예에 따른 음소 기반 텍스트 검색 장치에 의해 출력되는 예시적인 검색 결과를 도시한다.5 illustrates exemplary search results output by a phoneme-based text search device according to an embodiment.
도 5를 참조하면, 일 실시 예에 따른 음소 기반 텍스트 검색 장치는 사용자로부터 검색어(510)를 수신하고, 수신된 검색어(510)를 검색식(520)으로 변환하고, 검색식(520)을 이용하여 검색 결과(530)를 획득할 수 있다.Referring to FIG. 5, a phoneme-based text search apparatus according to an embodiment receives a
예를 들어, 음소 기반 텍스트 검색 장치는 검색어(510) “ㅺ”을 획득할 수 있다. 검색어(510) “ㅺ”은 음소 단위로 분할될 수 있다. 상술한 처리를 통해 검색식(520) “ㅅ ㄱ”이 획득될 수 있다.For example, the phoneme-based text search device may acquire the
음소 기반 텍스트 검색 장치는 매칭된 검색식(531), 인덱스(532) 및 검색된 부분(533)을 포함하는 검색 결과(530)를 출력할 수 있다. 검색식(520)에 연산자 “|” 또는 와일드 카드가 포함되지 않았으므로, 매칭된 검색식(531)은 모두 검색식(520) “ㅅ ㄱ”과 동일할 수 있다. 인덱스(532)는 검색된 부분을 나타내는 정보(예: 행 또는 단어의 순번)일 수 있다. 검색된 부분(533)은 검색식(531)과 매칭된 부분 및 매칭된 부분과 인접한 부분을 함께 포함할 수 있다. 검색 결과(530)를 살펴보면, 분석 대상 문서에서 “”, “ㅅ긔”, “부?긔”, “” 또는 “잇고”가 포함된 부분이 검색된 것을 확인할 수 있다. 상술한 것과 같이, 복자음의 분리에 의해 연음 현상 및 다양한 복자음의 표기를 반영한 검색 결과가 도출될 수 있다.The phoneme-based text search apparatus may output a
도 6은 일 실시 예에 따른 음소 기반 텍스트 검색 장치에 의해 출력되는 예시적인 검색 결과를 도시한다.6 illustrates an exemplary search result output by a phoneme-based text search device according to an embodiment.
도 6을 참조하면, 일 실시 예에 따른 음소 기반 텍스트 검색 장치는 사용자로부터 검색어(610)를 수신하고, 수신된 검색어(610)를 검색식(620)으로 변환하고, 검색식(620)을 이용하여 검색 결과(630)를 획득할 수 있다.6, a phoneme-based text search apparatus according to an embodiment receives a
예를 들어, 음소 기반 텍스트 검색 장치는 검색어(610) “부텨”를 획득할 수 있다. 검색어(610) “부텨”는 음소 단위로 분할될 수 있고, 복모음 “ㅕ”는 “ㅣㅓ”로 분할될 수 있다. 상술한 처리를 통해 검색식(620) “ㅂ ㅜ ㅌ ㅣ ㅓ”가 획득될 수 있다.For example, the phoneme-based text search device may acquire the
음소 기반 텍스트 검색 장치는 매칭된 검색식(631), 인덱스(632) 및 검색된 부분(633)을 포함하는 검색 결과(630)를 출력할 수 있다. 검색식(620)에 연산자 “|” 또는 와일드 카드가 포함되지 않았으므로, 매칭된 검색식(631)은 모두 검색식(620) “ㅂ ㅜ ㅌ ㅣ ㅓ”과 동일할 수 있다. 인덱스(632)는 검색된 부분을 나타내는 정보(예: 행 또는 단어의 순번)일 수 있다. 검색된 부분(633)은 검색식(631)과 매칭된 부분 및 매칭된 부분과 인접한 부분을 함께 포함할 수 있다. 검색 결과(630)를 살펴보면, 분석 대상 문서에서 “부톄”, “부?긔” 또는 “부텨와” 가 포함된 부분이 검색된 것을 확인할 수 있다. 상술한 것과 같이, 음소의 분리 및 복모음의 분리에 의해 검색어와 다른 자음(예: ㅅ) 또는 모음(예: ㅣ)이 결합된 표기를 반영한 검색 결과가 도출될 수 있다.The phoneme-based text search apparatus may output a
도 7은 일 실시 예에 따른 음소 기반 텍스트 검색 장치에 의해 출력되는 예시적인 검색 결과를 도시한다.7 illustrates exemplary search results output by a phoneme-based text search device according to an embodiment.
도 7을 참조하면, 일 실시 예에 따른 음소 기반 텍스트 검색 장치는 사용자로부터 검색어(710)를 수신하고, 수신된 검색어(710)를 검색식(720)으로 변환하고, 검색식(720)을 이용하여 검색 결과(730)를 획득할 수 있다.Referring to FIG. 7, a phoneme-based text search device according to an embodiment receives a
예를 들어, 음소 기반 텍스트 검색 장치는 검색어(710) “ㅁ(모음 와일드 카드)ㄴ”을 획득할 수 있다. “모음 와일드 카드”는 다양한 문자, 기호 또는 그들의 조합으로 미리 설정될 수 있다. 검색어(710) “ㅁ(모음 와일드 카드)ㄴ”는 음소 단위로 분할될 수 있고, 정규표현식으로 변환될 수 있다. 상술한 처리를 통해 검색식(720) “ㅁ)([ㅏ-ㅣㆍㆎ]+)(ㄴ)( 이 획득될 수 있다. 검색식(720)에서 “ㅁ”은 초성 “ㅁ” 또는 종성 “ㅁ” 양자에 대응될 수 있으며, “[ㅏ-ㅣㆍㆎ]+” 는 모든 단모음 및 복모음에 대응될 수 있고, “ㄴ”은 초성 “ㄴ” 또는 종성 “ㄴ” 양자에 대응될 수 있다.For example, the phoneme-based text search device may acquire the
음소 기반 텍스트 검색 장치는 매칭된 검색식(731), 인덱스(732) 및 검색된 부분(733)을 포함하는 검색 결과(730)를 출력할 수 있다. 검색식(720)에 와일드 카드가 포함되어 있으므로, 매칭된 검색식(731)은 다양한 모음 중 하나가 포함된 형태로 나타날 수 있다. 인덱스(732)는 검색된 부분을 나타내는 정보(예: 행 또는 단어의 순번)일 수 있다. 검색된 부분(733)은 검색식(731)과 매칭된 부분 및 매칭된 부분과 인접한 부분을 함께 포함할 수 있다. 검색 결과(730)를 살펴보면, 분석 대상 문서에서 “어마님”, “”, “즈믄”, “” 또는 “몬져”가 포함된 부분이 검색된 것을 확인할 수 있다. 상술한 것과 같이, 와일드 카드의 사용에 의해 옛한글에서 나타날 수 있는 다양한 표기 방법을 반영한 검색 결과가 도출될 수 있다.The phoneme-based text search apparatus may output a
도 8은 일 실시 예에 따른 음소 기반 텍스트 검색 장치에 의해 출력되는 예시적인 검색 결과를 도시한다.8 illustrates an exemplary search result output by a phoneme-based text search device according to an embodiment.
도 8을 참조하면, 일 실시 예에 따른 음소 기반 텍스트 검색 장치는 사용자로부터 검색어(810)를 수신하고, 수신된 검색어(810)를 검색식(820)으로 변환하고, 검색식(820)을 이용하여 검색 결과(830)를 획득할 수 있다.Referring to FIG. 8, a phoneme-based text search device according to an embodiment receives a
예를 들어, 음소 기반 텍스트 검색 장치는 검색어(810) “中”을 획득할 수 있다. 검색어(810) “中”으로부터 데이터베이스에 기초하여 “中”에 대응하는 복수의 음소 세트 “”, “” 및 “” 등이 획득될 수 있고, 한자 또는 음소 세트 중 하나를 포함하는 부분과 매칭되도록 구성된 정규표현식으로 변환될 수 있다. 상술한 처리를 통해 검색식(820) “中 | (ㅈ ㅜ ㆁ) | (ㄷ ㅣ ㅜ ㆁ) | (ㅈ ㅣ ㅜ ㆁ))”이 획득될 수 있다.For example, the phoneme-based text search device may acquire the
음소 기반 텍스트 검색 장치는 매칭된 검색식(831), 인덱스(832) 및 검색된 부분(833)을 포함하는 검색 결과(830)를 출력할 수 있다. 검색식(820)에 연산자 “|”가 포함되어 있으므로, 매칭된 검색식(831)은 “中”, “ㅈ ㅜ ㆁ”, “ㄷ ㅣ ㅜ ㆁ” 또는 “ㅈ ㅣ ㅜ ㆁ”으로 나타날 수 있다. 인덱스(832)는 검색된 부분을 나타내는 정보(예: 행 또는 단어의 순번)일 수 있다. 검색된 부분(833)은 검색식(831)과 매칭된 부분 및 매칭된 부분과 인접한 부분을 함께 포함할 수 있다. 검색 결과(830)를 살펴보면, 분석 대상 문서에서 “中”, “” 또는 “” 등이 포함된 부분이 검색된 것을 확인할 수 있다. 상술한 것과 같이, 한자 및 한자와 매칭되는 음소 세트를 이용함으로써 옛한글에서 나타날 수 있는 한자에 대한 다양한 표기 방법을 반영한 검색 결과가 도출될 수 있다.The phoneme-based text search apparatus may output a
도 9는 일 실시 예에 따른 음소 기반 텍스트 검색 장치에서 사용되는 예시적인 음소 네트워크를 시각적으로 도시한다.9 is a visual diagram of an exemplary phoneme network used in a phoneme-based text search device according to an embodiment.
도 9를 참조하면, 일 실시 예에 따른 음소 기반 텍스트 검색 장치는 음소 네트워크 모델을 이용할 수 있다. 음소 네트워크 모델은 한글 자음 및 모음을 포함할 수 있다. 음소 네트워크 모델에서 발음이 유사한 음소는 서로 인접하게 배치될 수 있고, 서로 연결될 수 있다. 예를 들어, 음소 “ㄱ”의 경우 음소 “ㅋ”, “ㅈ” 및 “ㆁ” 등과 연결될 수 있고 (지정된 거리 내에) 인접하게 배치될 수 있다. 음소 “ㅏ”의 경우 음소 “ㅣ” 및 “ㆍ”와 연결될 수 있고 (지정된 거리 내에) 인접하게 배치될 수 있다. 도 9에서 기호 “ø”는 자음 탈락 또는 모음 탈락을 의미할 수 있다. 음소 네트워크 모델에 의해 종성 대표음, 받침 변이, 비음화, 유음화, 구개음화, 유성음의 기재, 순경음의 기재, 자음 축약, 자음 탈락, 모음 탈락, 연음 규칙, 두음 법칙, 전설 모음화, 원순 모음화 및 이중 모음화 등과 같은 다양한 기재 방식, 음운 현상 및 발음 규칙을 반영하고, 모음 기본자와 초출자 사이의 관계를 반영하여 검색식을 생성할 수 있다. Referring to FIG. 9, a phoneme-based text search apparatus according to an embodiment may use a phoneme network model. The phoneme network model may include Hangul consonants and vowels. In the phoneme network model, phonemes having similar pronunciations may be disposed adjacent to each other and may be connected to each other. For example, the phoneme “a” may be connected to the phonemes “ㅋ”, “ㅈ”, and “ㆁ”, and may be placed adjacent to each other (within a specified distance). In the case of the phoneme “ㅏ”, it can be connected to the phonemes “ㅣ” and “ㆍ” and can be placed adjacent to each other (within a specified distance). In FIG. 9, the symbol “ø” may mean consonant dropout or vowel dropout. According to the phoneme network model, the final consonant, pendulum variation, nasalization, voicedization, palatalization, voiced sound description, pure consonant description, consonant abbreviation, consonant dropout, vowel dropout, linkage rule, two sound rule, legend vowelization, original vowelization, and Various description methods such as double vowelization, phonological phenomena, and pronunciation rules may be reflected, and a search expression may be generated by reflecting the relationship between the vowel base and the first contributor.
예를 들어, 검색어 “꽃”이 입력된 경우, 음소 기반 텍스트 검색 장치는 음소 네트워크 모델을 이용하여 검색식을 확장할 수 있다. 음소 기반 텍스트 검색 장치는 음소 네트워크 모델 내에서 종성 “ㅊ”과 인접한 음소인 “ㅈ”, “ㅅ”, “ㅌ” 및 “ㅋ”을 사용자에게 제공할 수 있다. 사용자는, 예를 들어, 출력된 4개의 음소 중 “ㅈ” 및 “ㅅ”을 선택할 수 있다. 음소 기반 텍스트 검색 장치는 사용자의 선택을 반영하여, 선택된 음소를 포함하는 검색식 “(ㄱ+)(ㅗ)([ㅈㅊㅅ]+)”를 획득할 수 있다. 상술한 검색식을 이용하여, 검색어 “꽃”이 입력된 경우, 검색 대상 문서에서, “꽃”, “곳”, “고지” 및 “” 등과 같은 부분을 검색할 수 있다. For example, when a search word “flower” is input, the phoneme-based text search apparatus may expand the search expression using the phoneme network model. The phoneme-based text search apparatus may provide the user with the phonemes “ㅈ”, “ㅅ”, “ㅌ” and “ㅋ” that are adjacent to the finality “ㅊ” in the phoneme network model. The user, for example, can select “ㅈ” and “ㅅ” among the four output phonemes. The phoneme-based text search apparatus may reflect the user's selection and obtain a search expression “(a+)(ㅗ)([ㅈㅊㅅ]+)” including the selected phoneme. When the search word “flower” is entered using the above-described search formula, in the search target document, “flower”, “where”, “notice” and “ You can search for parts such as ”.
다른 예를 들면, 검색어 “마슬”이 입력된 경우, 음소 기반 텍스트 검색 장치는 음소 네트워크 모델을 이용하여 검색식을 확장할 수 있다. 음소 기반 텍스트 검색 장치는 음소 네트워크 모델 내에서 첫 번째 중성 “ㅏ”과 인접한 음소인 “ㅣ” 및 “ㆍ”을 사용자에게 제공할 수 있다. 사용자는 출력된 2개의 음소 중 “ㆍ”을 선택할 수 있다. 음소 기반 텍스트 검색 장치는 음소 네트워크 모델 내에서 두 번째 초성 “ㅅ”과 인접한 음소인 “ㅎ”, “ㄷ”, “ㅊ”, “ㅌ”, “ㅿ” 및 “ø”(자음 탈락을 의미)를 사용자에게 제공할 수 있다. 사용자는 출력된 6개의 음소 중 “ㅿ” 및 “ø”를 선택할 수 있다. 음소 기반 텍스트 검색 장치는 사용자의 선택을 반영하여, 선택된 음소를 포함하는 검색식 “(ㅁ+)(ㅏ)([ㅅㅿ]?)|([ㅡㆍㅜ])(ㄹ+)”를 획득할 수 있다. 검색식에서 “?”는 0개 이상을 의미할 수 있다. 상술한 검색식을 이용하여, 검색어 “마슬”이 입력된 경우, 검색 대상 문서에서, “마을”, “”, “”, “”, “” 및 “마실” 등과 같은 부분을 검색할 수 있다.For another example, when the search word “masul” is input, the phoneme-based text search device may expand the search expression using the phoneme network model. The phoneme-based text search apparatus may provide the user with the phonemes “I” and “ㆍ” adjacent to the first neutral “ㅏ” in the phoneme network model. The user can select “ㆍ” among the two displayed phonemes. The phoneme-based text search device is the phoneme "ㅎ", "c", "ㅊ", "ㅌ", "ㅿ" and "ø" (meaning consonant dropout) adjacent to the second initial "ㅅ" in the phoneme network model. Can be provided to the user. The user can select “ㅿ” and “ø” among the 6 displayed phonemes. The phoneme-based text search device reflects the user's selection and obtains the search formula “(ㅁ+)(ㅏ)([ㅅㅿ]?)|([ㅡㆍㅜ])(ㄹ+)” including the selected phoneme. can do. In the search expression, “?” can mean zero or more. Using the above-described search formula, when the search word “masul” is entered, in the search target document, “town”, “ ”, “ ”, “ ”, “ You can search for parts such as "" and "drink".
또 다른 예를 들면, 검색어 “”이 입력된 경우, 음소 기반 텍스트 검색 장치는 음소 네트워크 모델을 이용하여 검색식을 확장할 수 있다. 음소 기반 텍스트 검색 장치는 음소 네트워크 모델 내에서 종성 “ㅸ”과 인접한 음소인 “ø”, “ㅂ”, “ㅗ” 및 “ㅜ”을 사용자에게 제공할 수 있다. 사용자는, 예를 들어, 출력된 4개의 음소 중 “ㅂ”, “ㅗ” 및 “ㅜ”을 선택할 수 있다. 음소 기반 텍스트 검색 장치는 사용자의 선택을 반영하여, 선택된 음소를 포함하는 검색식 “(ㄷ+)(ㅗ)([ㅸㅂ]+|[ㅗㅜ])”를 획득할 수 있다. 상술한 검색식을 이용하여, 검색어 “”이 입력된 경우, 검색 대상 문서에서, “”, “돕” 및 “도와” 등과 같은 부분을 검색할 수 있다.Another example, the search term “ When "" is inputted, the phoneme-based text search device may expand the search expression using the phoneme network model. The phoneme-based text search apparatus may provide the user with the phonemes “ø”, “ㅂ”, “ㅗ”, and “TT” adjacent to the finality “ㅸ” in the phoneme network model. The user, for example, can select “ㅂ”, “ㅗ” and “TT” among the four output phonemes. The phoneme-based text search apparatus may reflect the user's selection and obtain a search expression “(C+)(ㅗ)([ㅸㅂ]+|[ㅗㅜ])” including the selected phoneme. Using the above-described search formula, the search word “ If ”is entered, in the document to be searched,“ You can search for parts such as "", "help" and "help".
도 9의 음소 네트워크는 예시적인 것으로, 도시된 형태에 제한되지 않고, 다양한 형태로 이루어질 수 있다.The phoneme network of FIG. 9 is exemplary, and is not limited to the illustrated form, and may be formed in various forms.
도 10은 일 실시 예에 따른 음소 기반 텍스트 검색 방법을 설명하기 위한 흐름도이다.10 is a flowchart illustrating a phoneme-based text search method according to an exemplary embodiment.
이하에서는 도 2의 사용자 단말(210) 또는 서버(220)가 도 10의 프로세스를 수행하는 것을 가정한다. 또한, 도 10의 설명에서, 사용자 단말(210) 또는 서버(220)에 의해 수행되는 것으로 기술된 동작은 사용자 단말(210)의 프로세서(213) 또는 서버(220)의 프로세서(223)에 의해 제어되는 것으로 이해될 수 있다.Hereinafter, it is assumed that the user terminal 210 or the server 220 of FIG. 2 performs the process of FIG. 10. In addition, in the description of FIG. 10, the operation described as being performed by the user terminal 210 or the server 220 is controlled by the
도 10을 참조하면, 단계 1010에서, 사용자 단말(210)은 검색 대상 문서에 대한 검색어를 획득할 수 있다. 단계 1020에서, 사용자 단말(210)은 검색어를 하나 이상의 음소를 포함하는 검색식으로 변환할 수 있다. 단계 1030에서, 사용자 단말(210)은 검색식을 서버(220)로 제공할 수 있다. 단계 1040에서, 서버(220)는 사용자 단말(210)로부터 검색식을 획득할 수 있다. 단계 1050에서, 서버(220)는 검색 대상 문서에 포함된 텍스트를 복수의 음소로 분할할 수 있다. 단계 1060에서, 서버(220)는 분할된 복수의 음소 중 검색식과 매칭되는 부분을 검색할 수 있다.Referring to FIG. 10, in step 1010, the user terminal 210 may acquire a search word for a search target document. In step 1020, the user terminal 210 may convert the search word into a search formula including one or more phonemes. In step 1030, the user terminal 210 may provide a search formula to the server 220. In step 1040, the server 220 may obtain a search expression from the user terminal 210. In step 1050, the server 220 may divide the text included in the search target document into a plurality of phonemes. In step 1060, the server 220 may search for a portion of the divided phonemes that matches the search expression.
도 10에서는, 단계 1010 내지 1030이 사용자 단말(210)에 의해 수행되고, 단계 1040 내지 1060이 서버(220)에 의해 수행되는 것으로 도시되었으나, 이에 제한되지 않고, 서버(220)에 의해 수행되는 동작 중 적어도 일부가 사용자 단말(210)에 의해 수행될 수도 있고, 사용자 단말(210)에 의해 수행되는 동작 중 적어도 일부가 서버(220)에 의해 수행될 수도 있다. 예를 들어, 단계 1020은 서버(220)에 의해 수행될 수 있고, 이 경우 단계 1030 및 1040은 생략되고, 서버(220)가 사용자 단말(210)로부터 검색어를 획득하는 단계가 추가될 수 있다. 다른 예를 들면, 단계 1050 및 단계 1060은 사용자 단말(210)에 의해 수행될 수 있고, 이 경우 단계 1030 및 1040은 생략될 수 있다.In FIG. 10, steps 1010 to 1030 are performed by the user terminal 210, and steps 1040 to 1060 are illustrated as being performed by the server 220, but are not limited thereto, and operations performed by the server 220 At least some of them may be performed by the user terminal 210, and at least some of the operations performed by the user terminal 210 may be performed by the server 220. For example, step 1020 may be performed by the server 220. In this case, steps 1030 and 1040 may be omitted, and a step of obtaining a search word from the user terminal 210 by the server 220 may be added. For another example, steps 1050 and 1060 may be performed by the user terminal 210, and in this case, steps 1030 and 1040 may be omitted.
본 문서의 실시 예들 및 이에 사용된 용어들은 본 문서에 기재된 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 해당 실시 예의 다양한 변경, 균등물, 및/또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및/또는 B 중 적어도 하나", "A, B 또는 C" 또는 "A, B 및/또는 C 중 적어도 하나" 등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. "제1," "제2," "첫째," 또는 "둘째," 등의 표현들은 해당 구성요소들을, 순서 또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 어떤 구성요소가 다른 구성요소에 "(기능적으로 또는 통신적으로) 연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소를 통하여 연결될 수 있다.Embodiments of the present document and terms used therein are not intended to limit the technology described in this document to a specific embodiment, and should be understood to include various modifications, equivalents, and/or substitutes of the corresponding embodiment. In connection with the description of the drawings, similar reference numerals may be used for similar elements. Singular expressions may include plural expressions unless the context clearly indicates otherwise. In this document, expressions such as "A or B", "at least one of A and/or B", "A, B or C" or "at least one of A, B and/or C" are all of the items listed together. It can include possible combinations. Expressions such as "first," "second," "first," or "second," can modify the corresponding elements regardless of their order or importance, and to distinguish one element from another It is only used and does not limit the components. When a component is referred to as being "connected (functionally or communicatively)" or "connected" to another component, the component is directly connected to the other component, or It can be connected through.
본 문서에서, "~하도록 설정된(adapted to or configured to)"은 상황에 따라, 예를 들면, 하드웨어적 또는 소프트웨어적으로 "~에 적합한," "~하는 능력을 가지는," "~하도록 변경된," "~하도록 만들어진," "~를 할 수 있는," 또는 "~하도록 설계된"과 상호 호환적으로(interchangeably) 사용될 수 있다. 어떤 상황에서는, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들면, 문구 "A, B, 및 C를 수행하도록 설정된 (또는 구성된) 프로세서"는 해당 동작들을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치에 저장된 하나 이상의 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(예: CPU)를 의미할 수 있다.In this document, "adapted to or configured to" is changed to "adapted to or configured to" according to the situation, for example, in hardware or software, "suitable for," "having the ability to," "~," It can be used interchangeably with ""made to," "can do," or "designed to." In some situations, the expression "a device configured to" may mean that the device "can" along with other devices or parts. For example, the phrase “a processor configured (or configured) to perform A, B, and C” means a dedicated processor (eg, an embedded processor) for performing the corresponding operations, or by executing one or more programs stored in a memory device, It may mean a general-purpose processor (eg, CPU) capable of performing the corresponding operations.
본 문서에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어(firmware)로 구성된 유닛(unit)을 포함하며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로 등의 용어와 상호 호환적으로 사용될 수 있다. "모듈"은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수 있다. "모듈"은 기계적으로 또는 전자적으로 구현될 수 있으며, 예를 들면, 어떤 동작들을 수행하는, 알려졌거나 앞으로 개발될, ASIC(application-specific integrated circuit) 칩, FPGAs(field-programmable gate arrays), 또는 프로그램 가능 논리 장치를 포함할 수 있다.The term "module" used in this document includes a unit composed of hardware, software, or firmware, and is used interchangeably with terms such as, for example, logic, logic blocks, parts, or circuits. I can. The "module" may be an integrally configured component or a minimum unit or a part of which performs one or more functions. "Modules" can be implemented mechanically or electronically, for example, known or future development, application-specific integrated circuit (ASIC) chips, field-programmable gate arrays (FPGAs), or It may include a programmable logic device.
일 실시 예에 따른 장치(예: 모듈들 또는 그 기능들) 또는 방법(예: 동작들)의 적어도 일부는 프로그램 모듈의 형태로 컴퓨터로 판독 가능한 저장 매체에 저장된 명령어로 구현될 수 있다. 상기 명령어가 프로세서에 의해 실행될 경우, 프로세서가 상기 명령어에 해당하는 기능을 수행할 수 있다.At least a part of an apparatus (eg, modules or functions thereof) or a method (eg, operations) according to an exemplary embodiment may be implemented as a command stored in a computer-readable storage medium in the form of a program module. When the command is executed by a processor, the processor may perform a function corresponding to the command.
일 실시 예에 따른 구성 요소(예: 모듈 또는 프로그램 모듈) 각각은 단수 또는 복수의 개체로 구성될 수 있으며, 전술한 해당 서브 구성 요소들 중 일부 서브 구성 요소가 생략되거나, 또는 다른 서브 구성 요소를 더 포함할 수 있다. 대체적으로 또는 추가적으로, 일부 구성 요소들(예: 모듈 또는 프로그램 모듈)은 하나의 개체로 통합되어, 통합되기 이전의 각각의 해당 구성 요소에 의해 수행되는 기능을 동일 또는 유사하게 수행할 수 있다. 일 실시 예에 따른 모듈, 프로그램 모듈 또는 다른 구성 요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱(heuristic)하게 실행되거나, 적어도 일부 동작이 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.Each of the constituent elements (eg, a module or a program module) according to an embodiment may be composed of a singular or a plurality of objects, and some sub-elements of the above-described sub-elements are omitted, or other sub-elements are omitted. It may contain more. Alternatively or additionally, some constituent elements (eg, a module or a program module) may be integrated into a single entity to perform the same or similar functions performed by each corresponding constituent element prior to the consolidation. Operations performed by a module, program module, or other component according to an embodiment are sequentially, parallel, repetitively or heuristically executed, or at least some operations are executed in a different order, omitted, or other operations Can be added.
Claims (13)
검색 대상 문서에 대한 검색어를 획득하는 단계;
상기 검색어를 음소 단위로 분할함으로써 하나 이상의 음소를 포함하는 검색식으로 변환하는 단계;
상기 검색 대상 문서에 포함된 텍스트를 복수의 음소로 분할하는 단계; 및
상기 분할된 복수의 음소 중 상기 검색식과 매칭되는 부분을 검색하는 단계를 포함하는 것을 특징으로 하는, 방법.In the phoneme-based text search method,
Obtaining a search word for a search target document;
Dividing the search word into phoneme units and converting it into a search expression including one or more phonemes;
Dividing the text included in the search target document into a plurality of phonemes; And
And searching for a portion of the divided plurality of phonemes that matches the search expression.
상기 분할하는 단계는,
상기 텍스트를 조합형 유니코드로 변환하는 단계; 및
상기 조합형 유니코드를 음소 단위 코드로 분할하는 단계를 포함하는 것을 특징으로 하는, 방법.The method of claim 1,
The dividing step,
Converting the text into combinatorial Unicode; And
And dividing the combined Unicode code into phoneme unit codes.
상기 분할하는 단계는,
상기 텍스트에 포함된 복자음 음소 및 복모음 음소를 단자음 음소 및 단모음 음소로 분리하는 단계를 포함하는 것을 특징으로 하는, 방법.The method of claim 1,
The dividing step,
The method comprising the step of separating the complex consonant phoneme and the complex vowel phoneme included in the text into a monophonic phoneme and a short vowel phoneme.
상기 분할하는 단계는,
상기 텍스트 또는 상기 분할된 복수의 음소에서 음가가 없는 음소를 제거하는 단계를 포함하는 것을 특징으로 하는, 방법.The method of claim 1,
The dividing step,
And removing a phoneme without a phoneme from the text or the divided plurality of phonemes.
상기 검색된 부분 또는 상기 검색된 부분에 대응하는 인덱스를 출력하는 단계를 더 포함하는 것을 특징으로 하는, 방법.The method of claim 1,
And outputting the searched part or an index corresponding to the searched part.
상기 변환하는 단계는,
상기 검색어를 정규표현식(Regex)으로 이루어진 상기 검색식으로 변환하는 단계를 포함하는 것을 특징으로 하는, 방법.The method of claim 1,
The converting step,
And converting the search word into the search expression consisting of a regular expression (Regex).
상기 변환하는 단계는,
상기 검색어 또는 상기 검색식에 포함된 복자음 음소 및 복모음 음소를 단자음 음소 및 단모음 음소로 분리하는 단계를 포함하는 것을 특징으로 하는, 방법.The method of claim 1,
The converting step,
And separating the complex consonant phoneme and the complex vowel phoneme included in the search word or the search formula into a short vowel phoneme and a short vowel phoneme.
상기 변환하는 단계는,
상기 검색어 또는 상기 검색식에서 음가가 없는 음소를 제거하는 단계를 포함하는 것을 특징으로 하는, 방법.The method of claim 1,
The converting step,
And removing a phoneme without a phonetic value from the search word or the search formula.
상기 검색어 또는 상기 검색식은 음소 단위의 와일드 카드를 포함하는 것을 특징으로 하는, 방법.The method of claim 1,
The search word or the search expression, characterized in that it comprises a wild card in units of phonemes.
상기 변환하는 단계는,
상기 검색어에 한자가 포함된 경우, 미리 저장된 데이터베이스에 기초하여 상기 한자에 대응하는 하나 이상의 음소 세트를 획득하는 단계; 및
상기 검색어를 상기 한자 및 상기 하나 이상의 음소 세트를 포함하는 상기 검색식으로 변환하는 단계를 포함하고,
상기 검색식은 상기 한자를 포함하는 부분 또는 상기 하나 이상의 음소 세트 중 하나를 포함하는 부분과 매칭되도록 구성된 것을 특징으로 하는, 방법.The method of claim 1,
The converting step,
If the search word contains Chinese characters, obtaining one or more phoneme sets corresponding to the Chinese characters based on a previously stored database; And
Converting the search word into the search expression including the Chinese character and the one or more phoneme sets,
Wherein the search expression is configured to match a portion containing the Chinese character or a portion containing one of the one or more phoneme sets.
상기 변환하는 단계는,
미리 저장된 음소 네트워크 정보에 기초하여 상기 검색어에 포함된 음소와 연관된 다른 음소를 획득하는 단계; 및
상기 검색어를 상기 검색어에 포함된 음소 및 상기 다른 음소를 포함하는 상기 검색식으로 변환하는 단계를 포함하고,
상기 검색식은 상기 분할된 복수의 음소 중 상기 음소 및 상기 다른 음소 중 하나를 포함하는 부분과 매칭되도록 구성된 것을 특징으로 하는, 방법.The method of claim 1,
The converting step,
Obtaining another phoneme associated with the phoneme included in the search word based on the phoneme network information stored in advance; And
Converting the search word into the search formula including the phoneme included in the search word and the other phoneme,
Wherein the search formula is configured to match a portion including one of the phoneme and the other phoneme among the divided plurality of phonemes.
외부와 통신하도록 구성된 통신 회로;
메모리; 및
상기 통신 회로 및 메모리와 전기적으로 연결된 프로세서를 포함하고,
상기 프로세서는,
검색 대상 문서에 대한 검색어를 획득하고,
상기 검색어를 하나 이상의 음소를 포함하는 검색식으로 변환하고,
상기 통신 회로를 이용하여 상기 검색식을 외부 장치로 제공하도록 설정된 것을 특징으로 하는, 장치.In the phoneme-based text search device,
A communication circuit configured to communicate with the outside;
Memory; And
A processor electrically connected to the communication circuit and memory,
The processor,
Acquire a search word for the document to be searched,
Converting the search term into a search expression including one or more phonemes,
The apparatus, characterized in that it is set to provide the search formula to an external device using the communication circuit.
외부와 통신하도록 구성된 통신 회로;
메모리; 및
상기 통신 회로 및 메모리와 전기적으로 연결된 프로세서를 포함하고,
상기 프로세서는,
외부 장치로부터 상기 통신 회로를 이용하여 검색 대상 문서에 대한 검색어로부터 변환된 하나 이상의 음소를 포함하는 검색식을 획득하고,
상기 검색 대상 문서에 포함된 텍스트를 복수의 음소로 분할하고,
상기 분할된 복수의 음소 중 상기 검색식과 매칭되는 부분을 검색하도록 설정된 것을 특징으로 하는, 장치.In the phoneme-based text search device,
A communication circuit configured to communicate with the outside;
Memory; And
A processor electrically connected to the communication circuit and memory,
The processor,
Obtaining a search formula including one or more phonemes converted from a search word for a search target document using the communication circuit from an external device,
Dividing the text included in the search target document into a plurality of phonemes,
The apparatus, characterized in that the device is configured to search for a portion matching the search expression among the divided plurality of phonemes.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190130954A KR102278288B1 (en) | 2019-10-21 | 2019-10-21 | Apparatus and method for searching text based on phoneme |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190130954A KR102278288B1 (en) | 2019-10-21 | 2019-10-21 | Apparatus and method for searching text based on phoneme |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210047192A true KR20210047192A (en) | 2021-04-29 |
KR102278288B1 KR102278288B1 (en) | 2021-07-16 |
Family
ID=75728250
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190130954A KR102278288B1 (en) | 2019-10-21 | 2019-10-21 | Apparatus and method for searching text based on phoneme |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102278288B1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050032759A (en) * | 2003-10-02 | 2005-04-08 | 한국전자통신연구원 | Automatic expansion method and device for foreign language transliteration |
KR20070036293A (en) * | 2005-09-29 | 2007-04-03 | 엔에이치엔(주) | Method for searching string by seperating phneme of characters, method for searching web document and storage medium storing execution program for that method |
KR20160101604A (en) * | 2015-02-17 | 2016-08-25 | 삼성전자주식회사 | Device for Determining Sameness Between Difference Languages and Method thereof |
-
2019
- 2019-10-21 KR KR1020190130954A patent/KR102278288B1/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050032759A (en) * | 2003-10-02 | 2005-04-08 | 한국전자통신연구원 | Automatic expansion method and device for foreign language transliteration |
KR20070036293A (en) * | 2005-09-29 | 2007-04-03 | 엔에이치엔(주) | Method for searching string by seperating phneme of characters, method for searching web document and storage medium storing execution program for that method |
KR20160101604A (en) * | 2015-02-17 | 2016-08-25 | 삼성전자주식회사 | Device for Determining Sameness Between Difference Languages and Method thereof |
Non-Patent Citations (1)
Title |
---|
이명훈 외 4인, 간판영상에서 한글 인식 성능향상을 위한 가중치 기반 음소 단위 분할 교정, 한국콘텐츠학회논문지 제12권 제2호, 2012.02. 105-115페이지. 1부.* * |
Also Published As
Publication number | Publication date |
---|---|
KR102278288B1 (en) | 2021-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4570509B2 (en) | Reading generation device, reading generation method, and computer program | |
JP2001505322A (en) | Method and system for unambiguous Braille input and conversion | |
CN107112007B (en) | Speech recognition apparatus and speech recognition method | |
RU2320026C2 (en) | Method for transforming a letter to a sound for synthesized pronunciation of a text segment | |
CN111710328A (en) | Method, device and medium for selecting training samples of voice recognition model | |
JP7102710B2 (en) | Information generation program, word extraction program, information processing device, information generation method and word extraction method | |
US10614065B2 (en) | Controlling search execution time for voice input facility searching | |
KR102278288B1 (en) | Apparatus and method for searching text based on phoneme | |
JP2008059389A (en) | Vocabulary candidate output system, vocabulary candidate output method, and vocabulary candidate output program | |
JP6619932B2 (en) | Morphological analyzer and program | |
JP6998017B2 (en) | Speech synthesis data generator, speech synthesis data generation method and speech synthesis system | |
KR20130122437A (en) | Method and system for converting the english to hangul | |
KR101982490B1 (en) | Method for searching keywords based on character data conversion and apparatus thereof | |
JP2002207728A (en) | Phonogram generator, and recording medium recorded with program for realizing the same | |
JP6805431B2 (en) | Voice recognition device | |
JP2009199434A (en) | Alphabetical character string/japanese pronunciation conversion apparatus and alphabetical character string/japanese pronunciation conversion program | |
KR100342785B1 (en) | Method for measuring global distance between character strings of the korean language | |
KR20050023584A (en) | Chinese character input system and its method | |
JP3758241B2 (en) | Voice information retrieval device | |
KR101777141B1 (en) | Apparatus and method for inputting chinese and foreign languages based on hun min jeong eum using korean input keyboard | |
CN113077792B (en) | Buddhism subject term identification method, device, equipment and storage medium | |
JPH0969109A (en) | Method and device for retrieving document | |
JPS61184683A (en) | Recognition-result selecting system | |
JP5533576B2 (en) | Information creating apparatus, information creating method and program | |
JP6640788B2 (en) | Language conversion program and language conversion device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |