KR20200137290A - Text sensibility analysis apparatus and method threrof - Google Patents

Text sensibility analysis apparatus and method threrof Download PDF

Info

Publication number
KR20200137290A
KR20200137290A KR1020190063386A KR20190063386A KR20200137290A KR 20200137290 A KR20200137290 A KR 20200137290A KR 1020190063386 A KR1020190063386 A KR 1020190063386A KR 20190063386 A KR20190063386 A KR 20190063386A KR 20200137290 A KR20200137290 A KR 20200137290A
Authority
KR
South Korea
Prior art keywords
text
word
embedding
value
words
Prior art date
Application number
KR1020190063386A
Other languages
Korean (ko)
Other versions
KR102326473B1 (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 서울시립대학교 산학협력단
Priority to KR1020190063386A priority Critical patent/KR102326473B1/en
Publication of KR20200137290A publication Critical patent/KR20200137290A/en
Application granted granted Critical
Publication of KR102326473B1 publication Critical patent/KR102326473B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • G06F40/35Discourse or dialogue representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)

Abstract

The present invention relates to a text sentiment analysis device which performs sentiment analysis on text, which comprises: a construction unit constructing a sentiment analyzing model including an embedding layer receiving input of text composed of at least one sentence including a plurality of words, and calculating an embedding value for the word based on context of at least one sentence, and at least one complete connection layer outputting the sentiment information on the text; and an analysis unit analyzing the sentiment information on the text input in real time by using the constructed sentiment analyzing model. The embedding layer may be pre-trained to calculate the embedding value for a word based on the context of a plurality of sentences.

Description

텍스트 감성 분석 장치 및 방법{TEXT SENSIBILITY ANALYSIS APPARATUS AND METHOD THREROF}Text sentiment analysis apparatus and method {TEXT SENSIBILITY ANALYSIS APPARATUS AND METHOD THREROF}

본 발명은 텍스트 감성 분석 장치 및 방법에 관한 것이다.The present invention relates to a text sentiment analysis apparatus and method.

소셜 미디어의 발달과 온라인 상품 시장의 확산으로 인해 실시간 생성되는 텍스트의 양이 폭발적으로 증가해왔다.Due to the development of social media and the spread of the online product market, the amount of text generated in real time has exploded.

이처럼 끊임없이 생성되는 텍스트를 텍스트 스트림(text stream)이라 칭하며, 이러한 텍스트 스트림을 분석하여 대중의 의견을 파악하는 것은 효과적인 의사결정을 가능하게 한다.This constantly generated text is called a text stream, and analyzing the text stream to understand the opinions of the public enables effective decision-making.

한편, 텍스트 마이닝 기법 중 감성 분석은 대중의 반응을 실시간으로 모니터링할 수 있는 좋은 분석 방법이다. On the other hand, sentiment analysis among text mining techniques is a good analysis method that can monitor public reactions in real time.

이때, 시시각각 다양한 주제를 갖는 텍스트 스트림에 대한 감성 분석은 모델의 구축과 개선이 실시간으로 이루어져야 의미가 있다. At this time, it is meaningful only when the model is built and improved in real time to analyze the sentiment of a text stream that has various topics.

이를 위해서는 순차적으로 들어오는 데이터에 대한 즉각적인 학습을 실행하는 온라인 학습이 필요하다. 그러나, 텍스트 스트림을 저장한 후 저장한 데이터에 대해 반복 학습을 실행하는 배치 학습은 텍스트 스트림 분석에 적절하지 않은 방법이다.For this, online learning is required to perform immediate learning on sequentially incoming data. However, batch learning in which the text stream is stored and then iterative learning is performed on the stored data is not suitable for text stream analysis.

또한, 온라인 학습은 스트림 형태의 데이터에 대하여 단 한번만의 조회를 수행하여 학습 모델을 얻어내는 학습 기법이다. 이것이 가능하기 위해서는 데이터로부터 좋은 특징을 추출하여 데이터에 대한 단일 조회만으로 데이터의 패턴을 파악할 수 있어야 한다. In addition, online learning is a learning technique that obtains a learning model by performing a single inquiry on data in the form of a stream. In order for this to be possible, it is necessary to extract good features from the data and grasp the pattern of the data with only a single inquiry for the data.

아울러, 학습 과정이 신속히 이루어져 스트림 데이터의 처리 지연을 피할 수 있어야 한다. 즉, 온라인 학습이 가능한 딥러닝 모델은 데이터로부터 좋은 특징을 추출함과 동시에 신속한 학습을 위한 간단한 구조를 가져야 한다.In addition, the learning process must be made quickly to avoid delays in processing of stream data. That is, a deep learning model capable of online learning must have a simple structure for rapid learning while extracting good features from data.

하지만, 딥러닝에서 특징 추출과 패턴 학습이 함께 이루어진다는 점을 고려할 때, 간단한 구조를 가지면서 좋은 특징을 추출하는 것은 동시에 만족하기 어렵다는 한계가 있었다.However, considering that feature extraction and pattern learning are performed together in deep learning, there is a limitation that it is difficult to satisfy at the same time to extract good features while having a simple structure.

따라서, 텍스트로부터 온라인 학습을 위한 좋은 특징을 추출하기 위해서는 문맥 기반 단어 임베딩이 요구되는데, 기존 스트림 환경에서 감성 분석을 위한 딥러닝 연구의 경우, 문맥에 의존하지 않는 단어 임베딩을 통한 배치 학습으로 딥러닝 모델을 구축한 후 이를 실시간으로 운용하는 방법에 초점을 맞추어 왔다.Therefore, in order to extract good features for online learning from text, context-based word embedding is required.In the case of deep learning research for emotional analysis in the existing stream environment, deep learning through batch learning through word embedding that does not depend on context After building a model, it has focused on how to operate it in real time.

그러나, 이 방식은 주제가 지속적으로 바뀌는 텍스트 스트림 환경에 적절하지 않으며, 또한 이는 배치 학습을 위해서 텍스트를 저장해 놓아야 한다는 단점을 가지고 있었다.However, this method is not suitable for a text stream environment in which the subject is constantly changing, and it has a disadvantage that texts must be stored for batch learning.

본 발명은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 단어를 수치화하여 임베딩 값을 산출하는 임베딩 계층을 사전 학습시키되, 문맥에 기초하여 단어에 대한 임베딩 값을 산출하도록 임베딩 계층을 학습시킴으로써, 동일한 단어의 경우에도, 문맥에 따라 다른 임베딩 값을 산출하도록 하여, 텍스트 마이닝 기법의 감성 분석 정확도를 향상시킬 수 있는 텍스트 감성 분석 장치 및 방법을 제공하고자 한다.The present invention is to solve the problems of the prior art described above, by pre-training an embedding layer that calculates an embedding value by numerically converting a word, and by learning the embedding layer to calculate an embedding value for a word based on context, the same Even in the case of words, it is intended to provide a text sentiment analysis apparatus and method capable of improving the sensitivity analysis accuracy of a text mining technique by calculating different embedding values according to context.

다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.However, the technical problem to be achieved by the present embodiment is not limited to the technical problems as described above, and other technical problems may exist.

상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 일 측면에 따른 텍스트에 대한 감성 분석을 수행하는 텍스트 감성 분석 장치는, 복수의 단어를 포함하는 적어도 하나 이상의 문장들로 구성되는 텍스트를 입력받고, 상기 적어도 하나 이상의 문장의 문맥에 기초하여 상기 단어에 대한 임베딩 값을 산출하는 임베딩 계층 및 상기 산출된 임베딩 값을 입력받고, 상기 텍스트에 대한 감성 정보를 출력하는 적어도 하나의 완전 연결 계층을 포함하는 감성 분석 모델을 구축하는 구축부; 및 상기 구축된 감성 분석 모델을 이용하여 실시간으로 입력되는 텍스트에 대한 감성 정보를 분석하는 분석부를 포함하되, 상기 임베딩 계층은 복수의 문장의 문맥에 기초하여 단어에 대한 임베딩 값을 산출하도록 사전 학습될 수 있다.As a technical means for achieving the above-described technical problem, the text sentiment analysis device for performing sentiment analysis on text according to an aspect of the present invention inputs text composed of at least one sentence including a plurality of words Receiving, and calculating an embedding value for the word based on the context of the at least one sentence, and at least one fully connected layer receiving the calculated embedding value and outputting sentiment information for the text A construction unit for building a sentiment analysis model; And an analysis unit for analyzing emotion information for text input in real time using the built emotion analysis model, wherein the embedding layer is pre-trained to calculate embedding values for words based on the context of a plurality of sentences. I can.

