KR20240094110A - Method, apparatus and system for analyzing emotions in aspect-based sentences using adaptive masked attention mechanism - Google Patents
Method, apparatus and system for analyzing emotions in aspect-based sentences using adaptive masked attention mechanism Download PDFInfo
- Publication number
- KR20240094110A KR20240094110A KR1020220162379A KR20220162379A KR20240094110A KR 20240094110 A KR20240094110 A KR 20240094110A KR 1020220162379 A KR1020220162379 A KR 1020220162379A KR 20220162379 A KR20220162379 A KR 20220162379A KR 20240094110 A KR20240094110 A KR 20240094110A
- Authority
- KR
- South Korea
- Prior art keywords
- text
- attention mechanism
- adaptive
- text data
- data
- Prior art date
Links
- 230000008451 emotion Effects 0.000 title claims abstract description 18
- 238000000034 method Methods 0.000 title claims description 25
- 230000007246 mechanism Effects 0.000 title claims description 22
- 230000003044 adaptive effect Effects 0.000 title claims description 12
- 238000004458 analytical method Methods 0.000 claims abstract description 18
- 238000012545 processing Methods 0.000 claims description 19
- 230000001502 supplementing effect Effects 0.000 claims description 2
- 239000000284 extract Substances 0.000 abstract description 3
- 238000010801 machine learning Methods 0.000 description 11
- 238000013528 artificial neural network Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 9
- 238000012549 training Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 238000013473 artificial intelligence Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 7
- 238000003062 neural network model Methods 0.000 description 7
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 230000002996 emotional effect Effects 0.000 description 3
- 230000014509 gene expression Effects 0.000 description 3
- 210000002569 neuron Anatomy 0.000 description 3
- 230000008520 organization Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 210000004556 brain Anatomy 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 230000000873 masking effect Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000011176 pooling Methods 0.000 description 2
- 230000019771 cognition Effects 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000002068 genetic effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000003278 mimic effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000877 morphologic effect Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
- 210000000225 synapse Anatomy 0.000 description 1
- 230000000946 synaptic effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G06N3/0445—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G06N3/0454—
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Machine Translation (AREA)
Abstract
일실시예에 따른 장치는 감정 분석을 하고자 하는 문장을 수신하고, 수신한 문장으로부터 텍스트를 추출하고, 텍스트를 이용하여 로컬 텍스트(local text) 데이터 및 로컬 텍스트와 aspect term을 포함하는 글로벌 텍스트(global text) 데이터를 생성하고, 글로벌 텍스트 데이터 중에서 로컬 텍스트 데이터가 해당하는 부분을 추출하고, 텍스트 데이터를 BERT를 이용하여 벡터 값으로 변환하고, aspect term의 벡터 값에 가중치를 적용하여 결과 값을 획득하고, 결과 값을 이용하여 문장 내 텍스트의 감정을 분석할 수 있다.A device according to an embodiment receives a sentence for which sentiment analysis is to be performed, extracts text from the received sentence, and uses the text to generate local text data and a global text including local text and aspect terms. text) data, extract the part corresponding to the local text data from the global text data, convert the text data into a vector value using BERT, and obtain the result value by applying weight to the vector value of the aspect term. , you can use the result to analyze the emotion of the text within the sentence.
Description
아래 실시예들은 적응적 마스크드 어테션 매커니즘을 이용하여 에스팩트 기반 문장 내 감정을 분석하는 기술에 관한 것이다.The following embodiments relate to technology for analyzing emotion within an aspect-based sentence using an adaptive masked attention mechanism.
Aspect-based Sentiment Analysis(ABSA)은 입력 문장에 존재하는 aspect term의 감정 극성을 분석하는 것을 목표로 하는 자연어 처리의 중요한 연구 분야이다. 최근 몇 년 동안의 실험에서 많은 모델은 로컬 텍스트에 직접 작용하는 모델을 설계한 다음 글로벌 텍스트의 기능을 융합함으로써 로컬 텍스트 또는 로컬 텍스트 측면 관계에 더 중점을 두었다.Aspect-based Sentiment Analysis (ABSA) is an important research field in natural language processing that aims to analyze the emotional polarity of aspect terms present in input sentences. In experiments in recent years, many models have focused more on local text or local text aspect relationships by designing models that act directly on local text and then fusing features from global text.
기존의 모델은 두가지의 사전 훈련 모델(BERT)를 사용하여 각각의 텍스트와 aspect term을 모델링하여 메모리 공간을 낭비한다는 문제점이 있었으며, 모델에서 가중치 할당을 고려할 때 문맥 관계를 고려하지 않고 토큰의 지침에 따라 aspect term 사이의 거리에 가중치를 할당하여 세분화된 자연어 분석 방법을 개시하지 못한다는 문제점이 있었다.The existing model had the problem of wasting memory space by using two pre-training models (BERT) to model each text and aspect term, and when considering weight allocation in the model, it did not consider the context relationship and followed the instructions of the token. Accordingly, there was a problem in that it was not possible to initiate a detailed natural language analysis method by assigning weights to the distance between aspect terms.
실시예들은 글로벌 어텐션 메커니즘을 기반으로, 글로벌 임베딩의 로컬 임베딩 부분에 작용하는 마스킹 어텐션 메커니즘을 제안하고, 로컬 텍스트와 글로벌 텍스트에 대해 두 개의 사전 훈련된 모델을 사용하여 하나의 사전 훈련된 모델로 글로벌 텍스트와 로컬 텍스트의 특징을 모두 학습할 수 있으며, 따라서 모델의 훈련 효율성을 향상시킨 적응적 마스크드 어텐션 메커니즘을 이용한 에스팩트 기반 문장 내 감정 분석 방법을 제공하고자 한다.Embodiments propose a masking attention mechanism that acts on the local embedding part of the global embedding, based on the global attention mechanism, and uses two pre-trained models for local text and global text to transform the global into one pre-trained model. We aim to provide an aspect-based sentiment analysis method within sentences using an adaptive masked attention mechanism that can learn both text and local text features and thus improves model training efficiency.
일실시예에 따르면, 장치에 의해 수행되는 방법에 있어서, 감정 분석을 하고자 하는 문장을 수신하고, 상기 수신한 문장으로부터 텍스트를 추출하는 단계; 상기 텍스트를 이용하여 로컬 텍스트(local text) 데이터 및 상기 로컬 텍스트와 aspect term을 포함하는 글로벌 텍스트(global text) 데이터를 생성하는 단계; 상기 글로벌 텍스트 데이터 중에서 상기 로컬 텍스트 데이터가 해당하는 부분을 추출하는 단계; 상기 텍스트 데이터를 BERT를 이용하여 벡터 값으로 변환하는 단계; 상기 aspect term의 벡터 값에 가중치를 적용하여 결과 값을 획득하는 단계; 상기 결과 값을 이용하여 상기 문장 내 텍스트의 감정을 분석하는 단계를 포함할 수 있다.According to one embodiment, a method performed by an apparatus includes receiving a sentence for which emotion analysis is to be performed and extracting text from the received sentence; Using the text to generate local text data and global text data including the local text and an aspect term; extracting a portion corresponding to the local text data from the global text data; Converting the text data into a vector value using BERT; Obtaining a result value by applying a weight to the vector value of the aspect term; It may include analyzing the emotion of the text in the sentence using the result value.
상기 가중치는, attention 매커니즘을 이용하여 생성되고, 상기 로컬 텍스트 데이터의 임베딩한 부분을 상기 attention 매커니즘을 이용하여 처리하여 차원을 획득하는 단계; 적응형 메커니즘을 이용하여 상기 차원에 할당된 다른 토큰 특성의 가중치를 산출하는 단계; 상기 가중치를 정렬하고, 상기 정렬된 가중치를 사용하여 aspect term의 중요도를 산출하는 단계를 더 포함할 수 있다.The weight is generated using an attention mechanism, and processing the embedded portion of the local text data using the attention mechanism to obtain dimension; calculating weights of different token characteristics assigned to the dimension using an adaptive mechanism; The step of sorting the weights and calculating the importance of the aspect term using the sorted weights may be further included.
상기 벡터 값으로 변환하는 단계는, 상기 aspect term의 길이가 1을 초과하는지 여부를 판단하는 단계, 상기 aspect term의 길이가 1인 경우 모델링 결과를 그대로 유지하는 단계, 및 상기 aspect term의 길이가 1을 초과하는 경우, 모델링 결과의 단축된 길이만큼 0을 보충하여 모델링 결과를 수정하는 단계를 포함할 수 있다.The step of converting to a vector value includes determining whether the length of the aspect term exceeds 1, maintaining the modeling result as is if the length of the aspect term is 1, and determining whether the length of the aspect term is 1. If it exceeds, a step of correcting the modeling result by supplementing 0 by the shortened length of the modeling result may be included.
일실시예에 따른 장치는 하드웨어와 결합되어 상술한 방법들 중 어느 하나의 항의 방법을 실행시키기 위하여 매체에 저장된 컴퓨터 프로그램에 의해 제어될 수 있다.The device according to one embodiment may be combined with hardware and controlled by a computer program stored in a medium to execute any one of the above-described methods.
실시예들은 글로벌 어텐션 메커니즘을 기반으로, 글로벌 임베딩의 로컬 임베딩 부분에 작용하는 마스킹 어텐션 메커니즘을 제안하고, 로컬 텍스트와 글로벌 텍스트에 대해 두 개의 사전 훈련된 모델을 사용하여 하나의 사전 훈련된 모델로 글로벌 텍스트와 로컬 텍스트의 특징을 모두 학습할 수 있으며, 따라서 모델의 훈련 효율성을 향상시킨 적응적 마스크드 어텐션 메커니즘을 이용한 에스팩트 기반 문장 내 감정 분석 방법을 제공할 수 있다.Embodiments propose a masking attention mechanism that acts on the local embedding part of the global embedding, based on the global attention mechanism, and uses two pre-trained models for local text and global text to transform the global into one pre-trained model. Features of both text and local text can be learned, and therefore, it is possible to provide an aspect-based sentiment analysis method within sentences using an adaptive masked attention mechanism that improves the training efficiency of the model.
도 1은 일실시예에 따른 시스템의 구성을 설명하기 위한 도면이다.
도 2는 일실시예에 따른 적응적 마스크드 어텐션 메커니즘을 이용하여 에스팩트 기반 문장 내 감정을 분석하는 방법을 설명하기 위한 도면이다.
도 3은 일실시예에 따른 가중치를 산출하는 과정을 설명하기 위한 도면이다.
도 4는 일실시예에 따른 장치의 구성의 예시도이다.1 is a diagram for explaining the configuration of a system according to an embodiment.
Figure 2 is a diagram illustrating a method of analyzing emotions in an aspect-based sentence using an adaptive masked attention mechanism according to an embodiment.
Figure 3 is a diagram for explaining a process for calculating weights according to an embodiment.
Figure 4 is an exemplary diagram of the configuration of a device according to an embodiment.
이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 그러나, 실시예들에는 다양한 변경이 가해질 수 있어서 특허출원의 권리 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 실시예들에 대한 모든 변경, 균등물 내지 대체물이 권리 범위에 포함되는 것으로 이해되어야 한다.Hereinafter, embodiments will be described in detail with reference to the attached drawings. However, various changes can be made to the embodiments, so the scope of the patent application is not limited or limited by these embodiments. It should be understood that all changes, equivalents, or substitutes for the embodiments are included in the scope of rights.
실시예들에 대한 특정한 구조적 또는 기능적 설명들은 단지 예시를 위한 목적으로 개시된 것으로서, 다양한 형태로 변경되어 실시될 수 있다. 따라서, 실시예들은 특정한 개시형태로 한정되는 것이 아니며, 본 명세서의 범위는 기술적 사상에 포함되는 변경, 균등물, 또는 대체물을 포함한다.Specific structural or functional descriptions of the embodiments are disclosed for illustrative purposes only and may be modified and implemented in various forms. Accordingly, the embodiments are not limited to the specific disclosed form, and the scope of the present specification includes changes, equivalents, or substitutes included in the technical spirit.
제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 한다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.Terms such as first or second may be used to describe various components, but these terms should be interpreted only for the purpose of distinguishing one component from another component. For example, a first component may be named a second component, and similarly, the second component may also be named a first component.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.When a component is referred to as being “connected” to another component, it should be understood that it may be directly connected or connected to the other component, but that other components may exist in between.
실시예에서 사용한 용어는 단지 설명을 목적으로 사용된 것으로, 한정하려는 의도로 해석되어서는 안된다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in the examples are for descriptive purposes only and should not be construed as limiting. Singular expressions include plural expressions unless the context clearly dictates otherwise. In this specification, terms such as “comprise” or “have” are intended to designate the presence of features, numbers, steps, operations, components, parts, or combinations thereof described in the specification, but are not intended to indicate the presence of one or more other features. It should be understood that this does not exclude in advance the possibility of the existence or addition of elements, numbers, steps, operations, components, parts, or combinations thereof.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless otherwise defined, all terms used herein, including technical or scientific terms, have the same meaning as generally understood by a person of ordinary skill in the technical field to which the embodiments belong. Terms defined in commonly used dictionaries should be interpreted as having a meaning consistent with the meaning in the context of the related technology, and should not be interpreted in an ideal or excessively formal sense unless explicitly defined in the present application. No.
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.In addition, when describing with reference to the accompanying drawings, identical components will be assigned the same reference numerals regardless of the reference numerals, and overlapping descriptions thereof will be omitted. In describing the embodiments, if it is determined that detailed descriptions of related known technologies may unnecessarily obscure the gist of the embodiments, the detailed descriptions are omitted.
실시예들은 퍼스널 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, 스마트 폰, 텔레비전, 스마트 가전 기기, 지능형 자동차, 키오스크, 웨어러블 장치 등 다양한 형태의 제품으로 구현될 수 있다.Embodiments may be implemented in various types of products such as personal computers, laptop computers, tablet computers, smart phones, televisions, smart home appliances, intelligent vehicles, kiosks, and wearable devices.
도 1은 일실시예에 따른 시스템의 구성을 설명하기 위한 도면이다.1 is a diagram for explaining the configuration of a system according to an embodiment.
일실시예에 따른 시스템은 통신망을 통해 서로 통신 가능한 사용자 단말(10) 및 장치(30)를 포함할 수 있다.The system according to one embodiment may include a user terminal 10 and a device 30 that can communicate with each other through a communication network.
먼저, 통신망은 유선 및 무선 등과 같이 그 통신 양태를 가리지 않고 구성될 수 있으며, 서버와 서버 간의 통신과 서버와 단말 간의 통신이 수행되도록 다양한 형태로 구현될 수 있다.First, a communication network can be configured regardless of the communication mode, such as wired or wireless, and can be implemented in various forms to enable communication between servers and between servers and terminals.
사용자 단말(10)은 본 발명에 따른 감정을 분석하고자 하는 문장을 제공하는 사용자가 사용하는 단말일 수 있다. 사용자 단말(10)은 데스크탑 컴퓨터, 노트북, 태블릿, 스마트폰 등일 수 있다. 예를 들어, 도 1에 도시된 바와 같이, 사용자 단말(10)은 스마트폰일 수 있으며, 실시예에 따라 달리 채용될 수도 있다.The user terminal 10 may be a terminal used by a user who provides a sentence for which emotions are to be analyzed according to the present invention. The user terminal 10 may be a desktop computer, laptop, tablet, smartphone, etc. For example, as shown in FIG. 1, the user terminal 10 may be a smartphone and may be employed differently depending on the embodiment.
사용자 단말(10)은 통상의 컴퓨터가 가지는 연산 기능, 저장/참조 기능, 입출력 기능 및 제어 기능을 전부 또는 일부 수행하도록 구성될 수 있다. 사용자 단말(10)은 장치(30)와 유무선으로 통신하도록 구성될 수 있다.The user terminal 10 may be configured to perform all or part of the calculation function, storage/reference function, input/output function, and control function of a typical computer. The user terminal 10 may be configured to communicate with the device 30 wired or wirelessly.
사용자 단말(10)은 장치(30)를 이용하여 서비스를 제공하는 자 내지 단체가 운영하는 웹 페이지에 접속되거나, 장치(30)를 이용하여 서비스를 제공하는 자 내지 단체가 개발·배포한 애플리케이션이 설치될 수 있다. 사용자 단말(10)은 웹 페이지 또는 애플리케이션을 통해 장치(30)와 연동될 수 있다.The user terminal 10 is connected to a web page operated by a person or organization providing services using the device 30, or an application developed and distributed by a person or organization providing services using the device 30. Can be installed. The user terminal 10 may be linked to the device 30 through a web page or application.
사용자 단말(10)은 장치(30)에서 제공하는 웹 페이지, 애플리케이션을 등을 통해 장치(30)에 접속할 수 있다.The user terminal 10 can access the device 30 through a web page or application provided by the device 30.
청구항에 기재된 단수의 표현은 복수를 포함하는 것으로 이해될 수 있다. 예를 들어, 청구항의 사용자는 하나의 사용자 또는 둘 이상의 사용자를 지칭할 수 있다.The singular expressions recited in the claims may be understood to include the plural. For example, the user in a claim may refer to one user or two or more users.
장치(30)는 적응적 마스크드 어텐션 메커니즘을 이용한 에스팩트 기반 문장 내 감정 분석 방법을 제공할 수 있다.The device 30 can provide an aspect-based emotion analysis method within a sentence using an adaptive masked attention mechanism.
장치(30)는 장치(30)를 이용하여 서비스를 제공하는 자 내지 단체가 보유한 자체 서버일수도 있고, 클라우드 서버일 수도 있고, 분산된 노드(node)들의 p2p(peer-to-peer) 집합일 수도 있다. 장치(30)는 통상의 컴퓨터가 가지는 연산 기능, 저장/참조 기능, 입출력 기능 및 제어 기능을 전부 또는 일부 수행하도록 구성될 수 있다.The device 30 may be an own server owned by a person or organization that provides services using the device 30, a cloud server, or a p2p (peer-to-peer) collection of distributed nodes. It may be possible. The device 30 may be configured to perform all or part of the calculation function, storage/reference function, input/output function, and control function of a typical computer.
장치(30)는 사용자 단말(10)과 유무선으로 통신하도록 구성될 수 있으며, 사용자 단말(10)의 동작을 제어하고, 사용자 단말(10)의 화면에 어느 정보를 표시할 것인지에 대해 제어할 수 있다.The device 30 may be configured to communicate with the user terminal 10 wired or wirelessly, control the operation of the user terminal 10, and control which information to display on the screen of the user terminal 10. .
한편, 설명의 편의를 위해 도 1에서는 사용자 단말(10)만을 도시하였으나, 단말들의 수는 실시예에 따라 얼마든지 달라질 수 있다. 장치(30)의 처리 용량이 허용하는 한, 단말들의 수 및 프린터 장치들의 수는 특별한 제한이 없다.Meanwhile, for convenience of explanation, only the user terminal 10 is shown in FIG. 1, but the number of terminals may vary depending on the embodiment. There are no particular restrictions on the number of terminals and the number of printer devices as long as the processing capacity of the device 30 allows.
일실시예에 따르면, 장치(30) 내에는 데이터베이스가 구비될 수 있으며, 이에 한정되지 않고, 장치(30)와 별도로 데이터베이스가 구성될 수 있다. 장치(30)는 기계 학습 알고리즘의 수행을 위한 다수의 인공 신경망을 포함할 수 있다.According to one embodiment, a database may be provided within the device 30, but the present invention is not limited to this, and the database may be configured separately from the device 30. Device 30 may include multiple artificial neural networks for performing machine learning algorithms.
본 발명에서, 인공지능(Artificial Intelligence, AI)은 인간의 학습능력, 추론능력, 지각능력 등을 모방하고, 이를 컴퓨터로 구현하는 기술을 의미하고, 기계 학습, 심볼릭 로직(Symbolic Logic) 등의 개념을 포함할 수 있다. 기계 학습(Machine Learning, ML)은 입력 데이터들의 특징을 스스로 분류 또는 학습하는 알고리즘 기술이다. 인공지능의 기술은 기계 학습의 알고리즘으로써 입력 데이터를 분석하고, 그 분석의 결과를 학습하며, 그 학습의 결과에 기초하여 판단이나 예측을 할 수 있다. 또한, 기계 학습의 알고리즘을 활용하여 인간 두뇌의 인지, 판단 등의 기능을 모사하는 기술들 역시 인공지능의 범주로 이해될 수 있다. 예를 들어, 언어적 이해, 시각적 이해, 추론/예측, 지식 표현, 동작 제어 등의 기술 분야가 포함될 수 있다.In the present invention, artificial intelligence (AI) refers to technology that imitates human learning ability, reasoning ability, perception ability, etc. and implements this with a computer, and includes concepts such as machine learning and symbolic logic. may include. Machine Learning (ML) is an algorithmic technology that classifies or learns the characteristics of input data on its own. Artificial intelligence technology is a machine learning algorithm that analyzes input data, learns the results of the analysis, and makes judgments or predictions based on the results of the learning. Additionally, technologies that mimic the functions of the human brain, such as cognition and judgment, using machine learning algorithms can also be understood as the category of artificial intelligence. For example, technical fields such as verbal understanding, visual understanding, reasoning/prediction, knowledge representation, and motion control may be included.
기계 학습은 데이터를 처리한 경험을 이용해 신경망 모델을 훈련시키는 처리를 의미할 수 있다. 기계 학습을 통해 컴퓨터 소프트웨어는 스스로 데이터 처리 능력을 향상시키는 것을 의미할 수 있다. 신경망 모델은 데이터 사이의 상관 관계를 모델링하여 구축된 것으로서, 그 상관 관계는 복수의 파라미터에 의해 표현될 수 있다. 신경망 모델은 주어진 데이터로부터 특징들을 추출하고 분석하여 데이터 간의 상관 관계를 도출하는데, 이러한 과정을 반복하여 신경망 모델의 파라미터를 최적화해 나가는 것이 기계 학습이라고 할 수 있다. 예를 들어, 신경망 모델은 입출력 쌍으로 주어지는 데이터에 대하여, 입력과 출력 사이의 매핑(상관 관계)을 학습할 수 있다. 또는, 신경망 모델은 입력 데이터만 주어지는 경우에도 주어진 데이터 사이의 규칙성을 도출하여 그 관계를 학습할 수도 있다.Machine learning can refer to the process of training a neural network model using experience processing data. Machine learning can mean that computer software improves its own data processing capabilities. A neural network model is built by modeling the correlation between data, and the correlation can be expressed by a plurality of parameters. A neural network model extracts and analyzes features from given data to derive correlations between data. Repeating this process to optimize the parameters of the neural network model can be called machine learning. For example, a neural network model can learn the mapping (correlation) between input and output for data given as input-output pairs. Alternatively, a neural network model may learn the relationships by deriving regularities between given data even when only input data is given.
인공지능 학습모델 또는 신경망 모델은 인간의 뇌 구조를 컴퓨터 상에서 구현하도록 설계될 수 있으며, 인간의 신경망의 뉴런(neuron)을 모의하며 가중치를 가지는 복수의 네트워크 노드들을 포함할 수 있다. 복수의 네트워크 노드들은 뉴런이 시냅스(synapse)를 통하여 신호를 주고받는 뉴런의 시냅틱(synaptic) 활동을 모의하여, 서로 간의 연결 관계를 가질 수 있다. 인공지능 학습모델에서 복수의 네트워크 노드들은 서로 다른 깊이의 레이어에 위치하면서 컨볼루션(convolution) 연결 관계에 따라 데이터를 주고받을 수 있다. 인공지능 학습모델은, 예를 들어, 인공 신경망 모델(Artificial Neural Network), 컨볼루션 신경망 모델(Convolution Neural Network: CNN) 등일 수 있다. 일 실시예로서, 인공지능 학습모델은, 지도학습(Supervised Learning), 비지도 학습(Unsupervised Learning), 강화 학습(Reinforcement Learning) 등의 방식에 따라 기계 학습될 수 있다. 기계 학습을 수행하기 위한 기계 학습 알고리즘에는, 의사결정트리(Decision Tree), 베이지안 망(Bayesian Network), 서포트 벡터 머신(Support Vector Machine), 인공 신경망(Artificial Neural Network), 에이다부스트(Ada-boost), 퍼셉트론(Perceptron), 유전자 프로그래밍(Genetic Programming), 군집화(Clustering) 등이 사용될 수 있다.An artificial intelligence learning model or neural network model may be designed to implement the human brain structure on a computer, and may include a plurality of network nodes with weights that simulate neurons of a human neural network. A plurality of network nodes may have a connection relationship with each other by simulating the synaptic activity of neurons in which neurons exchange signals through synapses. In an artificial intelligence learning model, multiple network nodes are located in layers of different depths and can exchange data according to convolutional connection relationships. The artificial intelligence learning model may be, for example, an artificial neural network model (Artificial Neural Network), a convolution neural network (CNN) model, etc. As an example, an artificial intelligence learning model may be machine-learned according to methods such as supervised learning, unsupervised learning, and reinforcement learning. Machine learning algorithms for performing machine learning include Decision Tree, Bayesian Network, Support Vector Machine, Artificial Neural Network, and Ada-boost. , Perceptron, Genetic Programming, Clustering, etc. can be used.
이중, CNN은 최소한의 전처리(preprocess)를 사용하도록 설계된 다계층 퍼셉트론(multilayer perceptrons)의 한 종류이다. CNN은 하나 또는 여러 개의 합성곱 계층과 그 위에 올려진 일반적인 인공 신경망 계층들로 이루어져 있으며, 가중치와 통합 계층(pooling layer)들을 추가로 활용한다. 이러한 구조 덕분에 CNN은 2차원 구조의 입력 데이터를 충분히 활용할 수 있다. 다른 딥러닝 구조들과 비교해서, CNN은 영상, 음성 분야 모두에서 좋은 성능을 보여준다. CNN은 또한 표준 역전달을 통해 훈련될 수 있다. CNN은 다른 피드포워드 인공신경망 기법들보다 쉽게 훈련되는 편이고 적은 수의 매개변수를 사용한다는 이점이 있다.Among them, CNN is a type of multilayer perceptrons designed to use minimal preprocessing. CNN consists of one or several convolution layers and general artificial neural network layers on top of them, and additionally utilizes weights and pooling layers. Thanks to this structure, CNN can fully utilize input data with a two-dimensional structure. Compared to other deep learning structures, CNN shows good performance in both video and audio fields. CNNs can also be trained via standard back propagation. CNNs have the advantage of being easier to train and using fewer parameters than other feedforward artificial neural network techniques.
컨볼루션 네트워크는 묶인 파라미터들을 가지는 노드들의 집합들을 포함하는 신경 네트워크들이다. 사용 가능한 트레이닝 데이터의 크기 증가와 연산 능력의 가용성이, 구분적 선형 단위 및 드롭아웃 트레이닝과 같은 알고리즘 발전과 결합되어, 많은 컴퓨터 비전 작업들이 크게 개선되었다. 오늘날 많은 작업에 사용할 수 있는 데이터 세트들과 같은 엄청난 양의 데이터 세트에서는 초과 맞춤(outfitting)이 중요하지 않으며, 네트워크의 크기를 늘리면 테스트 정확도가 향상된다. 컴퓨팅 리소스들의 최적 사용은 제한 요소가 된다. 이를 위해, 심층 신경 네트워크들의 분산된, 확장 가능한 구현예가 사용될 수 있다.Convolutional networks are neural networks that contain sets of nodes with bound parameters. The increasing size of available training data and the availability of computational power, combined with algorithmic advances such as piecewise linear unit and dropout training, have led to significant improvements in many computer vision tasks. For extremely large data sets, such as those available for many tasks today, overfitting is not critical, and increasing the size of the network improves test accuracy. Optimal use of computing resources becomes a limiting factor. For this purpose, distributed, scalable implementations of deep neural networks can be used.
일실시예에 따르면, BERT 언어모델을 적용하여 정확도와 처리 속도를 충분히 만족시킬 수 있는 적정 규모의 감정 분석 모델을 구현할 수 있다According to one embodiment, by applying the BERT language model, an emotion analysis model of an appropriate size that can sufficiently satisfy accuracy and processing speed can be implemented.
도 2는 일실시예에 따른 적응적 마스크드 어텐션 메커니즘을 이용하여 에스팩트 기반 문장 내 감정을 분석하는 방법을 설명하기 위한 도면이다.Figure 2 is a diagram illustrating a method of analyzing emotions in an aspect-based sentence using an adaptive masked attention mechanism according to an embodiment.
BERT 언어모델은 트랜스포머(Transformer) 구조를 바탕으로 하는 언어모델 중 하나이며, 대용량의 데이터를 이용하여 사전 학습(pre-training)을 하는 방법으로 빅데이터에서 얻을 수 있는 다양한 형태적, 의미적 요소를 모델에 학습시킬 수 있는 모델이다. The BERT language model is one of the language models based on the Transformer structure, and is a method of pre-training using large amounts of data to identify various morphological and semantic elements that can be obtained from big data. This is a model that can be trained on a model.
다시 말해, BERT 언어모델은 사전 학습을 통해 학습 데이터에 존재하지 않는 다양한 어휘적 특성을 학습할 수 있어 모델의 파라미터를 조정하는 파인-튜닝(fine-tuning) 과정에서 학습 데이터에 나타나지 않은 이형의 문제도 해결할 수 있는 이점을 제공한다.In other words, the BERT language model can learn various lexical features that do not exist in the training data through prior learning, so the problem of heterogeneity that does not appear in the training data occurs during the fine-tuning process of adjusting the model's parameters. It also provides the advantage of being able to solve problems.
BERT 언어모델(400)은 주어진 문장을 입력으로 받아 입력 임베딩 레이어(input embedding layer)를 통해 토큰 단위로 먼저 임베딩한 후 트랜스포머 레이어(transformer layer)를 거쳐 토큰의 위치 정보를 고려한 인코딩으로 문맥을 표현하는(contextual representation) 구조로 이루어진다.The BERT language model 400 receives a given sentence as input, first embeds it in token units through an input embedding layer, and then passes through a transformer layer to express the context through encoding that takes into account the location information of the token. (contextual representation) structure.
트랜스포머 레이어는 CNN이나 RNN과 같은 모델 대신, 셀프-어텐션(self-attention) 모델로 이루어지며, BERT 언어모델은 트랜스포머의 인코더와 디코더 중 인코더만 사용하여 언어를 임베딩한다.The transformer layer is composed of a self-attention model instead of models such as CNN or RNN, and the BERT language model embeds the language using only the encoder among the encoders and decoders of the transformer.
이러한 BERT 언어모델은 사전 학습을 수행하는 모델 구조로 구현됨에 따라 CNN이나 LSTM 등의 모델과 비교하여 성능이 우수하다.As this BERT language model is implemented with a model structure that performs prior learning, its performance is superior compared to models such as CNN or LSTM.
BERT 언어모델은 모델이 커지면 커질수록 높은 성능을 가지나, 서비스에 활용하기 위해서는 모델을 압축하거나 줄이는 것이 필수불가결한 상황에서 성능과 처리 속도의 임계값을 조절하며 모델을 최적화하는 것이 필요하다.The BERT language model has higher performance as the model grows, but in situations where it is essential to compress or reduce the model to use it in a service, it is necessary to optimize the model by adjusting the thresholds of performance and processing speed.
실시예에 따른 감정 분석 시스템은 상품(예를 들어, 쇼핑, 영화, 뮤직 등)에 대한 감정 분석, 업체(예를 들어, 맛집, 호텔, 회사 등)에 대한 감정 분석, 인물(예를 들어, 연예인, 정치인 등)에 대한 감정 분석, 화자 발언에 대한 감정 분석 등에 활용될 수 있다.The emotion analysis system according to the embodiment includes emotion analysis for products (e.g., shopping, movies, music, etc.), emotion analysis for businesses (e.g., restaurants, hotels, companies, etc.), and people (e.g., It can be used for emotional analysis of (celebrities, politicians, etc.), emotional analysis of speaker remarks, etc.
로컬 텍스트는 [CLS] + Sentence + [SEP]로 정의될 수 있으며, 글로벌 텍스트는 [CLS] + Sentence + aspect term + [SEP]으로 정의될 수 있다.Local text can be defined as [CLS] + Sentence + [SEP], and global text can be defined as [CLS] + Sentence + aspect term + [SEP].
장치(30)는 후속 작업을 용이하게 하기 위해 BERT모델을 사용하여 문장을 모델링한 후 내용에서 aspect term의 길이를 1로 줄이고, 원래 aspect term의 길이가 1이면 그대로 유지하도록 할 수 있다.To facilitate subsequent work, the device 30 may model the sentence using the BERT model and then reduce the length of the aspect term in the content to 1, and if the length of the original aspect term is 1, it may be maintained as is.
여기서, E는 모델링된 내용을 나타내고, E'는 max pooling 처리된 내용을 나타내며, 입력의 길이가 항상 같다는 것을 보장하기 위해 단축된 길이만큼 뒤에 0을 보충할 수 있다.Here, E represents the modeled content, E' represents the max pooling processed content, and 0 can be added at the end of the shortened length to ensure that the length of the input is always the same.
장치(30)는 데이터 처리 과정에서 로컬 텍스트 길이와 측면 용어 길이를 저장하여 전역 임베딩에서 로컬 임베딩 부분을 절단할 수 있다. Ei={e1,e2,... ,en}, 위의 공식에서 알 수 있듯이 n은 로컬 텍스트의 길이를 나타내고, m은 측면 용어의 길이를 나타내며, 이전 섹션에서 가장 큰 풀로 측면의 길이를 1로 줄였기 때문에 여기서 처리해야 하는 로컬 텍스트의 길이는 n-m+1일 수 있다. The device 30 may store the local text length and the side term length during data processing to cut the local embedding portion from the global embedding. Ei={e1,e2,... ,en}, as can be seen from the above formula, n represents the length of the local text, m represents the length of the side term, and the length of the side with the largest pool in the previous section is 1 Since it is shortened to , the length of local text to be processed here may be n-m+1.
따라서 처리된 국소 임베딩은 E’l={e’1, e’2, ..., e'n-m-1}입니다. Q'를 얻기 위해 동일한 방법으로 Q를 처리할 수 있다.Therefore, the processed local embedding is E’l={e’1, e’2, ..., e'n-m-1}. We can process Q in the same way to obtain Q'.
장치(30)는 BERT 모델링 후 글로벌 텍스트의 마지막 aspect term 부분을 제외하고, 글로벌 임베딩의 로컬 임베딩 부분만 attention 메커니즘을 사용하여 처리하고 알파 값을 획득할 수 있으며, 획득한 차원은 [n-m-1, n-m-1]일 수 있다.After BERT modeling, the device 30 can process only the local embedding part of the global embedding using an attention mechanism and obtain an alpha value, excluding the last aspect term part of the global text, and the obtained dimensions are [n-m-1, n-m-1].
이때, 첫 번째 차원의 n은 현재 시퀀스 길이를 나타내고 두 번째 차원의 n은 n개의 토큰에 할당된 각 토큰의 무게를 나타낼 수 있다.At this time, n in the first dimension may represent the current sequence length, and n in the second dimension may represent the weight of each token assigned to n tokens.
따라서, 장치(30)는 첫 번째 차원에서 두 번째 차원의 측면 벡터에 해당하는 n의 벡터를 찾고 안의 값을 큰 것에서 작은 것으로 정렬할 수 있다.Accordingly, the device 30 can find the vector of n corresponding to the side vector in the second dimension in the first dimension and sort the values therein from large to small.
도 3은 일실시예에 따른 가중치를 산출하는 과정을 설명하기 위한 도면이다.Figure 3 is a diagram for explaining a process for calculating weights according to an embodiment.
αij는 attention이 global text에서 local text를 계산한 결과를 나타낼 수 있다.αij can represent the result of attention calculating local text from global text.
장치(30)는 최종 결과의 일부로 분류기에 입력되는 attention매커니즘을 사용하여 로컬 텍스트를 처리할 때 얻은 local embedding에 가중치를 부여한 결과 값을 산출할 수 있다.The device 30 can calculate a result value that weights the local embedding obtained when processing local text using an attention mechanism that is input to the classifier as part of the final result.
도 4는 일실시예에 따른 장치의 구성의 예시도이다.Figure 4 is an exemplary diagram of the configuration of a device according to an embodiment.
일실시예에 따른 장치(30)는 프로세서(31) 및 메모리(32)를 포함한다. 일실시예에 따른 장치(30)는 상술한 서버 또는 단말일 수 있다. 프로세서(31)는 도 1 내지 도 3을 통하여 전술한 적어도 하나의 장치들을 포함하거나, 도 1 내지 도 3을 통하여 전술한 적어도 하나의 방법을 수행할 수 있다. 메모리(32)는 상술한 방법과 관련된 정보를 저장하거나 상술한 방법이 구현된 프로그램을 저장할 수 있다. 메모리(32)는 휘발성 메모리 또는 비휘발성 메모리일 수 있다. Device 30 according to one embodiment includes a processor 31 and memory 32. The device 30 according to one embodiment may be the server or terminal described above. The processor 31 may include at least one device described above with reference to FIGS. 1 to 3 or may perform at least one method described with reference to FIGS. 1 to 3 . The memory 32 may store information related to the above-described method or store a program in which the above-described method is implemented. Memory 32 may be volatile memory or non-volatile memory.
프로세서(31)는 프로그램을 실행하고, 장치(30)를 제어할 수 있다. 프로세서(31)에 의하여 실행되는 프로그램의 코드는 메모리(32)에 저장될 수 있다. 장치(30)는 입출력 장치(도면 미 표시)를 통하여 외부 장치(예를 들어, 퍼스널 컴퓨터 또는 네트워크)에 연결되고, 데이터를 교환할 수 있다.The processor 31 can execute programs and control the device 30. The code of the program executed by the processor 31 may be stored in the memory 32. The device 30 is connected to an external device (eg, a personal computer or a network) through an input/output device (not shown) and can exchange data.
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The embodiments described above may be implemented with hardware components, software components, and/or a combination of hardware components and software components. For example, the devices, methods, and components described in the embodiments may include, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, and a field programmable gate (FPGA). It may be implemented using one or more general-purpose or special-purpose computers, such as an array, programmable logic unit (PLU), microprocessor, or any other device capable of executing and responding to instructions. A processing device may execute an operating system (OS) and one or more software applications that run on the operating system. Additionally, a processing device may access, store, manipulate, process, and generate data in response to the execution of software. For ease of understanding, a single processing device may be described as being used; however, those skilled in the art will understand that a processing device includes multiple processing elements and/or multiple types of processing elements. It can be seen that it may include. For example, a processing device may include a plurality of processors or one processor and one controller. Additionally, other processing configurations, such as parallel processors, are possible.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, etc., singly or in combination. Program instructions recorded on the medium may be specially designed and configured for the embodiment or may be known and available to those skilled in the art of computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floptical disks. -Includes optical media (magneto-optical media) and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, etc. Examples of program instructions include machine language code, such as that produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter, etc. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.Software may include a computer program, code, instructions, or a combination of one or more of these, which may configure a processing unit to operate as desired, or may be processed independently or collectively. You can command the device. Software and/or data may be used on any type of machine, component, physical device, virtual equipment, computer storage medium or device to be interpreted by or to provide instructions or data to a processing device. , or may be permanently or temporarily embodied in a transmitted signal wave. Software may be distributed over networked computer systems and stored or executed in a distributed manner. Software and data may be stored on one or more computer-readable recording media.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.Although the embodiments have been described with limited drawings as described above, those skilled in the art can apply various technical modifications and variations based on the above. For example, the described techniques are performed in a different order than the described method, and/or components of the described system, structure, device, circuit, etc. are combined or combined in a different form than the described method, or other components are used. Alternatively, appropriate results may be achieved even if substituted or substituted by an equivalent.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents of the claims also fall within the scope of the following claims.
Claims (3)
사용자의 단말로부터 감정 분석을 하고자 하는 문장을 수신하고, 상기 수신한 문장으로부터 텍스트를 추출하는 단계;
상기 텍스트를 이용하여 로컬 텍스트(local text) 데이터 및 상기 로컬 텍스트와 aspect term을 포함하는 글로벌 텍스트(global text) 데이터를 생성하는 단계;
상기 글로벌 텍스트 데이터 중에서 상기 로컬 텍스트 데이터가 해당하는 부분을 추출하는 단계;
상기 텍스트 데이터를 BERT를 이용하여 벡터 값으로 변환하는 단계;
상기 aspect term의 벡터 값에 가중치를 적용하여 결과 값을 획득하는 단계;
상기 결과 값을 이용하여 상기 문장 내 텍스트의 감정을 분석하는 단계를 포함하는
적응적 마스크드 어텐션 메커니즘을 이용한 에스팩트 기반 문장 내 감정 분석 방법.In a method performed by a device,
Receiving a sentence for which emotion analysis is to be performed from the user's terminal and extracting text from the received sentence;
Generating local text data and global text data including the local text and aspect terms using the text;
extracting a portion corresponding to the local text data from the global text data;
Converting the text data into a vector value using BERT;
Obtaining a result value by applying a weight to the vector value of the aspect term;
Comprising the step of analyzing the emotion of the text in the sentence using the result value.
An aspect-based emotion analysis method in sentences using an adaptive masked attention mechanism.
상기 가중치는,
attention 매커니즘을 이용하여 생성되고,
상기 로컬 텍스트 데이터의 임베딩한 부분을 상기 attention 매커니즘을 이용하여 처리하여 차원을 획득하는 단계;
적응형 메커니즘을 이용하여 상기 차원에 할당된 다른 토큰 특성의 가중치를 산출하는 단계;
상기 가중치를 정렬하고, 상기 정렬된 가중치를 사용하여 aspect term의 중요도를 산출하는 단계를 더 포함하는
적응적 마스크드 어텐션 메커니즘을 이용한 에스팩트 기반 문장 내 감정 분석 방법.According to paragraph 1,
The weight is,
Generated using the attention mechanism,
Processing the embedded part of the local text data using the attention mechanism to obtain dimension;
calculating weights of different token characteristics assigned to the dimension using an adaptive mechanism;
Sorting the weights and calculating the importance of the aspect term using the sorted weights.
An aspect-based emotion analysis method in sentences using an adaptive masked attention mechanism.
상기 벡터 값으로 변환하는 단계는,
상기 aspect term의 길이가 1을 초과하는지 여부를 판단하는 단계,
상기 aspect term의 길이가 1인 경우 모델링 결과를 그대로 유지하는 단계, 및
상기 aspect term의 길이가 1을 초과하는 경우, 모델링 결과의 단축된 길이만큼 0을 보충하여 모델링 결과를 수정하는 단계를 포함하는
적응적 마스크드 어텐션 메커니즘을 이용한 에스팩트 기반 문장 내 감정 분석 방법.According to paragraph 1,
The step of converting to the vector value is,
Determining whether the length of the aspect term exceeds 1,
If the length of the aspect term is 1, maintaining the modeling result as is, and
When the length of the aspect term exceeds 1, including the step of correcting the modeling result by supplementing 0 by the shortened length of the modeling result.
An aspect-based emotion analysis method in sentences using an adaptive masked attention mechanism.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220162379A KR20240094110A (en) | 2022-11-29 | 2022-11-29 | Method, apparatus and system for analyzing emotions in aspect-based sentences using adaptive masked attention mechanism |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220162379A KR20240094110A (en) | 2022-11-29 | 2022-11-29 | Method, apparatus and system for analyzing emotions in aspect-based sentences using adaptive masked attention mechanism |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20240094110A true KR20240094110A (en) | 2024-06-25 |
Family
ID=91711151
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220162379A KR20240094110A (en) | 2022-11-29 | 2022-11-29 | Method, apparatus and system for analyzing emotions in aspect-based sentences using adaptive masked attention mechanism |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20240094110A (en) |
-
2022
- 2022-11-29 KR KR1020220162379A patent/KR20240094110A/en unknown
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102071582B1 (en) | Method and apparatus for classifying a class to which a sentence belongs by using deep neural network | |
CN111368996B (en) | Retraining projection network capable of transmitting natural language representation | |
CN111368079B (en) | Text classification method, model training method, device and storage medium | |
Mishra et al. | The understanding of deep learning: A comprehensive review | |
CN116415654A (en) | Data processing method and related equipment | |
KR102365433B1 (en) | Method and apparatus for emotion recognition based on cross attention model | |
Chen et al. | A SA‐ANN‐based modeling method for human cognition mechanism and the PSACO cognition algorithm | |
KR102586799B1 (en) | Method, device and system for automatically processing creation of web book based on web novel using artificial intelligence model | |
US20200043495A1 (en) | Method and apparatus for performing multi-language communication | |
CN113392210A (en) | Text classification method and device, electronic equipment and storage medium | |
Halvardsson et al. | Interpretation of swedish sign language using convolutional neural networks and transfer learning | |
KR102463875B1 (en) | Method, device and system for providing personalized psychotherapy content using big data | |
CN113657272B (en) | Micro video classification method and system based on missing data completion | |
KR102543647B1 (en) | Method, apparatus and system for analyzing emotions in aspect-based sentences using adaptive masked attention mechanism | |
KR102564182B1 (en) | Method, apparatus and system for extracting facial expression images based on image data using artificial intelligence models and creating contents using them | |
Verma et al. | Synthesized feature learning model on news aggregator for chatbot | |
Ajallouda et al. | Automatic keyphrases extraction: an overview of deep learning approaches | |
Agarwal et al. | From multimodal to unimodal attention in transformers using knowledge distillation | |
Pham et al. | Speech emotion recognition: A brief review of multi-modal multi-task learning approaches | |
KR20240094110A (en) | Method, apparatus and system for analyzing emotions in aspect-based sentences using adaptive masked attention mechanism | |
Yu et al. | Efficient multi-spike learning with tempotron-like ltp and psd-like ltd | |
Mohamed | An Introduction to Deep Learning | |
CN114330297A (en) | Language model pre-training method, language text processing method and device | |
Amiriparian et al. | Humans inside: cooperative big multimedia data mining | |
KR102618066B1 (en) | Method, device and system for strengthening military security based on natural language process and image compare in soldier based community application |