KR20190137008A - A method for classifying documents with detailed description - Google Patents

A method for classifying documents with detailed description Download PDF

Info

Publication number
KR20190137008A
KR20190137008A KR1020190064066A KR20190064066A KR20190137008A KR 20190137008 A KR20190137008 A KR 20190137008A KR 1020190064066 A KR1020190064066 A KR 1020190064066A KR 20190064066 A KR20190064066 A KR 20190064066A KR 20190137008 A KR20190137008 A KR 20190137008A
Authority
KR
South Korea
Prior art keywords
sentence
weight
document
word
neural network
Prior art date
Application number
KR1020190064066A
Other languages
Korean (ko)
Other versions
KR102264232B1 (en
Inventor
유태준
황이규
조면철
손동원
최홍섭
Original Assignee
주식회사 마인즈랩
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 마인즈랩 filed Critical 주식회사 마인즈랩
Publication of KR20190137008A publication Critical patent/KR20190137008A/en
Priority to KR1020200144584A priority Critical patent/KR102264234B1/en
Priority to KR1020200144583A priority patent/KR102264233B1/en
Application granted granted Critical
Publication of KR102264232B1 publication Critical patent/KR102264232B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/93Document management systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3347Query execution using vector based model
    • G06F17/2755
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/268Morphological analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The present invention relates to a method for classifying a document with a detailed description, capable of presenting a reason or basis of document classification. According to one embodiment of the present invention, the method for classifying a document with a detailed description comprises the following steps: dividing an input document into at least one sentence; dividing each of the at least one sentence into at least one word; using a trained first artificial neural network to generate a sentence feature value corresponding to each of the at least one sentence and a first weight value, which is a weight value of each of the at least one word included in each of the at least one sentence, from the at least one word with respect to each of the at least one sentence; using a trained second artificial neural network to generate a document feature value corresponding to the input document and a second weight, which is a weight value of each of the at least one sentence, from the sentence feature value with respect to each of the at least one sentence; generating classification information about classification of the input document based on the document feature value; and referring to at least one from the first and second weight values to generate description information including a reason for the classification.

Description

설명이 부가된 문서 분류 방법{A method for classifying documents with detailed description}A method for classifying documents with detailed description}

본 발명의 실시예들은 문서 분류 방법에 관한 것으로, 보다 상세하게는 문서 분류의 이유 및/또는 근거를 제시하는 문서 분류 방법에 관한 것이다.Embodiments of the present invention relate to a document classification method, and more particularly, to a document classification method that presents the reason and / or basis of document classification.

종래기술에 따른 문서 분류 엔진들은 다음과 같은 문제점 및/또는 한계점을 갖는다.The document classification engines according to the prior art have the following problems and / or limitations.

1) 분류한 결과를 설명해주지 않음1) Does not explain the classification result

딥러닝 기반 엔진들이 비판받는 가장 큰 이유 중 하나는 딥러닝 네트워크가 추론 결과에 대해 아무런 근거를 제시해주지 않는 블랙박스라는 인식이 있기 때문이다. One of the biggest reasons deep learning-based engines are criticized is that there is a perception that deep learning networks are black boxes that provide no evidence for inference results.

IBM CEO 지니 로메티가 "설명할 수 없는 AI라면 퇴출되어야 한다"고 까지 말할 정도로 설명 가능한 AI에 대한 요구는 지금의 인공지능 열풍에 대한 중대한 도전이라 할 수 있다. IBM's CEO, Gini Rometti, says that "if it's impossible to explain AI, it's going to be kicked out." The demand for explainable AI is a significant challenge to the AI craze.

대부분의 딥러닝 기반 엔진들이 그렇듯 딥러닝 기반 텍스트 분류기들 역시 분류 결과에 대한 이유나 근거를 전혀 설명해주지 않는다. Like most deep learning-based engines, deep learning-based text classifiers do not explain the reasons or basis for classification results.

물론 딥러닝 기반 텍스트 분류기들이 좋은 성능을 보이고 있지만, 실제로 텍스트 분석 영역에서는 결과에 대한 영감을 얻거나 모델을 개선하기 위해 데이터를 분석해보는 관점에서 볼 때 매우 제약이 크다. Of course, deep learning-based text classifiers perform well, but in the text analysis area, they are very limited in terms of analyzing the data to inspire results or improve the model.

2) 문장 단위가 아닌 문서 단위 분류가 어려움2) Difficulty in classifying documents rather than sentences

기존 딥러닝 기반 텍스트 분류 엔진들은 대부분 RNN 기반으로 작동하는데, LSTM이나 GRU 등 대표적인 RNN 기반 인공신경망이 긴 sequence를 잘 처리하지 못해서 문장 분류에는 문제가 없지만, 문서 분류에는 약점을 가지고 있다. Most existing deep learning-based text classification engines operate on the basis of RNN, and typical RNN-based neural networks, such as LSTM and GRU, do not handle long sequences well.

이는 연속된 Sequence의 길이가 길어질수록 앞쪽 sequence의 정보가 뒤쪽으로 잘 전파되지 않기 때문이며, 따라서 문서를 이어 붙여 하나의 문장으로 처리해서 인코딩하는 방식의 RNN 기반 텍스트 분류기들이 긴 문서를 제대로 분류하지 못하는 원인이 된다. This is because the information in the front sequence does not propagate backwards as the length of the sequence is longer. Therefore, RNN-based text classifiers that encode documents by concatenating them into one sentence may not classify long documents properly. Becomes

3) 분류 카테고리의 개수에 제약이 있음3) There is a limit on the number of categories

딥러닝 기반 텍스트 분류 엔진들의 또 다른 문제점으로 지적되는 점은 한 번에 분류하고자 하는 카테고리가 많을 경우 학습이 제대로 되지 않는 현상이다. 단 10개의 카테고리만 넘어가도 분류가 어려운 경우가 있는데, 이는 소위 말하는 Exploding Gradient 현상 때문이다. Gradient signal은 모든 Hidden state를 거치면서 시간/시퀀스 상 앞쪽으로 전달되게 되는데, parameter matrix를 계속해서 곱해가는 과정에서 가중치 행렬의 element가 1보다 큰 경우 gradient는 계속해서 커지게 되어 Exploding Gradient 현상이 나타나게 된다. 이는 기본적으로 많은 time step을 가지는 RNN 구조에서 흔히 나타날 수 있는 현상인데 특히 카테고리가 많을 경우 초기오차가 커 이런 현상이 일어날 가능성이 매우 높아진다.Another problem with deep learning-based text classification engines is that learning is difficult when there are many categories to be classified at once. If you go beyond just 10 categories, it is difficult to classify because of the so-called Exploding Gradient phenomenon. Gradient signal is transmitted forward in time / sequence through all hidden states.In the process of continuously multiplying the parameter matrix, when the elements of the weight matrix are larger than 1, the gradient continues to grow, resulting in the exploding gradient phenomenon. . This is a common phenomenon in the RNN structure that has many time steps. In particular, when there are many categories, the initial error is large, which is very likely to occur.

본 발명은 기계 학습의 한계로 지적되는 문제점인 결과에 대한 해석이 어렵다는 점을 극복하기 위해 텍스트 분류 결과의 이유 혹은 근거를 제시하고자 한다.The present invention intends to present the reason or basis of the text classification result in order to overcome the difficulty of interpreting the result, which is a problem indicated by the limitation of machine learning.

또한 본 발명은 단문이 아닌, 긴 문서를 보다 정확하게 분류하고자 한다.The present invention also seeks to more accurately classify long documents rather than short text.

본 발명의 일 실시예에 따른 설명이 부가된 문서 분류 방법은, 입력 문서를 적어도 하나의 문장으로 분리하는 단계; 상기 적어도 하나의 문장 각각을 적어도 하나의 단어로 분리하는 단계; 학습된 제1 인공 신경망을 이용하여, 상기 적어도 하나의 문장 각각에 대한 상기 적어도 하나의 단어로부터 상기 적어도 하나의 문장 각각에 대응되는 문장 특징값 및 상기 적어도 하나의 문장 각각에 포함된 적어도 하나의 단어 각각의 가중치인 제1 가중치를 생성하는 단계; 학습된 제2 인공 신경망을 이용하여, 상기 적어도 하나의 문장 각각에 대한 문장 특징값으로부터 상기 입력 문서에 대응되는 문서 특징값 및 상기 적어도 하나의 문장 각각의 가중치인 제2 가중치를 생성하는 단계; 상기 문서 특징값에 기초하여 상기 입력 문서의 분류에 관한 분류 정보를 생성하는 단계; 및 상기 제1 가중치 및 상기 제2 가중치 중 적어도 하나를 참조하여, 상기 분류의 이유를 포함하는 설명 정보를 생성하는 단계;를 포함할 수 있다.According to an embodiment of the present invention, a document classification method added with a description includes: separating an input document into at least one sentence; Separating each of the at least one sentence into at least one word; At least one word included in each of the at least one sentence and a sentence feature value corresponding to each of the at least one sentence from the at least one word for each of the at least one sentence, using the learned first artificial neural network Generating a first weight that is each weight; Using a learned second artificial neural network, generating from the sentence feature values for each of the at least one sentence a second weight value corresponding to the document feature value corresponding to the input document and the weight of each of the at least one sentence; Generating classification information regarding the classification of the input document based on the document feature value; And generating description information including a reason for the classification by referring to at least one of the first weight and the second weight.

상기 제1 인공 신경망은 문장 특징값이 표지된 적어도 하나의 제1 학습 데이터에 기반하여, 상기 제1 학습 데이터에 포함되는 학습 문장에 포함된 적어도 하나의 단어와 상기 문장 특징값 간의 상관관계 및 상기 학습 문장에 포함되는 적어도 하나의 단어와 상기 적어도 하나의 단어 각각의 가중치 간의 상관관계를 학습한 신경망일 수 있다.The first artificial neural network may be based on at least one first learning data labeled with a sentence feature value, and the correlation between the at least one word included in the learning sentence included in the first learning data and the sentence feature value and the The neural network may have learned a correlation between at least one word included in a learning sentence and a weight of each of the at least one word.

상기 제2 인공 신경망은 문서 특징값이 표지된 적어도 하나의 제2 학습 데이터에 기반하여, 상기 제2 학습 데이터에 포함되는 학습 문서에 포함된 적어도 하나의 문장과 상기 문서 특징값 간의 상관관계 및 상기 학습 문서에 포함되는 적어도 하나의 문장과 상기 적어도 하나의 문장 각각의 가중치 간의 상관관계를 학습한 신경망일 수 있다.The second artificial neural network is based on at least one second learning data labeled with a document feature value, and the correlation between the at least one sentence included in the learning document included in the second learning data and the document feature value and the The neural network may have learned a correlation between at least one sentence included in a learning document and a weight of each of the at least one sentence.

상기 분류 정보를 생성하는 단계는 상기 입력 문서를 복수의 분류 항목 중 어느 하나의 항목인 제1 항목으로 분류하고, 상기 설명 정보를 생성하는 단계는 상기 입력 문서를 상기 제1 항목으로 분류하는데 기여도가 높은 하나 이상의 단어를 결정하는 단계; 상기 입력 문서를 상기 제1 항목으로 분류하는데 기여도가 높은 하나 이상의 문장을 결정하는 단계;를 포함할 수 있다.The generating of the classification information may include classifying the input document into a first item which is any one of a plurality of classification items, and the generating of the description information may include contributing to classifying the input document into the first item. Determining one or more words high; And determining one or more sentences having a high contribution to classifying the input document as the first item.

상기 기여도가 높은 하나 이상의 단어를 결정하는 단계는 상기 제1 가중치를 참조하여, 제1 단어의 가중치를 결정하는 단계; 상기 제2 가중치를 참조하여, 상기 제1 단어가 포함된 문장의 가중치를 결정하는 단계; 및 상기 제1 단어의 가중치 및 상기 제1 단어가 포함된 문장의 가중치에 기초하여 상기 제1 단어의 기여도를 산출하는 단계;를 포함할 수 있다.The determining of the one or more words having a high contribution may include determining a weight of the first word by referring to the first weight; Determining a weight of a sentence including the first word by referring to the second weight; And calculating a contribution of the first word based on the weight of the first word and the weight of the sentence including the first word.

