KR102324571B1 - Method for providing enhanced search result in passage-based information retrieval - Google Patents

Method for providing enhanced search result in passage-based information retrieval Download PDF

Info

Publication number
KR102324571B1
KR102324571B1 KR1020210071423A KR20210071423A KR102324571B1 KR 102324571 B1 KR102324571 B1 KR 102324571B1 KR 1020210071423 A KR1020210071423 A KR 1020210071423A KR 20210071423 A KR20210071423 A KR 20210071423A KR 102324571 B1 KR102324571 B1 KR 102324571B1
Authority
KR
South Korea
Prior art keywords
passages
document
documents
search
sorting
Prior art date
Application number
KR1020210071423A
Other languages
Korean (ko)
Inventor
박승범
장수현
Original Assignee
호서대학교 산학협력단
주식회사 리빈에이아이
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 호서대학교 산학협력단, 주식회사 리빈에이아이 filed Critical 호서대학교 산학협력단
Priority to KR1020210071423A priority Critical patent/KR102324571B1/en
Application granted granted Critical
Publication of KR102324571B1 publication Critical patent/KR102324571B1/en
Priority to PCT/KR2022/007811 priority patent/WO2022255807A1/en
Priority to US18/527,499 priority patent/US20240168988A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2453Query optimisation
    • G06F16/24532Query optimisation of parallel queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/93Document management systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • G06N5/003

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Human Computer Interaction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Provided is a method for providing an improved search result when a document is divided into smaller sizes to generate a passage so as to be used as a search unit. A new ranking is generated by integrating the sorting result of the passage by a first search model and the sorting result of the passage by a second search model, and documents are sorted to correspond to the ranking. In addition, documents are sorted based on the relationship between the number of passages extracted from the same document and the total number of passages in the document. The final ranking is determined by merging the two sorting results for the document. According to the method, even when searching in units of passages, a search result with high relevance is generated by looking at the entire document.

Description

패시지단위 검색에서 향상된 검색결과를 제공하는 방법{Method for providing enhanced search result in passage-based information retrieval}{Method for providing enhanced search result in passage-based information retrieval}

본 발명은 패시지단위의 검색에서 향상된 검색결과를 제공하는 방법에 관한 것으로서, 더 구체적으로는, 검색대상인 각각의 문서를 더 작은 크기의 복수개의 패시지로 분할하여 말뭉치로 저장하고, 이러한 패시지를 단위로 검색을 수행할 때 발생하는 문제를 해결하고 향상된 검색결과를 제공하는 방법에 관한 것이다.The present invention relates to a method of providing an improved search result in a passage-based search, and more specifically, dividing each document to be searched into a plurality of smaller-sized passages and storing them as a corpus, and storing these passages as a unit It relates to a method for solving problems that occur when performing searches and providing improved search results.

문서를 검색하기 위한 기술은 주어진 문서를 전체로서 검색대상으로 하는 문서단위 (document-based) 검색 방식과 각각의 문서를 더 작은 단위의 복수개의 패시지로 나누어 이를 검색대상으로 하는 패시지단위 (passage-based) 검색 방식으로 구분될 수 있다. 각 방식은 장단점이 있기 때문에, 어느 하나를 개별적으로 사용하는 경우보다 두가지 방식을 함께 사용하여 검색결과를 통합하는 경우 나은 결과를 제공하는 것으로 알려져 있다. 다만, 패시지단위 검색의 경우 각각의 문서를 복수개의 패시지로 나누어 저장해야 하는 작업이 필요하다는 단점이 있기 때문에, 주로 문서단위의 검색 방식이 채택되어 왔다.The technology for searching documents is a document-based search method in which a given document is searched as a whole, and a passage-based search method in which each document is divided into a plurality of smaller units to be searched. ) can be classified by the search method. Since each method has pros and cons, it is known that combining the search results using both methods together provides better results than when using either method individually. However, since the passage unit search has a disadvantage that it is necessary to divide and store each document into a plurality of passages, a document unit search method has been mainly adopted.

최근에, 인공지능 기반의 검색모델의 성능이 기존의 통계 기반의 검색모델의 성능에 비하여 향상된 검색결과를 제공하게 되면서, 패시지단위 검색 방식이 다시 관심을 받고 있다. 현재까지 공개된 인공지능 기반의 검색모델은 처리할 수 있는 문서의 크기에 제한이 있기 때문에, 일반적으로 문서 전체를 검색대상으로 하는 것이 곤란하다. 이에 따라, 인공지능 기반의 검색모델을 적용하는 경우에는, 패시지기반의 검색 방식이 주로 채택되고 있다. 예를 들어, 구글이 공개한 언어모델인 BERT의 경우 처리할 수 있는 최대 토큰 수는 512개로 제한되기 때문에, 연구자들은 문서를 100~300개 내외의 토큰을 포함하는 패시지로 분할하여 검색대상으로 처리하고 있다.Recently, as the performance of the AI-based search model provides improved search results compared to the performance of the existing statistical-based search model, the passage unit search method is receiving attention again. Since the AI-based search model disclosed so far has a limit on the size of a document that can be processed, it is generally difficult to target the entire document. Accordingly, when an AI-based search model is applied, a passage-based search method is mainly adopted. For example, in the case of BERT, a language model published by Google, the maximum number of tokens that can be processed is limited to 512, so researchers divide documents into passages containing 100 to 300 tokens and process them as search targets. are doing

그러나, 문서를 패시지로 나누어 검색대상으로 하는 경우에는 문서 전체를 검색대상으로 하는 경우에 나타나지 않는 문제가 발생한다. 예를 들어, 도 7(a) 내지 도 7(c)에는, 본 출원인이 구현한 특허검색 시스템의 검색결과의 일 예가 도시되어 있다. 도시된 바와 같이, 쿼리로서 '화장품'을 입력하는 경우, 검색결과에서 1위로 나타난 문서에는 '화장품'이라는 단어가 2회 나타나며(도 7(c) 참조), '화장품'이 포함된 패시지는 총 패시지 수 168개 중에서 단지 2개에 불과하다. 반면, 2위로 나타난 문서에는 '화장품'이라는 단어가 총 122회 나타나며, '화장품'이 포함된 패시지는 총 패시지 수 124개 중에서 61개나 된다. 더욱이, 순위가 1위로 나타난 문서는 전체적으로 쿼리인 '화장품'과는 관련이 없는 내용을 포함하고 있다. 따라서, 문서 전체를 검색대상으로 한 경우에는, 두 문서의 검색순위가 다르게 나타났을 것이다.However, when a document is divided into passages to be a search target, a problem arises that does not appear when the entire document is a search target. For example, an example of a search result of the patent search system implemented by the present applicant is shown in FIGS. 7(a) to 7(c). As shown, when 'cosmetics' is entered as a query, the word 'cosmetics' appears twice in the document that ranked first in the search results (refer to FIG. 7(c)), and the passages including 'cosmetics' are total Only 2 out of 168 passages. On the other hand, the word 'cosmetics' appears a total of 122 times in the document appearing in 2nd place, and the passage containing 'cosmetics' is 61 out of 124 passages. Moreover, the document that ranked first contains content that is not related to the query 'cosmetics' as a whole. Therefore, if the entire document was searched, the search rankings of the two documents would be different.

WOWO 2016015267 2016015267 AA USUS 20100185623 201000185623 AA

본 발명은 전술한 문제를 하기 위한 것으로서, 패시지단위로 검색하는 경우에도 문서 전체로 보아 관련성이 높은 검색결과를 생성하는 검색방법을 제공하는 것을 목적으로 한다.An object of the present invention is to solve the above-mentioned problem, and to provide a search method for generating a search result with high relevance in view of the entire document even when searching in units of passages.