또한, 본 발명의 일 측면에 따른 텍스트에 대한 감성 분석을 수행하는 텍스트 감성 분석 방법은, 감성 분석 모델을 구축하는 단계; 및 상기 구축된 감성 분석 모델을 이용하여 실시간으로 입력되는 텍스트에 대한 감성 정보를 분석하는 단계를 포함하되, 상기 감성 분석 모델을 구축하는 단계는, 복수의 단어를 포함하는 적어도 하나 이상의 문장들로 구성되는 텍스트를 입력받고, 상기 적어도 하나 이상의 문장의 문맥에 기초하여 상기 단어에 대한 임베딩 값을 산출하는 단계; 및 상기 산출된 임베딩 값을 입력받고, 상기 텍스트에 대한 감성 정보를 출력하는 단계를 포함하고, 상기 단어에 대한 임베딩 값의 산출은 복수의 문장의 문맥에 기초하여 단어에 대한 임베딩 값을 산출하도록 한 사전 학습에 기초할 수 있다.In addition, a text sentiment analysis method for performing sentiment analysis on a text according to an aspect of the present invention includes: establishing a sentiment analysis model; And analyzing the sentiment information for the text input in real time using the built sentiment analysis model, wherein the step of constructing the sentiment analysis model comprises at least one sentence including a plurality of words Receiving text to be input, and calculating an embedding value for the word based on the context of the at least one sentence; And receiving the calculated embedding value and outputting sentiment information for the text, wherein the embedding value for the word is calculated to calculate the embedding value for the word based on the context of a plurality of sentences. It can be based on prior learning.

상술한 과제 해결 수단은 단지 예시적인 것으로서, 본 발명을 제한하려는 의도로 해석되지 않아야 한다. 상술한 예시적인 실시예 외에도, 도면 및 발명의 상세한 설명에 기재된 추가적인 실시예가 존재할 수 있다.The above-described problem solving means are merely exemplary and should not be construed as limiting the present invention. In addition to the above-described exemplary embodiments, there may be additional embodiments described in the drawings and detailed description of the invention.

전술한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 본 발명은 단어를 수치화하여 임베딩 값을 산출하는 임베딩 계층을 사전 학습시키되, 문맥에 기초하여 단어에 대한 임베딩 값을 산출하도록 임베딩 계층을 학습시킴으로써, 동일한 단어의 경우에도, 문맥에 따라 다른 임베딩 값을 산출하도록 하여, 텍스트 마이닝 기법의 감성 분석 정확도를 향상시킬 수 있는 텍스트 감성 분석 장치 및 방법을 제공할 수 있다.According to any one of the above-described problem solving means of the present invention, the present invention pre-trains an embedding layer for calculating an embedding value by quantifying a word, but by learning the embedding layer to calculate an embedding value for a word based on the context. , Even in the case of the same word, it is possible to provide a text sentiment analysis apparatus and method capable of improving the sentiment analysis accuracy of the text mining technique by calculating different embedding values according to context.

또한, 본 발명은 문맥에 기초하여 단어에 대한 임베딩 값을 산출하도록 사전 학습된 임베딩 계층을 이용하여, 텍스트에 대한 감성 분석을 수행하는 감성 분석 모델을 구축함으로써, 간단한 구조로 텍스트에 대한 감성 분석을 수행할 수 있도록 하는 텍스트 감성 분석 장치 및 방법을 제공할 수 있다.In addition, the present invention uses a pre-learned embedding layer to calculate an embedding value for a word based on the context, and constructs a sentiment analysis model that performs sentiment analysis on text, thereby performing sentiment analysis on text with a simple structure. It is possible to provide an apparatus and method for analyzing text sentiment that can be performed.

아울러, 본 발명은 텍스트별 감성 분석 결과를 학습하여, 입력되는 텍스트에 대해 보다 신속한 감성 분석이 가능하도록 하되, 사전 학습된 임베딩 계층의 경우, 텍스트별 감성 분석 결과 학습 과정에서 제외시킴으로써, 보다 신속하게 텍스트에 대한 감성 분석 학습이 가능하도록 하는 텍스트 감성 분석 장치 및 방법을 제공할 수 있다.In addition, the present invention learns the sentiment analysis result for each text to enable a more rapid sentiment analysis for the input text, but in the case of the pre-learned embedding layer, by excluding it from the learning process of the sentiment analysis result for each text It is possible to provide an apparatus and method for analyzing text sentiment to enable learning of sentiment analysis on text.

도 1은 본 발명의 일 실시예에 따른 텍스트 감성 분석 장치의 구성을 나타낸 도면이다.
도 2는 본 발명의 일 실시예에 따른 감성 분석 모델의 구성을 나타낸 도면이다.
도 3은 본 발명의 일 실시예에 따른 은닉 계층의 구성을 나타낸 도면이다.
도 4는 본 발명의 일 실시예에 따른 은닉층의 구성을 나타낸 도면이다.
도 5는 본 발명의 일 실시예에 따른 가중치 할당부의 가중치 할당 방법을 나타낸 도면이다.
도 6은 본 발명의 일 실시예에 따른 텍스트 감성 분석 방법의 흐름을 나타낸 도면이다.
도 7은 본 발명의 일 실시예에 따른 감성 분석 모델 구축 방법의 흐름을 나타낸 도면이다.
1 is a diagram showing the configuration of a text sentiment analysis apparatus according to an embodiment of the present invention.
2 is a diagram showing the configuration of an emotion analysis model according to an embodiment of the present invention.
3 is a diagram showing the configuration of a hidden layer according to an embodiment of the present invention.
4 is a diagram showing the configuration of a hidden layer according to an embodiment of the present invention.
5 is a diagram illustrating a weight allocation method of a weight allocation unit according to an embodiment of the present invention.
6 is a diagram illustrating a flow of a text sentiment analysis method according to an embodiment of the present invention.
7 is a diagram illustrating a flow of a method for constructing an emotion analysis model according to an embodiment of the present invention.

아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those of ordinary skill in the art can easily implement the present invention. However, the present invention may be implemented in various different forms and is not limited to the embodiments described herein. In the drawings, parts irrelevant to the description are omitted in order to clearly describe the present invention, and similar reference numerals are assigned to similar parts throughout the specification.

명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. Throughout the specification, when a part is said to be "connected" to another part, this includes not only "directly connected" but also "electrically connected" with another element interposed therebetween. . In addition, when a part "includes" a certain component, it means that other components may be further included rather than excluding other components unless specifically stated to the contrary.

본 명세서에 있어서 '부(部)'란, 하드웨어에 의해 실현되는 유닛(unit), 소프트웨어에 의해 실현되는 유닛, 양방을 이용하여 실현되는 유닛을 포함한다. 또한, 1 개의 유닛이 2 개 이상의 하드웨어를 이용하여 실현되어도 되고, 2 개 이상의 유닛이 1 개의 하드웨어에 의해 실현되어도 된다. In the present specification, the term "unit" includes a unit realized by hardware, a unit realized by software, and a unit realized using both. Further, one unit may be realized using two or more hardware, or two or more units may be realized using one hardware.

본 명세서에 있어서 단말 또는 디바이스가 수행하는 것으로 기술된 동작이나 기능 중 일부는 해당 단말 또는 디바이스와 연결된 서버에서 대신 수행될 수도 있다. 이와 마찬가지로, 서버가 수행하는 것으로 기술된 동작이나 기능 중 일부도 해당 서버와 연결된 단말 또는 디바이스에서 수행될 수도 있다. In the present specification, some of the operations or functions described as being performed by the terminal or device may be performed instead by a server connected to the terminal or device. Likewise, some of the operations or functions described as being performed by the server may also be performed by a terminal or device connected to the server.