기여도가 높은 하나 이상의 문장을 결정하는 단계는 제1 문장에 포함된 하나 이상의 단어들의 제1 가중치를 참조하여, 상기 제1 문장의 제3 가중치를 결정하는 단계; 상기 제2 가중치를 참조하여, 제1 문장의 제4 가중치를 결정하는 단계; 및 제3 가중치 및 상기 제4 가중치에 기초하여 상기 제1 문장의 기여도를 산출하는 단계;를 포함할 수 있다.The determining of the one or more sentences with high contribution may include determining a third weight of the first sentence by referring to a first weight of one or more words included in the first sentence; Determining a fourth weight of the first sentence by referring to the second weight; And calculating a contribution of the first sentence based on a third weight and the fourth weight.

상기 설명이 부가된 문서 분류 방법은 상기 설명 정보를 생성하는 단계 이후에 상기 분류 정보와 함께 상기 설명 정보를 제공하는 단계;를 포함할 수 있다.The document classification method added with the description may include providing the description information together with the classification information after generating the description information.

본 발명에 따르면 문서의 분류의 이유 혹은 근거를 제시할 수 있다.According to the present invention, the reason or basis of the classification of documents can be presented.

또한 단문이 아닌, 긴 문서를 보다 정확하게 분류할 수 있다.You can also classify long documents rather than short text more accurately.

도 1은 본 발명의 일 실시예에 따른 문서 분류 시스템의 구성을 개략적으로 도시한 도면이다.
도 2는 본 발명의 일 실시예에 따른 서버(100)에 구비되는 문서 분류 장치(110)의 구성을 개략적으로 도시한 도면이다.
도 3은 본 발명의 문서 분류 장치(110)에 의해 학습되는 인공 신경망의 예시적인 구조를 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시예에 따른 제어부(112)가 입력 문서(510)로부터 적어도 하나의 문장(520) 및 적어도 하나의 단어(530)를 분리하는 과정을 설명하기 위한 도면이다.
도 5는 제어부(112)가 도 4의 첫 번째 문장(521)의 특징값(S_Feature_1) 및 제1 가중치(W1_1)를 생성하는 과정을 설명하기 위한 도면이다.
도 6은 제어부(112)가 입력 문서의 특징값(D_Feature) 및 제2 가중치(W2)를 생성하는 과정을 설명하기 위한 도면이다.
도 7은 본 발명의 일 실시예에 따른 제어부(112)가 설명 정보를 생성하는 과정을 설명하기 위한 도면이다.
도 8은 본 발명의 일 실시예에 따른 문서 분류 장치(110)에 의해 수행되는 문서 분류 방법을 설명하기 위한 흐름도이다.
도 9은 본 발명의 일 실시예에 따라 분류 정보 및 설명 정보가 사용자 단말(200)에 표시된 화면(610)의 예시이다.
1 is a view schematically showing the configuration of a document classification system according to an embodiment of the present invention.
2 is a diagram schematically illustrating a configuration of a document classification apparatus 110 included in the server 100 according to an embodiment of the present invention.
3 is a diagram for explaining an exemplary structure of an artificial neural network learned by the document classification apparatus 110 of the present invention.
4 is a diagram for describing a process of the control unit 112 separating at least one sentence 520 and at least one word 530 from the input document 510 according to an embodiment of the present invention.
FIG. 5 is a diagram for describing a process of the controller 112 generating a feature value S_Feature_1 and a first weight W1_1 of the first sentence 521 of FIG. 4.
FIG. 6 is a diagram for describing a process of the controller 112 generating a feature value D_Feature and a second weight W2 of an input document.
7 is a diagram for describing a process of generating description information by the control unit 112 according to an embodiment of the present invention.
8 is a flowchart illustrating a document classification method performed by the document classification apparatus 110 according to an embodiment of the present invention.
9 is an example of a screen 610 in which classification information and description information are displayed on a user terminal 200 according to an embodiment of the present invention.

본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 본 발명의 효과 및 특징, 그리고 그것들을 달성하는 방법은 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 다양한 형태로 구현될 수 있다. As the invention allows for various changes and numerous embodiments, particular embodiments will be illustrated in the drawings and described in detail in the written description. Effects and features of the present invention, and methods of achieving them will be apparent with reference to the embodiments described below in detail together with the drawings. However, the present invention is not limited to the embodiments disclosed below but may be implemented in various forms.

이하, 첨부된 도면을 참조하여 본 발명의 실시예들을 상세히 설명하기로 하며, 도면을 참조하여 설명할 때 동일하거나 대응하는 구성 요소는 동일한 도면부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings, and the same or corresponding components will be denoted by the same reference numerals, and redundant description thereof will be omitted. .

이하의 실시예에서, 제1, 제2 등의 용어는 한정적인 의미가 아니라 하나의 구성 요소를 다른 구성 요소와 구별하는 목적으로 사용되었다. 이하의 실시예에서, 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 이하의 실시예에서, 포함하다 또는 가지다 등의 용어는 명세서상에 기재된 특징, 또는 구성요소가 존재함을 의미하는 것이고, 하나 이상의 다른 특징들 또는 구성요소가 부가될 가능성을 미리 배제하는 것은 아니다. 도면에서는 설명의 편의를 위하여 구성 요소들이 그 크기가 과장 또는 축소될 수 있다. 예컨대, 도면에서 나타난 각 구성의 크기 및 형태는 설명의 편의를 위해 임의로 나타내었으므로, 본 발명이 반드시 도시된 바에 한정되지 않는다. In the following embodiments, the terms first, second, etc. are used for the purpose of distinguishing one component from other components rather than a restrictive meaning. In the following examples, the singular forms “a”, “an” and “the” include plural forms unless the context clearly indicates otherwise. In the following examples, the terms including or having have meant that there is a feature or component described in the specification and does not preclude the possibility of adding one or more other features or components. In the drawings, components may be exaggerated or reduced in size for convenience of description. For example, the size and shape of each component shown in the drawings are arbitrarily shown for convenience of description, and thus the present invention is not necessarily limited to the illustrated.

도 1은 본 발명의 일 실시예에 따른 문서 분류 시스템의 구성을 개략적으로 도시한 도면이다.1 is a view schematically showing the configuration of a document classification system according to an embodiment of the present invention.

도 1을 참조하면 본 발명의 일 실시예에 따른 문서 분류 시스템은 서버(100), 사용자 단말(200) 및 통신망(400)을 포함할 수 있다.Referring to FIG. 1, a document classification system according to an embodiment of the present invention may include a server 100, a user terminal 200, and a communication network 400.

본 발명의 일 실시예에 따른 문서 분류 시스템은 학습된 인공 신경망을 이용하여 문서를 분류하고, 문서를 분류의 이유(또는 설명)를 포함하는 설명 정보를 제공할 수 있다.The document classification system according to an embodiment of the present invention may classify documents using the learned artificial neural network, and provide description information including a reason (or description) of classification of the documents.

본 발명에서 제1 인공 신경망 및 제2 인공 신경망과 같은 '인공 신경망'은 문서의 분류를 위해 머신 러닝(Machine Learning) 또는 딥러닝(Deep Learning) 기법으로 학습된 신경망을 의미할 수 있다. 이와 같은 인공 신경망의 구조에 대해서는 도 3을 참조하여 후술한다.In the present invention, the 'artificial neural network' such as the first artificial neural network and the second artificial neural network may refer to neural networks learned by machine learning or deep learning techniques for classifying documents. The structure of such an artificial neural network will be described later with reference to FIG. 3.

본 발명의 일 실시예에 따른 사용자 단말(200)은 사용자가 서버(100)에 의해 제공되는 다양한 서비스를 이용할 수 있도록 사용자와 서버(100)를 매개하는 다양한 형태의 장치를 의미할 수 있다. The user terminal 200 according to an embodiment of the present invention may refer to various types of apparatuses that mediate the user and the server 100 so that the user can use various services provided by the server 100.

바꾸어 말하면, 본 발명의 일 실시예에 따른 사용자 단말(200)은 서버(100)와 데이터를 송수신 하는 다양한 장치를 의미할 수 있다.In other words, the user terminal 200 according to an embodiment of the present invention may mean various devices for transmitting and receiving data with the server 100.

이와 같은 사용자 단말(200)은 도 1에 도시된 바와 같이, 휴대용 단말(201, 202, 203)을 의미할 수도 있고, 컴퓨터(204)를 의미할 수도 있다. As shown in FIG. 1, the user terminal 200 may mean a portable terminal 201, 202, or 203, or may mean a computer 204.

한편 사용자 단말(200)은 상술한 기능을 수행하기 위해 콘텐츠 등을 표시하기 위한 표시수단, 이러한 콘텐츠에 대한 사용자의 입력을 획득하기 위한 입력수단을 구비할 수 있다. 이 때 입력수단 및 표시수단은 다양하게 구성될 수 있다. 가령 입력수단은 키보드, 마우스, 트랙볼, 마이크, 버튼, 터치패널 등을 포함할 수 있으나 이에 한정되지 않는다. On the other hand, the user terminal 200 may be provided with display means for displaying the content, etc. to perform the above-described functions, input means for obtaining a user input for such content. In this case, the input means and the display means may be configured in various ways. For example, the input means may include a keyboard, a mouse, a trackball, a microphone, a button, a touch panel, and the like, but is not limited thereto.

본 발명의 일 실시예에 따른 통신망(400)은 문서 분류 시스템의 각 구성 간의 데이터 송수신을 매개하는 통신망을 의미할 수 있다. 가령 통신망(400)은 LANs(Local Area Networks), WANs(Wide Area Networks), MANs(Metropolitan Area Networks), ISDNs(Integrated Service Digital Networks) 등의 유선 네트워크나, 무선 LANs, CDMA, 블루투스, 위성 통신 등의 무선 네트워크를 망라할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.The communication network 400 according to an embodiment of the present invention may refer to a communication network that mediates data transmission and reception between respective components of the document classification system. For example, the communication network 400 may be a wired network such as Local Area Networks (LANs), Wide Area Networks (WANs), Metropolitan Area Networks (MANs), or Integrated Service Digital Networks (ISDNs), or wireless LANs, CDMA, Bluetooth, satellite communications, and the like. Although it may encompass a wireless network, the scope of the present invention is not limited thereto.

본 발명의 일 실시예에 따른 서버(100)는 학습된 인공 신경망을 이용하여 문서를 분류하고, 문서를 분류의 이유를 포함하는 설명 정보를 제공할 수 있다. 이를 위해 서버(100)는 본 발명의 일 실시예에 따른 문서 분류 장치를 포함할 수 있다.The server 100 according to an embodiment of the present invention may classify documents using the learned artificial neural network, and provide description information including the reason for classifying the documents. To this end, the server 100 may include a document classification apparatus according to an embodiment of the present invention.

도 2는 본 발명의 일 실시예에 따른 서버(100)에 구비되는 문서 분류 장치(110)의 구성을 개략적으로 도시한 도면이다.2 is a diagram schematically illustrating a configuration of a document classification apparatus 110 included in the server 100 according to an embodiment of the present invention.

도 2를 참조하면, 본 발명의 일 실시예에 따른 문서 분류 장치(110)는 통신부(111), 제어부(112) 및 메모리(113)를 포함할 수 있다. 또한 도면에는 도시되지 않았으나, 본 실시예에 따른 문서 분류 장치(110)는 입/출력부, 프로그램 저장부 등을 더 포함할 수 있다. 2, the document classification apparatus 110 according to an embodiment of the present invention may include a communication unit 111, a control unit 112, and a memory 113. In addition, although not shown in the drawings, the document classification apparatus 110 according to the present embodiment may further include an input / output unit, a program storage unit, and the like.