본 발명에 일 양태에 따라, 복수개의 검색대상 문서로 이루어진 문서뭉치의 각 문서로부터 추출된 복수개의 패시지(passage)를 포함하는 말뭉치(corpus)로부터 사용자에 의하여 입력된 쿼리에 대응하는 검색결과를 사용자에게 제공하기 위한 컴퓨터로 구현되는 방법으로서, (a) 제1 검색모델에 의하여, 상기 말뭉치로부터 상기 입력된 쿼리에 대응하는 N개의 패시지가 추출되고 정렬되는 단계; (b) 제2 검색모델에 의하여, 상기 N개의 패시지가 상기 입력된 쿼리를 기초로 재정렬되는 단계; (c) 상기 N개의 패시지에 대한 상기 단계 (a)에서의 정렬 결과 및 상기 단계 (b)에서의 재정렬 결과를 통합하여 상기 N개의 패시지에 대한 통합된 순위가 생성되는 단계; (d) 상기 N개의 패시지가 포함된 M개의 문서(M은 N보다 작거나 같음)가 상기 N개의 패시지에 대한 상기 통합된 순위에 대응하는 순위로 정렬되는 단계; (e) 상기 N개의 패시지 중에서 동일한 문서로부터 추출된 패시지의 수 및 해당 문서의 전체 패시지 수 사이의 관계에 기초하여 상기 M개의 문서가 정렬되는 단계; 및 (f) 상기 M개의 문서에 대한 상기 단계 (d)에서의 정렬 결과 및 상기 단계 (e)에서의 정렬 결과를 통합하여 상기 M개의 문서에 대한 순위가 결정되는 단계를 포함하는 문서를 검색하기 위한 컴퓨터로 구현되는 방법이 제공된다.According to an aspect of the present invention, a search result corresponding to a query input by a user from a corpus including a plurality of passages extracted from each document of a document bundle composed of a plurality of search target documents is retrieved from the user. A computer-implemented method for providing to (b) rearranging the N passages based on the input query by a second search model; (c) generating an integrated ranking for the N passages by integrating the alignment result in step (a) and the reordering result in step (b) for the N passages; (d) sorting M documents (M is less than or equal to N) including the N passages in a ranking corresponding to the combined ranking for the N passages; (e) sorting the M documents based on a relationship between the number of passages extracted from the same document among the N passages and the total number of passages in the corresponding document; and (f) integrating the sorting result in step (d) and the sorting result in step (e) for the M documents to determine the rank of the M documents. A computer-implemented method for

본 발명의 다른 양태에 따라, 복수개의 검색대상 문서로 이루어진 문서뭉치의 각 문서로부터 추출된 복수개의 패시지(passage)를 포함하는 말뭉치(corpus)로부터 사용자에 의하여 입력된 쿼리에 대응하는 검색결과를 사용자에게 제공하기 위한 장치로서, 적어도 하나의 프로세서; 및 컴퓨터로 실행가능한 명령을 저장하는 적어도 하나의 메모리를 포함하되, 상기 적어도 하나의 메모리에 저장된 상기 컴퓨터로 실행가능한 명령은, 상기 적어도 하나의 프로세서에 의하여, (a) 제1 검색모델에 의하여, 상기 말뭉치로부터 상기 입력된 쿼리에 대응하는 N개의 패시지가 추출되고 정렬되는 단계; (b) 제2 검색모델에 의하여, 상기 N개의 패시지가 상기 입력된 쿼리를 기초로 재정렬되는 단계; (c) 상기 N개의 패시지에 대한 상기 단계 (a)에서의 정렬 결과 및 상기 단계 (b)에서의 재정렬 결과를 통합하여 상기 N개의 패시지에 대한 통합된 순위가 생성되는 단계; (d) 상기 N개의 패시지가 포함된 M개의 문서(M은 N보다 작거나 같음)가 상기 N개의 패시지에 대한 상기 통합된 순위에 대응하는 순위로 정렬되는 단계; (e) 상기 N개의 패시지 중에서 동일한 문서로부터 추출된 패시지의 수 및 해당 문서의 전체 패시지 수 사이의 관계에 기초하여 상기 M개의 문서가 정렬되는 단계; 및 (f) 상기 M개의 문서에 대한 상기 단계 (d)에서의 정렬 결과 및 상기 단계 (e)에서의 정렬 결과를 통합하여 상기 M개의 문서에 대한 순위가 결정되는 단계가 실행 되도록 하는 문서를 검색하기 위한 장치가 제공된다.According to another aspect of the present invention, a search result corresponding to a query input by a user from a corpus including a plurality of passages extracted from each document of a document bundle consisting of a plurality of search target documents is retrieved by the user. An apparatus for providing to a user, comprising: at least one processor; and at least one memory storing computer-executable instructions, wherein the computer-executable instructions stored in the at least one memory are executed by the at least one processor (a) by a first search model; extracting and sorting N passages corresponding to the input query from the corpus; (b) rearranging the N passages based on the input query by a second search model; (c) generating an integrated ranking for the N passages by integrating the alignment result in step (a) and the reordering result in step (b) for the N passages; (d) sorting M documents (M is less than or equal to N) including the N passages in a ranking corresponding to the combined ranking for the N passages; (e) sorting the M documents based on a relationship between the number of passages extracted from the same document among the N passages and the total number of passages in the corresponding document; and (f) integrating the alignment result in step (d) and the alignment result in step (e) for the M documents so that the step of determining the rank of the M documents is executed. An apparatus for doing this is provided.

본 발명의 또다른 양태에 따라, 복수개의 패시지를 포함하는 말뭉치로부터 사용자에 의하여 입력된 쿼리에 대응하는 검색결과를 사용자에게 제공하기 위한 컴퓨터 프로그램으로서, 비일시적 저장 매체에 저장되며, 프로세서에 의하여, (a) 제1 검색모델에 의하여, 상기 말뭉치로부터 상기 입력된 쿼리에 대응하는 N개의 패시지가 추출되고 정렬되는 단계; (b) 제2 검색모델에 의하여, 상기 N개의 패시지가 상기 입력된 쿼리를 기초로 재정렬되는 단계; (c) 상기 N개의 패시지에 대한 상기 단계 (a)에서의 정렬 결과 및 상기 단계 (b)에서의 재정렬 결과를 통합하여 상기 N개의 패시지에 대한 통합된 순위가 생성되는 단계; (d) 상기 N개의 패시지가 포함된 M개의 문서(M은 N보다 작거나 같음)가 상기 N개의 패시지에 대한 상기 통합된 순위에 대응하는 순위로 정렬되는 단계; (e) 상기 N개의 패시지 중에서 동일한 문서로부터 추출된 패시지의 수 및 해당 문서의 전체 패시지 수 사이의 관계에 기초하여 상기 M개의 문서가 정렬되는 단계; 및 (f) 상기 M개의 문서에 대한 상기 단계 (d)에서의 정렬 결과 및 상기 단계 (e)에서의 정렬 결과를 통합하여 상기 M개의 문서에 대한 순위가 결정되는 단계가 실행 되도록 하는 명령을 포함하는 문서를 검색하기 위한 비일시적 저장 매체에 저장되는 컴퓨터 프로그램이 제공된다.According to another aspect of the present invention, a computer program for providing a user with a search result corresponding to a query input by the user from a corpus comprising a plurality of passages, stored in a non-transitory storage medium, by a processor, (a) extracting and sorting N passages corresponding to the input query from the corpus by a first search model; (b) rearranging the N passages based on the input query by a second search model; (c) generating an integrated ranking for the N passages by integrating the alignment result in step (a) and the reordering result in step (b) for the N passages; (d) sorting M documents (M is less than or equal to N) including the N passages in a ranking corresponding to the combined ranking for the N passages; (e) sorting the M documents based on a relationship between the number of passages extracted from the same document among the N passages and the total number of passages in the corresponding document; and (f) combining the alignment result in step (d) and the alignment result in step (e) for the M documents so that the step of determining the rank of the M documents is executed. There is provided a computer program stored in a non-transitory storage medium for retrieving a document to be used.

본 발명에 따르면, 검색대상인 문서를 복수개의 패시지로 나누어 검색대상으로 하는 경우에도 향상된 검색결과를 제공할 수 있다.According to the present invention, an improved search result can be provided even when a search object document is divided into a plurality of passages to be searched.