이하, 첨부된 구성도 또는 처리 흐름도를 참고하여, 본 발명의 실시를 위한 구체적인 내용을 설명하도록 한다. Hereinafter, with reference to the accompanying configuration diagram or processing flow chart, specific details for the implementation of the present invention will be described.

도 1은 본 발명의 일 실시예에 따른 텍스트 감성 분석 장치의 구성을 나타낸 도면이고, 도 2는 본 발명의 일 실시예에 따른 감성 분석 모델의 구성을 나타낸 도면이다.1 is a view showing the configuration of a text sentiment analysis device according to an embodiment of the present invention, Figure 2 is a view showing the configuration of a sentiment analysis model according to an embodiment of the present invention.

먼저, 도 1을 참조하면, 본 발명의 일 실시예에 따른 텍스트 감성 분석 장치(100)는 구축부(110) 및 분석부(130)를 포함할 수 있다.First, referring to FIG. 1, the text sentiment analysis apparatus 100 according to an embodiment of the present invention may include a construction unit 110 and an analysis unit 130.

구축부(110)는 입력되는 텍스트의 감성을 분석하기 위해 후술하는 감성 분석 모델(200)을 구축할 수 있다. 또한, 구축부(110)는 후술하는 감성 분석 모델(200)을 구성하는 완전 연결 계층(230)을 학습시키는 학습부(111)를 포함할 수 있다.The construction unit 110 may build a sentiment analysis model 200 to be described later in order to analyze the sentiment of the input text. In addition, the construction unit 110 may include a learning unit 111 for learning the fully connected layer 230 constituting the emotion analysis model 200 to be described later.

여기서, 감성 분석 모델이란, 텍스트 또는 텍스트에 포함되는 단어에 대해 해당 텍스트를 입력한 사용자의 감정과 관련된 정보를 판단하여 분석하는 텍스트 마이닝(Text mining) 모델일 수 있다.Here, the sentiment analysis model may be a text mining model that determines and analyzes information related to the emotion of a user who has input the text for a text or a word included in the text.

이어서, 이하에서는, 도 2를 참조하여 본 발명의 일 실시예에 따른 감성 분석 모델에 대해 설명하기로 한다.Next, in the following, an emotion analysis model according to an embodiment of the present invention will be described with reference to FIG. 2.

도 2를 참조하면, 본 발명에 따른 감성 분석 모델(200)은 입력되는 텍스트에 대한 감성 정보를 출력하는 것으로서, 임베딩 계층(210) 및 완전 연결 계층(230)을 포함할 수 있다.Referring to FIG. 2, the sentiment analysis model 200 according to the present invention outputs sentiment information on an input text, and may include an embedding layer 210 and a fully connected layer 230.

임베딩 계층(210)은 복수의 단어를 포함하는 적어도 하나 이상의 문장들로 구성되는 텍스트를 입력받고, 적어도 하나 이상의 문장의 문맥에 기초하여 단어에 대한 임베딩 값을 산출할 수 있다.The embedding layer 210 may receive text composed of at least one sentence including a plurality of words, and calculate an embedding value for a word based on the context of the at least one sentence.

여기서, 임베딩 값이란, 텍스트를 컴퓨터에서 이용 가능하도록 수치화한 값을 의미할 수 있다. 한편, 임베딩 값은 계수 벡터화(Count vectorization) 및 용어빈도-역문서빈도(Term frequency-inverse document frequency)와 같은 계산식에 기초하여 산출될 수 있으나, 이에 한정되는 것은 아님에 유의하도록 한다.Here, the embedding value may mean a value obtained by converting text to be usable in a computer. Meanwhile, it should be noted that the embedding value may be calculated based on a calculation formula such as count vectorization and term frequency-inverse document frequency, but is not limited thereto.

임베딩 계층(210)은 임베딩 값을 산출하고자 하는 단어를 포함하는 문장과, 해당 문장의 앞뒤 중 적어도 하나에 위치하는 다른 문장 간의 접속사에 기초하여 문장의 문맥을 판단하도록 사전 학습될 수 있다.The embedding layer 210 may be pre-trained to determine the context of a sentence based on a conjunction between a sentence including a word for which an embedding value is to be calculated and another sentence positioned at least one of the front and back of the sentence.

여기서, 사전 학습이란 구축부(110)가 임베딩 계층(210) 및 완전 연결 계층(230)을 포함하는 감성 분석 모델(200)을 구축하기 이전에 임베딩 계층(210) 만이 별도의 모델로서 학습된 것을 의미할 수 있다.Here, pre-learning means that only the embedding layer 210 is trained as a separate model before the building unit 110 builds the sentiment analysis model 200 including the embedding layer 210 and the fully connected layer 230 It can mean.

예를 들어, 임베딩 계층(210)은 "이 노래는 좋다. 그러나, 이 노래는 표절이다"라는 문장에서"이 노래는 좋다."라는 문장과 "이 노래는 표절이다."라는 문장 간의 "그러나,"라는 접속사에 기초하여 문장 간의 문맥을 판단하도록 사전 학습될 수 있다.For example, the embedding layer 210 is "But this song is good. However, this song is plagiarism" between the sentence "This song is good" and the sentence "This song is plagiarism." ," may be pre-trained to determine the context between sentences based on the conjunction.

또한, 임베딩 계층(210)은 문장 중, 임베딩 값을 산출하고자 하는 단어와, 해당 단어의 앞뒤 중 적어도 하나에 위치하는 단어에 기초하여 문장의 문맥을 판단하도록 사전 학습될 수 있다.In addition, the embedding layer 210 may be pre-trained to determine the context of a sentence based on a word for which an embedding value is to be calculated and a word positioned at least one of the front and back of the corresponding word.

예를 들어, 임베딩 계층(210)은 "이 노래는 표절이다."라는 문장에서 임베딩 값을 산출하고자 하는 "노래"라는 단어와, "노래"라는 단어의 뒤에 위치하는 "표절"이라는 단어에 기초하여 문장의 문맥을 판단하도록 사전 학습될 수 있다.For example, the embedding layer 210 is based on the word "song" for which the embedding value is to be calculated in the sentence "This song is plagiarism" and the word "plagiarism" positioned after the word "song". Thus, it can be pre-learned to determine the context of the sentence.

이에 따라, 임베딩 계층(210)은 동일한 단어의 경우에도, 단어를 포함하는 문장의 문맥에 따라, 해당 단어에 대한 서로 다른 임베딩 값을 산출할 수 있다.Accordingly, even in the case of the same word, the embedding layer 210 may calculate different embedding values for the corresponding word according to the context of the sentence including the word.

한편, 임베딩 계층(210)은 트랜스포머(transformer) 기반의 4개의 은닉층으로 이루어진 적어도 하나 이상의 은닉 계층(211)을 포함할 수 있다.On the other hand, the embedding layer 210 may include at least one or more hidden layers 211 formed of four transformer-based hidden layers.

여기서, 트랜스포머란 RNN(Recurrent Neural Networks), LSTM(Long Short Term Memory) 셀을 이용하지 않고, 타임 시퀀스 역할을 하는 모델을 의미할 수 있다.Here, the transformer may refer to a model that does not use Recurrent Neural Networks (RNN) or Long Short Term Memory (LSTM) cells and serves as a time sequence.

즉, 임베딩 계층(210)은 적어도 하나 이상의 은닉 계층(211)을 이용하여 복수의 텍스트에 대한 임베딩 값을 병렬적으로 산출할 수 있다. 이에 대해선 아래에서 도 3을 참조하여 보다 구체적으로 설명하도록 한다.That is, the embedding layer 210 may calculate embedding values for a plurality of texts in parallel using at least one hidden layer 211. This will be described in more detail with reference to FIG. 3 below.

완전 연결 계층(230)은 산출된 임베딩 값을 입력받고, 텍스트에 대한 감성 정보를 출력할 수 있다. 여기서, 완전 연결 계층(230)으로부터 출력되는 감성 정보는 예를 들어, 텍스트에 대한 긍정값 및 부정값을 포함할 수 있다.The fully connected layer 230 may receive the calculated embedding value and output emotion information for text. Here, the sentiment information output from the fully connected layer 230 may include, for example, a positive value and a negative value for text.