통신부(111)는 문서 분류 장치(110)가 사용자 단말(200)과 같은 다른 네트워크 장치와 유무선 연결을 통해 제어 신호 또는 데이터 신호와 같은 신호를 송수신하기 위해 필요한 하드웨어 및 소프트웨어를 포함하는 장치일 수 있다. The communication unit 111 may be a device including hardware and software necessary for the document classification device 110 to transmit and receive a signal such as a control signal or a data signal through a wired or wireless connection with another network device such as the user terminal 200. .

제어부(112)는 프로세서(Processor)와 같이 데이터를 처리할 수 있는 모든 종류의 장치를 포함할 수 있다. 여기서, '프로세서(Processor)'는, 예를 들어 프로그램 내에 포함된 코드 또는 명령으로 표현된 기능을 수행하기 위해 물리적으로 구조화된 회로를 갖는, 하드웨어에 내장된 데이터 처리 장치를 의미할 수 있다. 이와 같이 하드웨어에 내장된 데이터 처리 장치의 일 예로써, 마이크로프로세서(Microprocessor), 중앙처리장치(Central Processing Unit: CPU), 프로세서 코어(Processor Core), 멀티프로세서(Multiprocessor), ASIC(Application-Specific Integrated Circuit), FPGA(Field Programmable Gate Array) 등의 처리 장치를 망라할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.The controller 112 may include all kinds of devices capable of processing data, such as a processor. Here, 'processor' may refer to a data processing apparatus embedded in hardware, for example, having a physically structured circuit for performing a function represented by code or instructions included in a program. As an example of the data processing unit embedded in the hardware, a microprocessor, a central processing unit (CPU), a processor core, a multiprocessor, and an application-specific integrated (ASIC) Circuits, field programmable gate arrays (FPGAs), and the like, but may include a processing device, but the scope of the present invention is not limited thereto.

메모리(113)는 문서 분류 장치(110)가 처리하는 데이터를 일시적 또는 영구적으로 저장하는 기능을 수행한다. 가령 메모리(113)는 제1 신경망 및 제2 신경망을 구성하는 데이터들(가령 계수들)을 일시적 및/또는 영구적으로 저장할 수 있다. 물론 메모리(113)는 제1 신경망과 제2 신경망을 학습하기 위한 학습 데이터도 저장할 수 있다. 다만 이는 예시적인것으로 본 발명의 사상이 이에 한정되는 것은 아니다.The memory 113 performs a function of temporarily or permanently storing data processed by the document classification apparatus 110. For example, the memory 113 may temporarily and / or permanently store data (eg, coefficients) constituting the first neural network and the second neural network. Of course, the memory 113 may also store training data for learning the first neural network and the second neural network. However, this is merely illustrative and the spirit of the present invention is not limited thereto.

메모리는 자기 저장 매체(Magnetic Storage Media) 또는 플래시 저장 매체(Flash Storage Media)를 포함할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다. The memory may include a magnetic storage medium or a flash storage medium, but the scope of the present invention is not limited thereto.

도 3은 본 발명의 문서 분류 장치(110)에 의해 학습되는 인공 신경망의 예시적인 구조를 설명하기 위한 도면이다.3 is a diagram for explaining an exemplary structure of an artificial neural network learned by the document classification apparatus 110 of the present invention.

본 발명의 일 실시예에 따른 인공 신경망은 도 3에 도시된 바와 같은 순환 인공 신경망(Recurrent Neural Network, RNN) 모델에 따른 인공 신경망에 가중치를 생성하기 위한 가중치 레이어(L4)를 더 포함하는 구조일 수 있다.Artificial neural network according to an embodiment of the present invention is a structure further comprising a weighting layer (L4) for generating a weight in the artificial neural network according to the cyclic artificial neural network (Recurrent Neural Network, RNN) model as shown in FIG. Can be.

도 3을 참조하면 순환 인공 신경망 모델에 따른 인공 신경망은 적어도 하나의 입력 노드(N1)를 포함하는 입력 레이어(L1), 복수의 히든 노드(N2)를 포함하는 히든 레이어(L2) 및 적어도 하나의 출력 노드(N3)를 포함하는 출력 레이어(L3)를 포함할 수 있다. Referring to FIG. 3, the artificial neural network according to the cyclic artificial neural network model includes an input layer L1 including at least one input node N1, a hidden layer L2 including a plurality of hidden nodes N2, and at least one It may include an output layer L3 including an output node N3.

이때 입력 레이어(L1)의 적어도 하나의 입력 노드(N1)에는 제어부(112)가 획득한 입력 데이터에 대응되는 값들이 입력될 수 있다. 가령 입력 노드(N1)에는 하나의 문장으로부터 생성된 적어도 하나의 단어에 대응되는 값(또는 벡터)이 입력될 수도 있고, 하나의 입력 문서로부터 생성된 적어도 하나의 문장들에 대응되는 문장 특징값(또는 벡터)이 입력될 수도 있다.In this case, values corresponding to input data acquired by the controller 112 may be input to at least one input node N1 of the input layer L1. For example, a value (or vector) corresponding to at least one word generated from one sentence may be input to the input node N1, and a sentence feature value corresponding to at least one sentence generated from one input document ( Or a vector) may be input.

히든 레이어(L2)는 도시된 바와 같이 전체적으로 연결된(Fully Connected) 하나 이상의 레이어를 포함할 수 있다. 히든 레이어(L2)가 복수의 레이어를 포함하는 경우, 인공 신경망은 각각의 히든 레이어 사이의 관계를 정의하는 함수(미도시)를 포함할 수 있다.The hidden layer L2 may include one or more layers that are fully connected as shown. When the hidden layer L2 includes a plurality of layers, the artificial neural network may include a function (not shown) that defines a relationship between each hidden layer.

출력 레이어(L3)의 적어도 하나의 출력 노드(N3)는 제어부(112)의 제어에 따라 인공 신경망이 입력 레이어(L1)의 입력 값으로부터 생성한 출력 값을 포함할 수 있다. 가령 입력 레이어(L1)에 하나의 문장으로부터 생성된 적어도 하나의 단어들에 대응되는 값이 입력된 경우, 출력 레이어(L3)에는 문장 특징값이 포함될 수 있다. 물론 입력 레이어(L1)에 하나의 입력 문서로부터 생성된 적어도 하나의 문장들에 대응되는 문장 특징값(또는 벡터)이 입력된 경우, 출력 레이어(L3)에는 문서 특징값이 포함될 수 있다. At least one output node N3 of the output layer L3 may include an output value generated by the artificial neural network from an input value of the input layer L1 under the control of the controller 112. For example, when a value corresponding to at least one word generated from one sentence is input to the input layer L1, the sentence feature value may be included in the output layer L3. Of course, when a sentence feature value (or vector) corresponding to at least one sentence generated from one input document is input to the input layer L1, the document feature value may be included in the output layer L3.

가중치 레이어(L4)의 적어도 하나의 출력 노드(N4)는 제어부(112)의 제어에 따라 인공 신경망이 입력 레이어에 입력된 복수의 항목들 각각에 대해 산출한 가중치를 포함할 수 있다. 가령 입력 레이어(L1)에 하나의 문장으로부터 생성된 적어도 하나의 단어들에 대응되는 값이 입력된 경우, 가중치 레이어(L4)에는 적어도 하나의 단어들 각각의 가중치가 포함될 수 있다. 이때 가중치 레이어(L4)에 포함되는 가중치는 적어도 하나의 단어 각각이 출력 레이어(L3)의 문장 특징값을 생성하는데 기여한 정도를 의미할 수 있다. At least one output node N4 of the weight layer L4 may include a weight calculated by the artificial neural network for each of the plurality of items input to the input layer under the control of the controller 112. For example, when a value corresponding to at least one word generated from one sentence is input to the input layer L1, the weight layer L4 may include a weight of each of the at least one words. In this case, the weight included in the weight layer L4 may mean the degree to which each of the at least one word contributes to generating the sentence feature value of the output layer L3.

물론 입력 레이어(L1)에 하나의 입력 문서로부터 생성된 적어도 하나의 문장들에 대응되는 문장 특징값이 입력된 경우, 가중치 레이어(L4)에는 적어도 하나의 문장들 각각의 가중치가 포함될 수 있다. 이때 가중치 레이어(L4)에 포함되는 가중치는 적어도 하나의 문장 각각이 출력 레이어(L3)의 문서 특징값을 생성하는데 기여한 정도를 의미할 수 있다.Of course, when a sentence feature value corresponding to at least one sentence generated from one input document is input to the input layer L1, the weight layer L4 may include a weight of each of the at least one sentence. In this case, the weight included in the weight layer L4 may mean the degree to which each of the at least one sentence contributes to generating the document feature value of the output layer L3.

도 3에서는 이와 같은 가중치 레이어(L4)가 출력 레이어(L3) 이후에 배치되는 것으로 되시되었지만, 이는 예시적인것으로 가중치 레이어(L4)의 위치는 이에 한정되는 것이 아니다. In FIG. 3, it is assumed that such a weight layer L4 is disposed after the output layer L3, but the position of the weight layer L4 is not limited thereto.

가중치 레이어(L4)는 하나 이상의 레이어로 구성될 수도 있고, 도 3에 도시된 바와 같이 단일 레이어로 구성될 수도 있다. The weight layer L4 may be composed of one or more layers, or may be composed of a single layer as shown in FIG. 3.

한편 각 레이어의 각 노드에 포함되는 값은 벡터일 수 있다. 또한 각 노드는 해당 노드의 중요도에 대응되는 가중치를 포함할 수도 있다.Meanwhile, the value included in each node of each layer may be a vector. In addition, each node may include a weight corresponding to the importance of the node.

인공 신경망은 입력 레이어(L1)와 히든 레이어(L2)의 관계를 정의하는 제1 함수(F1) 및 히든 레이어(L2)와 출력 레이어(L3)의 관계를 정의하는 제2 함수(F2)를 포함할 수 있다. 물론 인공 신경망은 출력 레이어(L3)와 가중치 레이어(L4)의 관계를 정의하는 함수(미도시)를 더 포함할 수도 있다.The artificial neural network includes a first function F1 that defines a relationship between an input layer L1 and a hidden layer L2, and a second function F2 that defines a relationship between a hidden layer L2 and an output layer L3. can do. Of course, the artificial neural network may further include a function (not shown) defining a relationship between the output layer L3 and the weight layer L4.

제1 함수(F1)는 입력 레이어(L1)에 포함되는 입력 노드(N1)와 히든 레이어(L2)에 포함되는 히든 노드(N2)간의 연결관계를 정의할 수 있다. 이와 유사하게, 제2 함수(F2)는 히든 레이어(L2)에 포함되는 히든 노드(N2)와 출력 레이어(L2)에 포함되는 출력 노드(N2)간의 연결관계를 정의할 수 있다.The first function F1 may define a connection relationship between the input node N1 included in the input layer L1 and the hidden node N2 included in the hidden layer L2. Similarly, the second function F2 may define a connection relationship between the hidden node N2 included in the hidden layer L2 and the output node N2 included in the output layer L2.

이와 같은 제1 함수(F1), 제2 함수(F2), 히든 레이어 사이의 함수들 및 출력 레이어(L3)와 가중치 레이어(L4)의 관계를 정의하는 함수들은 이전 노드의 입력에 기초하여 결과물을 출력하는 순환 인공 신경망 모델을 포함할 수 있다.The first function F1, the second function F2, the functions between the hidden layer, and the functions defining the relationship between the output layer L3 and the weight layer L4 are based on the input of the previous node. It may include a cyclic artificial neural network model to output.

제어부(112)에 의해 인공 신경망이 학습되는 과정에서, 복수의 학습 데이터(또는 전처리된 학습 데이터)에 기초하여 상술한 함수들이 학습될 수 있다.In the process of training the artificial neural network by the controller 112, the above-described functions may be learned based on a plurality of learning data (or preprocessed learning data).