도 1은 본 발명의 실시예에 따른 검색결과 제공 방법으로서, 패시지단위 검색결과 제공 방법을 개념적으로 설명하기 위한 구성도.
도 2는 본 발명의 실시예에 따른 패시지단위 검색결과에 기초하여 검색결과를 제공하기 위한 방법의 흐름도.
도 3은 도 2에 도시된 방법을 실행하기 위한 장치를 개략적으로 도시한 도면.
도 4는 본 발명의 다른 실시예에 따른 검색결과 제공 방법으로서, 패시지단위 검색결과와 문서단위 검색결과를 통합하여 순위를 결정하기 위한 방법을 개념적으로 설명하기 위한 구성도.
도 5는 본 발명의 실시예에 따른 패시지단위 검색결과와 문서단위 검색결과를 통합하여 검색결과를 제공하기 위한 방법의 흐름도.
도 6은 도 5에 도시된 방법을 실행하기 위한 장치를 개략적으로 도시한 도면.
도 7(a) 내지 7(c)는 패시지단위 검색 방법의 문제점을 설명하기 위한 도면.
1 is a configuration diagram for conceptually explaining a method for providing search results in units of passages as a method for providing search results according to an embodiment of the present invention;
2 is a flowchart of a method for providing a search result based on a passage unit search result according to an embodiment of the present invention;
Fig. 3 schematically shows an apparatus for carrying out the method shown in Fig. 2;
4 is a configuration diagram for conceptually explaining a method for determining a ranking by integrating a passage unit search result and a document unit search result as a search result providing method according to another embodiment of the present invention;
5 is a flowchart of a method for providing a search result by integrating a passage unit search result and a document unit search result according to an embodiment of the present invention;
Fig. 6 schematically shows an apparatus for carrying out the method shown in Fig. 5;
7(a) to 7(c) are diagrams for explaining a problem of a passage unit search method.

이하에서는, 첨부된 도면을 참조하여 본 발명에 따른 실시예를 상세히 설명한다. 동일하거나 유사한 구성요소에 대해서는 동일 또는 유사한 도면 부호를 부여하고 이에 대한 중복되는 설명은 생략한다. 본 명세서에 개시된 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 첨부된 도면은 본 명세서에 개시된 실시예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 등가인 것 내지 대체하는 것을 포함하는 것으로 이해되어야 한다.Hereinafter, an embodiment according to the present invention will be described in detail with reference to the accompanying drawings. The same or similar reference numerals are assigned to the same or similar components, and overlapping descriptions thereof are omitted. In describing the embodiments disclosed in the present specification, if it is determined that detailed descriptions of related known technologies may obscure the gist of the embodiments disclosed in the present specification, the detailed description thereof will be omitted. The accompanying drawings are only for easy understanding of the embodiments disclosed in the present specification, and the technical spirit disclosed in the present specification is not limited by the accompanying drawings, and all changes and equivalents included in the spirit and scope of the present invention It should be understood to include what is or replaces.

제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이러한 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용되며 해당되는 구성요소들은 이러한 용어들에 의해 한정되지 않는다. 단수의 표현은, 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.Terms including an ordinal number, such as first, second, etc., may be used to describe various elements, but these terms are used only for the purpose of distinguishing one element from other elements, and the corresponding elements are defined by these terms. not limited by The singular expression includes the plural expression unless the context clearly dictates otherwise.

본 명세서에서 사용된 "포함한다", "구비한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 단계, 구성요소 또는 이들을 조합한 것이 존재함을 한정하려는 것으로 이해되어야 하며, 하나 이상의 다른 특징들이나 단계, 구성요소 또는 이들을 조합한 것들이 존재할 또는 부가될 가능성을 배제하려는 것은 아니다.As used herein, terms such as "comprises", "comprises" or "have" are to be understood as limiting the existence of a feature, step, element, or combination thereof described in the specification, and one or more other elements. It is not intended to exclude the possibility that features, steps, components, or combinations thereof may be present or added.

도 1 내지 도 3에는 본 발명의 일 실시예에 따른 도면이 도시되어 있다. 본 실시예는 2개 이상의 패시지단위 검색모델을 이용한 검색결과를 통합하는 것에 대한 것으로서, 도시된 실시예에서는 2개의 검색모델이 나타나 있으나, 3개 이상의 검색모델을 이용할 수도 있다.1 to 3 are views according to an embodiment of the present invention. This embodiment relates to the integration of search results using two or more passage unit search models. In the illustrated embodiment, two search models are shown, but three or more search models may be used.

검색시스템(100)은 문서가 저장된 문서뭉치(112) 및 문서뭉치의 각 문서가 더 작은 단위의 복수개의 패시지(passage)로 분할되어 저장된 말뭉치(114, corpus)를 포함한다. 도면에 표시하지는 않았지만, 문서-패시지의 대응관계, 각 문서가 포함하는 패시지의 수 등에 대한 정보가 추가로 저장된다.The search system 100 includes a document bundle 112 in which documents are stored, and a corpus 114 (corpus) in which each document of the document bundle is divided into a plurality of smaller units and stored. Although not shown in the drawing, information about the correspondence relationship of the document-passage, the number of passages included in each document, and the like is additionally stored.

제1 검색모델(122)은 사용자로부터 입력된 쿼리(query)에 기초하여 말뭉치로부터 N개의 패시지를 추출하고 정렬한다. 제2 검색모델(124)은 제1 검색모델(122)이 추출한 N개의 패시지를 사용자로부터 입력된 쿼리에 기초하여 재정렬한다. 제2 검색모델(124)이 제1 검색모델(122)과 독립적으로 말뭉치로부터 패시지를 추출하고 정렬할 수도 있지만, 본 실시예에서는 전술한 바와 같은 방식을 채택한다. 이러한 방식은 최근 인공지능 기반의 검색모델이 정확도(precision)는 높지만 처리속도가 느린 문제를 해결하기 위하여 많이 이용되고 있다. 즉, 말뭉치로부터 처리속도가 빠른 제1 검색모델(122)을 이용하여 1차로 패시지를 추출하고, 처리속도는 느리지만 정확도가 상대적으로 제1 검색모델(122)보다 높은 인공지능 기반의 제2 검색모델(124)을 이용하여, 제1 검색모델(122)에 의하여 추출된 패시지를 재정렬함으로써, 처리속도와 정확도를 절충하는 방식이다. 이 경우, 제1 검색모델(122)은 재현율(recall)이 높은 것이 바람직하다. 제1 검색모델(122)로서는 주로 통계적 기법에 기반한 검색모델, 예를 들어, BM25와 같은 검색모델이 이용되지만, 최근에는 인공지능 기법을 적용하여 재현율이 높으면서도 처리속도는 제2 검색모델(124) 보다 빠른 검색모델들이 제안되고 있다. 정리하면, 본 실시예와 같은 구성에서는, 제1 검색모델(122)은 제2 검색모델(124)에 비하여 상대적으로 재현율이 높고 처리속도가 빠른 것을 이용하는 것이 바람직하고, 제2 검색모델(124)은 상대적으로 정확도가 높고 처리속도는 제1 검색모델(122)에 비하여 늦을 수도 있다.The first search model 122 extracts and sorts N passages from the corpus based on a query input by the user. The second search model 124 rearranges the N passages extracted by the first search model 122 based on a query input by the user. Although the second search model 124 may extract and sort passages from the corpus independently of the first search model 122 , in this embodiment, the method as described above is adopted. This method has recently been widely used to solve the problem that AI-based search models have high precision but slow processing speed. That is, a passage is first extracted from the corpus by using the first search model 122 with a high processing speed, and the second search based on artificial intelligence has a relatively low processing speed but relatively higher accuracy than the first search model 122 . By using the model 124 and rearranging the passages extracted by the first search model 122, the processing speed and accuracy are compromised. In this case, the first search model 122 preferably has a high recall. As the first search model 122, a search model based on statistical techniques, for example, a search model such as BM25, is mainly used. ) faster search models are being proposed. In summary, in the configuration as in the present embodiment, it is preferable to use the first search model 122 having a relatively high recall rate and faster processing speed than the second search model 124 , and the second search model 124 . is relatively high in accuracy and the processing speed may be slower than that of the first search model 122 .

N개의 패시지에 대한 제1 검색모델(122)에 의한 정렬 결과(r1p)와 제2 검색모델(124)에 의한 재정렬 결과(r2p)는 순위결합(132)되어 통합된 정렬 결과(rfp)가 제공된다. 순위결합(fusion)은 서로 다른 검색모델에 의한 검색결과를 통합하여 하나의 검색결과를 제공하는 기법으로서, 다양한 통합 방식이 제안되고 있다. 대표적인 방식으로서, 상호 순위 결합(reciprocal rank fusion, RRF)이 있다. 순위결합은 정렬 결과를 단순히 통합하는 것에 그치지 않고, 일반적으로 검색결과의 정확도를 향상시키는 것으로 알려져 있다. The alignment result (r1 p ) by the first search model 122 and the rearrangement result (r2 p ) by the second search model 124 for the N passages are rank-combined 132, and the integrated alignment result (rf p) ) is provided. Rank fusion is a technique for providing a single search result by integrating search results by different search models, and various integration methods have been proposed. A representative method is reciprocal rank fusion (RRF). Rank combining is not just about integrating sorting results, but is generally known to improve the accuracy of search results.