보다 구체적으로, 완전 연결 계층(230)은 전술한 임베딩 계층(210)에서 문맥에 기초하여 산출된 임베딩 값을 입력받고, 입력받은 임베딩 값에 기초하여 텍스트에 대한 긍정값 및 부정값을 포함하는 감성 정보를 출력할 수 있다. More specifically, the fully connected layer 230 receives the embedding value calculated based on the context from the embedding layer 210 described above, and includes a positive value and a negative value for text based on the input embedding value. Information can be printed.

예를 들어, 전술한 임베딩 계층(210)에서 "이 노래를 표절이다."라는 문장으로부터 "노래"라는 단어의 임베딩 값을 산출하는 경우, 임베딩 계층(210)은 "표절"이라는 부정적 단어에 기초하여 문장의 문맥을 판단한 후, "노래"라는 단어의 임베딩 값을 산출할 수 있고, 완전 연결 계층(230)은 이렇게 산출된 임베딩 값을 입력받아, "노래"라는 단어를 포함하는 텍스트에 감성 정보를 출력할 수 있으며, 이러한 경우, 출력되는 감성 정보에는 부정값이 포함될 수 있다.For example, when the embedding value of the word "song" is calculated from the sentence "This song is plagiarism" in the embedding layer 210 described above, the embedding layer 210 is based on the negative word "plagiarism". After determining the context of the sentence, the embedding value of the word "song" can be calculated, and the fully connected layer 230 receives the calculated embedding value, and emotional information in the text including the word "song" May be output, and in this case, a negative value may be included in the output emotion information.

한편, 완전 연결 계층(230)은 서로 다른 차원 수를 처리하는 3개의 계층으로 이루어질 수 있으며, 각 계층에서 산출된 임베딩 값을 순차적으로 입력받아, 입력된 임베딩 값의 차원 수를 순차적으로 감소시킬 수 있다.On the other hand, the fully connected layer 230 may consist of three layers that process different number of dimensions, and may sequentially receive the embedding values calculated from each layer, and sequentially decrease the number of dimensions of the input embedding values. have.

예를 들어, 임베딩 계층(210)은 100개의 은닉 계층(211)을 이용하여 100개의 텍스트에 대한 임베딩 값을 병렬적으로 산출할 수 있다. For example, the embedding layer 210 may calculate embedding values for 100 texts in parallel using 100 hidden layers 211.

또한, 임베딩 계층(210)은 각 텍스트마다, 예를 들어, 768차원의 임베딩 값을 산출할 수 있고, 완전 연결 계층(230)은 이렇게 산출된 임베딩 값을 입력받은 후, 서로 다른 3개의 계층을 이용하여 임베딩 값의 차원 수를 순차적으로 감소시킬 수 있다.In addition, the embedding layer 210 may calculate an embedding value of, for example, 768 dimensions for each text, and the fully connected layer 230 receives the calculated embedding value and then selects three different layers. By using, the number of dimensions of the embedding value can be sequentially decreased.

보다 구체적으로, 완전 연결 계층(230)은 임베딩 계층(210)으로부터 산출된 768차원의 임베딩 값을 입력받아, 임베딩 값의 차원을 64차원에서 16차원으로 순차적으로 감소시킬 수 있다. 이를 위해, 완전 연결 계층(230)은 임베딩 값의 차원을 64차원으로 감소시키는 제 1 완전 연결 계층 및 16차원으로 감소시키는 제 2 완전 연결 계층을 포함할 수 있다.More specifically, the fully connected layer 230 may receive an embedding value of 768 dimensions calculated from the embedding layer 210, and may sequentially decrease the dimension of the embedding value from 64 to 16 dimensions. To this end, the fully connected layer 230 may include a first fully connected layer reducing the dimension of the embedding value to 64 dimensions and a second fully connected layer reducing the embedding value to 16 dimensions.

이때, 임베딩 계층(210)의 은닉 계층(211)의 개수는 텍스트 스트림 환경을 고려하여 임베딩 값의 데이터의 크기를 제한하기 위함일 수 있다. 따라서, 임베딩 계층(210)의 은닉 계층(211)의 수는 텍스트 스트림 환경을 고려하여 가변될 수 있다.In this case, the number of hidden layers 211 of the embedding layer 210 may be for limiting the size of data of the embedding value in consideration of the text stream environment. Accordingly, the number of hidden layers 211 of the embedding layer 210 may be varied in consideration of the text stream environment.

다시 도 1로 돌아와, 학습부(111)에 대해 설명하면, 학습부(111)는 적어도 하나의 완전 연결 계층(230)으로부터 출력된 감성 정보에 기초하여 임베딩 값에 따른 감성 정보 출력 결과를 완전 연결 계층에 학습시킬 수 있다.Returning to FIG. 1 again, when the learning unit 111 is described, the learning unit 111 completely connects the output result of emotion information according to the embedding value based on the emotion information output from at least one fully connected layer 230 Can be learned in the hierarchy.

예를 들어, 학습부(111)가 완전 연결 계층(230)에서 입력받은 임베딩 값과 해당 임베딩 값에 따른 감성 정보 출력 결과에 기초하여 완전 연결 계층(230)을 학습시킴으로써, 완전 연결 계층(230)은 입력받은 임베딩 값이 사전 학습된 임베딩 값이므로, 보다 신속하게 감성 정보를 출력할 수 있게 된다.For example, the learning unit 111 learns the fully connected layer 230 based on the embedding value input from the fully connected layer 230 and the sentiment information output result according to the embedding value, so that the fully connected layer 230 Since the inputted embedding value is a pre-learned embedding value, it is possible to output sentiment information more quickly.

즉, 임베딩 계층(210)은 문장 간의 접속사 또는 앞뒤 단어에 기초하여 문장의 문맥을 판단하도록 사전 학습되어, 사전 학습된 문맥에 기초하여 단어에 대한 임베딩 값을 산출할 수 있고, 완전 연결 계층(230)은 학습부(111)에 의해 학습된 텍스트별 감성 정보 출력 결과에 기초하여, 입력된 임베딩 값에 따른 감성 정보를 출력할 수 있다.That is, the embedding layer 210 is pre-learned to determine the context of a sentence based on conjunctions between sentences or words before and after the sentence, and can calculate an embedding value for a word based on the pre-learned context, and the fully connected layer 230 ) May output emotion information according to an input embedding value based on a result of outputting emotion information for each text learned by the learning unit 111.

또한, 도 1을 참조하면, 분석부(130)는 감성 분석 모델을 이용하여 실시간으로 입력되는 텍스트에 대한 감성 정보를 분석할 수 있다.In addition, referring to FIG. 1, the analysis unit 130 may analyze emotion information for text input in real time using an emotion analysis model.

보다 구체적으로, 분석부(130)는 실시간으로 입력되는 텍스트를 구축부(110)에 의해 구축된 감성 분석 모델(200)에 입력할 수 있고, 감성 분석 모델(200)은 임베딩 계층(210) 및 완전 연결 계층(230)을 이용하여 입력되는 텍스트에 포함되는 단어에 대한 임베딩 값을 산출하고, 산출된 임베딩 값에 기초하여 해당 텍스트에 대한 감성 정보를 출력할 수 있으며, 분석부(130)는 이렇게 출력된 감성 정보에 기초하여 해당 텍스트에 대한 감성 정보를 분석할 수 있다.More specifically, the analysis unit 130 may input text input in real time into the emotion analysis model 200 built by the construction unit 110, and the emotion analysis model 200 includes the embedding layer 210 and Using the fully connected layer 230, an embedding value for a word included in the input text may be calculated, and sentiment information for the corresponding text may be output based on the calculated embedding value, and the analysis unit 130 The sentiment information for the text may be analyzed based on the output sentiment information.

이하에서는, 도 3을 참조하여 본 발명의 일 실시예에 따른 은닉 계층에 대해 설명하기로 한다.Hereinafter, a hidden layer according to an embodiment of the present invention will be described with reference to FIG. 3.

도 3은 본 발명의 일 실시예에 따른 은닉 계층의 구성을 나타낸 도면이다.3 is a diagram showing the configuration of a hidden layer according to an embodiment of the present invention.