본 발명의 일 실시예에 따른 인공 신경망은 표지(Labeled)된 학습 데이터를 기반으로 지도학습(Supervised Learning) 방식으로 학습될 수 있다. 이때 가중치 레이어(L4)에 출력되는 가중치들은 비지도 방식으로 학습될 수도 있다.An artificial neural network according to an embodiment of the present invention may be learned in a supervised learning manner based on labeled learning data. At this time, the weights output to the weight layer L4 may be learned in an unsupervised manner.

본 발명의 일 실시예에 따른 제어부(112)는 복수의 학습 데이터를 이용하여, 어느 하나의 입력 데이터를 인공 신경망에 입력하여 생성된 출력 값이 해당 학습 데이터에 표지된 값에 근접하도록 전술한 함수들을 갱신하는 과정을 반복하여 수행함으로써 인공 신경망을 학습시킬 수 있다. The controller 112 according to an embodiment of the present invention uses the plurality of learning data to input an input data into an artificial neural network so that an output value generated by the controller 112 is close to a value marked on the corresponding learning data. The neural network can be trained by repeating the process of updating them.

이때 본 발명의 일 실시예에 따른 제어부(112)는 역전파(Back Propagation) 알고리즘에 따라 전술한 함수들을 갱신할 수 있다. 다만 이는 예시적인 것으로 본 발명의 사상이 이에 한정되는 것은 아니다.At this time, the control unit 112 according to an embodiment of the present invention may update the above-described functions according to a back propagation algorithm. However, this is merely exemplary and the spirit of the present invention is not limited thereto.

한편 도 3 및 도 4에서 설명한 인공 신경망의 종류 및/또는 구조는 예시적인 것으로 본 발명의 사상이 이에 한정되는 것은 아니다. 따라서 다양한 종류의 모델의 인공 신경망이 명세서를 통하여 설명하는 '인공 신경망'에 해당할 수 있다.Meanwhile, the type and / or structure of the artificial neural network described with reference to FIGS. 3 and 4 are exemplary and the spirit of the present invention is not limited thereto. Therefore, artificial neural networks of various kinds of models may correspond to 'artificial neural networks' described through the specification.

본 발명에서 '제1 인공 신경망'은 하나의 문장을 구성하는 하나 이상의 단어들로부터 해당 문장의 특징값을 생성하고, 각 단어들의 가중치를 생성하도록 학습된 신경망일 수 있다. 이와 같은 제1 인공 신경망은 문장 특징값이 표지된 적어도 하나의 제1 학습 데이터에 기반하여, 제1 학습 데이터에 포함되는 학습 문장에 포함된 적어도 하나의 단어와 문장 특징값 간의 상관관계를 학습한 신경망일 수 있다. 또한 제1 인공 신경망은 학습 문장에 포함되는 적어도 하나의 단어와 적어도 하나의 단어 각각의 가중치 간의 상관관계를 학습한 신경망일 수 있다.In the present invention, the 'first artificial neural network' may be a neural network trained to generate a feature value of a sentence from one or more words constituting a sentence and to generate weights of the words. The first artificial neural network learns a correlation between at least one word included in a learning sentence included in the first learning data and a sentence feature value based on at least one first learning data labeled with a sentence feature value. It may be a neural network. In addition, the first artificial neural network may be a neural network that has learned a correlation between at least one word included in the learning sentence and weights of the at least one word.

본 발명에서 '제2 인공 신경망'은 하나의 문서를 구성하는 하나 이상의 문장들로부터 해당 문서의 특징값을 생성하고, 각 문장들의 가중치를 생성하도록 학습된 신경망일 수 있다. 이와 같은 제2 인공 신경망은 문서 특징값이 표지된 적어도 하나의 제2 학습 데이터에 기반하여, 제2 학습 데이터에 포함되는 학습 문서에 포함된 적어도 하나의 문장과 상기 문서 특징값 간의 상관관계를 학습한 신경망일 수 있다. 또한 제2 인공 신경망은 학습 문서에 포함되는 적어도 하나의 문장과 적어도 하나의 문장 각각의 가중치 간의 상관관계를 학습한 신경망일 수 있다.In the present invention, the 'second artificial neural network' may be a neural network learned to generate a feature value of a corresponding document from one or more sentences constituting one document and to generate weights of the respective sentences. The second artificial neural network learns a correlation between at least one sentence included in the learning document included in the second learning data and the document feature value based on the at least one second learning data labeled with the document feature value. It can be a neural network. Also, the second artificial neural network may be a neural network that has learned a correlation between at least one sentence included in the learning document and a weight of each of the at least one sentence.

한편 본 발명에서 '문서'는 텍스트를 포함하는 콘텐츠를 의미할 수 있다. 이때 문서는 텍스트만을 포함할 수도 있고, 텍스트 이외에 다른 유형의 개체(예를 들어 이미지, 영상 등)를 더 포함할 수도 있다. 문서가 텍스트 외에 다른 유형의 개체를 포함하는 경우, 제어부(112)는 문서에 포함된 텍스트만을 고려하여 문서를 분류할 수 있다.Meanwhile, in the present invention, 'document' may mean content including text. In this case, the document may include only text or may further include other types of objects (for example, images and images) in addition to the text. If the document includes other types of objects in addition to the text, the controller 112 may classify the document in consideration of only the text included in the document.

이하에서는 제1 인공 신경망이 제1 학습 데이터로, 제2 인공 신경망이 제2 학습 데이터로 학습이 되어 있음을 전제로, 도 4 내지 도 6을 함께 참조하여 제어부(112)의 동작을 설명한다.Hereinafter, the operation of the controller 112 will be described with reference to FIGS. 4 to 6, assuming that the first artificial neural network is trained with the first training data and the second artificial neural network is trained with the second training data.

본 발명의 일 실시예에 따른 제어부(112)는 입력 문서를 문장 단위로 분리하여 적어도 하나의 문장을 생성할 수 있다. 또한 제어부(112)는 생성된 적어도 하나의 문장 각각을 단어 단위로 분리하여 적어도 하나의 단어를 생성할 수 있다.The controller 112 according to an embodiment of the present invention may generate at least one sentence by dividing the input document into sentence units. In addition, the controller 112 may generate at least one word by separating each of the generated at least one sentence in word units.

도 4는 본 발명의 일 실시예에 따른 제어부(112)가 입력 문서(510)로부터 적어도 하나의 문장(520) 및 적어도 하나의 단어(530)를 분리하는 과정을 설명하기 위한 도면이다.4 is a diagram for describing a process of the control unit 112 separating at least one sentence 520 and at least one word 530 from the input document 510 according to an embodiment of the present invention.

설명의 편의를 위해서 입력 문서(510)는 영화 후기에 관한 것으로, 도 4에 도시된 바와 같이 3개의 문장으로 구성되는 것을 전제로 설명한다. For convenience of explanation, the input document 510 is related to a later movie, and is described on the premise that it is composed of three sentences as shown in FIG. 4.

상술한 전제 하에 본 발명의 일 실시예에 따른 제어부(112)는 입력 문서(510)를 첫 번째 문장(521), 두 번째 문장(522) 및 세 번째 문장(523)으로 분리할 수 있다.Under the above-described assumption, the controller 112 according to an embodiment of the present invention may divide the input document 510 into a first sentence 521, a second sentence 522, and a third sentence 523.

이어서 본 발명의 일 실시예에 따른 제어부(112)는 첫 번째 문장(521)을 하나 이상의 단어(531)로 분리할 수 있고, 나머지 문장(522, 523)도 이와 유사하게 단어(532, 533)로 분리할 수 있다.Subsequently, the controller 112 may divide the first sentence 521 into one or more words 531, and similarly, the remaining sentences 522 and 523 may include the words 532 and 533. Can be separated.

본 발명의 일 실시예에 따른 제어부(112)는 학습된 제1 인공 신경망을 이용하여, 개별 문장 마다 문장 특징값 및 문장에 포함되는 단어 각각의 가중치인 제1 가중치를 생성할 수 있다.The controller 112 according to an embodiment of the present invention may generate a first weight that is a weight of each sentence feature value and a word included in each sentence by using the learned first artificial neural network.

전술한 바와 같이 제1 인공 신경망은 문장 특징값이 표지된 적어도 하나의 제1 학습 데이터에 기반하여, 제1 학습 데이터에 포함되는 학습 문장에 포함된 적어도 하나의 단어와 문장 특징값 간의 상관관계를 학습한 신경망일 수 있다. 또한 제1 인공 신경망은 학습 문장에 포함되는 적어도 하나의 단어와 적어도 하나의 단어 각각의 가중치 간의 상관관계를 학습한 신경망일 수 있다. 따라서 제1 인공 신경망에 문장을 구성하는 적어도 하나의 단어를 입력하고, 이에 대한 응답으로 문장 특징값 및 각각의 단어에 대한 가중치를 획득할 수 있다.As described above, the first artificial neural network based on the at least one first learning data labeled with a sentence feature value, performs correlation between at least one word included in the learning sentence included in the first learning data and the sentence feature value. It can be a learned neural network. Also, the first artificial neural network may be a neural network that has learned a correlation between at least one word included in the learning sentence and a weight of each of the at least one word. Accordingly, at least one word constituting a sentence may be input to the first artificial neural network, and in response thereto, a sentence feature value and a weight for each word may be obtained.

도 5는 제어부(112)가 도 4의 첫 번째 문장(521)의 특징값(S_Feature_1) 및 제1 가중치(W1_1)를 생성하는 과정을 설명하기 위한 도면이다.FIG. 5 is a diagram for describing a process of the controller 112 generating a feature value S_Feature_1 and a first weight W1_1 of the first sentence 521 of FIG. 4.

제어부(112)는 제1 인공 신경망(NN1)에 첫 번째 문장(521)으로부터 분리된 하나 이상의 단어(531)를 입력하고, 이에 대한 응답으로 특징값(S_Feature_1) 및 제1 가중치(W1_1)를 획득할 수 있다. 이때 특징값(S_Feature_1)은 문장의 특징을 반영한 값을 포함할 수 있고, 제1 가중치(W1_1)는 특징값(S_Feature_1)의 결정에 각 단어가 기여한 정도를 포함할 수 있다.The controller 112 inputs one or more words 531 separated from the first sentence 521 into the first artificial neural network NN1, and obtains the feature value S_Feature_1 and the first weight W1_1 in response thereto. can do. In this case, the feature value S_Feature_1 may include a value reflecting the feature of the sentence, and the first weight W1_1 may include the degree that each word contributes to the determination of the feature value S_Feature_1.

이와 유사하게 제어부(112)는 나머지 문장(522, 523)에 대해서도 특징값(S_Feature_2, S_Feature_3) 및 제1 가중치(미도시)를 산출할 수 있다.Similarly, the controller 112 may calculate the feature values S_Feature_2 and S_Feature_3 and the first weight (not shown) for the remaining sentences 522 and 523.

본 발명의 일 실시예에 따른 제어부(112)는 학습된 제2 인공 신경망(NN2)을 이용하여, 입력 문서의 문서 특징값(D_Feature) 및 문서(510)에 포함되는 문장(521, 522, 523) 각각의 가중치인 제2 가중치(W2)를 생성할 수 있다.The control unit 112 according to an embodiment of the present invention uses the learned second artificial neural network NN2 to output the document feature value D_Feature of the input document and the sentences 521, 522, and 523 included in the document 510. The second weight W2 which is each weight may be generated.

이때 제2 인공 신경망(NN2)은 전술한 바와 같이 문서 특징값이 표지된 적어도 하나의 제2 학습 데이터에 기반하여, 제2 학습 데이터에 포함되는 학습 문서에 포함된 적어도 하나의 문장과 상기 문서 특징값 간의 상관관계를 학습한 신경망일 수 있다. 또한 제2 인공 신경망(NN2)은 학습 문서에 포함되는 적어도 하나의 문장과 적어도 하나의 문장 각각의 가중치 간의 상관관계를 학습한 신경망일 수 있다.In this case, the second artificial neural network NN2 includes at least one sentence and the document feature included in the learning document included in the second learning data based on the at least one second learning data labeled with the document feature value as described above. It can be a neural network that learned the correlation between values. In addition, the second artificial neural network NN2 may be a neural network that has learned a correlation between at least one sentence included in the learning document and a weight of each of the at least one sentence.