순위결합(132)에서 통합된 N개의 패시지에 대한 정렬 결과(rfp)는 집계(134) 및 Np~np 관계 분석(136)을 통하여 패시지에 대응되는 문서의 순위(r1d, r2d)로 각각 변환된다. The sorting result (rf p ) for the N passages integrated in the rank combination 132 is the rank (r1 d , r2 d ) of the document corresponding to the passage through the aggregation 134 and the Np~np relationship analysis 136. each is converted.

집계(aggregation)는 N개의 패시지 중에서 하나의 문서에 포함된 패시지가 2개 이상 존재하는 경우를 처리하는 것을 의미한다. 제1 검색모델에 의하여 추출된 N개의 패시지는 모두 다른 문서에 포함될 수도 있고, 아니면 일부 패시지는 동일한 문서에 포함될 수도 있다. 따라서, N개의 패시지와 대응되는 문서의 수를 M개라고 하면, N≥M인 관계가 성립한다. 이에 따라, 제1 검색모델에 의하여 추출된 N개의 패시지 중에서 동일한 문서에서 추출된 패시지가 2개 이상인 경우, 어느 패시지의 순위를 해당 문서의 순위로 결정할 것인지가 문제된다. 이와 관련하여, 다양한 방식이 제안되고 있으며, 예를 들어, 가장 높은 검색 유사도를 갖는 패시지의 순위를 대응되는 문서의 순위로 결정하는 방식, 문서에 포함된 모든 패시지의 검색 유사도를 합산하는 방식, 문서의 첫번째 패시지의 검색 유사도를 해당 문서의 검색 유사도로 결정하는 방식 등이 존재한다. 본 실시예에서는, 특정 문서에 포함된 패시지 전체가 제1 검색모델(122)에 의하여 추출된 N개의 패시지에 포함된다는 보장이 없으며, 문서의 첫번째 패시지가 추출된다는 보장도 없다. 따라서, 해당 문서에서 추출된 패시지가 2개 이상일 경우, 두번째 및 세번째 방법은 채택하기 어렵고, 이들 패시지 중에서 가장 높은 검색 유사도를 갖는 패시지의 순위를 대응되는 문서의 순위(r1d)로 결정한다. 그러나, 반드시 이러한 방식에 한정되는 것은 아니며, 예를 들어, N개의 패시지 중에서 같은 문서에서 추출된 패시지가 복수개일 경우 이들의 검색 유사도를 적절히 합산하여 대응되는 문서의 검색 유사도를 결정할 수도 있다. 예를 들어, Kong 등은 "Kong, K., et al. "Passage-based retrieval using parameterized fuzzy set operators." ACM SIGIR Workshop on Mathematical/Formal. Methods for Information Retrieval. 2004."에서 분리적 관련성 결정 (Disjunctive Relevance Decision, DRD), 종합적 관련성 (Aggregate Relevance, AR), 및 결합적 관련성 결정 (Conjunctive Relevance Decision, CRD) 등의 3가지 방식을 제안한 바 있다.Aggregation means processing a case in which two or more passages included in one document exist among N passages. All of the N passages extracted by the first search model may be included in different documents, or some passages may be included in the same document. Therefore, if the number of documents corresponding to N passages is M, a relationship of N≥M is established. Accordingly, when there are two or more passages extracted from the same document among the N passages extracted by the first search model, there is a problem of which passage is to be determined as the priority of the corresponding document. In this regard, various methods have been proposed, for example, a method of determining the ranking of passages having the highest search similarity as the ranking of corresponding documents, a method of summing the search similarity of all passages included in a document, a document There is a method of determining the search similarity of the first passage of . In this embodiment, there is no guarantee that all passages included in a specific document are included in the N passages extracted by the first search model 122, and there is no guarantee that the first passage of the document is extracted. Therefore, when there are two or more passages extracted from the corresponding document, the second and third methods are difficult to adopt, and the ranking of the passage having the highest search similarity among these passages is determined as the ranking (r1 d) of the corresponding document. However, it is not necessarily limited to this method, and, for example, when there are a plurality of passages extracted from the same document among N passages, the search similarity of the corresponding document may be determined by appropriately summing the search similarities. For example, Kong et al. in "Kong, K., et al. "Passage-based retrieval using parameterized fuzzy set operators." ACM SIGIR Workshop on Mathematical/Formal. Methods for Information Retrieval. 2004." Three methods have been proposed: Disjunctive Relevance Decision (DRD), Aggregate Relevance (AR), and Conjunctive Relevance Decision (CRD).

Np~np 관계 분석(136)은 특정 문서의 총 패시지의 수 Np와 해당 문서의 패시지 중에서 제1 검색모델에 의하여 추출된 N개의 패시지에 포함된 패시지의 수 np 사이의 관계를 분석하여 N개의 패시지에 대응되는 문서의 순위(r2d)를 결정하는 것을 의미한다. 예를 들어, N개의 패시지에 대응되는 문서의 수가 M개라고 하면, 이들 M개의 문서에 대하여, (Np-np)/Np의 관계식으로 주어지는 값이 작은 문서부터 해당 값이 큰 문서의 순서로 정렬될 수 있다. 반대로, np/Np의 관계식으로 주어지는 값이 큰 문서부터 해당 값이 작은 문서의 순서로 정렬될 수도 있다. 도 7(a) 내지 7(c)에 도시된 경우에 대하여 검토해 보면, 1위로 나타난 문서의 경우, 총 패시지의 수(Np)는 168개이며 제1 검색모델에 의하여 추출되었을 패시지의 수(np)는 2개이므로, (Np-np)/Np = (168-2)/168 = 0.9881 이며 np/Np = 2/168 = 0.0119 이고, 2위로 나타난 문서의 경우, 총 패시지의 수(Np)는 124개이며 추출되었을 패시지의 수(np)는 61개이므로, (Np-np)/Np = (124-61)/124 = 0.5081 이며 np/Np = 61/124 = 0.4919 이다. 따라서, 첫번째 방식으로 두 문서의 순위를 정하면, 문서 2의 순위가 문서 1의 순위보다 높게 되며, 두번째 방식으로 순위를 정하더라도, 문서 2의 순위가 문서 1의 순위보다 높게 된다.Np ~ np relationship analysis 136 analyzes the relationship between the total number of passages Np of a specific document and the number of passages np included in the N passages extracted by the first search model from among passages of the corresponding document by analyzing the relationship between the N passages It means to determine the rank (r2 d ) of the document corresponding to . For example, if the number of documents corresponding to N passages is M, for these M documents, the documents with the smallest value given by the relation of (Np-np)/Np are sorted in the order of the documents with the largest value. can be Conversely, documents having a large value given by the relational expression of np/Np may be sorted in the order of documents having a small corresponding value. When examining the case shown in FIGS. 7(a) to 7(c), in the case of the document shown in the first place, the total number of passages (Np) is 168, and the number of passages that would have been extracted by the first search model (np) ) is 2, so (Np-np)/Np = (168-2)/168 = 0.9881 and np/Np = 2/168 = 0.0119, and for the second-placed document, the total number of passages (Np) is Since there are 124 and the number of passages to be extracted (np) is 61, (Np-np)/Np = (124-61)/124 = 0.5081 and np/Np = 61/124 = 0.4919. Accordingly, when two documents are ranked according to the first method, the priority of document 2 is higher than that of document 1, and even if the ranking is determined by the second method, the priority of document 2 is higher than that of document 1.

