KR100998291B1 - Method and apparatus for structuralize keyword string and searching keyword string - Google Patents
Method and apparatus for structuralize keyword string and searching keyword string Download PDFInfo
- Publication number
- KR100998291B1 KR100998291B1 KR1020090001058A KR20090001058A KR100998291B1 KR 100998291 B1 KR100998291 B1 KR 100998291B1 KR 1020090001058 A KR1020090001058 A KR 1020090001058A KR 20090001058 A KR20090001058 A KR 20090001058A KR 100998291 B1 KR100998291 B1 KR 100998291B1
- Authority
- KR
- South Korea
- Prior art keywords
- keyword
- character
- data
- information
- substructured
- Prior art date
Links
Images
Landscapes
- Engineering & Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
Abstract
본 발명은 키워드 관리 서버를 이용하여 키워드 스트링을 구조화하고, 구조화된 키워드 스트링을 검출하는 방법 및 장치에 관한 것으로서, 키워드 관리 서버에 입력된 구조화 대상이 되는 키워드 스트링을 구조화하여 저장한 후, 키워드 관리 서버에 입력된 문장에서 상기 구조화된 키워드 스트링을 검출할 수 있는 방법 및 장치를 제공한다. The present invention relates to a method and apparatus for structuring a keyword string using a keyword management server and detecting a structured keyword string. The present invention relates to a keyword management server after structuring and storing a keyword string to be structured. Provided are a method and an apparatus capable of detecting the structured keyword string in a sentence input to a server.
키워드, 구조화, 검출, 캐릭터, 구조화 데이터 Keyword, structured, detected, character, structured data
Description
본 발명은 키워드 관리 서버를 이용하여 키워드 스트링을 구조화하고 검출하는 방법 및 장치에 관한 것으로서, 보다 상세하게는 키워드 관리 서버에 입력된 구조화 대상이 되는 키워드 스트링을 구조화하여 저장한 후, 키워드 관리 서버에 입력된 문장에서 상기 구조화된 키워드 스트링을 신속하고 정확하게 검출할 수 있는 방법 및 장치에 관한 것이다. The present invention relates to a method and apparatus for structuring and detecting a keyword string using a keyword management server. More particularly, the present invention relates to a keyword management server after structuring and storing a keyword string to be structured. A method and apparatus for quickly and accurately detecting the structured keyword string in an input sentence.
문장, 문서 또는 데이터 내에서 특정 키워드를 검출하는 방법과 관련해서는 다양한 종래의 기술이 존재한다. 이러한 키워드 검출 방법은 이동 통신망 간의 문자 통신, 인터넷 포탈 사이트 등에서의 검색 엔진 등 다양한 분야에 활용될 수 있다. 이러한 키워드 검출과 관련된 종래의 기술을 살펴보면 다음과 같다. Various conventional techniques exist with regard to the method of detecting a particular keyword in a sentence, document or data. The keyword detection method may be used in various fields such as text communication between mobile communication networks and search engines in Internet portal sites. Looking at the prior art associated with such a keyword detection as follows.
1. 유사어 추출 및 문서 검색을 위한 방법 및 시스템(출원번호 10-2000- 44283, 이하 선행기술 1이라 한다). 선행기술 1은 각 단어를 제1 및 제2 특징 벡터로 정량화하여 이를 데이터베이스에 저장하고, 검색 대상 문서 또는 문자열을 벡터화하여 저장된 단어 벡터와 비교하는 것으로 유사어를 추출하는 것을 주요 특징으로 하는 발명이다. 그러나 이러한 문자열 벡터화는 객관적인 벡터화 기준이 없는 경우 주관적일 수 있다는 문제점이 존재하며 또한 벡터화 자체에 많은 시간이 소요되는 문제점이 존재하였다. 1. Method and system for synonym extraction and document retrieval (application number 10-2000-44283, hereinafter referred to as prior art 1).
2. 정보 검색 방법과 정보 검색 장치(출원번호 10-2000-41311, 이하 선행기술 2라 한다). 선행기술 2는 검색 누락 및 노이즈 감소를 위한 자연 언어 시스템의 전처리를 그 목적으로 하고 있으나, 데이터 기억 수단, 텍스트 분할 수단 및 단어 분할 텍스트 등의 전처리 절차가 복잡하다는 문제점이 존재하였다. 2. Information retrieval method and information retrieval apparatus (application number 10-2000-41311, hereinafter referred to as prior art 2). Prior art 2 aims at preprocessing of a natural language system for retrieval omission and noise reduction, but there is a problem in that a preprocessing procedure such as data storage means, text segmentation means and word segmentation text is complicated.
3. 키워드와 일치하는 문자열을 검색하기 위한 정보 검색 장치(출원번호 10-1997-9211, 이하 선행기술 3이라 한다). 선행기술 3은 문자 형태 발생순으로 인덱싱되고 패턴으로 전환되어 고속 검색이 가능한 것을 특징으로 하고 있으나, 이전처리 자체가 일련의 알고리즘에 의해 수행되므로 데이터 검출시의 효율이 낮다는 문제점이 존재하였다. 3. An information retrieval apparatus for searching for a character string matching a keyword (application number 10-1997-9211, hereinafter referred to as prior art 3). Prior art 3 is characterized in that it is indexed in the order of the occurrence of the character form, and converted into a pattern, so that a high-speed search is possible.
4. 구문 분석에 의거한 자연어 처리 기술 및 그 응용(출원번호 10-2000-58702, 이하 선행기술 4라 한다). 선행기술 4는 구문 분석에 의거한 한국어 자연어 처리 기술로 단어 상호간 집합적 종속 관계를 파악하는 형태로 자연어 처리에 목적을 두고 있다. 그러나, 선행기술 4는 유사어/품사 취급 등에 상당한 동작이 소요되므로 동작 자체의 효율성이 떨어지는 문제점이 존재하였다. 4. Natural language processing technology and its application based on parsing (application number 10-2000-58702, hereinafter referred to as prior art 4). Prior art 4 is a Korean natural language processing technique based on syntax analysis, and aims at natural language processing in the form of grasping a collective dependency relationship between words. However, the prior art 4 has a problem that the efficiency of the operation itself is inferior because it takes a considerable operation, such as handling similar words / parts of speech.
상술한 바와 같은 선행 기술들에 나타난 검색 방법은 자연어 처리 및 패턴 인식에 목적을 두는 것이므로, 검색 자체의 효율성이 떨어지는 문제점 및 검색 자체에 대한 전처리에 있어서도 많은 동작 과정이 필요하다는 문제점이 존재하였으므로, 이러한 문제점을 해결할 수 있는 키워드 구조화 방법 및 검색 방법이 요구된다 할 수 있겠다. Since the retrieval method shown in the above-described prior arts is for natural language processing and pattern recognition, there have been problems in that the efficiency of the search itself is inferior and many operation processes are required in preprocessing for the search itself. There is a need for a keyword structuring method and a search method that can solve the problem.
본 발명은 상기와 같은 문제점을 해결하기 위해 안출된 것으로서, 키워드 관리 서버에서 구조화 대상으로서 입력되는 키워드 스트링을 구조화할 수 있는 방법 및 장치를 제공하는 것을 목적으로 한다. The present invention has been made to solve the above problems, and an object of the present invention is to provide a method and apparatus for structuring a keyword string input as a structured object from a keyword management server.
또한, 본 발명은 키워드 관리 서버에 입력된 소정의 문장에서 키워드를 검출하는 경우, 각각의 캐릭터마다 대응하는 코드값 정보를 이용하여 키워드를 직접 검출함으로써 더욱 정확하고 효율적인 키워드 검출 방법 및 장치를 제공하는 것을 또 다른 목적으로 한다. In addition, the present invention provides a more accurate and efficient keyword detection method and apparatus by directly detecting a keyword using code value information corresponding to each character when the keyword is detected in a predetermined sentence input to the keyword management server. For another purpose.
또한, 본 발명은 키워드 검출시 각각의 캐릭터마다 대응되는 코드값 정보를 이용하여 해당 키워드로의 직접 접근이 가능하여, 이동통신망을 이용한 문자 서비스 이용시나 데이터 통신시에 해당 데이터에 포함되는 키워드 검출을 신속하고 정확하게 할 수 있는 방법 및 장치를 제공하는 것을 또 다른 목적으로 한다. In addition, the present invention can directly access the keyword using the code value information corresponding to each character when the keyword is detected, it is possible to detect the keyword included in the data when using the text service or data communication using the mobile communication network It is another object to provide a method and apparatus that can be quickly and accurately.
상기한 바와 같은 목적을 달성하기 위한 본 발명은, 키워드 관리 서버에서 구조화 대상으로서 입력되는 키워드 스트링을 구조화하는 방법에 있어서, 상기 구조화 대상으로서 입력되는 키워드 스트링을 구성하는 적어도 하나 이상의 캐릭터들 중에서 첫 번째 캐릭터를 인식하는 제1 단계; 키워드 스트링을 구성할 수 있는 모든 캐릭터들 각각에 대하여 미리 설정된 키워드 관련 정보를 포함하여 구성된 제1 구조화 데이터에서 상기 인식한 첫 번째 캐릭터에 상응하여 설정된 키워드 관련 정보를 검색하는 제2 단계-여기서, 상기 키워드 관련 정보는 상기 모든 캐릭터들 각각에 대하여 설정된 캐릭터 대응 코드값 정보, 캐릭터 대응 정보 및 하위 구조화 데이터의 주소 정보를 포함함-; 상기 검색된 키워드 관련 정보에 포함된 캐릭터 대응 정보를 갱신하는 제3 단계; 및 상기 키워드 스트링이 둘 이상의 캐릭터로 구성된 경우, 직전 단계에서 갱신한 캐릭터 대응 정보에 상응하는 캐릭터의 키워드 관련 정보에 포함된 하위 구조화 데이터의 주소 정보에 의해 하위 구조화 데이터가 저장된 위치 정보를 파악하는 a) 단계-여기서, 상기 하위 구조화 데이터의 주소 정보가 존재하지 않는(NULL) 경우 신규 하위 구조화 데이터를 생성하고, 생성된 신규 하위 구조화 데이터의 위치 정보를 상기 하위 구조화 데이터의 주소 정보에 저장함-와, 직전 단계에서 갱신한 캐릭터 대응 정보에 상응하는 캐릭터의 다음 순서 캐릭터에 상응하여 설정된 키워드 관련 정보를 상기 파악된 하위 구조화 데이터에서 검색하고, 상기 검색된 키워드 관련 정보에 포함된 캐릭터 대응 정보를 갱신하는 b) 단계를 상기 키워드 스트링의 마지막 캐릭터까지 반복하는 제4 단계를 포함하는 키워드 스트링 구조화 방법을 제공한다. According to an aspect of the present invention, there is provided a method of structuring a keyword string input as a structured object in a keyword management server, the method comprising: first of at least one character constituting the keyword string input as the structured object; A first step of recognizing a character; A second step of searching for keyword-related information set corresponding to the recognized first character in the first structured data including preset keyword-related information for each of the characters capable of constructing the keyword string, wherein the The keyword related information includes character correspondence code value information, character correspondence information, and address information of substructured data set for each of the above characters; Updating character correspondence information included in the retrieved keyword related information; And a position for storing the substructured data stored by the address information of the substructured data included in the keyword related information of the character corresponding to the character correspondence information updated in the previous step when the keyword string is composed of two or more characters. Step), wherein new substructured data is generated when address information of the substructured data does not exist, and location information of the generated new substructured data is stored in the address information of the substructured data; B) searching for the keyword related information set corresponding to the next order character of the character corresponding to the character corresponding information updated in the previous step in the identified substructured data, and updating the character corresponding information included in the retrieved keyword related information. Step to the last character of the keyword string It provides a repeat first keyword string structure comprises the step 4 to.
여기서, 상기 캐릭터 대응 정보는 해당 캐릭터로 종료하는 키워드 스트링이 존재하는지 여부 및 해당 캐릭터로부터 이어지는 키워드 스트링의 수를 포함하도록 할 수 있다. Here, the character correspondence information may include whether a keyword string ending with the character exists and the number of keyword strings following the character.
여기서, 상기 하위 구조화 데이터는 모든 캐릭터들 각각에 대하여 미리 설정된 키워드 관련 정보를 포함하도록 할 수 있다. Here, the substructured data may include keyword related information preset for each character.
여기서, 상기 캐릭터가 한글인 경우, 상기 캐릭터 대응 코드값 정보는 KSC 5601 한글코드를 이용하여 설정되도록 할 수 있다. Here, when the character is Korean, the character correspondence code value information may be set using KSC 5601 Korean code.
본 발명의 다른 측면에 의하면, 상술한 방법에 의하여 키워드 스트링을 구조화한 구조화 데이터를 이용하여 키워드 관리 서버에서 검출 대상으로서 입력되는 문장으로부터 키워드 스트링을 검출하는 방법에 있어서, 상기 검출 대상으로서 입력되는 문장을 구성하는 적어도 하나 이상의 캐릭터들 중에서 첫 번째 캐릭터를 인식하는 제1 단계; 모든 캐릭터들 각각에 대하여 미리 설정된 키워드 관련 정보를 포함하여 구성된 제1 구조화 데이터에서 상기 인식한 첫 번째 캐릭터에 상응하여 설정된 키워드 관련 정보를 검색하는 제2 단계-여기서, 상기 키워드 관련 정보는 상기 모든 캐릭터들 각각에 대하여 설정된 캐릭터 대응 코드값 정보, 캐릭터 대응 정보 및 하위 구조화 데이터의 주소 정보를 포함함-; 상기 검색한 키워드 관련 정보에 포함된 캐릭터 대응 정보를 분석하여 검출 가능한 키워드 스트링을 검출하고, 하위 구조화 데이터로의 이동 여부를 결정하는 제3 단계; 상기 제3 단계에 의하여 하위 구조화 데이터로 이동하지 않는 것으로 결정된 경우 키워드 스트링 검출 과정을 종료하는 제4 단계; 및 상기 제3 단계에 의하여 하위 구조화 데이터로 이동하는 것으로 결정된 경우, 하위 구조화 데이터로 이동하고, 이동한 하위 구조화 데이터에서 상기 입력된 문장 중 직전 단계에서 분석된 캐릭터 대응 정보에 상응하는 캐릭터의 다음 순서 캐릭터에 상응하여 설정된 키워드 관련 정보를 검색하는 a) 단계; 및 상기 검색한 키워드 관련 정보에 포함된 캐릭터 대응 정보를 분석하여 검출 가능한 키워드 스트링을 검출하고, 하위 구조화 데이터로의 이동 여부를 결정하는 b) 단계를 하위 구조화 데이터로 이동하지 않는 것으로 결정될 때까지 반복하는 제5 단계를 포함하는 키워드 스트링 검출 방법을 제공한다According to another aspect of the present invention, in a method for detecting a keyword string from a sentence input as a detection target in a keyword management server using structured data structured by the keyword string by the above-described method, the sentence input as the detection target Recognizing a first character among at least one or more characters constituting the first step; A second step of retrieving keyword related information set corresponding to the recognized first character from the first structured data including keyword related information preset for each of all the characters, wherein the keyword related information is set to all the characters. Including character correspondence code value information, character correspondence information, and address information of substructured data set for each of the two; A third step of detecting a detectable keyword string by analyzing character correspondence information included in the searched keyword related information, and determining whether to move to substructured data; A fourth step of terminating a keyword string detection process if it is determined by the third step not to move to substructured data; And if it is determined by the third step to move to the substructured data, move to the substructured data, and the next order of the character corresponding to the character correspondence information analyzed in the previous step among the input sentences in the moved substructured data. A) searching for keyword related information set according to the character; And analyzing the character correspondence information included in the searched keyword related information to detect a detectable keyword string, and repeating step b) of determining whether to move to substructured data until it is determined not to move to substructured data. It provides a keyword string detection method comprising a fifth step to
여기서, 상기 제4 단계 또는 제5 단계에 의하여 하위 구조화 데이터로 이동하지 않는 것으로 결정된 경우, 직전 단계에서 분석된 캐릭터 대응 정보에 상응하는 캐릭터의 다음 순서 캐릭터를 인식한 후 상기 제2 단계 내지 제5 단계를 수행하는 것을 특징으로 할 수 있다.Here, when it is determined not to move to the substructured data by the fourth step or the fifth step, after recognizing the next order character of the character corresponding to the character correspondence information analyzed in the previous step, the second to fifth steps It may be characterized by performing a step.
여기서, 상기 캐릭터 대응 정보는 해당 캐릭터로 종료하는 키워드 스트링이 존재하는지 여부 및 해당 캐릭터로부터 이어지는 키워드 스트링의 수를 포함하도록 할 수 있다. Here, the character correspondence information may include whether a keyword string ending with the character exists and the number of keyword strings following the character.
여기서, 상기 하위 구조화 데이터는 모든 캐릭터들 각각에 대하여 미리 설정된 키워드 관련 정보를 포함하도록 구성될 수 있다. Here, the substructured data may be configured to include preset keyword related information for each of all characters.
여기서, 상기 캐릭터가 한글인 경우, 상기 캐릭터 대응 코드값 정보는 KSC 5601 한글코드를 이용하여 설정될 수 있다. Here, when the character is Korean, the character correspondence code value information may be set using KSC 5601 Korean code.
본 발명의 또 다른 측면에 의하면, 키워드 관리 서버에 포함되며, 구조화 대상으로서 입력되는 키워드 스트링을 구조화하는 키워드 스트링 구조화 장치에 있어서, 상기 키워드 스트링 구조화 장치는, 상기 구조화 대상으로서 입력되는 키워드 스트링을 구성하는 적어도 하나 이상의 캐릭터들 중에서 첫 번째 캐릭터를 인식하고, 키워드 스트링을 구성할 수 있는 모든 캐릭터들 각각에 대하여 미리 설정된 키워드 관련 정보를 포함하여 구성된 제1 구조화 데이터에서 상기 인식한 첫 번째 캐릭터에 상응하여 설정된 키워드 관련 정보를 검색하고-여기서, 상기 키워드 관련 정보는 상기 모든 캐릭터들 각각에 대하여 설정된 캐릭터 대응 코드값 정보, 캐릭터 대응 정보 및 하위 구조화 데이터의 주소 정보를 포함함-, 상기 검색된 키워드 관련 정보에 포함된 캐릭터 대응 정보를 갱신하고, 상기 키워드 스트링이 둘 이상의 캐릭터로 구성된 경우, 직전 단계에서 갱신한 캐릭터 대응 정보에 상응하는 캐릭터의 키워드 관련 정보에 포함된 하위 구조화 데이터의 주소 정보에 의해 하위 구조화 데이터가 저장된 위치 정보를 파악하는 a) 단계-여기서, 상기 하위 구조화 데이터의 주소 정보가 존재하지 않는(NULL) 경우 신규 하위 구조화 데이터를 생성하고, 생성된 신규 하위 구조화 데이터의 위치 정보를 상기 하위 구조화 데이터의 주소 정보에 저장함-와, 직전 단계에서 갱신한 캐릭터 대응 정보에 상응하는 캐릭터의 다음 순서 캐릭터에 상응하여 설정된 키워드 관련 정보를 상기 파악된 하위 구조화 데이터에서 검색하고, 상기 검색된 키워드 관련 정보에 포함된 캐릭터 대응 정보를 갱신하는 b) 단계를 상기 키워드 스트링의 마지막 캐릭터까지 반복하는 것을 특징으로 하는 키워드 스트링 구조화 장치를 제공한다. According to still another aspect of the present invention, in the keyword string structuring apparatus, which is included in a keyword management server to structure a keyword string input as a structured object, the keyword string structured device constitutes a keyword string input as the structured object. Recognizing a first character among at least one or more characters, and corresponding to the first character recognized in the first structured data comprising the keyword-related information preset for each of the characters that can constitute a keyword string Search for the set keyword related information, wherein the keyword related information includes character corresponding code value information, character corresponding information, and address information of sub-structured data set for each of all the characters; included When the character correspondence information is updated and the keyword string is composed of two or more characters, the substructured data is stored by the address information of the substructured data included in the keyword related information of the character corresponding to the character correspondence information updated in the previous step. A) step of grasping the location information, wherein new sub-structured data is generated when the address information of the sub-structured data does not exist, and the location information of the generated new sub-structured data is converted into the address of the sub-structured data. Information stored in the information and keyword related information set corresponding to the next order character of the character corresponding to the character correspondence information updated in the previous step is searched in the identified substructured data, and the character correspondence included in the searched keyword related information is stored. B) updating the information, the keyword It provides a structured keyword string and wherein repeating the last character in Tring.
본 발명의 또 다른 측면에 의하면, 키워드 관리 서버에 포함되며, 상기 제10항의 장치에 의하여 키워드 스트링을 구조화한 구조화 데이터를 이용하여 검출 대상으로서 입력되는 문장으로부터 키워드 스트링을 검출하는 키워드 스트링 검출 장치에 있어서, 상기 키워드 스트링 검출 장치는, 상기 검출 대상으로서 입력되는 문장을 구성하는 적어도 하나 이상의 캐릭터들 중에서 첫 번째 캐릭터를 인식하고, 모든 캐릭터들 각각에 대하여 미리 설정된 키워드 관련 정보를 포함하여 구성된 제1 구조화 데이터에서 상기 인식한 첫 번째 캐릭터에 상응하여 설정된 키워드 관련 정보를 검색하고-여기서, 상기 키워드 관련 정보는 상기 모든 캐릭터들 각각에 대하여 설정된 캐릭터 대응 코드값 정보, 캐릭터 대응 정보 및 하위 구조화 데이터의 주소 정보를 포함함-, 상기 검색한 키워드 관련 정보에 포함된 캐릭터 대응 정보를 분석하여 검출 가능한 키워드 스트링을 검출하고, 하위 구조화 데이터로의 이동 여부를 결정하고, 하위 구조화 데이터로 이동하지 않는 것으로 결정된 경우 키워드 스트링 검출 과정을 종료하고, 하위 구조화 데이터로 이동하는 것으로 결정된 경우, 하위 구조화 데이터로 이동하고, 이동한 하위 구조화 데이터에서 상기 입력된 문장 중 직전 단계에서 분석된 캐릭터 대응 정보에 상응하는 캐릭터의 다음 순서 캐릭터에 상응하여 설정된 키워드 관련 정보를 검색하는 a) 단계 및 상기 검색한 키워드 관련 정보에 포함된 캐릭터 대응 정보를 분석하여 검출 가능한 키워드 스트링을 검출하고, 하위 구조화 데이터로의 이동 여부를 결정하는 b) 단계를 하위 구조화 데이터로 이동하지 않는 것으로 결정될 때까지 반복하는 것을 특징으로 하는 키워드 스트링 검출 장치를 제공한다. According to still another aspect of the present invention, there is provided a keyword string detection apparatus which is included in a keyword management server and detects a keyword string from a sentence input as a detection target by using the structured data structured by the apparatus of
본 발명에 의하면, 키워드 관리 서버에서 구조화 대상으로서 입력되는 키워드 스트링을 구조화할 수 있는 방법 및 장치를 제공할 수 있다. According to the present invention, a method and apparatus capable of structuring a keyword string input as a structured object in a keyword management server can be provided.
또한, 본 발명에 의하면, 키워드 관리 서버에 입력된 소정의 문장에서 키워드를 검출하는 경우, 각각의 캐릭터마다 대응하는 코드값 정보를 이용하여 키워드 를 직접 검출함으로써 더욱 정확하고 효율적인 키워드 검출 방법 및 장치를 제공할 수 있다. In addition, according to the present invention, when detecting a keyword in a predetermined sentence input to the keyword management server, a more accurate and efficient keyword detection method and apparatus by directly detecting the keyword using the code value information corresponding to each character. Can provide.
또한, 본 발명에 의하면, 키워드 검출시 각각의 캐릭터마다 대응되는 코드값 정보를 이용하여 해당 키워드로의 직접 접근이 가능하여, 이동통신망을 이용한 문자 서비스 이용시나 데이터 통신시에 해당 데이터에 포함되는 키워드 검출을 신속하고 정확하게 할 수 있는 방법 및 장치를 제공할 수 있다. In addition, according to the present invention, when the keyword is detected, direct access to the keyword is possible by using code value information corresponding to each character, and the keyword included in the data when using a text service or data communication using a mobile communication network. It is possible to provide a method and apparatus that can make detection quickly and accurately.
이하, 첨부한 도면들을 참고하여 본 발명에 의한 실시예들을 상세하게 설명한다. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 1은 본 발명의 일실시예에 의한 키워드 관리 서버를 이용하여 키워드 스트링을 구조화하고, 구조화된 키워드 스트링을 검출하는 과정을 개략적으로 나타낸 도면이다.1 is a diagram schematically illustrating a process of structuring a keyword string using a keyword management server and detecting a structured keyword string according to an embodiment of the present invention.
도 1을 참조하면, 본 실시예에 의한 키워드 관리 서버(10)는 우선 검출 대상이 되는 키워드 스트링을 구조화하는 과정을 수행한다. 그 후, 키워드 관리 서버(10)에 검출 대상이 되는 문장이 입력되면, 키워드 관리 서버(10)는 입력된 문장에서 상기 구조화된 키워드 스트링을 검출하는 과정을 수행하게 된다. Referring to FIG. 1, the
본 발명의 일실시예에 의한 키워드 관리 서버(10)는 이진화된 문자열 또는 문서 데이터 내에서 특정 키워드 스트링을 빠르고 효율적으로 검출하기 위한 것으 로서, 이러한 키워드 관리 서버(10)는 유무선 통신망을 이용하는 문자 통신, 인터넷 사이트 등에서의 검색 엔진 또는 문자열을 사용하는 응용 프로그램 등에 다양한 용도로서 활용될 수 있다. 발명의 구체적인 실시예에서는 키워드 관리 서버(10)를 일반적인 서버로 가정하고 설명하겠지만, 이는 하나의 실시예에 불과할 뿐이며 쓰이는 용도에 따라 다양한 형태 예컨대, 컴퓨터에 설치되는 프로그램 또는 핸드폰에 설치되는 반도체 칩 등의 형태 등으로 존재할 수 있음은 당업자에게 있어서 자명한 사항에 해당한다 할 것이다. The
도 2 내지 도 7을 이용하여 키워드 관리 서버(10)에서 이루어지는 키워드 스트링 구조화 및 키워드 스트링 검출을 상세히 설명하기 이전에 본 발명의 실시예에서 사용되는 각 용어에 대한 정의를 먼저 하도록 하겠다. Before describing keyword string structuring and keyword string detection in the
키워드 스트링은 구조화 또는 검출 대상이 되는 단어 즉, 뜻을 가지는 소정의 단어를 의미한다. 예컨대, 한글인 경우는 "감사", "사랑", "핸드폰" 등의 단어가 키워드 스트링이 될 수 있으며, 영어인 경우는 "apple", "love" 등의 단어가 키워드 스트링으로 존재할 수 있다. The keyword string means a word to be structured or detected, that is, a predetermined word having a meaning. For example, in Korean, words such as “thank you”, “love”, and “cell phone” may be keyword strings, and in English, words such as “apple” and “love” may exist as keyword strings.
캐릭터는 키워드 스트링을 구성하는 각각의 음절이나 문자를 의미한다. 예컨대, 상기 설명한 "핸드폰"의 키워드 스트링에는 각각 "핸", "드", "폰"의 3개의 캐릭터가 존재하는 것이며, "love"의 경우는 "l". "o", "v", "e"의 4개의 캐릭터가 존재하는 것이다. The character means each syllable or character constituting the keyword string. For example, three characters of "hand", "de", and "phone" exist in the keyword string of "cell phone" described above, and "l" for "love". There are four characters "o", "v" and "e".
제1 구조화 데이터는 본 발명에서 별도로 정의한 용어로서, 모든 캐릭터에 대하여 미리 설정된 키워드 관련 정보를 포함하도록 설정된 데이터이다. 구조화 데이터에는 모든 캐릭터에 대한 키워드 관련 정보를 포함한다. 예컨대, KSC 5601 한글 코드를 이용하는 경우에는 2350개의 한글 코드 각각에 대한 키워드 관련 정보가 포함되어 있다. 구조화 데이터의 구성예는 후술하는 도 5에서 상세히 설명하기로 한다. 제1 구조화 데이터는 가장 상위의 개념으로서, 제1 구조화 데이터에 포함된 각각의 캐릭터에 대응하는 키워드 관련 정보에는 그에 종속되는 하위 구조화 레벨이 연결될 수 있다. The first structured data is a term defined separately in the present invention and is data set to include keyword related information preset for all characters. The structured data includes keyword related information for all characters. For example, when using the KSC 5601 Hangul code, keyword related information for each of 2350 Hangul codes is included. A configuration example of the structured data will be described in detail later with reference to FIG. 5. The first structured data is the uppermost concept, and keyword-related information corresponding to each character included in the first structured data may be linked with a lower structured level corresponding thereto.
하위 구조화 데이터는 특정한 캐릭터에 종속되는 구조화 데이터를 의미한다. 예컨대, 제1 구조화 데이터에 포함된 캐릭터 "감"에 대응하는 키워드 관련 정보에 종속되는 즉, "감"에 종속되는 하위 구조화 데이터가 존재할 수 있는데, 이와 같이 특정한 캐릭터에 종속되어서 존재하는 구조화 데이터를 해당 캐릭터의 하위 구조화 데이터라고 표현한다.Substructured data refers to structured data that depends on a specific character. For example, there may be sub-structured data that depends on keyword related information corresponding to the character "sensation" included in the first structured data, that is, subordinate to "sensation". Expressed as substructured data of the character.
키워드 관련 정보는 각각의 캐릭터에 대하여 미리 설정된 정보를 의미하며, 각 캐릭터와 관련된 정보를 포함하는 것을 특징으로 한다. 키워드 관련 정보는 각 캐릭터 대응 코드값, 캐릭터 대응 정보 및 하위 구조화 데이터의 주소 정보를 포함한다. The keyword related information refers to information which is set in advance for each character and is characterized by including information related to each character. The keyword related information includes each character correspondence code value, character correspondence information, and address information of substructured data.
캐릭터 대응 코드값 정보 각 캐릭터에 대응하는 코드값을 의미한다. 예컨대, KSC 5601 한글코드를 사용하는 경우, "가"에 대응하는 코드값 정보는 "0XB0A0"으로 표현된다. 모든 캐릭터들 각각은 그에 대응하는 코드값 정보를 가지며, 이러한 코드값 정보는 구조화 데이터에서 해당 캐릭터를 찾아갈 수 있는 메모리 주소로서의 기능을 수행한다. 후술하는 도 2 내지 도 7에서는 캐릭터 대응 코드값 정보 로서 상기의 KSC 5601 한글코드를 사용하였으나, 코드값 정보는 종래의 다양한 코드값 정보가 사용될 수 있음에 유의하여야 한다. Character corresponding code value information Means a code value corresponding to each character. For example, when using the KSC 5601 Korean code, code value information corresponding to "A" is represented by "0XB0A0". Each character has code value information corresponding to each character, and the code value information functions as a memory address for searching for the corresponding character in the structured data. 2 to 7 described later, although the above-described KSC 5601 Korean code is used as the character corresponding code value information, it should be noted that the code value information may be various conventional code value information.
캐릭터 대응 정보는 각 캐릭터에 대한 상세 정보를 포함한다. 예컨대, 캐릭터 대응 정보는 해당 캐릭터로 종료하는 키워드 스트링이 존재하는지 여부 및 해당 캐릭터로부터 이어지는 키워드 스트링의 수를 포함하도록 구성될 수 있다. The character correspondence information includes detailed information about each character. For example, the character correspondence information may be configured to include whether there is a keyword string ending with the character and the number of keyword strings following the character.
하위 구조화 데이터의 주소 정보는 각 키워드 관련 정보에 종속되는 구조화 데이터를 의미하는 것으로서 하위 구조화 데이터의 주소 정보에는 하위 구조화 데이터의 위치 정보가 저장되어, 하위 구조화 데이터로 이동할 수 있게 된다. The address information of the substructured data refers to structured data that is dependent on each keyword related information. The address information of the substructured data is stored in the location information of the substructured data and can be moved to the substructured data.
도 2는 본 발명의 일실시예에 의한 키워드 관리 서버의 상세 구성을 나타낸 블록도이다. 2 is a block diagram showing a detailed configuration of a keyword management server according to an embodiment of the present invention.
도 2를 참조하면, 본 실시예에 의한 키워드 관리 서버(10)는 키워드 스트링 구조화 장치(11) 및 키워드 스트링 검출 장치(12)를 포함한다. 키워드 스트링 구조화 장치(11) 및 키워드 스트링 검출 장치는(12) 서로 연결되어 정보를 공유한다.Referring to FIG. 2, the
키워드 스트링 구조화 장치(11)는 구조화의 대상으로서 입력되는 키워드 스트링을 구조화하기 위한 수단이다. 키워드 스트링 구조화 장치는, 우선 상기 구조화 대상으로서 입력되는 키워드 스트링을 구성하는 적어도 하나 이상의 캐릭터들 중에서 첫 번째 캐릭터를 인식하고, 키워드 스트링을 구성할 수 있는 모든 캐릭터들 각각에 대하여 미리 설정된 키워드 관련 정보를 포함하도록 구성된 제1 구조화 데이터에서 상기 인식한 첫 번째 캐릭터에 상응하여 설정된 키워드 관련 정보를 검 색한다. 여기서, 상기 키워드 관련 정보는 상기 모든 캐릭터들 각각에 대하여 캐릭터 대응 코드값 정보, 캐릭터 대응 정보 및 하위 구조화 데이터의 주소 정보를 포함하여 구성될 수 있다. The keyword
다음으로, 상기 키워드 스트링이 하나의 캐릭터만으로 구성된 경우 상기 검색한 키워드 관련 정보에 포함된 캐릭터 대응 정보를 갱신하고, 상기 키워드 스트링이 둘 이상의 캐릭터로 구성된 경우 상기 검색한 키워드 관련 정보에 포함된 캐릭터 대응 정보를 갱신하고, 직전 단계에서 갱신한 캐릭터 대응 정보에 상응하는 캐릭터의 키워드 관련 정보에 포함된 하위 구조화 데이터의 주소 정보에 의해 하위 구조화 데이터가 저장된 위치 정보를 파악하는 a) 단계-여기서, 상기 하위 구조화 데이터의 주소 정보가 존재하지 않는(NULL) 경우 신규 하위 구조화 데이터를 생성하고, 생성된 신규 하위 구조화 데이터의 위치 정보를 상기 하위 구조화 데이터의 주소 정보에 저장함-와, 직전 단계에서 갱신한 캐릭터 대응 정보에 상응하는 캐릭터의 다음 순서 캐릭터에 상응하여 설정된 키워드 관련 정보를 상기 파악된 하위 구조화 데이터에서 검색하고, 상기 검색된 키워드 관련 정보에 포함된 캐릭터 대응 정보를 갱신하는 b) 단계를 상기 키워드 스트링의 마지막 캐릭터까지 반복함으로써 키워드 스트링의 구조화를 수행한다. Next, when the keyword string is composed of only one character, the character correspondence information included in the searched keyword related information is updated. When the keyword string is composed of two or more characters, the character correspondence included in the searched keyword related information is updated. A) step of recognizing the location information in which the substructured data is stored by updating the information, and the address information of the substructured data included in the keyword related information of the character corresponding to the character correspondence information updated in the previous step; If the address information of the structured data does not exist, create new sub-structured data, store the position information of the generated new sub-structured data in the address information of the sub-structured data, and correspond to the character updated in the previous step. The next character of the character corresponding to the information. The keyword string is structured by retrieving correspondingly related keyword related information from the identified substructured data and updating the character correspondence information included in the retrieved keyword related information to the last character of the keyword string. do.
키워드 스트링 검출 장치(12)는 검출 대상으로서 입력되는 소정의 문장에서 상기 키워드 스트링 구조화 장치(11)에 의하여 구조화된 키워드 스트링을 검출하기 위한 수단이다. 키워드 스트링 검출 장치는, 우선 상기 검출 대상으로서 입력되는 소정의 문장을 구성하는 적어도 하나 이상의 캐릭터들 중에서 첫 번째 캐릭터를 인 식하고, 모든 캐릭터들 각각에 대하여 미리 설정된 키워드 관련 정보를 포함하도록 구성된 제1 구조화 데이터에서 상기 인식한 첫 번째 캐릭터에 상응하여 설정된 키워드 관련 정보를 검색한다. 여기서, 상기 키워드 관련 정보는 모든 캐릭터들 각각에 대하여 캐릭터 대응 코드값 정보 및 캐릭터 대응 정보를 포함할 수 있다. The keyword
다음으로, 상기 검색한 키워드 관련 정보에 포함된 캐릭터 대응 정보를 분석하여 검출 가능한 키워드 스트링을 검출하고, 하위 구조화 데이터로의 이동 여부를 결정한다. 여기서, 하위 구조화 데이터로 이동하지 않는 것으로 결정된 경우 키워드 스트링 검출 과정을 종료하고, 하위 구조화 데이터로 이동하는 것으로 결정된 경우, 하위 구조화 데이터로 이동하고, 이동한 하위 구조화 데이터에서 상기 입력된 문장 중 직전 단계에서 분석된 캐릭터 대응 정보에 상응하는 캐릭터의 다음 순서 캐릭터에 상응하여 설정된 키워드 관련 정보를 검색하는 a) 단계; 및 상기 검색한 키워드 관련 정보에 포함된 캐릭터 대응 정보를 분석하여 검출 가능한 키워드 스트링을 검출하고, 하위 구조화 데이터로의 이동 여부를 결정하는 b) 단계를 하위 구조화 데이터로 이동하지 않는 것으로 결정될 때까지 반복함으로써 키워드 스트링의 검출을 수행한다. Next, character correspondence information included in the searched keyword related information is analyzed to detect a detectable keyword string and determine whether to move to substructured data. Here, if it is determined not to move to the substructured data, the keyword string detection process is terminated, and if it is determined to move to the substructured data, it moves to the substructured data, and the previous step among the input sentences in the moved substructured data. A) searching for keyword related information set corresponding to the next order character of the character corresponding to the character corresponding information analyzed in step a); And analyzing the character correspondence information included in the searched keyword related information to detect a detectable keyword string, and repeating step b) of determining whether to move to substructured data until it is determined not to move to substructured data. By doing so, keyword strings are detected.
도 3은 본 발명의 일실시예에 의한 키워드 관리 서버에서 구조화 대상으로서 입력되는 키워드 스트링을 구조화하는 과정을 나타낸 순서도이다. 3 is a flowchart illustrating a process of structuring a keyword string input as a structured object in a keyword management server according to an embodiment of the present invention.
도 3을 참조하면, 우선 키워드 관리 서버(10)에 구조화 대상이 되는 키워드 스트링이 입력된다(S100). 이러한 키워드 스트링은 적어도 하나 이상의 캐릭터들 로 이루어지며, 키워드 스트링은 한글, 영어 등 다양한 언어로 구성될 수 있다. 구조화 대상이 되는 키워드 스트링이 입력되면, 키워드 관리 서버(10)는 입력된 키워드 스트링 중 첫 번째 캐릭터를 인식한다(S110). 다음으로, 키워드 관리 서버(10)는 키워드 스트링을 구성할 수 있는 모든 캐릭터들 각각에 대하여 미리 설정된 키워드 관련 정보를 포함하도록 구성된 제1 구조화 데이터에서 상기 인식한 첫 번째 캐릭터에 상응하여 설정된 키워드 관련 정보를 검색한다(S120). 이때, 키워드 관련 정보는 모든 캐릭터들 각각에 대하여 캐릭터 대응 코드값 정보, 캐릭터 대응 정보 및 하위 구조화 데이터의 주소 정보를 포함하여 구성되는 것이 바람직하다. Referring to FIG. 3, first, a keyword string to be structured is input to the keyword management server 10 (S100). The keyword string may be composed of at least one character, and the keyword string may be configured in various languages such as Korean and English. When the keyword string to be structured is input, the
다음 과정으로, 키워드 관리 서버(10)는 상기 검색한 키워드 관련 정보에 포함된 캐릭터 대응 정보를 갱신한다(S130). 캐릭터 대응 정보는 해당 캐릭터로 종료하는 키워드 스트링이 존재하는지 여부 및 해당 캐릭터로부터 이어지는 키워드 스트링의 수를 포함할 수 있다. 단계 S130에서 캐릭터 대응 정보를 갱신한다는 것은 결국 상기 캐릭터 대응 정보에 포함되는 각종 정보를 갱신한다는 것을 의미한다. 키워드 관련 정보에 포함된 캐릭터 대응 정보를 갱신한 후, 키워드 관리 서버(10)는 상기 구조화 대상이 되는 키워드 스트링의 캐릭터 수가 2 이상인지 여부에 따라 과정을 나누어 수행한다(S140). 키워드 스트링이 하나의 캐릭터만으로 이루어진 경우에는 상기 검색한 키워드 관련 정보에 포함된 캐릭터 대응 정보를 갱신함으로써 키워드 스트링 구조화는 종료된다. In the next process, the
키워드 스트링이 2 이상의 캐릭터로 구성된 경우 상기 검색한 키워드 관련 정보에 포함된 캐릭터 대응 정보를 갱신하고, 다음으로 직전 단계에서 갱신한 캐릭터 대응 정보에 상응하는 캐릭터의 키워드 관련 정보에 포함된 하위 구조화 데이터의 주소 정보에 의해 하위 구조화 데이터가 저장된 위치 정보를 파악하는 a) 단계-여기서, 상기 하위 구조화 데이터의 주소 정보가 존재하지 않는(NULL) 경우 신규 하위 구조화 데이터를 생성하고, 생성된 신규 하위 구조화 데이터의 위치 정보를 상기 하위 구조화 데이터의 주소 정보에 저장함-와, 직전 단계에서 갱신한 캐릭터 대응 정보에 상응하는 캐릭터의 다음 순서 캐릭터에 상응하여 설정된 키워드 관련 정보를 상기 파악된 하위 구조화 데이터에서 검색하고, 상기 검색된 키워드 관련 정보에 포함된 캐릭터 대응 정보를 갱신하는 b) 단계를 상기 키워드 스트링의 마지막 캐릭터까지 반복하여 수행한다(S150 내지 S180). 즉, 구조화 대상으로서 입력되는 키워드 스트링의 각 캐릭터를 그에 상응하는 구조화 데이터에 순서대로 구조화시킨다. 상술한 바와 같은 과정을 다 마치면 키워드 관리 서버(10)에 입력된 키워드 스트링에 대한 구조화가 종료된다. When the keyword string is composed of two or more characters, the character correspondence information included in the searched keyword related information is updated, and next, the substructured data included in the keyword related information of the character corresponding to the character correspondence information updated in the previous step is updated. A) step of identifying the location information where the substructured data is stored by the address information, wherein new substructured data is generated when the address information of the substructured data does not exist, and Storing the location information in the address information of the substructured data; and searching for the keyword related information set corresponding to the next order character of the character corresponding to the character correspondence information updated in the previous step in the identified substructured data. Characters included in searched keyword related information Response to the step b) for updating the information repeatedly performed up to the last character of the keyword string (S150 to S180). That is, each character of the keyword string input as the structured object is structured in the structured data corresponding thereto in order. After completing the above-described process, the structure of the keyword string input to the
도 4는 본 발명의 일실시예에 의한 키워드 관리 서버에서 검출 대상으로 입력되는 문장에서 도 3에서 설명한 방법에 의하여 구조화된 키워드 스트링을 검출하는 과정을 나타낸 순서도이다. 4 is a flowchart illustrating a process of detecting a keyword string structured by the method described with reference to FIG. 3 in a sentence input as a detection target in a keyword management server according to an embodiment of the present invention.
도 4를 참조하면, 우선 키워드 관리 서버에 검출 대상이 되는 소정의 문장이 입력된다(S200). 문장의 입력 후, 키워드 관리 서버(10)는 소정의 문장을 구성하는 적어도 하나 이상의 캐릭터들 중에서 첫 번째 캐릭터를 인식한다(S210). 다음 으로, 모든 캐릭터들 각각에 대하여 미리 설정된 키워드 관련 정보를 포함하도록 구성된 제1 구조화 데이터에서 상기 인식한 첫 번째 캐릭터에 상응하여 설정된 키워드 관련 정보를 검색한다(S220). 여기서, 키워드 관련 정보는 모든 캐릭터들 각각에 대하여 캐릭터 대응 코드값 정보, 캐릭터 대응 정보 및 하위 구조화 데이터의 주소 정보를 포함하여 구성되는 것이 바람직하다. 키워드 관련 정보를 검색한 키워드 관리 서버(10)는 검색한 키워드 관련 정보에 포함된 캐릭터 대응 정보를 분석하여 검출 가능한 키워드 스트링을 검출한다. Referring to FIG. 4, first, a predetermined sentence to be detected is input to the keyword management server (S200). After inputting the sentence, the
캐릭터 대응 정보에는 해당 캐릭터로 종료하는 키워드 스트링이 존재하는지 여부에 대한 정보가 포함되어 있으므로 해당 정보를 참고하여 해당 캐릭터로 종료하는 키워드 스트링을 검출할 수 있다. 다음으로, 하위 구조화 데이터로의 이동 여부를 결정한다(S240). 여기서, 하위 구조화 데이터는 제1 구조화 데이터와 같이 모든 캐릭터들 각각에 대하여 미리 설정된 키워드 관련 정보를 포함하도록 구성되는 것이 바람직하며, 하위 구조화 데이터는 각 캐릭터에 대하여 미리 설정된 키워드 관련 정보에 종속되도록 존재하는 것이 바람직하다. 또한, 각 캐릭터에 대한 키워드 관련 정보에 포함된 하위 구조화 데이터의 주소 정보에는 해당 캐릭터에 종속되는 하위 구조화 데이터를 찾아갈 수 있는 위치 정보가 포함된 포인터(PTR)로서 저장되는 것이 바람직하다. 이때, 포인터에는 하위 구조화 데이터의 기준 위치 정보(기준 코드값 정보)가 저장된다. Since the character correspondence information includes information on whether there is a keyword string ending with the character, the keyword string ending with the character can be detected by referring to the information. Next, it is determined whether to move to the substructured data (S240). Here, the sub-structured data is preferably configured to include keyword-related information preset for each of the characters as in the first structured data, and the sub-structured data exists so as to be dependent on the keyword-related information preset for each character. It is preferable. In addition, it is preferable that the address information of the substructured data included in the keyword related information for each character is stored as a pointer PTR including position information for searching for the substructured data depending on the character. At this time, the reference position information (reference code value information) of the substructured data is stored in the pointer.
캐릭터 대응 정보를 분석한 결과 하위 구조화 데이터로 이동하지 않는 것으로 결정된 경우에는 키워드 스트링 검출 과정을 종료한다. 여기서, 하위 구조화 데이터로 이동하지 않는 것으로 결정될 수 있는 경우는 예컨대, 해당 캐릭터로 더이상 이어질 수 있는 키워드 스트링이 없다고 판단된 경우일 수 있다. 캐릭터 대응 정보를 분석한 결과 하위 구조화 데이터로 이동하는 것으로 결정된 경우에는, 하위 구조화 데이터로 이동하고, 이동한 하위 구조화 데이터에서 상기 입력된 문장 중 직전 단계에서 분석된 캐릭터 대응 정보에 상응하는 캐릭터의 다음 순서 캐릭터에 상응하여 설정된 키워드 관련 정보를 검색하는 a) 단계; 및 상기 검색한 키워드 관련 정보에 포함된 캐릭터 대응 정보를 분석하여 검출 가능한 키워드 스트링을 검출하고, 하위 구조화 데이터로의 이동 여부를 결정하는 b) 단계를 하위 구조화 데이터로 이동하지 않는 것으로 결정될 때까지 반복하여 수행한다(S250 및 S260). If it is determined that the character correspondence information is not moved to the substructured data, the keyword string detection process is terminated. Here, the case where it may be determined not to move to the substructured data may be, for example, the case where it is determined that there is no keyword string that can no longer lead to the corresponding character. If it is determined that the character correspondence information is moved to the substructured data, the character correspondence moves to the substructured data, and the next character of the character corresponding to the character correspondence information analyzed in the previous step among the input sentences in the moved substructured data is moved. A) searching for keyword related information set according to the order character; And analyzing the character correspondence information included in the searched keyword related information to detect a detectable keyword string, and repeating step b) of determining whether to move to substructured data until it is determined not to move to substructured data. It performs by (S250 and S260).
상기의 과정을 거쳐서 하위 구조화 데이터로 이동하지 않는 것으로 결정되는 경우 키워드 스트링 검출 과정은 종료된다. 이때, 검출 대상으로서 입력된 소정의 문장에 포함된 모든 캐릭터를 분석하지 않고 검출 과정이 종료될 수 있다. 따라서, 상기 과정에 의하여 하위 구조화 데이터로 이동하지 않는 것으로 결정된 경우, 상기 입력된 소정의 문장 중에서 하위 구조화 데이터로의 이동 여부 결정에 사용된 캐릭터의 다음 순서 캐릭터를 새로 인식한 후, 단계 S220부터 검출 과정이 다시 진행된다. 이러한 과정을 반복함으로써 입력된 소정의 문장에 포함된 모든 캐릭터들에 대해 키워드 스트링 검출을 수행할 수 있다. If it is determined through the above process not to move to the substructured data, the keyword string detection process is terminated. At this time, the detection process may be terminated without analyzing all the characters included in the predetermined sentence input as the detection target. Therefore, if it is determined by the above process not to move to the substructured data, the next sequence character of the character used for determining whether to move to the substructured data is newly recognized among the predetermined sentences, and then detected from step S220. The process resumes. By repeating this process, keyword string detection may be performed on all characters included in the input predetermined sentence.
도 5는 구조화 데이터 구성의 일예를 나타낸 도면이다. 5 is a diagram illustrating an example of a structured data structure.
도 5를 참조하면, 구조화 데이터는 상술한 설명에서 나타난 제1 구조화 데이 터 및 하위 구조화 데이터를 모두 포함하는 개념이며, 구조화 데이터는 모든 캐릭터들 각각에 대하여 미리 설정된 키워드 관련 정보를 포함하도록 구성된다. 여기서, 키워드 관련 정보는 다시 캐릭터 대응 코드값 정보, 캐릭터 대응 정보 및 하위 구조화 데이터의 주소 정보를 포함하도록 구성된다. 여기서, 캐릭터 대응 정보는 다시 해당 캐릭터로 종료하는 키워드 스트링이 존재하는지 여부 및 해당 캐릭터로부터 이어지는 키워드 스트링의 수를 포함하도록 구성된다. Referring to FIG. 5, the structured data is a concept including both the first structured data and the substructured data shown in the above description, and the structured data is configured to include keyword related information preset for each of all the characters. Here, the keyword related information is configured to include character correspondence code value information, character correspondence information, and address information of substructured data. Here, the character correspondence information is configured to include whether there is a keyword string again ending with the character and the number of keyword strings following the character.
캐릭터 대응 코드값 정보는 존재할 수 있는 각각의 캐릭터별로 대응하는 코드값을 정하여 놓은 것을 의미한다. 도 5에서는 KSC 5601 한글 코드를 사용한 경우를 표현하였으며, 2350개의 각각의 한글 캐릭터마다 그에 대응되는 코드값 정보가 매칭된다. 캐릭터 대응 코드값 정보는 도 5와 같이 표현하는 것은 물론 다양한 방법에 의하여 표현될 수 있음은 당연하다 할 것이다. The character corresponding code value information means that a corresponding code value is determined for each character that may exist. In FIG. 5, the KSC 5601 Korean code is used, and code value information corresponding to each of the 2350 Korean characters is matched. Character-corresponding code value information may be expressed by various methods as well as expressed in FIG. 5.
캐릭터 대응 정보는 해당 캐릭터와 관련된 정보를 의미하며, 키워드 스트링이 구조화되는 경우에 갱신될 수 있는 부분을 의미한다. 상술한 바와 같이, 캐릭터 대응 정보는 해당 캐릭터로 종료하는 키워드 스트링이 존재하는지 여부 및 해당 캐릭터로부터 이어지는 키워드 스트링의 갯수가 포함된다. The character correspondence information refers to information related to the corresponding character, and means a part that can be updated when the keyword string is structured. As described above, the character correspondence information includes whether there is a keyword string ending with the character and the number of keyword strings following the character.
도 5의 캐릭터 "가"를 보면, 캐릭터 대응 코드값 정보는 "0XB0A1"인 것을 알 수 있고, 캐릭터 "가"에 대응하는 캐릭터 대응 정보로서 순서대로 "0", "1"이 기재되어 있는데, 첫번째 정보는 "가"로 종료되는 키워드 스트링이 존재하지 않는다는 것(0개)을 의미하며, 두번째 정보는 "가"로부터 이어지는 키워드 스트링의 수가 1개라는 것을 의미한다. 세번째 정보는 하위 구조화 데이터의 주소 정보로서 "가"에 해당하는 키워드 관련 정보에 종료되는 하위 구조화 데이터의 위치 정보를 포함한 포인터(PTR)를 의미할 수 있다. 구조화되기 전의 캐릭터 대응 정보 즉, 초기화 상태의 캐릭터 대응 정보는 순서대로 "N", "0"로 설정되어 있다. 이러한 초기화 상태에서, "가"로 시작하는 키워드 스트링 예컨대, "가위"를 구조화하는 경우, "가"의 캐릭터 대응 정보는 순서대로 "0", "1"로 갱신된다. 즉, 구조화되는 키워드 스트링은 "가위"이기 때문에 "가"로 종료하는 키워드 스트링은 "0"이며, "가"로부터 이어지는 키워드 스트링의 수는 "1"이 되는 것이다. Referring to the character "ga" in FIG. 5, it can be seen that the character correspondence code value information is "0XB0A1", and "0" and "1" are described in order as the character correspondence information corresponding to the character "ga". The first information means that there are no keyword strings ending with "A" (0), and the second information means that the number of keyword strings following "A" is one. The third information may refer to a pointer PTR including location information of sub-structured data ending in keyword related information corresponding to “a” as address information of sub-structured data. The character correspondence information before being structured, that is, the character correspondence information in the initialization state is set to "N" and "0" in order. In this initialization state, when constructing a keyword string starting with "ga", for example, "scissors", the character correspondence information of "ga" is updated to "0" and "1" in order. That is, since the keyword string to be structured is "scissors", the keyword string ending in "ga" is "0", and the number of keyword strings following "ga" becomes "1".
도 6은 키워드 스트링 구조화의 일예를 나타낸 도면이다. 6 is a diagram illustrating an example of keyword string structure.
도 6을 참고하면, "잠자리"라는 키워드 스트링이 구조화되는 과정을 알 수 있다. 키워드 관리 서버에 "잠자리"라는 키워드 스트링을 구조화하라는 입력이 들어오면, 우선 제1 구조화 데이터에서 "잠"에 해당하는 키워드 관련 정보를 검색한다. 이때, 제1 구조화 데이터에서 "잠"에 해당하는 키워드 관련 정보를 검색하는 것은 각 캐릭터의 코드값 정보를 이용하여 검색할 수 있다. 즉, 도 4에서 설명한 기준 코드값 정보에 해당하는 "0XBOA0" 과 "잠"의 코드값 정보 "0XC0E1"의 코드값 차이를 이용하면 기준 코드값 정보의 위치로부터 "잠"에 해당하는 키워드 관련 정보가 어느 위치에 존재하는지를 유추할 수 있는 것이다. Referring to FIG. 6, it can be seen that a keyword string “Dragonfly” is structured. When the keyword management server receives an input for structuring a keyword string of "dragonfly", first, the keyword-related information corresponding to "sleep" is searched for in the first structured data. In this case, searching for keyword related information corresponding to “sleep” in the first structured data may be searched using code value information of each character. That is, when the code value difference between "0XBOA0" and "sleep" code value information "0XC0E1" corresponding to the reference code value information described with reference to FIG. 4 is used, the keyword related information corresponding to "sleep" from the position of the reference code value information is used. Where can be inferred.
제1 구조화 데이터에서 "잠"에 해당하는 키워드 관련 정보를 검색한 후, 키워드 관련 정보에 포함된 캐릭터 대응 정보를 갱신한다. 즉, "잠"으로부터 이어지는 키워드 스트링의 수가 증가했다는 정보를 갱신하게 되는 것이다. 다음으로, " 잠자리"는 2 이상의 캐릭터로 이루어졌으므로, "잠"에 해당하는 키워드 관련 정보에 종속되는 하위 구조화 데이터로 이동하여 "자"에 해당하는 키워드 관련 정보를 검색하는 과정이 이어진다. 이때, 각 키워드 관련 정보에 종속되는 하위 구조화 데이터는 미리 생성되어 있다고 가정한다. "자"에 해당하는 키워드 관련 정보를 검색한 뒤, 역시 키워드 관련 정보에 포함된 캐릭터 대응 정보 즉, "자"로부터 이어지는 키워드 스트링의 수가 증가했다는 정보를 갱신한다. 그리고, "자"에 해당하는 키워드 관련 정보에 종속되는 하위 구조화 데이터로 이동하여 "리"에 해당하는 키워드 관련 정보를 검색하는 과정이 이어진다. "리"에 해당하는 키워드 관련 정보의 검색 및 키워드 관련 정보에 포함된 캐릭터 대응 정보를 갱신한 뒤, "리"는 키워드 스트링의 마지막 캐릭터이므로 키워드 스트링 구조화는 종료된다. 즉, "리"로서 종료하는 키워드 스트링이 있다는 것을 표시하는 것이다. 이와 같은 과정을 거쳐 입력된 "잠자리"에 대한 키워드 스트링 구조화가 이루어진다. After retrieving keyword related information corresponding to "sleep" from the first structured data, the character correspondence information included in the keyword related information is updated. In other words, it updates information that the number of keyword strings following "sleep" has increased. Next, since "dragonfly" is composed of two or more characters, a process of searching for keyword-related information corresponding to "child" is continued by moving to substructured data that is dependent on keyword-related information corresponding to "sleeping." In this case, it is assumed that substructured data that is dependent on each keyword related information is generated in advance. After retrieving the keyword related information corresponding to "child", the character correspondence information included in the keyword related information, that is, information that the number of keyword strings following the "child" has been updated is updated. Subsequently, a process of searching for keyword related information corresponding to “L” by moving to substructured data that is dependent on keyword related information corresponding to “child” is continued. After retrieving the keyword related information corresponding to "Lee" and updating the character correspondence information included in the keyword related information, "Lee" is the last character of the keyword string, so the keyword string structuring ends. That is, it indicates that there is a keyword string ending with "Lee". Through this process, the keyword string structure for the input "dragonfly" is achieved.
도 7은 키워드 스트링 검출의 일예를 나타낸 도면이다. 7 is a diagram illustrating an example of keyword string detection.
도 7을 참고하면, "참 감사합니다"라는 문장이 입력된 경우, 입력된 문장에서 구조화된 키워드 스트링에 해당하는 "감사"라는 키워드 스트링을 검출하는 과정을 알 수 있다. 우선 키워드 관리 서버에 검출 대상이 되는 문장인 "참 감사합니다"가 입력된다. 문장 입력을 감지한 키워드 관리 서버는 문장의 첫 번째 캐릭터인 "참"을 인식하고, 제1 구조화 데이터에서 "참"에 대응하는 키워드 관련 정보를 검색한다. 다음으로, "참"에 대응하는 키워드 관련 정보에 포함된 캐릭터 대응 정 보를 분석하여 검출 가능한 키워드 스트링을 검출하고, 하위 구조화 데이터로의 이동 여부를 결정한다. 도 7에 나타난 "참"의 캐릭터 대응 정보를 참고하면, "참"으로 종료하는 키워드 스트링은 존재하지 않으며, "참"으로부터 이어지는 키워드 스트링의 수는 0개라는 것을 알 수 있다. 따라서, "참"으로부터 이어지는 키워드 스트링이 존재하지 않으므로 키워드 관리 서버는 하위 구조화 데이터로 이동하지 않는 것으로 결정하게 된다. Referring to FIG. 7, when a sentence “Thank you very much” is input, a process of detecting a keyword string “thank you” corresponding to a structured keyword string may be found in the input sentence. First, "Thank you very much", which is a sentence to be detected, is input to the keyword management server. The keyword management server that senses the sentence input recognizes "true", which is the first character of the sentence, and searches for keyword related information corresponding to "true" in the first structured data. Next, character detection information included in keyword related information corresponding to "true" is analyzed to detect a detectable keyword string and determine whether to move to substructured data. Referring to the character correspondence information of "true" shown in Figure 7, it can be seen that there is no keyword string ending with "true", and that the number of keyword strings following "true" is zero. Therefore, since there is no keyword string following "true", the keyword management server decides not to move to the substructured data.
문장 중 "참"에 대한 검출 과정의 종료 후, 그 다음 캐릭터인 "감"을 인식하여 다시 검출 과정이 진행되게 된다. 즉, 다시 제1 구조화 데이터에서 "감"에 대응하는 키워드 관련 정보를 검색하고, 검색한 키워드 관련 정보에 포함된 캐릭터 대응 정보를 분석하여 검출 가능한 키워드 스트링을 검출하고, 하위 구조화 데이터로의 이동 여부를 결정한다. 도 7에 나타난 "감"의 캐릭터 대응 정보를 참고하면, "감"으로 종료하는 키워드 스트링은 존재하지 않으며, "감"으로부터 이어지는 키워드 스트링의 수는 1개라는 것을 알 수 있다. 따라서, 키워드 스트링 검출은 이루어지지 않지만, 하위 구조화 데이터로 이동하는 것으로 결정된다. After the detection process for "true" in the sentence is completed, the next character "feel" is recognized and the detection process proceeds again. That is, the keyword-related information corresponding to "feel" is searched again in the first structured data, the character-related information included in the searched keyword-related information is analyzed to detect a detectable keyword string, and whether to move to the sub-structured data. Determine. Referring to the character correspondence information of "persimmon" shown in Figure 7, it can be seen that there is no keyword string ending with "persimmon", and the number of keyword strings following "persimmon" is one. Thus, no keyword string detection is made, but it is determined to move to the substructured data.
상기 과정에 의하여 "감"의 하위 구조화 데이터로 이동하게 되면, 이동한 하위 구조화 데이터에서 입력된 문장 중 "감"의 다음 캐릭터에 해당하는 "사"에 대응하는 키워드 관련 정보를 검색한다. 그리고, 검색한 키워드 관련 정보에 포함된 캐릭터 대응 정보를 분석하여 검출 가능한 키워드 스트링을 검출하고, 하위 구조화 데이터로의 이동 여부를 결정한다. 도 7에 나타난 "사"의 캐릭터 대응 정보를 참고하면, "사"로 종료하는 키워드 스트링이 존재하며, "사"로부터 이어지는 키워드 스트링은 존재하지 않는다는 것을 알 수 있다. 따라서, "감사" 라는 키워드 스트링이 검출되며, 하위 구조화 데이터로 이동하지 않는 것으로 결정되기 때문에 키워드 스트링 검출 과정은 종료된다. When moving to the substructured data of "persimmon" by the above process, the keyword related information corresponding to the "sa" corresponding to the next character of "persimmon" is searched among the sentences inputted from the moved substructured data. The character correspondence information included in the retrieved keyword related information is analyzed to detect a detectable keyword string and determine whether to move to substructured data. Referring to the character correspondence information of "sa" shown in Fig. 7, it can be seen that there is a keyword string ending with "sa", and there is no keyword string following "sa". Thus, the keyword string detection process is terminated because it is determined that the keyword string " audit " is detected and does not move to substructured data.
상술한 바와 같은 원리로, 입력된 문장 중 "사"의 캐릭터 이후 캐릭터인 "합", "니". "다"에 대해서도 같은 과정이 반복된다. 도 7에서는 구조화된 키워드 스트링이 "감사" 하나라고 설정된 것이므로 결국 검출되는 키워드 스트링은 "감사"가 된다. In the same principle as described above, the characters "sum" and "nee" after the character of "four" in the input sentence. The same process is repeated for "da". In FIG. 7, since the structured keyword string is set to "audit" one, the keyword string detected eventually becomes "audit".
이상에서, 본 발명의 바람직한 실시예를 참조하여 본 발명의 구성을 설명하였으나, 본 발명이 상기 실시예에 한정되는 것이 아님은 물론이며, 첨부한 청구범위 및 도면에 의해 파악되는 본 발명의 범위 내에서 여러 가지의 변형, 수정 및 개선이 가능하다는 것은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 충분히 이해할 수 있을 것이다. In the above, the configuration of the present invention with reference to the preferred embodiment of the present invention, but the present invention is not limited to the above embodiment, of course, it is within the scope of the present invention as grasped by the appended claims and drawings Various modifications, modifications, and improvements are possible in the art to those skilled in the art.
도 1은 본 발명의 일실시예에 의한 키워드 관리 서버를 이용하여 키워드 스트링을 구조화하고, 구조화된 키워드 스트링을 검출하는 과정을 개략적으로 나타낸 도면이다.1 is a diagram schematically illustrating a process of structuring a keyword string using a keyword management server and detecting a structured keyword string according to an embodiment of the present invention.
도 2는 본 발명의 일실시예에 의한 키워드 관리 서버의 상세 구성을 나타낸 블록도이다. 2 is a block diagram showing a detailed configuration of a keyword management server according to an embodiment of the present invention.
도 3은 본 발명의 일실시예에 의한 키워드 관리 서버에서 구조화 대상으로서 입력되는 키워드 스트링을 구조화하는 과정을 나타낸 순서도이다. 3 is a flowchart illustrating a process of structuring a keyword string input as a structured object in a keyword management server according to an embodiment of the present invention.
도 4는 본 발명의 일실시예에 의한 키워드 관리 서버에서 검출 대상으로 입력되는 문장에서 도 3에서 설명한 방법에 의하여 구조화된 키워드 스트링을 검출하는 과정을 나타낸 순서도이다. 4 is a flowchart illustrating a process of detecting a keyword string structured by the method described with reference to FIG. 3 in a sentence input as a detection target in a keyword management server according to an embodiment of the present invention.
도 5는 구조화 데이터 구성의 일예를 나타낸 도면이다. 5 is a diagram illustrating an example of a structured data structure.
도 6은 키워드 스트링 구조화의 일예를 나타낸 도면이다. 6 is a diagram illustrating an example of keyword string structure.
도 7은 키워드 스트링 검출의 일예를 나타낸 도면이다. 7 is a diagram illustrating an example of keyword string detection.
Claims (11)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20080111730 | 2008-11-11 | ||
KR1020080111730 | 2008-11-11 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20100053402A KR20100053402A (en) | 2010-05-20 |
KR100998291B1 true KR100998291B1 (en) | 2010-12-03 |
Family
ID=42278531
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020090001058A KR100998291B1 (en) | 2008-11-11 | 2009-01-07 | Method and apparatus for structuralize keyword string and searching keyword string |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100998291B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111680310B (en) * | 2020-05-26 | 2023-08-25 | 泰康保险集团股份有限公司 | Authority control method and device, electronic equipment and storage medium |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11224263A (en) | 1998-02-09 | 1999-08-17 | Fuji Xerox Co Ltd | Key word retrieval device and computer-readable record medium where key word retrieving program is recorded |
-
2009
- 2009-01-07 KR KR1020090001058A patent/KR100998291B1/en not_active IP Right Cessation
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11224263A (en) | 1998-02-09 | 1999-08-17 | Fuji Xerox Co Ltd | Key word retrieval device and computer-readable record medium where key word retrieving program is recorded |
Also Published As
Publication number | Publication date |
---|---|
KR20100053402A (en) | 2010-05-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109635273B (en) | Text keyword extraction method, device, equipment and storage medium | |
JP4427500B2 (en) | Semantic analysis device, semantic analysis method, and semantic analysis program | |
CN111460083B (en) | Method and device for constructing document title tree, electronic equipment and storage medium | |
WO2020108063A1 (en) | Feature word determining method, apparatus, and server | |
CN111159990B (en) | Method and system for identifying general special words based on pattern expansion | |
CN111753531A (en) | Text error correction method and device based on artificial intelligence, computer equipment and storage medium | |
CN111488468B (en) | Geographic information knowledge point extraction method and device, storage medium and computer equipment | |
JP2022024102A (en) | Method for training search model, method for searching target object and device therefor | |
US11651014B2 (en) | Source code retrieval | |
CN110096599B (en) | Knowledge graph generation method and device | |
KR102292040B1 (en) | System and method for extracting knowledge based on machine reading | |
CN114036930A (en) | Text error correction method, device, equipment and computer readable medium | |
CN111832299A (en) | Chinese word segmentation system | |
CN113961768B (en) | Sensitive word detection method and device, computer equipment and storage medium | |
JP4102153B2 (en) | Post-processing device for character recognition using the Internet | |
KR101702055B1 (en) | Deep-learning based morpheme analysis device and method of operating morpheme analysis application | |
CN110309258B (en) | Input checking method, server and computer readable storage medium | |
KR100998291B1 (en) | Method and apparatus for structuralize keyword string and searching keyword string | |
US20110106849A1 (en) | New case generation device, new case generation method, and new case generation program | |
CN115455416A (en) | Malicious code detection method and device, electronic equipment and storage medium | |
CN116595125A (en) | Open domain question-answering method based on knowledge graph retrieval | |
CN104641367B (en) | For formatting formatting module, the system and method for electronic character sequence | |
CN107203512B (en) | Method for extracting key elements from natural language input of user | |
CN112948573A (en) | Text label extraction method, device, equipment and computer storage medium | |
JP2001101184A (en) | Method and device for generating structurized document and storage medium with structurized document generation program stored therein |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20131025 Year of fee payment: 4 |
|
LAPS | Lapse due to unpaid annual fee |