도 6은 제어부(112)가 입력 문서의 특징값(D_Feature) 및 제2 가중치(W2)를 생성하는 과정을 설명하기 위한 도면이다.FIG. 6 is a diagram for describing a process of the controller 112 generating a feature value D_Feature and a second weight W2 of an input document.

제어부(112)는 제2 인공 신경망(NN2)에 각 문장의 특징값(S_Feature_1, S_Feature_2, S_Feature_3)을 입력하고, 이에 대한 응답으로 문서 특징값(D_Feature) 및 제2 가중치(W2)를 획득할 수 있다. 이때 문서 특징값(D_Feature)은 문서의 특징을 반영한 값을 포함할 수 있고, 제2 가중치(W2)는 문서 특징값(D_Feature)의 결정에 각 문장이 기여한 정도를 포함할 수 있다.The controller 112 may input the feature values S_Feature_1, S_Feature_2, and S_Feature_3 of each sentence into the second artificial neural network NN2 and obtain a document feature value D_Feature and the second weight W2 in response thereto. have. In this case, the document feature value D_Feature may include a value reflecting the feature of the document, and the second weight W2 may include the degree that each sentence contributes to the determination of the document feature value D_Feature.

본 발명의 일 실시예에 따른 제어부(112)는 제2 인공 신경망(NN2)에 의해 생성된 문서 특징값(D_Feature)에 기초하여 입력 문서의 분류에 관한 분류 정보(Class)를 생성할 수 있다.The control unit 112 according to an embodiment of the present invention may generate classification information (Class) regarding the classification of the input document based on the document feature value D_Feature generated by the second artificial neural network NN2.

가령 도 4에 도시된 바와 같이 입력 문서(510)가 영화 후기에 관한 것인 경우 제어부(112)는 입력 문서(510)가 해당 영화에 대한 긍적적인 후기인지 또는 부정적인 후기인지에 관한 정보를 포함하는 분류 정보(Class)를 생성할 수 있다. 예를 들어 제어부(112)는 도 4의 입력 문서(510)를 긍정적 후기로 분류하는 분류 정보를 생성할 수 있다.For example, as shown in FIG. 4, when the input document 510 is about a late movie, the controller 112 includes information about whether the input document 510 is a positive late or negative late date for the movie. Class information can be created. For example, the controller 112 may generate classification information for classifying the input document 510 of FIG. 4 as a positive review.

물론 제어부(112)는 문서 작성자의 성별, 문서 작성자의 연령대와 같은 다양한 기준에 따라 입력 문서(510)를 분류하여 분류 정보를 생성할 수도 있다. 다만 이와 같은 분류기준은 예시적인것으로 본 발명의 사상이 이에 한정되는 것은 아니다.Of course, the controller 112 may generate the classification information by classifying the input document 510 according to various criteria such as the gender of the document creator and the age group of the document creator. However, such classification criteria are exemplary and the spirit of the present invention is not limited thereto.

본 발명의 일 실시예에 따른 제어부(112)는 전술한 과정에 의해 산출된 제1 가중치(W1_1 등)와 제2 가중치(W2) 중 적어도 하나를 참조하여, 분류 정보의 생성 이유(또는 분류 정보의 생성 근거)를 포함하는 설명 정보를 생성할 수 있다.The control unit 112 according to an embodiment of the present invention refers to at least one of the first weight (W1_1, etc.) and the second weight (W2) calculated by the above-described process, and generates the reason for generating the classification information (or the classification information). Descriptive information) may be generated.

도 7은 본 발명의 일 실시예에 따른 제어부(112)가 설명 정보를 생성하는 과정을 설명하기 위한 도면이다.7 is a diagram for describing a process of generating description information by the control unit 112 according to an embodiment of the present invention.

설명의 편의를 위해서, 제어부(112)가 도 4에 도시된 입력 문서(510)에 대해서 제1 가중치(W1) 및 제2 가중치(W2)를 산출한 결과가 도 7에 도시된 바와 같으며, 제어부(112)가 입력 문서(510)를 '긍정적 후기'(또는 제1 항목)로 분류하였음을 전제로 설명한다.For convenience of description, the result of the control unit 112 calculating the first weight W1 and the second weight W2 with respect to the input document 510 shown in FIG. 4 is as shown in FIG. 7. It will be described on the premise that the controller 112 classifies the input document 510 as 'positive late' (or first item).

상술한 가정 하에 본 발명의 일 실시예에 따른 제어부(112)는 입력 문서(510)를 제1 항목(긍정적 후기)으로 분류하는데 기여도가 높은 하나 이상의 단어를 결정할 수 있다. 이를 위해 제어부(112)는 제1 가중치(W1)를 참조하여, 각 단어의 가중치를 결정할 수 있다. 또한 제어부(112)는 제2 가중치(W2)를 참조하여, 각 단어가 포함된 문장의 가중치를 결정할 수 있다. 제어부(112)는 각 단어의 가중치 및 각 단어가 포함된 문장의 가중치에 기초하여 각 단어의 기여도(Wtot)를 산출할 수 있다. 제어부(112)는 산출된 기여도를 참조하여 입력 문서(510)를 제1 항목으로 분류하는데 기여도가 높은 하나 이상의 단어를 결정할 수 있다. Under the above-described assumption, the controller 112 according to an embodiment of the present invention may determine one or more words having a high contribution to classifying the input document 510 as a first item (positive later). To this end, the controller 112 may determine the weight of each word with reference to the first weight W1. In addition, the controller 112 may determine the weight of the sentence including each word by referring to the second weight W2. The controller 112 may calculate the contribution Wt of each word based on the weight of each word and the weight of a sentence including each word. The controller 112 may determine one or more words with high contribution to classifying the input document 510 as the first item with reference to the calculated contribution.

가령 제어부(112)는 'delightful'이라는 단어에 대해서, 제1 가중치(W1)를 참조하여 '단어의 가중치'를 결정하고, 제2 가중치(W2)를 참조하여 해당 단어가 포함된 '문장의 가중치'를 결정할 수 있다. 또한 제어부(112)는 산출된 '단어의 가중치' 및 '문장의 가중치'에 기초하여 'delightful'이라는 단어가 '긍정적 후기'라는 분류 정보를 생성하는데 기여한 기여도(0.318014)를 산출할 수 있다.For example, the controller 112 determines the weight of the word with reference to the first weight W1 for the word 'delightful' and the weight of the sentence including the word with reference to the second weight W2. Can be determined. In addition, the controller 112 may calculate a contribution (0.318014) in which the word 'delightful' contributes to generating classification information 'positive late' based on the calculated 'weight of the word' and the 'weight of the sentence'.

본 발명의 일 실시예에서, 제어부(112)는 기여도가 높은 상위 n개(n은 자연수)의 단어가 포함되도록 설명 정보를 생성할 수 있다.In one embodiment of the present invention, the control unit 112 may generate the description information to include the top n words of high contribution (n is a natural number).

한편 제어부(112)는 입력 문서(510)를 제1 항목(긍정적 후기)으로 분류하는데 기여도가 높은 하나 이상의 문장을 결정할 수도 있다. 이를 위해 제어부(112)는 각 문장에 포함된 하나 이상의 단어들의 제1 가중치(W1)를 참조하여 각 문장의 제3 가중치를 결정할 수 있다. 즉 제어부(112)는 포함된 단어들의 가중치에 기반하여 각 문장 전체의 가중치인 제3 가중치를 결정할 수 있다. Meanwhile, the controller 112 may determine one or more sentences with high contribution to classifying the input document 510 as a first item (positive late). To this end, the controller 112 may determine the third weight of each sentence by referring to the first weight W1 of one or more words included in each sentence. That is, the controller 112 may determine a third weight that is a weight of each sentence based on the weight of the included words.

또한 제어부(112)는 제2 가중치(W2)를 참조하여, 각 문장의 제4 가중치를 결정할 수 있다. 제어부(112)는 상술한 과정에 의해 산출된 제3 가중치 및 상기 제4 가중치에 기초하여 각 문장의 기여도를 산출할 수 있다. 제어부(112)는 산출된 기여도를 참조하여 입력 문서(510)를 제1 항목으로 분류하는데 기여도가 높은 하나 이상의 문장을 결정할 수 있다. In addition, the controller 112 may determine the fourth weight of each sentence with reference to the second weight W2. The controller 112 may calculate the contribution of each sentence based on the third weight and the fourth weight calculated by the above-described process. The controller 112 may determine one or more sentences with high contribution to classifying the input document 510 as the first item with reference to the calculated contribution.

가령 제어부(112)는 'This is a delightful film.'이라는 문장에 대해서, 문장에 포함된 단어들의 제1 가중치(W1)를 참조하여 '구성 단어에 기반한 가중치'인 제3 가중치를 결정할 수 있다. 또한 제어부(112)는 '문장 자체의 가중치'인 제2 가중치(W2)를 참조하여, 해당 문장의 제4 가중치를 결정할 수 있다.For example, the controller 112 may determine a third weight that is a “weight based on a constituent word” with respect to a sentence “This is a delightful film.” With reference to the first weight W1 of words included in the sentence. In addition, the controller 112 may determine the fourth weight of the corresponding sentence by referring to the second weight W2 that is the “weight of the sentence itself”.

제어부(112)는 산출된 제3 가중치 및 제4 가중치에 기초하여, 'This is a delightful film.'이라는 문장이 '긍정적 후기'라는 분류 정보를 생성하는데 기여한 기여도를 산출할 수 있다.The controller 112 may calculate the contribution that the sentence “This is a delightful film.” Contributes to generating classification information “positive reviews” based on the calculated third and fourth weights.

본 발명의 일 실시예에서, 제어부(112)는 기여도가 높은 상위 m개(m은 자연수)의 문장이 포함되도록 설명 정보를 생성할 수 있다.In one embodiment of the present invention, the control unit 112 may generate the description information so that the high m (m is a natural number) sentences with high contribution.

본 발명의 일 실시예에 따른 제어부(112)는 생성된 분류 정보와 함께 생성된 설명정보를 제공할 수 있다.The controller 112 according to an embodiment of the present invention may provide the generated description information together with the generated classification information.

이로써 본 발명은 입력 분서에 대한 분류 정보뿐만 아니라, 분류의 근거를 명확하게 제시할 수 있다.Thus, the present invention can clearly present not only the classification information on the input document but also the basis of the classification.

도 8은 본 발명의 일 실시예에 따른 문서 분류 장치(110)에 의해 수행되는 문서 분류 방법을 설명하기 위한 흐름도이다. 이하에서는 도 1 내지 도 7에서 설명한 내용과 중복하는 내용의 설명은 생략하되, 도 1 내지 도 7을 함께 참조하여 설명한다.8 is a flowchart illustrating a document classification method performed by the document classification apparatus 110 according to an embodiment of the present invention. Hereinafter, descriptions of contents overlapping with those described in FIGS. 1 to 7 will be omitted, but will be described with reference to FIGS. 1 to 7.

본 발명의 일 실시예에 따른 문서 분류 장치(110)는 입력 문서를 문장 단위로 분리하여 적어도 하나의 문장을 생성할 수 있다.(S81) 또한 문서 분류 장치(110)는 생성된 적어도 하나의 문장 각각을 단어 단위로 분리하여 적어도 하나의 단어를 생성할 수 있다.(S82)The document classification apparatus 110 according to an embodiment of the present invention may generate at least one sentence by dividing an input document into sentence units. (S81) The document classification apparatus 110 may also generate at least one sentence. At least one word may be generated by dividing each into word units (S82).