집계(134)에 의하여 결정된 문서의 순위(r1d)와 Np~np 관계 분석(136)에 의하여 결정된 문서의 순위(r2d)는 순위결합(138)에 의하여 통합된다. 패시지에 대한 순위결합(132)과 동일한 기법을 사용하거나 다른 기법을 사용할 수 있다. 도 7(a) 내지 7(c)에 도시된 경우, Np~np 관계 분석(136)에 의한 문서 순위가 통합되면, 문서 1과 문서 2 사이의 순위가 변동될 수 있다. The rank (r1 d ) of the document determined by the aggregation 134 and the rank (r2 d ) of the document determined by the Np~np relationship analysis 136 are combined by the rank combination 138 . The same technique as the rank combining 132 for passages may be used or a different technique may be used. 7(a) to 7(c), if the document ranking by the Np~np relationship analysis 136 is integrated, the ranking between the document 1 and the document 2 may be changed.

순위결합(138)에 의하여 통합된 문서의 순위(rfd)가 최종 검색결과로서 사용자에게 제공된다. The rank (rf d ) of the integrated document by the rank combination 138 is provided to the user as a final search result.

본 실시예에 따른 방법을 도 2를 참조하여 설명하면 다음과 같다: 먼저, 제1 검색모델(122)에 의하여, 말뭉치(114)로부터 입력된 쿼리에 대응하는 N개의 패시지가 추출되고 정렬된다(S110). 다음으로, 제1 검색모델(122)에 의하여 추출된 N개의 패시지가 제2 검색모델(124)에 의하여 입력된 쿼리를 기초로 재정렬된다(S120). 일반적으로 두 모델에 의한 정렬 결과는 서로 다르게 나타난다. N개의 패시지에 대한 단계 S110에서의 정렬 결과(r1p)와 단계 S120에서의 재정렬 결과(r2p)를 통합(132)하여 N개의 패시지에 대한 통합된 순위(rfp)가 생성된다(S130). 정렬 결과와 재정렬 결과의 통합은 상호 순위 결합 (RRF) 방식으로 이루어질 수 있다. N개의 패시지가 포함된 M개의 문서(M은 N보다 작거나 같음)가 N개의 패시지에 대한 통합된 순위에 대응하는 순위로 정렬(134)되고(S140), N개의 패시지 중에서 동일한 문서로부터 추출된 패시지의 수 및 해당 문서의 전체 패시지 수 사이의 관계에 기초하여 상기 M개의 문서가 정렬(136)된다(S150). M개의 문서에 대한 단계 S140에서의 정렬 결과(r1d) 및 단계 S150에서의 정렬 결과(r2d)를 통합하여 상기 M개의 문서에 대한 순위(rfd)가 결정되고, 이에 따라, 최종 검색결과가 사용자에게 제공된다.The method according to this embodiment will be described with reference to FIG. 2 as follows: First, N passages corresponding to the query input from the corpus 114 are extracted and sorted by the first search model 122 ( S110). Next, the N passages extracted by the first search model 122 are rearranged based on the query input by the second search model 124 ( S120 ). In general, the sorting results by the two models are different. Is generated N sorted at step S110 for the two passages (r1 p) and rearranged at step S120 (r2 p) the integrated (132) to the integrated ranking (rf p) for the N passage (S130) . The merging of the sorting result and the reordering result may be achieved by a reciprocal rank combining (RRF) method. M documents (M is less than or equal to N) including N passages are sorted (134) with a ranking corresponding to the unified ranking for the N passages (S140), and extracted from the same document among the N passages. The M documents are arranged 136 based on the relationship between the number of passages and the total number of passages of the corresponding document (S150). And ranking (rf d) for the M document determined by integrating the results of the sort (r2 d) in the sorting in step S140 for the M document result (r1 d) and step S150, In this way, the final search results, is provided to the user.

도 3에는 본 실시예에 따른 검색방법을 수행하기 위한 컴퓨터 장치가 도시되어 있다. 도 1 및 2를 참조하여 본 실시예에 따른 방법에 대하여 상세히 설명하였으므로, 도 3을 참조하여서는 그러한 방법을 수행하기 위한 장치(300)를 개략적으로 설명한다.3 shows a computer device for performing the search method according to the present embodiment. Since the method according to the present embodiment has been described in detail with reference to FIGS. 1 and 2 , an apparatus 300 for performing such a method will be schematically described with reference to FIG. 3 .

도 3을 참조하면, 컴퓨터 장치(300)는, 프로세서(310), 프로그램과 데이터를 저장하는 비휘발성 저장부(320), 실행 중인 프로그램들을 저장하는 휘발성 메모리(330), 사용자와의 사이에 정보를 입력 및 출력하는 입/출력부(340) 및 이들 장치 사이의 내부 통신 통로인 버스 등으로 이루어져 있다. 실행 중인 프로그램으로는, 운영체계(Operating System) 및 다양한 어플리케이션이 있을 수 있다. 도시되지는 않았지만, 전력제공부를 포함한다. Referring to FIG. 3 , the computer device 300 includes a processor 310 , a non-volatile storage unit 320 for storing programs and data, a volatile memory 330 for storing programs being executed, and information between a user and a user. It consists of an input/output unit 340 for inputting and outputting , and a bus, which is an internal communication path between these devices. The running program may include an operating system and various applications. Although not shown, it includes a power supply unit.

저장부(320)에 저장된 제1 검색모델(222) 제2 검색모델(224)을 메모리(330)에서 실행시킨다. 말뭉치(114)는 저장부(320)에 저장되고, 입/출력부(340)를 통하여 입력된 쿼리에 기초하여 검색 방법을 수행한다. 저장부(320)에는 문서-패시지의 대응관계, 각 문서가 포함하는 패시지의 수 등에 대한 정보가 추가로 저장된다. 문서-패시지 대응관계는 집계(134)를 위하여 단계 S140에서 사용되며, 각 문서가 포함하는 패시지의 수는 Np~np 관계 분석(136)을 위하여 단계 S150에서 사용된다.The first search model 222 and the second search model 224 stored in the storage unit 320 are executed in the memory 330 . The corpus 114 is stored in the storage unit 320 , and a search method is performed based on a query input through the input/output unit 340 . The storage unit 320 additionally stores information on correspondence between documents and passages, the number of passages included in each document, and the like. The document-passage correspondence is used in step S140 for the aggregation 134 , and the number of passages included in each document is used in step S150 for the Np-np relationship analysis 136 .

도 4 내지 도 6에는 본 발명의 다른 실시예가 도시되어 있다. 전술한 실시예에서는 2개 이상의 패시지단위 검색모델의 검색 결과를 통합하여 대응되는 문서의 검색결과를 제공하는 방법이 설명되었지만, 본 실시예에서는 패시지단위 검색 결과와 문서단위 검색 결과를 통합하여 순위를 결정하기 위한 방법이 설명된다.4 to 6 show another embodiment of the present invention. In the above embodiment, a method for providing search results of corresponding documents by integrating the search results of two or more passage unit search models has been described, but in this embodiment, the ranking is obtained by integrating the passage unit search results and the document unit search results. A method for determining is described.

검색시스템(400)은 문서가 저장된 문서뭉치(112) 및 문서뭉치의 각 문서가 더 작은 단위의 복수개의 패시지(passage)로 분할되어 저장된 말뭉치(114, corpus)를 포함한다. 도면에 표시하지는 않았지만, 문서-패시지의 대응관계, 각 문서가 포함하는 패시지의 수 등에 대한 정보가 추가로 저장된다.The search system 400 includes a document bundle 112 in which documents are stored, and a corpus 114 (corpus) in which each document of the document bundle is divided into a plurality of smaller units and stored. Although not shown in the drawing, information about the correspondence relationship of the document-passage, the number of passages included in each document, and the like is additionally stored.

문서단위 검색모델(410)에 의하여, 문서뭉치(112)로부터 사용자에 의하여 입력된 쿼리에 대응하는 D개의 문서가 추출되고 정렬된다. 문서단위 검색모델(410)로서는 문서 전체를 대상으로 검색을 수행할 수 있는 모델이 이용된다. 예를 들어, 통계적 기법으로서 BM25가 이용될 수 있다. 최근에는 BM25의 TF-IDF 기반의 인덱싱 파일을 인공지능 기법을 이용하여 생성된 다른 인덱싱 파일로 대체하여 성능을 향상시키는 방법 등이 제안되었다.D documents corresponding to the query input by the user are extracted and sorted from the document bundle 112 by the document unit search model 410 . As the document unit search model 410, a model capable of performing a search for the entire document is used. For example, BM25 may be used as a statistical technique. Recently, a method of improving performance by replacing the indexing file based on the TF-IDF of the BM25 with another indexing file generated using an artificial intelligence technique has been proposed.