도 3을 참조하면, 임베딩 계층(210)을 구성하는 은닉 계층(211)은 적어도 하나 이상의 은닉층(300)의 조합으로 이루어질 수 있다.Referring to FIG. 3, the hidden layer 211 constituting the embedding layer 210 may be formed of a combination of at least one hidden layer 300.

여기서, 본 발명에 따른 은닉 계층(211)은 텍스트 마이닝을 위해 기설정된 텍스트 마이닝 모델에 포함된 은닉층 중 적어도 하나의 은닉층으로 구성될 수 있다.Here, the hidden layer 211 according to the present invention may be composed of at least one hidden layer among the hidden layers included in the text mining model preset for text mining.

예를 들어, 기설정된 텍스트 마이닝 모델은 12개의 은닉층을 가지며, 임베딩 값을 산출하고자 하는 단어를 포함하는 문장과, 해당 문장의 앞뒤 중 적어도 하나에 위치하는 다른 문장 간의 접속사에 기초하여 문장의 문맥을 판단하도록 사전 학습될 수 있다.For example, the preset text mining model has 12 hidden layers, and the context of the sentence is determined based on the conjunction between a sentence including a word for which an embedding value is to be calculated, and another sentence positioned at least one of the front and back of the sentence. It can be pre-learned to judge.

이때, 본 발명에 따른 은닉 계층(211)은 해당 12개의 은닉층 중, 마지막 4개의 은닉층(300)의 조합으로 구성될 수 있다.In this case, the hidden layer 211 according to the present invention may be configured as a combination of the last four hidden layers 300 of the 12 hidden layers.

여기서, 본 발명에 따른 은닉 계층(211)이 기설정된 텍스트 마이닝 모델의 12개의 은닉층 중 마지막 4개의 은닉층(300)의 조합으로 이루어지는 것은, 실험 결과, 마지막 4개 은닉층(300)의 조합이 높은 감성 분석 정확도를 나타냈기 때문이다.Here, the hidden layer 211 according to the present invention is composed of a combination of the last 4 hidden layers 300 among the 12 hidden layers of the preset text mining model, as a result of the experiment, the combination of the last 4 hidden layers 300 is highly emotional. This is because it showed the accuracy of the analysis.

예를 들어, 표 1을 참조하면, 본 발명에 따른 은닉 계층(211)이 마지막 4개의 은닉층(300)의 조합으로 이루어짐으로써, 가장 높은 감성 분석 정확도를 나타내는 것을 확인할 수 있다.For example, referring to Table 1, it can be seen that the hidden layer 211 according to the present invention is formed of a combination of the last four hidden layers 300, thereby showing the highest sensitivity analysis accuracy.

은닉층 조합Hidden floor combination Online 1000Online 1000 Online 10000Online 10000 Batch 1000Batch 1000 마지막 1개의은닉층의 조합Combination of the last one hidden layer 0.77960.7796 0.81830.8183 0.82820.8282 마지막 2개의은닉층의 조합Combination of the last two hidden layers 0.78310.7831 0.82380.8238 0.83410.8341 마지막 4개의은닉층의 조합Combination of the last 4 hidden layers 0.79230.7923 0.82410.8241 0.83650.8365 총 12개의은닉층의 조합Combination of a total of 12 hidden layers 0.71700.7170 0.82000.8200 0.81660.8166

즉, 본 발명에 따른 텍스트 감성 분석 장치(100)는 기설정된 텍스트 마이닝 모델의 마지막 4개의 은닉층(300)을 조합하여 임베딩 값을 산출함으로써, 보다 정확한 감성 분석이 가능한 감성 분석 모델을 구축할 수 있다.That is, the text sentiment analysis apparatus 100 according to the present invention may construct a sentiment analysis model capable of more accurate sentiment analysis by calculating the embedding value by combining the last four hidden layers 300 of the preset text mining model. .

여기서, 각각의 은닉층(300)은, 예를 들어, 각각 768차원의 임베딩 값을 산출할 수 있다. 따라서, 임베딩 계층(210)은 은닉 계층(211)에 포함되는 4개의 은닉층(300)을 이용하여 각각의 텍스트에 대한 768차원의 임베딩 값을 병렬적으로 산출할 수 있다.Here, each of the hidden layers 300 may calculate 768-dimensional embedding values, for example. Accordingly, the embedding layer 210 may calculate 768-dimensional embedding values for each text in parallel by using the four hidden layers 300 included in the hidden layer 211.

이하에서는, 도 4를 참조하여 본 발명의 일 실시예에 따른 은닉층에 대해 설명하기로 한다.Hereinafter, a hidden layer according to an embodiment of the present invention will be described with reference to FIG. 4.

도 4는 본 발명의 일 실시예에 따른 은닉층의 구성을 나타낸 도면이다.4 is a diagram showing the configuration of a hidden layer according to an embodiment of the present invention.

도 4를 참조하면, 은닉층(300)은 입력부(410), 가중치 할당부(430), 제 1 표준화 처리부(450), 피드 포워드부(470) 및 제 2 표준화 처리부(490)를 포함할 수 있다.Referring to FIG. 4, the hidden layer 300 may include an input unit 410, a weight allocation unit 430, a first standardization processing unit 450, a feed forward unit 470, and a second standardization processing unit 490. .

입력부(410)는 복수의 단어를 입력받을 수 있다.The input unit 410 may receive a plurality of words.

이때, 입력부(410)는 복수의 단어를 병렬적으로 입력받을 수 있되, 후술하는 순서 정보를 함께 입력 받음으로써, 병렬적으로 입력되는 복수의 단어를 순서대로 정렬한 상태로 입력받을 수 있다. In this case, the input unit 410 may receive a plurality of words in parallel, but by receiving order information to be described later together, the input unit 410 may be input in a state in which a plurality of words input in parallel are arranged in order.

전술한 순서 정보에 대해서는 아래에서 가중치 할당부(430)를 설명하며 보다 구체적으로 설명하도록 한다.For the above-described order information, the weight allocation unit 430 will be described below and will be described in more detail.

여기서, 순서 정보는 주기 함수로서, 포지셔널 인코딩(Positional Encoding)으로 구현될 수 있다.Here, the order information is a periodic function and may be implemented with positional encoding.

가중치 할당부(430)는 입력된 복수의 단어간의 가중치를 학습하여, 복수의 단어간의 순서 정보를 생성할 수 있다. 여기서, 가중치 할당부(430)가 가중치를 학습하는 것에 대해서는 아래에서 도 5를 참조하여 보다 구체적으로 설명하도록 한다.The weight assignment unit 430 may learn weights between the input words and generate order information between the plurality of words. Here, the weight allocation unit 430 learning the weight will be described in more detail with reference to FIG. 5 below.

예를 들어, 가중치 할당부(430)는 "신용"이라는 단어와 "대출"이라는 단어가 관계가 있음에 기초하여, 서로의 단어에 대해 가중치를 학습시킬 수 있고, 이렇게 학습된 가중치에 기초하여 두 단어에 대한 순서 정보를 생성할 수 있다.For example, based on the relationship between the word "credit" and the word "loan", the weight allocation unit 430 may learn weights for each other's words, and based on the learned weights, You can generate order information for words.

이때, 생성된 순서 정보는 전술한 입력부(410)로 입력될 수 있다. 즉, 입력부(410)는 "대출", "상환" 및 "신용"이라는 단어가 순서에 상관없이 입력되는 경우에도, 입력된 순서 정보에 기초하여, 순서에 상관없이 입력된 "대출", "상환" 및 "신용"이라는 단어를, "신용", "대출" 및 "상환"순으로 정렬하여 입력 받을 수 있다.In this case, the generated order information may be input to the above-described input unit 410. That is, even when the words "loan", "repayment" and "credit" are input regardless of the order, the input unit 410 is based on the input order information, and the input "loan", "repayment" The words "and "credit" can be input by sorting in the order of "credit", "loan" and "repayment".

이하에서는, 도 5를 참조하여 본 발명의 일 실시예에 따른 가중치 할당부에 대해 설명하기로 한다.Hereinafter, a weight allocation unit according to an embodiment of the present invention will be described with reference to FIG. 5.

도 5는 본 발명의 일 실시예에 따른 가중치 할당부의 가중치 할당 방법을 나타낸 도면이다.5 is a diagram illustrating a weight allocation method of a weight allocation unit according to an embodiment of the present invention.

도 5를 참조하면, 본 발명에 따른 가중치 할당부(430)는 하나의 문장의 임베딩 값이 512차원인 경우, 이를 8 등분한 후, 3개의 가중치 처리부(510, 530, 550)에서 각각 64개의 벡터를 맡아 처리하도록 하며, 이렇게 처리된 벡터 처리 값을 연산부(570)에 입력시킴으로써, 복수의 단어 간의 가중치를 산출하도록 학습될 수 있다.Referring to FIG. 5, when the embedding value of one sentence is 512 dimensional, the weight allocation unit 430 according to the present invention divides the embedding value into 8 equal parts, and then the three weight processing units 510, 530, and 550 A vector is handled and processed, and by inputting the processed vector processing value to the operation unit 570, the learning may be performed to calculate a weight between a plurality of words.

즉, 도 5에 나타낸 것과 같이, "Je suis ιtudiant"라는 문장의 임베딩 벡터가 512차원이라면, 이를 8 등분한 후, 64개의 벡터를 각각 하나의 가중치 처리부(510, 530, 550)에서 맡아 처리하도록 하며, 이렇게 처리된 벡터 처리 값을 연산부(570)에 입력시킨다.That is, as shown in FIG. 5, if the embedding vector of the sentence "Je suis ιtudiant" is 512 dimensions, it is divided into 8 equal parts, and then 64 vectors are handled by one weight processing unit (510, 530, 550). Then, the processed vector processing value is input to the operation unit 570.

여기서, 연산부(570)는 아래 수학식 1에 나타낸 것처럼, 두 개의 가중치 처리부(510 및 530)의 벡터 처리 값을 내적한 후, 활성화 함수에 입력하고, 이 후 가중치 처리부(550)에서 출력된 값을 곱하여 가중치를 산출할 수 있다.Here, as shown in Equation 1 below, the calculation unit 570 performs a dot product of the vector processing values of the two weight processing units 510 and 530, inputs it to the activation function, and then outputs the value from the weight processing unit 550 The weight can be calculated by multiplying by.

Figure pat00001
Figure pat00001

다시 도 4를 참조하면, 제 1 표준화 처리부(450)는 가중치가 학습된 복수의 단어를 1차 표준화 처리하여, 단어 값을 산출할 수 있다. 즉, 제 1 표준화 처리부(450)는 입력부(410)를 통해 입력된 복수의 단어를 컴퓨터 프로그램에서 이용 가능한 단어 값으로 표준화 처리할 수 있다.Referring back to FIG. 4, the first standardization processing unit 450 may calculate a word value by first standardizing a plurality of words whose weights have been learned. That is, the first standardization processing unit 450 may standardize a plurality of words input through the input unit 410 into word values usable in a computer program.

피드 포워드부(470)는 표준화 처리된 단어 값을 후술하는 제 2 표준화 처리부(490)로 전달할 수 있다. The feed forward unit 470 may transfer the standardized word value to the second standardization processing unit 490 to be described later.

이때, 피드 포워드부(470)는 1차 표준화 처리된 단어 값에 기초하여 제 2 표준화 처리부(490)의 2차 표준화 처리를 제어할 수 있다. In this case, the feed forward unit 470 may control the second normalization processing of the second normalization processing unit 490 based on the first normalized word value.

즉, 피드 포워드부(470)는 제 2 표준화 처리부(490)의 2차 표준화 처리된 단어 값이 목적 값에 속하지 않는 경우, 보다 신속히 이를 제어하여 단어 값에 오류가 발생하는 것을 방지할 수 있다.That is, the feed forward unit 470 may prevent occurrence of an error in the word value by controlling it more quickly when the word value subjected to the second normalization process by the second standardization processing unit 490 does not belong to the target value.

제 2 표준화 처리부(490)는 피드 포워드부(470)를 통해 전달된 1차 표준화 처리된 단어 값을 2차 표준화 처리할 수 있다.The second normalization processing unit 490 may perform the second normalization processing of the first normalized word values transmitted through the feed forward unit 470.

즉, 제 2 표준화 처리부(490)는 제 1 표준화 처리부(450)를 통해 1차 표준화 처리된 단어값을 실제 컴퓨터 프로그램에서 이용하는 단어 값으로 표준화 처리할 수 있다.That is, the second standardization processing unit 490 may standardize a word value that has been subjected to the first standardization process through the first standardization processing unit 450 to a word value used in an actual computer program.

이하에서는 도 6을 참조하여 본 발명의 일 실시예에 따른 텍스트 감성 분석 방법을 설명하기로 한다.Hereinafter, a text sentiment analysis method according to an embodiment of the present invention will be described with reference to FIG. 6.

도 6은 본 발명의 일 실시예에 따른 텍스트 감성 분석 방법의 흐름을 나타낸 도면이다.6 is a diagram illustrating a flow of a text sentiment analysis method according to an embodiment of the present invention.

도 6을 참조하면, 본 발명의 일 실시예에 따른 텍스트 감성 분석 방법은 먼저, 단계 S610에서 구축부(110)가 감성 분석 모델(200)을 구축한다.Referring to FIG. 6, in the text sentiment analysis method according to an embodiment of the present invention, first, in step S610, the construction unit 110 constructs the sentiment analysis model 200.

단계 S630에서 분석부(130)는 구축된 감성 분석 모델(200)을 이용하여 실시간으로 입력되는 텍스트에 대한 감성 정보를 분석한다.In step S630, the analysis unit 130 analyzes the sentiment information for the text input in real time using the built sentiment analysis model 200.

상술한 설명에서, 단계 S610 내지 S630은 본 발명의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 변경될 수도 있다.In the above description, steps S610 to S630 may be further divided into additional steps or may be combined into fewer steps according to an embodiment of the present invention. In addition, some steps may be omitted as necessary, or the order between steps may be changed.

이하에서는 도 7을 참조하여 본 발명의 일 실시예에 따른 감성모델 구축 방법을 설명하기로 한다.Hereinafter, a method of constructing an emotion model according to an embodiment of the present invention will be described with reference to FIG. 7.

도 7은 본 발명의 일 실시예에 따른 감성 분석 모델 구축 방법의 흐름을 나타낸 도면이다.7 is a diagram illustrating a flow of a method for constructing an emotion analysis model according to an embodiment of the present invention.

도 7을 참조하면, 본 발명의 일 실시예에 따른 감성 분석 모델 구축 방법은 먼저, 단계 S710에서 임베딩 계층(210)은 복수의 단어를 포함하는 적어도 하나 이상의 문장들로 구성되는 텍스트를 입력받고, 적어도 하나 이상의 문장의 문맥에 기초하여 단어에 대한 임베딩 값을 산출한다.Referring to FIG. 7, in the method of constructing a sentiment analysis model according to an embodiment of the present invention, first, in step S710, the embedding layer 210 receives a text composed of at least one sentence including a plurality of words, An embedding value for a word is calculated based on the context of at least one sentence.

단계 S730에서 완전 연결 계층(230)은 산출된 임베딩 값을 입력받고, 텍스트에 대한 감성 정보를 출력한다.In step S730, the fully connected layer 230 receives the calculated embedding value and outputs sentiment information for the text.

단계 S750에서 학습부(111)는 임베딩 값에 따른 감성 정보 출력 결과에 기초하여 적어도 하나의 완전 연결 계층(230)을 학습시킨다.In step S750, the learning unit 111 learns at least one fully connected layer 230 based on a result of outputting emotion information according to the embedding value.

상술한 설명에서, 단계 S710 내지 S750은 본 발명의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 변경될 수도 있다.In the above description, steps S710 to S750 may be further divided into additional steps or combined into fewer steps, according to an embodiment of the present invention. In addition, some steps may be omitted as necessary, or the order between steps may be changed.

전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다. The above description of the present invention is for illustrative purposes only, and those of ordinary skill in the art to which the present invention pertains will be able to understand that it can be easily modified into other specific forms without changing the technical spirit or essential features of the present invention. will be. Therefore, it should be understood that the embodiments described above are illustrative in all respects and not limiting. For example, each component described as a single type may be implemented in a distributed manner, and similarly, components described as being distributed may also be implemented in a combined form.

본 발명의 범위는 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present invention is indicated by the claims to be described later rather than the detailed description, and all changes or modified forms derived from the meaning and scope of the claims and their equivalent concepts should be interpreted as being included in the scope of the present invention. .

100: 텍스트 감성 분석 장치
110: 구축부
111: 학습부
130: 분석부
200: 감성 분석 모델
210: 임베딩 계층
211: 은닉 계층
230: 완전 연결 계층
300: 은닉층
410: 입력부
430: 가중치 할당부
450: 제 1 표준화 처리부
470: 피드 포워드부
490: 제 2 표준화 처리부
100: text sentiment analysis device
110: construction
111: Learning Department
130: analysis unit
200: sentiment analysis model
210: embedding layer
211: hidden layer
230: fully connected layer
300: hidden layer
410: input
430: weight allocation unit
450: first standardization processing unit
470: feed forward unit
490: second standardization processing unit

Claims (14)

텍스트에 대한 감성 분석을 수행하는 텍스트 감성 분석 장치에 있어서,
복수의 단어를 포함하는 적어도 하나 이상의 문장들로 구성되는 텍스트를 입력받고, 상기 적어도 하나 이상의 문장의 문맥에 기초하여 상기 단어에 대한 임베딩 값을 산출하는 임베딩 계층 및 상기 산출된 임베딩 값을 입력받고, 상기 텍스트에 대한 감성 정보를 출력하는 적어도 하나의 완전 연결 계층을 포함하는 감성 분석 모델을 구축하는 구축부; 및
상기 구축된 감성 분석 모델을 이용하여 실시간으로 입력되는 텍스트에 대한 감성 정보를 분석하는 분석부를 포함하되,
상기 임베딩 계층은 복수의 문장의 문맥에 기초하여 단어에 대한 임베딩 값을 산출하도록 사전 학습된 것인, 텍스트 감성 분석 장치.
In the text sentiment analysis device for performing sentiment analysis on text,
An embedding layer for calculating an embedding value for the word and the calculated embedding value is input, receiving text consisting of at least one sentence including a plurality of words, based on the context of the at least one sentence, A construction unit for constructing a sentiment analysis model including at least one fully connected layer that outputs sentiment information for the text; And
Including an analysis unit that analyzes the sentiment information about the text input in real time by using the constructed sentiment analysis model,
The embedding layer is pre-learned to calculate an embedding value for a word based on the context of a plurality of sentences.
제 1 항에 있어서,
상기 구축부는 상기 적어도 하나의 완전 연결 계층이 상기 텍스트에 대한 감성 정보를 출력하도록 상기 적어도 하나의 완전 연결 계층만을 학습시키는 학습부를 포함하는 것인, 텍스트 감성 분석 장치.
The method of claim 1,
The construction unit includes a learning unit for learning only the at least one fully connected layer so that the at least one fully connected layer outputs emotion information for the text.
제 1 항에 있어서,
상기 임베딩 계층은 상기 임베딩 값을 산출하고자 하는 상기 단어를 포함하는 상기 문장과, 상기 문장의 앞뒤 중 적어도 하나에 위치하는 문장간의 접속사에 기초하여 상기 문장의 문맥을 판단하도록 사전 학습된 것인, 텍스트 감성 분석 장치.
The method of claim 1,
The embedding layer is pre-learned to determine the context of the sentence based on a conjunction between the sentence including the word for which the embedding value is to be calculated and the sentence positioned at least one of the front and back of the sentence Sentiment analysis device.
제 1 항에 있어서,
상기 임베딩 계층은 상기 문장 중, 상기 임베딩 값을 산출하고자 하는 상기 단어와, 상기 단어의 앞뒤 중 적어도 하나에 위치하는 단어에 기초하여 상기 문장의 문맥을 판단하도록 사전 학습된 것인, 텍스트 감성 분석 장치.
The method of claim 1,
The embedding layer is pre-learned to determine the context of the sentence based on the word for which the embedding value is to be calculated, and a word positioned at least one of the front and back of the word. .
제 1 항에 있어서,
상기 임베딩 계층은 계수 벡터화(Count vectorization) 및 용어빈도-역문서빈도(Term frequency-inverse document frequency) 중 어느 하나를 이용하여 상기 단어를 수치화한 값인 상기 임베딩 값을 산출하는 것인, 텍스트 감성 분석 장치.
The method of claim 1,
The embedding layer calculates the embedding value, which is a value obtained by digitizing the word using any one of count vectorization and term frequency-inverse document frequency. .
제 1 항에 있어서,
상기 임베딩 계층은 트랜스포머 기반의 4개의 은닉층으로 이루어진 적어도 하나 이상의 은닉 계층을 포함하는 것인, 텍스트 감성 분석 장치.
The method of claim 1,
The embedding layer includes at least one hidden layer consisting of four transformer-based hidden layers.
제 6 항에 있어서,
상기 은닉층은 상기 복수의 단어를 입력받는 입력부;
상기 복수의 단어 간의 가중치를 학습하는 가중치 할당부; 및
상기 가중치가 학습된 복수의 단어를 1차 표준화 처리하는 제 1 표준화 처리부; 및
상기 표준화 처리된 복수의 단어에 대한 단어 값을 전달하는 피드 포워드부를 포함하는 것인, 텍스트 감성 분석 장치.
The method of claim 6,
The hidden layer may include an input unit receiving the plurality of words;
A weight allocation unit for learning weights between the plurality of words; And
A first standardization processing unit that performs a first standardization process on a plurality of words whose weights are learned; And
And a feed forward unit for transmitting word values for the plurality of normalized words.
제 7 항에 있어서,
상기 가중치 할당부는 상기 복수의 단어 간의 가중치를 학습하여 상기 복수의 단어간의 순서 정보를 생성하고,
상기 입력부는 상기 복수의 단어 간의 순서 정보를 추가로 입력받는 것인, 텍스트 감성 분석 장치.
The method of claim 7,
The weight allocation unit learns the weights between the plurality of words to generate order information between the plurality of words,
The input unit further receives order information between the plurality of words.
제 7 항에 있어서,
상기 은닉층은 상기 피드 포워드부를 통해 전달된 상기 1차 표준화 처리된 단어 값을 2차 표준화 처리하는 제 2 표준화 처리부를 더 포함하고,
상기 피드 포워드부는 상기 1차 표준화 처리된 단어 값에 기초하여 상기 제 2 표준화 처리부의 상기 2차 표준화 처리를 제어하는 것인, 텍스트 감성 분석 장치.
The method of claim 7,
The hidden layer further includes a second normalization processing unit for performing a second normalization processing on the first normalized word value transmitted through the feed forward unit,
Wherein the feed forward unit controls the second normalization processing of the second normalization processing unit based on the first normalized word value.
제 6 항에 있어서,
상기 은닉 계층은 4개의 상기 은닉층을 이용하여 입력되는 복수의 텍스트를 병렬 처리하는 것인, 텍스트 감성 분석 장치.
The method of claim 6,
The hidden layer is to parallel-process a plurality of texts input by using the four hidden layers.
텍스트에 대한 감성 분석을 수행하는 텍스트 감성 분석 방법에 있어서,
감성 분석 모델을 구축하는 단계; 및
상기 구축된 감성 분석 모델을 이용하여 실시간으로 입력되는 텍스트에 대한 감성 정보를 분석하는 단계를 포함하되,
상기 감성 분석 모델을 구축하는 단계는,
복수의 단어를 포함하는 적어도 하나 이상의 문장들로 구성되는 텍스트를 입력받고, 상기 적어도 하나 이상의 문장의 문맥에 기초하여 상기 단어에 대한 임베딩 값을 산출하는 단계; 및
상기 산출된 임베딩 값을 입력받고, 상기 텍스트에 대한 감성 정보를 출력하는 단계를 포함하고,
상기 단어에 대한 임베딩 값의 산출은 복수의 문장의 문맥에 기초하여 단어에 대한 임베딩 값을 산출하도록 한 사전 학습에 기초한 것인, 텍스트 감성 분석 방법.
In the text sentiment analysis method for performing sentiment analysis on text,
Building a sentiment analysis model; And
Including the step of analyzing the sentiment information for the text input in real time using the built sentiment analysis model,
Building the sentiment analysis model,
Receiving a text composed of at least one sentence including a plurality of words, and calculating an embedding value for the word based on the context of the at least one sentence; And
Receiving the calculated embedding value and outputting sentiment information for the text,
The calculation of the embedding value for the word is based on prior learning in which the embedding value for the word is calculated based on the context of a plurality of sentences.
제 11 항에 있어서,
상기 구축하는 단계는 적어도 하나의 완전 연결 계층이 상기 텍스트에 대한 감성 정보를 출력하도록 상기 적어도 하나의 완전 연결 계층만을 학습시키는 단계를 포함하는 것인, 텍스트 감성 분석 방법.
The method of claim 11,
The constructing step comprises the step of learning only the at least one fully connected layer so that at least one fully connected layer outputs sentiment information for the text.
제 11 항에 있어서,
상기 단어에 대한 임베딩 값의 산출은 상기 임베딩 값을 산출하고자 하는 상기 단어를 포함하는 상기 문장과, 상기 문장의 앞뒤 중 적어도 하나에 위치하는 문장 간의 접속사 또는 상기 임베딩 값을 산출하고자 하는 상기 단어와, 상기 단어의 앞뒤 중 적어도 하나에 위치하는 단어에 기초하여 상기 문장의 문맥을 판단하도록 한 사전 학습에 기초한 것인, 텍스트 감성 분석 방법.
The method of claim 11,
The calculation of the embedding value for the word includes a conjunction between the sentence including the word for which the embedding value is to be calculated, and a sentence positioned at least one of the front and back of the sentence or the word for which the embedding value is to be calculated, The text sentiment analysis method is based on prior learning to determine the context of the sentence based on a word positioned at least one of the front and back of the word.
제 11 항에 있어서,
상기 단어에 대한 임베딩 값을 산출하는 단계는 트랜스포머 기반의 4개의 은닉층으로 이루어진 적어도 하나 이상의 은닉 계층을 이용하여 상기 단어에 대한 임베딩 값을 산출하는 단계를 포함하되,
상기 은닉층은 상기 텍스트로부터 복수의 단어를 입력받고, 상기 복수의 단어 간의 순서 정보를 추가로 입력받고,
상기 복수의 단어 간의 가중치를 학습하고, 상기 복수의 단어 간의 순서 정보를 생성하고,
상기 가중치가 학습된 복수의 단어를 1차 표준화 처리하고,
상기 표준화 처리된 복수의 단어에 대한 단어 값을 전달하고,
상기 1차 표준화 처리된 단어 값을 2차 표준화 처리하는 것인, 텍스트 감성 분석 방법.
The method of claim 11,
The step of calculating the embedding value for the word includes calculating an embedding value for the word using at least one hidden layer consisting of four hidden layers based on a transformer,
The hidden layer receives a plurality of words from the text, and additionally receives order information between the plurality of words,
Learning weights between the plurality of words, generating order information between the plurality of words,
First-order standardization processing of a plurality of words whose weights are learned,
Delivering word values for the plurality of normalized words,
The text sentiment analysis method to perform the second normalization processing of the first normalized word value.
KR1020190063386A 2019-05-29 2019-05-29 Text sensibility analysis apparatus and method threrof KR102326473B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190063386A KR102326473B1 (en) 2019-05-29 2019-05-29 Text sensibility analysis apparatus and method threrof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190063386A KR102326473B1 (en) 2019-05-29 2019-05-29 Text sensibility analysis apparatus and method threrof

Publications (2)

Publication Number Publication Date
KR20200137290A true KR20200137290A (en) 2020-12-09
KR102326473B1 KR102326473B1 (en) 2021-11-15

Family

ID=73786857

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190063386A KR102326473B1 (en) 2019-05-29 2019-05-29 Text sensibility analysis apparatus and method threrof

Country Status (1)

Country Link
KR (1) KR102326473B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113343712A (en) * 2021-06-29 2021-09-03 安徽大学 Social text emotional tendency analysis method and system based on heterogeneous graph

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110112825A1 (en) * 2009-11-12 2011-05-12 Jerome Bellegarda Sentiment prediction from textual data
KR101136007B1 (en) * 2010-06-29 2012-04-20 (주)워드워즈 System and method for anaylyzing document sentiment
KR20140106183A (en) * 2013-02-26 2014-09-03 (주)아크릴 Method for providing sensitivity pattern and device performing the same
KR101625787B1 (en) * 2015-02-02 2016-05-30 숭실대학교산학협력단 Method and server for estimating the sentiment value of word
WO2016085409A1 (en) * 2014-11-24 2016-06-02 Agency For Science, Technology And Research A method and system for sentiment classification and emotion classification
KR20180025691A (en) * 2016-09-01 2018-03-09 성균관대학교산학협력단 An apparatus for generating paragraph based on artificial neural network and method thereof

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110112825A1 (en) * 2009-11-12 2011-05-12 Jerome Bellegarda Sentiment prediction from textual data
KR101136007B1 (en) * 2010-06-29 2012-04-20 (주)워드워즈 System and method for anaylyzing document sentiment
KR20140106183A (en) * 2013-02-26 2014-09-03 (주)아크릴 Method for providing sensitivity pattern and device performing the same
WO2016085409A1 (en) * 2014-11-24 2016-06-02 Agency For Science, Technology And Research A method and system for sentiment classification and emotion classification
KR101625787B1 (en) * 2015-02-02 2016-05-30 숭실대학교산학협력단 Method and server for estimating the sentiment value of word
KR20180025691A (en) * 2016-09-01 2018-03-09 성균관대학교산학협력단 An apparatus for generating paragraph based on artificial neural network and method thereof

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
신승엽외 1명, "감성분석을 위한 문맥 기반 임베딩을 이용한 온라인 딥러닝 기법", 데이터베이스연구 2019 제35권 제1호, 2019.04., pp.86-95. 1부.* *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113343712A (en) * 2021-06-29 2021-09-03 安徽大学 Social text emotional tendency analysis method and system based on heterogeneous graph

Also Published As

Publication number Publication date
KR102326473B1 (en) 2021-11-15

Similar Documents

Publication Publication Date Title
US11288444B2 (en) Optimization techniques for artificial intelligence
JP6972265B2 (en) Pointer sentinel mixed architecture
Dahou et al. Arabic sentiment classification using convolutional neural network and differential evolution algorithm
Preotiuc-Pietro et al. Trendminer: An architecture for real time analysis of social media text
JP2020522817A (en) Semantic analysis method, device, and storage medium
WO2017161189A1 (en) Parallel-hierarchical model for machine comprehension on small data
CN114676704B (en) Sentence emotion analysis method, device and equipment and storage medium
CN111538841B (en) Comment emotion analysis method, device and system based on knowledge mutual distillation
US10685012B2 (en) Generating feature embeddings from a co-occurrence matrix
WO2020151690A1 (en) Statement generation method, device and equipment and storage medium
US12051017B2 (en) Apparatus for determining role fitness while eliminating unwanted bias
US11924018B2 (en) System for decomposing events and unstructured data
CN106104427A (en) The reformatting of the perceived content of input
Farazi et al. Accuracy vs. complexity: a trade-off in visual question answering models
Goncalves et al. Odyssey 2024-Speech Emotion Recognition Challenge: Dataset, Baseline Framework, and Results
Shovon et al. The performance of graph neural network in detecting fake news from social media feeds
KR102326473B1 (en) Text sensibility analysis apparatus and method threrof
KR20210048818A (en) Apparatus and method for trade based on artificial intelligence using fintech
Mhatre et al. Text Comparison Based on Semantic Similarity
Ye et al. Token prediction as implicit classification for generative AI authorship verification
Gamal et al. An evaluation of sentiment analysis on smart entertainment and devices reviews
CN111651643A (en) Processing method of candidate content and related equipment
Kavitha Twitter sentiment analysis based on adaptive deep recurrent neural network
Alsini Analysis of Real Time Twitter Sentiments using Deep Learning Models
KR102574784B1 (en) Method for recommending suitable texts to auto-complete ESG documents and ESG service providing system performing the same

Legal Events

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