다시 도 4를 참조하여, 본 발명의 일 실시예에 따른 문서 분류 장치(110)가 입력 문서(510)로부터 적어도 하나의 문장(520) 및 적어도 하나의 단어(530)를 분리하는 과정을 설명한다. 설명의 편의를 위해서 입력 문서(510)는 영화 후기에 관한 것으로, 도 4에 도시된 바와 같이 3개의 문장으로 구성되는 것을 전제로 설명한다. Referring back to FIG. 4, a process of separating the at least one sentence 520 and the at least one word 530 from the input document 510 by the document classification apparatus 110 according to an embodiment of the present invention will be described. . For convenience of explanation, the input document 510 is related to a later movie, and is described on the premise that it is composed of three sentences as shown in FIG. 4.

상술한 전제 하에 본 발명의 일 실시예에 따른 문서 분류 장치(110)는 입력 문서(510)를 첫 번째 문장(521), 두 번째 문장(522) 및 세 번째 문장(523)으로 분리할 수 있다.Under the above-described assumption, the document classification apparatus 110 according to an embodiment of the present invention may divide the input document 510 into a first sentence 521, a second sentence 522, and a third sentence 523. .

이어서 본 발명의 일 실시예에 따른 문서 분류 장치(110)는 첫 번째 문장(521)을 하나 이상의 단어(531)로 분리할 수 있고, 나머지 문장(522, 523)도 이와 유사하게 단어(532, 533)로 분리할 수 있다.Subsequently, the document classification apparatus 110 may divide the first sentence 521 into one or more words 531, and similarly, the remaining sentences 522 and 523 may include the words 532,. 533).

본 발명의 일 실시예에 따른 문서 분류 장치(110)는 학습된 제1 인공 신경망을 이용하여, 개별 문장 마다 문장 특징값 및 문장에 포함되는 단어 각각의 가중치인 제1 가중치를 생성할 수 있다.(S83)The document classification apparatus 110 according to an embodiment of the present invention may generate a first weight that is a weight of each sentence feature value and a word included in each sentence by using the learned first artificial neural network. (S83)

전술한 바와 같이 제1 인공 신경망은 문장 특징값이 표지된 적어도 하나의 제1 학습 데이터에 기반하여, 제1 학습 데이터에 포함되는 학습 문장에 포함된 적어도 하나의 단어와 문장 특징값 간의 상관관계를 학습한 신경망일 수 있다. 또한 제1 인공 신경망은 학습 문장에 포함되는 적어도 하나의 단어와 적어도 하나의 단어 각각의 가중치 간의 상관관계를 학습한 신경망일 수 있다. 따라서 제1 인공 신경망에 문장을 구성하는 적어도 하나의 단어를 입력하고, 이에 대한 응답으로 문장 특징값 및 각각의 단어에 대한 가중치를 획득할 수 있다.As described above, the first artificial neural network based on the at least one first learning data labeled with a sentence feature value, performs correlation between at least one word included in the learning sentence included in the first learning data and the sentence feature value. It can be a learned neural network. In addition, the first artificial neural network may be a neural network that has learned a correlation between at least one word included in the learning sentence and weights of the at least one word. Accordingly, at least one word constituting a sentence may be input to the first artificial neural network, and in response thereto, a sentence feature value and a weight for each word may be obtained.

다시 도 5를 참조하면, 문서 분류 장치(110)는 제1 인공 신경망(NN1)에 첫 번째 문장(521)으로부터 분리된 하나 이상의 단어(531)를 입력하고, 이에 대한 응답으로 특징값(S_Feature_1) 및 제1 가중치(W1_1)를 획득할 수 있다. 이때 특징값(S_Feature_1)은 문장의 특징을 반영한 값을 포함할 수 있고, 제1 가중치(W1_1)는 특징값(S_Feature_1)의 결정에 각 단어가 기여한 정도를 포함할 수 있다. 이와 유사하게 문서 분류 장치(110)는 나머지 문장(522, 523)에 대해서도 특징값(S_Feature_2, S_Feature_3) 및 제1 가중치(미도시)를 산출할 수 있다.Referring back to FIG. 5, the document classification apparatus 110 inputs one or more words 531 separated from the first sentence 521 into the first artificial neural network NN1, and in response thereto, the feature value S_Feature_1. And a first weight W1_1. In this case, the feature value S_Feature_1 may include a value reflecting the feature of the sentence, and the first weight W1_1 may include the degree that each word contributes to the determination of the feature value S_Feature_1. Similarly, the document classification apparatus 110 may calculate feature values S_Feature_2 and S_Feature_3 and a first weight (not shown) for the remaining sentences 522 and 523.

본 발명의 일 실시예에 따른 문서 분류 장치(110)는 학습된 제2 인공 신경망(NN2)을 이용하여, 입력 문서의 문서 특징값(D_Feature) 및 문서(510)에 포함되는 문장(521, 522, 523) 각각의 가중치인 제2 가중치(W2)를 생성할 수 있다.(S84)The document classification apparatus 110 according to an embodiment of the present invention uses the trained second artificial neural network NN2 to output the document feature value D_Feature of the input document and the sentences 521 and 522 included in the document 510. In operation S84, second weights W2 which are respective weights may be generated.

이때 제2 인공 신경망(NN2)은 전술한 바와 같이 문서 특징값이 표지된 적어도 하나의 제2 학습 데이터에 기반하여, 제2 학습 데이터에 포함되는 학습 문서에 포함된 적어도 하나의 문장과 상기 문서 특징값 간의 상관관계를 학습한 신경망일 수 있다. 또한 제2 인공 신경망(NN2)은 학습 문서에 포함되는 적어도 하나의 문장과 적어도 하나의 문장 각각의 가중치 간의 상관관계를 학습한 신경망일 수 있다.In this case, the second artificial neural network NN2 includes at least one sentence and the document feature included in the learning document included in the second learning data based on the at least one second learning data labeled with the document feature value as described above. It can be a neural network that learned the correlation between values. In addition, the second artificial neural network NN2 may be a neural network that has learned a correlation between at least one sentence included in the learning document and a weight of each of the at least one sentence.

도 6을 참조하면, 문서 분류 장치(110)는 제2 인공 신경망(NN2)에 각 문장의 특징값(S_Feature_1, S_Feature_2, S_Feature_3)을 입력하고, 이에 대한 응답으로 문서 특징값(D_Feature) 및 제2 가중치(W2)를 획득할 수 있다. 이때 문서 특징값(D_Feature)은 문서의 특징을 반영한 값을 포함할 수 있고, 제2 가중치(W2)는 문서 특징값(D_Feature)의 결정에 각 문장이 기여한 정도를 포함할 수 있다.Referring to FIG. 6, the document classification apparatus 110 inputs the feature values S_Feature_1, S_Feature_2, and S_Feature_3 of each sentence into the second artificial neural network NN2, and in response thereto, the document feature values D_Feature and the second. The weight W2 can be obtained. In this case, the document feature value D_Feature may include a value reflecting the feature of the document, and the second weight W2 may include the degree that each sentence contributes to the determination of the document feature value D_Feature.

본 발명의 일 실시예에 따른 문서 분류 장치(110)는 제2 인공 신경망(NN2)에 의해 생성된 문서 특징값(D_Feature)에 기초하여 입력 문서의 분류에 관한 분류 정보(Class)를 생성할 수 있다.(S85)The document classification apparatus 110 according to an embodiment of the present invention may generate classification information (Class) regarding the classification of the input document based on the document feature value D_Feature generated by the second artificial neural network NN2. (S85)

가령 도 4에 도시된 바와 같이 입력 문서(510)가 영화 후기에 관한 것인 경우 문서 분류 장치(110)는 입력 문서(510)가 해당 영화에 대한 긍적적인 후기인지 또는 부정적인 후기인지에 관한 정보를 포함하는 분류 정보(Class)를 생성할 수 있다. 예를 들어 문서 분류 장치(110)는 도 4의 입력 문서(510)를 긍정적 후기로 분류하는 분류 정보를 생성할 수 있다.For example, as shown in FIG. 4, when the input document 510 is about a late movie, the document classification apparatus 110 may provide information about whether the input document 510 is a positive late or negative late with respect to the movie. Classification information (Class) to be included may be generated. For example, the document classification apparatus 110 may generate classification information for classifying the input document 510 of FIG. 4 as a positive review.

물론 문서 분류 장치(110)는 문서 작성자의 성별, 문서 작성자의 연령대와 같은 다양한 기준에 따라 입력 문서(510)를 분류하여 분류 정보를 생성할 수도 있다. 다만 이와 같은 분류기준은 예시적인것으로 본 발명의 사상이 이에 한정되는 것은 아니다.Of course, the document classification apparatus 110 may generate classification information by classifying the input document 510 according to various criteria such as the gender of the document creator and the age group of the document creator. However, such classification criteria are exemplary and the spirit of the present invention is not limited thereto.

본 발명의 일 실시예에 따른 문서 분류 장치(110)는 전술한 과정에 의해 산출된 제1 가중치(W1_1 등)와 제2 가중치(W2) 중 적어도 하나를 참조하여, 분류 정보의 생성 이유(또는 분류 정보의 생성 근거)를 포함하는 설명 정보를 생성할 수 있다.(S86)The document classification apparatus 110 according to an embodiment of the present invention refers to at least one of the first weight (W1_1, etc.) and the second weight (W2) calculated by the above-described process, and thus the reason for generating classification information (or Descriptive information including the generation basis of the classification information) can be generated (S86).

다시 도 7을 참조하여, 본 발명의 일 실시예에 따른 문서 분류 장치(110)가 설명 정보를 생성하는 과정을 설명한다. 설명의 편의를 위해서, 문서 분류 장치(110)가 도 4에 도시된 입력 문서(510)에 대해서 제1 가중치(W1) 및 제2 가중치(W2)를 산출한 결과가 도 7에 도시된 바와 같으며, 문서 분류 장치(110)가 입력 문서(510)를 '긍정적 후기'(또는 제1 항목)로 분류하였음을 전제로 설명한다.Referring to FIG. 7 again, a process of generating description information by the document classification apparatus 110 according to an embodiment of the present invention will be described. For convenience of description, the result of calculating the first weight W1 and the second weight W2 of the input document 510 shown in FIG. 4 by the document classification device 110 is as shown in FIG. 7. Next, the document classification apparatus 110 classifies the input document 510 as a 'positive late' (or first item).

상술한 가정 하에 본 발명의 일 실시예에 따른 문서 분류 장치(110)는 입력 문서(510)를 제1 항목(긍정적 후기)으로 분류하는데 기여도가 높은 하나 이상의 단어를 결정할 수 있다. 이를 위해 문서 분류 장치(110)는 제1 가중치(W1)를 참조하여, 각 단어의 가중치를 결정할 수 있다. 또한 문서 분류 장치(110)는 제2 가중치(W2)를 참조하여, 각 단어가 포함된 문장의 가중치를 결정할 수 있다. 문서 분류 장치(110)는 각 단어의 가중치 및 각 단어가 포함된 문장의 가중치에 기초하여 각 단어의 기여도(Wtot)를 산출할 수 있다. 문서 분류 장치(110)는 산출된 기여도를 참조하여 입력 문서(510)를 제1 항목으로 분류하는데 기여도가 높은 하나 이상의 단어를 결정할 수 있다. Under the above-described assumption, the document classification apparatus 110 may determine one or more words having a high contribution to classifying the input document 510 as a first item (positive later). To this end, the document classification apparatus 110 may determine the weight of each word with reference to the first weight W1. In addition, the document classification apparatus 110 may determine the weight of a sentence including each word by referring to the second weight W2. The document classification apparatus 110 may calculate the contribution Wt of each word based on the weight of each word and the weight of a sentence including each word. The document classification apparatus 110 may determine one or more words having a high contribution to classifying the input document 510 as the first item with reference to the calculated contribution.

