텍스트 데이터에 대한 다양한 분석을 위해 최근 비정형 텍스트 데이터를 구조화하는 방안에 대한 연구가 활발하게 이루어지고 있다. doc2Vec으로 대표되는 기존 문서 임베딩 방법은 문서가 포함한 모든 단어를 사용하여 벡터를 만들기 때문에, 문서 벡터가 핵심 단어뿐 아니라 주변 단어의 영향도 함께 받는다는 한계가 있다. 또한 기존 문서 임베딩 방법은 하나의 문서가 하나의 벡터로 표현되기 때문에, 다양한 주제를 복합적으로 갖는 복합 문서를 정확하게 사상하기 어렵다는 한계를 갖는다. 본 논문에서는 기존의 문서 임베딩이 갖는 이러한 두 가지 한계를 극복하기 위해 다중 벡터 문서 임베딩 방법론을 새롭게 제안한다. 구체적으로 제안 방법론은 전체 단어가 아닌 핵심 단어만 이용하여 문서를 벡터화하고, 문서가 포함하는 다양한 주제를 분해하여 하나의 문서를 여러 벡터의 집합으로 표현한다. KISS에서 수집한 총 3,147개의 논문에 대한 실험을 통해 복합 문서를 단일 벡터로 표현하는 경우의 벡터 왜곡 현상을 확인하였으며, 복합 문서를 의미적으로 분해하여 다중 벡터로 나타내는 제안 방법론에 의해 이러한 왜곡 현상을 보정하고 각 문서를 더욱 정확하게 임베딩할 수 있음을 확인하였다.
텍스트 데이터에 대한 다양한 분석을 위해 최근 비정형 텍스트 데이터를 구조화하는 방안에 대한 연구가 활발하게 이루어지고 있다. doc2Vec으로 대표되는 기존 문서 임베딩 방법은 문서가 포함한 모든 단어를 사용하여 벡터를 만들기 때문에, 문서 벡터가 핵심 단어뿐 아니라 주변 단어의 영향도 함께 받는다는 한계가 있다. 또한 기존 문서 임베딩 방법은 하나의 문서가 하나의 벡터로 표현되기 때문에, 다양한 주제를 복합적으로 갖는 복합 문서를 정확하게 사상하기 어렵다는 한계를 갖는다. 본 논문에서는 기존의 문서 임베딩이 갖는 이러한 두 가지 한계를 극복하기 위해 다중 벡터 문서 임베딩 방법론을 새롭게 제안한다. 구체적으로 제안 방법론은 전체 단어가 아닌 핵심 단어만 이용하여 문서를 벡터화하고, 문서가 포함하는 다양한 주제를 분해하여 하나의 문서를 여러 벡터의 집합으로 표현한다. KISS에서 수집한 총 3,147개의 논문에 대한 실험을 통해 복합 문서를 단일 벡터로 표현하는 경우의 벡터 왜곡 현상을 확인하였으며, 복합 문서를 의미적으로 분해하여 다중 벡터로 나타내는 제안 방법론에 의해 이러한 왜곡 현상을 보정하고 각 문서를 더욱 정확하게 임베딩할 수 있음을 확인하였다.
According to the rapidly increasing demand for text data analysis, research and investment in text mining are being actively conducted not only in academia but also in various industries. Text mining is generally conducted in two steps. In the first step, the text of the collected document is tokeni...
According to the rapidly increasing demand for text data analysis, research and investment in text mining are being actively conducted not only in academia but also in various industries. Text mining is generally conducted in two steps. In the first step, the text of the collected document is tokenized and structured to convert the original document into a computer-readable form. In the second step, tasks such as document classification, clustering, and topic modeling are conducted according to the purpose of analysis. Until recently, text mining-related studies have been focused on the application of the second steps, such as document classification, clustering, and topic modeling. However, with the discovery that the text structuring process substantially influences the quality of the analysis results, various embedding methods have actively been studied to improve the quality of analysis results by preserving the meaning of words and documents in the process of representing text data as vectors. Unlike structured data, which can be directly applied to a variety of operations and traditional analysis techniques, Unstructured text should be preceded by a structuring task that transforms the original document into a form that the computer can understand before analysis. It is called "Embedding" that arbitrary objects are mapped to a specific dimension space while maintaining algebraic properties for structuring the text data. Recently, attempts have been made to embed not only words but also sentences, paragraphs, and entire documents in various aspects. Particularly, with the demand for analysis of document embedding increases rapidly, many algorithms have been developed to support it. Among them, doc2Vec which extends word2Vec and embeds each document into one vector is most widely used. However, the traditional document embedding method represented by doc2Vec generates a vector for each document using the whole corpus included in the document. This causes a limit that the document vector is affected by not only core words but also miscellaneous words. Additionally, the traditional document embedding schemes usually map each document into a single corresponding vector. Therefore, it is difficult to represent a complex document with multiple subjects into a single vector accurately using the traditional approach. In this paper, we propose a new multi-vector document embedding method to overcome these limitations of the traditional document embedding methods. This study targets documents that explicitly separate body content and keywords. In the case of a document without keywords, this method can be applied after extract keywords through various analysis methods. However, since this is not the core subject of the proposed method, we introduce the process of applying the proposed method to documents that predefine keywords in the text. The proposed method consists of (1) Parsing, (2) Word Embedding, (3) Keyword Vector Extraction, (4) Keyword Clustering, and (5) Multiple-Vector Generation. The specific process is as follows. all text in a document is tokenized and each token is represented as a vector having N-dimensional real value through word embedding. After that, to overcome the limitations of the traditional document embedding method that is affected by not only the core word but also the miscellaneous words, vectors corresponding to the keywords of each document are extracted and make up sets of keyword vector for each document. Next, clustering is conducted on a set of keywords for each document to identify multiple subjects included in the document. Finally, a Multi-vector is generated from vectors of keywords constituting each cluster. The experiments for 3.147 academic papers revealed that the single vector-based traditional approach cannot properly map complex documents because of interference among subjects in each vector. With the proposed multi-vector based method, we ascertained that complex documents can be vec
According to the rapidly increasing demand for text data analysis, research and investment in text mining are being actively conducted not only in academia but also in various industries. Text mining is generally conducted in two steps. In the first step, the text of the collected document is tokenized and structured to convert the original document into a computer-readable form. In the second step, tasks such as document classification, clustering, and topic modeling are conducted according to the purpose of analysis. Until recently, text mining-related studies have been focused on the application of the second steps, such as document classification, clustering, and topic modeling. However, with the discovery that the text structuring process substantially influences the quality of the analysis results, various embedding methods have actively been studied to improve the quality of analysis results by preserving the meaning of words and documents in the process of representing text data as vectors. Unlike structured data, which can be directly applied to a variety of operations and traditional analysis techniques, Unstructured text should be preceded by a structuring task that transforms the original document into a form that the computer can understand before analysis. It is called "Embedding" that arbitrary objects are mapped to a specific dimension space while maintaining algebraic properties for structuring the text data. Recently, attempts have been made to embed not only words but also sentences, paragraphs, and entire documents in various aspects. Particularly, with the demand for analysis of document embedding increases rapidly, many algorithms have been developed to support it. Among them, doc2Vec which extends word2Vec and embeds each document into one vector is most widely used. However, the traditional document embedding method represented by doc2Vec generates a vector for each document using the whole corpus included in the document. This causes a limit that the document vector is affected by not only core words but also miscellaneous words. Additionally, the traditional document embedding schemes usually map each document into a single corresponding vector. Therefore, it is difficult to represent a complex document with multiple subjects into a single vector accurately using the traditional approach. In this paper, we propose a new multi-vector document embedding method to overcome these limitations of the traditional document embedding methods. This study targets documents that explicitly separate body content and keywords. In the case of a document without keywords, this method can be applied after extract keywords through various analysis methods. However, since this is not the core subject of the proposed method, we introduce the process of applying the proposed method to documents that predefine keywords in the text. The proposed method consists of (1) Parsing, (2) Word Embedding, (3) Keyword Vector Extraction, (4) Keyword Clustering, and (5) Multiple-Vector Generation. The specific process is as follows. all text in a document is tokenized and each token is represented as a vector having N-dimensional real value through word embedding. After that, to overcome the limitations of the traditional document embedding method that is affected by not only the core word but also the miscellaneous words, vectors corresponding to the keywords of each document are extracted and make up sets of keyword vector for each document. Next, clustering is conducted on a set of keywords for each document to identify multiple subjects included in the document. Finally, a Multi-vector is generated from vectors of keywords constituting each cluster. The experiments for 3.147 academic papers revealed that the single vector-based traditional approach cannot properly map complex documents because of interference among subjects in each vector. With the proposed multi-vector based method, we ascertained that complex documents can be vec
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
따라서 본 연구에서는 doc2Vec으로 대표되는 기존의 문서 임베딩 방법이 갖는 위의 두 가지 한계를 극복하기 위해 다중 벡터 문서 임베딩 방법론을 제안하고자 한다. 우선 주변 단어의 영향을 받는 한계를 극복하기 위해 제안 방법론은 문서 전체가 아닌 문서의 키워드에 대한 단어 벡터만을 활용하여 문서 벡터를 도출한다.
따라서 본 연구에서는 이와 같이 복합 문서가 하나의 벡터로 표현되는 한계를 극복하기 위하여, 각 문서를 구성하고 있는 주제의 수에 따라 복수개의 벡터로 표현한다. 예를 들어 Doc1의 경우 키워드 집합이 두 개의 그룹으로 분리된다면 제안 방법론은 해당 문서를 두 개의 멤버 벡터(Member Vector)로 표현할 수 있다.
복합 문서는 두 카테고리의 문서를 병합하여 구성되었기 때문에, 본 실험에서는 각 문서에 대해 유사 문서를 두 개씩 추천하여 정확성을 평가하고자 한다. 다중 벡터인 (4)번과 (5)번의 경우 문서를 구성하는 두 개의 멤버 벡터 각각에 대해 가장 인접한 문서를 추천한다.
본 부절에서는 앞에서 소개한 5가지 문서 임베딩 방법론의 성능을 평가하는 방법을 소개한다. 구체적으로는 5가지 문서 임베딩을 반복적으로 수행하고, 각 방식에 기반을 두어 복합 문서 각각에 대해 유사도가 가장 높은 문서를 식별한다.
본 장에서는 제안 방법론의 유용성을 평가하기 위한 실험 수행 과정 및 결과를 요약한다. 본 연구에서는 문서를 다중 벡터로 나타내는 새로운 임베딩 방안을 제시하였다. 하지만 다양한 임베딩 방법 중 어떤 방법에 의해 도출된 벡터가 원본 문서를 더 정확하게 나타내는지 평가할 수 있는 직접적인 기준은 존재하지 않는다.
구체적으로는 카테고리가 식별되어 있는 문서들에 대해 다양한 방식으로 문서 임베딩을 수행하고, 그 결과 각 문서와 유사한 것으로 판단되는 문서들을 식별한다. 이렇게 식별된 유사 문서들이 기준 문서와 동일한 카테고리에 속하는 경우 임베딩이 정확하게 이루어진 것으로 판단하고, 기준 문서와 상이한 카테고리에 속하는 문서를 유사 문서로 판단한 경우 임베딩이 부정확하게 이루어진 것으로 판단하고자 한다.
그러나 최근 텍스트 구조화 작업이 분석 결과의 품질을 실질적으로 좌우한다는 발견에 따라 이 과정에 대한 중요성이 강조되고 있으며, 이에 따라 문서 임베딩에 대한 연구가 활발히 수행되고 있다. 이에 본 연구에서는 doc2Vec으로 대표되는 기존 문서 구조화 방법의 한계를 지적하고, 이를 극복하기 위한 방안을 제시하였다.
물론 키워드가 명시적으로 제공되지 않는 문서의 경우 다양한 분석 방법을 통해 본문의 핵심 단어를 도출하여 이를 키워드로 정의한 후 본 방법론을 적용할 수 있다. 하지만 이는 제안 방법론에서 핵심적으로 다루는 내용이 아니므로, 본 절에서는 본문과 키워드가 명시적으로 구분된 문서에 대해 제안 방법론을 적용하는 과정을 소개한다.
가설 설정
따라서 향후에는 실제로 유통되고 있는 다양한 유형의 문서들에 대해 제안 방법론의 성능을 평가하기 위한 방안이 마련될 필요가 있다. 또한 본 연구에서는 각 문서의 주제가 두 가지로 구성되어 있다는 다소 경직된 가정 하에 실험을 수행하였다. 하지만 실제 생활에서 유통되는 문서는 해당 도메인 및 문서의 특성에 따라 상이한 수의 주제로 구성되어 있다.
본 절에서는 [Figure 3]의 (1) 파싱 및 (2) 단어 임베딩에 해당하는 과정, 즉 문서의 모든 용어를 토큰으로 분리하고 이들을 벡터화하는 과정을 다룬다. 전술한 바와 같이 분석 대상 문서는 본문과 키워드가 명시적으로 구분되어 있는 것으로 가정한다. 우선 파싱을 통해 대상 문서를 구성하는 모든 용어를 토큰 단위로 분리하는데, 여기서 토큰이란 의미를 가진 최소 단위인 형태소를 의미한다.
제안 방법
구체적으로 제안 방법론은 문서 임베딩을 수행하는 과정에서 문서에 대한 사전 지식, 즉 문서 작성자가 직접 선정한 키워드 정보를 적극 반영함으로써, 문서의 핵심 용어에 집중하여 문서 벡터를 생성하는 방안을 제시하였다. 이와 더불어 일반적으로 다양한 주제를 포함하고 있는 문서를 단 하나의 벡터로 표현하는 기존 문서 임베딩 방법론의 한계를 지적하고, 문서의 의미적 분해를 통해 각 문서를 다중 벡터로 표현함으로써 문서의 특질을 보다 정확히 표현하는 방안을 제시하였다.
본 부절에서는 앞에서 소개한 5가지 문서 임베딩 방법론의 성능을 평가하는 방법을 소개한다. 구체적으로는 5가지 문서 임베딩을 반복적으로 수행하고, 각 방식에 기반을 두어 복합 문서 각각에 대해 유사도가 가장 높은 문서를 식별한다. 만약 식별된 문서가 기준 문서와 동일한 카테고리에 속하는 경우 임베딩이 정확하게 이루어진 것으로 판단하고, 기준 문서와 상이한 카테고리에 속하는 문서를 유사 문서로 판단한 경우 임베딩이 부정확하게 이루어진 것으로 판단한다.
두 번째 방식은 각 카테고리의 중심에 기반을 두어 대표 문서를 선정하는 방식이다. 구체적으로는 각 카테고리에 속한 문서들의 키워드 벡터 평균을 산출하여 이를 카테고리의 중심으로 식별한 뒤, 해당 카테고리의 문서 중 카테고리의 중심에 근접한 상위 50개씩의 문서를 각 카테고리의 대표 문서로 선정하여 복합 문서 생성에 사용하였다.
따라서 본 장에서는 임베딩 결과의 활용 측면에서 다양한 임베딩 방법론을 통해 도출된 문서 벡터의 품질을 간접적으로 평가한다. 구체적으로는 카테고리가 식별되어 있는 문서들에 대해 다양한 방식으로 문서 임베딩을 수행하고, 그 결과 각 문서와 유사한 것으로 판단되는 문서들을 식별한다. 이렇게 식별된 유사 문서들이 기준 문서와 동일한 카테고리에 속하는 경우 임베딩이 정확하게 이루어진 것으로 판단하고, 기준 문서와 상이한 카테고리에 속하는 문서를 유사 문서로 판단한 경우 임베딩이 부정확하게 이루어진 것으로 판단하고자 한다.
복합 문서의 구성에 사용된 원본 문서 350개는 단일 문서 집합에서 제외하였다. 그 결과 총 3,847개의 문서(단일 문서 2,797개 + 복합 문서 1,050개)에 대한 학습을 통해 워드 벡터를 학습하였다. 워드 임베딩은 word2Vec 모델링을 사용하였으며, 구체적으로 벡터의 차원은 300차원, 학습 횟수는 50회, 그리고 window size는 5로 지정하였다.
본 절에서는 벡터화된 용어들을 활용하여 문서를 다중 벡터로 임베딩하는 과정, 즉 [Figure 3]의 (3) 키워드 벡터 도출, (4) 키워드 군집화, 그리고 (5) 다중 벡터 생성에 해당하는 과정을 다룬다. 기존의 문서 임베딩이 경우에 따라 핵심 단어보다 오히려 주변 단어의 영향을 크게 받을 수 있다는 한계를 극복하기 위해, 제안 방법론은 전체 단어가 아닌 키워드 단어의 벡터만을 사용하여 문서를 임베딩한다. [Figure 5(b)]에 나타난 토큰 벡터의 경우 키워드뿐 아니라 주변 단어의 벡터도 함께 포함하고 있다.
우선 파싱 단계에서는 대상 문서에 대한 형태소 분석을 통해 모든 용어들을 토큰(Token)으로 분리한다. 다음으로 단어 임베딩을 통해 각 토큰을 N차원의 실수 값을 가진 벡터로 변환한 후, 이들 벡터 중 각 문서별 키워드로 지정된 토큰의 단어 벡터만을 추출하여 문서별 키워드 벡터 집합을 구성한다. 다음으로 문서에 포함된 복합 주제를 식별하기 위해 각 문서별 키워드 집합에 대해 군집 분석을 수행하고, 마지막으로 각 군집을 구성하는 키워드들의 벡터로부터 군집별 벡터를 도출한다.
다음으로 단어 임베딩을 통해 각 토큰을 N차원의 실수 값을 가진 벡터로 변환한 후, 이들 벡터 중 각 문서별 키워드로 지정된 토큰의 단어 벡터만을 추출하여 문서별 키워드 벡터 집합을 구성한다. 다음으로 문서에 포함된 복합 주제를 식별하기 위해 각 문서별 키워드 집합에 대해 군집 분석을 수행하고, 마지막으로 각 군집을 구성하는 키워드들의 벡터로부터 군집별 벡터를 도출한다. 각 단계별 구체적 설명은 본 장의 이후 절에서 가상의 예를 통해 소개한다.
하지만 다양한 임베딩 방법 중 어떤 방법에 의해 도출된 벡터가 원본 문서를 더 정확하게 나타내는지 평가할 수 있는 직접적인 기준은 존재하지 않는다. 따라서 본 장에서는 임베딩 결과의 활용 측면에서 다양한 임베딩 방법론을 통해 도출된 문서 벡터의 품질을 간접적으로 평가한다. 구체적으로는 카테고리가 식별되어 있는 문서들에 대해 다양한 방식으로 문서 임베딩을 수행하고, 그 결과 각 문서와 유사한 것으로 판단되는 문서들을 식별한다.
우선 주변 단어의 영향을 받는 한계를 극복하기 위해 제안 방법론은 문서 전체가 아닌 문서의 키워드에 대한 단어 벡터만을 활용하여 문서 벡터를 도출한다. 또한 복합 주제를 단일 벡터로 표현해 온 기존 기법의 한계를 극복하기 위해, 제안 방법론은 키워드에 대한 군집화를 통해 주제별 키워드 그룹을 생성하고 각 그룹별로 주제 벡터를 생성한다. 즉 제안 방법론은 임의의 문서의 키워드가 N개의 주제로 그룹화되는 경우 해당 문서를 N개의 벡터로 임베딩한다.
본 방법론은 본문 내용과 키워드가 명시적으로 구분되어 있는 문서를 적용 대상으로 한다. 물론 키워드가 명시적으로 제공되지 않는 문서의 경우 다양한 분석 방법을 통해 본문의 핵심 단어를 도출하여 이를 키워드로 정의한 후 본 방법론을 적용할 수 있다. 하지만 이는 제안 방법론에서 핵심적으로 다루는 내용이 아니므로, 본 절에서는 본문과 키워드가 명시적으로 구분된 문서에 대해 제안 방법론을 적용하는 과정을 소개한다.
복합 문서의 생성에 사용될 문서를 카테고리별로 선정하는 방식은 두 가지로 적용하여 각각의 성능을 실험하였다. 첫 번째 기준은 무작위 추출 방식으로, 각 카테고리마다 각 조합에 참여할 문서를 무작위로 50개씩 선정하였다.
이렇게 식별된 모든 토큰들은 단어 임베딩을 통해 실수 값을 가진 벡터로 구조화된다. 본 연구에서는 현재 사용되고 있는 단어 임베딩 방법 중 단어의 특질(Features)을 가장 잘 반영하는 것으로 알려진 word2Vec 알고리즘을 통해 토큰을 벡터로 변환한다. 앞에서 도출한 토큰을 N차원 벡터로 변환한 예는 [Figure 5]에서 확인할 수 있다.
본 장에서는 제안하는 문서 임베딩 방법론, 즉 문서의 핵심 내용을 담고 있는 키워드를 활용하여 하나의 문서를 다중 벡터로 표현하는 방안을 예시와 함께 소개한다. 제안 방법론의 전체 과정은 [Figure 3]와 같다.
본 절에서는 벡터화된 용어들을 활용하여 문서를 다중 벡터로 임베딩하는 과정, 즉 [Figure 3]의 (3) 키워드 벡터 도출, (4) 키워드 군집화, 그리고 (5) 다중 벡터 생성에 해당하는 과정을 다룬다. 기존의 문서 임베딩이 경우에 따라 핵심 단어보다 오히려 주변 단어의 영향을 크게 받을 수 있다는 한계를 극복하기 위해, 제안 방법론은 전체 단어가 아닌 키워드 단어의 벡터만을 사용하여 문서를 임베딩한다.
본 절에서는 제안 방법론의 성능의 비교에 사용된 5가지의 문서 임베딩 방식, 즉 (1) Gen_doc2Vec, (2) doc2Vec_Key, (3) Proposed SV, (4) Multi-Vector (Ideal), 그리고 (5) Multi-Vector (Clustering) 방식을 소개한다(Table 3)
따라서 본 연구에서는 doc2Vec으로 대표되는 기존의 문서 임베딩 방법이 갖는 위의 두 가지 한계를 극복하기 위해 다중 벡터 문서 임베딩 방법론을 제안하고자 한다. 우선 주변 단어의 영향을 받는 한계를 극복하기 위해 제안 방법론은 문서 전체가 아닌 문서의 키워드에 대한 단어 벡터만을 활용하여 문서 벡터를 도출한다. 또한 복합 주제를 단일 벡터로 표현해 온 기존 기법의 한계를 극복하기 위해, 제안 방법론은 키워드에 대한 군집화를 통해 주제별 키워드 그룹을 생성하고 각 그룹별로 주제 벡터를 생성한다.
그 결과 총 3,847개의 문서(단일 문서 2,797개 + 복합 문서 1,050개)에 대한 학습을 통해 워드 벡터를 학습하였다. 워드 임베딩은 word2Vec 모델링을 사용하였으며, 구체적으로 벡터의 차원은 300차원, 학습 횟수는 50회, 그리고 window size는 5로 지정하였다. 그 결과 총 36,798개의 단어 벡터를 도출하였다.
구체적으로 제안 방법론은 문서 임베딩을 수행하는 과정에서 문서에 대한 사전 지식, 즉 문서 작성자가 직접 선정한 키워드 정보를 적극 반영함으로써, 문서의 핵심 용어에 집중하여 문서 벡터를 생성하는 방안을 제시하였다. 이와 더불어 일반적으로 다양한 주제를 포함하고 있는 문서를 단 하나의 벡터로 표현하는 기존 문서 임베딩 방법론의 한계를 지적하고, 문서의 의미적 분해를 통해 각 문서를 다중 벡터로 표현함으로써 문서의 특질을 보다 정확히 표현하는 방안을 제시하였다. 실제 문서 3,147건에 대한 실험을 통해 복합 문서의 단일 벡터 표현에서 나타나는 왜곡 현상을 보정하고 각 문서를 더욱 정확하게 임베딩할 수 있음을 확인하였다.
실생활에서 유통되는 대부분의 문서들은 하나의 문서가 여러 주제를 포함하고 있는 복합 문서로 간주될 수 있으며, 제안 방법론의 우수성은 다양한 주제를 포함하고 있는 문서의 임베딩에서 더욱 명확하게 나타날 것으로 예상한다. 이처럼 복합 문서의 표현 과정에서 나타나는 문서 임베딩 방법론의 성능 차이를 보다 명확히 비교하기 위해 본 실험에서는 각 문서의 카테고리 정보를 이용하여 인위적으로 복합 문서를 생성하였으며, 그 구체적인 과정은 다음과 같다.
본 실험에서는 이러한 조건을 만족하는 데이터로 한국학술정보(KISS) 사이트에서 총 7개에 주제에 대해 3,147개의 논문을 수집하였다. 전반적인 실험은 Python 3.6을 이용하여 진행하였으며, 토큰 분리 작업에는 Komoran, word2Vec 모델링에는 Gensim, 벡터 연산에는 Numpy 패키지를 주로 사용하였다. 본 절에서는 실험의 전체 개요를 소개하고, 본 장의 이후 절에서는 실험의 주요 과정 및 결과를 소개한다.
제안 방법론은 (1) 파싱(Parsing), (2) 단어 임베딩, (3) 키워드 벡터 도출, (4) 키워드 군집화, 그리고 (5) 다중 벡터 생성의 주요 모듈로 구성된다. 우선 파싱 단계에서는 대상 문서에 대한 형태소 분석을 통해 모든 용어들을 토큰(Token)으로 분리한다.
제안 방법론은 다양한 주제를 포함하고 있는 복합 문서를 하나의 벡터로 나타내는 기존 문서 임베딩 방식에 대한 한계를 지적하고 있다. 실생활에서 유통되는 대부분의 문서들은 하나의 문서가 여러 주제를 포함하고 있는 복합 문서로 간주될 수 있으며, 제안 방법론의 우수성은 다양한 주제를 포함하고 있는 문서의 임베딩에서 더욱 명확하게 나타날 것으로 예상한다.
마지막 단계인 Phase 3에서는 동일한 문서 집합을 여러 방법론에 의해 임베딩한다. 제안 방법론을 포함하여 총 다섯 가지 방법으로 문서 임베딩을 수행하며, 이에 대한 자세한 내용은 4.3절에서 다룬다. 또한 이와 같이 다섯 가지 방법으로 수행된 문서 임베딩에 대한 성능 평가 결과는 본 장의 마지막 절인 4.
또한 복합 주제를 단일 벡터로 표현해 온 기존 기법의 한계를 극복하기 위해, 제안 방법론은 키워드에 대한 군집화를 통해 주제별 키워드 그룹을 생성하고 각 그룹별로 주제 벡터를 생성한다. 즉 제안 방법론은 임의의 문서의 키워드가 N개의 주제로 그룹화되는 경우 해당 문서를 N개의 벡터로 임베딩한다.
대상 데이터
본 방법론은 본문 내용과 키워드가 명시적으로 구분되어 있는 문서를 적용 대상으로 한다. 물론 키워드가 명시적으로 제공되지 않는 문서의 경우 다양한 분석 방법을 통해 본문의 핵심 단어를 도출하여 이를 키워드로 정의한 후 본 방법론을 적용할 수 있다.
따라서 본 연구의 실험 데이터는 각 문서별 키워드 목록과 함께 각 문서의 소속 카테고리가 명시되어 있어야 한다. 본 실험에서는 이러한 조건을 만족하는 데이터로 한국학술정보(KISS) 사이트에서 총 7개에 주제에 대해 3,147개의 논문을 수집하였다. 전반적인 실험은 Python 3.
본 연구는 다음과 같은 측면에서 보완이 필요하다. 본 연구의 실험에서는 제안 방법론의 성능을 평가하기 위해 복합 문서를 임의로 생성하여 실험에 사용하였다. 이는 문서 임베딩의 품질을 평가하기 위한 새로운 방안을 제시했다는 측면에서 기여로 인정받을 수 있으나, 이러한 복합 문서는 실제로는 존재하지 않기 때문에 이에 대한 결과를 일반화하기에는 다소 무리가 있다.
실험에 사용된 문서는 ‘인문과학’, ‘사회과학’, ‘자연과학’, ‘공학’, ‘농학’, ‘의약학’, 그리고 ‘예체능’의 7개 카테고리에 속한 3,147개의 논문의 초록이다.
전술한 방식에 따라 무작위 선정 방식에 의해 복합 문서 1,050개를 생성하고, 중심 기반 방식에 의해 복합 문서 1,050개를 선정하였다. 복합 문서의 구성에 사용된 원본 문서 350개는 단일 문서 집합에서 제외하였다.
복합 문서의 생성에 사용될 문서를 카테고리별로 선정하는 방식은 두 가지로 적용하여 각각의 성능을 실험하였다. 첫 번째 기준은 무작위 추출 방식으로, 각 카테고리마다 각 조합에 참여할 문서를 무작위로 50개씩 선정하였다. 두 번째 방식은 각 카테고리의 중심에 기반을 두어 대표 문서를 선정하는 방식이다.
총 7개의 카테고리에 대해 2개의 카테고리 조합(예: ‘자연과학 + 공학’)을 만들 수 있는 경우의 수는 총 21개이며, 이들 각 조합에 대해 50개씩의 복합 문서를 생성한다.
데이터처리
하지만 이 방식은 성능 비교를 위한 실험용으로만 수행 가능한 방식으로, 현실 세계의 복합 문서를 구성하는 키워드 집합은 이와 같은 방식으로 분할 가능한 사전 정보를 갖고 있지 않다. 따라서 제안 방법론에서는 키워드에 대한 군집화를 통해 키워드 집합을 부분 집합으로 분할하며, 이러한 방식으로 문서의 멤버 벡터를 도출한 결과가 (5) Multi-Vector(Clustering) 이다. 즉 본 연구에서 제안하는 핵심 방법론은 (5)이며, (4)는 실제로는 적용이 불가능하지만 제안 방법론 성능의 상대적 비교를 위해 소개한 이상적인 모델이다.
이론/모형
예를 들어 Doc1의 경우 키워드 집합이 두 개의 그룹으로 분리된다면 제안 방법론은 해당 문서를 두 개의 멤버 벡터(Member Vector)로 표현할 수 있다. 키워드 벡터를 그룹화하는 과정은 일반적인 군집화 알고리즘을 통해 수행되므로 이 과정에 대한 자세한 설명은 생략하며, 제안 방법론은 가장 대표적인 군집화 알고리즘 중 하나인 K-means 기법을 이용한다.
성능/효과
[Figure 12]에서 중심 기반 선정 방식과 무작위 선정 방식의 두 경우 모두 Multi-Vector(Ideal) 방식이 가장 우수한 성능, 즉 Totally Correct가 가장 높고 Completely Incorrect가 가장 낮게 나타나는 결과를 보임을 확인하였다. 또한 제안하는 방식인 Multi-Vector(Clustering)의 경우 원 문서의 카테고리 사전 정보를 사용하지 않았음에도 Multi-Vector(Ideal)와 거의 유사한 정확도를 갖는 것으로 나타났다. 즉 전반적으로 다중 벡터 방식이 단일 벡터 방식에 비해 우수한 성능을 나타낸 것으로 확인되었다.
이와 더불어 일반적으로 다양한 주제를 포함하고 있는 문서를 단 하나의 벡터로 표현하는 기존 문서 임베딩 방법론의 한계를 지적하고, 문서의 의미적 분해를 통해 각 문서를 다중 벡터로 표현함으로써 문서의 특질을 보다 정확히 표현하는 방안을 제시하였다. 실제 문서 3,147건에 대한 실험을 통해 복합 문서의 단일 벡터 표현에서 나타나는 왜곡 현상을 보정하고 각 문서를 더욱 정확하게 임베딩할 수 있음을 확인하였다. 제안 방법론을 통해 더욱 정교한 텍스트 구조화를 수행할 수 있으며, 특히 실무적 관점에서 분류, 군집화, 그리고 토픽 모델링 등 다양한 텍스트 분석 결과의 품질을 향상시키는 효과를 거둘 수 있을 것으로 기대한다.
또한 제안하는 방식인 Multi-Vector(Clustering)의 경우 원 문서의 카테고리 사전 정보를 사용하지 않았음에도 Multi-Vector(Ideal)와 거의 유사한 정확도를 갖는 것으로 나타났다. 즉 전반적으로 다중 벡터 방식이 단일 벡터 방식에 비해 우수한 성능을 나타낸 것으로 확인되었다. 특히 Totally Correct, 즉 두 개의 카테고리를 모두 맞춘 문서의 비율은 전통적인 doc2Vec를 포함한 세 가지 단일 벡터 방식의 경우 8% ~ 10.
즉 전반적으로 다중 벡터 방식이 단일 벡터 방식에 비해 우수한 성능을 나타낸 것으로 확인되었다. 특히 Totally Correct, 즉 두 개의 카테고리를 모두 맞춘 문서의 비율은 전통적인 doc2Vec를 포함한 세 가지 단일 벡터 방식의 경우 8% ~ 10.67%로 나타난 반면, 본 연구에서 제안하는 Multi-Vector(Clustering)의 경우 이 비율이 23.71% ~ 24.86%로 높게 나타남을 확인할 수 있다. 위의 결과에서 더욱 주목해야 할 부분은 막대 그래프의 최상단에 위치한 Completely Incorrect의 비율이다.
후속연구
하지만 실제 생활에서 유통되는 문서는 해당 도메인 및 문서의 특성에 따라 상이한 수의 주제로 구성되어 있다. 따라서 향후 연구에서는 각 문서를 구성하고 있는 주제의 수가 서로 다를 뿐 아니라 그 수가 미리 알려지지 않은 상황을 가정한 환경에서의 보다 엄밀한 성능 평가가 이루어져야 한다.
이는 문서 임베딩의 품질을 평가하기 위한 새로운 방안을 제시했다는 측면에서 기여로 인정받을 수 있으나, 이러한 복합 문서는 실제로는 존재하지 않기 때문에 이에 대한 결과를 일반화하기에는 다소 무리가 있다. 따라서 향후에는 실제로 유통되고 있는 다양한 유형의 문서들에 대해 제안 방법론의 성능을 평가하기 위한 방안이 마련될 필요가 있다. 또한 본 연구에서는 각 문서의 주제가 두 가지로 구성되어 있다는 다소 경직된 가정 하에 실험을 수행하였다.
실제 문서 3,147건에 대한 실험을 통해 복합 문서의 단일 벡터 표현에서 나타나는 왜곡 현상을 보정하고 각 문서를 더욱 정확하게 임베딩할 수 있음을 확인하였다. 제안 방법론을 통해 더욱 정교한 텍스트 구조화를 수행할 수 있으며, 특히 실무적 관점에서 분류, 군집화, 그리고 토픽 모델링 등 다양한 텍스트 분석 결과의 품질을 향상시키는 효과를 거둘 수 있을 것으로 기대한다.
질의응답
핵심어
질문
논문에서 추출한 답변
임베딩은 무엇인가?
다양한 연산 및 전통적인 분석 기법의 직접 적용이 가능한 정형 데이터와 달리, 모든 비정형 텍스트는 본 분석에 앞서 원본 문서를 컴퓨터가 이해할 수 있는 형태로 변환하는 구조화 작업이 선행되어야 한다. 텍스트 데이터의 구조화를 위해 임의의 객체를 대수적 성질을 유지하면서 특 정 차원의 공간에 사상하는 것을 임베딩(Embedding)이라고 하며, 구체적으로는 단어를 벡터로 나타내는 단어 임베딩(Word Embedding)과 문서를 벡터로 나타내는 문서 임베딩(Document Embedding)으로 실현된다. 단어의 구조화를 위한 가장 고전적인 방식은 원 핫 인코딩(One-hot Encoding) 방식이다.
분산 표상 방식은 대상 데이터를 어떻게 표현하는가?
이러한 원 핫 인코딩 방식과 달리 분산 표상(Distributed Representation)(Hinton, 1986) 방식은 대상 데이터를 연속형의 실수 값을 가진 밀집 벡터(Dense Vector)로 표현한다. 이 방식은 계산의 복잡성을 줄여줄 뿐 아니라, 단어 벡터 간 비교를 통한 유사도 분석이 가능하다는 장점을 갖는다.
분산 표상 방식을 사용하면 어떤 장점이 생기는가?
이러한 원 핫 인코딩 방식과 달리 분산 표상(Distributed Representation)(Hinton, 1986) 방식은 대상 데이터를 연속형의 실수 값을 가진 밀집 벡터(Dense Vector)로 표현한다. 이 방식은 계산의 복잡성을 줄여줄 뿐 아니라, 단어 벡터 간 비교를 통한 유사도 분석이 가능하다는 장점을 갖는다. 예를 들어 {PC, NOTEBOOK, RADIO}의 세 단어가 원 핫 인코딩에 의해 각각 PC = (1, 0, 0), NOTEBOOK = (0, 1, 0), 그리고 RADIO = (0, 0, 1) 로 표현되었다고 가정하자.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.