패시지단위 검색모델(420)에 의하여, 말뭉치(114)로부터 사용자에 의하여 입력된 쿼리에 대응하는 N개의 패시지가 추출되고 정렬된다. 패시지단위 검색모델(420)은 1개의 검색모델로 이루어질 수도 있고, 전술한 실시예에서와 같이 2개 이상의 검색모델을 이용할 수도 있다. 2개 이상의 검색모델을 이용하는 경우에 대해서는 전술한 실시예에서 구체적으로 설명하였으므로, 본 실시예에서는 1개의 검색모델을 이용하는 경우에 대해서만 설명한다. 패시지단위 검색모델(420)에 의하여 N개의 패시지가 추출되고 정렬된 후에, 집계(134)를 통하여 N개의 패시지가 포함된 M개의 문서(M은 N보다 작거나 같음)가 N개의 패시지가 정렬된 순위에 대응하는 순위로 정렬된다. 또한, N개의 패시지 중에서 동일한 문서로부터 추출된 패시지의 수 및 해당 문서의 전체 패시지 수 사이의 관계에 기초하여 상기 M개의 문서가 정렬된다(136). N passages corresponding to the query input by the user from the corpus 114 are extracted and sorted by the passage unit search model 420 . The passage unit search model 420 may consist of one search model, or two or more search models may be used as in the above-described embodiment. Since the case of using two or more search models has been described in detail in the above embodiment, only the case of using one search model will be described in this embodiment. After N passages are extracted and sorted by the passage unit search model 420, M documents (M is less than or equal to N) containing N passages through the aggregation 134 are sorted by N passages. They are sorted by rank corresponding to the rank. In addition, the M documents are sorted based on the relationship between the number of passages extracted from the same document among the N passages and the total number of passages of the corresponding document ( 136 ).

문서단위 검색모델(410)에 의한 정렬 결과(r3d), 패시지단위 검색과 관련된 집계(134)에 의한 정렬 결과(r1d) 및 Np~np 관계 분석(136)에 의한 정렬 결과(r2d)는 순위 결합(138)되어 최종 검색결과로 제공된다. 순위 결합 기법으로는 어느 한 검색모델의 검색 결과가 존재하지 않더라도 순위 결합이 가능한 것을 이용한다. 이에 따라, 문서단위 검색모델(410)에 의하여 추출되고 정렬된 문서의 수인 D와, 패시지단위 검색모델(420)에 의하여 추출된 N개의 패시지에 대응하는 문서의 수인 M이 동일하지 않아도 순위 결합이 가능하다. 예를 들어, 상호 순위 결합 (RRF) 방식이 이용될 수 있다.Sort result of the sort result by the document unit search model (410), (r3 d), sort result by the aggregate 134 related to the passage unit search (r1 d) and Np ~ np Relationship (136) (r2 d) are rank-combined 138 and provided as a final search result. As a rank combining technique, a rank combining is possible even if there is no search result of any one search model. Accordingly, even if D, the number of documents extracted and sorted by the document unit search model 410, and M, the number of documents corresponding to the N passages extracted by the passage unit search model 420, are not the same, the rank combination is not possible. For example, a reciprocal rank combining (RRF) scheme may be used.

본 실시예에 따른 방법을 도 5를 참조하여 설명하면 다음과 같다: 먼저, 문서단위 검색모듈(410)에 의하여, 문서뭉치(112)로부터 사용자에 의하여 입력된 쿼리에 대응하는 D개의 문서가 추출되고 정렬된다(S210). 또한, 패시지단위 검색모듈(420)에 의하여, 말뭉치(114)로부터 입력된 쿼리에 대응하는 N개의 패시지가 추출 및 정렬된다(S220). N개의 패시지가 포함된 M개의 문서(M은 N보다 작거나 같음)는 N개의 패시지가 정렬된 순위에 대응하는 순위로 정렬(S230)되고, N개의 패시지 중에서 동일한 문서로부터 추출된 패시지의 수 및 해당 문서의 전체 패시지 수 사이의 관계에 기초하여 M개의 문서가 정렬(S240)된다. 끝으로, 단계 S210에서의 상기 D개의 문서의 정렬 결과 및 M개의 문서에 대한 단계 S230에서의 정렬 결과와 단계 S240에서의 정렬 결과를 통합하여 검색결과로 제공될 문서의 순위가 결정된다.The method according to this embodiment will be described with reference to FIG. 5 as follows: First, D documents corresponding to the query input by the user are extracted from the document bundle 112 by the document unit search module 410 and aligned (S210). In addition, N passages corresponding to the query input from the corpus 114 are extracted and sorted by the passage unit search module 420 (S220). M documents (M is less than or equal to N) including N passages are sorted (S230) in a rank corresponding to the rank in which the N passages are sorted, the number of passages extracted from the same document among the N passages and Based on the relationship between the total number of passages of the document, M documents are sorted (S240). Finally, the order of documents to be provided as a search result is determined by integrating the alignment results of the D documents in step S210 and the alignment results in step S230 with the alignment results in step S240 for the M documents.

도 6에는 본 실시예에 따른 검색방법을 수행하기 위한 컴퓨터 장치가 도시되어 있다. 도 4 및 5를 참조하여 본 실시예에 따른 방법에 대하여 상세히 설명하였으므로, 도 6을 참조하여서는 그러한 방법을 수행하기 위한 장치(300)를 개략적으로 설명한다.6 shows a computer device for performing the search method according to the present embodiment. Since the method according to the present embodiment has been described in detail with reference to FIGS. 4 and 5 , an apparatus 300 for performing such a method will be schematically described with reference to FIG. 6 .

도 6을 참조하면, 컴퓨터 장치(300)는, 프로세서(310), 프로그램과 데이터를 저장하는 비휘발성 저장부(320), 실행 중인 프로그램들을 저장하는 휘발성 메모리(330), 사용자와의 사이에 정보를 입력 및 출력하는 입/출력부(340) 및 이들 장치 사이의 내부 통신 통로인 버스 등으로 이루어져 있다. 실행 중인 프로그램으로는, 운영체계(Operating System) 및 다양한 어플리케이션이 있을 수 있다. 도시되지는 않았지만, 전력제공부를 포함한다. Referring to FIG. 6 , the computer device 300 includes a processor 310 , a non-volatile storage unit 320 for storing programs and data, a volatile memory 330 for storing programs being executed, and information between a user and a user. It consists of an input/output unit 340 for inputting and outputting , and a bus, which is an internal communication path between these devices. The running program may include an operating system and various applications. Although not shown, it includes a power supply unit.

저장부(320)에 저장된 문서단위 검색모델(410) 및 패시지단위 검색모델(420)을 메모리(330)에서 실행시킨다. 문서뭉치(112)와 말뭉치(114)는 저장부(320)에 저장되고, 입/출력부(340)를 통하여 입력된 쿼리에 기초하여 검색 방법을 수행한다. 저장부(320)에는 문서-패시지의 대응관계, 각 문서가 포함하는 패시지의 수 등에 대한 정보가 추가로 저장된다. 문서-패시지 대응관계는 집계(134)를 위하여 단계 S230에서 사용되며, 각 문서가 포함하는 패시지의 수는 Np~np 관계 분석(136)을 위하여 단계 S240에서 사용된다.The document unit search model 410 and the passage unit search model 420 stored in the storage unit 320 are executed in the memory 330 . The document corpus 112 and the corpus 114 are stored in the storage unit 320 , and a search method is performed based on a query input through the input/output unit 340 . The storage unit 320 additionally stores information on correspondence between documents and passages, the number of passages included in each document, and the like. The document-passage correspondence is used in step S230 for the aggregation 134 , and the number of passages included in each document is used in step S240 for the Np-np relationship analysis 136 .

도 4 내지 6에 도시된 본 발명에 따른 실시예는, 기존의 문서단위 검색시스템에 새로운 인공지능 기반의 패시지단위 검색시스템을 결합시키는 경우에 이용될 수 있다.The embodiment according to the present invention shown in Figs. 4 to 6 can be used when combining a new AI-based passage unit search system with an existing document unit search system.

