KR100818742B1 - Document retrieval method using relevance of index word's location information in document - Google Patents
Document retrieval method using relevance of index word's location information in document Download PDFInfo
- Publication number
- KR100818742B1 KR100818742B1 KR1020070080269A KR20070080269A KR100818742B1 KR 100818742 B1 KR100818742 B1 KR 100818742B1 KR 1020070080269 A KR1020070080269 A KR 1020070080269A KR 20070080269 A KR20070080269 A KR 20070080269A KR 100818742 B1 KR100818742 B1 KR 100818742B1
- Authority
- KR
- South Korea
- Prior art keywords
- word
- document
- information
- index
- relevance
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 56
- 230000006866 deterioration Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 14
- 238000004364 calculation method Methods 0.000 description 7
- 125000004122 cyclic group Chemical group 0.000 description 3
- 230000001186 cumulative effect Effects 0.000 description 2
- 238000013467 fragmentation Methods 0.000 description 2
- 238000006062 fragmentation reaction Methods 0.000 description 2
- 230000003139 buffering effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/18—Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Operations Research (AREA)
- Probability & Statistics with Applications (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Algebra (AREA)
- Evolutionary Biology (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Bioinformatics & Computational Biology (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
본 발명은 색인 단어의 문서내 위치 정보에 대한 관련성을 이용한 문서 검색 방법에 관한 것으로, 검색엔진에서 데이터 베이스에 저장된 문서에 대하여 문서 정보를 생성하는 단계, 단어 정보를 생성하는 단계, 단어-문서 정보를 생성하는 단계, 상기 생성된 단어-문서 정보에서 상기 검색 엔진에 입력된 질의어를 색인단어로 하여 상기 본문 내에서의 단어의 위치 정보를 이용하여 질의어가 2단어 이상인 경우 질의어 각각이 문서 내에서 군집을 형성하는 경우 관련성이 높은 것으로 판단하여 질의어를 포함하는 문서를 효율적으로 검색하는 기존의 색인 단어의 문서내 위치 정보를 이용한 문서 검색 방법에 있어서, 상기 본문 내에서의 단어의 위치 정보를 3개 까지만 의미 있는 것으로 제한하여 단어가 존재하는 위치의 갯수, 상기 단어의 위치 정보로 구성되는 위치 정보 구조체를 생성하는 단계와, 상기 위치 정보 구조체를 이용하여 (단어 식별성×문서내 단어 빈도수)+ 문서내 색인 필드에 따른 가중치+ 군집도의 식으로 관련성을 구하는 단계와, 상기 단계에서 계산된 관련성에 근거하여 관련성이 높은 값을 갖는 문서를 사용자가 입력한 검색어로 검색하고자 하는 문서로 선택하는 단계를 더 포함하여 구성되는 것을 특징으로 하는 색인 단어의 문서내 위치 정보에 대한 관련성을 이용한 문서 검색 방법에 관한 것이다. The present invention relates to a document retrieval method using the relevance of the index word in the document position information, generating a document information for the document stored in the database in the search engine, generating a word information, word-document information Generating a query word input to the search engine as the index word in the generated word-document information, and when the query word is two or more words using the location information of the word in the text, each query word is clustered in the document. In the document retrieval method using the location information in the document of the existing index word to efficiently search for the document containing the query in the case of forming a high relevance, up to three position information of the word in the text The number of locations where words exist and the location information of the words are limited to meaningful ones. Generating a location information structure to be generated, and obtaining a relationship by using the location information structure in the form of (word identification x word frequency in a document) + weight + cluster degree according to an index field in a document, and in the step And selecting a document having a high relevance value as a document to be searched by a user input search word based on the calculated relevance. A document search method.
본 발명에 의하면 본문 내에서의 단어의 위치 정보를 3개 까지만 의미 있는 것으로 제한하여 단어가 존재하는 위치의 갯수, 상기 단어의 위치 정보로 구성되는 위치 정보 구조체를 생성하여 이에 따른 관련성을 계산하여 문서를 검색하는 과정을 수행하므로, 기존의 문서 검색 방법에서와 같이 가변적인 문서 내 색인 단어의 위치에 따라 별도의 색인 파일을 형성하여 그 위치와 키값을 이용하여 연산하는 과정에서 필연적으로 발생하는 급격한 디스크 IO에 따른 기하급수적인 검색 속도의 저하를 방지하여, 재현율을 저하시키지 않으면서도 빠른 검색 속도와 정확한 검색 결과의 출력을 가능하게 한다는 장점이 있다. According to the present invention, by limiting the position information of the words in the text to only three meaningful, by generating a position information structure consisting of the number of positions where the words exist, the position information of the words to calculate the relevance according to the document As the existing document search method, the disk is inevitably generated in the process of forming a separate index file according to the position of the index word in the variable document and using the position and the key value. It is possible to prevent the exponential deterioration of the search speed due to the IO, thereby enabling the rapid search speed and accurate output of the search results without reducing the recall.
Description
본 발명은 색인 단어의 문서내 위치 정보에 대한 관련성을 이용한 문서 검색 방법에 관한 것으로, 검색엔진에서 데이터 베이스에 저장된 문서에 대하여 문서 정보를 생성하는 단계, 단어 정보를 생성하는 단계, 단어-문서 정보를 생성하는 단계, 상기 생성된 단어-문서 정보에서 상기 검색 엔진에 입력된 질의어를 색인단어로 하여 상기 본문 내에서의 단어의 위치 정보를 이용하여 질의어가 2 단어 이상인 경우 질의어 각각이 문서 내에서 군집을 형성하는 경우 관련성이 높은 것으로 판단하여 질의어를 포함하는 문서를 효율적으로 검색하는 기존의 색인 단어의 문서 내 위치 정보를 이용한 문서 검색 방법에 있어서, 상기 본문 내에서의 단어의 위치 정보를 3개 까지만 의미 있는 것으로 제한하여 단어가 존재하는 위치의 갯수, 상기 단어의 위치 정보로 구성되는 위치 정보 구조체를 생성하는 단계와, 상기 위치 정보 구조체를 이용하여 (상기 단어 식별성×문서내 단어 빈도수)+ 상기 문서내 색인 필드에 따른 가중치+ 상기 군집도의 식으로 관련성을 구하는 단계와, 상기 단계에서 계산된 관련성에 근거하여 관련성이 높은 값을 갖는 문서를 사용자가 입력한 검색어로 검색하고자 하는 문서로 선택하는 단계; 를 더 포함하여 구성되는 것을 특 징으로 하는 색인 단어의 문서내 위치 정보에 대한 관련성을 이용한 문서 검색 방법에 관한 것이다.The present invention relates to a document retrieval method using the relevance of the index word in the document position information, generating a document information for the document stored in the database in the search engine, generating a word information, word-document information Generating a query word input to the search engine as the index word in the generated word-document information, and if the query word is two or more words using the location information of the word in the text, each query word is clustered in the document. In the document retrieval method using the location information in the document of the existing index word to efficiently search for the document containing the query in the case of forming a high relevance, up to three position information of the word in the text The number of locations where words exist and the location information of the words are limited to meaningful ones. Generating a location information structure comprising the steps of: calculating a relationship by using the location information structure (the word identity × word frequency in a document) + weight according to the index field in the document + the cluster degree; Selecting a document having a high relevance value as a document to be searched by a user input search word based on the relevance calculated in the step; It relates to a document retrieval method using the relevance to the location information in the document of the index word characterized in that it further comprises.
일반적으로, 인터넷 포털 사이트나 컴퓨터 시스템에서 하나 이상의 단어(검색어, 색인어)를 입력하여 관련된 내용이 존재하는 문서를 검색하는 검색 엔진의 검색 대상이 되는 문서는 도 1에 도시한 것과 같이 정보를 자연어형태 문장의 연속으로 표현하고 있고, 문장은 궁극적으로 단어의 연속으로 표현된다. 검색엔진은 이 문서를 단어 중심으로 표현(색인)하고, 단어를 이용하여 문서를 찾는(검색) 시스템으로서, 문서, 단어, 단어-문서의 3가지 객체를 주요 요소로 고려한다. In general, documents that are search targets of a search engine that input one or more words (search terms, index terms) in an Internet portal site or a computer system to search for a document having related contents are presented in natural language form as shown in FIG. It is expressed as a series of sentences, and the sentence is ultimately expressed as a sequence of words. The search engine is a system that expresses (indexes) this document around words and searches for documents using words. It considers three objects: documents, words and word-documents as main elements.
이러한 상기 검색 엔진의 고려 요소 중 "문서"는 연관있는 정보를 표현하고 있는 최소 단위로서, 검색엔진에 있어서는 문서가 속해 있는 크고 작은 분류명, 생성된 날짜, 제목, 작성자등의 문서정보에 속한 부분과 정보를 표현하고 있는 본문 등과 같은 속성을 가질 수 있다. 검색엔진 내에서 문서는 문서명 등 검색엔진 외부에서 다루어지는 이름이 아닌 4Byte의 정수(문서 ID: Document ID (DocID))로 관리되어지며, 검색엔진 외부와의 연동을 위해 DocID:외부이름 테이블은 별도로 관리된다. 이에 관련되는 파일로는 문서의 외부ID와 내부에서 관리되는 ID의 연관 Table로 도 2 및 표 1, 표 2에 도시한 형태의 외부 문서 연동 키 테이블(Drid :Document Relation ID), 문서관련 정보의 Key값을 보관하며, DocID를 Key값으로 하며 도 3 및 표 3에 도시한 형태의 문서저장정보(Dmst: Document Master Information), 문 서의 필드 정보를 스트림형태로 저장하는 도 4에 도시한 형태의 문서헤더정보(Dinf :Document Information), 문서의 원본 본문을 스트림형태로 저장하는 도 5에 도시한 형태의 문서원본정보(Dorg :Original Document), 문서의 ASCII Text 본문을 스트림형태로 저장(색인에 사용)하는 도 6에 도시한 형태의 문서텍스트정보 (Dtxt :Text Document)가 있다. Among the elements of consideration of the search engine, "document" is a minimum unit representing related information. In a search engine, a part belonging to document information such as a large and small classification name, a created date, a title, and an author, etc. It can have attributes such as text that represents information. Within the search engine, documents are managed as 4 byte integers (Document ID: Document ID (DocID)) rather than names handled outside the search engine, such as the document name. Managed. The files related to this are associative tables of external IDs of documents and internally managed IDs. External document interworking key tables (Drid: Document Relation ID) and document related information of the types shown in FIGS. 4, which stores the key value, the DocID as the key value, and stores document storage information (Dmst: Document Master Information) in the form shown in FIGS. 3 and 3, and field information of the document in a stream form. Document header information (Dinf: Document Information), document source information (Dorg: Original Document) of the form shown in FIG. 5 for storing the original body of the document in the form of a stream, and ASCII text body of the document in the form of a stream (index There is document text information (Dtxt: Text Document) of the form shown in FIG.
한편, 상기 검색 엔진의 고려 요소 중 두 번째 요소인 "단어"는 색인과정시 검색엔진에 의해 생성되는 개체로서 색인된 문서 집합 내에서 해당 단어가 나타난 문서수, 누적된 색인 빈도수, 누적된 색인 필드 정보 등의 속성을 갖는다. 단어 또한 검색엔진 내부에서는 4Byte 정수(WordID)로 관리되어지며, 질의어 등 검색엔진 외부와의 연동을 위해 Word:WordID는 별도의 테이블로 관리된다. 이에 관련되는 파일로는 Word와 내부 WordID의 연관 Table로 도 7 및 표 4와 표 5에 에 도시한 형태의 외부단어연동테이블(Wrid : Word Relation ID)과, IDL(Inverted Document List:색인문서리스트) 저장하고 있으며, WordID를 Key값으로 사용하며 도 8 및 표 6에 도시한 형태를 가지는 색인단어정보(Wmst: Word Master Information) 테이블이 있다.On the other hand, the second element of the search engine consideration factor "word" is an entity created by the search engine during the indexing process, the number of documents in which the word appears in the indexed document set, the accumulated index frequency, the accumulated index field It has attributes such as information. Words are also managed as 4 byte integers (WordIDs) inside the search engine, and Word: WordID is managed as a separate table for interworking with external search engines such as query words. Related files include Word and internal WordID association table. External Word Interworking Table (Wrid: Word Relation ID) and IDL (Inverted Document List) as shown in FIGS. 7 and 4 and 5. ), There is an index word information (Wmst: Word Master Information) table having the form shown in Figs.
다음으로, 상기 검색 엔진의 고려 요소 중 마지막 요소인 "단어-문서"는 색인 과정시 검색엔진에 의해 생성되며, 단어가 문서내에서 갖는 특성을 속성으로 하며 문서 내에서의 색인된 필드, 빈도 수와 본문 내에서의 단어의 위치, 처음 나온 블럭(256Byte 단위) 정보 등이 추출된다. 이 정보는 WordID를 Key값으로 갖는 List형태로 관리되어 지며, 이 정보를 어떻게 관리하고 이용하느냐가 검색엔진 성능을 좌우한다고 할 수 있다. 이에 관련되는 파일로는 색인문서리스트저장구조(IdlBK: Inverted Document List Bucket)의 단편화 현상으로 인한 검색속도 저하 현상을 제거하기 위한 1차 Buffering 파일로서 도 9에 도시한 형태를 갖는 Idl.tmp 파일과, 단편화 현상이 제거된 색인문서리스트저장구조(IdlBK: Inverted Document List Bucket)를 보관하며 도 10 및 표 7~9의 구조를 가지는 Idl.ext파일이 있다.Next, "word-document", which is the last element of the search engine's consideration factor, is generated by the search engine during the indexing process, is a property of a word in the document, and is indexed in the document. And the location of words in the text and the first block (in 256 bytes). This information is managed as a list with WordID as a key value, and how the information is managed and used can determine the performance of the search engine. Related files include an Idl.tmp file having the form shown in FIG. 9 as a primary buffering file for removing a search speed degradation due to fragmentation of an Inverted Document List Bucket (IdlBK). In other words, there is an Idl.ext file that stores an Inverted Document List Bucket (IdlBK) structure in which fragmentation is removed and has the structure of FIG. 10 and Tables 7-9.
상기한 정보들이 처리되는 색인 구조는 기존의 일반적인 검색 엔진의 경우 도 11에 도시한 것과 같은 구조로 검색 엔진의 메모리에 저장되어 처리되며, 이 경우 생성되고 처리되는 파일들은 도 12에 도시한 것과 같은 구조로 처리된다. 이러한 기존의 검색 엔진의 일반적 검색 방법에서는, 단어-문서 간의 정보 중 단어의 위치(Position) 정보를 관련성 계산 알고리즘에 적용하여 정확도를 높이고, 재현율과 검색속도는 유지하기 위하여, 위치정보 저장에 약간의 제약을 둔다. 이러한 제약을 두어 검색의 정확도를 높이기 위한 전제는 "질의어가 2단어 이상일 때, 이 질의어 각각이 문서 내에서 군집을 형성한다면, 그 문서는 군집을 형성하지 않는 문서보다 사용자에게 보다 높은 관련성을 갖는다."는 것이다. 예를 들어, 검색 질의어가 A, B의 두 단어인 경우, "...A..B........" 와 같이 질의어 A와 질의어 B의 위치가 가까와 군집을 형성하는 경우의 문서가 "...A...........B.."와 같이 질의어 A와 질의어 B의 위치가 비교적 먼 경우의 문서에 비하여 사용자가 입력한 검색 질의어의 내용과 관련성이 높은 문서일 가능성이 높다. 이 전제하에 반드시 필요한것이 상기 표 9의 최하단의 위치 정보 구조체로 표현된 문서 내 색인단어의 위치 정보인데, 기존의 검색엔진에서 사용하는 방법에서는 이 위치정보가 가변적이기 때문에 고정화시킬 수 없었고 따라서, 도 13에 도시한 것과 같이 별도의 색인 파일에 위치정보를 기록하고, 그 위치와 개수를 키값으로 따로 보관하여 연산에 사용하여 왔다. 이 방법은 문서 내에 나타나는 모든 위치정보를 이용할 수 있다는 장점이 있지만, 많은 디스크 IO를 유발시켜 결국은 검색속도를 기하급수적으로 저하시켜 동시사용자를 만족해야 하는 대형 검색시스템에 적용 시키기 어렵다는 문제점이 있었다. The index structure in which the above information is processed is stored and processed in the memory of the search engine in the structure of the existing general search engine as shown in FIG. 11, and in this case, the generated and processed files are as shown in FIG. 12. Is treated as a structure. In the general search method of such a conventional search engine, in order to increase the accuracy by applying the position information of the word-document information to the relevance calculation algorithm, and to maintain the reproducibility and the retrieval speed, there is a slight Put constraints The premise for improving the accuracy of the search with such a restriction is that "when the query has two or more words, if each of these queries forms a cluster within the document, the document is more relevant to the user than a document that does not form a cluster. " For example, if the search query is two words of A and B, the position of the query A and the query B close to each other to form a cluster, such as "... A..B ........" The document has a relevance to the contents of the search query entered by the user compared to the document where the locations of Query A and Query B are relatively far, such as "... A ........... B .." Highly likely document. Under this premise, the necessary information is the position information of the index word in the document represented by the position information structure at the bottom of Table 9. However, in the existing method used in the search engine, the position information could not be fixed because it is variable. As shown in Fig. 13, the location information is recorded in a separate index file, and the location and number are kept separately as key values and used for calculation. This method has the advantage of being able to use all the location information appearing in the document, but it causes a lot of disk IO and ultimately decreases the search speed exponentially, making it difficult to apply to large search systems that need to satisfy simultaneous users.
본 발명은 상기와 같은 문제점을 해결하기 위해 안출된 것으로, 검색엔진에서 데이터 베이스에 저장된 문서에 대하여 문서 정보를 생성하는 단계, 단어 정보를 생성하는 단계, 단어-문서 정보를 생성하는 단계, 상기 생성된 단어-문서 정보에서 상기 검색 엔진에 입력된 질의어를 색인단어로 하여 상기 본문 내에서의 단어의 위치 정보를 이용하여 질의어가 2단어 이상인 경우 질의어 각각이 문서 내에서 군집을 형성하는 경우 관련성이 높은 것으로 판단하여 질의어를 포함하는 문서를 효율적으로 검색하는 기존의 색인 단어의 문서내 위치 정보를 이용한 문서 검색 방법에 있어서, 상기 본문 내에서의 단어의 위치 정보를 3개 까지만 의미 있는 것으로 제한하여 단어가 존재하는 위치의 갯수, 상기 단어의 위치 정보로 구성되는 위치 정보 구조체를 생성하는 단계와, 상기 위치 정보 구조체를 이용하여 (단어 식별성×문서내 단어 빈도수)+ 문서내 색인 필드에 따른 가중치+ 군집도의 식으로 관련성을 구하는 단계와, 상기 단계에서 계산된 관련성에 근거하여 관련성이 높은 값을 갖는 문서를 사용자가 입력한 검색어로 검색하고자 하는 문서로 선택하는 단계를 더 포함하여 구성되는 것을 특징으로 하는 색인 단어의 문서내 위치 정보에 대한 관련성을 이용한 문서 검색 방법을 제공하여, 기존의 문서 검색 방법에서와 같이 가변적인 문서 내 색인 단어의 위치에 따라 별도의 색인 파일을 형성하여 그 위치와 키값을 이용하여 연산하는 과정에서 필연적으로 발생하는 급격한 디스크 IO에 따른 기하급수적인 검색 속도의 저하를 방지하여, 재현율을 저하시키지 않으면서도 빠른 검색 속도와 정확한 검색 결과의 출력이 가능하도록 하는 것을 주목적으로 한다.The present invention has been made to solve the above problems, the step of generating document information for the document stored in the database in the search engine, generating the word information, generating the word-document information, the generation In the case of the word-document information, when the query word input to the search engine is an index word and the query word is two words or more by using the location information of the word in the text, each of the query words forms a cluster in the document. In the document search method using the location information in the document of the existing index word to determine that the document containing the query efficiently, the word is limited by limiting the position information of the word in the text to only three meaningful Create a location information structure consisting of the number of existing locations, the location information of the word (B) obtaining a relevance using the position information structure using (word identity x word frequency in a document) + weight according to an index field in a document + cluster degree; and relevance based on the relevance calculated in the step. Providing a document retrieval method using the relevance to the location information in the document of the index word, characterized in that it further comprises the step of selecting a document having a high value as a document to be searched by the user's input search word, As in the existing document search method, exponential search speed due to the sudden disk IO inevitably occurred in the process of forming a separate index file according to the position of the index word in the variable document and using the position and the key value. Speed and accurate search results without sacrificing recall The main purpose is to enable to output.
상기한 목적을 달성하기 위해 본 발명의 색인 단어의 문서 내 위치 정보에 대한 관련성을 이용한 문서 검색 방법은, 검색엔진에서 데이터 베이스에 저장된 문서에 대하여, 연관있는 정보를 표현하고 있는 최소 단위로서 문서가 속해 있는 크고 작은 분류명, 생성된 날짜, 제목, 작성자 등의 문서정보에 속한 부분과 정보를 표현하고 있는 본문 등에 관한 속성을 가지는 개체인 문서 정보를 색인하여 생성하는 단계, 상기 색인된 문서 정보의 문서 집합 내에서 해당 단어가 나타난 문서 수, 누적된 색인 빈도 수, 누적된 색인 필드 정보 등에 관한 속성을 가지는 개체인 단어 정보를 생성하는 단계, 상기 색인된 문서 정보와 단어 정보를 연관하여 단어가 문서 내에서 갖는 특성을 속성으로 하며 문서 내에서의 색인된 필드 및 빈도 수와, 본문 내에서의 단어의 위치, 처음 나온 블럭(256Byte 단위) 정보에 관한 속성을 가지는 단어-문서 정보를 생성하는 단계, 상기 생성된 단어-문서 정보에서 상기 검색 엔진에 입력된 질의어를 색인단어로 하여 상기 본문 내에서의 단어의 위치 정보를 이용하여 질의어가 2단어 이상인 경우 질의어 각각이 문서 내에서 군집을 형성하는 경우 관련성이 높은 것으로 판단하여 질의어를 포함하는 문서를 효율적으로 검색하는 기존의 색인 단어의 문서내 위치 정보를 이용한 문서 검색 방법에 있어서, 상기 본문 내에서의 단어의 위치 정보를 3개 까지만 의미 있는 것으로 제한하여 단어가 존재하는 위치의 갯수, 상기 단어의 위치 정보로 구성되는 위치 정보 구조체를 생성하는 단계와, 상기 위치 정보 구조체를 이용하여 전체 색인 문서집합중 색인이 가장 많이 된 단어의 색인 빈도수(전체 색인문서수 * 3) 인 N, 구하고자 하는 단어의 색인 빈도수인 n 을 이용하여
의 공식에 의하여 단어 식별성(IDF:Inverted Document Frequency)을 구하는 단계와, 제목 필드(Title Field) > 예비 필드(Reserved Field) > 저자명 필드(Author Field)의 순과 같이 문서내 색인 필드에 따른 가중치를 구하는 단계와, 상기 위치 정보 구조체를 이용하여 각 각의 색인 단어 사이의 군집도를 수치적으로 구하는 군집도 연산(Within 연산)에 의하여 군집도를 구하는 단계와, (상기 단어 식별성×문서내 단어 빈도수)+ 상기 문서내 색인 필드에 따른 가중치+ 상기 군집도의 식으로 관련성을 구하는 단계와, 상기 단계에서 계산된 관련성에 근거하여 관련성이 높은 값을 갖는 문서를 사용자가 입력한 검색어로 검색하고자 하는 문서로 선택하는 단계를 더 포함하여 구성되는 것을 특징으로 한다.In order to achieve the above object, a document retrieval method using the relevance of the index word in the document to the location information of the present invention is a document as a minimum unit expressing related information with respect to a document stored in a database in a search engine. Indexing and generating document information, which is an object having attributes relating to a part of document information such as a large and small classification name belonging to it, a date created, a title, an author, and a text representing information, the document of the indexed document information Generating word information that is an object having attributes related to the number of documents in which the word appears in the set, the accumulated index frequency, the accumulated index field information, and the like, and the word is associated with the indexed document information and the word information. The attributes of the attribute in the document, and the number of indexed fields and frequencies in the document, Generating word-document information having attributes relating to the position and the first block (256-byte unit) information; a word in the text using the query word input to the search engine as the index word in the generated word-document information. If the query is more than two words by using the location information of, it is determined that the query is highly related when each query is formed in the document, and the location information in the document of the existing index word is searched to efficiently search for the document including the query. A document retrieval method comprising the steps of: generating a location information structure consisting of the number of locations where a word exists and the location information of the word by limiting the location information of the word in the text to only three meanings; The index frequency of the most indexed words in the entire index document using the geolocation structure N, which is the number of index documents * 3), and n, which is the index frequency of the word
Obtaining the word identity (IDF: Inverted Document Frequency) according to the formula, and weighting the index field in the document in the order of Title Field> Reserved Field> Author Field. Obtaining a cluster by a clustering operation (within operation) that numerically obtains a cluster between each index word using the location information structure; and (the word discrimination x word frequency in a document). ) + A weighting value according to the index field in the document + a document for which a user inputs a search word for a document having a high relevance value based on the relevance calculated in the step; Characterized in that further comprises the step of selecting.
또한, 상기 군집도를 구하는 군집도 연산(WithIn 연산)은 상기 위치 구조 정보체의 각 단어가 군집을 이루는 거리를 이용하여, 1) 군집도=0으로 초기화하는 단계와, 2) 단어 1의 위치 개수와 단어 2의 위치개수를 변수로 하는 이중 순환 루프에서, 변수 Within=절대값(단어 1의 위치[단어 1의 위치 개수]-단어 2의 위치[단어 2의 위치 개수])+1을 계산하고, 군집도에 (30/Within)을 누적하여 더하는 단계와, 3) 상기 2) 단계에서 계산된 군집도에 가중치를 곱하는 단계를 더 포함하여 구성되는 것을 특징으로 한다.The clustering operation (within operation) for obtaining the clustering degree may include: 1) initializing the clustering ratio to 0 using a distance at which each word of the position structure information clusters, and 2) position of the
또한, 상기 군집도를 구하는 군집도 연산(WithIn 연산)은 상기 위치 구조 정보체의 각 단어가 군집을 이루는 빈도수를 이용하여, 1) 군집도=0으로 초기화하는 단계와, 2) 단어 1의 위치 개수와 단어 2의 위치개수를 변수로 하는 이중 순환 루프에서, 절대값(단어 1의 위치[단어 1의 위치 개수]-단어 2의 위치[단어 2의 위치 개수])<15 인 경우 군집도에 1을 누적하여 더하는 단계와, 3) 상기 2) 단계에서 계산된 군집도에 가중치를 곱하는 단계를 더 포함하여 구성되는 것을 특징으로 한다.The clustering operation (within operation) for calculating the clustering degree may include: 1) initializing the clustering ratio = 0 using a frequency at which each word of the position structure information clusters, and 2) position of the
본 발명에 의하면, 본문 내에서의 단어의 위치 정보를 3개 까지만 의미 있는 것으로 제한하여 단어가 존재하는 위치의 갯수, 상기 단어의 위치 정보로 구성되는 위치 정보 구조체를 생성하여 이에 따른 관련성을 계산하여 문서를 검색하는 과정을 수행하므로, 기존의 문서 검색 방법에서와 같이 가변적인 문서 내 색인 단어의 위치에 따라 별도의 색인 파일을 형성하여 그 위치와 키값을 이용하여 연산하는 과정에서 필연적으로 발생하는 급격한 디스크 IO에 따른 기하급수적인 검색 속도의 저하를 방지하여, 재현율을 저하시키지 않으면서도 빠른 검색 속도와 정확한 검색 결과의 출력을 가능하게 한다는 장점이 있다. According to the present invention, by limiting the position information of the words in the text to only three meaningful means to generate a position information structure consisting of the number of positions where the words exist, the position information of the words to calculate the relevance accordingly As the document search process is performed, as in the existing document search method, a sudden index that is inevitably generated in the process of forming a separate index file according to the variable index word position in the document and using the position and key value is calculated. It is possible to prevent the exponential deterioration of the search speed due to the disk IO, thereby enabling the fast search speed and accurate output of the search results without reducing the refresh rate.
이하에서는 첨부된 도면을 참조로 하여, 본 발명의 일 실시 예에 따른 색인 단어의 문서 내 위치 정보에 대한 관련성을 이용한 문서 검색 방법을 상세히 설명한다. 우선, 도면들 중, 동일한 구성요소 또는 부품들은 가능한 한 동일한 참조부호로 나타내고 있음에 유의하여야 한다. 본 발명을 설명함에 있어, 관련된 공지 기 능 혹은 구성에 관한 구체적인 설명은 본 발명의 요지를 모호하지 않게 하기 위하여 생략한다.Hereinafter, with reference to the accompanying drawings, a document retrieval method using the relevance of the position information in the document of the index word according to an embodiment of the present invention will be described in detail. First, in the drawings, the same components or parts are to be noted that as indicated by the same reference numerals as possible. In describing the present invention, detailed descriptions of related well-known functions or configurations are omitted in order not to obscure the subject matter of the present invention.
본 발명은, 크게 1) 문서 정보를 생성하는 단계, 2) 단어 정보를 생성하는 단계, 3) 단어-문서 정보를 생성하는 단계, 4) 상기 본문 내에서의 단어의 위치 정보를 3개 까지만 의미 있는 것으로 제한하여 단어가 존재하는 위치의 갯수, 상기 단어의 위치 정보로 구성되는 위치 정보 구조체를 생성하는 단계, 5) 단어 식별성(IDF:Inverted Document Frequency)을 구하는 단계, 6) 문서내 색인 필드에 따른 가중치를 구하는 단계, 7) 상기 위치 정보 구조체를 이용하여 각 각의 색인 단어 사이의 군집도를 수치적으로 구하는 군집도 연산(Within 연산)에 의하여 군집도를 구하는 단계, 8) (상기 단어 식별성×문서내 단어 빈도수)+ 상기 문서내 색인 필드에 따른 가중치+ 상기 군집도의 식으로 관련성을 구하는 단계 및 9) 상기 단계에서 계산된 관련성에 근거하여 관련성이 높은 값을 갖는 문서를 사용자가 입력한 검색어로 검색하고자 하는 문서로 선택하는 단계를 포함하여 구성된다. 이 단계 중 1)~3) 단계까지의 문서 정보, 단어 정보, 단어-문서 정보를 생성하여 관련 파일과 데이터 테이블을 생성하는 방법은 "발명이 속하는 기술분야 및 그 분야의 종래기술"의 항에서 상술한 기존의 검색 방법과 동일한 방법으로, 본 발명이 속하는 기술 분야에서 널리 알려지고 사용되는 공지된 방법이므로, 상세한 설명은 생략한다.The present invention broadly refers to 1) generating document information, 2) generating word information, 3) generating word-document information, and 4) up to three location information of words in the text. Generating a location information structure consisting of the number of locations where the word exists, the location information structure of the word, 5) obtaining the IDF (Inverted Document Frequency), 6) in the index field in the document. Obtaining a weighting according to the method; 7) obtaining a clustering degree by a clustering operation (within operation), which numerically obtains a clustering degree between each index word using the location information structure, and 8) (the word identification × word frequency in the document) + weighting according to the index field in the document + calculating the relevance in the formula of the cluster and 9) calculating a highly relevant value based on the relevance calculated in the step And selecting a document to be searched for by a search word input by the user. The method of generating document information, word information and word-document information from steps 1) to 3) of this step to generate related files and data tables is described in the section "Technology to which the Invention belongs and Prior Art in the Field". In the same manner as the conventional search method described above, since it is a known method widely known and used in the technical field to which the present invention belongs, a detailed description thereof will be omitted.
다음으로, 위치 정보 구조체를 생성하는 단계에 관하여 설명한다. 일반적으로 상술한 기존 검색 엔진에서 사용하는 위치 정보 구조체의 생성 방법에서와 같이 문서 내 색인단어의 위치 정보를 가변적인 것으로 취급하여 고정화시키지 않고 별도의 색인 파일에 위치정보를 기록하고, 그 위치와 개수를 키값으로 따로 보관하여 연산하는 경우에는, 상술한 바와 같이 많은 디스크 IO를 유발시켜 검색속도가 기하급수적으로 저하시켜 동시사용자를 만족해야 하는 대형 검색시스템에 적용 시키기 어렵다는 문제점이 있었다. 이를 해결하기 위해서는 검색속도를 유지하기 위해서 고정길이의 정보로 표현할 수 있는 효율적인 방법이 필요했고, 웹문서 및 기타 Text문서의 평균크기가 4K Byte 미만인 점, 그리고 단어 식별성(IDF:Inverted Document Frequency)값을 계산시 사용하는 공식
에서 N(가장 많이 색인된 단어의 빈도수)값 설정시, 전체 문서수 * 3으로 한다는 것을 고려할 때, 한 문서 내에서 색인된 단어의 위치 정보를 3개 까지만 의미 있는 것으로 제한하고 , 그에 맞는 최적의 위치 정보 구조체를 비트 필드(Bit Field)를 이용해서 만들어 검색엔진에 응용하는 것이 바람직하다. 그 위치 정보 구조체는 기존의 위치 정보 구조체와 달리, 아래 표 10 및 도 14에 도시한 것과 같은 구조를 가지는 것이 바람직하다.Next, a step of generating a positional information structure will be described. In general, as in the method of generating the location information structure used by the existing search engine described above, the location information of the index word in the document is treated as variable and the location information is recorded in a separate index file without being fixed and the location and number In the case of calculating and storing the key as a key value, as described above, there is a problem that it is difficult to apply to a large search system that needs to satisfy simultaneous users by causing a large number of disk IOs and thus reducing the search speed exponentially. In order to solve this problem, an efficient method that can be represented by fixed-length information is needed to maintain the search speed, the average size of web documents and other text documents is less than 4K Byte, and IDF (Inverted Document Frequency) value. The formula used to calculate
In setting the value of N (the frequency of the most indexed words) in, considering that the total number of documents * 3, limit the location information of the indexed words within a document to only three meaningful ones. It is desirable to create a location information structure using a bit field and apply it to a search engine. Unlike the existing location information structure, the location information structure preferably has a structure as shown in Table 10 and FIG. 14 below.
여기에서, 위치 정보 구조체의 비트 필드는 TIdlPos = PosCnt + 0[Position]2로 구성되며, 위치 기록 개수는 색인된 단어의 위치 정보를 3개까지만 의미 있는 것으로 한정하여 저장하므로 2Bit를 차지한다. 한편, 문서 내 색인 단어의 위치정보를 기록하는 비트는 10Bit로 하면, 전체 위치 정보 구조체는 3개의 위치 기록 개수를 기록하는 2Bit와, 문서 내 색인 단어의 위치정보를 기록하는 10Bit 3개로 구성되므로, 전체 위치 정보 구조체의 크기는 2+3×10 =32Bit=4Byte가 된다. 한편, 하나의 색인 단어의 위치 정보를 나타내는 10Bit로 표현할 수 있는 수는 210 = 1024 이고, 색인단어의 평균 길이를 한글 3자(6Byte)로 가정하면, 상기한 구조의 위치 정보 구조체를 사용하여 최대 6K Byte의 Text문서에서 위치정보를 오류 없이 기록할 수 있다.Here, the bit field of the location information structure is composed of TIdlPos = PosCnt + 0 [Position] 2, and the number of location records occupies 2Bit because only up to three pieces of location information of the indexed word are stored. On the other hand, if the bit for recording the location information of the index word in the document is 10Bit, the entire location information structure is composed of 2Bit for recording the number of three position records and three 10Bit for recording the location information for the index word in the document. The size of the entire location information structure is 2 + 3 × 10 = 32 Bit = 4 bytes. On the other hand, the number that can be represented by 10Bit representing the position information of one index word is 2 10 = 1024, and if the average length of the index word is 3 Korean characters (6 bytes), the position information structure of the above structure is used. Location information can be recorded without error in text document of maximum 6K Byte.
다음으로, 단어 식별성(IDF:Inverted Document Frequency)을 구하는 단계에 관하여 설명한다. 상기 단어 식별성(IDF:Inverted Document Frequency)을 구하는 단계는 상기한 위치 정보 구조체를 이용하여 전체 색인 문서집합중 색인이 가장 많이된 단어의 색인 빈도수(전체 색인문서수 * 3)를 N, 구하고자 하는 단어의 색인 빈도수를 n 이라 할 때 아래의 수학식 1과 같은 공식에 의하여 계산된다. Next, a step of obtaining word inverted document frequency (IDF) will be described. The step of obtaining the IDF (Inverted Document Frequency) is to obtain the index frequency (the total number of index documents * 3) of the word with the most index in the entire index document set using the location information structure. When the index frequency of the word n is calculated by the following formula (1).
상기 단어 식별성 값은 1에서 13의 값의 범위에 수렴하며, 식별성이 높을수록 큰 값을 갖는다.The word discrimination value converges in a range of values from 1 to 13, and the higher the identity, the larger the value.
다음으로, 문서 내 색인 필드에 따른 가중치를 구하는 단계에 관하여 설명한다. 상기 가중치를 구하는 단계는 질의어가 한 단어일 때, 관련성 계산시 중요 요소로 작용하는데, 가중치를 두는 이유는 사용자(검색자)마다 중요하게 생각하는 요소가 다르기 때문이다. 따라서 그 순서에는 사용자(검색자)에 따라 여러 가지 순서를 주관적으로 조합하는 것이 가능하다. 이러한 가중치 부여의 한 실시 예로, 가장 일반적인 가중치의 값은 제목 필드(Title Field) > 예비 필드(Reserved Field) > 저자명 필드(Author Field)의 순이고, 색인되는 문서집합의 특성에 맞춰 필드와 가중치 값의 조정이 가능하다.Next, a step of obtaining weights according to index fields in the document will be described. The step of obtaining the weight acts as an important factor in calculating the relevance when the query word is a single word, because the weighting factor is different for each user (searcher). Therefore, it is possible to subjectively combine various orders in the order according to a user (searcher). As an example of such weighting, the most common value of weight is title field> reserved field> author field, and field and weight values according to the characteristics of the document set being indexed. Can be adjusted.
다음으로, 군집도를 구하는 단계에 관하여 설명한다. 상기 군집도를 구하는 단계는 각 각의 색인 단어 사이의 군집도를 수치적으로 구하는 단계이다. 이러한 군집도를 구하는 방법으로는 여러 가지 방법이 사용될 수 있다. 그 한 실시예로, 상기 군집도를 구하는 군집도 연산(WithIn 연산)은 상기 위치 구조 정보체의 각 단어가 군집을 이루는 거리에 중점을 두어, 상기 위치 구조 정보체의 각 단어가 군집을 이루는 거리를 이용하여, 1) 군집도=0으로 초기화하는 단계와, 2) 단어 1의 위치 개수와 단어 2의 위치개수를 순환 횟수의 변수로 하는 이중 순환 루프에서, 변수 Within=절대값(단어 1의 위치-단어 2의 위치)+1을 계산하고, 군집도에 (30/Within)을 누적하여 더하는 단계 및 3) 상기 2) 단계에서 계산된 군집도에 가중치를 곱하는 단계로 구성하는 것이 바람직하다. 상기 단계를 프로그램으로 표현하면 아래와 같이 표현할 수 있다. 이 경우 단어 1 위치 및 단어 2 위치는 각각 단어 1의 위치 개수와 단어 2의 위치 개수를 어레이 변수로 하는 변수로(즉, 프로그램상에서 예를 들면 "단어 1위치[단어 1의 위치 개수]"와 같이 코딩하여) 단어 1의 위치 개수와 단어 2의 위치개수에 따른 순환루프에서 단어 1위치와 단어 2위치가 순차적으로 적용된다. Next, the step of obtaining a cluster degree is demonstrated. The step of calculating the cluster degree is a step of numerically calculating the cluster degree between each index word. Various methods can be used to obtain such clusters. In one embodiment, the clustering operation (WithIn operation) for calculating the clustering degree focuses on the distance at which each word of the positional structure information clusters, and the distance at which each word of the positional structure information clusters. 1) initializing the cluster degree = 0, and 2) in a double circular loop where the number of positions of
관련성 = 0Relevance = 0
FOR 단어1의 위치 개수Number of positions of FOR word1
FOR 단어2의 위치 개수Number of positions of FOR word2
Within = 절대값(단어 1위치[단어 1의 위치 개수] -단어 2위치[단어 2의 위치 개수]) + 1Within = absolute value (
관련성 += (30 / Within)Relevance + = (30 / Within)
END FOREND FOR
END FOREND FOR
관련성 *= 10(가중치)Relevance * = 10 (weighted)
한편, 군집도를 구하는 제2 실시예로 상기 군집도를 구하는 군집도 연산(WithIn 연산)은 상기 위치 구조 정보체의 각 단어가 군집을 이루는 빈도수에 중점을 두어 각 단어가 군집을 이루는 빈도수를 이용하여, 1) 군집도=0으로 초기화하는 단계와, 2) 단어 1의 위치 개수와 단어 2의 위치개수를 변수로 하는 이중 순환 루프에서,절대값(단어 1의 위치-단어 2의 위치)<15 인 경우 군집도에 1을 누적하여 더하는 단계 및 3) 상기 2) 단계에서 계산된 군집도에 가중치를 곱하는 단계로 구성하는 것도 가능하다. 상기 단계를 프로그램으로 표현하면 아래와 같이 표현할 수 있다. 이 경우 역시, 단어 1 위치 및 단어 2 위치는 각각 단어 1의 위치 개수와 단어 2의 위치 개수를 어레이 변수로 하는 변수로(즉, 프로그램상에서 예를 들면 "단어 1위치[단어 1의 위치 개수]"와 같이 코딩하여), 단어 1의 위치 개수와 단어 2의 위치개수에 따른 순환루프에서 단어 1위치와 단어 2위치가 순차적으로 적용된다. On the other hand, according to the second embodiment of calculating the clustering degree, the clustering operation (within operation) for calculating the clustering degree uses a frequency in which each word is clustered by focusing on the frequency of clustering of each word of the position structure information element. 1) initializing the cluster degree = 0; and 2) in a double circular loop having the number of positions of
관련성 = 0Relevance = 0
FOR 단어1의 위치 개수Number of positions of FOR word1
FOR 단어2의 위치 개수Number of positions of FOR word2
IF 절대값(단어 1위치[단어 1의 위치 개수] - 단어2위치[단어 2의 위치 개수]) < 15 THENIF absolute value (
관련성 += 1Relevance + = 1
END FOREND FOR
END FOREND FOR
관련성 *= 10(가중치)Relevance * = 10 (weighted)
이러한 군집도 계산의 제 1 실시예를 도 15와 같은 단어 배치를 갖는 문서를 예로 들어 간략히 설명한다. 도 15와 같은 단어 배치를 갖는 문서에서 단어 A는 모두 4번 나타나므로, 단어 A의 위치 개수는 4이고, 단어 B는 모두 3번 나타나므로 단어 B의 위치 개수는 3이다. 그러나, 본 발명의 색인 단어의 문서 내 위치 정보에 대한 관련성을 이용한 문서 검색 방법에서는 각각의 단어의 위치를 순서대로 처음 3개까지만 유효한 것으로 고정하여 위치 정보 구조체에 저장하므로, 단어 B의 위치 개수는 그대로 3인 반면, 단어 A의 위치 개수는 4가 아닌 3으로 취급된다. 따라서 상기 표 10과 같은 구조를 갖는 단어 A의 상기 위치 정보 구조체(TIdlSL)에는 단어 A의 위치 개수(PosCnt)에 3이, 단어 A의 위치(Position)에는 단어 A의 문장 내 위치인 100, 350,400이 각 각 Pos0, Pos1, Pos2에 저장된다. 한편, 상기 과정을 단어 B에적용하면 단어 B의 상기 표 10과 같은 구조를 갖는 단어 B의 상기 위치 정보 구조체(TIdlSL)에는 단어 B의 위치 개수(PosCnt)에 3이, 단어 B의 위치(Position)에는 단어 B의 문장 내 위치인 107, 362,420이 각각 Pos0, Pos1, Pos2에 저장된다.A first embodiment of such a clustering calculation will be briefly described taking a document having a word arrangement as shown in FIG. 15 as an example. In the document having the word arrangement as shown in FIG. 15, since the word A appears four times, the number of words A is four, and the word B appears three times, so the number of words B is three. However, in the document retrieval method using the relevance of the index word in the document position information of the present invention, since only the first three positions of each word are fixed to be valid and stored in the position information structure, the number of positions of the word B is While it is still 3, the number of positions of the word A is treated as 3 rather than 4. Therefore, in the position information structure TIdlSL of the word A having the structure as shown in Table 10, 3 is the position number PosCnt of the word A, and 100, 350,400 is the position of the word A in the position of the word A. Each of these is stored in Pos0, Pos1, and Pos2. On the other hand, if the process is applied to the word B, the position information structure TIdlSL of the word B having the structure shown in Table 10 of the word B is 3 in the position number PosCnt of the word B, and the position of the word B ), 107, 362, and 420, which are positions in the sentence of word B, are stored in Pos0, Pos1, and Pos2, respectively.
이렇게 저장된 단어 A 와 단어 B의 위치 정보 구조체를 이용하여, 위치 구조 정보체의 각 단어가 군집을 이루는 거리에 중점을 두는 상기 제 1 실시예에 의하여 군집도를 계산하면, 다음과 같다.By using the position information structures of words A and B stored in this way, a cluster degree is calculated according to the first embodiment, which focuses on the distance that each word of the position structure information clusters.
먼저 단어 A의 개수인 3과 단어 B의 개수인 3에 의해 상기 제 1 실시예의 이중 순환 루프의 순환 횟수가 내부 루프 3순환, 외부 루프 3순환으로 결정된다. 그 후, 단어 A에 대한 첫 번째 외부 순환 루프를 수행하는 경우, 단어 A의 첫번째 위치인 100에 대하여 단어 B의 각각의 위치인 107, 362, 420에 대하여 내부 루프를 순환하며 그 차이의 절대값을 구하여 그 절대값으로 30을 나눈 값을 군집도에 누적시키며 더한다.즉, (30/7)+(30/262)+(30/320)이 군집도로 계산된다. 다음으로 단어 A에 대한 두 번째 외부 순환 루프를 수행하는 경우, 단어 A의 두번째 위치인 350에 대하여 단어 B의 각각의 위치인 107, 362, 420에 대하여 내부 루프를 순환하며 그 차이의 절대값을 구하여 그 절대값으로 30을 나눈 값을 군집도에 누적시키며 더한다. 이 경우, (30/243)+(30/12)+(30/70)이 앞의 군집도 값에 누적되어 더해진다. 마지막으로 단어 A에 대한 세 번째 외부 순환 루프를 수행하는 경우, 단어 A의 세번째 위치인 400에 대하여 단어 B의 각각의 위치인 107, 362, 420에 대하여 내부 루프를 순환하며 그 차이의 절대값을 구하여 그 절대값으로 30을 나눈 값을 군집도에 누적시키며 더하여 군집도를 계산한다. 이 경우, (30/293)+(30/38)+(30/20)이 전 단계에서 계산된 군집도에 누적되어 더해진다. 그 후, 계산된 상기 군집도에 가중치(상기 제 1 실시예에서는 10)를 곱한 값을 군집도로 얻는다. First, the number of cycles of the double cyclic loop of the first embodiment is determined by the inner loop 3 cycle and the outer loop 3 cycle by the number 3 of the word A and the number 3 of the word B. Then, when performing the first outer loop for word A, the inner loop is cycled for each of positions B, 107, 362, and 420 for 100, the first position of word A, and the absolute value of the difference. Calculate and add the sum of 30 divided by the absolute value to the cluster, ie (30/7) + (30/262) + (30/320) is calculated as cluster. Next, when we perform the second outer loop for word A, we loop through the inner loop for each of the positions B in
한편, 도 15에 도시한 문서에 대해 생성된 상기 단어 A 와 단어 B의 위치 정보 구조체를 이용하여, 위치 구조 정보체의 각 단어가 군집을 이루는 빈도 수에 중점을 두는 상기 제 2 실시예에 의하여 군집도를 계산하면, 다음과 같다.On the other hand, according to the second embodiment which focuses on the frequency of grouping each word of the position structure information body using the position information structures of the words A and B generated for the document shown in FIG. The clustering is calculated as follows.
먼저 단어 A의 개수인 3과 단어 B의 개수인 3에 의해 상기 제 1 실시예의 이중 순환 루프의 순환 횟수가 내부 루프 3순환, 외부 루프 3순환으로 결정된다. 그 후, 단어 A에 대한 첫 번째 외부 순환 루프를 수행하는 경우, 단어 A의 첫번째 위치인 100에 대하여 단어 B의 각각의 위치인 107, 362, 420에 대하여 내부 루프를 순환하며 그 차이의 절대값을 구하여 그 값이 15보다 작은 경우( 즉, 단어 A 와 단어 B 사이의 거리가 15보다 작은 경우) 단어 A와 단어 B는 서로 군집을 이루는 것으로 판단하여 군집도를 1 증가시킨다. 이 경우, 단어 A의 첫번째 위치 100에 대하여 그 거리가 15 미만인 단어 B의 위치는 단어 B의 위치가 107인 경우뿐이므로, 군집도는 첫번째 내부 순환루프를 통하여 1 증가한다. 다음으로, 단어 A에 대한 두 번째 외부 순환 루프를 수행하는 경우, 단어 A의 두번째 위치 350에 대하여 그 거리가 15 미만인 단어 B의 위치는 단어 B의 위치가 362인 경우뿐이므로 군집도는 두번째 내부 순환루프를 통하여 1 증가하여 2의 값을 같는다. 마지막으로 단어 A에 대한 세 번째 외부 순환 루프를 수행하는 경우, 단어 A의 세 번째 위치 400에 대하여 그 거리가 15 미만인 단어 B의 위치는 존재하지 않으므로 마지막 외부 순환 루프를 순환하는 동안 군집도는 증가하지 않는다. 이러한 상기 군집도에 가중치(상기 제 1 실시예에서는 10)를 곱한 값인 20을 군집도로 얻는다. First, the number of cycles of the double cyclic loop of the first embodiment is determined by the inner loop 3 cycle and the outer loop 3 cycle by the number 3 of the word A and the number 3 of the word B. Then, when performing the first outer loop for word A, the inner loop is cycled for each of positions B, 107, 362, and 420 for 100, the first position of word A, and the absolute value of the difference. If the value is smaller than 15 (that is, if the distance between the words A and B is smaller than 15), the word A and the word B are determined to be clustered with each other and increase the clustering rate by 1. In this case, since the position of the word B with the distance less than 15 with respect to the
다음으로, 관련성을 구하는 단계에 관하여 설명한다. 상기 관련성을 구하는 단계는 상기 단어 식별성(IDF:Inverted Document Frequency)을 구하는 단계, 상기 문서 내 색인 필드에 따른 가중치를 구하는 단계, 상기 군집도를 구하는 단계에서 각각 구하여진 단어 식별성, 가중치, 군집도를 종합하여 검색 질의어와 관련하여 사용자가 검색하고자 하는 요구에 적합한 문서인 정도를 수치적으로 구하는 단계이다. 상기 관련성은 아래의 수학식 2와 같이 정의하여 계산되어 진다. 이러한 관련성 계산식은 실제 관련도를 인간이 생각하는 중요성이라고 전제하면, 그 관련도를 수학적으로 충족시키기 위해 추출한 항목이 "계산된 관련성"에 쓰이는 것이므로, "계산된 관련성과 실제 관련도 사이의 관계"는 "계산된 관련성이 높으면, 실제 관련도도 높다."라고 일반적으로 생각할 수 있다. 여기에서 "일반적"라 하는 이유는, 같은 검색된 문서를 보고도 각 사용자(검색자)마다 그 중요도와 검색어와의 관련성을 달리 생각하는 경우가 많기 때문이다.Next, the steps for finding relevance will be described. The relevance may include obtaining word inverted document frequency (IDF), obtaining weights according to index fields in the document, and calculating word identity, weight, and clusterity, respectively. Comprehensive step is to numerically obtain the degree that the document is suitable for the user's request in relation to the search query. The relation may be calculated by defining Equation 2 below. If the relational expression is based on the importance of human thinking, the item extracted to satisfy the relation mathematically is used for the "calculated relation", so "the relationship between the calculated relation and the actual relation" It can be generally considered that "if the calculated relevance is high, the actual relevance is also high." The reason for the term “general” is that even when the same searched document is viewed, each user (searcher) often considers the importance and relevance of the search word differently.
다음으로, 상기 단계에서 계산된 관련성에 근거하여 관련성이 높은 값을 갖는 문서를 사용자가 입력한 검색어로 검색하고자 하는 문서로 선택하여 표시하는 단계를 거쳐 본 발명의 색인 단어의 문서 내 위치 정보에 대한 관련성을 이용한 문서 검색 방법이 구성된다.Next, a document having a high relevance value is selected and displayed as a document to be searched by a user input search word based on the relevance calculated in the above step. A document retrieval method using relevance is constructed.
이상에서 상술한 본 발명의 색인 단어의 문서 내 위치 정보에 대한 관련성을 이용한 문서 검색 방법을 실시하는 경우, 상기한 관련성 계산을 위하여 검색엔진에 서 수치 계산에 소요되는 시간은 증가하게 된다. 그러나, 이러한 검색엔진에서 수치 계산에 소요되는 시간은 마이크로 프로세서 내에서 계산이 수행되는데 소요되는 시간으로, 물리적인 제약이 따르는 디스크 IO 시간에 비하면 무시할 수 있을 정도의 작은 시간이며, 본 발명에 의해 증가한 검색엔진에서 수치 계산에 소요되는 시간은 본 발명에 의하여 감소한 불필요한 디스크 IO 시간에 비하여 대단히 작은 시간으로, 검색 엔진의 검색 속도를 비약적으로 향상시킬 수 있다.When the document retrieval method using the relevance of the index word of the present invention described above with respect to the location information in the document, the time required for the numerical calculation in the search engine is increased for the relevance calculation. However, the time required for numerical calculation in such a search engine is the time required for the calculation to be performed in the microprocessor, which is a negligible time compared to the disk IO time which is physically constrained. The time required for the numerical calculation in the search engine is very small compared to the unnecessary disk IO time reduced by the present invention, and can significantly improve the search speed of the search engine.
이상에서는 도면과 명세서에서 최적 실시 예들이 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다. In the foregoing description, optimal embodiments have been disclosed in the drawings and the specification. Although specific terms have been used herein, they are used only for the purpose of describing the present invention and are not used to limit the scope of the present invention as defined in the meaning or claims. Therefore, those skilled in the art will understand that various modifications and equivalent other embodiments are possible. Therefore, the true technical protection scope of the present invention will be defined by the technical spirit of the appended claims.
도 1: 본 발명의 일 실시 예에 의한 색인 단어의 문서내 위치 정보에 대한 관련성을 이용한 문서 검색 방법의 검색 대상이 되는 문서의 개략도1 is a schematic diagram of a document to be searched for in a document retrieval method using the relevance of the index word to the document position information according to an embodiment of the present invention.
도 2: 기존 발명의 일 실시 예에 의한 색인 단어의 문서내 위치 정보에 대한 관련성을 이용한 문서 검색 방법의 외부 문서 연동 키 테이블(DRid)의 구성도2 is a block diagram of an external document linking key table DRid of a document retrieval method using an association of an index word with document position information according to an exemplary embodiment of the present invention.
도 3: 기존 발명의 일 실시 예에 의한 색인 단어의 문서내 위치 정보에 대한 관련성을 이용한 문서 검색 방법의 문서저장정보(Dmst: Document Master Information)의 구성도3 is a block diagram of document storage information (Dmst: Document Master Information) of a document retrieval method using the relevance of the index word in the document position information according to an embodiment of the present invention
도 4: 기존 발명의 일 실시 예에 의한 색인 단어의 문서내 위치 정보에 대한 관련성을 이용한 문서 검색 방법의 문서 헤더 정보 (Dinf: Document Information )의 구성도4 is a diagram illustrating a document header information (Dinf: Document Information) of a document retrieval method using an association of an index word with document position information according to an exemplary embodiment of the present invention.
도 5: 기존 발명의 일 실시 예에 의한 색인 단어의 문서내 위치 정보에 대한 관련성을 이용한 문서 검색 방법의 문서원본정보 (Dorg :Original Document)의 구성도5 is a configuration diagram of document original information (Dorg: Original Document) of a document retrieval method using a relation of index words with respect to location information in a document according to an exemplary embodiment of the present invention.
도 6: 기존 발명의 일 실시 예에 의한 색인 단어의 문서내 위치 정보에 대한 관련성을 이용한 문서 검색 방법의 문서텍스트정보(Dtxt :Text Document)의 구성도6 is a block diagram of document text information (Dtxt: Text Document) of a document retrieval method using the relevance of the index word in the document position information according to an embodiment of the present invention
도 7: 기존 발명의 일 실시 예에 의한 색인 단어의 문서내 위치 정보에 대한 관련성을 이용한 문서 검색 방법의 외부단어연동테이블(Wrid : Word Relation ID)의 구성도7 is a block diagram of an external word association table (Wrid: Word Relation ID) of a document retrieval method using a relation of an index word to document position information according to an embodiment of the present invention.
도 8: 기존 발명의 일 실시 예에 의한 색인 단어의 문서내 위치 정보에 대한 관련성을 이용한 문서 검색 방법의 색인단어정보 (Wmst:Word Master Information)의 구성도 8 is a block diagram of index word information (Wmst: Word Master Information) of a document retrieval method using the relevance of the index word in the document position information according to an embodiment of the present invention
도 9: 기존 발명의 일 실시 예에 의한 색인 단어의 문서내 위치 정보에 대한 관련성을 이용한 문서 검색 방법의 Idl.tmp 파일의 구성도9 is a block diagram of an Idl.tmp file of a document retrieval method using a relevance of index words in document position information according to an embodiment of the present invention
도 10: 기존 발명의 일 실시 예에 의한 색인 단어의 문서내 위치 정보에 대한 관련성을 이용한 문서 검색 방법의 Idl.txt 파일의 구성도10 is a block diagram of an Idl.txt file of a document retrieval method using the relevance of the index word in the document position information according to an embodiment of the present invention
도 11: 기존 발명의 일 실시 예에 의한 색인 단어의 문서내 위치 정보에 대한 관련성을 이용한 문서 검색 방법의 메모리 구조도11 is a memory structure diagram of a document retrieval method using an association of an index word with document position information according to an embodiment of the present invention;
도 12: 기존 발명의 일 실시 예에 의한 색인 단어의 문서내 위치 정보에 대한 관련성을 이용한 문서 검색 방법의 파일 구성도12 is a file configuration diagram of a document retrieval method using a relevance of index words in document position information according to an embodiment of the present invention;
도 13: 기존 발명의 일 실시 예에 의한 색인 단어의 문서내 위치 정보에 대한 관련성을 이용한 문서 검색 방법의 위치 구조 정보체의 구성도13 is a block diagram of a location structure information element of a document retrieval method using the relevance of index words to document position information according to an embodiment of the present invention;
도 14: 본 발명의 일 실시 예에 의한 색인 단어의 문서내 위치 정보에 대한 관련성을 이용한 문서 검색 방법의 위치 구조 정보체의 구성도14 is a block diagram of a location structure information element of a document retrieval method using the relevance of index words to document position information according to an embodiment of the present invention;
도 15: 본 발명의 일 실시 예에 의한 색인 단어의 문서내 위치 정보에 대한 관련성을 이용한 문서 검색 방법의 검색 대상 문서의 예제도15 is an exemplary view of a document to be searched for in a document searching method using a relevance of index words to document position information according to an embodiment of the present invention.
Claims (3)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070080269A KR100818742B1 (en) | 2007-08-09 | 2007-08-09 | Document retrieval method using relevance of index word's location information in document |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070080269A KR100818742B1 (en) | 2007-08-09 | 2007-08-09 | Document retrieval method using relevance of index word's location information in document |
Publications (1)
Publication Number | Publication Date |
---|---|
KR100818742B1 true KR100818742B1 (en) | 2008-04-02 |
Family
ID=39533548
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020070080269A Active KR100818742B1 (en) | 2007-08-09 | 2007-08-09 | Document retrieval method using relevance of index word's location information in document |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100818742B1 (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180099405A (en) * | 2017-02-28 | 2018-09-05 | 주식회사 워트인텔리전스 | Method and system for patent search |
US10573189B2 (en) * | 2003-10-01 | 2020-02-25 | Kenneth Nathaniel Sherman | Reading and information enhancement system and method |
CN110909118A (en) * | 2018-08-28 | 2020-03-24 | 中国移动通信集团重庆有限公司 | Method, apparatus, device and medium for screening information |
KR20200122089A (en) | 2019-04-17 | 2020-10-27 | 부산대학교 산학협력단 | Apparatus and Method for Electronic Document Retrieval using Local Indexing |
CN113536778A (en) * | 2020-04-14 | 2021-10-22 | 北京沃东天骏信息技术有限公司 | Title generating method, apparatus and computer readable storage medium |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR19990048714A (en) * | 1997-12-10 | 1999-07-05 | 윤종용 | How to Determine Priority of Similar Documents in Internet Information Retrieval |
KR20010082984A (en) * | 2000-02-22 | 2001-08-31 | 박봉래 | A system for retrieving world wide web and a method for storing, viewing and using the search result |
KR20020058639A (en) * | 2000-12-30 | 2002-07-12 | 오길록 | A XML Document Retrieval System and Method of it |
KR20020072092A (en) * | 2001-03-08 | 2002-09-14 | 서정연 | Real-time Natural Language Question-Answering System Using Unit Paragraph Indexing Method |
KR20040017008A (en) * | 2002-08-20 | 2004-02-26 | 주식회사 케이랩 | System and method for offering information using a search engine |
KR20050076695A (en) * | 2004-01-20 | 2005-07-26 | 마이크로소프트 코포레이션 | Infrequent word index for document indexes |
-
2007
- 2007-08-09 KR KR1020070080269A patent/KR100818742B1/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR19990048714A (en) * | 1997-12-10 | 1999-07-05 | 윤종용 | How to Determine Priority of Similar Documents in Internet Information Retrieval |
KR20010082984A (en) * | 2000-02-22 | 2001-08-31 | 박봉래 | A system for retrieving world wide web and a method for storing, viewing and using the search result |
KR20020058639A (en) * | 2000-12-30 | 2002-07-12 | 오길록 | A XML Document Retrieval System and Method of it |
KR20020072092A (en) * | 2001-03-08 | 2002-09-14 | 서정연 | Real-time Natural Language Question-Answering System Using Unit Paragraph Indexing Method |
KR20040017008A (en) * | 2002-08-20 | 2004-02-26 | 주식회사 케이랩 | System and method for offering information using a search engine |
KR20050076695A (en) * | 2004-01-20 | 2005-07-26 | 마이크로소프트 코포레이션 | Infrequent word index for document indexes |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10573189B2 (en) * | 2003-10-01 | 2020-02-25 | Kenneth Nathaniel Sherman | Reading and information enhancement system and method |
KR20180099405A (en) * | 2017-02-28 | 2018-09-05 | 주식회사 워트인텔리전스 | Method and system for patent search |
KR101954512B1 (en) | 2017-02-28 | 2019-03-05 | 주식회사 워트인텔리전스 | Method and system for patent search |
CN110909118A (en) * | 2018-08-28 | 2020-03-24 | 中国移动通信集团重庆有限公司 | Method, apparatus, device and medium for screening information |
KR20200122089A (en) | 2019-04-17 | 2020-10-27 | 부산대학교 산학협력단 | Apparatus and Method for Electronic Document Retrieval using Local Indexing |
CN113536778A (en) * | 2020-04-14 | 2021-10-22 | 北京沃东天骏信息技术有限公司 | Title generating method, apparatus and computer readable storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhang et al. | POCLib: A high-performance framework for enabling near orthogonal processing on compression | |
JP5338238B2 (en) | Automatic ontology generation using word similarity | |
US8266152B2 (en) | Hashed indexing | |
US7603370B2 (en) | Method for duplicate detection and suppression | |
US7860853B2 (en) | Document matching engine using asymmetric signature generation | |
US20100094835A1 (en) | Automatic query concepts identification and drifting for web search | |
EP2874073A1 (en) | System, apparatus, program and method for data aggregation | |
Vu et al. | A graph method for keyword-based selection of the top-k databases | |
US8266150B1 (en) | Scalable document signature search engine | |
US20030078915A1 (en) | Generalized keyword matching for keyword based searching over relational databases | |
Fu et al. | Privacy-preserving smart similarity search based on simhash over encrypted data in cloud computing | |
CN105117397B (en) | A kind of medical files semantic association search method based on ontology | |
CN108509543A (en) | A kind of streaming RDF data multi-key word parallel search method based on Spark Streaming | |
Gog et al. | Large-scale pattern search using reduced-space on-disk suffix arrays | |
KR100818742B1 (en) | Document retrieval method using relevance of index word's location information in document | |
US20120124060A1 (en) | Method and system of identifying adjacency data, method and system of generating a dataset for mapping adjacency data, and an adjacency data set | |
Chien et al. | Geometric BWT: compressed text indexing via sparse suffixes and range searching | |
Kumar et al. | Ontology based semantic indexing approach for information retrieval system | |
CN115544225A (en) | Digital archive information association retrieval method based on semantics | |
US8140546B2 (en) | Computer system for performing aggregation of tree-structured data, and method and computer program product therefor | |
JP4237813B2 (en) | Structured document management system | |
Flor | A fast and flexible architecture for very large word n-gram datasets | |
Cappellari et al. | A path-oriented rdf index for keyword search query processing | |
CN114691845B (en) | Semantic search method, device, electronic device, storage medium and product | |
Dang et al. | Fast forward index methods for pseudo-relevance feedback retrieval |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20070809 |
|
PA0201 | Request for examination | ||
A302 | Request for accelerated examination | ||
PA0302 | Request for accelerated examination |
Patent event date: 20070904 Patent event code: PA03022R01D Comment text: Request for Accelerated Examination Patent event date: 20070809 Patent event code: PA03021R01I Comment text: Patent Application |
|
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20071113 Patent event code: PE09021S01D |
|
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20080314 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20080326 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20080327 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
PR1001 | Payment of annual fee |
Payment date: 20110325 Start annual number: 4 End annual number: 4 |
|
PR1001 | Payment of annual fee |
Payment date: 20120309 Start annual number: 5 End annual number: 5 |
|
FPAY | Annual fee payment |
Payment date: 20130128 Year of fee payment: 6 |
|
PR1001 | Payment of annual fee |
Payment date: 20130128 Start annual number: 6 End annual number: 6 |
|
FPAY | Annual fee payment |
Payment date: 20140218 Year of fee payment: 7 |
|
PR1001 | Payment of annual fee |
Payment date: 20140218 Start annual number: 7 End annual number: 7 |
|
FPAY | Annual fee payment |
Payment date: 20150227 Year of fee payment: 8 |
|
PR1001 | Payment of annual fee |
Payment date: 20150227 Start annual number: 8 End annual number: 8 |
|
FPAY | Annual fee payment |
Payment date: 20170310 Year of fee payment: 10 |
|
PR1001 | Payment of annual fee |
Payment date: 20170310 Start annual number: 10 End annual number: 10 |
|
FPAY | Annual fee payment |
Payment date: 20180119 Year of fee payment: 11 |
|
PR1001 | Payment of annual fee |
Payment date: 20180119 Start annual number: 11 End annual number: 11 |
|
FPAY | Annual fee payment |
Payment date: 20190115 Year of fee payment: 12 |
|
PR1001 | Payment of annual fee |
Payment date: 20190115 Start annual number: 12 End annual number: 12 |
|
FPAY | Annual fee payment |
Payment date: 20200116 Year of fee payment: 13 |
|
PR1001 | Payment of annual fee |
Payment date: 20200116 Start annual number: 13 End annual number: 13 |
|
PR1001 | Payment of annual fee |
Payment date: 20210112 Start annual number: 14 End annual number: 14 |
|
PR1001 | Payment of annual fee |
Payment date: 20211230 Start annual number: 15 End annual number: 15 |
|
PR1001 | Payment of annual fee |
Payment date: 20230403 Start annual number: 16 End annual number: 16 |
|
PR1001 | Payment of annual fee |
Payment date: 20240926 Start annual number: 17 End annual number: 17 |
|
PR1001 | Payment of annual fee |
Payment date: 20250407 Start annual number: 18 End annual number: 18 |