KR20220122429A - Method, server and computer program for providing legal documents clustering search service using artificial intelligence - Google Patents
Method, server and computer program for providing legal documents clustering search service using artificial intelligence Download PDFInfo
- Publication number
- KR20220122429A KR20220122429A KR1020210054910A KR20210054910A KR20220122429A KR 20220122429 A KR20220122429 A KR 20220122429A KR 1020210054910 A KR1020210054910 A KR 1020210054910A KR 20210054910 A KR20210054910 A KR 20210054910A KR 20220122429 A KR20220122429 A KR 20220122429A
- Authority
- KR
- South Korea
- Prior art keywords
- search
- static
- legal documents
- legal
- clustering
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 80
- 238000013473 artificial intelligence Methods 0.000 title claims abstract description 39
- 238000004590 computer program Methods 0.000 title claims abstract description 17
- 230000003068 static effect Effects 0.000 claims abstract description 121
- 238000012545 processing Methods 0.000 claims description 10
- 230000004044 response Effects 0.000 claims description 6
- 230000008901 benefit Effects 0.000 abstract description 4
- 238000004891 communication Methods 0.000 description 17
- 230000008569 process Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 230000002354 daily effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 238000012553 document review Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/31—Indexing; Data structures therefor; Storage structures
- G06F16/316—Indexing structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/93—Document management systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/18—Legal services
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Tourism & Hospitality (AREA)
- Mathematical Physics (AREA)
- Technology Law (AREA)
- Computational Linguistics (AREA)
- Human Computer Interaction (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Economics (AREA)
- General Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
본 발명의 다양한 실시예는 인공지능을 이용한 법률문서 클러스터링 검색 서비스 제공방법, 서버 및 컴퓨터프로그램에 관한 것이다.Various embodiments of the present invention relate to a method of providing a legal document clustering search service using artificial intelligence, a server, and a computer program.
일반적으로, 법률문서는 법령의 쟁점에 적용하여 법리적으로 해석하는 성격을 가지고 있기 때문에, 이러한 법률문서들은 국민들이 마주하는 각각의 쟁점에 대해 바람직한 법률기준을 확립할 수 있도록 도움을 준다.In general, since legal documents have the characteristics of being interpreted legally by applying them to issues of law, these legal documents help people to establish desirable legal standards for each issue they face.
여기서, 법률문서는 법률 언어로 쓰인 계약서 또는 판결문을 의미한다. 법률문서는 매년 150만건 이상 생성되며, 각각의 쟁점마다 많은 법률문서가 존재한다.Here, the legal document means a contract or judgment written in legal language. More than 1.5 million legal documents are created every year, and there are many legal documents for each issue.
종래에는, 이러한 법률문서를 일반인들이 편리하게 보고 접할 수 있도록 하는 법률문서 검색시스템을 제공하고 있으나, 법령 또는 법률용어로 검색 시, 무수히 많은 검색결과가 도출되어 사용자가 원하는 법률문서를 찾는데 많은 어려움이 있다. 특히 법률문서 중 법원판례는 쟁점과 법령을 포함하고 있으나, 쟁점을 구체적으로 명시하는 키워드가 존재하지 않아, 특정 쟁점에 대한 법률문서 수집이 어렵다는 단점이 있다.Conventionally, a legal document search system has been provided so that the general public can conveniently view and access these legal documents. have. In particular, among legal documents, court precedents include issues and laws, but there is no keyword specifically specifying the issues, so it is difficult to collect legal documents on specific issues.
또한, 현재 공개되어 있는 법률문서는 전체의 0.3%미만이며, 이 마저도 대부분이 디지털화 되어 있지 않고, 종이나 이미지 형태로 존재하기 때문에 사용자로 하여금 검색이 쉽지 않다는 문제가 있다.In addition, less than 0.3% of the legal documents currently publicly available are not digitized and most of them are not digitized and exist in the form of paper or images, so there is a problem that it is not easy for users to search.
또한, 종래의 법률문서 검색시스템의 경우, 단순히 문서내의 키워드 검색을 기반으로 하기 때문에, 단순한 키워드 검색 시 관련 없는 법률문서까지 검색된다는 단점이 존재하며, 이로 인하여 일반인이 원하는 쟁점과 관련된 법률문서를 찾기 위해서는 검색결과의 모든 문서를 일일이 읽어야 한다는 문제점이 존재한다.In addition, in the case of the conventional legal document search system, since it is based on a keyword search within a document, there is a disadvantage that even unrelated legal documents are searched for a simple keyword search. In order to do this, there is a problem that all documents in the search results must be read one by one.
본 발명이 해결하고자 하는 과제는 상기와 같은 종래의 법률문서 검색시스템의 단점 및 문제점을 극복하기 위한 목적으로, 사용자로부터 검색어를 입력받는 것에 응답하여 검색어에 따라 법률문서를 동적 클러스터링함으로써 생성된 동적 클러스터와 법률문서정보를 기반으로 복수의 법률문서에 대한 정적 클러스터링을 수행함으로써 생성된 복수의 정적 클러스터 중 해당 검색어와 관련된 정적 클러스터를 포함하는 검색 결과를 제공함으로써, 보다 정확한 검색 결과를 제공할 수 있는 인공지능을 이용한 법률문서 클러스터링 검색 서비스 제공방법, 서버 및 컴퓨터프로그램을 제공하는 것이다.The problem to be solved by the present invention is to overcome the disadvantages and problems of the conventional legal document search system as described above, in response to receiving a search word from a user, a dynamic cluster generated by dynamically clustering legal documents according to the search word. Artificial intelligence that can provide more accurate search results by providing search results including static clusters related to the relevant search term among a plurality of static clusters generated by performing static clustering of a plurality of legal documents based on legal document information It is to provide a method of providing a search service for clustering legal documents using intelligence, a server and a computer program.
본 발명이 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The problems to be solved by the present invention are not limited to the problems mentioned above, and other problems not mentioned will be clearly understood by those skilled in the art from the following description.
상술한 과제를 해결하기 위한 본 발명의 일 실시예에 따른 인공지능을 이용한 법률문서 클러스터링 검색 서비스 제공방법은, 컴퓨팅 장치에 의해 수행되는 방법에 있어서, 하나 이상의 검색어를 입력받는 단계, 상기 입력된 하나 이상의 검색어를 이용하여 기 저장된 복수의 법률문서에 대한 동적 클러스터링을 수행함으로써, 하나 이상의 동적 클러스터를 생성하는 단계, 상기 기 저장된 복수의 법률문서를 정적 클러스터링함으로써 생성된 복수의 정적 클러스터 중 상기 입력된 하나 이상의 검색어와 관련된 하나 이상의 정적 클러스터를 선택하는 단계 및 상기 생성된 하나 이상의 동적 클러스터 및 상기 선택된 하나 이상의 정적 클러스터를 포함하는 검색 결과를 제공하는 단계를 포함할 수 있다.A method of providing a legal document clustering search service using artificial intelligence according to an embodiment of the present invention for solving the above-described problems, in a method performed by a computing device, includes the steps of: receiving one or more search terms; generating one or more dynamic clusters by performing dynamic clustering on a plurality of pre-stored legal documents using the above search words; The method may include selecting one or more static clusters related to one or more search terms and providing a search result including the one or more generated dynamic clusters and the selected one or more static clusters.
다양한 실시예에서, 상기 하나 이상의 동적 클러스터를 생성하는 단계는, 상기 기 저장된 복수의 법률문서 중 상기 입력된 하나 이상의 검색어를 포함하는 복수의 법률문서를 선택하는 단계, 상기 선택된 복수의 법률문서를 벡터화하는 단계 및 상기 벡터화된 복수의 법률문서 간의 유사도를 산출하고, 상기 산출된 유사도에 기초하여 상기 선택된 복수의 법률문서에 대한 동적 클러스터링을 수행하는 단계를 포함할 수 있다.In various embodiments, the generating of the one or more dynamic clusters may include selecting a plurality of legal documents including the input one or more search terms from among the plurality of pre-stored legal documents, and vectorizing the selected plurality of legal documents. and calculating a similarity between the plurality of vectorized legal documents, and performing dynamic clustering on the selected plurality of legal documents based on the calculated similarity.
다양한 실시예에서, 상기 입력된 하나 이상의 검색어를 포함하는 복수의 법률문서를 선택하는 단계는, 상기 기 저장된 복수의 법률문서 중 상기 입력된 하나 이상의 검색어가 최소 1회 이상 포함된 법률문서를 선택하되, 상기 선택된 법률문서의 개수가 기 설정된 최대값을 초과하는 경우, 상기 선택된 법률문서의 개수가 상기 기 설정된 최대값 이하가 될 때까지 상기 기 저장된 복수의 법률문서에 대한 상기 입력된 하나 이상의 검색어의 최소 포함 횟수를 순차적으로 증가시키는 단계를 포함할 수 있다.In various embodiments, the selecting of a plurality of legal documents including the inputted one or more search words includes selecting a legal document including the inputted one or more search terms from among the plurality of pre-stored legal documents at least once. , when the number of the selected legal documents exceeds a preset maximum value, the input of one or more search terms for the plurality of pre-stored legal documents until the number of the selected legal documents is less than or equal to the preset maximum value It may include the step of sequentially increasing the minimum number of inclusions.
다양한 실시예에서, 상기 하나 이상의 동적 클러스터를 생성하는 단계는, 복수의 검색어가 입력된 경우, 상기 기 저장된 복수의 법률문서 중 상기 복수의 검색어를 모두 포함하는 법률문서를 선택하고, 상기 선택된 법률문서에 대한 동적 클러스터링을 수행하되, 상기 선택된 법률문서가 기 설정된 최소값 미만인 경우, 상기 선택된 법률문서의 개수가 상기 기 설정된 최소값 이상이 될 때까지 상기 복수의 검색어 중 우선순위 - 상기 우선순위는 상기 복수의 검색어가 입력된 순서 및 상기 복수의 검색어와 함께 입력된 연산자 중 적어도 하나에 기초하여 설정되는 것임 - 가 낮은 검색어부터 순차적으로 제외시키는 단계를 포함할 수 있다.In various embodiments, the generating of the one or more dynamic clusters includes selecting a legal document including all of the plurality of search terms from among the plurality of pre-stored legal documents when a plurality of search words are input, and the selected legal document Dynamic clustering is performed for , and when the selected legal document is less than a preset minimum value, priority among the plurality of search terms until the number of the selected legal documents is equal to or greater than the preset minimum value - The priority is the plurality of The method may include sequentially excluding search words with a lower value - which is set based on at least one of an input order of search words and an operator input together with the plurality of search words.
다양한 실시예에서, 상기 기 저장된 복수의 법률문서에 대한 정적 클러스터링을 수행함으로써, 복수의 정적 클러스터를 생성하는 단계를 더 포함하며, 상기 복수의 정적 클러스터를 생성하는 단계는, 상기 기 저장된 복수의 법률문서 각각을 참조문서 - 상기 참조문서는 상기 기 저장된 복수의 법률문서 각각이 참조하고 있는 판례, 법령, 문헌 및 평석 중 적어도 하나를 포함함 - 에 따라 정적 클러스터링을 수행함으로써 복수의 제1 정적 클러스터를 생성하는 단계, 상기 기 저장된 복수의 법률문서 각각을 관련법령 - 상기 관련법령은 상기 기 저장된 복수의 법률문서 각각이 인용하는 법령 및 조문 중 적어도 하나를 포함함 - 에 따라 정적 클러스터링을 수행함으로써, 복수의 제2 정적 클러스터를 생성하는 단계 및 상기 기 저장된 복수의 법률문서 각각을 상기 기 저장된 복수의 법률문서 각각이 다루고 있는 쟁점에 따라 정적 클러스터링을 수행함으로써, 복수의 제3 정적 클러스터를 생성하는 단계를 포함할 수 있다.In various embodiments, the method further comprises generating a plurality of static clusters by performing static clustering on the plurality of pre-stored legal documents, wherein the generating of the plurality of static clusters includes: the plurality of pre-stored laws A plurality of first static clusters are formed by performing static clustering according to each document as a reference document - the reference document includes at least one of precedents, statutes, documents, and comments referenced by each of the plurality of pre-stored legal documents generating, by performing static clustering of each of the plurality of pre-stored legal documents according to a related law, wherein the related law includes at least one of laws and articles cited by each of the plurality of pre-stored legal documents. generating a second static cluster of , and generating a plurality of third static clusters by performing static clustering of each of the plurality of pre-stored legal documents according to an issue dealt with by each of the plurality of pre-stored legal documents. may include
다양한 실시예에서, 상기 하나 이상의 정적 클러스터를 선택하는 단계는, 상기 복수의 정적 클러스터와 상기 입력된 하나 이상의 검색어 간의 관련성를 산출하는 단계 및 상기 산출된 관련성이 기 설정된 값 이상인 하나 이상의 정적 클러스터를 선택하는 단계를 포함할 수 있다.In various embodiments, the selecting of the one or more static clusters may include calculating a relevance between the plurality of static clusters and the input one or more search terms, and selecting one or more static clusters in which the calculated relevance is equal to or greater than a preset value. may include steps.
다양한 실시예에서, 상기 산출된 유사도가 기 설정된 값 이상인 하나 이상의 정적 클러스터를 선택하는 단계는, 복수의 검색어가 입력된 경우, 상기 복수의 정적 클러스터 중 모든 검색어와의 관련성이 상기 기 설정된 값 이상인 하나 이상의 정적 클러스터를 선택하거나, 상기 복수의 검색어 각각에 대한 관련성의 평균값이 상기 기 설정된 값 이상인 하나 이상의 정적 클러스터를 선택하는 단계를 포함할 수 있다.In various embodiments, the selecting of the one or more static clusters having the calculated similarity equal to or greater than a preset value may include, when a plurality of search words are input, one or more of the plurality of static clusters having relevance to all search terms greater than or equal to the preset value. The method may include selecting one or more static clusters or selecting one or more static clusters in which an average value of relevance for each of the plurality of search terms is equal to or greater than the preset value.
다양한 실시예에서, 상기 검색 결과를 제공하는 단계는, 제1 검색어를 이용하여 생성된 동적 클러스터 및 상기 제1 검색어를 이용하여 선택된 정적 클러스터의 개수가 기 설정된 개수 미만인 경우, 상기 제1 검색어의 동의어인 제2 검색어 또는 상기 제1 검색어의 유사어인 제3 검색어를 이용하여 생성된 동적 클러스터 및 상기 제2 검색어 또는 상기 제3 검색어를 이용하여 선택된 정적 클러스터를 함께 제공하는 단계를 포함할 수 있다.In various embodiments, the providing of the search result may include, when the number of dynamic clusters generated using a first search term and static clusters selected using the first search term is less than a preset number, synonyms of the first search term and providing a dynamic cluster generated using a second search word or a third search word that is a similar word to the first search word and a static cluster selected using the second search word or the third search word.
다양한 실시예에서, 상기 하나 이상의 검색어를 입력받는 단계는, 사용자로부터 법률문서 검색 서비스의 제공을 요청받는 것에 대한 응답으로 상기 사용자에게 복수의 질의 내용을 제공하는 단계, 상기 사용자로부터 상기 제공된 복수의 질의 내용에 대한 복수의 답변 내용을 입력받는 단계 및 상기 입력된 복수의 답변 내용을 분석하여 하나 이상의 키워드를 추출하고, 상기 추출된 하나 이상의 키워드를 검색어로 선정하는 단계를 포함할 수 있다.In various embodiments, the receiving of the one or more search terms includes providing a plurality of query contents to the user in response to receiving a request for provision of a legal document search service from the user, the plurality of queries provided by the user It may include the steps of receiving a plurality of answers to the content, extracting one or more keywords by analyzing the plurality of input answers, and selecting the extracted one or more keywords as a search word.
다양한 실시예에서, 복수의 법률문서를 수집하고, 상기 수집된 복수의 법률문서를 가공하여 저장하는 단계를 더 포함하며, 상기 수집된 복수의 법률문서를 가공하여 저장하는 단계는, 상기 수집된 복수의 법률문서가 이미지 형태의 법률문서인 경우, 상기 이미지 형태의 법률문서를 분석하여 하나 이상의 문자열을 추출하고, 상기 추출된 하나 이상의 문자열을 기 설정된 템플릿 상에 맞춰 가공하여 저장하는 단계 및 상기 수집된 복수의 법률문서의 언어가 외국어인 경우, 상기 외국어를 기 설정된 언어로 자동 번역하고, 상기 자동 번역된 법률문서를 상기 기 설정된 템플릿 상에 맞춰 가공하여 저장하는 단계를 포함할 수 있다.In various embodiments, the method further comprises collecting a plurality of legal documents and processing and storing the plurality of collected legal documents, wherein the processing and storing of the plurality of collected legal documents includes: When the legal document of When the language of the plurality of legal documents is a foreign language, the method may include automatically translating the foreign language into a preset language, and processing and storing the automatically translated legal document on the preset template.
상술한 과제를 해결하기 위한 본 발명의 다른 실시예에 따른 인공지능을 이용한 법률문서 클러스터링 검색 서비스 제공서버는, 프로세서, 네트워크 인터페이스, 메모리 및 상기 메모리에 로드(load)되고, 상기 프로세서에 의해 실행되는 컴퓨터 프로그램을 포함하되, 상기 컴퓨터 프로그램은, 하나 이상의 검색어를 입력받는 인스트럭션(instruction), 상기 입력된 하나 이상의 검색어를 이용하여 기 저장된 복수의 법률문서에 대한 동적 클러스터링을 수행함으로써, 하나 이상의 동적 클러스터를 생성하는 인스트럭션, 상기 기 저장된 복수의 법률문서를 정적 클러스터링함으로써 생성된 복수의 정적 클러스터 중 상기 입력된 하나 이상의 검색어와 관련된 하나 이상의 정적 클러스터를 선택하는 인스트럭션 및 상기 생성된 하나 이상의 동적 클러스터 및 상기 선택된 하나 이상의 정적 클러스터를 포함하는 검색 결과를 제공하는 인스트럭션을 포함할 수 있다.A legal document clustering search service providing server using artificial intelligence according to another embodiment of the present invention for solving the above problems is loaded into a processor, a network interface, a memory and the memory, and is executed by the processor A computer program comprising: an instruction for receiving one or more search words an instruction for generating, an instruction for selecting one or more static clusters related to the one or more inputted search words from among a plurality of static clusters generated by static clustering the plurality of pre-stored legal documents, and the generated one or more dynamic clusters and the selected one An instruction for providing a search result including the above static clusters may be included.
상술한 과제를 해결하기 위한 본 발명의 또 다른 실시예에 따른 컴퓨터로 읽을 수 있는 기록매체에 기록된 컴퓨터프로그램은, 컴퓨팅 장치와 결합되어, 하나 이상의 검색어를 입력받는 단계, 상기 입력된 하나 이상의 검색어를 이용하여 기 저장된 복수의 법률문서에 대한 동적 클러스터링을 수행함으로써, 하나 이상의 동적 클러스터를 생성하는 단계, 상기 기 저장된 복수의 법률문서를 정적 클러스터링함으로써 생성된 복수의 정적 클러스터 중 상기 입력된 하나 이상의 검색어와 관련된 하나 이상의 정적 클러스터를 선택하는 단계 및 상기 생성된 하나 이상의 동적 클러스터 및 상기 선택된 하나 이상의 정적 클러스터를 포함하는 검색 결과를 제공하는 단계를 실행시키기 위하여 컴퓨터로 판독가능한 기록매체에 저장될 수 있다.A computer program recorded on a computer-readable recording medium according to another embodiment of the present invention for solving the above-described problems is coupled to a computing device, the step of receiving one or more search words, the input one or more search words generating one or more dynamic clusters by performing dynamic clustering on a plurality of pre-stored legal documents using It may be stored in a computer-readable recording medium to execute the steps of selecting one or more static clusters related to the one or more dynamic clusters and providing a search result including the one or more generated dynamic clusters and the selected one or more static clusters.
본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.Other specific details of the invention are included in the detailed description and drawings.
본 발명의 다양한 실시예에 따르면, 사용자로부터 검색어를 입력받는 것에 응답하여, 검색어에 따라 법률문서를 동적 클러스터링함으로써 생성된 동적 클러스터 및 법률문서정보를 기반으로 복수의 법률문서에 대한 정적 클러스터링을 수행함으로써 생성된 복수의 정적 클러스터 중 해당 검색어와 관련된 정적 클러스터를 포함하는 검색 결과를 제공함으로써, 상기와 같은 종래의 법률문서 검색시스템의 단점 및 문제점을 극복하고 보다 정확한 검색 결과를 제공할 수 있다는 이점이 있다.According to various embodiments of the present invention, in response to receiving a search word from a user, static clustering of a plurality of legal documents is performed based on the dynamic cluster generated by dynamically clustering legal documents according to the search word and legal document information. By providing a search result including a static cluster related to a corresponding search term among a plurality of generated static clusters, there is an advantage in that it is possible to overcome the disadvantages and problems of the conventional legal document search system as described above and provide more accurate search results. .
본 발명의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.Effects of the present invention are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the following description.
도 1은 본 발명의 일 실시예에 따른 인공지능을 이용한 법률문서 클러스터링 검색 서비스 제공시스템을 도시한 도면이다.
도 2는 본 발명의 다른 실시예에 따른 인공지능을 이용한 법률문서 클러스터링 검색 서비스 제공서버의 하드웨어 구성도이다.
도 3은 본 발명의 또 다른 실시예에 따른 인공지능을 이용한 법률문서 클러스터링 검색 서비스 제공방법의 순서도이다.
도 4는 다양한 실시예에서, 사용자로부터 입력된 검색어를 이용하여 법률문서를 동적 클러스터링하는 방법을 설명하기 위한 순서도이다.
도 5는 다양한 실시예에서, 복수의 법률문서에 대하여 정적 클러스터링을 수행함에 따라 생성된 복수의 정적 클러스터 중 검색어에 대응하는 정적 클러스터를 선택하는 방법을 설명하기 위한 순서도이다.
도 6은 다양한 실시예에서 적용 가능한 법률문서 수집 및 저장 과정을 예시적으로 도시한 도면이다.
도 7은 다양한 실시예에서 적용 가능한 법률문서 클러스터링 검색 서비스 제공 사용자 인터페이스(User Interface, UI)를 예시적으로 도시한 도면이다.1 is a diagram illustrating a legal document clustering search service providing system using artificial intelligence according to an embodiment of the present invention.
2 is a hardware configuration diagram of a legal document clustering search service providing server using artificial intelligence according to another embodiment of the present invention.
3 is a flowchart of a method for providing a legal document clustering search service using artificial intelligence according to another embodiment of the present invention.
4 is a flowchart illustrating a method of dynamically clustering legal documents using a search word input by a user, according to various embodiments.
5 is a flowchart illustrating a method of selecting a static cluster corresponding to a search term from among a plurality of static clusters generated by performing static clustering on a plurality of legal documents, according to various embodiments.
6 is a view exemplarily illustrating a process of collecting and storing legal documents applicable to various embodiments.
7 is a diagram exemplarily illustrating a legal document clustering search service providing user interface (UI) applicable to various embodiments.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 제한되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술 분야의 통상의 기술자에게 본 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. Advantages and features of the present invention and methods of achieving them will become apparent with reference to the embodiments described below in detail in conjunction with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but may be implemented in various different forms, and only these embodiments allow the disclosure of the present invention to be complete, and those of ordinary skill in the art to which the present invention pertains. It is provided to fully inform those skilled in the art of the scope of the present invention, and the present invention is only defined by the scope of the claims.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다. 명세서 전체에 걸쳐 동일한 도면 부호는 동일한 구성 요소를 지칭하며, "및/또는"은 언급된 구성요소들의 각각 및 하나 이상의 모든 조합을 포함한다. 비록 "제1", "제2" 등이 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있음은 물론이다.The terminology used herein is for the purpose of describing the embodiments and is not intended to limit the present invention. In this specification, the singular also includes the plural, unless specifically stated otherwise in the phrase. As used herein, “comprises” and/or “comprising” does not exclude the presence or addition of one or more other components in addition to the stated components. Like reference numerals refer to like elements throughout, and "and/or" includes each and every combination of one or more of the recited elements. Although "first", "second", etc. are used to describe various elements, these elements are not limited by these terms, of course. These terms are only used to distinguish one component from another. Therefore, it goes without saying that the first component mentioned below may be the second component within the spirit of the present invention.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야의 통상의 기술자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.Unless otherwise defined, all terms (including technical and scientific terms) used herein will have the meaning commonly understood by those of ordinary skill in the art to which this invention belongs. In addition, terms defined in a commonly used dictionary are not to be interpreted ideally or excessively unless clearly specifically defined.
명세서에서 사용되는 "부" 또는 “모듈”이라는 용어는 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, "부" 또는 “모듈”은 어떤 역할들을 수행한다. 그렇지만 "부" 또는 “모듈”은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. "부" 또는 “모듈”은 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 "부" 또는 “모듈”은 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 "부" 또는 “모듈”들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 "부" 또는 “모듈”들로 결합되거나 추가적인 구성요소들과 "부" 또는 “모듈”들로 더 분리될 수 있다.As used herein, the term “unit” or “module” refers to a hardware component such as software, FPGA, or ASIC, and “unit” or “module” performs certain roles. However, “part” or “module” is not meant to be limited to software or hardware. A “part” or “module” may be configured to reside on an addressable storage medium or may be configured to reproduce one or more processors. Thus, by way of example, “part” or “module” refers to components such as software components, object-oriented software components, class components and task components, processes, functions, properties, Includes procedures, subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, and variables. Components and functionality provided within “parts” or “modules” may be combined into a smaller number of components and “parts” or “modules” or additional components and “parts” or “modules”. can be further separated.
공간적으로 상대적인 용어인 "아래(below)", "아래(beneath)", "하부(lower)", "위(above)", "상부(upper)" 등은 도면에 도시되어 있는 바와 같이 하나의 구성요소와 다른 구성요소들과의 상관관계를 용이하게 기술하기 위해 사용될 수 있다. 공간적으로 상대적인 용어는 도면에 도시되어 있는 방향에 더하여 사용시 또는 동작시 구성요소들의 서로 다른 방향을 포함하는 용어로 이해되어야 한다. 예를 들어, 도면에 도시되어 있는 구성요소를 뒤집을 경우, 다른 구성요소의 "아래(below)"또는 "아래(beneath)"로 기술된 구성요소는 다른 구성요소의 "위(above)"에 놓여질 수 있다. 따라서, 예시적인 용어인 "아래"는 아래와 위의 방향을 모두 포함할 수 있다. 구성요소는 다른 방향으로도 배향될 수 있으며, 이에 따라 공간적으로 상대적인 용어들은 배향에 따라 해석될 수 있다.Spatially relative terms "below", "beneath", "lower", "above", "upper", etc. It can be used to easily describe the correlation between a component and other components. A spatially relative term should be understood as a term that includes different directions of components during use or operation in addition to the directions shown in the drawings. For example, when a component shown in the drawing is turned over, a component described as “beneath” or “beneath” of another component may be placed “above” of the other component. can Accordingly, the exemplary term “below” may include both directions below and above. Components may also be oriented in other orientations, and thus spatially relative terms may be interpreted according to orientation.
본 명세서에서, 컴퓨터는 적어도 하나의 프로세서를 포함하는 모든 종류의 하드웨어 장치를 의미하는 것이고, 실시 예에 따라 해당 하드웨어 장치에서 동작하는 소프트웨어적 구성도 포괄하는 의미로서 이해될 수 있다. 예를 들어, 컴퓨터는 스마트폰, 태블릿 PC, 데스크톱, 노트북 및 각 장치에서 구동되는 사용자 클라이언트 및 애플리케이션을 모두 포함하는 의미로서 이해될 수 있으며, 또한 이에 제한되는 것은 아니다.In this specification, a computer means all types of hardware devices including at least one processor, and may be understood as encompassing software configurations operating in the corresponding hardware device according to embodiments. For example, a computer may be understood to include, but is not limited to, smart phones, tablet PCs, desktops, notebooks, and user clients and applications running on each device.
이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다. Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
본 명세서에서 설명되는 각 단계들은 컴퓨터에 의하여 수행되는 것으로 설명되나, 각 단계의 주체는 이에 제한되는 것은 아니며, 실시 예에 따라 각 단계들의 적어도 일부가 서로 다른 장치에서 수행될 수도 있다.Each step described in this specification is described as being performed by a computer, but the subject of each step is not limited thereto, and at least a portion of each step may be performed in different devices according to embodiments.
본 명세서에서, 본 명세서에 기재된 인공지능을 이용한 법률문서 클러스터링 검색 서비스 제공방법은 법률문서를 분류하고, 사용자로부터 입력된 검색어에 대응되는 법률문서를 제공하는 방법인 것으로 설명하고 있으나, 이는 하나의 예시일 뿐 이에 한정되지 않고, 법률문서가 아닌 다른 문서에 대해서도 적용이 가능하다.In this specification, the method for providing a legal document clustering search service using artificial intelligence described in this specification is described as a method of classifying legal documents and providing a legal document corresponding to a search word input by a user, but this is an example However, the present invention is not limited thereto, and it can be applied to documents other than legal documents.
도 1은 본 발명의 일 실시예에 따른 인공지능을 이용한 법률문서 클러스터링 검색 서비스 제공시스템을 도시한 도면이다.1 is a diagram illustrating a legal document clustering search service providing system using artificial intelligence according to an embodiment of the present invention.
도 1을 참조하면, 본 발명의 일 실시예에 따른 인공지능을 이용한 법률문서 클러스터링 검색 서비스 제공시스템은 법률문서 클러스터링 검색 서비스 제공서버(100), 사용자 단말(200) 및 외부 서버(300)를 포함할 수 있다.Referring to FIG. 1 , a legal document clustering search service providing system using artificial intelligence according to an embodiment of the present invention includes a legal document clustering search
여기서, 도 1에 도시된 인공지능을 이용한 법률문서 클러스터링 검색 서비스 제공시스템은 일 실시예에 따른 것이고, 그 구성 요소가 도 1에 도시된 실시예에 한정되는 것은 아니며, 필요에 따라 부가, 변경 또는 삭제될 수 있다.Here, the legal document clustering search service providing system using artificial intelligence shown in FIG. 1 is according to an embodiment, and its components are not limited to the embodiment shown in FIG. 1, and may be added, changed or may be deleted.
일 실시예에서, 법률문서 클러스터링 검색 서비스 제공서버(100)(이하, "서버(100)")는 사용자로부터 검색어를 입력받고, 입력된 검색어와 관련된 검색 결과를 제공하는 법률문서 클러스터링 검색 서비스를 제공할 수 있다.In one embodiment, the legal document clustering search service providing server 100 (hereinafter, “
예를 들어, 서버(100)는 네트워크(400)를 통해 사용자 단말(200)과 연결될 수 있고, 사용자 단말(200)로 법률문서 클러스터링 검색 서비스의 이용을 위한 UI(예: 도 7의 10)를 제공할 수 있으며, UI(10)를 통해 검색어를 입력받고 이에 대한 검색 결과를 출력할 수 있다.For example, the
다양한 실시예에서, 서버(100)는 웹(Web) 또는 애플리케이션(Application) 기반의 법률문서 클러스터링 검색 서비스를 제공할 수 있다. 그러나, 이에 한정되지 않는다.In various embodiments, the
여기서, 사용자 단말(200)은 사용자 단말(200)의 적어도 일부분에 디스플레이를 포함하며, 서버(100)로부터 제공되는 애플리케이션 기반의 법률문서 클러스터링 검색 서비스의 구동을 위한 운영체제를 포함할 수 있다. 예를 들어, 사용자 단말(200)은 스마트폰(Smart-phone)일 수 있으나, 이에 한정되지 않고, 사용자 단말(200)은, 휴대성과 이동성이 보장되는 무선 통신 장치로서, 네비게이션, PCS(Personal Communication System), GSM(Global System for Mobile communications), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), Wibro(Wireless Broadband Internet) 단말, 스마트 패드(Smartpad), 타블렛PC(Tablet PC) 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치를 포함할 수 있다.Here, the
또한, 여기서, 네트워크(400)는 복수의 단말 및 서버들과 같은 각각의 노드 상호 간에 정보 교환이 가능한 연결 구조를 의미할 수 있다. 예를 들어, 네트워크(400)는 근거리 통신망(LAN: Local Area Network), 광역 통신망(WAN: Wide Area Network), 인터넷(WWW: World Wide Web), 유무선 데이터 통신망, 전화망, 유무선 텔레비전 통신망 등을 포함한다.Also, here, the
또한, 여기서, 무선 데이터 통신망은 3G, 4G, 5G, 3GPP(3rd Generation Partnership Project), 5GPP(5th Generation Partnership Project), LTE(Long Term Evolution), WIMAX(World Interoperability for Microwave Access), 와이파이(Wi-Fi), 인터넷(Internet), LAN(Local Area Network), Wireless LAN(Wireless Local Area Network), WAN(Wide Area Network), PAN(Personal Area Network), RF(Radio Frequency), 블루투스(Bluetooth) 네트워크, NFC(Near-Field Communication) 네트워크, 위성 방송 네트워크, 아날로그 방송 네트워크, DMB(Digital Multimedia Broadcasting) 네트워크 등이 포함되나 이에 한정되지는 않는다.In addition, here, the wireless data communication network is 3G, 4G, 5G, 3rd Generation Partnership Project (3GPP), 5th Generation Partnership Project (5GPP), Long Term Evolution (LTE), World Interoperability for Microwave Access (WIMAX), Wi-Fi (Wi- Fi), Internet, LAN (Local Area Network), Wireless LAN (Wireless Local Area Network), WAN (Wide Area Network), PAN (Personal Area Network), RF (Radio Frequency), Bluetooth network, Near-Field Communication (NFC) networks, satellite broadcast networks, analog broadcast networks, Digital Multimedia Broadcasting (DMB) networks, and the like are included, but are not limited thereto.
다양한 실시예에서, 서버(100)는 인공지능 기반의 법률문서 클러스터링 검색 서비스를 제공할 수 있다. 예를 들어, 서버(100)는 기 학습된 인공지능 모델을 이용하여 기 저장된 복수의 법률문서를 클러스터링할 수 있고, 이에 따라 도출되는 결과를 검색 결과로서 사용자에게 제공할 수 있다.In various embodiments, the
여기서, 인공지능 모델은 비지도 학습방법 등 머신러닝 기술에 의해 학습된 모델이며, 복수의 법률문서에 대한 클러스터링을 수행하는 모델일 수 있다. 예를 들어, 인공지능 모델은 K-평균(K-Means) 모델(또는 K-Means++ 모델), 평균이동(Mean Shift) 모델, 가우스 혼합 모델(Gaussian Mixture Model, GMM), 밀도기반 군집화(Density Based Spatial Clustering of Applications with Noise, DBSCAN) 모델, 자기 조직화 지도(Self-Organizing Map, SOM) 모델 및 ISODATA 모델 중 어느 하나일 수 있으나, 이에 한정되지 않고, 상기의 모델 중 둘 이상의 모델을 이용(예: 앙상블)하여 법률문서를 클러스터링할 수 있다.Here, the artificial intelligence model is a model learned by machine learning technology such as an unsupervised learning method, and may be a model that performs clustering on a plurality of legal documents. For example, AI models include K-Means model (or K-Means++ model), Mean Shift model, Gaussian Mixture Model (GMM), and Density Based clustering. Spatial Clustering of Applications with Noise, DBSCAN) model, Self-Organizing Map (SOM) model, and any one of ISODATA model may be used, but is not limited thereto, and two or more of the above models are used (eg: ensemble) to cluster legal documents.
일 실시예에서, 외부 서버(300)는 네트워크(400)를 통해 서버(100)와 연결될 수 있으며, 서버(100)가 인공지능을 이용한 법률문서 클러스터링 검색 서비스를 제공하기 위하여 필요한 각종 정보/데이터(예: 복수의 법률문서, 복수의 법률문서를 정적 클러스터링함으로써 생성된 복수의 정적 클러스터, 복수의 사용자에 대한 검색 이력 등)를 저장 및 관리할 수 있고, 서버(100)가 인공지능을 이용한 법률문서 클러스터링 검색 서비스를 제공함에 따라 생성되는 각종 정보/데이터(예: 사용자로부터 입력된 검색어에 따른 동적 클러스터링 수행 결과 등)를 저장 및 관리할 수 있다.In one embodiment, the
다양한 실시예에서, 외부 서버(300)는 서버(100)의 외부에 별도로 구비되는 저장 서버(예: 데이터베이스 서버)일 수 있으나, 이에 한정되지 않고, 각종 정보 및 데이터의 저장을 위하여 외부 서버(300)를 서버(100)의 외부에 별도로 구비하지 않고, 서버(100) 내에 별도의 공간에 데이터베이스를 마련하여 해당 공간에 저장 및 관리할 수 있다. 이하, 도 2를 참조하여, 인공지능을 이용한 법률문서 클러스터링 검색 서비스를 제공하는 서버(100)의 하드웨어 구성에 대해 설명하도록 한다.In various embodiments, the
도 2는 본 발명의 다른 실시예에 따른 인공지능을 이용한 법률문서 클러스터링 검색 서비스 제공서버의 하드웨어 구성도이다.2 is a hardware configuration diagram of a legal document clustering search service providing server using artificial intelligence according to another embodiment of the present invention.
도 2를 참조하면, 본 발명의 다른 실시예에 따른 서버(100)는 하나 이상의 프로세서(110), 프로세서(110)에 의하여 수행되는 컴퓨터 프로그램(151)을 로드(Load)하는 메모리(120), 버스(130), 통신 인터페이스(140) 및 컴퓨터 프로그램(151)을 저장하는 스토리지(150)를 포함할 수 있다. 여기서, 도 2에는 본 발명의 실시예와 관련 있는 구성요소들만 도시되어 있다. 따라서, 본 발명이 속한 기술분야의 통상의 기술자라면 도 2에 도시된 구성요소들 외에 다른 범용적인 구성 요소들이 더 포함될 수 있음을 알 수 있다.2, the
프로세서(110)는 서버(100)의 각 구성의 전반적인 동작을 제어한다. 프로세서(110)는 CPU(Central Processing Unit), MPU(Micro Processor Unit), MCU(Micro Controller Unit), GPU(Graphic Processing Unit) 또는 본 발명의 기술 분야에 잘 알려진 임의의 형태의 프로세서를 포함하여 구성될 수 있다.The
또한, 프로세서(110)는 본 발명의 실시예들에 따른 방법을 실행하기 위한 적어도 하나의 애플리케이션 또는 프로그램에 대한 연산을 수행할 수 있으며, 서버(100)는 하나 이상의 프로세서를 구비할 수 있다.In addition, the
다양한 실시예에서, 프로세서(110)는 프로세서(110) 내부에서 처리되는 신호(또는, 데이터)를 일시적 및/또는 영구적으로 저장하는 램(RAM: Random Access Memory, 미도시) 및 롬(ROM: Read-Only Memory, 미도시)을 더 포함할 수 있다. 또한, 프로세서(110)는 그래픽 처리부, 램 및 롬 중 적어도 하나를 포함하는 시스템온칩(SoC: system on chip) 형태로 구현될 수 있다.In various embodiments, the
메모리(120)는 각종 데이터, 명령 및/또는 정보를 저장한다. 메모리(120)는 본 발명의 다양한 실시예에 따른 방법/동작을 실행하기 위하여 스토리지(150)로부터 컴퓨터 프로그램(151)을 로드할 수 있다. 메모리(120)에 컴퓨터 프로그램(151)이 로드되면, 프로세서(110)는 컴퓨터 프로그램(151)을 구성하는 하나 이상의 인스트럭션들을 실행함으로써 상기 방법/동작을 수행할 수 있다. 메모리(120)는 RAM과 같은 휘발성 메모리로 구현될 수 있을 것이나, 본 개시의 기술적 범위가 이에 한정되는 것은 아니다.The
버스(130)는 서버(100)의 구성 요소 간 통신 기능을 제공한다. 버스(130)는 주소 버스(address Bus), 데이터 버스(Data Bus) 및 제어 버스(Control Bus) 등 다양한 형태의 버스로 구현될 수 있다.The
통신 인터페이스(140)는 서버(100)의 유무선 인터넷 통신을 지원한다. 또한, 통신 인터페이스(140)는 인터넷 통신 외의 다양한 통신 방식을 지원할 수도 있다. 이를 위해, 통신 인터페이스(140)는 본 발명의 기술 분야에 잘 알려진 통신 모듈을 포함하여 구성될 수 있다. 몇몇 실시예에서, 통신 인터페이스(140)는 생략될 수도 있다.The
스토리지(150)는 컴퓨터 프로그램(151)을 비 임시적으로 저장할 수 있다. 서버(100)를 통해 정밀 진단 모듈 제안 프로세스를 수행하는 경우, 스토리지(150)는 ~를 제공하기 위하여 필요한 각종 정보를 저장할 수 있다.The
스토리지(150)는 ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리 등과 같은 비휘발성 메모리, 하드 디스크, 착탈형 디스크, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터로 읽을 수 있는 기록 매체를 포함하여 구성될 수 있다.The
컴퓨터 프로그램(151)은 메모리(120)에 로드될 때 프로세서(110)로 하여금 본 발명의 다양한 실시예에 따른 방법/동작을 수행하도록 하는 하나 이상의 인스트럭션들을 포함할 수 있다. 즉, 프로세서(110)는 상기 하나 이상의 인스트럭션들을 실행함으로써, 본 발명의 다양한 실시예에 따른 상기 방법/동작을 수행할 수 있다.The
일 실시예에서, 컴퓨터 프로그램(151)은 하나 이상의 검색어를 입력받는 단계, 입력된 하나 이상의 검색어를 이용하여 기 저장된 복수의 법률문서에 대한 동적 클러스터링을 수행함으로써, 하나 이상의 동적 클러스터를 생성하는 단계, 저장된 복수의 법률문서를 정적 클러스터링함으로써 생성된 복수의 정적 클러스터 중 입력된 하나 이상의 검색어와 관련된 하나 이상의 정적 클러스터를 선택하는 단계 및 생성된 하나 이상의 동적 클러스터 및 선택된 하나 이상의 정적 클러스터를 포함하는 검색 결과를 제공하는 단계를 포함하는 인공지능을 이용한 법률문서 클러스터링 검색 서비스 제공방법을 수행하도록 하는 하나 이상의 인스트럭션을 포함할 수 있다.In one embodiment, the
본 발명의 실시예와 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접 구현되거나, 하드웨어에 의해 실행되는 소프트웨어 모듈로 구현되거나, 또는 이들의 결합에 의해 구현될 수 있다. 소프트웨어 모듈은 RAM(Random Access Memory), ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리(Flash Memory), 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터 판독가능 기록매체에 상주할 수도 있다.The steps of the method or algorithm described in relation to the embodiment of the present invention may be implemented directly in hardware, implemented as a software module executed by hardware, or implemented by a combination thereof. A software module may include random access memory (RAM), read only memory (ROM), erasable programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), flash memory, hard disk, removable disk, CD-ROM, or It may reside in any type of computer-readable recording medium well known in the art to which the present invention pertains.
본 발명의 구성 요소들은 하드웨어인 컴퓨터와 결합되어 실행되기 위해 프로그램(또는 애플리케이션)으로 구현되어 매체에 저장될 수 있다. 본 발명의 구성 요소들은 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 있으며, 이와 유사하게, 실시 예는 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다. The components of the present invention may be implemented as a program (or application) to be executed in combination with a computer, which is hardware, and stored in a medium. Components of the present invention may be implemented as software programming or software components, and similarly, embodiments may include various algorithms implemented as data structures, processes, routines, or combinations of other programming constructs, including C, C++ , Java, assembler, etc. may be implemented in a programming or scripting language. Functional aspects may be implemented in an algorithm running on one or more processors.
도 3은 본 발명의 또 다른 실시예에 따른 인공지능을 이용한 법률문서 클러스터링 검색 서비스 제공방법의 순서도이다.3 is a flowchart of a method for providing a legal document clustering search service using artificial intelligence according to another embodiment of the present invention.
먼저, 서버(100)는 인공지능을 이용한 법률문서 클러스터링 검색 서비스를 제공하기 위하여 복수의 법률문서를 수집하여 저장할 수 있다. First, the
다양한 실시예에서, 서버(100)는 복수의 법률문서를 저장 및 관리하는 외부 서버(300)(예: 공정거래위원회 서버, 금융위원회 서버, 조세심판원 서버 등)로부터 외부 서버(300)에 저장된 복수의 법률문서를 제공받을 수 있고, 제공된 복수의 법률문서를 기 설정된 템플릿에 맞춰 가공 및 저장할 수 있다.In various embodiments, the
여기서, 법률문서들은 대부분 디지털화되어 있지 않고, 종이나 이미지 형태로 존재하는 바, 서버(100)는 도 6에 도시된 바와 같이, 복수의 이미지 형태의 법률문서(이미지 형태로 기 저장된 법률문서 또는 종이 형태의 법률문서를 촬영함으로써 생성된 법률문서 이미지 등)를 수집할 수 있고, 수집된 이미지 형태의 법률문서를 분석(예: OCR 분석)하여 하나 이상의 문자열을 추출할 수 있으며, 추출된 하나 이상의 문자열을 기 설정된 템플릿 상에 맞춰 가공(예: 맞춤법 보정 및 개행 등)하여 저장할 수 있다.Here, most of the legal documents are not digitized, but exist in the form of paper or images. As shown in FIG. 6 , the
즉, 법률문서의 내용을 사람이 직접 입력할 필요없이, 법률문서를 이미지화하여 업로드하는 동작만으로 보다 빠르고(1분 이내), 간편하게 법률문서를 디지털화 및 저장할 수 있고, 이에 따라 디지털화 되지 못한 다량의 법률문서들을 빠르게 디지털화하여 확보할 수 있다.In other words, it is possible to digitize and store legal documents faster (within 1 minute) and more conveniently just by uploading images of legal documents without the need for a person to directly input the contents of the legal documents. Documents can be quickly digitized and secured.
다양한 실시예에서, 서버(100)는 외부로부터 기 설정된 언어(예: 한국어)가 아닌 외국어(예: 영어, 일어, 중국어 등)로 작성된 법률문서를 수집하는 경우, 수집된 법률문서에 포함된 외국어를 기 설정된 언어로 자동 번역(기계번역)하고, 자동 번역된 법률문서를 기 설정된 템플릿에 맞춰 가공하여 저장할 수 있다. In various embodiments, the
여기서, 외국어로 작성된 법률문서를 다른 언어로 번역하는 방법은 머신러닝 기반의 인공지능 모델을 이용한 방법 등 다양한 기술이 공지되어 있는 바, 자동 번역에 대한 구체적인 방법론에 대해서는 서술하지 않는다.Here, a method of translating a legal document written in a foreign language into another language is known as a method using a machine learning-based artificial intelligence model, and various techniques are known, so a specific methodology for automatic translation is not described.
이때, 서버(100)는 자동 번역된 법률문서와 해당 법률문서를 매칭하여 저장함으로써, 추후 사용자가 해당 법률문서를 열람하고자 할 경우, 번역된 내용과 원문을 선택적으로 볼 수 있도록 할 수 있다. 이하, 인공지능을 이용한 법률문서 클러스터링 검색 서비스 제공방법에 대해 설명하도록 한다.In this case, the
도 3을 참조하면, S110 단계에서, 서버(100)는 사용자로부터 검색어를 입력받을 수 있다. 예를 들어, 서버(100)는 네트워크(400)를 통해 사용자 단말(200)과 연결되어 법률문서 클러스터링 검색 서비스 제공 UI(도 7의 10)를 제공할 수 있고, UI(10)를 통해 검색어를 입력받을 수 있다.Referring to FIG. 3 , in step S110 , the
여기서, 사용자로부터 입력되는 검색어는 하나의 단어일 수 있으나, 이에 한정되지 않고, 복수의 단어, 둘 이상의 단어를 포함하는 구, 절 또는 문장의 형태일 수 있다.Here, the search word input by the user may be a single word, but is not limited thereto, and may be in the form of a plurality of words, a phrase, a clause, or a sentence including two or more words.
다양한 실시예에서, 서버(100)는 UI(10)를 통해 복수의 질의 내용을 제공할 수 있고, 사용자로부터 복수의 질의 내용에 대한 복수의 답변 내용을 입력받을 수 있으며, 입력된 복수의 답변 내용을 분석하여 하나 이상의 키워드를 추출하고, 추출된 하나 이상의 키워드를 검색어로 선정하는 Q&A식 검색어 입력 서비스를 제공할 수 있다.In various embodiments, the
서버(100)가 제공하는 법률문서 클러스터링 검색 서비스를 이용하는 사용자가 법조인일 경우, 자신이 원하는 법률문서를 검색하기 위한 검색어를 쉽게 입력할 수 있으나, 사용자가 비법조인일 경우에는 자신이 원하는 법률문서를 검색하기 위해 어떠한 검색어를 입력해야 하는지 알지 못하여 제대로된 검색을 하지 못하거나, 자신이 원하는 법률문서를 검색하기 위하 수차례에 걸쳐 검색을 반복하는 등의 과정을 거쳐야 한다.If the user using the legal document clustering search service provided by the
이러한 점을 개선하기 위하여, 서버(100)는 사용자가 비법조인일 경우, 사용자가 검색하고자 하는 법률문서 즉, 사용자의 니즈를 파악하기 위한 질의내용을 제공하고, 이에 대한 응답으로 입력된 답변내용을 분석하여 사용자가 원하는 법률문서를 검색하기 위한 검색어를 자동으로 선정함으로써, 비법조인도 보다 쉽고 정확하게 검색 결과를 제공받을 수 있다는 이점이 있다.In order to improve this point, when the user is a non-legal, the
다양한 실시예에서, 서버(100)는 기 저장된 법률용어별 일상용어 데이터를 이용하여, 사용자로부터 입력된 검색어가 일상용어(예: 법률문서에 사용되지 않고 일상 대화에서 사용되는 용어)에 해당하는 것으로 판단되는 경우, 사용자로부터 입력된 일상용어 검색어를 법률용어 검색어로 자동으로 치환할 수 있다.In various embodiments, the
다양한 실시예에서, 서버(100)는 사용자로부터 복수의 검색어가 동시에 입력되는 경우, 입력된 복수의 검색어 각각에 대한 우선순위를 설정할 수 있다.In various embodiments, when a plurality of search words are simultaneously input by the user, the
예를 들어, 서버(100)는 사용자로부터 제1 검색어, 제2 검색어 및 제3 검색어가 순차적으로 입력된 경우, 입력된 순서에 따라 제1 검색어를 제1순위, 제2 검색어를 제2순위 및 제3 검색어를 제3 순위로 설정할 수 있다. For example, when a first search word, a second search word, and a third search word are sequentially input by the user, the
또한, 서버(100)는 사용자로부터 복수의 검색어와 함께 우선순위를 설정하는 연산자(예: #N(여기서, N은 우선순위를 가리키는 자연수))를 입력받을 수 있고, 입력된 연산자에 기초하여 복수의 검색어 각각에 대한 우선순위를 설정할 수 있다.In addition, the
다양한 실시예에서, 서버(100)는 사용자로부터 복수의 검색어를 입력받는 경우, 복수의 검색어 각각의 연관성을 판단할 수 있고, 판단된 연관성에 기초하여 복수의 검색어를 그룹화할 수 있다. 이후, 서버(100)는 복수의 검색어에 대응하는 검색 결과를 제공하는 동작(예: 후술되는 S120 단계 내지 S140 단계)을 수행하지 않고, 연관성에 기초하여 그룹화된 각각의 검색어 그룹에 대하여 개별적으로 검색 결과를 제공하는 동작을 수행할 수 있다.In various embodiments, when receiving a plurality of search words from a user, the
예를 들어, 서버(100)는 복수의 검색어 각각의 연관성에 기초하여 복수의 검색어를 제1 검색어 그룹 및 제2 검색어 그룹으로 분류한 경우, 후술되는 S120 단계 내지 S140 단계를 거쳐, 제1 검색어 그룹에 대한 검색 결과와 제2 검색어 그룹에 대한 검색 결과를 개별적으로 도출하여 사용자에게 제공할 수 있다.For example, when the
여기서, 복수의 검색어 간의 연관성을 판단하는 방법은, 기 설정된 검색어별 동의어, 유사어, 반의어 데이터, 복수의 사용자의 검색어 입력 이력 등에 기초하여 스코어링(예: 함께 검색된 횟수 등에 따라 점수 부여 등)하고, 스코어링 결과에 따라 판단하는 방법이 적용될 수 있으나, 이에 한정되지 않고, 두 대상 간의 연관성을 판단하는 다른 범용적인 기술들이 적용될 수 있다.Here, the method for determining the relevance between a plurality of search terms is based on preset synonyms, similar words, and antonyms data for each search word, and a plurality of users' search word input histories, etc., scoring (eg, giving a score according to the number of times searched together, etc.), and scoring A method of judging based on a result may be applied, but the present invention is not limited thereto, and other general-purpose techniques for judging a correlation between two objects may be applied.
다양한 실시예에서, 서버(100)는 사용자로부터 복수의 검색어와 함께 하나 이상의 검색어를 그룹화하기 위한 연산자(예: 괄호)를 입력받을 수 있고, 입력된 연산자에 기초하여 복수의 검색어를 그룹화할 수 있다. 그러나, 이에 한정되지 않는다.In various embodiments, the
S120 단계에서, 서버(100)는 사용자로부터 입력된 검색어를 이용하여 기 저장된 복수의 법률문서에 대한 동적 클러스터링을 수행함으로써, 하나 이상의 동적 클러스터를 생성할 수 있다. In step S120 , the
여기서, 동적 클러스터링(Dynamic Clustering)은 정적 클러스터링과는 반대로 클러스터의 사이즈나 멤버 노드들이 클러스터의 설정에 따라 변화되는 환경을 갖는 클러스터링 방법을 의미할 수 있다. 이하, 도 4를 참조하여, 서버(100)가 수행하는 동적 클러스터링 방법에 대해 설명하도록 한다.Here, dynamic clustering may refer to a clustering method having an environment in which a size of a cluster or member nodes change according to a cluster configuration, as opposed to static clustering. Hereinafter, a dynamic clustering method performed by the
도 4는 다양한 실시예에서, 사용자로부터 입력된 검색어를 이용하여 법률문서를 동적 클러스터링하는 방법을 설명하기 위한 순서도이다.4 is a flowchart illustrating a method of dynamically clustering legal documents using a search word input by a user, according to various embodiments.
도 4를 참조하면, S210 단계에서, 서버(100)는 기 저장된 복수의 법률문서 중 사용자로부터 입력된 검색어를 포함하는 복수의 법률문서를 선택할 수 있다. 예를 들어, 서버(100)는 기 저장된 복수의 법률문서 중 사용자로부터 입력된 검색어가 최소 1회 이상 포함된 법률문서를 선택할 수 있다.Referring to FIG. 4 , in step S210 , the
이때, 서버(100)는 선택된 법률 문서 즉, 사용자로부터 입력된 검색어를 최소 1회 이상 포함된 법률문서가 기 설정된 최대값을 초과하는 경우, 선택된 법률문서의 개수가 기 설정된 최대값 이하가 될 때까지 사용자로부터 입력된 검색어의 최소 포함 횟수를 순차적으로 증가시킬 수 있다.At this time, when the selected legal document, that is, a legal document including a search word inputted from the user at least once exceeds a preset maximum value, the
예를 들어, 서버(100)는 사용자로부터 입력된 검색어를 최소 1회 이상 포함된 법률문서가 기 설정된 최대값을 초과하는 경우, 최소 포함 횟수를 2회로 증가시켜 사용자로부터 입력된 검색어가 최소 2회 이상 포함된 법률문서를 선택할 수 있다. 또한, 서버(100)는 사용자로부터 입력된 검색어가 최소 2회 이상 포함된 법률문서의 개수 역시 기 설정된 최대값을 초과하는 경우, 기 설정된 최대값 이하가 될 때까지 최소 포함 횟수를 3회, 4회 및 5회로 증가시킬 수 있다.For example, when the legal document including the search word inputted from the user at least once exceeds the preset maximum value, the
사용자가 다소 일반적인 검색어를 입력할 경우, 이러한 검색어를 포함하는 상당히 많은 양의 법률문서가 검색될 수 있고, 이렇게 검색되는 법률문서들은 비교적 많은 수의 노이즈(사용자가 원하는 법률문서와 거리가 먼 법률문서)를 포함하고 있기 때문에, 정확한 검색 결과를 제공하기 어렵다는 문제가 있다.When the user enters a rather general search term, a fairly large amount of legal documents including such a search term can be searched, and the legal documents searched in this way contain a relatively large number of noise (legal documents far from the legal documents desired by the user). ), there is a problem in that it is difficult to provide accurate search results.
이러한 점을 개선하기 위하여, 서버(100)는 사전에 검색되는 법률문서의 최대값을 설정할 수 있고, 검색어의 최소 포함 횟수를 이용하여 법률문서가 최대값 이하로 선택될 수 있도록 함으로써, 노이즈를 최소화하여 정확한 결과를 제공할 수 있다.In order to improve this point, the
다양한 실시예에서, 서버(100)는 사용자로부터 복수의 검색어가 입력된 경우, 기 저장된 복수의 법률 문서 중 사용자로부터 입력된 복수의 검색어를 모두 포함하는 법률문서를 선택할 수 있다.In various embodiments, when a plurality of search words are input by the user, the
이때, 서버(100)는 사용자로부터 입력된 복수의 검색어를 모두 포함하는 법류문서가 기 설정된 최소값 미만일 경우(또는 없을 경우), 선택된 법률문서의 개수가 기 설정된 최소값 이상이 될 때까지 복수의 검색어를 하나씩 제외시킬 수 있다.At this time, when the legal documents including all of the plurality of search terms input by the user are less than (or not in the case of) the preset minimum value, the
예를 들어, 서버(100)는 사용자로부터 제1 내지 제5 검색어를 입력 받았으나, 제1 내지 제5 검색어를 모두 포함하는 법률문서의 개수가 기 설정된 최소값 미만일 경우, 제5 검색어를 제외시키고 제1 내지 제4 검색어를 모두 포함하는 법률문서를 선택할 수 있다. 또한, 서버(100)는 제1 내지 제5 검색어를 모두 포함하는 법률문서의 개수 역시 기 설정된 최소값 미만일 경우, 선택되는 법률문서의 개수가 기 설정된 최소값 이상이 될 때까지 제4 검색어, 제3 검색어 및 제2 검색어를 순차적으로 제외시키며 법률문서를 선택할 수 있다.For example, when the
여기서, 서버(100)는 복수의 검색어 각각에 대하여 설정된 우선순위에 기초하여 우선순위가 낮은 검색어부터 순차적으로 제외시킬 수 있으나, 이에 한정되지 않는다.Here, the
사용자가 자신이 원하는 법률문서를 정확하게 검색하기 위하여 다소 많은 검색어를 입력할 경우, 해당 검색어를 포함하는 법률문서가 검색되지 않거나 극소량의 법률문서만이 검색될 수 있다는 문제가 있다. 이러한 문제를 개선하기 위하여, 서버(100)는 사전에 검색되는 법률문서의 최소값을 설정할 수 있고, 법률문서 선택을 위한 검색어의 개수를 조절하여 법률문서가 최소값 이상으로 선택될 수 있도록 함으로써, 사용자가 원하는 검색결과를 제공할 수 있다.When a user inputs a rather large number of search terms in order to accurately search for a desired legal document, there is a problem in that legal documents including the search term are not searched or only a very small amount of legal documents can be searched. In order to improve this problem, the
S220 단계에서, 서버(100)는 S210 단계에서 선택된 복수의 법률문서를 벡터화할 수 있다. 여기서, 복수의 법률문서를 벡터화하는 방법은 워드투벡터(word2vec) 알고리즘을 이용하는 방법, BOW(Bag Of Words) 방식을 이용하여 특징(Feature, 법률문서에 포함된 단어들)을 벡터화하는 방법 등 다양한 기술이 적용될 수 있는 바, 구체적인 방법론에 대해서는 서술하지 않는다.In step S220, the
S230 단계에서, 서버(100)는 S220 단계를 거쳐 벡터화된 복수의 법률문서 간의 유사도를 산출할 수 있다. 여기서, 벡터화된 복수의 법률문서 간의 유사도를 산출하는 방법은 벡터화된 복수의 법률문서 간의 유클리디언 거리(Euclidean distance), 마할라노비스 거리(Mahalanobis distance), 민코스키 거리(Minkowski distance)를 이용하여 유사도를 산출하거나, 벡터화된 복수의 법률문서 간의 코사인 유사도(Cosine simliarity)를 산출하는 방법 등 다양한 기술이 적용될 수 있으나, 이에 한정되지 않는다.In step S230, the
S240 단계에서, 서버(100)는 S230 단계를 거쳐 산출된 벡터화된 복수의 법률문서 간의 유사도에 기초하여, 벡터화된 복수의 법률문서에 대한 동적 클러스터링을 수행할 수 있다.In step S240 , the
다양한 실시예에서, 서버(100)는 사용자로부터 둘 이상의 검색어가 입력된 경우, 둘 이상의 검색어에 대한 연관성을 판단할 수 있고, 둘 이상의 검색어가 상호 연관되지 않은 검색어인 것으로 판단되는 경우, 둘 이상의 검색어 각각을 포함하는 법률문헌에 대한 동적 클러스터링 동작(예: S210 단계 내지 S240 단계)를 개별적으로 수행할 수 있다.In various embodiments, the
다양한 실시예에서, 서버(100)는 사용자로부터 복수의 검색어가 입력되고, 복수의 검색어 각각의 연관성에 따라 복수의 검색어가 둘 이상의 검색어 그룹으로 분류되는 경우, 둘 이상의 검색어 그룹 각각에 대하여 동적 클러스터링 동작(예: S220 단계 내지 S240 단계)을 개별적으로 수행할 수 있다.In various embodiments, when a plurality of search words are input from a user and the plurality of search words are classified into two or more search word groups according to the relevance of each of the plurality of search words, the
다시, 도 3을 참조하면, S130 단계에서, 서버(100)는 기 저장된 복수의 법률문서를 정적 클러스터링함으로써 생성된 복수의 정적 클러스터 중 사용자로부터 입력된 하나 이상의 검색어와 관련된 하나 이상의 정적 클러스터를 선택할 수 있다. Again, referring to FIG. 3 , in step S130 , the
여기서, 정적 클러스터링(Static Clustering)은 고정된 클러스터 사이즈에서 멤버 노드와 클러스터 헤더가 헤더 재선출과 데이터 전송과정을 반복하는 것을 의미할 수 있다. 이하, 도 5를 참조하여, 서버(100)가 수행하는 정적 클러스터 선택 방법에 대해 설명하도록 한다.Here, static clustering may mean that member nodes and cluster headers repeat header re-election and data transmission processes in a fixed cluster size. Hereinafter, a static cluster selection method performed by the
도 5는 다양한 실시예에서, 복수의 법률문서에 대하여 정적 클러스터링을 수행함에 따라 생성된 복수의 정적 클러스터 중 검색어에 대응하는 정적 클러스터를 선택하는 방법을 설명하기 위한 순서도이다.5 is a flowchart illustrating a method of selecting a static cluster corresponding to a search term from among a plurality of static clusters generated by performing static clustering on a plurality of legal documents, according to various embodiments.
도 5를 참조하면, S310 단계에서, 서버(100)는 기 저장된 복수의 법률문서 각각을 참조문서에 따라 정적 클러스터링을 수행함으로써, 복수의 제1 정적 클러스터를 생성할 수 있다. 예를 들어, 서버(100)는 기 저장된 복수의 법률문서 각각이 참조하고 있는 판례, 법령, 문헌 및 평석 각각에 기초하여, 기 저장된 복수의 법률문서에 대한 정적 클러스터링을 수행함으로써, 복수의 제1 정적 클러스터를 생성할 수 있다.Referring to FIG. 5 , in step S310 , the
다양한 실시예에서, 서버(100)는 기 저장된 복수의 법률문서가 참조하고 있는 판례, 법령, 문헌 및 평석에 대한 정보를 벡터화하고, 벡터화된 수치에 기초하여 복수의 법률문서 간의 유사도를 산출하며, 유사도가 기 설정된 값(예: 90%)이상인 법률문서들끼리 제1 정적 클러스터를 생성할 수 있다. 그러나, 이에 한정되지 않는다.In various embodiments, the
S320 단계에서, 서버(100)는 기 저장된 복수의 법률문서 각각을 관련법령에 따라 정적 클러스터링을 수행함으로써, 복수의 제2 정적 클러스터를 생성할 수 있다. 예를 들어, 서버(100)는 기 저장된 복수의 법률문서 각각이 인용하고 있는 법령 및 조문 각각에 기초하여, 기 저장된 복수의 법률문서에 대한 정적 클러스터링을 수행함으로써, 복수의 제2 정적 클러스터를 생성할 수 있다.In step S320 , the
다양한 실시예에서, 서버(100)는 기 저장된 복수의 법률문서 각각이 인용하고 있는 법령 및 조문에 대한 정보를 벡터화하고, 벡터화된 수치에 기초하여 복수의 법률문서 간의 유사도를 산출하며, 유사도가 기 설정된 값(예: 90%)이상인 법률문서들끼리 제2 정적 클러스터를 생성할 수 있다. 그러나, 이에 한정되지 않는다.In various embodiments, the
S330 단계에서, 서버(100)는 기 저장된 복수의 법률문서 각각을 기 저장된 복수의 법률문서 각각이 다루고 있는 쟁점에 따라 정적 클러스터링을 수행함으로써, 복수의 제3 정적 클러스터를 생성할 수 있다.In step S330 , the
다양한 실시예에서, 서버(100)는 기 저장된 복수의 법률문서 각각이 다루고 있는 쟁점에 대한 정보를 벡터화하고, 벡터화된 수치에 기초하여 복수의 법률문서 간의 유사도를 산출하며, 유사도가 기 설정된 값(예: 90%)이상인 법률문서들끼리 제3 정적 클러스터를 생성할 수 있다. 그러나, 이에 한정되지 않는다.In various embodiments, the
여기서, S310 단계 내지 S330 단계에서 서버(100)가 수행하는 기 저장된 복수의 법률문서에 대한 정적 클러스터링을 수행하는 방법은 상기의 동적 클러스터링을 수행하는 방법(예: 도 3의 S210 단계 내지 S240 단계)와 동일 또는 유사한 형태로 구현될 수 있으나, 이에 한정되지 않는다.Here, the method of performing static clustering for a plurality of pre-stored legal documents performed by the
다양한 실시예에서, 기 저장된 복수의 법률문서는 복수의 참조문서를 참조하거나, 복수의 법령 및 조문을 인용하거나 복수의 쟁점을 다룰 수 있고, 이에 따라, 하나의 법률문서가 여러 정적 클러스터에 할당될 수 있는 바, 서버(100)는 기 저장된 복수의 법률문서 각각을 참조문서, 관련법령 및 쟁점에 따라 클러스터링하되, 소프트 클러스터링(Soft clustering)(예: fuzzy clustering) 방식을 이용하여 기 저장된 복수의 법률문서 각각에 대한 클러스터링을 수행할 수 있다.In various embodiments, a plurality of pre-stored legal documents may refer to a plurality of reference documents, cite a plurality of statutes and articles, or deal with a plurality of issues, so that one legal document may be assigned to several static clusters. As possible, the
S340 단계에서, 서버(100)는 상기의 S310 단계 내지 S330 단계를 거쳐 생성된 복수의 제1 정적 클러스터, 복수의 제2 정적 클러스터 및 복수의 제3 정적 클러스터와 사용자로부터 입력된 검색어 간의 관련성을 산출할 수 있다. 여기서, 복수의 정적 클러스터와 검색어 간의 관련성을 산출하는 방식은 상기의 벡터화된 복수의 법률문서 간의 유사도를 산출하는 방식(예: S230 단계)과 동일 또는 유사한 형태로 구현될 수 있으나, 이에 한정되지 않는다.In step S340 , the
S350 단계에서, 서버(100)는 S340 단계를 거쳐 산출된 복수의 제1 정적 클러스터, 복수의 제2 정적 클러스터 및 복수의 제3 정적 클러스터와 사용자로부터 입력된 검색어 간의 관련성에 기초하여, 산출된 관련성이 기 설정된 값 이상(예: 90% 이상)인 하나 이상의 정적 클러스터를 선택할 수 있다. 여기서, 검색어와 정적 클러스터간의 관련성을 산출하는 방법은 코사인 유사도를 산출하는 방식을 이용할 수 있으나, 이에 한정되지 않는다.In step S350 , the
여기서, 복수의 정적 클러스터 중 사용자로부터 입력된 검색어와의 관련성이 매우 높은 정적 클러스터만을 선택할 경우 사용자로부터 입력된 검색어에 맞는(노이즈가 적은) 결과를 도출할 수 있으나, 기준을 너무 높게 설정할 경우, 경우에 따라(예: 잘못된 검색어가 입력되는 경우 등) 선택되는 정적 클러스터가 매우 적거나 없을 수 있다는 문제가 있다.Here, if only a static cluster having a very high relevance to a search term input by a user is selected among a plurality of static clusters, a result suitable for a search term input by the user (low noise) can be derived, but if the criterion is set too high, The problem is that there may or may not be very few static clusters selected depending on (eg, when the wrong search term is entered).
이러한 점을 고려하여, 서버(100)는 사용자로부터 입력된 검색어에 대응되는 정적 클러스터를 선택하는 기준(기준 관련성 값)을 유동적으로 설정할 수 있다. 예를 들어, 서버(100)는 사용자가 비법조인일 경우 기준 관련성 값을 제1 값으로 설정할 수 있고, 사용자가 법조인일 경우 기준 관련성 값을 제1 값보다 큰 제2 값으로 설정할 수 있다. 그러나, 이에 한정되지 않고, 서버(100)는 UI(10)를 통해 사용자로부터 기준 관련성 값을 직접 입력받을 수 있고, 이에 따라 기준 관련성 값을 조절함으로써, 사용자가 검색 결과를 눈으로 보며 직접 설정을 하도록 할 수 있다.In consideration of this point, the
다양한 실시예에서, 서버(100)는 사용자로부터 복수의 검색어가 입력된 경우, 복수의 정적 클러스터 중 모든 검색어와의 관련성이 기 설정된 값 이상인 하나 이상의 정적 클러스터를 선택할 수 있다.In various embodiments, when a plurality of search terms are input by the user, the
다양한 실시예에서, 서버(100)는 사용자로부터 복수의 검색어가 입력된 경우, 복수의 검색어 각각에 대한 관련성의 평균값이 기 설정된 값 이상인 하나 이상의 정적 클러스터를 선택할 수 있다. 그러나, 이에 한정되지 않는다.In various embodiments, when a plurality of search words are input by the user, the
다시, 도 3을 참조하면, S140 단계에서, 서버(100)는 S120 단계를 거쳐 생성된 동적 클러스터와 S130 단계를 거쳐 선택된 정적 클러스터를 포함하는 검색 결과를 사용자에게 제공할 수 있다.Referring again to FIG. 3 , in step S140 , the
다양한 실시예에서, 서버(100)는 사용자가 법조인인 것으로 판단되는 경우(예: 회원가입 시, 법조인 또는 비법조인 체크항목에 체크되는 것에 기초하여 판단), 사용자에게 Excel-like 뷰를 제공할 수 있다.In various embodiments, the
이때, 서버(100)는 생성된 검색결과를 카테고리별로 분류(예: 판례(전문판례, 부분판례), 문헌, 결정례(조세심판원, 공정거래위원회), 유권해석(조세심판원 질의회신, 금융위원회), 법원(헌법재판소, 서울고등법원, 대법원, 지방법원, 서울행정법원, 서울중앙지방법원, 고등법원, 군사법원), 사건 종류(위헌심사형 헌법소원, 권리구제형 헌법소원, 행정, 민사, 형사, 위헌법률심판, 워헌법률심판-위헌심사형 헌법소원, 위헌심사형 헌법소원-권리구제형 헌법소원, 권한쟁의심판, 신청), 날짜(최근 1년, 3년, 5년, 사용자로부터 설정된 기간) 등)하여 제공할 수 있다.At this time, the
또한, 서버(100)는 검색결과에 포함된 법률문서에서 사용자로부터 입력된 검색어에 대응되는 내용에 별도의 효과를 부여(예: 하이라이트 표시)하여 출력할 수 있다.In addition, the
다양한 실시예에서, 서버(100)는 제1 검색어를 이용하여 생성된 동적 클러스터 및 제1 검색어를 이용하여 선택된 정적 클러스터의 개수가 기 설정된 개수 미만인 경우, 제1 검색어의 동의어인 제2 검색어 또는 제1 검색어의 유사어인 제3 검색어를 이용하여 생성된 동적 클러스터 및 제2 검색어 또는 제3 검색어를 이용하여 선택된 정적 클러스터를 함께 제공할 수 있다.In various embodiments, when the number of dynamic clusters generated using the first search word and the number of static clusters selected using the first search word is less than a preset number, the
이때, 서버(100)는 검색결과에 포함된 법률문서에서, 제1 검색어의 동의어인 제2 검색어 및 제1 검색어의 유사어인 제3 검색어에 부여되는 효과를 제1 검색어와 상이하게 설정할 수 있다. 예를 들어, 서버(100)는 제1 검색어, 제2 검색어 및 제3 검색어 각각에 하이라이트 표시가 되도록 설정하되, 사용자로부터 입력된 제1 검색어를 제1 색상으로 하이라이트 표시되도록 설정하고, 제2 검색어 및 제3 검색어는 각각 제1 색상과 다른 제2 색상 및 제3 색상으로 하이라이트 표시되도록 설정할 수 있다.In this case, in the legal document included in the search result, the
다양한 실시예에서, 서버(100)는 검색 결과와 함께 추천 검색어에 대한 정보를 사용자에게 제공할 수 있다. 예를 들어, 서버(100)는 사용자로부터 제1 검색어를 입력받는 것에 대한 응답으로, 제1 검색어를 이용하여 생성된 동적 클러스터 및 제1 검색어를 이용하여 선택된 정적 클러스터를 제공하되, 제1 검색어의 동의어인 제2 검색어와, 제1 검색어의 유사어인 제3 검색어를 추천 검색어로 안내할 수 있다.In various embodiments, the
또한, 서버(100)는 인공지능을 이용한 법률문서 클러스터링 검색 서비스를 이용하는 복수의 사용자에 대한 검색 이력 데이터를 분석하여, 사용자로부터 입력된 제1 검색어와 연관된 하나 이상의 추천 검색어(예: 복수의 사용자에 대한 검색 이력을 분석하여, 제1 검색어를 검색한 이후에 추가적으로 많이 검색한 다른 검색어)를 선택하고, 선택한 추천 검색어를 안내할 수 있다.In addition, the
다양한 실시예에서, 서버(100)는 사용자로부터 검색어를 입력받는 것에 응답하여 검색어를 이용하여 생성된 동적 클러스터에 포함된 법률문서에 대한 정보와 검색어를 이용하여 선택된 정적 클러스터에 포함된 법률문서에 대한 정보를 포함하는 검색 결과를 제공하되, 검색 결과를 요약하여 화면상에 출력할 수 있다. In various embodiments, the
다양한 실시예에서, 서버(100)는 사용자로부터 검색어를 입력받는 것에 응답하여 검색어를 이용하여 생성된 동적 클러스터에 포함된 법률문서에 대한 정보와 검색어를 이용하여 선택된 정적 클러스터에 포함된 법률문서에 대한 정보를 포함하는 검색 결과를 제공하되, 검색 결과에 포함된 복수의 법률문서 각각의 일부 내용만을 발췌하여 화면상에 표시할 수 있다.In various embodiments, the
여기서, 복수의 법률문서 각각에 대하여 발췌되는 내용은 사용자로부터 입력된 검색어를 많이 포함하는 단락의 내용, 사용자로부터 사전에 입력된 부분(항목)에 포함된 내용일 수 있으나, 이에 한정되지 않고, 사용자가 법률문서 클러스터링 검색 서비스 제공 UI를 법률문서를 검토한 이용 내역(예: 법률문서에서 어느 부분의 내용을 중점적으로 보는지(해당 화면이 머무르는 시간 카운팅), 어떤 부분을 많이 발췌 및 인용했는지 등)에 기초하여 결정될 수 있다.Here, the content extracted for each of the plurality of legal documents may be the content of a paragraph containing a lot of search words input by the user, or content included in the part (item) inputted in advance by the user, but is not limited thereto, and the user The legal document clustering search service provision UI is displayed in the legal document review usage history (e.g., which part of the legal document is focused on (counting the time the screen stays), which part is extracted and quoted a lot, etc.) can be determined based on
즉, 사용자에게 많은 양의 법률문서를 제공할 경우, 해당 법률문서들을 한눈에 보기 어려운 바, 해당 법률문서들의 핵심 내용만을 요약하여 제공하거나, 사용자가 자주 확인하는 일부 내용만을 발췌하여 출력할 수 있다.That is, when a large amount of legal documents are provided to the user, it is difficult to see the relevant legal documents at a glance, so only the core contents of the legal documents can be summarized and provided, or only some contents frequently checked by the user can be extracted and printed. .
전술한 인공지능을 이용한 법률문서 클러스터링 검색 서비스 제공방법은 도면에 도시된 순서도를 참조하여 설명하였다. 간단한 설명을 위해 인공지능을 이용한 법률문서 클러스터링 검색 서비스 제공방법은 일련의 블록들로 도시하여 설명하였으나, 본 발명은 상기 블록들의 순서에 한정되지 않고, 몇몇 블록들은 본 명세서에 도시되고 시술된 것과 상이한 순서로 수행되거나 또는 동시에 수행될 수 있다. 또한, 본 명세서 및 도면에 기재되지 않은 새로운 블록이 추가되거나, 일부 블록이 삭제 또는 변경된 상태로 수행될 수 있다.The method of providing a legal document clustering search service using the aforementioned artificial intelligence has been described with reference to the flowchart shown in the drawings. For a simple explanation, a method of providing a legal document clustering search service using artificial intelligence has been illustrated and described as a series of blocks, but the present invention is not limited to the order of the blocks, and some blocks are different from those shown and operated in this specification. It may be performed in sequence or may be performed simultaneously. In addition, new blocks not described in the present specification and drawings may be added, or some blocks may be deleted or changed.
이상, 첨부된 도면을 참조로 하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야의 통상의 기술자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며, 제한적이 아닌 것으로 이해해야만 한다.As mentioned above, although embodiments of the present invention have been described with reference to the accompanying drawings, those skilled in the art to which the present invention pertains can realize that the present invention can be embodied in other specific forms without changing its technical spirit or essential features. you will be able to understand Therefore, it should be understood that the embodiments described above are illustrative in all respects and not restrictive.
100 : 법률문서 클러스터링 검색 서비스 제공서버(서버)
200 : 사용자 단말
300 : 외부 서버
400 : 네트워크100: Legal document clustering search service providing server (server)
200: user terminal
300 : external server
400: network
Claims (12)
하나 이상의 검색어를 입력받는 단계;
상기 입력된 하나 이상의 검색어를 이용하여 기 저장된 복수의 법률문서에 대한 동적 클러스터링을 수행함으로써, 하나 이상의 동적 클러스터를 생성하는 단계;
상기 기 저장된 복수의 법률문서를 정적 클러스터링함으로써 생성된 복수의 정적 클러스터 중 상기 입력된 하나 이상의 검색어와 관련된 하나 이상의 정적 클러스터를 선택하는 단계; 및
상기 생성된 하나 이상의 동적 클러스터 및 상기 선택된 하나 이상의 정적 클러스터를 포함하는 검색 결과를 제공하는 단계를 포함하는,
인공지능을 이용한 법률문서 클러스터링 검색 서비스 제공방법.A method performed by a computing device, comprising:
receiving one or more search terms;
generating one or more dynamic clusters by performing dynamic clustering on a plurality of pre-stored legal documents using the input one or more search words;
selecting one or more static clusters related to the one or more input keywords from among a plurality of static clusters generated by static clustering the plurality of pre-stored legal documents; and
providing search results comprising the generated one or more dynamic clusters and the selected one or more static clusters;
A method of providing legal document clustering search service using artificial intelligence.
상기 하나 이상의 동적 클러스터를 생성하는 단계는,
상기 기 저장된 복수의 법률문서 중 상기 입력된 하나 이상의 검색어를 포함하는 복수의 법률문서를 선택하는 단계;
상기 선택된 복수의 법률문서를 벡터화하는 단계; 및
상기 벡터화된 복수의 법률문서 간의 유사도를 산출하고, 상기 산출된 유사도에 기초하여 상기 선택된 복수의 법률문서에 대한 동적 클러스터링을 수행하는 단계를 포함하는,
인공지능을 이용한 법률문서 클러스터링 검색 서비스 제공방법.According to claim 1,
The step of creating the one or more dynamic clusters comprises:
selecting a plurality of legal documents including the input at least one search word from among the plurality of pre-stored legal documents;
vectorizing the selected plurality of legal documents; and
Calculating a degree of similarity between the plurality of vectorized legal documents, and performing dynamic clustering on the selected plurality of legal documents based on the calculated degree of similarity;
A method of providing legal document clustering search service using artificial intelligence.
상기 입력된 하나 이상의 검색어를 포함하는 복수의 법률문서를 선택하는 단계는,
상기 기 저장된 복수의 법률문서 중 상기 입력된 하나 이상의 검색어가 최소 1회 이상 포함된 법률문서를 선택하되, 상기 선택된 법률문서의 개수가 기 설정된 최대값을 초과하는 경우, 상기 선택된 법률문서의 개수가 상기 기 설정된 최대값 이하가 될 때까지 상기 기 저장된 복수의 법률문서에 대한 상기 입력된 하나 이상의 검색어의 최소 포함 횟수를 순차적으로 증가시키는 단계를 포함하는,
인공지능을 이용한 법률문서 클러스터링 검색 서비스 제공방법.3. The method of claim 2,
The step of selecting a plurality of legal documents including the input one or more search terms,
Selecting a legal document containing the one or more inputted search words at least once from among the plurality of pre-stored legal documents, and when the number of the selected legal documents exceeds a preset maximum value, the number of selected legal documents increases Including the step of sequentially increasing the minimum number of inclusions of the one or more inputted search terms for the plurality of pre-stored legal documents until it is less than or equal to the preset maximum value,
A method of providing legal document clustering search service using artificial intelligence.
상기 하나 이상의 동적 클러스터를 생성하는 단계는,
복수의 검색어가 입력된 경우, 상기 기 저장된 복수의 법률문서 중 상기 복수의 검색어를 모두 포함하는 법률문서를 선택하고, 상기 선택된 법률문서에 대한 동적 클러스터링을 수행하되,
상기 선택된 법률문서가 기 설정된 최소값 미만인 경우, 상기 선택된 법률문서의 개수가 상기 기 설정된 최소값 이상이 될 때까지 상기 복수의 검색어 중 우선순위 - 상기 우선순위는 상기 복수의 검색어가 입력된 순서 및 상기 복수의 검색어와 함께 입력된 연산자 중 적어도 하나에 기초하여 설정되는 것임 - 가 낮은 검색어부터 순차적으로 제외시키는 단계를 포함하는,
인공지능을 이용한 법률문서 클러스터링 검색 서비스 제공방법.According to claim 1,
The step of creating the one or more dynamic clusters comprises:
When a plurality of search terms are input, a legal document including all of the plurality of search terms is selected from among the plurality of pre-stored legal documents, and dynamic clustering is performed on the selected legal documents,
When the selected legal document is less than a preset minimum value, a priority among the plurality of search terms until the number of the selected legal documents is equal to or greater than the preset minimum value - The priority is the order in which the plurality of search words are input and the plurality of It is set based on at least one of the operators input with the search word of - including sequentially excluding from the search word with the lowest
A method of providing legal document clustering search service using artificial intelligence.
상기 기 저장된 복수의 법률문서에 대한 정적 클러스터링을 수행함으로써, 복수의 정적 클러스터를 생성하는 단계를 더 포함하며,
상기 복수의 정적 클러스터를 생성하는 단계는,
상기 기 저장된 복수의 법률문서 각각을 참조문서 - 상기 참조문서는 상기 기 저장된 복수의 법률문서 각각이 참조하고 있는 판례, 법령, 문헌 및 평석 중 적어도 하나를 포함함 - 에 따라 정적 클러스터링을 수행함으로써 복수의 제1 정적 클러스터를 생성하는 단계;
상기 기 저장된 복수의 법률문서 각각을 관련법령 - 상기 관련법령은 상기 기 저장된 복수의 법률문서 각각이 인용하는 법령 및 조문 중 적어도 하나를 포함함 - 에 따라 정적 클러스터링을 수행함으로써, 복수의 제2 정적 클러스터를 생성하는 단계; 및
상기 기 저장된 복수의 법률문서 각각을 상기 기 저장된 복수의 법률문서 각각이 다루고 있는 쟁점에 따라 정적 클러스터링을 수행함으로써, 복수의 제3 정적 클러스터를 생성하는 단계를 포함하는,
인공지능을 이용한 법률문서 클러스터링 검색 서비스 제공방법.According to claim 1,
The method further comprises generating a plurality of static clusters by performing static clustering on the plurality of pre-stored legal documents,
The step of creating the plurality of static clusters includes:
By performing static clustering according to each of the plurality of pre-stored legal documents as a reference document, the reference document includes at least one of precedents, statutes, documents, and comments referred to by each of the plurality of pre-stored legal documents. creating a first static cluster of
By performing static clustering on each of the plurality of pre-stored legal documents according to a related law, the related law includes at least one of laws and articles cited by each of the plurality of pre-stored legal documents, by performing static clustering, a plurality of second static creating a cluster; and
generating a plurality of third static clusters by performing static clustering of each of the plurality of pre-stored legal documents according to an issue dealt with by each of the plurality of pre-stored legal documents,
A method of providing legal document clustering search service using artificial intelligence.
상기 하나 이상의 정적 클러스터를 선택하는 단계는,
상기 복수의 정적 클러스터와 상기 입력된 하나 이상의 검색어 간의 관련성를 산출하는 단계; 및
상기 산출된 관련성이 기 설정된 값 이상인 하나 이상의 정적 클러스터를 선택하는 단계를 포함하는,
인공지능을 이용한 법률문서 클러스터링 검색 서비스 제공방법.According to claim 1,
The step of selecting one or more static clusters comprises:
calculating a relationship between the plurality of static clusters and the inputted one or more search terms; and
selecting one or more static clusters in which the calculated relevance is equal to or greater than a preset value;
A method of providing legal document clustering search service using artificial intelligence.
상기 산출된 유사도가 기 설정된 값 이상인 하나 이상의 정적 클러스터를 선택하는 단계는,
복수의 검색어가 입력된 경우, 상기 복수의 정적 클러스터 중 모든 검색어와의 관련성이 상기 기 설정된 값 이상인 하나 이상의 정적 클러스터를 선택하거나, 상기 복수의 검색어 각각에 대한 관련성의 평균값이 상기 기 설정된 값 이상인 하나 이상의 정적 클러스터를 선택하는 단계를 포함하는,
인공지능을 이용한 법률문서 클러스터링 검색 서비스 제공방법.7. The method of claim 6,
The step of selecting one or more static clusters in which the calculated similarity is equal to or greater than a preset value includes:
When a plurality of search words are input, one or more static clusters having relevance to all search words from among the plurality of static clusters are selected, or an average value of relevance for each of the plurality of search words is greater than or equal to the preset value. Selecting more than one static cluster,
A method of providing legal document clustering search service using artificial intelligence.
상기 검색 결과를 제공하는 단계는,
제1 검색어를 이용하여 생성된 동적 클러스터 및 상기 제1 검색어를 이용하여 선택된 정적 클러스터의 개수가 기 설정된 개수 미만인 경우, 상기 제1 검색어의 동의어인 제2 검색어 또는 상기 제1 검색어의 유사어인 제3 검색어를 이용하여 생성된 동적 클러스터 및 상기 제2 검색어 또는 상기 제3 검색어를 이용하여 선택된 정적 클러스터를 함께 제공하는 단계를 포함하는,
인공지능을 이용한 법률문서 클러스터링 검색 서비스 제공방법.According to claim 1,
Providing the search results comprises:
When the number of dynamic clusters generated using the first search word and static clusters selected using the first search word is less than a preset number, a second search word that is a synonym of the first search word or a third keyword that is a similar word to the first search word A dynamic cluster generated using a search term and a static cluster selected using the second search term or the third search term are provided together.
A method of providing legal document clustering search service using artificial intelligence.
상기 하나 이상의 검색어를 입력받는 단계는,
사용자로부터 법률문서 검색 서비스의 제공을 요청받는 것에 대한 응답으로 상기 사용자에게 복수의 질의 내용을 제공하는 단계;
상기 사용자로부터 상기 제공된 복수의 질의 내용에 대한 복수의 답변 내용을 입력받는 단계; 및
상기 입력된 복수의 답변 내용을 분석하여 하나 이상의 키워드를 추출하고, 상기 추출된 하나 이상의 키워드를 검색어로 선정하는 단계를 포함하는,
인공지능을 이용한 법률문서 클러스터링 검색 서비스 제공방법.According to claim 1,
The step of receiving the input of the one or more search terms includes:
providing a plurality of query contents to the user in response to receiving a request from the user to provide a legal document search service;
receiving a plurality of answers to the provided plurality of questions from the user; and
extracting one or more keywords by analyzing the plurality of input answers, and selecting the extracted one or more keywords as a search word;
A method of providing legal document clustering search service using artificial intelligence.
복수의 법률문서를 수집하고, 상기 수집된 복수의 법률문서를 가공하여 저장하는 단계를 더 포함하며,
상기 수집된 복수의 법률문서를 가공하여 저장하는 단계는,
상기 수집된 복수의 법률문서가 이미지 형태의 법률문서인 경우, 상기 이미지 형태의 법률문서를 분석하여 하나 이상의 문자열을 추출하고, 상기 추출된 하나 이상의 문자열을 기 설정된 템플릿 상에 맞춰 가공하여 저장하는 단계; 및
상기 수집된 복수의 법률문서의 언어가 외국어인 경우, 상기 외국어를 기 설정된 언어로 자동 번역하고, 상기 자동 번역된 법률문서를 상기 기 설정된 템플릿 상에 맞춰 가공하여 저장하는 단계를 포함하는,
인공지능을 이용한 법률문서 클러스터링 검색 서비스 제공방법.According to claim 1,
Collecting a plurality of legal documents, further comprising the step of processing and storing the collected plurality of legal documents,
The step of processing and storing the plurality of collected legal documents is,
When the plurality of collected legal documents are legal documents in the form of images, analyzing the legal documents in the form of images to extract one or more character strings, processing and storing the extracted one or more character strings on a preset template ; and
When the language of the plurality of collected legal documents is a foreign language, automatically translating the foreign language into a preset language, and processing and storing the automatically translated legal document on the preset template;
A method of providing legal document clustering search service using artificial intelligence.
네트워크 인터페이스;
메모리; 및
상기 메모리에 로드(load)되고, 상기 프로세서에 의해 실행되는 컴퓨터 프로그램을 포함하되,
상기 컴퓨터 프로그램은,
하나 이상의 검색어를 입력받는 인스트럭션(instruction);
상기 입력된 하나 이상의 검색어를 이용하여 기 저장된 복수의 법률문서에 대한 동적 클러스터링을 수행함으로써, 하나 이상의 동적 클러스터를 생성하는 인스트럭션;
상기 기 저장된 복수의 법률문서를 정적 클러스터링함으로써 생성된 복수의 정적 클러스터 중 상기 입력된 하나 이상의 검색어와 관련된 하나 이상의 정적 클러스터를 선택하는 인스트럭션; 및
상기 생성된 하나 이상의 동적 클러스터 및 상기 선택된 하나 이상의 정적 클러스터를 포함하는 검색 결과를 제공하는 인스트럭션을 포함하는,
인공지능을 이용한 법률문서 클러스터링 검색 서비스 제공서버.processor;
network interface;
Memory; and
a computer program loaded into the memory and executed by the processor;
The computer program is
an instruction for receiving one or more search terms;
instructions for generating one or more dynamic clusters by performing dynamic clustering on a plurality of pre-stored legal documents using the input one or more search words;
an instruction for selecting one or more static clusters related to the one or more input keywords from among a plurality of static clusters generated by static clustering the plurality of pre-stored legal documents; and
instructions for providing search results including the generated one or more dynamic clusters and the selected one or more static clusters;
Legal document clustering search service providing server using artificial intelligence.
하나 이상의 검색어를 입력받는 단계;
상기 입력된 하나 이상의 검색어를 이용하여 기 저장된 복수의 법률문서에 대한 동적 클러스터링을 수행함으로써, 하나 이상의 동적 클러스터를 생성하는 단계;
상기 기 저장된 복수의 법률문서를 정적 클러스터링함으로써 생성된 복수의 정적 클러스터 중 상기 입력된 하나 이상의 검색어와 관련된 하나 이상의 정적 클러스터를 선택하는 단계; 및
상기 생성된 하나 이상의 동적 클러스터 및 상기 선택된 하나 이상의 정적 클러스터를 포함하는 검색 결과를 제공하는 단계를 실행시키기 위하여 컴퓨터로 판독가능한 기록매체에 저장된,
컴퓨터로 읽을 수 있는 기록매체에 기록된 컴퓨터프로그램. combined with a computing device,
receiving one or more search terms;
generating one or more dynamic clusters by performing dynamic clustering on a plurality of pre-stored legal documents using the input one or more search words;
selecting one or more static clusters related to the one or more input keywords from among a plurality of static clusters generated by static clustering the plurality of pre-stored legal documents; and
stored in a computer-readable recording medium for executing the step of providing a search result including the generated one or more dynamic clusters and the selected one or more static clusters;
A computer program recorded on a computer-readable recording medium.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20210026228 | 2021-02-26 | ||
KR1020210026228 | 2021-02-26 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20220122429A true KR20220122429A (en) | 2022-09-02 |
Family
ID=83280749
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210054910A KR20220122429A (en) | 2021-02-26 | 2021-04-28 | Method, server and computer program for providing legal documents clustering search service using artificial intelligence |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20220122429A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102585925B1 (en) * | 2022-12-14 | 2023-10-06 | 주식회사 딥노이드 | Apparatus for automatically collecting learning data and method therefor |
KR102625553B1 (en) | 2023-05-19 | 2024-01-16 | 주식회사 코딧 | The Method And The Computer-Readable Recording Medium To Extract Regulatory Legal Provisions Associated With Inputted Query, And The Computing System Performing That Same |
-
2021
- 2021-04-28 KR KR1020210054910A patent/KR20220122429A/en not_active Application Discontinuation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102585925B1 (en) * | 2022-12-14 | 2023-10-06 | 주식회사 딥노이드 | Apparatus for automatically collecting learning data and method therefor |
KR102625553B1 (en) | 2023-05-19 | 2024-01-16 | 주식회사 코딧 | The Method And The Computer-Readable Recording Medium To Extract Regulatory Legal Provisions Associated With Inputted Query, And The Computing System Performing That Same |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110837550B (en) | Knowledge graph-based question answering method and device, electronic equipment and storage medium | |
CN108287858B (en) | Semantic extraction method and device for natural language | |
CN110457431B (en) | Knowledge graph-based question and answer method and device, computer equipment and storage medium | |
US11544459B2 (en) | Method and apparatus for determining feature words and server | |
US10503828B2 (en) | System and method for answering natural language question | |
US10210245B2 (en) | Natural language question answering method and apparatus | |
US10599953B2 (en) | Method and system for generating and correcting classification models | |
US11521713B2 (en) | System and method for generating clinical trial protocol design document with selection of patient and investigator | |
CN111368042A (en) | Intelligent question and answer method and device, computer equipment and computer storage medium | |
CN112328891B (en) | Method for training search model, method for searching target object and device thereof | |
CN110765247B (en) | Input prompting method and device for question-answering robot | |
CN109408821B (en) | Corpus generation method and device, computing equipment and storage medium | |
CN102663129A (en) | Medical field deep question and answer method and medical retrieval system | |
US11416534B2 (en) | Classification of electronic documents | |
KR20220122429A (en) | Method, server and computer program for providing legal documents clustering search service using artificial intelligence | |
CN110209781B (en) | Text processing method and device and related equipment | |
US10380065B2 (en) | Method for establishing a digitized interpretation base of dongba classic ancient books | |
CN112528022A (en) | Method for extracting characteristic words corresponding to theme categories and identifying text theme categories | |
US10073890B1 (en) | Systems and methods for patent reference comparison in a combined semantical-probabilistic algorithm | |
CN110969005B (en) | Method and device for determining similarity between entity corpora | |
JP7172187B2 (en) | INFORMATION DISPLAY METHOD, INFORMATION DISPLAY PROGRAM AND INFORMATION DISPLAY DEVICE | |
CN114116997A (en) | Knowledge question answering method, knowledge question answering device, electronic equipment and storage medium | |
CN113220854A (en) | Intelligent dialogue method and device for machine reading understanding | |
CN114842982B (en) | Knowledge expression method, device and system for medical information system | |
CN110941765A (en) | Search intention identification method, information search method and device and electronic equipment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
WITB | Written withdrawal of application |