가령 문서 분류 장치(110)는 'delightful'이라는 단어에 대해서, 제1 가중치(W1)를 참조하여 '단어의 가중치'를 결정하고, 제2 가중치(W2)를 참조하여 해당 단어가 포함된 '문장의 가중치'를 결정할 수 있다. 또한 문서 분류 장치(110)는 산출된 '단어의 가중치' 및 '문장의 가중치'에 기초하여 'delightful'이라는 단어가 '긍정적 후기'라는 분류 정보를 생성하는데 기여한 기여도(0.318014)를 산출할 수 있다.For example, the document classification apparatus 110 may determine the 'weight of the word' with reference to the first weight W1 with respect to the word 'delightful' and the 'sentence' including the word with reference to the second weight W2. May be determined. In addition, the document classification apparatus 110 may calculate a contribution (0.318014) in which the word 'delightful' contributes to generating classification information 'positive late' based on the calculated 'weight of words' and 'weight of sentences'. .

본 발명의 일 실시예에서, 문서 분류 장치(110)는 기여도가 높은 상위 n개(n은 자연수)의 단어가 포함되도록 설명 정보를 생성할 수 있다.In one embodiment of the present invention, the document classification apparatus 110 may generate the description information to include the top n words (n is a natural number) with high contribution.

한편 문서 분류 장치(110)는 입력 문서(510)를 제1 항목(긍정적 후기)으로 분류하는데 기여도가 높은 하나 이상의 문장을 결정할 수도 있다. 이를 위해 문서 분류 장치(110)는 각 문장에 포함된 하나 이상의 단어들의 제1 가중치(W1)를 참조하여 각 문장의 제3 가중치를 결정할 수 있다. 즉 문서 분류 장치(110)는 포함된 단어들의 가중치에 기반하여 각 문장 전체의 가중치인 제3 가중치를 결정할 수 있다. Meanwhile, the document classification apparatus 110 may determine one or more sentences having a high contribution to classifying the input document 510 as a first item (positive later). To this end, the document classification apparatus 110 may determine the third weight of each sentence by referring to the first weight W1 of one or more words included in each sentence. That is, the document classification apparatus 110 may determine a third weight that is a weight of the entire sentence based on the weights of the included words.

또한 문서 분류 장치(110)는 제2 가중치(W2)를 참조하여, 각 문장의 제4 가중치를 결정할 수 있다. 문서 분류 장치(110)는 상술한 과정에 의해 산출된 제3 가중치 및 상기 제4 가중치에 기초하여 각 문장의 기여도를 산출할 수 있다. 문서 분류 장치(110)는 산출된 기여도를 참조하여 입력 문서(510)를 제1 항목으로 분류하는데 기여도가 높은 하나 이상의 문장을 결정할 수 있다. In addition, the document classification apparatus 110 may determine the fourth weight of each sentence by referring to the second weight W2. The document classification apparatus 110 may calculate the contribution of each sentence based on the third weight and the fourth weight calculated by the above-described process. The document classification apparatus 110 may determine one or more sentences with high contribution to classifying the input document 510 as the first item with reference to the calculated contribution.

가령 문서 분류 장치(110)는 'This is a delightful film.'이라는 문장에 대해서, 문장에 포함된 단어들의 제1 가중치(W1)를 참조하여 '구성 단어에 기반한 가중치'인 제3 가중치를 결정할 수 있다. 또한 문서 분류 장치(110)는 '문장 자체의 가중치'인 제2 가중치(W2)를 참조하여, 해당 문장의 제4 가중치를 결정할 수 있다.For example, the document classification apparatus 110 may determine a third weight that is “weight based on a constituent word” with respect to a sentence “This is a delightful film.” With reference to the first weight W1 of words included in the sentence. have. In addition, the document classification apparatus 110 may determine the fourth weight of the corresponding sentence by referring to the second weight W2 that is the “weight of the sentence itself”.

문서 분류 장치(110)는 산출된 제3 가중치 및 제4 가중치에 기초하여, 'This is a delightful film.'이라는 문장이 '긍정적 후기'라는 분류 정보를 생성하는데 기여한 기여도를 산출할 수 있다.The document classification apparatus 110 may calculate the contribution that the sentence “This is a delightful film.” Contributes to generating classification information “positive reviews” based on the calculated third and fourth weights.

본 발명의 일 실시예에서, 문서 분류 장치(110)는 기여도가 높은 상위 m개(m은 자연수)의 문장이 포함되도록 설명 정보를 생성할 수 있다.In one embodiment of the present invention, the document classification apparatus 110 may generate the description information so that the high m contributing sentences (m is a natural number) are included.

본 발명의 일 실시예에 따른 문서 분류 장치(110)는 생성된 분류 정보와 함께 생성된 설명정보를 제공할 수 있다.(S87)The document classification apparatus 110 according to an embodiment of the present invention may provide the generated description information together with the generated classification information.

이로써 본 발명은 입력 분서에 대한 분류 정보뿐만 아니라, 분류의 근거를 명확하게 제시할 수 있다.Thus, the present invention can clearly present not only the classification information on the input document but also the basis of the classification.

도 9은 본 발명의 일 실시예에 따라 분류 정보 및 설명 정보가 사용자 단말(200)에 표시된 화면(610)의 예시이다.9 is an example of a screen 610 in which classification information and description information are displayed on a user terminal 200 according to an embodiment of the present invention.

전술한 바와 같이 본 발명의 일 실시예에 따른 문서 분류 장치(110)는 문서의 분류 결과(621, 622)와 함께 설명 정보(가령 기여도가 높은 단어(612) 및 기여도가 높은 문장(611))를 제공할 수 있다.As described above, the document classification apparatus 110 according to the exemplary embodiment of the present invention includes description information (eg, high contribution word 612 and high contribution sentence 611) together with the classification results 621 and 622 of the document. Can be provided.

본 발명의 일 실시예에 따른 문서 분류 장치(110)는 입력 문서를 제1 항목으로 분류하는데 기여도가 높은 단어(612)를 제1 표시 방식으로 표시되도록 제공할 수 있다. The document classification apparatus 110 according to an exemplary embodiment may provide a word 612 having a high contribution to classifying an input document as a first item to be displayed in a first display method.

또한 본 발명의 일 실시예에 따른 문서 분류 장치(110)는 입력 문서를 제1 항목으로 분류하는데 기여도가 높은 문장(611)을 제2 표시 방식으로 표시되도록 제공할 수 있다. In addition, the document classification apparatus 110 according to an exemplary embodiment may provide a sentence 611 having a high contribution to classifying an input document as a first item to be displayed in a second display method.

이때 제1 표시 방식 및 제2 표시 방식은 서로 구분되는 표시 방식으로, 입력 문서의 나머지 내용과 구분되도록 표시하는방식일 수 있다.In this case, the first display method and the second display method may be display methods that are distinguished from each other, and may be displayed to be distinguished from the rest of the input document.

한편 본 발명의 일 실시예에 따른 문서 분류 장치(110)는 문서의 분류 결과(621)와 함께, 해당 결과의 신뢰도(622)를 함께 제공할 수 있다. 이때 신뢰도(622)는 전술한 제1 가중치(W1) 및 제2 가중치(W2)에 기초하여 산출되는 값일 수 있다.Meanwhile, the document classification apparatus 110 according to an exemplary embodiment of the present invention may provide the document classification result 621 together with the reliability 622 of the result. In this case, the reliability 622 may be a value calculated based on the first weight W1 and the second weight W2.

이상 설명된 본 발명에 따른 실시예는 컴퓨터 상에서 다양한 구성요소를 통하여 실행될 수 있는 컴퓨터 프로그램의 형태로 구현될 수 있으며, 이와 같은 컴퓨터 프로그램은 컴퓨터로 판독 가능한 매체에 기록될 수 있다. 이때, 매체는 컴퓨터로 실행 가능한 프로그램을 저장하는 것일 수 있다. 매체의 예시로는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등을 포함하여 프로그램 명령어가 저장되도록 구성된 것이 있을 수 있다. Embodiments according to the present invention described above may be implemented in the form of a computer program that can be executed through various components on a computer, such a computer program may be recorded on a computer readable medium. In this case, the medium may store a computer executable program. Examples of the medium include magnetic media such as hard disks, floppy disks and magnetic tape, optical recording media such as CD-ROMs and DVDs, magneto-optical media such as floptical disks, And ROM, RAM, flash memory, and the like, configured to store program instructions.

한편, 상기 컴퓨터 프로그램은 본 발명을 위하여 특별히 설계되고 구성된 것이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수 있다. 컴퓨터 프로그램의 예에는, 컴파일러에 의하여 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용하여 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함될 수 있다.On the other hand, the computer program may be specially designed and configured for the present invention, or may be known and available to those skilled in the computer software field. Examples of computer programs may include not only machine code generated by a compiler, but also high-level language code executable by a computer using an interpreter or the like.

본 발명에서 설명하는 특정 실행들은 일 실시 예들로서, 어떠한 방법으로도 본 발명의 범위를 한정하는 것은 아니다. 명세서의 간결함을 위하여, 종래 전자적인 구성들, 제어 시스템들, 소프트웨어, 상기 시스템들의 다른 기능적인 측면들의 기재는 생략될 수 있다. 또한, 도면에 도시된 구성 요소들 간의 선들의 연결 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것으로서, 실제 장치에서는 대체 가능하거나 추가의 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들로서 나타내어질 수 있다. 또한, "필수적인", "중요하게" 등과 같이 구체적인 언급이 없다면 본 발명의 적용을 위하여 반드시 필요한 구성 요소가 아닐 수 있다.Particular implementations described in the present invention are embodiments and do not limit the scope of the present invention in any way. For brevity of description, descriptions of conventional electronic configurations, control systems, software, and other functional aspects of the systems may be omitted. In addition, the connection or connection members of the lines between the components shown in the drawings by way of example shows a functional connection and / or physical or circuit connections, in the actual device replaceable or additional various functional connections, physical It may be represented as a connection, or circuit connections. In addition, unless otherwise specified, such as "essential", "important" may not be a necessary component for the application of the present invention.

따라서, 본 발명의 사상은 상기 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 또는 이로부터 등가적으로 변경된 모든 범위는 본 발명의 사상의 범주에 속한다고 할 것이다.Therefore, the spirit of the present invention should not be limited to the above-described embodiments, and the scope of the spirit of the present invention is defined not only in the claims below, but also in the ranges equivalent to or equivalent to the claims. Will belong to.

100: 서버
110: 문서 분류 장치
111: 통신부
112: 제어부
113: 메모리
200: 사용자 단말
400: 통신망
100: server
110: document classification device
111: communication unit
112: control unit
113: memory
200: user terminal
400: network

Claims (8)

설명이 부가된 문서 분류 방법에 있어서,
입력 문서를 적어도 하나의 문장으로 분리하는 단계;
상기 적어도 하나의 문장 각각을 적어도 하나의 단어로 분리하는 단계;
학습된 제1 인공 신경망을 이용하여, 상기 적어도 하나의 문장 각각에 대한 상기 적어도 하나의 단어로부터 상기 적어도 하나의 문장 각각에 대응되는 문장 특징값 및 상기 적어도 하나의 문장 각각에 포함된 적어도 하나의 단어 각각의 가중치인 제1 가중치를 생성하는 단계;
학습된 제2 인공 신경망을 이용하여, 상기 적어도 하나의 문장 각각에 대한 문장 특징값으로부터 상기 입력 문서에 대응되는 문서 특징값 및 상기 적어도 하나의 문장 각각의 가중치인 제2 가중치를 생성하는 단계;
상기 문서 특징값에 기초하여 상기 입력 문서의 분류에 관한 분류 정보를 생성하는 단계; 및
상기 제1 가중치 및 상기 제2 가중치 중 적어도 하나를 참조하여, 상기 분류의 이유를 포함하는 설명 정보를 생성하는 단계;를 포함하는, 설명이 부가된 문서 분류 방법.
In the document classification method with explanation,
Separating the input document into at least one sentence;
Separating each of the at least one sentence into at least one word;
At least one word included in each of the at least one sentence and a sentence feature value corresponding to each of the at least one sentence from the at least one word for each of the at least one sentence, using the learned first artificial neural network Generating a first weight that is each weight;
Using a learned second artificial neural network, generating from the sentence feature values for each of the at least one sentence a second weight value corresponding to the document feature value corresponding to the input document and the weight of each of the at least one sentence;
Generating classification information regarding the classification of the input document based on the document feature value; And
Generating description information including a reason for the classification by referring to at least one of the first weight and the second weight.
청구항 1에 있어서
상기 제1 인공 신경망은 문장 특징값이 표지된 적어도 하나의 제1 학습 데이터에 기반하여, 상기 제1 학습 데이터에 포함되는 학습 문장에 포함된 적어도 하나의 단어와 상기 문장 특징값 간의 상관관계 및 상기 학습 문장에 포함되는 적어도 하나의 단어와 상기 적어도 하나의 단어 각각의 가중치 간의 상관관계를 학습한 신경망인, 설명이 부가된 문서 분류 방법.
The method according to claim 1
The first artificial neural network may be based on at least one first learning data labeled with a sentence feature value, and the correlation between the at least one word included in the learning sentence included in the first learning data and the sentence feature value and the A description classifying method according to claim 1, wherein the neural network has learned a correlation between at least one word included in a learning sentence and weights of the at least one word.
청구항 1에 있어서
상기 제2 인공 신경망은 문서 특징값이 표지된 적어도 하나의 제2 학습 데이터에 기반하여, 상기 제2 학습 데이터에 포함되는 학습 문서에 포함된 적어도 하나의 문장과 상기 문서 특징값 간의 상관관계 및 상기 학습 문서에 포함되는 적어도 하나의 문장과 상기 적어도 하나의 문장 각각의 가중치 간의 상관관계를 학습한 신경망인, 설명이 부가된 문서 분류 방법.
The method according to claim 1
The second artificial neural network is based on at least one second learning data labeled with a document feature value, and the correlation between the at least one sentence included in the learning document included in the second learning data and the document feature value and the A description classifying method according to claim 1, wherein the neural network has learned a correlation between at least one sentence included in a learning document and weights of the at least one sentence.
청구항 1에 있어서
상기 분류 정보를 생성하는 단계는
상기 입력 문서를 복수의 분류 항목 중 어느 하나의 항목인 제1 항목으로 분류하고,
상기 설명 정보를 생성하는 단계는
상기 입력 문서를 상기 제1 항목으로 분류하는데 기여도가 높은 하나 이상의 단어를 결정하는 단계;
상기 입력 문서를 상기 제1 항목으로 분류하는데 기여도가 높은 하나 이상의 문장을 결정하는 단계;를 포함하는, 설명이 부가된 문서 분류 방법.
The method according to claim 1
Generating the classification information
Classifying the input document into a first item which is any one of a plurality of classification items,
Generating the description information
Determining one or more words that have a high contribution to classifying the input document as the first item;
And determining at least one sentence with a high contribution to classifying the input document as the first item.
청구항 4에 있어서
상기 기여도가 높은 하나 이상의 단어를 결정하는 단계는
상기 제1 가중치를 참조하여, 제1 단어의 가중치를 결정하는 단계;
상기 제2 가중치를 참조하여, 상기 제1 단어가 포함된 문장의 가중치를 결정하는 단계; 및
상기 제1 단어의 가중치 및 상기 제1 단어가 포함된 문장의 가중치에 기초하여 상기 제1 단어의 기여도를 산출하는 단계;를 포함하는, 설명이 부가된 문서 분류 방법.
The method according to claim 4
Determining one or more words of high contribution
Determining a weight of a first word by referring to the first weight;
Determining a weight of a sentence including the first word by referring to the second weight; And
Calculating the contribution of the first word based on the weight of the first word and the weight of the sentence including the first word.
청구항 4에 있어서
기여도가 높은 하나 이상의 문장을 결정하는 단계는
제1 문장에 포함된 하나 이상의 단어들의 제1 가중치를 참조하여, 상기 제1 문장의 제3 가중치를 결정하는 단계;
상기 제2 가중치를 참조하여, 제1 문장의 제4 가중치를 결정하는 단계; 및
제3 가중치 및 상기 제4 가중치에 기초하여 상기 제1 문장의 기여도를 산출하는 단계;를 포함하는, 설명이 부가된 문서 분류 방법.
The method according to claim 4
Determining one or more high-contribution sentences
Determining a third weight of the first sentence by referring to a first weight of one or more words included in the first sentence;
Determining a fourth weight of the first sentence by referring to the second weight; And
Calculating a contribution of the first sentence based on a third weight and the fourth weight.
청구항 1에 있어서
상기 설명이 부가된 문서 분류 방법은
상기 설명 정보를 생성하는 단계 이후에
상기 분류 정보와 함께 상기 설명 정보를 제공하는 단계;를 더 포함하는, 설명이 부가된 문서 분류 방법.
The method according to claim 1
Document classification method with the above description
After generating the description information
And providing the description information together with the classification information.
컴퓨터를 이용하여
청구항 1 내지 청구항 7 중 어느 한 항의 방법을 실행하기 위하여 매체에 저장된 컴퓨터 프로그램.
Using a computer
A computer program stored on a medium for carrying out the method of claim 1.
KR1020190064066A 2018-05-31 2019-05-30 An explanation-added document classification method by an artificial neural network that learns the correlation between words, sentence feature values, and word weights KR102264232B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020200144584A KR102264234B1 (en) 2018-05-31 2020-11-02 A document classification method with an explanation that provides words and sentences with high contribution in document classification
KR1020200144583A KR102264233B1 (en) 2018-05-31 2020-11-02 An explanation-added document classification method by an artificial neural network that learns the correlation between sentences, document feature values, and sentence weights

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20180062903 2018-05-31
KR1020180062903 2018-05-31

Related Child Applications (3)

Application Number Title Priority Date Filing Date
KR1020200144583A Division KR102264233B1 (en) 2018-05-31 2020-11-02 An explanation-added document classification method by an artificial neural network that learns the correlation between sentences, document feature values, and sentence weights
KR1020200144585A Division KR20200127948A (en) 2018-05-31 2020-11-02 Method of providing document classification information with description
KR1020200144584A Division KR102264234B1 (en) 2018-05-31 2020-11-02 A document classification method with an explanation that provides words and sentences with high contribution in document classification

Publications (2)

Publication Number Publication Date
KR20190137008A true KR20190137008A (en) 2019-12-10
KR102264232B1 KR102264232B1 (en) 2021-06-14

Family

ID=69003231

Family Applications (4)

Application Number Title Priority Date Filing Date
KR1020190064066A KR102264232B1 (en) 2018-05-31 2019-05-30 An explanation-added document classification method by an artificial neural network that learns the correlation between words, sentence feature values, and word weights
KR1020200144584A KR102264234B1 (en) 2018-05-31 2020-11-02 A document classification method with an explanation that provides words and sentences with high contribution in document classification
KR1020200144585A KR20200127948A (en) 2018-05-31 2020-11-02 Method of providing document classification information with description
KR1020200144583A KR102264233B1 (en) 2018-05-31 2020-11-02 An explanation-added document classification method by an artificial neural network that learns the correlation between sentences, document feature values, and sentence weights

Family Applications After (3)

Application Number Title Priority Date Filing Date
KR1020200144584A KR102264234B1 (en) 2018-05-31 2020-11-02 A document classification method with an explanation that provides words and sentences with high contribution in document classification
KR1020200144585A KR20200127948A (en) 2018-05-31 2020-11-02 Method of providing document classification information with description
KR1020200144583A KR102264233B1 (en) 2018-05-31 2020-11-02 An explanation-added document classification method by an artificial neural network that learns the correlation between sentences, document feature values, and sentence weights

Country Status (1)

Country Link
KR (4) KR102264232B1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102217213B1 (en) * 2020-10-27 2021-02-18 장경애 Service providing apparatus and method for managing contents based on deep learning
KR20210080762A (en) * 2019-12-23 2021-07-01 주식회사 제로원에이아이 Method for determining a confidence level of inference data produced by artificial neural network
KR20210146671A (en) * 2020-05-27 2021-12-06 삼성생명보험주식회사 Method for analyzing customer consultation record
KR20220042940A (en) * 2020-09-28 2022-04-05 주식회사 마인즈랩 Method and computer program for classifying the intent of strings
KR20230040411A (en) * 2021-09-15 2023-03-23 주식회사 마인즈랩 Message verification method, apparatus and computer program

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102342580B1 (en) * 2021-07-16 2021-12-24 주식회사 애자일소다 Apparatus and method for processing structured data using deep learning algorithms

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003256441A (en) * 2002-03-01 2003-09-12 Hewlett Packard Co <Hp> Document classification method and apparatus

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101864401B1 (en) * 2017-11-29 2018-06-04 주식회사 피씨엔 Digital timeline output system for support of fusion of traditional culture

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003256441A (en) * 2002-03-01 2003-09-12 Hewlett Packard Co <Hp> Document classification method and apparatus

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210080762A (en) * 2019-12-23 2021-07-01 주식회사 제로원에이아이 Method for determining a confidence level of inference data produced by artificial neural network
KR20210146671A (en) * 2020-05-27 2021-12-06 삼성생명보험주식회사 Method for analyzing customer consultation record
KR20220042940A (en) * 2020-09-28 2022-04-05 주식회사 마인즈랩 Method and computer program for classifying the intent of strings
KR102217213B1 (en) * 2020-10-27 2021-02-18 장경애 Service providing apparatus and method for managing contents based on deep learning
KR20230040411A (en) * 2021-09-15 2023-03-23 주식회사 마인즈랩 Message verification method, apparatus and computer program

Also Published As

Publication number Publication date
KR20200127946A (en) 2020-11-11
KR102264232B1 (en) 2021-06-14
KR20200127947A (en) 2020-11-11
KR102264234B1 (en) 2021-06-14
KR102264233B1 (en) 2021-06-14
KR20200127948A (en) 2020-11-11

Similar Documents

Publication Publication Date Title
KR102264233B1 (en) An explanation-added document classification method by an artificial neural network that learns the correlation between sentences, document feature values, and sentence weights
US10410111B2 (en) Automated evaluation of neural networks using trained classifier
US11948058B2 (en) Utilizing recurrent neural networks to recognize and extract open intent from text inputs
Han et al. Semi-supervised active learning for sound classification in hybrid learning environments
US20190354810A1 (en) Active learning to reduce noise in labels
GB2573189A (en) Generating a topic-based summary of textual content
US20230102337A1 (en) Method and apparatus for training recommendation model, computer device, and storage medium
CN111356997A (en) Hierarchical neural network with granular attention
EP3711000A1 (en) Regularized neural network architecture search
US11720757B2 (en) Example based entity extraction, slot filling and value recommendation
CN110555469A (en) Method and device for processing interactive sequence data
US11636308B2 (en) Differentiable set to increase the memory capacity of recurrent neural net works
JP2020057365A (en) Generation of data related to underrepresented data based on received data input
KR20210023452A (en) Apparatus and method for review analysis per attribute
US11669687B1 (en) Systems and methods for natural language processing (NLP) model robustness determination
US20220188706A1 (en) Systems and methods for generating and applying a secure statistical classifier
US11281999B2 (en) Predictive accuracy of classifiers using balanced training sets
CN115658955B (en) Cross-media retrieval and model training method, device, equipment and menu retrieval system
WO2014073206A1 (en) Information-processing device and information-processing method
US20220138534A1 (en) Extracting entity relationships from digital documents utilizing multi-view neural networks
CN115455171A (en) Method, device, equipment and medium for mutual retrieval and model training of text videos
CN112749274A (en) Chinese text classification method based on attention mechanism and interference word deletion
US11520762B2 (en) Performing fine-grained question type classification
JP6899973B2 (en) Semantic relationship learning device, semantic relationship learning method, and semantic relationship learning program
JP2020052935A (en) Method of creating learned model, method of classifying data, computer and program

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
A107 Divisional application of patent
E701 Decision to grant or registration of patent right
GRNT Written decision to grant