전술한 상세한 설명은 어떤 면에서도 제한적으로 해석되어서는 아니되며 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.The foregoing detailed description should not be construed as restrictive in any way but as illustrative. The scope of the present invention should be determined by a reasonable interpretation of the appended claims, and all modifications within the equivalent scope of the present invention are included in the scope of the present invention.

Claims (11)

복수개의 검색대상 문서로 이루어진 문서뭉치의 각 문서로부터 추출된 복수개의 패시지(passage)를 포함하는 말뭉치(corpus)로부터 사용자에 의하여 입력된 쿼리에 대응하는 검색결과를 사용자에게 제공하기 위한 컴퓨터로 구현되는 방법으로서,
(a) 제1 검색모델에 의하여, 상기 말뭉치로부터 상기 입력된 쿼리에 대응하는 N개의 패시지가 추출되고 정렬되는 단계;
(b) 제2 검색모델에 의하여, 상기 N개의 패시지가 상기 입력된 쿼리를 기초로 재정렬되는 단계;
(c) 상기 N개의 패시지에 대한 상기 단계 (a)에서의 정렬 결과 및 상기 단계 (b)에서의 재정렬 결과를 통합하여 상기 N개의 패시지에 대한 통합된 순위가 생성되는 단계;
(d) 상기 N개의 패시지가 포함된 M개의 문서(M은 N보다 작거나 같음)가 상기 N개의 패시지에 대한 상기 통합된 순위에 대응하는 순위로 정렬되는 단계;
(e) 상기 N개의 패시지 중에서 동일한 문서로부터 추출된 패시지의 수 (np) 및 해당 문서의 전체 패시지 수 (Np) 사이의 관계에 기초하여 상기 M개의 문서가 정렬되는 단계; 및
(f) 상기 M개의 문서에 대한 상기 단계 (d)에서의 정렬 결과 및 상기 단계 (e)에서의 정렬 결과를 통합하여 상기 M개의 문서에 대한 순위가 결정되는 단계
를 포함하되,
상기 단계 (e)에서, 상기 M개의 문서는, (Np-np)/Np의 관계식으로 주어지는 값이 작은 문서부터 해당 값이 큰 문서의 순서로 정렬되거나, np/Np의 관계식으로 주어지는 값이 큰 문서부터 해당 값이 작은 문서의 순서로 정렬되는
문서를 검색하기 위한 컴퓨터로 구현되는 방법.
A computer implemented for providing a user with a search result corresponding to a query input by the user from a corpus including a plurality of passages extracted from each document of a document bundle consisting of a plurality of search target documents As a method,
(a) extracting and sorting N passages corresponding to the input query from the corpus by a first search model;
(b) rearranging the N passages based on the input query by a second search model;
(c) generating an integrated ranking for the N passages by integrating the alignment result in step (a) and the reordering result in step (b) for the N passages;
(d) sorting M documents (M is less than or equal to N) including the N passages in a rank corresponding to the combined rank for the N passages;
(e) sorting the M documents based on a relationship between the number of passages extracted from the same document among the N passages (np) and the total number of passages of the corresponding document (Np); and
(f) determining the ranking of the M documents by integrating the alignment results in step (d) and the alignment results in step (e) for the M documents
including,
In step (e), the M documents are arranged in the order from a document having a small value given by the relation of (Np-np)/Np to a document having a large corresponding value, or having a large value given by the relation of np/Np. Documents are sorted in descending order from document to document.
A computer-implemented method for retrieving documents.
청구항 1에 있어서,
상기 단계 (c) 및 상기 단계 (f)에서의 정렬 결과의 통합은 상호 순위 결합 (reciprocal rank fusion, RRF) 방식으로 이루어지는
것을 특징으로 하는 문서를 검색하기 위한 컴퓨터로 구현되는 방법.
The method according to claim 1,
The integration of the alignment results in step (c) and step (f) is made in a reciprocal rank fusion (RRF) method.
A computer-implemented method for retrieving a document, characterized in that
삭제delete 삭제delete 복수개의 검색대상 문서로 이루어진 문서뭉치의 각 문서로부터 추출된 복수개의 패시지(passage)를 포함하는 말뭉치(corpus)로부터 사용자에 의하여 입력된 쿼리에 대응하는 검색결과를 사용자에게 제공하기 위한 장치로서,
적어도 하나의 프로세서; 및
컴퓨터로 실행가능한 명령을 저장하는 적어도 하나의 메모리를 포함하되,
상기 적어도 하나의 메모리에 저장된 상기 컴퓨터로 실행가능한 명령은, 상기 적어도 하나의 프로세서에 의하여,
(a) 제1 검색모델에 의하여, 상기 말뭉치로부터 상기 입력된 쿼리에 대응하는 N개의 패시지가 추출되고 정렬되는 단계;
(b) 제2 검색모델에 의하여, 상기 N개의 패시지가 상기 입력된 쿼리를 기초로 재정렬되는 단계;
(c) 상기 N개의 패시지에 대한 상기 단계 (a)에서의 정렬 결과 및 상기 단계 (b)에서의 재정렬 결과를 통합하여 상기 N개의 패시지에 대한 통합된 순위가 생성되는 단계;
(d) 상기 N개의 패시지가 포함된 M개의 문서(M은 N보다 작거나 같음)가 상기 N개의 패시지에 대한 상기 통합된 순위에 대응하는 순위로 정렬되는 단계;
(e) 상기 N개의 패시지 중에서 동일한 문서로부터 추출된 패시지의 수 (np) 및 해당 문서의 전체 패시지 수 (Np) 사이의 관계에 기초하여 상기 M개의 문서가 정렬되는 단계; 및
(f) 상기 M개의 문서에 대한 상기 단계 (d)에서의 정렬 결과 및 상기 단계 (e)에서의 정렬 결과를 통합하여 상기 M개의 문서에 대한 순위가 결정되는 단계
가 실행 되도록 하되,
상기 단계 (e)에서, 상기 M개의 문서는, (Np-np)/Np의 관계식으로 주어지는 값이 작은 문서부터 해당 값이 큰 문서의 순서로 정렬되거나, np/Np의 관계식으로 주어지는 값이 큰 문서부터 해당 값이 작은 문서의 순서로 정렬되는
문서를 검색하기 위한 장치.
An apparatus for providing a user with a search result corresponding to a query input by the user from a corpus including a plurality of passages extracted from each document of a document bundle consisting of a plurality of search target documents, the apparatus comprising:
at least one processor; and
at least one memory for storing computer-executable instructions;
The computer-executable instructions stored in the at least one memory are executed by the at least one processor,
(a) extracting and sorting N passages corresponding to the input query from the corpus by a first search model;
(b) rearranging the N passages based on the input query by a second search model;
(c) generating an integrated ranking for the N passages by integrating the alignment result in step (a) and the reordering result in step (b) for the N passages;
(d) sorting M documents (M is less than or equal to N) including the N passages in a rank corresponding to the combined rank for the N passages;
(e) sorting the M documents based on a relationship between the number of passages extracted from the same document among the N passages (np) and the total number of passages of the corresponding document (Np); and
(f) determining the ranking of the M documents by integrating the alignment results in step (d) and the alignment results in step (e) for the M documents
to run, but
In step (e), the M documents are sorted in the order from a document having a small value given by the relation of (Np-np)/Np to a document having a large value, or having a large value given by the relation of np/Np. Documents are sorted in descending order from document to document.
A device for retrieving documents.
청구항 5에 있어서,
상기 문서뭉치의 적어도 일부의 문서는 제목을 구비하며,
상기 말뭉치의 각 패시지는 해당 패시지가 일부로서 포함된 문서의 제목을 포함하는
것을 특징으로 하는 문서를 검색하기 위한 장치.
6. The method of claim 5,
At least some of the documents in the document bundle have a title,
Each passage of the corpus includes the title of a document in which the passage is included as a part
A device for retrieving documents, characterized in that.
삭제delete 삭제delete 청구항 5에 있어서,
상기 단계 (c) 및 상기 단계 (f)에서의 정렬 결과의 통합은 상호 순위 결합 (reciprocal rank fusion, RRF) 방식으로 이루어지는
것을 특징으로 하는 문서를 검색하기 위한 컴퓨터로 구현되는 장치.
6. The method of claim 5,
The integration of the alignment results in step (c) and step (f) is made in a reciprocal rank fusion (RRF) method.
A computer-implemented device for retrieving documents, characterized in that
청구항 5에 있어서,
상기 제1 검색모델 및 상기 제2 검색모델 중의 적어도 하나는 인공지능 기반의 검색모델인
것을 특징으로 하는 문서를 검색하기 위한 장치.
6. The method of claim 5,
At least one of the first search model and the second search model is an artificial intelligence-based search model.
A device for retrieving documents, characterized in that.
복수개의 패시지를 포함하는 말뭉치로부터 사용자에 의하여 입력된 쿼리에 대응하는 검색결과를 사용자에게 제공하기 위한 컴퓨터 프로그램으로서,
비일시적 저장 매체에 저장되며, 프로세서에 의하여,
(a) 제1 검색모델에 의하여, 상기 말뭉치로부터 상기 입력된 쿼리에 대응하는 N개의 패시지가 추출되고 정렬되는 단계;
(b) 제2 검색모델에 의하여, 상기 N개의 패시지가 상기 입력된 쿼리를 기초로 재정렬되는 단계;
(c) 상기 N개의 패시지에 대한 상기 단계 (a)에서의 정렬 결과 및 상기 단계 (b)에서의 재정렬 결과를 통합하여 상기 N개의 패시지에 대한 통합된 순위가 생성되는 단계;
(d) 상기 N개의 패시지가 포함된 M개의 문서(M은 N보다 작거나 같음)가 상기 N개의 패시지에 대한 상기 통합된 순위에 대응하는 순위로 정렬되는 단계;
(e) 상기 N개의 패시지 중에서 동일한 문서로부터 추출된 패시지의 수 (np) 및 해당 문서의 전체 패시지 수 (Np) 사이의 관계에 기초하여 상기 M개의 문서가 정렬되는 단계; 및
(f) 상기 M개의 문서에 대한 상기 단계 (d)에서의 정렬 결과 및 상기 단계 (e)에서의 정렬 결과를 통합하여 상기 M개의 문서에 대한 순위가 결정되는 단계
가 실행 되도록 하는 명령을 포함하되,
상기 단계 (e)에서, 상기 M개의 문서는, (Np-np)/Np의 관계식으로 주어지는 값이 작은 문서부터 해당 값이 큰 문서의 순서로 정렬되거나, np/Np의 관계식으로 주어지는 값이 큰 문서부터 해당 값이 작은 문서의 순서로 정렬되는
문서를 검색하기 위한 비일시적 저장 매체에 저장되는 컴퓨터 프로그램.
A computer program for providing a user with a search result corresponding to a query input by the user from a corpus comprising a plurality of passages, the computer program comprising:
It is stored in a non-transitory storage medium, and by the processor,
(a) extracting and sorting N passages corresponding to the input query from the corpus by a first search model;
(b) rearranging the N passages based on the input query by a second search model;
(c) generating an integrated ranking for the N passages by integrating the alignment result in step (a) and the reordering result in step (b) for the N passages;
(d) sorting M documents (M is less than or equal to N) including the N passages in a rank corresponding to the combined rank for the N passages;
(e) sorting the M documents based on a relationship between the number of passages extracted from the same document among the N passages (np) and the total number of passages of the corresponding document (Np); and
(f) determining the ranking of the M documents by integrating the alignment results in step (d) and the alignment results in step (e) for the M documents
contains a command that causes it to be executed,
In step (e), the M documents are arranged in the order from a document having a small value given by the relation of (Np-np)/Np to a document having a large corresponding value, or having a large value given by the relation of np/Np. Documents are sorted in descending order from document to document.
A computer program stored on a non-transitory storage medium for retrieving documents.
KR1020210071423A 2021-06-02 2021-06-02 Method for providing enhanced search result in passage-based information retrieval KR102324571B1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020210071423A KR102324571B1 (en) 2021-06-02 2021-06-02 Method for providing enhanced search result in passage-based information retrieval
PCT/KR2022/007811 WO2022255807A1 (en) 2021-06-02 2022-06-02 Method for providing improved search result by combining two or more information searches
US18/527,499 US20240168988A1 (en) 2021-06-02 2023-12-04 Method for providing enhanced search result by fusioning more than two information retrievals

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210071423A KR102324571B1 (en) 2021-06-02 2021-06-02 Method for providing enhanced search result in passage-based information retrieval

