KR102315214B1 - Method, apparatus and system for determining similarity of patent documents using similarity scores and dissimilarity scores - Google Patents
Method, apparatus and system for determining similarity of patent documents using similarity scores and dissimilarity scores Download PDFInfo
- Publication number
- KR102315214B1 KR102315214B1 KR1020200034426A KR20200034426A KR102315214B1 KR 102315214 B1 KR102315214 B1 KR 102315214B1 KR 1020200034426 A KR1020200034426 A KR 1020200034426A KR 20200034426 A KR20200034426 A KR 20200034426A KR 102315214 B1 KR102315214 B1 KR 102315214B1
- Authority
- KR
- South Korea
- Prior art keywords
- sentence
- patent document
- server
- word
- sentences
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 51
- 238000013473 artificial intelligence Methods 0.000 claims abstract description 32
- 238000011156 evaluation Methods 0.000 claims abstract description 19
- 150000001875 compounds Chemical class 0.000 description 27
- 238000013528 artificial neural network Methods 0.000 description 19
- 238000004458 analytical method Methods 0.000 description 12
- 238000011160 research Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 8
- 238000013527 convolutional neural network Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000004913 activation Effects 0.000 description 4
- 239000000284 extract Substances 0.000 description 4
- 238000012549 training Methods 0.000 description 4
- 230000007423 decrease Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000011176 pooling Methods 0.000 description 3
- 230000000306 recurrent effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 235000013399 edible fruits Nutrition 0.000 description 2
- 230000005484 gravity Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 230000000877 morphologic effect Effects 0.000 description 2
- 238000003058 natural language processing Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 101100257062 Leishmania major IPCS gene Proteins 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000003064 k means clustering Methods 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
-
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/268—Morphological analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
-
- 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)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Databases & Information Systems (AREA)
- General Business, Economics & Management (AREA)
- Tourism & Hospitality (AREA)
- Data Mining & Analysis (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Molecular Biology (AREA)
- Technology Law (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Biophysics (AREA)
- Economics (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
특허문서의 유사도 판단 방법이 제공된다. 상기 특허문서의 유사도 판단 방법은, 서버가, 대상특허문서를 제1 인공지능 모델에 입력하여 유사특허문서를 획득하는 단계; 상기 서버가, 상기 대상특허문서에 포함된 복수의 문장을 획득하고, 상기 유사특허문서에 포함된 복수의 문장을 획득하는 단계; 상기 서버가, 상기 대상특허문서에 포함된 복수의 문장 중 제1 문장을 획득하고, 상기 유사특허문서에 포함된 복수의 문장 중 제2 문장을 획득하는 단계; 상기 서버가, 상기 제1 문장 및 상기 제2 문장을 제2 인공지능 모델에 입력하여, 상기 제1 문장과 상기 제2 문장에 대한 평가 결과를 획득하는 단계; 를 포함한다.A method for determining the degree of similarity of patent documents is provided. The method for determining the degree of similarity of the patent document includes, by a server, inputting a target patent document into a first artificial intelligence model to obtain a similar patent document; obtaining, by the server, a plurality of sentences included in the target patent document, and acquiring a plurality of sentences included in the similar patent document; obtaining, by the server, a first sentence among a plurality of sentences included in the target patent document, and acquiring a second sentence among a plurality of sentences included in the similar patent document; inputting, by the server, the first sentence and the second sentence into a second artificial intelligence model, and obtaining evaluation results for the first sentence and the second sentence; includes
Description
본 발명은 유사도 점수 및 비유사도 점수를 이용한 특허문서의 유사도 판단 방법, 장치 및 시스템에 관한 것이다. The present invention relates to a method, apparatus and system for determining the similarity of a patent document using a similarity score and a dissimilarity score.
4차 산업의 발전과 함께 지식재산권에 대한 가치가 높아지고 있다. 이에 따라 많은 사람들은 자신이 가진 기술을 보호하고, 기술에 대한 권리를 획득하려 노력하고 있으며, 기술에 대한 특허 출원에 대한 관심도가 높아지고 있다.With the development of the 4th industry, the value of intellectual property rights is increasing. Accordingly, many people are trying to protect their technology and acquire the right to the technology, and interest in patent application for technology is increasing.
한편, 특허 출원을 위해서는 자신의 기술이 특허 받을 수 있을지를 판단하기 위해 선행 기술 조사를 수행하며, 과거 공개된 다양한 특허 문헌을 검색함으로써 선행 기술 조사를 수행할 수 있다.Meanwhile, in order to apply for a patent, prior art research is performed to determine whether one's own technology can be patented, and prior art research can be performed by searching various patent documents published in the past.
선행 기술 조사를 수행하는데 있어서 가장 중요한 것은, 대상특허문서의 진보성을 부정할 수 있을만한 유사특허문서가 존재하는지 여부를 판단하는 일이다.The most important thing in conducting a prior art search is to determine whether a similar patent document that can deny the inventive step of the target patent document exists.
그러나, 특허 문서의 양이 방대하고, 시간의 제약으로 인하여 과거 공개된 모든 특허 문서를 분석하는 것은 사실상 불가능에 가까운 일이며, 주어진 시간 내에서 최대한의 결과를 얻기 위하여 검색식 입력 등의 방법을 통해 유사특허문서를 획득하는 것이 현실이다.However, the amount of patent documents is huge and it is virtually impossible to analyze all patent documents published in the past due to time constraints. It is a reality to obtain similar patent documents.
그러나, 검색식 입력 등을 통한 유사특허문서 획득은 선행기술 조사를 수행하는 인력의 능력에 좌우되는 경우가 많아 선행 기술 조사에 대한 안정적인 결과에 대한 보장이 되지 않는 경우가 많다.However, obtaining a similar patent document through a search-type input, etc., is often dependent on the ability of a person who conducts prior art research, and thus, in many cases, stable results of prior art research are not guaranteed.
따라서, 적은 시간 투자로 안정적인 결과를 보장 받을 수 있는 선행 기술 조사 방법의 필요성이 대두되고 있다.Therefore, the need for a prior art research method that can guarantee stable results with a small investment of time is emerging.
본 발명이 해결하고자 하는 과제는 유사도 점수 및 비유사도 점수를 이용한 특허문서의 유사도 판단 방법, 장치 및 시스템을 제공하는 것이다.An object of the present invention is to provide a method, apparatus and system for determining the degree of similarity of a patent document using a similarity score and a dissimilarity score.
본 발명이 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.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.
상술한 과제를 해결하기 위한 본 발명의 일 면에 따른 특허문서의 유사도 판단 방법은, 서버가, 대상특허문서를 제1 인공지능 모델에 입력하여 유사특허문서를 획득하는 단계; 상기 서버가, 상기 대상특허문서에 포함된 복수의 문장을 획득하고, 상기 유사특허문서에 포함된 복수의 문장을 획득하는 단계; 상기 서버가, 상기 대상특허문서에 포함된 복수의 문장 중 제1 문장을 획득하고, 상기 유사특허문서에 포함된 복수의 문장 중 제2 문장을 획득하는 단계; 상기 서버가, 상기 제1 문장 및 상기 제2 문장을 제2 인공지능 모델에 입력하여, 상기 제1 문장과 상기 제2 문장에 대한 평가 결과를 획득하는 단계; 를 포함한다.A method for determining a degree of similarity of a patent document according to an aspect of the present invention for solving the above-described problem includes, by a server, inputting a target patent document into a first artificial intelligence model to obtain a similar patent document; obtaining, by the server, a plurality of sentences included in the target patent document, and acquiring a plurality of sentences included in the similar patent document; obtaining, by the server, a first sentence among a plurality of sentences included in the target patent document, and acquiring a second sentence among a plurality of sentences included in the similar patent document; inputting, by the server, the first sentence and the second sentence into a second artificial intelligence model, and obtaining evaluation results for the first sentence and the second sentence; includes
이때, 상기 제1 인공지능 모델은 복수의 특허문서를 학습데이터로 입력하여 학습된 CNN 기반의 인공지능 모델이고, 상기 제2 인공지능 모델은 특허문서, 상기 특허 문서에 매칭된 선행조사보고서 및 상기 선행조사보고서에 대응되는 유사 특허문서를 바탕으로 학습된 Bi-LSTM 모델 기반의 인공지능 모델일 수 있다.At this time, the first artificial intelligence model is a CNN-based artificial intelligence model learned by inputting a plurality of patent documents as learning data, and the second artificial intelligence model is a patent document, a prior research report matching the patent document, and the It may be an artificial intelligence model based on a Bi-LSTM model learned based on a similar patent document corresponding to a prior research report.
이때, 상기 유사특허문서를 획득하는 단계는, 상기 대상특허문서에 포함된 복수개의 단어 세트를 획득하는 단계; 상기 획득된 복수개의 단어 세트를 클러스터링하여 복수개의 대상특허 클러스터를 획득하는 단계; 상기 복수개의 대상특허 클러스터 각각에 대한 복수개의 중점을 획득하고, 상기 복수개의 대상특허 클러스터 각각에 대한 복수개의 중점 및 상기 대상특허 클러스터에 포함된 단어 세트의 수를 바탕으로 상기 대상특허문서의 위치를 판단하는 단계; 특허문서에 포함된 복수개의 단어 세트를 획득하고, 획득된 복수개의 단어 세트를 클러스터링하여 복수의 특허 클러스터를 획득하는 단계; 상기 복수개의 특허 클러스터 각각에 대한 복수개의 중점을 획득하고, 상기 복수개의 특허 클러스터 각각에 대한 복수개의 중점 및 상기 특허 클러스터에 포함된 단어 세트의 수를 바탕으로 상기 특허문서의 위치를 판단하는 단계; 및 상기 대상특허문서의 위치 및 상기 특허문서의 위치가 기 설정된 거리 이내인 경우, 상기 특허문서를 상기 유사특허문서로 결정하는 단계; 를 포함할 수 있다.In this case, the acquiring of the similar patent document may include: acquiring a plurality of word sets included in the target patent document; obtaining a plurality of target patent clusters by clustering the obtained plurality of word sets; A plurality of midpoints for each of the plurality of target patent clusters are obtained, and the location of the target patent document is determined based on the plurality of midpoints for each of the plurality of target patent clusters and the number of word sets included in the target patent cluster. judging; obtaining a plurality of word sets included in the patent document, and clustering the obtained plurality of word sets to obtain a plurality of patent clusters; obtaining a plurality of midpoints for each of the plurality of patent clusters, and determining the position of the patent document based on the plurality of midpoints for each of the plurality of patent clusters and the number of word sets included in the patent cluster; and when the position of the target patent document and the position of the patent document are within a preset distance, determining the patent document as the similar patent document; may include.
이때, 상기 복수의 문장을 획득하는 단계는, 상기 대상특허문서 및 상기 유사특허문서에 포함된 복수의 문장 각각에 대한 복수개의 단어 세트를 획득하는 단계; 상기 획득된 복수개의 단어 세트 각각에 대한 복수개의 중요도 스코어를 획득하는 단계; 상기 복수개의 중요도 스코어를 바탕으로 상기 대상특허문서에 포함된 문장의 중요도 스코어를 결정하는 단계; 및 상기 복수의 문장 각각의 중요도 스코어를 바탕으로 상기 복수의 문장을 중요도 순으로 정렬하는 단계; 를 포함할 수 있다.In this case, the acquiring of the plurality of sentences may include: acquiring a plurality of word sets for each of the plurality of sentences included in the target patent document and the similar patent document; obtaining a plurality of importance scores for each of the obtained plurality of word sets; determining an importance score of a sentence included in the target patent document based on the plurality of importance scores; and arranging the plurality of sentences in order of importance based on the importance score of each of the plurality of sentences. may include.
이때, 상기 대상특허문서에 포함된 복수의 문장 중 제1 문장을 획득하고, 상기 유사특허문서에 포함된 복수의 문장 중 제2 문장을 획득하는 단계는, 상기 대상특허문서에 포함된 복수의 문장을 중요도 스코어를 바탕으로 기 설정된 n개의 그룹으로 분류하는 단계; 상기 유사특허문서에 포함된 복수의 문장을 중요도 스코어를 바탕으로 기 설정된 n개의 그룹으로 분류하는 단계; 상기 제1 문장이 상기 대상특허문서의 n개의 그룹 중 제1 그룹에 포함되는 경우, 상기 제2 문장을 상기 유사특허문서에 포함된 전체 문장으로 획득하는 단계; 상기 제1 문장이 상기 대상특허문서의 n개의 그룹 중 제k 그룹에 포함되는 경우, 상기 제2 문장을 상기 유사특허문서의 n개의 그룹 중, 제1 그룹 내지 제 (n-k+1)그룹에 포함된 문장으로 획득하는 단계;를 포함하고, 상기 n은 1 이상의 자연수, k는 n이하의 자연수일 수 있다.In this case, the steps of obtaining a first sentence among a plurality of sentences included in the target patent document and obtaining a second sentence among a plurality of sentences included in the similar patent document include the plurality of sentences included in the target patent document. classifying into n preset groups based on the importance score; classifying the plurality of sentences included in the similar patent document into n preset groups based on the importance score; acquiring the second sentence as all sentences included in the similar patent document when the first sentence is included in a first group among n groups of the target patent document; When the first sentence is included in the kth group among the n groups of the target patent document, the second sentence is included in the first group to the (n-k+1)th group among the n groups of the similar patent document. Including; obtaining as a sentence included in , wherein n may be a natural number greater than or equal to 1, and k may be a natural number less than or equal to n.
이때, 상기 제1 문장과 상기 제2 문장에 대한 평가 결과를 획득하는 단계는, 상기 제1 문장 및 상기 제2 문장의 유사도 점수 및 비유사도 점수를 각각 획득하는 단계; 상기 비유사도 점수가 기 설정된 점수 이상인 경우, 상기 제1 문장과 상기 제2 문장은 관계없는 문장으로 판단하는 단계; 상기 유사도 점수가 기 설정된 점수 이상인 경우, 상기 제1 문장에 포함된 단어 세트 중 상기 제2 문장에 포함되지 않은 적어도 하나의 단어 세트를 획득하는 단계; 상기 제2 문장에 포함되지 않은 적어도 하나의 단어 세트 각각에 대한 적어도 중요도 점수를 획득하고, 상기 획득된 적어도 하나의 중요도 점수 중 기 설정된 중요도 점수 이상인 단어 세트가 존재하는지 여부를 판단하는 단계; 기 설정된 중요도 점수 이상인 단어 세트가 존재하지 않는 경우, 상기 제1 문장 및 상기 제2 문장을 일치 문장으로 판단하는 단계; 및 상기 기 설정된 중요도 점수 이상인 단어 세트가 존재하면, 상기 제1 문장 및 상기 제2 문장을 불일치 문장으로 판단하는 단계; 를 포함할 수 있다.In this case, the obtaining of the evaluation results for the first sentence and the second sentence may include: obtaining a similarity score and a dissimilarity score of the first sentence and the second sentence, respectively; determining that the first sentence and the second sentence are unrelated sentences when the dissimilarity score is equal to or greater than a preset score; obtaining at least one word set not included in the second sentence among the word sets included in the first sentence when the similarity score is equal to or greater than a preset score; obtaining at least an importance score for each of at least one word set not included in the second sentence, and determining whether a word set equal to or greater than a preset importance score exists among the at least one obtained importance score; determining the first sentence and the second sentence as matching sentences when there is no word set equal to or greater than a preset importance score; and determining that the first sentence and the second sentence are mismatched sentences when there is a set of words equal to or greater than the preset importance score. may include.
이때, 상기 단어 세트를 획득하는 단계는, 상기 대상특허문서의 형태소를 분석하여 복수개의 단어 세트를 획득하는 단계; 상기 획득된 복수개의 단어 세트 중 오류 단어 세트를 판단하는 단계; 상기 오류단어 세트를 수정하는 단계; 및 상기 복수개의 단어 세트간의 연관도를 바탕으로 적어도 하나의 복합 명사구 세트를 획득하는 단계;를 포함하고, 상기 오류 단어 세트를 판단하는 단계는, 상기 획득된 복수개의 단어 세트 각각에 대한 의미 정보를 매칭하는 단계; 상기 매칭된 의미 정보 및 상기 특허문서를 바탕으로, 상기 복수개의 단어 세트 각각에 대한 정확도 점수를 획득하는 단계; 및 상기 정확도 점수가 기 설정된 값 이하인 단어 세트를 오류 단어 세트로 판단하는 단계;를 포함하고, 상기 오류 단어 세트를 수정하는 단계는, 상기 오류 단어에 대한 복수개의 의미 정보를 획득하는 단계; 상기 획득된 복수개의 의미 정보 각각에 대한 복수개의 가중치를 획득하는 단계; 상기 복수개의 가중치 중, 상기 특허문서와의 연관도가 가장 높은 가중치를 획득하는 단계; 및 상기 특허문서와의 연관도가 가장 높은 가중치에 대응되는 의미 정보를 상기 오류 단어 세트에 매칭하는 단계; 를 포함하고, 상기 적어도 하나의 복합 명사구 세트를 획득하는 단계는, 상기 특허문서에 포함된 문장에 대한 복수개의 단어 세트를 획득하는 단계; 상기 복수개의 단어 세트의 조합으로 획득된 복수개의 복합 명사구 세트 후보를 획득하는 단계; 상기 획득된 복수개의 복합 명사구 세트 후보와 동일한 복합 명사구 세트가 특허문서에 포함되는 빈도를 획득하는 단계; 및 상기 빈도가 기 설정된 빈도 이상인 복합 명사구 세트 후보를 복합 명사구 세트로 결정하는 단계; 를 포함하고, 상기 복합 명사구 세트 후보는 복합 명사구 세트 후보에 포함된 단어 세트들의 순서 정보 및 이격 정보를 포함할 수 있다.In this case, the obtaining of the word set may include: obtaining a plurality of word sets by analyzing morphemes of the target patent document; determining an erroneous word set among the obtained plurality of word sets; correcting the error word set; and obtaining at least one complex noun phrase set based on the degree of association between the plurality of word sets, wherein the determining of the erroneous word set includes semantic information for each of the obtained word sets. matching; obtaining an accuracy score for each of the plurality of word sets based on the matched semantic information and the patent document; and determining a word set whose accuracy score is less than or equal to a preset value as an erroneous word set, wherein the correcting of the erroneous word set includes: obtaining a plurality of semantic information for the erroneous word; obtaining a plurality of weights for each of the obtained pieces of semantic information; obtaining a weight having the highest degree of relevance to the patent document from among the plurality of weights; and matching semantic information corresponding to a weight having the highest degree of relevance with the patent document to the erroneous word set. The obtaining of the at least one compound noun phrase set includes: obtaining a plurality of word sets for sentences included in the patent document; obtaining a plurality of compound noun phrase set candidates obtained by combining the plurality of word sets; obtaining a frequency in which a compound noun phrase set identical to the obtained plurality of compound noun phrase set candidates is included in a patent document; and determining a compound noun phrase set candidate whose frequency is equal to or greater than a preset frequency as a compound noun phrase set. and, the compound noun phrase set candidate may include order information and spacing information of word sets included in the compound noun phrase set candidate.
이때, 상기 중요도 스코어를 획득하는 단계는, 상기 서버가, 상기 대상특허문서로부터 중요도 스코어의 산출 대상이 되는 단어를 획득하는 단계; 상기 서버가, 전체 특허문서에서의 상기 단어의 제1 세부 중요도, 상기 대상특허문서의 기술분야정보에 대응되는 특허분류정보에서의 상기 단어의 제2 세부 중요도 및 상기 전체 특허문서 중 상기 단어가 포함된 검색특허문서의 제3 세부 중요도 중 하나 이상의 세부 중요도를 산출하는 단계; 및 상기 서버가, 상기 제1 세부 중요도, 상기 제2 세부 중요도 및 상기 제3 세부 중요도 중 하나 이상에 기초하여 상기 단어의 상기 중요도 스코어를 획득하는 단계; 를 포함할 수 있다. In this case, the step of obtaining the importance score may include: obtaining, by the server, a word to be calculated for the importance score from the target patent document; The server includes the first detailed importance of the word in the entire patent document, the second detailed importance of the word in the patent classification information corresponding to the technical field information of the target patent document, and the word in the entire patent document calculating at least one detailed importance among third detailed importance levels of the searched patent document; and obtaining, by the server, the importance score of the word based on at least one of the first detailed importance, the second detailed importance, and the third detailed importance; may include.
본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.Other specific details of the invention are included in the detailed description and drawings.
상술한 본 발명의 실시예에 따라, 인공지능 모델을 이용하여 적은 시간 투자로 안정적인 결과를 보장 받을 수 있는 선행 기술 조사 방법이 제공될 수 있다.According to the above-described embodiment of the present invention, a prior art research method that can be guaranteed a stable result with a small time investment using an artificial intelligence model can be provided.
본 발명의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.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는 본 발명의 일 실시예에 따른 제1 문장 및 제2 문장을 획득하는 방법을 설명하기 위한 흐름도이다.
도 6은 본 발명의 일 실시예에 따른 제1 문장 및 제2 문장에 대한 평가 결과를 획득하는 방법을 설명하기 위한 흐름도이다.
도 7은 본 발명의 일 실시예에 따른 제1 인공지능 모델 및 제2 인공지능 모델을 이용하여 평가 결과를 도출하는 과정을 설명하기 위한 예시도이다.
도 8a 내지 도 8d는 본 발명의 일 실시예에 따른 단어 세트 획득 방법을 설명하기 위한 흐름도이다.
도 9는 본 발명의 일 실시예에 따른 중요도 스코어를 획득하는 방법을 설명하기 위한 흐름도이다.
도 10은 본 발명의 일 실시예에 따른 장치의 구성도이다.1 is an exemplary diagram for explaining a system according to an embodiment of the present invention.
2 is a flowchart illustrating a method of obtaining evaluation results for sentences included in a target patent document and a similar patent document according to an embodiment of the present invention.
3 is a flowchart illustrating a method of obtaining a similar patent document according to an embodiment of the present invention.
4 is a flowchart for explaining a method of obtaining a plurality of sentences from a target patent document and a similar patent document and arranging them in order of importance according to an embodiment of the present invention.
5 is a flowchart illustrating a method of obtaining a first sentence and a second sentence according to an embodiment of the present invention.
6 is a flowchart illustrating a method of obtaining evaluation results for a first sentence and a second sentence according to an embodiment of the present invention.
7 is an exemplary diagram for explaining a process of deriving an evaluation result using a first artificial intelligence model and a second artificial intelligence model according to an embodiment of the present invention.
8A to 8D are flowcharts illustrating a method of acquiring a word set according to an embodiment of the present invention.
9 is a flowchart illustrating a method of obtaining an importance score according to an embodiment of the present invention.
10 is a block diagram of an apparatus according to an embodiment of the present invention.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 제한되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술 분야의 통상의 기술자에게 본 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 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 understand the scope of the present invention to those skilled in the art, 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. As used herein, 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. Accordingly, 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 specifically defined explicitly.
명세서에서 사용되는 "부" 또는 “모듈”이라는 용어는 소프트웨어, 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 “unit” or “module” may be configured to reside on an addressable storage medium or 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 as 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.
도 1은 본 발명의 일 실시예에 따른 시스템을 설명하기 위한 예시도이다.1 is an exemplary diagram for explaining a system according to an embodiment of the present invention.
본 발명에 따른 특허문서의 유사도 판단을 위한 시스템은 서버(10) 및 전자 장치(20)를 포함한다.The system for determining the similarity of patent documents according to the present invention includes a
서버(10)는 대상특허문서를 획득하고, 획득된 대상특허문서로부터 유사특허문서를 획득하고, 대상특허문서의 문장과 유사특허문서의 문장의 유사도를 판단하기 위한 구성이다.The
구체적으로, 서버(10)는 전자장치(20)로부터 대상특허문서를 입력 받거나, 외부 서버로부터 대상특허문서를 획득할 수 있다. Specifically, the
본 명세서에서, 특허문서는 대상특허문서 및 유사특허문서를 포함하는 개념으로, 각국 특허청에 특허 등록을 받기 위해 출원인이 제출하는 기술 내용에 대한 문서일 수 있다. 다만, 이에 한정되는 것은 아니고, 특허문서는, 특허 출원을 위한 직무 발명서, 논문 등 기술 내용을 포함한 다양한 문서를 포함하는 개념으로 이해될 수 있다. 일 실시예에 따라, 대상특허문서는 특허 출원을 위한 직무 발명서, 논문 중 적어도 하나이고, 유사특허문서는 특허 출원을 위한 직무 발명서, 논문, 특허출원서 중 적어도 하나일 수 있다.In the present specification, a patent document is a concept including a target patent document and a similar patent document, and may be a document about technical contents submitted by an applicant to obtain a patent registration at each country's patent office. However, the present invention is not limited thereto, and the patent document may be understood as a concept including various documents including technical contents, such as a job invention for a patent application, and a thesis. According to an embodiment, the target patent document may be at least one of a job invention book and a thesis for a patent application, and the similar patent document may be at least one of a job invention book, a thesis, and a patent application for a patent application.
전자 장치(20)는 서버(10)로 특허문서를 제공하기 위한 구성이다. 본 발명에 따른 전자 장치(200)는 스마트 폰으로 구현될 수 있으나, 이는 일 실시예에 불과할 뿐, 스마트폰(smartphone), 태블릿 PC(tablet personal computer), 이동 전화기(mobile phone), 영상 전화기, 전자책 리더기(e-book reader), 데스크탑 PC (desktop PC), 랩탑 PC(laptop PC), 넷북 컴퓨터(netbook computer), 워크스테이션(workstation), 서버, PDA(personal digital assistant), PMP(portable multimedia player) 또는 웨어러블 장치(wearable device) 중 적어도 하나를 포함할 수 있다.The
도 2는 본 발명의 일 실시예에 따른 대상특허문서 및 유사특허문서에 포함된 문장들에 대한 평가 결과를 획득하는 방법을 설명하기 위한 흐름도이다.2 is a flowchart illustrating a method of obtaining evaluation results for sentences included in a target patent document and a similar patent document according to an embodiment of the present invention.
단계 S110에서, 서버(10)는 대상특허문서를 제1 인공지능 모델에 입력하여 유사특허문서를 획득할 수 있다.In step S110, the
구체적으로, 서버(10)는 제1 인공지능 모델을 이용하여 제1 데이터베이스에 저장된 복수의 특허문서 중, 대상특허문서와 유사한 유사특허문서를 획득할 수 있다.Specifically, the
일 실시예로, 서버(10)는, 제1 데이터베이스에 저장된 복수의 특허문서 각각에 대한 형태소 분석을 바탕으로, 복수의 특허문서 각각을 분석하고, 대상특허문서에 대한 형태소분석을 바탕으로 대상특허문서를 분석한 뒤, 대상특허문서와 연관도가 높은 유사특허문서를 획득할 수 있다. 유사특허문서를 획득하는 구체적인 방법은 도 3에서 후술한다. In one embodiment, the
단계 S120에서, 서버(10)는, 상기 대상특허문서에 포함된 복수의 문장을 획득하고, 상기 유사특허문서에 포함된 복수의 문장을 획득할 수 있다.In step S120 , the
단계 S130에서, 서버(10)는, 상기 대상특허문서에 포함된 복수의 문장 중 제1 문장을 획득하고, 상기 유사특허문서에 포함된 복수의 문장 중 제2 문장을 획득할 수 있다.In step S130 , the
단계 S140에서, 서버(10)는, 상기 제1 문장 및 상기 제2 문장을 제2 인공지능 모델에 입력하여, 상기 제1 문장과 상기 제2 문장에 대한 평가 결과를 획득할 수 있다.In step S140 , the
한편, 제1 인공지능 모델은 복수의 특허문서를 학습데이터로 입력하여 학습된 합성곱 신경망(Convolutional deep Neural Networks, CNN) 기반의 인공지능 모델이고, 제2 인공지능 모델은 특허문서, 상기 특허 문서에 매칭된 선행조사보고서 및 상기 선행조사보고서에 대응되는 유사 특허문서를 바탕으로 학습된 Bi-LSTM 모델 기반의 인공지능 모델일 수 있다. 다만, 이에 한정되는 것은 아니며, 다양한 인공지능 모델이 본 발명에 적용될 수 있음은 물론이다. 예컨대, DNN(Deep Neural Network), RNN(Recurrent Neural Network), BRDNN(Bidirectional Recurrent Deep Neural Network)과 같은 모델이 인공지능 모델로서 사용될 수 있으나, 이에 한정되지 않는다.On the other hand, the first artificial intelligence model is an artificial intelligence model based on a convolutional deep neural network (CNN) that is learned by inputting a plurality of patent documents as learning data, and the second artificial intelligence model is a patent document, the patent document It may be an artificial intelligence model based on a Bi-LSTM model learned based on a prior research report matched to , and a similar patent document corresponding to the prior research report. However, the present invention is not limited thereto, and it goes without saying that various artificial intelligence models may be applied to the present invention. For example, a model such as a Deep Neural Network (DNN), a Recurrent Neural Network (RNN), or a Bidirectional Recurrent Deep Neural Network (BRDNN) may be used as the AI model, but is not limited thereto.
이때, 합성곱 신경망(Convolutional deep Neural Networks, CNN)은 최소한의 전처리(preprocess)를 사용하도록 설계된 다계층 퍼셉트론(multilayer perceptrons)의 한 종류이다. 합성곱 신경망은 하나 또는 여러개의 합성곱 계층(convolutional layer)과 그 위에 올려진 일반적인 인공신경망 계층들로 이루어져 있으며, 가중치와 통합 계층(pooling layer)들을 추가로 활용한다. 이러한 구조 덕분에 합성곱 신경망은 2차원 구조의 입력 데이터를 충분히 활용할 수 있다. 또한, 합성곱 신경망은 표준 역전달을 통해 훈련될 수 있다. 합성곱 신경망은 다른 피드포워드 인공신경망 기법들보다 쉽게 훈련되는 편이고 적은 수의 매개변수를 사용한다는 이점이 있다. 합성곱 신경망은 입력 영상에 대하여 합성곱과 서브샘플링을 번갈아 수행함으로써 입력 영상으로부터 특징을 추출한다.In this case, convolutional deep neural networks (CNNs) are a type of multilayer perceptrons designed to use minimal preprocessing. A convolutional neural network consists of one or several convolutional layers and general artificial neural network layers on top of it, and additionally utilizes weights and pooling layers. Thanks to this structure, the convolutional neural network can fully utilize the input data of the two-dimensional structure. In addition, convolutional neural networks can be trained via standard backpropagation. Convolutional neural networks are easier to train than other feedforward neural network techniques and have the advantage of using fewer parameters. A convolutional neural network extracts features from an input image by alternately performing convolution and subsampling on the input image.
합성곱 신경망은 여러 개의 합성곱 계층(Convolution layer), 여러 개의 서브샘플링 계층(Subsampling layer, Lacal pooling layer, Max-Pooling layer), 완전 연결 층(Fully Connected layer)을 포함한다. 합성곱 계층은 입력 영상(Input Image)에 대해 합성곱을 수행하는 계층이다. 그리고 서브샘플링 계층은 입력 영상에 대해 지역적으로 최대값을 추출하여 2차원 영상으로 매핑하는 계층으로, 국소적인 영역을 더 크게 하고, 서브샘플링을 수행한다. A convolutional neural network includes several convolution layers, several subsampling layers (Subsampling layer, Lacal pooling layer, Max-Pooling layer), and a fully connected layer. The convolution layer is a layer that performs convolution on an input image. In addition, the subsampling layer is a layer that locally extracts the maximum value from the input image and maps it to a 2D image, and subsampling is performed by enlarging the local area.
합성곱 계층에서는 커널의 크기(kernel size), 사용할 커널의 개수(즉, 생성할 맵의 개수), 및 합성곱 연산 시에 적용할 가중치 테이블 등의 정보가 필요하다. 예를 들어, 입력 영상의 크기가 32×32이고, 커널의 크기가 5×5이고, 사용할 커널의 개수가 20개인 경우를 예로 들자. 이 경우, 32×32 크기의 입력 영상에 5×5 크기의 커널을 적용하면, 입력 영상의 위, 아래, 왼쪽, 오른쪽에서 각각 2개의 픽셀(pixel)에는 커널을 적용하는 것이 불가능하다. 입력 영상의 위에 커널을 배치한 후 합성곱을 수행하면, 그 결과 값인 '-8'은 커널에 포함된 입력 영상의 픽셀들 중에서 커널의 중심요소(center element)에 대응하는 픽셀의 값으로 결정되기 때문이다. 따라서, 32×32 크기의 입력 영상에 5×5 크기의 커널을 적용하여 합성곱을 수행하면 28×28 크기의 맵(map)이 생성된다. 앞서, 사용할 커널의 개수가 총 20개인 경우를 가정하였으므로, 첫 번째 합성곱 계층에서는 총 20개의 28×28 크기의 맵이 생성된다. In the convolution layer, information such as the kernel size, the number of kernels to be used (ie, the number of maps to be generated), and a weight table to be applied during the convolution operation are required. For example, suppose that the size of the input image is 32x32, the size of the kernel is 5x5, and the number of kernels to be used is 20. In this case, if a 5×5 kernel is applied to a 32×32 input image, it is impossible to apply the kernel to two pixels above, below, left, and right of the input image. If the kernel is placed on the input image and then convolution is performed, the result value of '-8' is determined as the value of the pixel corresponding to the center element of the kernel among the pixels of the input image included in the kernel. am. Therefore, when convolution is performed by applying a 5×5 kernel to an input image having a size of 32×32, a map of size 28×28 is generated. Previously, since it was assumed that the total number of kernels to be used is 20, in the first convolutional layer, a total of 20 maps with a size of 28×28 are generated.
서브샘플링 계층에서는 서브샘플링할 커널의 크기에 대한 정보, 커널 영역 내의 값들 중 최대값을 선택할 것인지 최소값을 선택할 것인지에 대한 정보가 필요하다.In the subsampling layer, information on the size of a kernel to be subsampled and information on whether to select a maximum value or a minimum value among values in the kernel region are required.
또한, 심층 신경망(Deep Neural Networks, DNN)은 입력 계층(input layer)과 출력 계층(output layer) 사이에 복수개의 은닉 계층(hidden layer)들로 이뤄진 인공신경망(Artificial Neural Network, ANN)이다.In addition, deep neural networks (DNNs) are artificial neural networks (ANNs) composed of a plurality of hidden layers between an input layer and an output layer.
이때, 심층 신경망의 구조는 퍼셉트론(perceptron)으로 구성될 수 있다. 퍼셉트론은 여러 개의 입력 값(input)과 하나의 프로세서(prosessor), 하나의 출력 값으로 구성된다. 프로세서는 여러 개의 입력 값에 각각 가중치를 곱한 후, 가중치가 곱해진 입력 값들을 모두 합한다. 그 다음 프로세서는 합해진 값을 활성화함수에 대입하여 하나의 출력 값을 출력한다. 만약 활성화함수의 출력 값으로 특정한 값이 나오기를 원하는 경우, 각 입력 값에 곱해지는 가중치를 수정하고, 수정된 가중치를 이용하여 출력 값을 다시 계산할 수 있다. 이때, 각각의 퍼셉트론은 서로 다른 활성화함수를 사용할 수 있다. 또한 각각의 퍼셉트론은 이전 계층에서 전달된 출력들을 입력으로 받아들인 다음, 활성화 함수를 이용해서 출력을 구한다. 구해진 출력은 다음 계층의 입력으로 전달된다. 상술한 바와 같은 과정을 거치면 최종적으로 몇 개의 출력 값을 얻을 수 있다. In this case, the structure of the deep neural network may be composed of a perceptron. A perceptron consists of several inputs, one processor, and one output value. The processor multiplies each input value by a weight, and then sums the input values multiplied by the weight. Then, the processor outputs one output value by substituting the summed value into the activation function. If a specific value is desired as the output value of the activation function, the weight multiplied by each input value may be corrected, and the output value may be recalculated using the modified weight. In this case, each perceptron may use a different activation function. In addition, each perceptron receives the outputs from the previous layer as input, and then uses the activation function to obtain the output. The obtained output is transferred to the input of the next layer. Through the process as described above, some output values can be finally obtained.
또한, 딥 러닝 기법에 대한 설명으로 다시 돌아가면, 순환 신경망(Reccurent Neural Network, RNN)은 인공신경망을 구성하는 유닛 사이의 연결이 Directed cycle을 구성하는 신경망을 말한다. 순환 신경망은 앞먹임 신경망과 달리, 임의의 입력을 처리하기 위해 신경망 내부의 메모리를 활용할 수 있다.In addition, returning to the description of the deep learning technique, a Reccurent Neural Network (RNN) refers to a neural network in which connections between units constituting an artificial neural network constitute a directed cycle. Unlike forward neural networks, recurrent neural networks can utilize the memory inside the neural network to process arbitrary inputs.
심층 신뢰 신경망(Deep Belief Networks, DBN)이란 기계학습에서 사용되는 그래프 생성 모형(generative graphical model)으로, 딥 러닝에서는 잠재변수(latent variable)의 다중계층으로 이루어진 심층 신경망을 의미한다. 계층 간에는 연결이 있지만 계층 내의 유닛 간에는 연결이 없다는 특징이 있다. Deep Belief Networks (DBN) is a generative graphical model used in machine learning, and in deep learning, it means a deep neural network composed of multiple layers of latent variables. There is a connection between layers, but there is no connection between units within a layer.
심층 신뢰 신경망은 생성 모형이라는 특성상 선행학습에 사용될 수 있고, 선행학습을 통해 초기 가중치를 학습한 후 역전파 혹은 다른 판별 알고리즘을 통해 가중치의 미조정을 할 수 있다. 이러한 특성은 훈련용 데이터가 적을 때 굉장히 유용한데, 이는 훈련용 데이터가 적을수록 가중치의 초기값이 결과적인 모델에 끼치는 영향이 세지기 때문이다. 선행학습된 가중치 초기값은 임의로 설정된 가중치 초기값에 비해 최적의 가중치에 가깝게 되고 이는 미조정 단계의 성능과 속도향상을 가능케 한다. The deep trust neural network can be used for pre-learning due to the nature of the generative model, and after learning the initial weights through pre-learning, the weights can be fine-tuned through backpropagation or other discrimination algorithms. This feature is very useful when the training data is small, because the smaller the training data, the stronger the effect of the initial value of the weight on the resulting model. The pre-learned initial weight value is closer to the optimal weight compared to the arbitrarily set initial weight value, which enables performance and speed improvement in the fine-tuning stage.
상술한 인공지능 및 그 학습방법에 관한 내용은 예시를 위하여 서술된 것이며, 이하에서 설명되는 실시 예들에서 이용되는 인공지능 및 그 학습방법은 제한되지 않는다. 예를 들어, 당 업계의 통상의 기술자가 동일한 과제해결을 위하여 적용할 수 있는 모든 종류의 인공지능 기술 및 그 학습방법이 개시된 실시 예에 따른 시스템을 구현하는 데 활용될 수 있다.The above-described artificial intelligence and its learning method have been described for illustrative purposes, and the artificial intelligence and its learning method used in the embodiments described below are not limited. For example, all kinds of artificial intelligence technology and a learning method thereof that a person skilled in the art can apply to solve the same problem may be utilized to implement the system according to the disclosed embodiment.
도 3은 본 발명의 일 실시예에 따른 유사특허문서를 획득하는 방법을 설명하기 위한 흐름도이다.3 is a flowchart illustrating a method of obtaining a similar patent document according to an embodiment of the present invention.
단계 S210에서, 서버(10)는, 대상특허문서에 포함된 복수개의 단어 세트를 획득할 수 있다.In step S210, the
단계 S220에서, 서버(10)는, 상기 획득된 복수개의 단어 세트를 클러스터링하여 복수개의 대상특허 클러스터를 획득할 수 있다.In step S220, the
이때, 본 발명에 따른 클러스터링은 다양한 클러스터링 기법이 적용될 수 있다. 일 실시예로, 서버(10)는 엘라스틱 서치(Elasticsearch clustering) 클러스터링 기법을 이용하여 복수개의 대상특허 클러스터를 획득할 수 있다. 또 다른 실시예로, 서버(10)는 K-means 클러스터링, DBSCAN((Density-based spatial clustering of applications with noise) 클러스터링, Hierarchical 클러스터링, 혼합 가우시안 클러스터링 기법 중 적어도 하나의 클러스터링 기법을 이용하여 복수개의 대상특허 클러스터를 획득할 수 있다.In this case, various clustering techniques may be applied to clustering according to the present invention. In an embodiment, the
단계 S230에서, 서버(10)는, 상기 복수개의 대상특허 클러스터 각각에 대한 복수개의 중점을 획득하고, 상기 복수개의 대상특허 클러스터 각각에 대한 복수개의 중점 및 상기 대상특허 클러스터에 포함된 단어 세트의 수를 바탕으로 상기 대상특허문서의 위치를 판단할 수 있다.In step S230, the
일 실시예로, 대상특허 클러스터의 중점은, 해당 클러스터에 포함된 복수의 단어 세트의 위치를 바탕으로 획득될 수 있으며, 대상특허문서의 위치는 복수의 대상특허 클러스터의 중점들에 대한 무게중심일 수 있다.In one embodiment, the center of the target patent cluster may be obtained based on the positions of a plurality of word sets included in the cluster, and the location of the target patent document is the center of gravity with respect to the midpoints of the plurality of target patent clusters. can
단계 S240에서, 서버(10)는, 특허문서에 포함된 복수개의 단어 세트를 획득하고, 획득된 복수개의 단어 세트를 클러스터링하여 복수의 특허 클러스터를 획득할 수 있다.In step S240, the
단계 S250에서, 서버(10)는, 상기 복수개의 특허 클러스터 각각에 대한 복수개의 중점을 획득하고, 상기 복수개의 특허 클러스터 각각에 대한 복수개의 중점 및 상기 특허 클러스터에 포함된 단어 세트의 수를 바탕으로 상기 특허문서의 위치를 판단할 수 있다.In step S250, the
일 실시예로, 특허 클러스터의 중점은, 해당 클러스터에 포함된 복수의 단어 세트의 위치를 바탕으로 획득될 수 있으며, 특허문서의 위치는 복수의 특허 클러스터의 중점들에 대한 무게중심일 수 있다.As an embodiment, the midpoint of the patent cluster may be obtained based on the positions of a plurality of word sets included in the corresponding cluster, and the position of the patent document may be the center of gravity with respect to the midpoints of the plurality of patent clusters.
단계 S260에서, 서버(10)는, 상기 대상특허문서의 위치 및 상기 특허문서의 위치가 기 설정된 거리 이내인 경우, 상기 특허문서를 상기 유사특허문서로 결정할 수 있다.In step S260, when the position of the target patent document and the position of the patent document are within a preset distance, the
일 실시예로, 서버(10)는 대상특허문서의 위치로부터 기 설정된 거리 이내에 존재하는 복수개의 특허문서를 유사특허문서로 결정할 수 있으며, 대상특허문서와의 거리가 가까운 유사특허문서 순으로 결정된 복수의 유사특허문서를 정렬할 수 있다.In one embodiment, the
도 4는 본 발명의 일 실시예에 따른 대상특허문서 및 유사특허문서로부터 복수의 문장을 획득하여 중요도 순으로 정렬하는 방법을 설명하기 위한 흐름도이다.4 is a flowchart for explaining a method of obtaining a plurality of sentences from a target patent document and a similar patent document and arranging them in order of importance according to an embodiment of the present invention.
단계 S310에서, 서버(10)는, 상기 대상특허문서 및 상기 유사특허문서에 포함된 복수의 문장 각각에 대한 복수개의 단어 세트를 획득할 수 있다.In step S310, the
단계 S320에서, 서버(10)는, 상기 획득된 복수개의 단어 세트 각각에 대한 복수개의 중요도 스코어를 획득할 수 있다. 중요도 스코어를 획득하는 방법은 후술한다.In step S320 , the
단계 S330에서, 서버(10)는, 상기 복수개의 중요도 스코어를 바탕으로 상기 대상특허문서에 포함된 문장의 중요도 스코어를 결정할 수 있다.In step S330, the
일 실시예로, 서버(10)는 복수개의 단어 세트와 대상특허문서와의 연관도를 획득하고, 획득된 연관도가 기 설정된 값 이상인 단어 세트의 중요도 스코어의 총 합을 문장의 중요도 스코어로 결정할 수 있다. 이때, 연관도는 다양한 방법을 통해 획득될 수 있다. 예를 들어 단어 세트와 대상특허문서간의 연관도는 대상특허문서에 대응되는 IPC 분야에 대응되는 복수의 특허문서를 바탕으로 획득될 수 있다. 구체적으로, 단어 세트와 대상특허문서간의 연관도는, 해당 단어 세트가 IPC 분야에 대응되는 복수의 특허문서에 출현한 횟수를 바탕으로 획득될 수 있다. 일 실시예로, 해당 단어 세트가 IPC 분야에 대응되는 복수의 특허문서에 출현한 횟수가 높을수록, 단어 세트와 대상특허문서간의 연관도가 높아질 수 있다.In one embodiment, the
단계 S340에서, 서버(10)는, 상기 복수의 문장 각각의 중요도 스코어를 바탕으로 상기 복수의 문장을 중요도 순으로 정렬할 수 있다. In step S340 , the
나아가, 서버(10)는 복수의 문장을 n개의 그룹으로 그루핑할 수 있다. 이때, 복수의 문장을 그루핑하는 방법은 다양할 수 있다. 일 실시예로, n개의 그룹은 동일한 개수의 문장을 포함하도록 그루핑될 수 있다. 또 다른 실시예로, n개의 그룹은, 기 설정된 중요도 스코어에 따라 그루핑 될 수 있다. 설명의 편의를 위해, 이하에서는 제k 그룹에 포함된 문장의 중요도 스코어가 제k+1그룹에 포함된 문장의 중요도 스코어보다 큰 경우를 가정한다.Furthermore, the
도 5는 본 발명의 일 실시예에 따른 제1 문장 및 제2 문장을 획득하는 방법을 설명하기 위한 흐름도이다.5 is a flowchart illustrating a method of obtaining a first sentence and a second sentence according to an embodiment of the present invention.
단계 S410에서, 서버(10)는, 상기 대상특허문서에 포함된 복수의 문장을 중요도 스코어를 바탕으로 기 설정된 n개의 그룹으로 분류할 수 있다.In step S410, the
단계 S420에서, 서버(10)는, 상기 유사특허문서에 포함된 복수의 문장을 중요도 스코어를 바탕으로 기 설정된 n개의 그룹으로 분류할 수 있다.In step S420, the
단계 S430에서, 서버(10)는, 상기 제1 문장이 상기 대상특허문서의 n개의 그룹 중 제1 그룹에 포함되는 경우, 상기 제2 문장을 상기 유사특허문서에 포함된 전체 문장으로 획득할 수 있다.In step S430, when the first sentence is included in the first group among n groups of the target patent document, the
단계 S440에서, 서버(10)는, 상기 제1 문장이 상기 대상특허문서의 n개의 그룹 중 제k 그룹에 포함되는 경우, 상기 제2 문장을 상기 유사특허문서의 n개의 그룹 중, 제1 그룹 내지 제 (n-k+1)그룹에 포함된 문장으로 획득할 수 있다. 이때, n은 1 이상의 자연수, k는 n이하의 자연수일 수 있다. In step S440, when the first sentence is included in the kth group among n groups of the target patent document, the
예를 들어, 대상특허문서 및 유사특허문서가 3개의 그룹으로 분류된 경우를 가정할 수 있다. 이때, 제1 문장이 제1 그룹에 포함되는 경우, 서버(10)는 제1 문장과 유사특허문헌의 제1그룹 내지 제3그룹(즉, 유사특허문서 전체)에 포함된 모든 문장을 비교하여 평가 결과를 획득할 수 있다. 또한, 제1 문장이 제2 그룹에 포함되는 경우, 서버(10)는 제1 문장과 유사특허문서의 제1그룹 및 제2그룹에 포함된 모든 문장을 비교하여 평가 결과를 획득할 수 있다. 또한, 제1 문장이 제3 그룹에 포함되는 경우, 서버(10)는 제1 문장과 유사특허문서의 제1그룹에 포함된 모든 문장을 비교하여 평가 결과를 획득할 수 있다.For example, it may be assumed that the target patent document and the similar patent document are classified into three groups. At this time, when the first sentence is included in the first group, the
즉, 서버(10)는 문장의 중요도에 따라 중요한 문장이라고 판단되는 문장들에 대하여만 평가 결과를 획득함으로써, 불필요하거나 덜 중요한 문장에 대한 평가 결과 획득 과정을 방지하여 계산량을 줄일 수 있다. 구체적으로, 대상특허문서의 제1 그룹은 중요도가 높은 문장이므로 유사특허문서 전체와 비교하고, 대상특허문서의 제3 그룹은 중요도가 낮은 문장이므로 유사특허문서 중 중요도가 높은 제1 그룹의 문장과 비교함으로써, 서버(10)는 (덜 중요한) 대상특허문서의 제3 그룹과 (덜 중요한) 유사특허문서의 제3 그룹간의 비교는 생략할 수 있다.That is, the
한편, 본 발명의 다양한 실시예에 따라, 서버(10)는 대상특허문서 및 유사특허문서를 몇 개의 그룹으로 그루핑할 것인지 여부를 결정할 수 있다. 구체적으로, 서버(10)는 현재 서버(10)의 GPU 점유율 및 요구되는 정확도를 바탕으로 n의 값을 결정할 수 있다. GPU 점유율이 높거나 요구되는 정확도가 낮은 경우, 서버(10)는 n의 값을 증가시키고, GPU 점유율이 낮거나 요구되는 정확도가 높은 경우, 서버(10)는 n의 값을 감소시킬 수 있다. 예컨대 대상특허문서 및 유사특허문서가 6개의 문장으로 구성되고, n이 3인 경우 및 n이 6인 경우를 가정할 수 있다. n이 6인 경우, 서버(10)는 6+5+4+3+2+1=21개의 문장을 비교하고, n이 3인 경우 서버(10)는 6+6+4+4+2+2=24개의 문장을 비교하게 된다. 즉, n의 값이 클수록 대상특허문서와 유사특허문서에서 비교해야 되는 문장의 수가 적어지고, n의 값이 작을수록 대상특허문서와 유사특허문서에서 비교해야 되는 문장의 수가 많아지므로, 서버(10) 현재 자신이 처리할 수 있는 계산량(GPU 점유율)이 적거나 요구되는 정확도가 낮은 경우, 서버(10)는 n의 값을 증가시킬 수 있다.Meanwhile, according to various embodiments of the present invention, the
한편, 상술한 실시예에서는 대상특허문서 및 유사특허문서가 동일한 n개의 개수로 그루핑 되는 경우에 대해 설명하였으나, 이에 한정되는 것은 아니다. 예컨대, 대상특허문서와 유사특허문서를 서로 다른 개수로 그루핑될 수 있음은 물론이다. Meanwhile, in the above-described embodiment, the case in which the target patent document and the similar patent document are grouped in the same number of n has been described, but the present invention is not limited thereto. For example, it goes without saying that the target patent document and the similar patent document may be grouped in different numbers.
도 6은 본 발명의 일 실시예에 따른 제1 문장 및 제2 문장에 대한 평가 결과를 획득하는 방법을 설명하기 위한 흐름도이다.6 is a flowchart illustrating a method of obtaining evaluation results for a first sentence and a second sentence according to an embodiment of the present invention.
단계 S510에서, 서버(10)는, 상기 제1 문장 및 상기 제2 문장의 유사도 점수 및 비유사도 점수를 각각 획득할 수 있다.In step S510, the
구체적으로, 유사도 점수는 제1 문장과 제2 문장이 관련된 문장인지 여부를 판단하기 위한 지표이며, 비유사도 점수는 제1 문장과 제2 문장이 관련성이 없는 문장인지 여부를 판단하기 위한 지표이다.Specifically, the similarity score is an index for determining whether the first sentence and the second sentence are related sentences, and the dissimilarity score is an indicator for determining whether the first sentence and the second sentence are unrelated sentences.
일 실시예로, 유사도 점수 및 비유사도 점수는, 제1 문장 및 제2 문장에 포함된 단어 세트의 의미 정보를 획득하고, 획득된 의미 정보가 동일 주제에 대한 의미 정보인지 여부를 판단하여 획득될 수 있다. In an embodiment, the similarity score and the dissimilarity score may be obtained by acquiring semantic information of a word set included in the first sentence and the second sentence, and determining whether the acquired semantic information is semantic information about the same subject. can
또 다른 실시예로, 서버(10)는 제1 문장 및 제2 문장의 문장 구조를 판단하여 유사도 점수 및 비유사도 점수 계산에 활용할 수 있다. 예를 들어, 서버(10)는 제1 문장 및 제2 문장의 문장 구조가 유사한 경우, 유사도 점수를 높이고, 제1 문장 및 제2 문장의 문장 구조가 비유사한 경우, 비유사도 점수를 높일 수 있다.In another embodiment, the
단계 S520에서, 서버(10)는, 상기 비유사도 점수가 기 설정된 점수 이상인 경우, 상기 제1 문장과 상기 제2 문장은 관계없는 문장으로 판단할 수 있다. In step S520 , when the dissimilarity score is equal to or greater than a preset score, the
단계 S530에서, 서버(10)는, 상기 유사도 점수가 기 설정된 점수 이상인 경우, 상기 제1 문장에 포함된 단어 세트 중 상기 제2 문장에 포함되지 않은 적어도 하나의 단어 세트를 획득할 수 있다.In step S530 , when the similarity score is equal to or greater than a preset score, the
즉, 제1 문장과 제2 문장이 관련성이 있는 문장이라고 하더라도, 제1 문장과 제2 문장이 동일한 의미를 가지는 문장인 것은 아니다. 따라서, 서버(10)는 제1 문장과 제2 문장이 동일한 문장인지 또는 동일한 주제에 대한 문장이나 차이점이 존재하는 문장인지 여부를 판단할 수 있다.That is, even if the first sentence and the second sentence are related sentences, the first sentence and the second sentence are not sentences having the same meaning. Accordingly, the
일 실시예로, 서버(10)는 제1 문장과 제2 문장의 차이점을 판단하기 위하여 제1 문장에 포함된 단어 세트 중 제2 문장에 포함되지 않은 적어도 하나의 단어 세트를 판단할 수 있다.In an embodiment, the
또 다른 실시예로, 서버(10)는 제1 문장 및 제2 문장의 문장 구조를 판단할 수 있다.In another embodiment, the
단계 S540에서, 서버(10)는, 상기 제2 문장에 포함되지 않은 적어도 하나의 단어 세트 각각에 대한 적어도 중요도 점수를 획득하고, 상기 획득된 적어도 하나의 중요도 점수 중 기 설정된 중요도 점수 이상인 단어 세트가 존재하는지 여부를 판단할 수 있다.In step S540, the
단계 S550에서, 서버(10)는, 기 설정된 중요도 점수 이상인 단어 세트가 존재하지 않는 경우, 상기 제1 문장 및 상기 제2 문장을 일치 문장으로 판단할 수 있다.In step S550 , the
단계 S560에서, 서버(10)는, 상기 기 설정된 중요도 점수 이상인 단어 세트가 존재하면, 상기 제1 문장 및 상기 제2 문장을 불일치 문장으로 판단할 수 있다.In step S560 , the
즉, 제1 문장의 적어도 하나의 단어 세트가 제2 문장에 포함되어 있지 않은 경우라고 하더라도, 중요도 점수가 낮은 단어 세트는 제1 문장과 제2 문장의 유사도와는 연관이 없는 경우가 존재할 수 있다. 따라서 서버(10)는, 제2 문장에 포함되지 않은 적어도 하나의 단어 세트의 중요도 점수가 기 설정된 중요도 점수 이상인 경우의 단어 세트를 획득하고, 획득된 단어 세트를 바탕으로 제1 문장 및 제2 문장이 일치 문장인지 불일치 문장인지 여부를 판단할 수 있다.That is, even when at least one word set of the first sentence is not included in the second sentence, there may exist a case where a word set having a low importance score is not related to the similarity between the first sentence and the second sentence. . Accordingly, the
도 7은 본 발명의 일 실시예에 따른 제1 인공지능 모델 및 제2 인공지능 모델을 이용하여 평가 결과를 도출하는 과정을 설명하기 위한 예시도이다.7 is an exemplary diagram for explaining a process of deriving an evaluation result using a first artificial intelligence model and a second artificial intelligence model according to an embodiment of the present invention.
도 7에 도시된 바와 같이, 제1 인공지능 모델은 대상 특허문서를 입력값으로 입력받아, 대상 특허문서에 대한 유사 특허문서를 획득할 수 있다. 이때, 대상특허문서에 대한 유사 특허 문서는 복수개일 수 있음은 물론이고, 유사특허문서가 복수개인 경우, 서버(10)는 복수개의 유사특허문서를 대상특허문서와의 연관성을 바탕으로 정렬할 수 있음은 물론이다.As shown in FIG. 7 , the first artificial intelligence model may receive a target patent document as an input value and obtain a similar patent document for the target patent document. In this case, there may be a plurality of similar patent documents for the target patent document, and if there are a plurality of similar patent documents, the
제1 데이터베이스는 전체 특허문서를 저장하기 위한 구성이다. 구체적으로, 제1 데이터베이스는, 전체 특허문서 각각에 대한 형태소 분석을 통해 전체 특허문서 각각의 단어 세트를 획득하고, 획득된 단어 세트에 대한 유의어 사전을 획득하고, 획득된 단어 세트 각각에 대한 중요도 스코어를 획득하여, 획득된 중요도 스코어를 단어 세트에 매칭하여 저장할 수 있다.The first database is configured to store the entire patent document. Specifically, the first database obtains a word set of each of the entire patent documents through morphological analysis of each of the entire patent documents, obtains a thesaurus for the obtained word set, and an importance score for each of the obtained word sets may be obtained, and the obtained importance score may be matched to a word set and stored.
제1 인공지능 모델은 제1 데이터베이스에 저장된 전체 특허문서 중 대상특허문서에 대응되는 유사특허문서를 획득할 수 있다.The first artificial intelligence model may acquire a similar patent document corresponding to the target patent document among all patent documents stored in the first database.
한편, 서버(10)는 제1 인공지능 모델을 통해 대상특허문서 및 유사특허문서가 획득되면, 대상특허문서 중 제1 문장을 추출하고, 유사특허문서 중 제2 문장을 추출할 수 있다. 제1 문장 및 제2 문장은 상술한 도 4 및 도 5의 방법을 통해 획득될 수 있다.Meanwhile, when the target patent document and the similar patent document are obtained through the first artificial intelligence model, the
나아가, 제2 인공지능 모델은제1 문장 및 제2 문장을 입력값으로 입력하여 제1 문장과 제2 문장에 대한 평가 결과를 획득할 수 있다. 이때, 평가 결과란, 제1 문장과 제2 문장이 일치 문장인지, 불일치 문장인지, 관계없는 문장인지에 대한 결과일 수 있으며, 상술한 도 6의 실시예에 따라 획득될 수 있다.Furthermore, the second artificial intelligence model may obtain an evaluation result for the first sentence and the second sentence by inputting the first sentence and the second sentence as input values. In this case, the evaluation result may be a result of whether the first sentence and the second sentence are a matching sentence, a discordant sentence, or an unrelated sentence, and may be obtained according to the above-described embodiment of FIG. 6 .
제2 데이터베이스는, 특허문서 및 특허문서에 매칭된 선행조사보고서가 저장될 수 있다. 이때, 선행조사보고서는 특허문헌과 유사하다고 판단된 유사특허문서 및 특허문서의 특정 문장에 대응되는 유사특허문서의 특정 문장에 대한 정보를 포함할 수 있다.The second database may store a patent document and a prior search report matched to the patent document. In this case, the prior search report may include information on a similar patent document determined to be similar to a patent document and a specific sentence of a similar patent document corresponding to a specific sentence of the patent document.
도 8a 내지 도 8d는 본 발명의 일 실시예에 따른 단어 세트 획득 방법을 설명하기 위한 흐름도이다.8A to 8D are flowcharts illustrating a method of acquiring a word set according to an embodiment of the present invention.
서버(10)는 대상특허문서를 획득할 수 있다. 일 실시예로, 서버(10)는 전자 장치(20)로부터 직무 발명서를 대상특허문서로 획득할 수 있다. The
단계 S605에서, 서버(10)는 대상특허문서의 형태소를 분석하여 단어 세트를 획득할 수 있다.In step S605, the
일 실시예로, 서버(10)는 Mecab 형태소 분석기를 이용하여 특허문서의 형태소 분석을 수행할 수 있다. 다만, 이에 한정되는 것은 아니고, 경우에 따라 Okt, Komoran, Hannanum, Kkma 형태소 분석기 등 다양한 형태소 분석기가 이용될 수 있음은 물론이다. 나아가, 서버(10)는 분석하고자 하는 특허문서의 사용 언어에 따라 다양한 형태소 분석기를 사용할 수 있음은 물론이다.In an embodiment, the
단계 S610에서, 서버(10)는 획득된 복수개의 단어 세트 중 오류 단어 세트를 판단할 수 있다.In step S610 , the
일 실시예로, 서버(10)는 획득된 복수개의 단어 세트가 기 설정된 조건을 만족하지 못하는 경우, 해당 단어를 오류 단어로 판단할 수 있다. 단계 S615에서, 서버(10)는 오류 단어 세트를 수정할 수 있다.In an embodiment, when the plurality of acquired word sets do not satisfy a preset condition, the
단계 S620에서, 서버(10)는 복수개의 단어 세트간의 연관도를 바탕으로 적어도 하나의 복합 명사구 세트를 획득할 수 있다.In operation S620 , the
일 실시예로, 서버(10)는 대상특허문서에 포함된 문장을 획득하고, 대상특허문서에 포함된 텍스트를 문장 단위로 분류하고, 분류된 문장 각각에 대한 형태소 분석을 수행하고, 문장을 음절 단위로 분할하고, 분할된 음절에 품사 태그를 매칭하고, 분할된 음절을 바탕으로 문장에 포함된 형태소를 획득할 수 있다.In one embodiment, the
단계 S625에서, 서버(10)는 획득된 복수개의 단어 세트 각각에 대한 의미 정보를 매칭할 수 있다.In operation S625 , the
이때, 의미 정보란, 단어 세트에 대한 인텐트를 의미할 수 있다. 서버(10)는 단어 세트에 대한 의미 정보를 획득하기 위해 인공지능 모델을 이용한 자연어 처리를 수행할 수 있다. In this case, the semantic information may mean an intent for a word set. The
구체적으로, 인공지능 모델은 자연어 이해부를 포함하고, 자연어 이해부는 문장 분석 결과를 바탕으로 엔티티(entity) 및 문장에 포함된 단어 세트의 의도(intent)를 파악할 수 있으며, 나아가, 자연어 이해부는 문장의 구조 및 주요 성분 분석을 통해 문장을 해석하고 통계/분석 등을 이용하여 문장 분석을 수행할 수 있다.Specifically, the artificial intelligence model includes a natural language understanding unit, and the natural language understanding unit can grasp an entity and an intent of a word set included in a sentence based on the sentence analysis result. It is possible to interpret a sentence through structure and main component analysis, and to perform sentence analysis using statistics/analysis, etc.
일 실시예로, 서버(10)는 '사과'가 포함된 문장을 분석하여 사과에 대한 의미 정보를 획득할 수 있다. 예를 들어, 문장 문석을 통해 획득된 단어 세트가 "사과' 인 경우를 가정할 수 있다. 이때, 사과에 대한 의미 정보는 명사로서 과일의 한 종류를 나타내는 의미 정보일 수 있으나, 동사로서 다른 사람에게 잘못을 말하는 것을 나타내는 의미 정보일 수도 있다. 서버(10)는 '사과'에 대한 복수개의 의미 정보 중 문장과 적합하다고 판단되는 의미 정보를 '사과'와 매칭할 수 있다.In an embodiment, the
단계 S630에서, 서버(10)는 매칭된 의미 정보 및 특허문서를 바탕으로 복수개의 단어 세트 각각에 대한 정확도 점수를 획득할 수 있다.In step S630 , the
이 경우, 단계 S625에서는 하나의 문장을 통해 획득한 단어 세트에 대한 의미 정보 획득하나, 단계 S625을 통해 획득한 의미 정보는 부정확할 가능성이 있다. 따라서, 서버(10)는 문장을 포함하는 특허문서 전체를 바탕으로 단어 세트에 매칭된 의미 정보의 정확도 점수를 획득할 수 있다.In this case, although semantic information about the word set acquired through one sentence is acquired in step S625, the semantic information acquired in step S625 may be inaccurate. Accordingly, the
따라서, 서버(10)는 문장 분석을 통해 획득된 단어 세트의 의미 정보에 대한 정확도 점수를, 특허문서 전체에서 발견되는 동일한 단어 세트에 대한 의미 정보를 바탕으로 획득할 수 있다.Accordingly, the
예를 들어, '사과'가 포함된 문장을 분석하여 획득한 '사과'에 대한 의미 정보가 과일을 나타내는 사과에 대한 정보이지만, 문장을 포함한 특허문서 전체에서 검색되는 '사과'의 의미 정보가 다른 사람에게 잘못을 말하는 것에 대한 정보인 경우, 서버(10)는 기 매칭된 의미 정보를 낮게 설정할 수 있다.For example, the semantic information about 'apple' obtained by analyzing a sentence containing 'apple' is information about an apple representing a fruit, but the semantic information of 'apple' searched in the entire patent document including the sentence is different. In the case of information about telling a person wrong, the
단계 S635에서, 서버(10)는 정확도 점수가 기 설정된 값 이하인 단어 세트를 오류 단어 세트로 판단할 수 있다.In operation S635, the
즉, 서버(10)는 정확도 점수가 기 설정된 값 이하인 경우, 해당 단어 세트에 매칭된 의미 정보가 잘못 매칭된 것으로 판단하고, 단어 세트를 오류 단어 세트로 획득할 수 있다.That is, when the accuracy score is less than or equal to a preset value, the
단계 S640에서, 서버(10)는 오류 단어에 대한 복수개의 의미 정보를 획득할 수 있다. 구체적으로, 서버(10)는 오류 단어가 가지는 복수개의 의미 정보를 복수개의 특허문서로부터 획득할 수 있다.In step S640, the
단계 S645에서, 서버(10)는 획득된 복수개의 의미 정보 각각에 대한 복수개의 가중치를 획득할 수 있다.In step S645, the
일 실시예로, 서버(10)는 오류 단어를 포함하는 특허문서를 바탕으로 가중치를 획득할 수 있다. 구체적으로, 서버(10)는 특허문서에서 오류 단어를 포함하는 적어도 하나의 문장을 획득하고, 획득된 적어도 하나의 문장에 포함된 오류 단어와 동일한 단어에 대한 의미 정보를 획득할 수 있다. 서버(10)는 오류단어와 동일한 적어도 하나의 단어에 대한 의미 정보를 바탕으로, 복수개의 의미 정보에 대한 가중치를 획득할 수 있다.In an embodiment, the
단계 S650에서, 서버(10)는 복수개의 가중치 중 특허문서와의 연관도가 가장 높은 가중치를 획득할 수 있다. In step S650, the
단계 S655에서, 서버(10)는 특허문서와의 연관도가 가장 높은 가중치에 대응되는 의미 정보를 오류 단어 세트에 매칭할 수 있다. 즉, 서버(10)는 오류 단어에 대한 복수개의 의미 정보 중 가중치가 가장 큰 의미 정보를 오류 단어에 대한 의미 정보로 결정하고, 오류 단어를 수정할 수 있다.In step S655 , the
한편, 본 발명의 다양한 실시예에 따라, 오류 단어 세트는 단어 세트에 잘못된 의미 정보가 매칭된 경우뿐만 아니라 형태소 분석 과정에서의 오류로 잘못 파싱된 단어 세트일 경우일 수 있음은 물론이다. 일 실시예로, 단어 세트 획득을 위한 문장이 "머신 러닝을 이용한 자연어 처리를 한다" 인 경우, 서버(10)는 머신, 러닝, 이용, 자연어, 처리를 단어 세트로 획득할 수 있다. Meanwhile, according to various embodiments of the present disclosure, it goes without saying that the erroneous word set may be a case in which incorrect semantic information is matched to the word set, as well as a word set that is erroneously parsed due to an error in the morpheme analysis process. In an embodiment, when the sentence for obtaining the word set is "Natural language processing using machine learning is performed", the
이 경우, 형태소 분석의 오류로 인하여, 머신, 러닝, 을이용, 자연어, 처리와 같이 단어 세트를 획득하는 경우가 발생할 수 있다. 이 경우, 서버(10)는 '을이용'을 오류 단어 세트로 판단하고, 수정할 수 있다. In this case, due to an error in morpheme analysis, a case of acquiring a word set such as machine, learning, using eul, natural language, and processing may occur. In this case, the
구체적으로, 서버(10)는 획득된 단어 세트 각각에 대한 의미 정보를 획득한 후, 의미 정보와 특허문서와의 연관도를 바탕으로 오류 단어인지 여부를 판단할 수 있다. 일 실시예에 따라, 서버(10)는 획득된 단어 세트가 기 설정된 빈도 이상 단어 세트를 포함하는 특허문서에서 발견되는 경우, 해당 단어 세트는 오류가 없는 단어 세트로 판단할 수 있다. 또 다른 실시예로, 서버(10)는 단어 세트가 전체 특허문서에서 기 설정된 빈도 이상 발견되는 경우, 해당 단어 세트는 일반적으로 사용되는 단어 세트로 판단하여 오류 단어 세트가 아닌 것으로 판단할 수 있다. 또 다른 실시예로, 서버(10)는 단어 세트에 대한 의미 정보를 찾지 못한 경우, 해당 단어 세트를 오류 단어 세트로 판단할 수 있다. 또 다른 실시예로, 서버(10)는 단어 세트에 매칭된 의미 정보가 단어 세트를 포함하는 특허문서와 이질적인 경우, 해당 단어 세트를 오류 단어 세트로 판단할 수 있다.Specifically, after acquiring semantic information for each of the acquired word sets, the
구체적으로, 서버(10)는 특허문서 전체에 포함된 단어 세트를 획득하고, 획득된 단어 세트 각각에 대한 의미 정보를 매칭하여 저장할 수 있다. 서버(10)는 매칭된 단어 세트 및 의미 정보를 클러스터링하여 연관성있는 의미 정보를 가지는 복수개의 단어 세트의 클러스터를 획득할 수 있다. 서버(10)는 복수개의 단어 세트 클러스터 중, 클러스터에 포함된 단어 세트가 기 설정된 개수 이하인 단어 세트 클러스터를 획득할 수 있다. 이때, 기 설정된 개수란, 특허문서에서 사용된 복수의 동일한 단어 세트에 대한 개수를 의미하는 것이 아닌, 서로 다른 형태를 가지는 복수개의 단어 세트에 대한 개수를 의미할 수 있다. 예를 들어, 특허문서에서 "을이용" 이라는 단어가 복수번 검색된 경우라고 하더라도, "을이용"은 동일한 단어 세트이기 때문에, 하나의 단어 세트로 판단할 수 있다. 서버(10)는 상기 단계에서 획득한 클러스터에 포함된 단어 세트를 오류 단어 세트로 판단할 수 있다. Specifically, the
다만, 이에 한정되는 것은 아니고, 서버(10)는 복수개의 단어 세트 클러스터 중, 다른 클러스터와의 거리가 기 설정된 거리 이상인 클러스터에 포함된 단어 세트를 오류 단어 세트로 판단할 수 있음은 물론이다. 구체적으로, 서버(10)는 복수개의 클러스터의 중심점을 획득하고, 획득된 중심점을 바탕으로 클러스터간의 거리를 판단할 수 있다. 예를 들어, 획득된 단어 세트 클러스터가 제1 단어세트 클러스터 내지 제4 단어 세트 클러스터일 수 있다. 이 경우, 서버(10)는 제1 단어 세트 클러스터와 제2 단어 세트 클러스터와의 거리, 제1 단어 세트 클러스터와 제3 단어세트 클러스터와의 거리, 제1 단어 세트 클러스터와 제4 단어세트 클러스터와의 거리를 각각 획득하고, 획득된 3개의 거리 모두가 기 설정된 거리 이상인 경우, 제1 단어 세트 클러스터를 오류 단어 세트로 판단할 수 있다.However, the present invention is not limited thereto, and it goes without saying that the
이때, 복합 명사구 세트 후보는 복합 명사구 세트 후보에 포함된 단어 세트들의 순서 정보 및 이격 정보를 포함할 수 있다.In this case, the compound noun phrase set candidate may include order information and spacing information of word sets included in the compound noun phrase set candidate.
일 실시예로, 복합 명사구 세트는 둘 이상의 인접한 단어 세트의 조합으로 결정되지만, 본 발명에서는 단어들이 이격된 단어 세트의 조합 또한 복합 명사구 세트로 획득할 수 있다. 예를 들어, 서버(10)는 "복수개의 장치 중 제1 장치, 복수개의 장치 중 제2 장치, 복수개의 장치 중 제3 장치"가 포함된 문장에 서 복합 명사구 세트를 획득할 때, 복수개의 장치 중 제1 장치, 복수개의 장치 중 제2 장치 및 복수개의 장치 중 제3 장치를 독립된 복합 명사구 세트로 획득할 수 있으나, "복수개의 장치 중 (이격 단어 1) 장치"를 하나의 복합 명사구 세트로 획득할 수도 있음은 물론이다. 이때, 복합 명사구 세트는 이격 정보를 포함할 수 있다. 상술한 실시예에서 이격 정보란 단어 "중"과 단어 "장치" 사이에 1개의 단어가 포함되어 있다는 정보일 수 있다. 다양한 실시예에 따라, 단어와 단어 사이에 복수개의 단어가 포함될 수 있음은 물론이다.In an embodiment, the compound noun phrase set is determined as a combination of two or more adjacent word sets, but in the present invention, a combination of a word set in which words are spaced apart may also be obtained as a compound noun phrase set. For example, when the
또 다른 실시예로, 서버(10)는 복합 명사구 세트를 구성하는 단어 세트의 최대 개수를 결정하고, 결정된 개수 내의 복합 명사구 세트를 획득할 수 있다. 구체적으로, 복합 명사구 세트 획득을 위한 문장에 포함된 단어가 n개이고, 단어 세트간의 순서가 변경되지 않는 경우, 획득되는 복합 명사구 세트의 수는 개이고, 단어 세트간의 순서가 변경되는 경우 획득되는 복합 명사구 세트의 수는 개이다. 따라서, 문장이 길어지면 길어질수록, 서버(10)는 복합 명사구 세트 검색을 위해 과도한 리소스를 투입하여야 한다. 따라서, 서버(10)는 복합 명사구 세트를 구성하는 단어 세트의 최대 개수를 결정하고, 결정된 개수 내의 복합 명사구 세트를 획득할 수 있다. 이때, 서버(10)는, 단어 세트 획득을 수행하는 특허문서와 동일한 기술 분야인 복수개의 특허문서를 획득하고, 획득된 특허문서에 포함된 복합 명사구 세트에 포함된 단어 세트의 최대 개수를 복합 명사구 세트를 구성하는 단어 세트의 최대 개수로 결정할 수 있다. In another embodiment, the
도 9는 본 발명의 일 실시예에 따른 중요도 스코어를 획득하는 방법을 설명하기 위한 흐름도이다. 9 is a flowchart illustrating a method of obtaining an importance score according to an embodiment of the present invention.
단계 S710에서, 서버(10)는 대상특허문서로부터 중요도 스코어의 산출 대상이 되는 단어 세트를 획득할 수 있다. 필요에 따라, 대상특허문서뿐만 아니라 유사특허문서에 포함된 단어 세트의 중요도 스코어 또한 후술하는 방법으로 생성될 수 있음은 물론이다.In step S710 , the
단계 S720에서, 서버(10)는, 전체 특허문서에서의 단어 세트의 제1 세부 중요도, 대상특허문서의 기술분야정보에 대응되는 특허분류정보에서의 단어 세트의 제2 세부 중요도 및 전체 특허문서 중 단어 세트가 포함된 검색특허문서의 제3 세부 중요도 중 하나 이상의 세부 중요도를 산출할 수 있다.In step S720, the
단계 S730에서, 서버(10)는, 제1 세부 중요도, 제2 세부 중요도 및 제3 세부 중요도 중 하나 이상에 기초하여 단어 세트의 중요도 스코어를 획득할 수 있다.In operation S730 , the
일 실시예로, 서버(10)는 제1 출현비율 및 제2 출현비율을 바탕으로 제1 세부 중요도를 산출할 수 있다. 이때, 제1 출현비율은 전체 특허문서의 전체 단어 세트수 대비 전체 특허문서에서의 중요도 스코어를 획득하고자 하는 단어 세트의 출연횟수를 의미하고, 제2 출현비율은 전체 특허문서의 문장 중에서 단어 세트가 출현된 출현 문장수를 카운트하고, 전체 특허문서의 문장 중에서 단어 세트가 출현된 출현 문장수 대비 전체 특허문서의 전체 문장수 의미할 수 있다.In an embodiment, the
구체적으로, 서버(10)는 하기의 수학식 1을 이용하여 제1 세부 중요도를 산출할 수 있다.Specifically, the
여기서, W1은 제1 세부 중요도이고, wpw은 전체 특허문서에서의 단어 세트의 출현횟수이고, WPW은 전체 특허문서의 전체 단어 세트수이고, wps은 전체 특허문서의 문장 중에서 단어 세트가 출현된 출현 문장수이고, WPS은 전체 특허문서의 전체 문장수이고, a1은 제2 출현비율의 조절 상수이다.Here, W1 is the first detailed importance, wpw is the number of occurrences of the word set in the entire patent document, WPW is the total number of word sets in the entire patent document, and wps is the occurrence of the word set in the entire patent document. is the number of sentences, WPS is the total number of sentences in the entire patent document, and a1 is the control constant of the second appearance ratio.
또 다른 실시예로, 서버(10)는 제1 출현비율 및 제2 출현비율을 바탕으로 제1 세부 중요도를 산출할 수 있다. 이때, 제3 출현비율은 특허분류정보의 전체 단어 세트수 대비 특허분류정보에서의 중요도 스코어를 획득하고자 하는 단어 세트의 출연횟수를 의미하고, 제4 출현비율은 전체 특허문서의 문장 중에서 단어 세트가 출현된 출현 문장수 대비 전체 특허문서의 전체 문장수를 의미할 수 있다. In another embodiment, the
여기서, 특허분류정보는 기술분야에 따라 특허를 분류할 수 있는 코드로써, IPC(International Patent Classfication), CPC(Cooperative Patent Classification) 및 F-Term 중 어느 하나일 수 있다.Here, the patent classification information is a code capable of classifying patents according to technical fields, and may be any one of International Patent Classification (IPC), Cooperative Patent Classification (CPC), and F-Term.
구체적으로, 서버(10)는 하기의 수학식 2를 이용하여 제2 세부 중요도를 산출할 수 있다.Specifically, the
여기서, W2은 제2 세부 중요도이고, ipcw은 특허분류정보에서의 단어 세트의 출현횟수이고, IPCW은 특허분류정보의 전체 단어 세트수이고, ipcs은 전체 특허문서의 문장 중에서 단어 세트가 출현된 출현 문장수이고, IPCS은 전체 특허문서의 전체 문장수이고, a2은 제4 출현비율의 조절 상수이다.Here, W 2 is the second specific importance, ipcw is the number of occurrences of the word set in the patent classification information, IPCW is the total number of word sets in the patent classification information, and ipcs is the number of occurrences of the word set in the entire patent document sentence. The number of occurrences is the number of sentences, IPCS is the total number of sentences in the entire patent document, and a2 is the control constant of the fourth occurrence ratio.
또 다른 실시예로, 서버(10)는, 전체 특허문서 중에서 중요도 스코어의 산출 대상이 되는 단어 세트를 포함하는 검색특허문서를 검색하고, 검색특허문서 각각의 참조 정보에 기초하여 검색특허문서 각각의 영향력 값을 산출하고, 산출된 영향력 값을 바탕으로 제3 세부 중요도를 획득할 수 있다.In another embodiment, the
구체적으로, 서버(10)는 검색특허문서의 참조 정보인 출원인, 발명자, 권리자 중 하나 이상이 다른 특허문서와 동일한 항목의 개수, 참조 정보인 인용 횟수 및 피인용 횟수에 기초하여 영향력 값을 산출할 수 있다.Specifically, the
즉, 서버(10)는 검색특허문서가 다른 특허문서와 관련된 정도를 영향력 값으로 산출할 수 있다. 예를 들어, 서버(10)는 검색특허문서는 여러 특허문서로부터 인용될 때, 해당 특허문서에 검색특허문서가 영향력을 끼친 것으로 판단하여 검색특허문서의 영향력 값으로 산출할 수 있다. That is, the
나아가, 서버(10)는 검색특허문서 각각에 대해 산출된 영향력 값의 평균을 산출하고, 산출된 평균을 제3 세부 중요도로 산출할 수 있다.Furthermore, the
도 10은 일 실시 예에 따른 장치의 구성도이다.10 is a block diagram of an apparatus according to an embodiment.
프로세서(102)는 하나 이상의 코어(core, 미도시) 및 그래픽 처리부(미도시) 및/또는 다른 구성 요소와 신호를 송수신하는 연결 통로(예를 들어, 버스(bus) 등)를 포함할 수 있다.The
일 실시예에 따른 프로세서(102)는 메모리(104)에 저장된 하나 이상의 인스트럭션을 실행함으로써, 도 1 내지 도 9와 관련하여 설명된 방법을 수행한다.The
예를 들어, 프로세서(102)는 메모리에 저장된 하나 이상의 인스트럭션을 실행함으로써 신규 학습용 데이터를 획득하고, 학습된 모델을 이용하여, 상기 획득된 신규 학습용 데이터에 대한 테스트를 수행하고, 상기 테스트 결과, 라벨링된 정보가 소정의 제1 기준값 이상의 정확도로 획득되는 제1 학습용 데이터를 추출하고, 상기 추출된 제1 학습용 데이터를 상기 신규 학습용 데이터로부터 삭제하고, 상기 추출된 학습용 데이터가 삭제된 상기 신규 학습용 데이터를 이용하여 상기 학습된 모델을 다시 학습시킬 수 있다. For example, the
한편, 프로세서(102)는 프로세서(102) 내부에서 처리되는 신호(또는, 데이터)를 일시적 및/또는 영구적으로 저장하는 램(RAM: Random Access Memory, 미도시) 및 롬(ROM: Read-Only Memory, 미도시)을 더 포함할 수 있다. 또한, 프로세서(102)는 그래픽 처리부, 램 및 롬 중 적어도 하나를 포함하는 시스템온칩(SoC: system on chip) 형태로 구현될 수 있다. On the other hand, the
메모리(104)에는 프로세서(102)의 처리 및 제어를 위한 프로그램들(하나 이상의 인스트럭션들)을 저장할 수 있다. 메모리(104)에 저장된 프로그램들은 기능에 따라 복수 개의 모듈들로 구분될 수 있다.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 a method or algorithm described in relation to an embodiment of the present invention may be implemented directly in hardware, as a software module executed by hardware, or by a combination thereof. A software module may contain 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. The 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.
이상, 첨부된 도면을 참조로 하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야의 통상의 기술자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며, 제한적이 아닌 것으로 이해해야만 한다. 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.
10 : 서버
20 : 전자 장치 10 : Server
20: electronic device
Claims (1)
서버가, 대상특허문서를 제1 인공지능 모델에 입력하여 유사특허문서를 획득하는 단계;
상기 서버가, 상기 대상특허문서에 포함된 복수의 문장을 획득하고, 상기 유사특허문서에 포함된 복수의 문장을 획득하는 단계;
상기 서버가, 상기 대상특허문서에 포함된 복수의 문장 중 제1 문장을 획득하고, 상기 유사특허문서에 포함된 복수의 문장 중 제2 문장을 획득하는 단계;
상기 서버가, 상기 제1 문장 및 상기 제2 문장을 제2 인공지능 모델에 입력하여, 상기 제1 문장과 상기 제2 문장에 대한 평가 결과를 획득하는 단계; 를 포함하고,
상기 제1 문장과 상기 제2 문장에 대한 평가 결과를 획득하는 단계는,
상기 제1 문장 및 상기 제2 문장의 유사도 점수 및 비유사도 점수를 각각 획득하는 단계;
상기 비유사도 점수가 기 설정된 점수 이상인 경우, 상기 제1 문장과 상기 제2 문장은 관계없는 문장으로 판단하는 단계;
상기 유사도 점수가 기 설정된 점수 이상인 경우, 상기 제1 문장에 포함된 단어 세트 중 상기 제2 문장에 포함되지 않은 적어도 하나의 단어 세트를 획득하는 단계;
상기 제2 문장에 포함되지 않은 적어도 하나의 단어 세트 각각에 대한 적어도 중요도 점수를 획득하고, 상기 획득된 적어도 하나의 중요도 점수 중 기 설정된 중요도 점수 이상인 단어 세트가 존재하는지 여부를 판단하는 단계;
기 설정된 중요도 점수 이상인 단어 세트가 존재하지 않는 경우, 상기 제1 문장 및 상기 제2 문장을 일치 문장으로 판단하는 단계; 및
상기 기 설정된 중요도 점수 이상인 단어 세트가 존재하면, 상기 제1 문장 및 상기 제2 문장을 불일치 문장으로 판단하는 단계; 를 포함하는 특허문서의 유사도 판단 방법.
In the method for determining the degree of similarity of patent documents,
obtaining, by the server, a similar patent document by inputting the target patent document into the first artificial intelligence model;
obtaining, by the server, a plurality of sentences included in the target patent document, and acquiring a plurality of sentences included in the similar patent document;
obtaining, by the server, a first sentence among a plurality of sentences included in the target patent document, and acquiring a second sentence among a plurality of sentences included in the similar patent document;
inputting, by the server, the first sentence and the second sentence into a second artificial intelligence model, and obtaining evaluation results for the first sentence and the second sentence; including,
Acquiring the evaluation results for the first sentence and the second sentence comprises:
obtaining a similarity score and a dissimilarity score of the first sentence and the second sentence, respectively;
determining that the first sentence and the second sentence are unrelated sentences when the dissimilarity score is equal to or greater than a preset score;
obtaining at least one word set not included in the second sentence among the word sets included in the first sentence when the similarity score is equal to or greater than a preset score;
obtaining at least an importance score for each of at least one word set not included in the second sentence, and determining whether a word set equal to or greater than a preset importance score exists among the at least one obtained importance score;
determining the first sentence and the second sentence as matching sentences when there is no word set equal to or greater than a preset importance score; and
determining the first sentence and the second sentence as mismatched sentences when there is a set of words equal to or greater than the preset importance score; A method for determining the degree of similarity of a patent document comprising a.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200034426A KR102315214B1 (en) | 2019-10-02 | 2020-03-20 | Method, apparatus and system for determining similarity of patent documents using similarity scores and dissimilarity scores |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190122093A KR102095892B1 (en) | 2019-10-02 | 2019-10-02 | Method, apparatus and system for determining similarity of patent documents using artificial intelligence model |
KR1020200034426A KR102315214B1 (en) | 2019-10-02 | 2020-03-20 | Method, apparatus and system for determining similarity of patent documents using similarity scores and dissimilarity scores |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190122093A Division KR102095892B1 (en) | 2019-10-02 | 2019-10-02 | Method, apparatus and system for determining similarity of patent documents using artificial intelligence model |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210039915A KR20210039915A (en) | 2021-04-12 |
KR102315214B1 true KR102315214B1 (en) | 2021-10-20 |
Family
ID=75440101
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200034426A KR102315214B1 (en) | 2019-10-02 | 2020-03-20 | Method, apparatus and system for determining similarity of patent documents using similarity scores and dissimilarity scores |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102315214B1 (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101983752B1 (en) | 2018-12-28 | 2019-05-30 | 서울시립대학교 산학협력단 | Apparatus and method for automatic classification of document |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05174019A (en) * | 1991-12-20 | 1993-07-13 | Mitsubishi Electric Corp | Sentence evaluation system |
KR20180072167A (en) * | 2016-12-21 | 2018-06-29 | 특허법인 해담 | System for extracting similar patents and method thereof |
KR102025805B1 (en) | 2017-03-29 | 2019-11-12 | 중앙대학교 산학협력단 | Device and method for analyzing similarity of documents |
KR20190115319A (en) * | 2018-04-02 | 2019-10-11 | 필아이티 주식회사 | Mobile apparatus and method for classifying a sentence into a plurality of classes |
-
2020
- 2020-03-20 KR KR1020200034426A patent/KR102315214B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101983752B1 (en) | 2018-12-28 | 2019-05-30 | 서울시립대학교 산학협력단 | Apparatus and method for automatic classification of document |
Also Published As
Publication number | Publication date |
---|---|
KR20210039915A (en) | 2021-04-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102085217B1 (en) | Method, apparatus and system for determining similarity of patent documents | |
KR102095892B1 (en) | Method, apparatus and system for determining similarity of patent documents using artificial intelligence model | |
JP5281156B2 (en) | Annotating images | |
US11113323B2 (en) | Answer selection using a compare-aggregate model with language model and condensed similarity information from latent clustering | |
US10664719B2 (en) | Accurate tag relevance prediction for image search | |
Mhiri et al. | Word spotting and recognition via a joint deep embedding of image and text | |
Das et al. | A deep sign language recognition system for Indian sign language | |
KR102085214B1 (en) | Method and system for acquiring word set of patent document | |
KR102383965B1 (en) | Method, apparatus and system for determining similarity of patent documents based on similarity score and dissimilarity score | |
KR102315215B1 (en) | A method for obtaining a word set of a patent document and a method for determining similarity of a patent document based on the obtained word set | |
KR102405867B1 (en) | Method, apparatus and system for determining importance of patent documents using artificial intelligence model | |
CN108491375B (en) | Entity identification and linking system and method based on CN-DBpedia | |
KR20210039917A (en) | Method, apparatus and system for determining similarity of patent documents using artificial intelligence model | |
KR102315214B1 (en) | Method, apparatus and system for determining similarity of patent documents using similarity scores and dissimilarity scores | |
KR102315213B1 (en) | Method, apparatus and system for determining similarity of patent documents using clustering | |
Pinto et al. | What Drives Research Efforts? Find Scientific Claims that Count! | |
KR102263309B1 (en) | Method and system for acquiring word set of patent document using image information | |
KR20210044146A (en) | Method, apparatus and system for determining similarity of patent documents | |
KR102300352B1 (en) | Method, apparatus and system for determining similarity of patent documents based on importance score | |
KR20220109955A (en) | Ommited | |
KR20220109190A (en) | Ommited | |
CN112861974A (en) | Text classification method and device, electronic equipment and storage medium | |
KR102297962B1 (en) | Method and system for acquiring word set meaning information of patent document | |
KR102291930B1 (en) | Method and system for acquiring a word set of a patent document including a compound noun phrase | |
KR102255962B1 (en) | Method and system for acquiring word set of patent document using template information |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |