KR20200072593A - 신경망 네트워크에 기반한 의존 구문 분석 제어 방법 및 그것을 이용하는 의존 구문 분석 장치 - Google Patents

신경망 네트워크에 기반한 의존 구문 분석 제어 방법 및 그것을 이용하는 의존 구문 분석 장치 Download PDF

Info

Publication number
KR20200072593A
KR20200072593A KR1020180154384A KR20180154384A KR20200072593A KR 20200072593 A KR20200072593 A KR 20200072593A KR 1020180154384 A KR1020180154384 A KR 1020180154384A KR 20180154384 A KR20180154384 A KR 20180154384A KR 20200072593 A KR20200072593 A KR 20200072593A
Authority
KR
South Korea
Prior art keywords
neural network
dependency
parsing
word
information
Prior art date
Application number
KR1020180154384A
Other languages
English (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 KR1020180154384A priority Critical patent/KR20200072593A/ko
Publication of KR20200072593A publication Critical patent/KR20200072593A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/211Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Biophysics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Machine Translation (AREA)

Abstract

본 발명은 의존 구문 분석을 수행하기 위하여 양방향(Bi-directional) 신경망을 이용하는 방법에 관한 것이다. 보다 구체적으로 본 발명은, 의존 구문 분석(dependency parsing)하기 위한 제어 방법에 있어서, 소정 단어의 사전적 의미를 수치화시킨 제 1 벡터를 산출하는 단계, 상기 소정 단어에 포함된 적어도 하나의 구성 성분에 대한 정보(Subword information)를 수치화시킨 제 2 벡터를 산출하는 단계, 및 상기 제 1 및 제 2 벡터에 기초(concatenate)하여 상기 소정 단어와 의존관계에 있는 의존관계 단어를 지정하는 단계를 포함하는 제어 방법에 관한 것이다.

Description

신경망 네트워크에 기반한 의존 구문 분석 제어 방법 및 그것을 이용하는 의존 구문 분석 장치{DEPENDENCY PARSING METHOD BASED ON NEURAL NETWORK AND DEPENDENCY PARSING APPARATUS USING THEREOF}
본 발명은 신경망 네트워크에 기초하여 의존 구문 분석 방법 및 장치에 관한 것으로, 보다 구체적으로는, 단어의 의미와 구성 성분을 모두 분석한 결과를 양방향 신경망 네트워크에 입력으로 넣어 의존관계 단어를 효과적으로 찾아내어 한국어의 구문을 보다 정확하게 분석할 수 있는 의존 구문 분석 방법 및 장치에 관한 것이다.
구문 분석(parsing)은 자연어 처리(NLP, natural language processing)에 있어서 가장 근간을 이루는 기술이다. 자연어 처리 기술을 이용하게 되면, 단순 문장에 대한 번역을 수행할 수 있을 뿐만 아니라, 사람의 음성을 실시간으로 해석하여 통역할 수도 있다.
한국어는 다른 언어에 비해 풍부한 기능 형태소를 갖고 있으며 1개 이상의 형태소가 어절을 이루기 때문에 형태소 구분 방법이 복잡하지만 어순이 비교적 자유롭다는 특징이 존재한다. 이러한 특징의 언어처리를 위한 구문 분석 방식으로는, constituency parser라는 방식보다는 의존 구문 분석(dependency parser) 방식이 더 유리하기 때문에 의존 구문 분석을 적용하는 것이 일반적이다.
또한 기존의 구문 분석 방식은 자연어를 이루고 있는 복수 개의 구성 성분들 각각에 대한 개별 정보(subword information)를 활용할 수 없기 때문에, OOV(Out Of Vocabulary) 단어에 대한 처리에 효과적이지 않다.
구문 분석에 의해서 구분되는 각 구성 성분들은 신경망(neural network) 시스템에 입력되어 딥 러닝(deep learning) 방식으로 분석된다. 특히, 시계열적으로 입력이 이루어지는 자연어 처리를 수행하기 위한 신경망 시스템으로는, RNN(Recurrent neural network) 시스템을 활용하는 추세이다.
도 1은 RNN 시스템(120)의 개념을 설명하기 위한 도면이다.
도 1에서는 RNN 시스템(120)을 통해서 'hello'라는 단어가 문자 단위로 순차적으로 입력(하단 왼쪽에서 오른쪽으로 X0, X1, X2 ...)되고 있으며, 각 입력에 대한 출력으로는 다음으로 입력될 문자가 무엇인지 예측(상단 왼쪽에서 오른쪽으로)하고 있다. 즉, 'h'라는 문자 다음으로 'e'가 입력될 예정인데, RNN 시스템(120)의 신경망 레이어(110, hidden layer)에 'h' 문자가 입력(X0 입력, 130-1)되는 경우 다음에 올 문자가 'e'라는 것을 예측(h0 출력, 140-1)하는 것이다.
특히 RNN 시스템(120)의 가장 주요한 특징으로는, 현재 입력뿐만 아니라 과거의 입력된 내용을 모두 고려하여 출력을 제공한다는 것에 있다.
도 1에서 'e'라는 문자 입력(X1, 130-2)은 제 2 신경망 모듈(110-2)에 입력되고 있다. 제 2 신경망 모듈(110-2)은, 'e'라는 문자 입력(X1, 130-2) 뿐만 아니라 제 1 신경망 모듈(110-1)의 추력 h0를 함께 입력 받고 있다. 즉, 일정한 가중치(weight factor)가 적용되어 과거의 입력 'h'에 대한 입력(X0, 130-1)를 반영한 결과를 출력할 수 있다는 의미이다. 이 결과를 수학식으로 나타내면 아래 수학식 1과 같다.
Figure pat00001
현재 입력 xt에 대한 결과 ht는 과거의 결과 ht-1 역시 반영하여 출력한다는 것이다. 즉, 과거에서 현재로의 방향성이 존재한다는 것이다.
하지만, 이러한 모델의 RNN 신경망은 장기 의존성이 낮다는 문제점이 존재한다. 문장 내에서 단어 간 거리가 멀지 않은 경우에는 단어 간의 관계가 고려된 출력이 나올 수는 있지만, 거리가 멀어질수록 반복된 가중치로 인하여 영향이 지속적으로 감소할 수 밖에 없기 때문이다.
더군다나, 위와 같은 모델은 단일 시간 방향에 대한 분석만을 수행하여, 시간축으로 양방향 분석을 할 수 없다는 단점이 존재한다.
따라서, 구문 분석에 보다 적합하게 활용될 수 있도록, 단어와 단어 사이가 멀더라도 관계를 분석할 수 있으면서 동시에 시간축으로 양방향을 분석할 수 있는 신경망 시스템에 대한 연구가 요구되는 실정이다.
본 발명은 전술한 문제 및 다른 문제를 해결하는 것을 목적으로 한다. 또 다른 목적은 단어의 사전적 의미와 함께 해당 단어를 구성하고 있는 구성 성분에 대한 정보를 함께 고려하여 의존관계 단어를 효과적으로 찾을 수 있는 의존 구문 분석 방법을 제공하는 것을 그 목적으로 한다.
또 다른 목적은 단어와 단어가 멀리 떨어져 있다고 하더라도 효과적으로 의존관계를 확인할 수 있는 의존 구문 분석 방법을 제공하는 것을 그 목적으로 한다.
또 다른 목적은 단일 시간 방향이 아닌 양방향 신경망 네트워크를 통하여 보다 정확한 의존 구문 분석을 제공하는 것을 그 목적으로 한다.
본 발명에서 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
상기 또는 다른 목적을 달성하기 위해 본 발명의 일 측면에 따르면, 신경망 네트워크(neural network)에 기반하여 의존 구문 분석(dependency parsing)하기 위한 제어 방법에 있어서, 소정 단어의 사전적 의미를 수치화시킨 제 1 벡터를 산출하는 단계; 상기 소정 단어에 포함된 적어도 하나의 구성 성분에 대한 정보(Subword information)를 수치화시킨 제 2 벡터를 산출하는 단계; 및 상기 제 1 및 제 2 벡터에 기초(concatenate)하여 상기 소정 단어와 의존관계에 있는 의존관계 단어를 지정하는 단계를 포함하는, 의존 구문 분석 제어 방법을 제공한다.
이때 상기 지정하는 단계는, 상기 제 1 및 제 2 벡터를 상기 신경망 네트워크의 입력으로 했을 때 나오는 출력에 기초하여 상기 의존관계 단어를 지정할 수 있다.
이 경우 신경망 네트워크는, 순환 신경망(Recurrent Neural Network, RNN)일 수 있다.
순환 신경망은, LSTM(long short term memory network), GRU RNN(Gated Recurrent Unit, recurrent neural network) 중 하나일 수 있다.
또한 순환 신경망은, 양방향(Bi-directional) 신경망일 수 있다.
상기 양방향 신경망은, 제 1 방향으로 진행되는 제 1 레이어와, 제 2 방향으로 진행되는 제 2 레이어를 포함하고, 상기 입력된 제 1 및 제 2 벡터는 상기 제 1 및 제 2 레이어를 순차적으로 통과될 수 있다.
제 1 벡터를 산출하는 단계는, Word2Vec 모델에 기초하여 수행될 수 있다.
제 2 벡터를 산출하는 단계는, 상기 소정 단어를 상기 신경망 네트워크의 입력으로 했을 때 나오는 출력에 기초하여 상기 제 2 벡터를 산출할 수 있다.
상기 신경망 네트워크는, CNN(convolutional neural network)일 수 있다.
상기 적어도 하나의 구성 성분에 대한 정보는, 어근 정보, 접사 정보 및 n-gram 정보 중 적어도 하나를 포함할 수 있다.
본 발명에 따른 의존 구문 분석 장치 및 방법의 효과에 대해 설명하면 다음과 같다.
본 발명의 실시 예들 중 적어도 하나에 의하면, 단어 의미 자체에 대한 학습뿐만 아니라, 단어를 구성하는 구성 성분들의 특징을 반영하여 보다 정확한 의존 구문 분석 방법을 제공해 줄 수 있다는 장점이 있다.
또한, 본 발명의 실시 예들 중 적어도 하나에 의하면, 단일 시간 방향이 아닌 양방향 분석을 통하여 보다 정확한 의존 구문 분석을 제공해 줄 수 있다는 장점이 있다.
그뿐만 아니라, 본 발명의 실시 예들 중 적어도 하나에 의하면, 단어와 단어 사이에 거리가 멀더라도 정확도 높은 의존 구문 분석을 제공해 줄 수 있다는 장점이 있다.
본 발명의 적용 가능성의 추가적인 범위는 이하의 상세한 설명으로부터 명백해질 것이다. 그러나 본 발명의 사상 및 범위 내에서 다양한 변경 및 수정은 당업자에게 명확하게 이해될 수 있으므로, 상세한 설명 및 본 발명의 바람직한 실시 예와 같은 특정 실시 예는 단지 예시로 주어진 것으로 이해되어야 한다.
도 1은 RNN 시스템(120)의 개념을 설명하기 위한 도면이다.
도 2는 의존 구문 분석의 예시를 도시하는 도면이다.
도 3은 본 발명의 일실시예에 따른 구문 분석 장치(100)의 개념도를 도시하는 도면이다.
도 4는 본 발명의 일실시예에 따른 신경망 네트워크 분석 개념도를 도시하는 도면이다.
도 5는 본 발명의 일실시예에 따른 의존 구문 분석 방법의 순서도를 도시하는 도면이다.
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 또한, 본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시 예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
본 출원에서, "포함한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 발명에서는, 딥 러닝을 통하여 구문을 분석하는 장치에 관한 것이다. 일반적인 구문 분석에도 적용할 수 있지만, 의존 구문 분석(dependency parser)에 보다 적합한 장치 및 방법을 제공하고자 한다. 도 2는 의존 구문 분석의 예시를 도시하는 도면이다.
도시된 예시에서는, 'I prefer the morning flight through Denver'라는 문장에 대한 의존 구문 분석을 수행하고 있다. 의존 구문 분석 이론에서는 구문의 성분이나 성분을 연결하는 문법이 구문안에서 스스로 직접적인 역할을 한다기 보다는, 각 성분이 서로 의존관계를 이루어 하나의 구문을 이룬다고 보고 있으며, 이러한 관점으로 문장의 각 성분들에 대한 의존관계(relation)를 정의하는 방식으로 구문 분석을 수행한다.
의존 구문 분석에서는 루트(root)가 되는 단어를 먼저 설정해야 한다. 루트가 되는 단어란, 의존관계의 시작이 되는 단어를 의미하며, 일반적으로 동사(verb)가 루트 단어로 역할을 수행한다. 따라서, 본 예시에서는 'prefer'가 루트 단어이다. 의존 구문 분석은 이런 루트 단어에서부터 시작하여, 실에 구슬을 꿰듯이, 단어들을 연관의존관계에 따라 줄줄이 연결시키는 방식으로 구문 분석(parsing)한다.
이어서, 위 문장 중에서 'prefer'와 연관의존관계에 있는 단어를 찾아야 하는데, 'nsubj'라는 연관의존관계를 가진 단어로 'I'가 있으며, 'dobj'라는 연관 의존관계로는 'flight'가 존재한다. 연관의존관계는 아래 표 1과 같이 정의될 수 있다. 표 1은 모든 정의를 나타낸 것이 아니기 때문에, 표 1의 정의 외에 다른 의존관계에 대한 정의가 존재할 수 있음은 자명하다.
의존연관관계 라벨 연관의존관계 설명
nsubj 주어와 동사 간의 관계
dobj 동사와 목적어 간의 관계
det 명사와 관계대명서 간의 관계
nmod 명사와 수식어 간의 관계
즉, 전체 문장을 분석하기 위해서는, 위와 같이 단어와 단어간의 연관의존관계를 정의해야 하는데, 본 발명에서는 이러한 연관의존관계를 정의하기 위하여 신경망 네트워크를 통한 딥 러닝 방식을 이용하도록 제안하는 것이다.
위 문장을 분석하기 위해서 'I', 'prefer', 'the', 'morning' ... 단어를 순차적으로 신경망에 입력하는데, 본 발명의 일실시예에 따르면 'prefer'가 입력되었을 때 'prefer'와 연관의존관계에 있는 'I' 및/또는 'flight'를 출력할 수 있는 것이다. 단순히 연관의존관계에 있는 단어를 출력하여 줄 뿐만 아니라, 본 발명의 일실시예에서는 해당 단어와 어떠한 연관의존관계('nsubj', 'dobj' 등)에 있는 것인지를 출력해 줄 수도 있을 것이다.
마찬가지의 예시로, 'flight'라는 단어가 신경망 시스템에 입력되었을 때에 출력으로 'det' 의존관계에 있는 'the'가 출력되거나, 'nmod' 의존관계에 있는 'Denver'가 출력되거나 할 수 있을 것이다. 제어부(180)는, 이와 같은 신경망 시스템의 출력에 기초하여, 의존관계 단어와 의존관계 라벨을 지정할 수 있을 것이다.
딥 러닝을 통하여 이러한 의존관계를 분석할 경우, 반복적인 학습을 통하여 정확하게 의존관계에 있는 단어들을 확인할 수 있기 때문에, 이러한 의존관계 확인을 통하여 의존 구문 분석을 수행할 수 있을 것이다.
도 3은 본 발명의 일실시예에 따른 구문 분석 장치(100)의 개념도를 도시하는 도면이다.
도시된 도면에 따르면, 구문 분석 장치(100)는 적어도 하나의 신경망 네트워크(NN, neural network)를 포함하는 제어부(180)를 포함할 수 있다. 신경망 네트워크의 종류로는, CNN(Convolutional Neural Network), RNN(Recurrent Neural Network), LSTM(Long Short Term Memory) GRU(Gated recurrent unit) 중 적어도 하나를 포함할 수 있으며, 상기 신경망 네트워크 복수 개를 조합하여 사용할 수도 있을 것이다.
본 발명의 일실시예에 따른 제어부(180)는 위와 같은 신경망 네트워크를 통하여, 소정 단어가 입력되면, 상기 입력된 소정 단어와 의존관계에 있는 의존관계 단어를 출력 또는 지정해 줄 수 있다.
이하에서 보다 구체적으로 설명하겠지만, 본 발명에서는 LSTM과 GRU 중 적어도 하나를 활용하여 장기 의존성을 높일 수 있도록 제안한다.
더 나아가, 단일 시간 방향으로만 분석을 수행하는 기존의 신경망 네트워크에 한정되지 않고, 시간을 기준으로 양방향으로 분석을 수행할 수 있는 신경망 네트워크를 활용하도록 제안한다. 왜냐하면, 의존관계에 있는 단어들이 문장 내에서 순차적으로 배열되어 있지 않기 때문에, 어떠한 경우에는 정방향 분석이 적합하고, 다른 경우에는 역방향 분석이 적합할 수 있기 때문이다.
도 4는 본 발명의 일실시예에 따른 신경망 네트워크 분석 개념도를 도시하는 도면이다. 도 5는 본 발명의 일실시예에 따른 의존 구문 분석 방법의 순서도를 도시하는 도면이다. 이하, 도 4 및 도 5를 함께 참조하여 설명한다.
본 발명에서는, 신경망 네트워크에 들어가는 입력으로, 서로 다른 두 종류의 벡터를 조합하도록 제안한다. 도 4를 참조하면, 위 예시의 문장에 대한 의존 구문 분석을 수행하기 위하여, 'I', 'prefer', 'the', 'morning' 단어가 순차적으로 신경망 네트워크에 입력되고 있다.
본 발명에서는, 단순하게 단어의 사전적인 의미만을 이용하여 딥 러닝을 수행하는 것이 아니라, 단어를 이루고 있는 구성 성분들의 구조를 더 분석하고, 이를 통하여 딥 러닝 수행하도록 제안하는 것이다. 이를 위해서 본 발명에서는, 단어의 사전적인 의미에 대한 정보와 함께 단어를 구성하고 있는 구성 성분에 대한 정보(Subword information)에 대한 정보를 함께 신경망 네트워크의 입력으로 넣도록 제안한다.
단어(예를 들면 'I')가 입력(405-1, X1)되는 경우 제어부(180)는 해당 단어에 대한 제 1 벡터와 제 2 벡터를 산출(S501, S502 단계)한다.
상기 제 1 벡터(403-1)의 경우에는, 단어의 사전적 의미를 수치화시킨 벡터(403-1, W1)일 수 있다. 예를 들면, 'Word2Vec 모델' 또는 'Glove 모델'에 기초한 워드벡터일 수 있다. 이러한 모델들은, 단어 자체가 가지는 의미 자체를 다차원 공간에서 '벡터화' 하는 방식으로, 약 300차원의 벡터이다.
이러한 워드벡터들 간의 연산(더하고 빼기 등)을 통하여, 다른 벡터를 산출해 낼 수 있다는 것이 특징이다.
상기 제 2 벡터의 경우에는, 단어를 구성하는 구성 성분에 대한 정보(Subword information)를 수치화시킨 벡터(404-1, YC1)일 수 있다.
이때, 구성 성분에 대한 정보란, 어근 정보, 접사 정보 및 n-gram 정보 중 적어도 하나를 포함할 수 있다. 특히, 본 발명의 일실시예에서는, 단어를 자소 단위로 쪼갠 후, 쪼개어진 자소들을 CNN(convolutional neural network)에 넣어 벡터화 시키도록 제안한다. CNN을 통하여 단어를 벡터화시킬 경우, 단어 내부의 구조적 정보를 추출해내어 수치화시킬 수 있다는 장점이 존재한다.
이와 같이 산출해낸 제 1 및 제 2 벡터(403-1, 404-1)를 합(concatenate)하여 신경망 네트워크(402)에 입력한다. 여기서 합한다는 것은, 단순히 산술적인 합을 의미하는 것이 아니라, 두 벡터를 조합할 수 있는 다양한 방식을 포함할 수 있을 것이다.
특히, 본 발명의 일실시예에서는 장기 의존성을 갖도록 LSTM 또는 GRU를 이용하도록 제안한다. RNN 등의 일반적인 NN을 이용할 경우, 반복적인 웨이트 팩터(weight factor)의 적용으로 인하여 장기 의존성이 낮아질 수 밖에 없기 때문이다.
제 1 및 제 2 벡터(403-1, 404-1)를 신경망 네트워크의 입력으로 하였을 때 나오는 출력에 기초해서, 제어부(180)는 입력된 소정 단어에 대한 의존관계 단어를 설정할 수 있다. 즉, 위 'I'를 넣었을 때의 출력(Y1, 401-1)으로 'prefer'(X2)가 나올 경우, 제어부(180)는 'I'와 'prefer'를 의존관계에 있는 것으로 지정(설정)할 수 있다는 것이다.
즉, 이와 같이 딥 러닝 방식으로 학습을 하였을 때, 전체 문장 내부에 존재하는 각 단어들 간의 의존관계(relation)를 신경망 네트워크의 출력으로 확인할 수 있다는 것이다.
일반적으로 자연어 처리의 경우에는, 사람이 말을 하는 순서에 따라 입력이 순차적으로 들어오기 때문에, 시간 순으로 분석하는 것이 일반적이다. 하지만, 본 발명에서는 보다 정확도를 높이기 위해서, 순차적으로만 분석하는 것이 아니라 역순으로도 분석할 수 있도록 제안한다. 의존 구문 분석의 경우에는, 의존관계의 방향에 따라서 정방향 순서로 분석하였다가 역방향으로 전환되기도 하기 때문이다.
이를 위해서 본 발명의 일실시예에 따른 신경망 네트워크(402)는, 제 1 신경망 레이어(402-1) 및 제 2 신경망 레이어(402-2)로 구분하고, 제 1 신경망 레이어(402-1)는 역방향으로 분석을 수행하고, 제 2 신경망 레이어(402-2)는 정방향으로 분석을 수행하는 것이다.
이때 신경망 레이어가 정방향으로 분석을 수행한다는 것은, 현재의 신경망 분석에 과거의 분석 결과를 활용(410)한다는 것을 의미하며, 반대로 역방향 분석이라는 것은 현재의 신경망 분석에 미래의 분석 결과를 활용(411)한다는 것을 말한다.
따라서, 위와 같이 입력되는 제 1 및 제 2 벡터는 제 1 및 제 2 신경망 레이어(402-1, 402-2)를 순차적으로 통과하여 출력(401-1)을 낼 수 있을 것이다.
위 예시에서는, 입력으로 'I'가 들어간 경우를 예시로 설명하였으나, 문장 내에 있는 단어들에 대해서 위와 같은 과정이 반복적으로 수행되어 문장 전체에 대한 구문 분석이 이루어질 수 있음은 자명할 것이다.
이상으로 본 발명에 따른 의존 구문 분석 방법 및 장치의 실시예를 설시하였으나 이는 적어도 하나의 실시예로서 설명되는 것이며, 이에 의하여 본 발명의 기술적 사상과 그 구성 및 작용이 제한되지는 아니하는 것으로, 본 발명의 기술적 사상의 범위가 도면 또는 도면을 참조한 설명에 의해 한정/제한되지는 아니하는 것이다. 또한 본 발명에서 제시된 발명의 개념과 실시예가 본 발명의 동일 목적을 수행하기 위하여 다른 구조로 수정하거나 설계하기 위한 기초로써 본 발명이 속하는 기술분야의 통상의 지식을 가진 자에 의해 사용되어질 수 있을 것인데, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자에 의한 수정 또는 변경된 등가 구조는 청구범위에서 기술되는 본 발명의 기술적 범위에 구속되는 것으로서, 청구범위에서 기술한 발명의 사상이나 범위를 벗어나지 않는 한도 내에서 다양한 변화, 치환 및 변경이 가능한 것이다.

Claims (20)

  1. 신경망 네트워크(neural network)에 기반하여 의존 구문 분석(dependency parsing)하기 위한 제어 방법에 있어서,
    소정 단어의 사전적 의미를 수치화시킨 제 1 벡터를 산출하는 단계;
    상기 소정 단어에 포함된 적어도 하나의 구성 성분에 대한 정보(Subword information)를 수치화시킨 제 2 벡터를 산출하는 단계; 및
    상기 제 1 및 제 2 벡터에 기초(concatenate)하여 상기 소정 단어와 의존관계에 있는 의존관계 단어를 지정하는 단계를 포함하는,
    의존 구문 분석 제어 방법.
  2. 제 1 항에 있어서, 상기 지정하는 단계는,
    상기 제 1 및 제 2 벡터를 상기 신경망 네트워크의 입력으로 했을 때 나오는 출력에 기초하여 상기 의존관계 단어와 의존관계 라벨(label)을 지정하는 것을 특징으로 하는,
    의존 구문 분석 제어 방법.
  3. 제 2 항에 있어서, 상기 신경망 네트워크는,
    순환 신경망(Recurrent Neural Network, RNN)인 것을 특징으로 하는,
    의존 구문 분석 제어 방법.
  4. 제 3 항에 있어서, 상기 순환 신경망은,
    LSTM(long short term memory network), GRU RNN(Gated Recurrent Unit, recurrent neural network) 중 하나인 것을 특징으로 하는,
    의존 구문 분석 제어 방법.
  5. 제 4 항에 있어서, 상기 순환 신경망은,
    양방향(Bi-directional) 신경망인 것을 특징으로 하는,
    의존 구문 분석 제어 방법.
  6. 제 5 항에 있어서, 상기 양방향 신경망은,
    제 1 방향으로 진행되는 제 1 레이어와, 제 2 방향으로 진행되는 제 2 레이어를 포함하고,
    상기 입력된 제 1 및 제 2 벡터는 상기 제 1 및 제 2 레이어를 순차적으로 통과하는 것을 특징으로 하는,
    의존 구문 분석 제어 방법.
  7. 제 1 항에 있어서, 상기 제 1 벡터를 산출하는 단계는,
    Word2Vec 모델 또는 Glove 모델에 기초하여 수행되는 것을 특징으로 하는,
    의존 구문 분석 제어 방법.
  8. 제 1 항에 있어서, 상기 제 2 벡터를 산출하는 단계는,
    상기 소정 단어를 상기 신경망 네트워크의 입력으로 했을 때 나오는 출력에 기초하여 상기 제 2 벡터를 산출하는 것을 특징으로 하는,
    의존 구문 분석 제어 방법.
  9. 제 8 항에 있어서, 상기 신경망 네트워크는,
    CNN(convolutional neural network)인 것을 특징으로 하는,
    의존 구문 분석 제어 방법.
  10. 제 9 항에 있어서, 상기 적어도 하나의 구성 성분에 대한 정보는,
    어근 정보, 접사 정보 및 n-gram 정보 중 적어도 하나를 포함하는 것을 특징으로 하는,
    의존 구문 분석 제어 방법.
  11. 신경망 네트워크(neural network)에 기반하여 의존 구문 분석(dependency parsing)하기 위한 장치에 있어서,
    소정 단어가 입력되면, 상기 입력된 소정 단어와 의존관계에 있는 의존관계 단어를 지정하는 제어부를 포함하되,
    상기 제어부는,
    상기 입력된 소정 단어의 사전적 의미를 수치화시킨 제 1 벡터를 산출하고,
    상기 입력된 소정 단어에 포함된 적어도 하나의 구성 성분에 대한 정보(Subword information)를 수치화시킨 제 2 벡터를 산출하며,
    상기 제 1 및 제 2 벡터에 기초(concatenate)하여 상기 의존관계 단어를 지정하는 것을 특징으로 하는,
    의존 구문 분석 장치.
  12. 제 11 항에 있어서, 상기 제어부가 상기 지정하는 동작을 수행하는데 있어서,
    상기 제 1 및 제 2 벡터를 상기 신경망 네트워크의 입력으로 했을 때 나오는 출력에 기초하여 상기 의존관계 단어와 의존관계 라벨(label)을 지정하는 것을 특징으로 하는,
    의존 구문 분석 장치.
  13. 제 12 항에 있어서, 상기 신경망 네트워크는,
    순환 신경망(Recurrent Neural Network, RNN)인 것을 특징으로 하는,
    의존 구문 분석 장치.
  14. 제 13 항에 있어서, 상기 순환 신경망은,
    LSTM(long short term memory network), GRU RNN(Gated Recurrent Unit, recurrent neural network) 중 하나인 것을 특징으로 하는,
    의존 구문 분석 장치.
  15. 제 14 항에 있어서, 상기 순환 신경망은,
    양방향(Bi-directional) 신경망인 것을 특징으로 하는,
    의존 구문 분석 장치.
  16. 제 15 항에 있어서, 상기 양방향 신경망은,
    제 1 방향으로 진행되는 제 1 레이어와, 제 2 방향으로 진행되는 제 2 레이어를 포함하고,
    상기 제어부는,
    상기 입력된 제 1 및 제 2 벡터는 상기 제 1 및 제 2 레이어를 순차적으로 통과시켜 상기 의존관계 단어를 지정하는 것을 특징으로 하는,
    의존 구문 분석 장치.
  17. 제 11 항에 있어서, 상기 제어부는 상기 제 1 벡터를 산출하는 동작에 있어서,
    Word2Vec 모델 또는 Glove 모델에 기초하여 수행하는 것을 특징으로 하는,
    의존 구문 분석 장치.
  18. 제 11 항에 있어서, 상기 제어부는 상기 제 2 벡터를 산출하는 동작에 있어서,
    상기 소정 단어를 상기 신경망 네트워크의 입력으로 했을 때 나오는 출력에 기초하여 상기 제 2 벡터를 산출하는 것을 특징으로 하는,
    의존 구문 분석 장치.
  19. 제 18 항에 있어서, 상기 신경망 네트워크는,
    CNN(convolutional neural network)인 것을 특징으로 하는,
    의존 구문 분석 장치.
  20. 제 19 항에 있어서, 상기 적어도 하나의 구성 성분에 대한 정보는,
    어근 정보, 접사 정보 및 n-gram 정보 중 적어도 하나를 포함하는 것을 특징으로 하는,
    의존 구문 분석 장치.
KR1020180154384A 2018-12-04 2018-12-04 신경망 네트워크에 기반한 의존 구문 분석 제어 방법 및 그것을 이용하는 의존 구문 분석 장치 KR20200072593A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180154384A KR20200072593A (ko) 2018-12-04 2018-12-04 신경망 네트워크에 기반한 의존 구문 분석 제어 방법 및 그것을 이용하는 의존 구문 분석 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180154384A KR20200072593A (ko) 2018-12-04 2018-12-04 신경망 네트워크에 기반한 의존 구문 분석 제어 방법 및 그것을 이용하는 의존 구문 분석 장치

Publications (1)

Publication Number Publication Date
KR20200072593A true KR20200072593A (ko) 2020-06-23

Family

ID=71137759

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180154384A KR20200072593A (ko) 2018-12-04 2018-12-04 신경망 네트워크에 기반한 의존 구문 분석 제어 방법 및 그것을 이용하는 의존 구문 분석 장치

Country Status (1)

Country Link
KR (1) KR20200072593A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112016299A (zh) * 2020-08-31 2020-12-01 支付宝(杭州)信息技术有限公司 计算机执行、利用神经网络生成依存句法树的方法及装置
KR20220134218A (ko) 2021-03-26 2022-10-05 한국전자통신연구원 딥러닝 기반 spo 튜플 관계 인지 방법 및 장치

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112016299A (zh) * 2020-08-31 2020-12-01 支付宝(杭州)信息技术有限公司 计算机执行、利用神经网络生成依存句法树的方法及装置
CN112016299B (zh) * 2020-08-31 2023-11-14 支付宝(杭州)信息技术有限公司 计算机执行、利用神经网络生成依存句法树的方法及装置
KR20220134218A (ko) 2021-03-26 2022-10-05 한국전자통신연구원 딥러닝 기반 spo 튜플 관계 인지 방법 및 장치

Similar Documents

Publication Publication Date Title
US20160259851A1 (en) System and methods for generating treebanks for natural language processing by modifying parser operation through introduction of constraints on parse tree structure
US10902846B2 (en) Spoken language understanding apparatus and spoken language understanding method using the same
JP2005084681A (ja) 意味的言語モデル化および信頼性測定のための方法およびシステム
KR100853173B1 (ko) 통계적 자동 번역 방식에 기반한 음성 자동 통역 시스템 및그에 적용되는 번역 처리 방법 및 그 훈련방법
KR20140021838A (ko) 문법 오류 검출 방법 및 이를 위한 오류검출장치
KR20090066067A (ko) 한영 자동번역 방법 및 장치
US20180165279A1 (en) Machine translation system and method
KR101627428B1 (ko) 딥 러닝을 이용하는 구문 분석 모델 구축 방법 및 이를 수행하는 장치
JP6778654B2 (ja) 単語分割推定モデル学習装置、単語分割装置、方法、及びプログラム
JP6946842B2 (ja) モデル学習装置、変換装置、方法、及びプログラム
US20210350073A1 (en) Method and system for processing user inputs using natural language processing
KR20200072593A (ko) 신경망 네트워크에 기반한 의존 구문 분석 제어 방법 및 그것을 이용하는 의존 구문 분석 장치
CN113761883A (zh) 一种文本信息识别方法、装置、电子设备及存储介质
Das et al. A rule based question generation framework to deal with simple and complex sentences
Hans et al. Improving the performance of neural machine translation involving morphologically rich languages
KR20150042533A (ko) 복합 문장 분석 장치, 이를 위한 기록매체
KR102204395B1 (ko) 개체명 인식을 이용한 음성인식 띄어쓰기 보정 방법 및 시스템
Arwidarasti et al. Converting an Indonesian constituency treebank to the Penn treebank format
KR101626386B1 (ko) 요소화 언어모델을 이용한 번역 오류 후처리 보정 방법 및 장치
Agrawal et al. Role of Expectation and Working Memory Constraints in Hindi Comprehension: An Eye-tracking Corpus Analysis
KR100202292B1 (ko) 한문어 문서 음성 변환 시스템을 위한 문서 분석기
Hachey Recognising clauses using symbolic and machine learning approaches
Kirchhoff et al. Morphological modeling for machine translation of english-iraqi arabic spoken dialogs
Kübler et al. Adding context information to part of speech tagging for dialogues
Li et al. Research on Chinese parsing based on the improved compositional vector grammar

Legal Events

Date Code Title Description
E90F Notification of reason for final refusal
E601 Decision to refuse application