Publications (1)

Publication Number Publication Date
KR102324571B1 true KR102324571B1 (en) 2021-11-11

Family

ID=78516230

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210071423A KR102324571B1 (en) 2021-06-02 2021-06-02 Method for providing enhanced search result in passage-based information retrieval

Country Status (1)

Country Link
KR (1) KR102324571B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022255807A1 (en) * 2021-06-02 2022-12-08 호서대학교 산학협력단 Method for providing improved search result by combining two or more information searches

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100185623A1 (en) 2009-01-15 2010-07-22 Yumao Lu Topical ranking in information retrieval
WO2016015267A1 (en) 2014-07-31 2016-02-04 Hewlett-Packard Development Company, L.P. Rank aggregation based on markov model
WO2017201647A1 (en) * 2016-05-23 2017-11-30 Microsoft Technology Licensing, Llc Relevant passage retrieval system
KR102197945B1 (en) * 2020-05-01 2021-01-05 호서대학교 산학협력단 Method for training information retrieval model based on weak-supervision and method for providing search result using such model

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100185623A1 (en) 2009-01-15 2010-07-22 Yumao Lu Topical ranking in information retrieval
WO2016015267A1 (en) 2014-07-31 2016-02-04 Hewlett-Packard Development Company, L.P. Rank aggregation based on markov model
WO2017201647A1 (en) * 2016-05-23 2017-11-30 Microsoft Technology Licensing, Llc Relevant passage retrieval system
KR102197945B1 (en) * 2020-05-01 2021-01-05 호서대학교 산학협력단 Method for training information retrieval model based on weak-supervision and method for providing search result using such model

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Cormack 외 2인. "Reciprocal rank fusion outperforms condorcet and individual rank learning methods." Proceedings of the 32nd international ACM SIGIR(2009.07.23. 공개)* *
Wu, Zhijing 외 4인. "Investigating passage-level relevance and its role in document-level relevance judgment." Proceedings of the 42nd International ACM SIGIR (2019.07.25. 공개)* *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022255807A1 (en) * 2021-06-02 2022-12-08 호서대학교 산학협력단 Method for providing improved search result by combining two or more information searches

Similar Documents

Publication Publication Date Title
US10452691B2 (en) Method and apparatus for generating search results using inverted index
KR101938953B1 (en) Flash optimized columnar data layout and data access algorithms for big data query engines
US9146983B2 (en) Creating a semantically aggregated index in an indexer-agnostic index building system
US8533203B2 (en) Identifying synonyms of entities using a document collection
Aggarwal et al. Towards graphical models for text processing
Naidan et al. Permutation search methods are efficient, yet faster search is possible
Karpinski et al. Top-k color queries for document retrieval
CN111522905A (en) Document searching method and device based on database
Hoang-Vu et al. A unified index for spatio-temporal keyword queries
Tang et al. Efficient Processing of Hamming-Distance-Based Similarity-Search Queries Over MapReduce.
Mackenzie et al. Efficient document-at-a-time and score-at-a-time query evaluation for learned sparse representations
CN103064841A (en) Retrieval device and retrieval method
KR102324571B1 (en) Method for providing enhanced search result in passage-based information retrieval
KR102325249B1 (en) Method for providing enhanced search result by fusioning passage-based and document-based information retrievals
Wei et al. A fast algorithm for constructing inverted files on heterogeneous platforms
Reis et al. An evaluation of data model for NoSQL document-based databases
CN111143400B (en) Full stack type retrieval method, system, engine and electronic equipment
Ragavan et al. A Novel Big Data Storage Reduction Model for Drill Down Search.
US20240168988A1 (en) Method for providing enhanced search result by fusioning more than two information retrievals
Ragavan Efficient key hash indexing scheme with page rank for category based search engine big data
Phillips et al. InterJoin: Exploiting indexes and materialized views in XPath evaluation
CN103853796B (en) data insertion method and device
Buranasaksee A scalable approach for index in generic location-aware rank query
Lee et al. Automating relational database schema design for very large semantic datasets
Kumari et al. Reducing Search Space in Big Data Mining

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant