KR20180119406A - 멀티 태스크 학습 기반 포인터 네트워크를 이용한 한국어 의존 구문 분석 시스템 및 방법 - Google Patents
멀티 태스크 학습 기반 포인터 네트워크를 이용한 한국어 의존 구문 분석 시스템 및 방법 Download PDFInfo
- Publication number
- KR20180119406A KR20180119406A KR1020170053147A KR20170053147A KR20180119406A KR 20180119406 A KR20180119406 A KR 20180119406A KR 1020170053147 A KR1020170053147 A KR 1020170053147A KR 20170053147 A KR20170053147 A KR 20170053147A KR 20180119406 A KR20180119406 A KR 20180119406A
- Authority
- KR
- South Korea
- Prior art keywords
- input
- encoding
- korean
- word
- decoder
- Prior art date
Links
Images
Classifications
-
- G06F17/2217—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/126—Character encoding
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)
- Machine Translation (AREA)
Abstract
본 발명의 멀티 태스크 학습 기반 포인터 네트워크를 이용한 한국어 의존 구문 분석 시스템에서, 한국어를 포함하는 단어로 구성된 입력 열을 입력받아 인코딩을 생성하기 위한 인코더 및 상기 인코딩을 이용하여 결과 열을 생성하되, 상기 인코딩에 대하여 입력 열의 위치 별 확률인 어텐션 가중치(attention weight)를 출력으로 하고, 상기 어텐션 가중치를 이용하여 생성한 문맥 벡터(context vector)를 기반으로 의존 레이블(label)을 판별하여 출력하는 디코더를 포함한다.
본 발명에 의하면, 딥 러닝의 비선형 변환(non-linear activation) 조합을 통해 시간을 단축시킬 수 있는 효과가 있다.
본 발명에 의하면, 딥 러닝의 비선형 변환(non-linear activation) 조합을 통해 시간을 단축시킬 수 있는 효과가 있다.
Description
본 발명은 한국어 의존 구문 분석에 관한 것으로서, 더욱 상세하게는 멀티 태스크 학습 기반 포인터 네트워크를 이용한 한국어 의존 구문 분석 방법에 관한 것이다.
구문 분석은 문장성분 사이의 관계를 분석하고 구조화하여 문장의 구조적, 의미적 중의성을 해결하는 자연어처리 문제이며, 구조 구문 분석(Phrase structure parsing)과 의존 구문 분석(Dependency parsing) 등이 있다.
의존 구문 분석은 문장구조를 중심어(head)와 수식어(modifier)로 이루어진 의존 관계로 표현하는 방법으로, 한국어와 같이 어순이 자유롭고 문장성분의 생략이 빈번한 언어에서 주로 연구되었다. 의존 구문 분석은 의미 분석(상호참조해결, 의미역 결정, 개체명 인식 등)과 정보 추출, 온톨로지 확장, 질의응답, 문서요약 등에 응용될 수 있다.
포인터 네트워크(Pointer Networks) 어텐션 메커니즘(Attention mechanism)[3]을 이용하여 입력열에 대응되는 위치를 출력하는 RNN(Recurrent Neural Network)의 확장된 모델이다.
최근 딥 러닝을 이용한 전이 기반 의존 구문 분석이 활발히 연구되고 있다. 예를 들어, FFNN(Feed-forward Neural Network)와 다양한 자질 조합을 이용하는 방식과, RNN을 이용하여 전이 기반 의존 구문 분석을 수행하는 것과, 스택(Stack) LSTM 모델과 음절, 형태소 정보를 이용한 전이 기반 의존구문 분석을 수행한 것 등이 있다.
종래 SVM, 인공신경망 등의 기계학습을 이용하여 전이기반(transition-based)의 의존 구문분석을 진행할 경우, 사람이 직접 자질을 추출하거나 최고의 성능을 내는 조합을 찾아야 한다. 이러한 자질 추출 및 조합은 비용이 많이 들고, 시간이 오래 걸리다는 문제점이 있다.
또한, 종래 딥 러닝은 Feed-forward Neural Network이며, 이 모델은 입력과 출력이 1:1 맵핑(mapping)되는 모델이기 때문에 문맥정보를 확인하여 학습을 수행할 수 없다는 단점이 있다.
본 발명은 상기와 같은 문제점을 해결하기 위하여 안출된 것으로서, 본 발명에서는 포인터 네트워크를 이용하여 입력문장에서 각 어절의 중심어를 찾고, 동시에 의존 구문 분석의 레이블(label) 정보를 출력하는 멀티 태스크 학습(Multi-task learning) 기반 포인터 네트워크를 이용한 한국어 의존 구문 분석을 제공하는데 그 목적이 있다.
본 발명의 목적은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
이와 같은 목적을 달성하기 위한 본 발명의 멀티 태스크 학습 기반 포인터 네트워크를 이용한 한국어 의존 구문 분석 시스템에서, 한국어를 포함하는 단어로 구성된 입력 열을 입력받아 인코딩을 생성하기 위한 인코더 및 상기 인코딩을 이용하여 결과 열을 생성하되, 상기 인코딩에 대하여 입력 열의 위치 별 확률인 어텐션 가중치(attention weight)를 출력으로 하고, 상기 어텐션 가중치를 이용하여 생성한 문맥 벡터(context vector)를 기반으로 의존 레이블(label)을 판별하여 출력하는 디코더를 포함한다.
상기 인코더는, 상기 입력 열의 각 단어를 입력받기 위한 인풋 레이어, 사전학습된 모델을 이용하여 상기 인풋 레이어를 통해 입력된 각 단어에 대한 차원축소를 수행하기 위한 프로젝션 레이어 및 차원축소된 입력 열에 대하여 입력 순서 정보와 역순 정보를 포함하는 인코딩을 생성하기 위한 히든 레이어를 포함하여 이루어질 수 있다.
상기 히든 레이어는 bi-GRU(bidirectional Gated Recurrent Unit)를 이용하여 인코딩을 생성할 수 있다.
상기 디코더는 상기 히든 레이어에서 생성한 인코딩과, 이전 히든 스테이트(hidden state)를 입력으로 받고, 어텐션 스코어를 계산할 수 있다.
상기 히든 스테이트는 GRU(Gated Recurrent Unit)일 수 있다.
가장 큰 어텐션 스코어 값을 갖는 히든 스테이트의 위치가 상기 디코더의 입력과 의존 관계에 있는 중심어의 위치이고, 상기 디코더는 가장 큰 어텐션 스코어 값을 갖는 히든 스테이트와 상기 인코딩을 이용하여 문맥 벡터를 생성하고, 이를 이용하여 의존 레이블을 판별할 수 있다.
본 발명의 멀티 태스크 학습 기반 포인터 네트워크를 이용한 한국어 의존 구문 분석 시스템에서의 한국어 의존 구문 분석 방법에서, 한국어를 포함하는 단어로 구성된 입력 문서에서 입력 열 형태의 입력 데이터를 추출하는 단계, 상기 입력 열을 입력받아 인코딩을 생성하는 단계 및 상기 인코딩을 이용하여 결과 열을 생성하되, 상기 인코딩에 대하여 입력 열의 위치 별 확률인 어텐션 가중치(attention weight)를 출력으로 하고, 상기 어텐션 가중치를 이용하여 생성한 문맥 벡터(context vector)를 기반으로 의존 레이블(label)을 판별하여 출력하는 디코딩 수행 단계를 포함한다.
상기 인코딩을 생성하는 단계는, 상기 입력 열의 각 단어를 입력받고, 사전학습된 모델을 이용하여 상기 인풋 레이어를 통해 입력된 각 단어에 대한 차원축소를 수행하고, 차원축소된 입력 열에 대하여 입력 순서 정보와 역순 정보를 포함하는 인코딩을 생성할 수 있다.
상기 인코딩을 생성하는 단계에서 bi-GRU(bidirectional Gated Recurrent Unit)를 이용하여 인코딩을 생성할 수 있다.
상기 디코딩 수행 단계에서, 상기 인코딩과, 이전 히든 스테이트(hidden state)를 입력으로 받고, 어텐션 스코어를 계산할 수 있다.
상기 히든 스테이트는 GRU(Gated Recurrent Unit)일 수 있다.
본 발명에 의하면, 어텐션 매커니즘(attention mechanism) 기반 RNN 인코더-디코더(encoder-decoder) 기술과, 포인터 네트워크를 이용한 한국어 의존구문분석 방법을 제안함으로써, 종래 사람이 직접 자질 조합을 디자인함으로써 많은 시간이 걸렸던 문제를, 딥 러닝의 비선형 변환(non-linear activation) 조합을 통해 시간을 단축시킬 수 있는 효과가 있다.
또한, 본 발명에 의하면, 엔드 투 엔드(end-to-end) 방식으로 의존구문분석을 수행한다는 효과가 있다.
또한, 본 발명에 의하면 주어진 입력열을 인코딩하고, 이전 문맥 정보를 이용하여 출력 결과를 예측함으로써, 성능을 향상시킬 수 있는 효과가 있다.
또한, 본 발명에 의하면, 사전훈련 및 드랍 아웃(Drop-out), Relu 등과 같은 딥러닝의 기술들을 이용하여 많은 파라미터를 조절하고, 과적의 문제를 해결하여 성능을 향상시키는 효과가 있다.
도 1은 본 발명의 일 실시예에 따른 멀티 태스크 학습 기반 포인터 네트워크를 이용한 한국어 의존구문분석 시스템을 도시한 도면이다.
도 2는 본 발명의 일 실시예에 따른 멀티 태스크 기반 학습 기반 포인터 네트워크를 이용한 한국어 의존구문분석 방법을 보여주는 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 멀티 태스크 학습 기반 포인터 네트워크의 모델 구조도이다.
도 4는 본 발명의 일 실시예에 따른 입력 데이터의 구조를 예시한 도표이다.
도 2는 본 발명의 일 실시예에 따른 멀티 태스크 기반 학습 기반 포인터 네트워크를 이용한 한국어 의존구문분석 방법을 보여주는 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 멀티 태스크 학습 기반 포인터 네트워크의 모델 구조도이다.
도 4는 본 발명의 일 실시예에 따른 입력 데이터의 구조를 예시한 도표이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 갖고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 갖는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조 부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
본 발명은 멀티 태스크 학습 기반 포인터 네트워크를 이용한 한국어 의존 구문 분석 시스템 및 방법에 대한 것이다.
본 발명에서 포인터 네트워크는 입력 열 x 중 각 입력에 대응되는 출력 열 y를 학습하고 예측하는 RNN(Recurrent Neural Network) 인코더-디코더(encoder-decoder) 모델이며, 가변길이 출력 클래스에 대하여 학습이 가능하다.
그리고, 멀티 태스크 학습은 두 태스크를 하나의 학습모델로 한 번에 학습하는 것을 말한다. 본 발명에서는 포인터 네트워크를 이용하여 입력문장에서 각 어절의 중심어를 찾고, 동시에 의존 구문분석의 레이블 정보를 출력하는 멀티 태스크 학습 기반 포인터 네트워크를 이용하여 의존 구문 분석을 수행한다. 본 발명에서 사용되는 딥 러닝(Deep learning) 모델은 입력열을 인코딩하는 인코더와, 인코딩과 히든 스테이트(hidden state)를 이용하여 출력열을 생성하는 디코더로 구성된다.
포인터 네트워크는 출력 클래스의 개수가 입력 열 길이에 따라 변하는 문제를 처리할 수 있는 모델(즉, 출력이 입력열의 위치인 모델)이며, RNN 인코더-디코더(encoder-decoder) 기반으로 어텐션 메커니즘(attention mechanism)을 이용한다.
RNN 인코더 디코더 모델은 주어진 입력 열을 인코딩(encoding)하는 인코더(encoder)와, 인코딩을 이용하여 결과 열을 생성하는 디코더(decoder)로 구성된다.
어텐션 메커니즘은 인코더의 히든 스테이트(hidden state)와 현재까지 생성한 디코더의 히든 스테이트를 이용하여 입력에 대한 어텐션 가중치(attention weight)를 학습하고, 입력열 중 정답에 큰 영향을 주는 위치가 어디인지 결정한다. 본 발명에서는 어텐션 메커니즘을 이용하여 주어진 단어와 중심어 의존 관계가 있는 단어의 위치를 결정한다.
본 발명의 멀티 태스크 학습 기반 포인터 네트워크는 어텐션 메커니즘을 기반으로 한다. 어텐션 메커니즘은 RNN 인코더-디코더 모델에서 인코더의 히든 스테이트를 이용하여 생성된 인코딩과 현재까지 생성한 디코더의 히든 스테이트를 입력으로 하여, 입력 중 어느 위치를 주의해서 봐야할지를 결정한다. 본 발명에서는 어텐션 매커니즘을 이용하여 주어진 단어와 중심어 의존 관계가 있는 단어의 위치를 결정한다.
도 1은 본 발명의 일 실시예에 따른 멀티 태스크 학습 기반 포인터 네트워크를 이용한 한국어 의존구문분석 시스템을 도시한 도면이고, 도 3은 본 발명의 일 실시예에 따른 멀티 태스크 학습 기반 포인터 네트워크의 모델 구조도이다.
도 1 및 도 3을 참조하면, 본 발명에서 멀티 태스크 학습 기반 포인터 네트워크는 어텐션 가중치(attention weight, 입력열의 위치 별 확률)를 디코더(130)의 출력(Youtput)으로 사용하고, 어텐션 가중치를 이용하여 생성한 문맥 벡터(context vector)를 기반으로 의존 레이블이 무엇인지 판별하여 출력(Zoutput)한다.
본 발명에서 인코더(120)는 인풋 레이어(Input layer)로 입력열의 각 단어를 입력받고, 프로젝션 레이어(Projection layer)에서 사전학습된 모델을 이용하여 각 입력에 대한 차원축소를 수행한다. 다음, 히든 레이어(Hidden layer)에서 bi-GRU(bidirectional Gated Recurrent Unit)를 이용하여 입력열에 대하여 입력 순서 정보와 역순 정보를 포함하는 인코딩을 생성한다.
디코더(130)는 이전에 생성한 인코딩과 이전 시간의 히든 스테이트(hidden state)를 입력으로 받고, 어텐션 스코어를 구하는데, 이때 히든 스테이트는 GRU(Gated Recurrent Unit)가 된다. 다음, 디코더(130)의 입력과 의존 관계에 있는 중심어의 위치는 어텐션 스코어에서 가장 큰 값을 갖는 히든 스테이트의 위치이며, 이 히든 스테이트와 인코딩을 이용하여 문맥 벡터를 만들고, 이를 이용하여 아웃풋 레이어(Output layer)에서 의존 레이블을 판별한다. 여기서, 포인터 네트워크의 타겟 클래스는 길이가 가변적으로 변하는 입력열이 되고, 의존 레이블을 판별하는 출력열의 타겟 클라스는 고정된 길이를 갖는 의존 관계 레이블 사전이 된다.
멀티 태스크 학습 기반 포인터 네트워크는 학습을 수행할 때, 입력 단어와 중심어 의존 관계가 있는 단어의 위치를 결정하는 포인팅 함수에 대한 negative log-likelihood와 의존 관계 레이블을 결정하는 함수에 대한 negative log-likelihood를 함께 계산한다.
본 논문에서는 bi-GRU(bidirectional Gated Recurrent Unit)을 기반으로 인코더를 구성하며, 다음과 같이 정의한다.
여기서, 는 입력 열에 대한 포워드 네트워크(Forward Network)이고, 는 입력 열에 대한 백워드 네트워크(Backward Network)이며, E(xs)는 단어표현(word embedding)을 적용하는 함수이고, 는 입력 순서 정보와 역순의 정보를 모두 보기 위하여, 와 를 연결(concatenate)한 것이다.
디코더(130)에서는 이력열의 특정 위치(Yinput 또는 yit)를 입력 받아 그에 따른 출력 결과(중심어 위치와 의존 레이블)의 조건부 확률을 학습하며, 이는 다음과 같이 정의된다.
수학식 2에서 디코더(130)의 히든 스테이트(hidden state) ht는 인코더(120)의 히든 스테이트와 디코더(130)의 이전 시간 히든 스테이트를 입력으로 받는다. At는 scorea 함수의 결과 벡터를 정규화한 값(즉, attention weight)이며, 입력 열의 위치를 가리킨다.
scorea 함수는 얼라인먼트 스코어(alignment score)를 계산하며, concat, concat2, concat3로 나뉜다. 먼저 concat은 ht와 를 합(concatenate)하여 점수(score)를 계산하며, concat2는 ht, 와 를 합하여 점수를 계산한다. 마지막으로 concat3는 ht, ct- 1와 를 합하여 점수를 계산한다. 여기서 ct는 문맥 벡터이며, at에서 가장 높은 얼라인먼트 스코어를 가진 yt를 이용하여 구한다.
수학식 2에서 zt는 의존 관계 레이블로 ct를 이용한 scorez 함수로 구한다. scorez는 concatz과 concat2z로 나뉜다. concatz은 scorea의 concat을 기반으로 하며, ct, ht를 합(concatenate)하여 점수를 계산한다. concat2z는 scorea에서 concat2 또는 concat3를 기반으로 하며, ct, ht, 를 합하여 점수를 계산한다.
포인터 네트워크를 이용한 의존 구문 분석은 주어진 임의의 어절(즉, 디코더의 입력)에 대하여 중심어 의존 관계를 갖는 중심어의 위치를 결과로 출력하여 분석을 수행한다. 멀티 태스크 학습은 두 개 이상의 문제를 하나의 모델로 학습 및 예측을 수행하는 것으로, 본 발명에서는 멀티 태스크 학습 기반 포인터 네트워크를 이용하여 두 어절 간의 의존 관계와 의존 레이블 정보를 분석한다. 이에 따른 포인터 네트워크 모델의 구조는 도 3에 도시되어 있다.
도 3을 참조하면, 인코더(120)의 입력은 A, B, C, D로 입력 문장의 각 형태소이고, </s>는 문장의 끝을 알리는 종료 기호이다. 디코더(130)에는 각 시간에 따른 입력이 하나의 열 Yinput={0(A), 1(B), 2(C), 3(D)}로 주어지고, 그에 대응되는 출력열들인 위치를 출력하는 Youtput={1(B), 2(C), 3(D), 4(</s>), 의존 레이블 정보를 출력하는 Zoutput={a,b,c,d}을 생성한다.
인코더(120)의 입력은 입력 문장의 어절들을 형태소 단위로 바꾼 것을 사용하며, 어절 정보를 표현하기 위하여 어절 사이에 띄어 쓰기 심볼(<sp>)을 추가한다.
디코더(130)의 입력은 각 어절의 위치 정보이며, 출력 Y는 각 어절의 중심어 위치이고, 출력 Z는 두 어절 간의 의존 관계 레이블 정보이다. 이때 입력 단위는 형태소이기 때문에 입력기준을 정의하여 학습 데이터를 구축한다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 한국어 의존 구문 분석 시스템은 인코더(120) 및 디코더(130)를 포함한다.
입력 데이터 추출기(110)는 한국어를 포함하는 입력 문서에서 입력 열 형태로 입력 데이터를 추출하는 역할을 한다.
인코더(120)는 입력 데이터 추출기(110)에서 추출된 입력 열을 입력받아 인코딩을 생성하는 역할을 한다.
디코더(130)는 인코딩을 이용하여 결과 열을 생성하되, 인코딩에 대하여 입력 열의 위치 별 확률인 어텐션 가중치(attention weight)를 출력으로 하고, 어텐션 가중치를 이용하여 생성한 문맥 벡터(context vector)를 기반으로 의존 레이블(label)을 판별하여 출력한다.
인코더(120)는 입력 열의 각 단어를 입력받기 위한 인풋 레이어, 사전학습된 모델을 이용하여 상기 인풋 레이어를 통해 입력된 각 단어에 대한 차원축소를 수행하기 위한 프로젝션 레이어 및 차원축소된 입력 열에 대하여 입력 순서 정보와 역순 정보를 포함하는 인코딩을 생성하기 위한 히든 레이어를 포함하여 이루어진다.
본 발명의 일 실시예에서 히든 레이어는 bi-GRU(bidirectional Gated Recurrent Unit)를 이용하여 인코딩을 생성할 수 있다.
그리고, 디코더(130)는 히든 레이어에서 생성한 인코딩과, 이전 히든 스테이트(hidden state)를 입력으로 받고, 어텐션 스코어를 계산할 수 있다. 여기서, 히든 스테이트는 GRU(Gated Recurrent Unit)일 수 있다.
본 발명에서 가장 큰 어텐션 스코어 값을 갖는 히든 스테이트의 위치가 상기 디코더의 입력과 의존 관계에 있는 중심어의 위치이다. 그리고, 디코더(130)는 가장 큰 어텐션 스코어 값을 갖는 히든 스테이트와 인코딩을 이용하여 문맥 벡터를 생성하고, 이를 이용하여 의존 레이블을 판별할 수 있다.
도 2는 본 발명의 일 실시예에 따른 멀티 태스크 기반 학습 기반 포인터 네트워크를 이용한 한국어 의존구문분석 방법을 보여주는 흐름도이다.
도 2를 참조하면, 먼저 한국어를 포함하는 단어로 구성된 입력 문서에서 입력 열 형태의 입력 데이터를 추출한다(S110).
그리고, 입력 열을 입력받아 인코딩을 생성한다(S120).
그리고, 인코딩을 이용하여 결과 열을 생성하되, 인코딩에 대하여 입력 열의 위치 별 확률인 어텐션 가중치(attention weight)를 출력으로 하고, 어텐션 가중치를 이용하여 생성한 문맥 벡터(context vector)를 기반으로 의존 레이블(label)을 판별하여 출력하는 방식으로 의존 구문 분석 결과를 출력한다(S130).
본 발명의 일 실시예에서 S120 단계에서, 입력 열의 각 단어를 입력받고, 사전학습된 모델을 이용하여 인풋 레이어를 통해 입력된 각 단어에 대한 차원축소를 수행하고, 차원축소된 입력 열에 대하여 입력 순서 정보와 역순 정보를 포함하는 인코딩을 생성할 수 있다. 그리고, S120 단계에서 bi-GRU(bidirectional Gated Recurrent Unit)를 이용하여 인코딩을 생성할 수 있다.
S130 단계에서, 인코딩과, 이전 히든 스테이트(hidden state)를 입력으로 받고, 어텐션 스코어를 계산할 수 있다. 이때, 히든 스테이트는 GRU(Gated Recurrent Unit)일 수 있다.
도 4는 본 발명의 일 실시예에 따른 입력 데이터의 구조를 예시한 도표이다.
도 4는 어절의 대표 형태소 위치를 입력기준으로 정의하여 학습데이터를 구축한 예이다.
도 4에서 입력 문장인“나 당신의 그림자를 밟으며 갑니다.”에 대한 예를 나타내고 있으며, 입력 문장에 대한 형태소 정보는 “형태소/품사태그:단어사전id[인덱스]”와 같이 표현하며, 입력 기준에 대한 정보는 Yinput, Youtput, Zoutput에 대하여 “형태소/품사태그[인덱스]”와 같이 표현한다.
본 발명의 멀티 태스크 학습 기반 포인터 네트워크를 이용한 한국어 의존 구문 분석에 대한 실헐을 통해 성능을 평가한 결과는 다음과 같다.
본 발명에서는 의존 구문 분석의 학습을 위하여 의존 구조로 변환된 세종 데이터셋을 사용하였으며, 데이터셋은 총 59,659 문장으로, 90%인 53,842 문장을 학습에 사용하고, 10%인 5,817 문장을 평가에 사용하였다. 평가 척도는 UAS(Unlabeled Attachment Score)와 LAS(Labeled Attachment Score)를 사용하였다. 모든 실험은 Intel i7-4790 CPU (3.60GHz), 32GB RAM, Ubuntu 14.04 OS, GeForce GTX 1070에서 수행되었다.
단어표현(word embedding)은 10만 단어에 대해 2년치 뉴스 기사를 NNLM(Neural Network Language Model)으로 학습한 것을 사용하였다. 인코더와 디코더, 어텐션 레이어의 활성함수는 tanh를 사용하였고, Zoutput의 히든 레이어에 적용한 활성함수는 relu를 사용하였다. 학습율(learning rate)은 Dp0은 0.01로 설정하고, Dp1은 0.05를 시작으로 성능 개선이 없으면 5 에포크(epoch)마다 50%씩 감소시켰다.
실험 결과, 본 발명에서 제안한 방법이, 일반 포인터 네트워크에서 수행하지 못하던, 의존 관계 레이블 분류에 대하여 의존 관계 위치를 찾는 문제와 함께 수행이 가능했으며, 입력기준 Dp1에서 concat2의 얼라인먼트 스코어 방법과 히든 유닛 [800, 400], 드랍아웃 [0.2, 0.2]일 때 UAS 91.65%, LAS 89.34%의 성능을 보였다.
본 발명에서 제안하는 멀티 태스크 학습 기반 포인터 네트워크는 어텐션 메커니즘을 이용하여 입력 문장에서 각 어절의 중심어 위치를 출력하고, 동시에 의존 레이블 정보를 출력한다. 따라서, 본 발명에서는 기존 의존 구문 분석 모델들인 전이기반 및 그래프기반 의존 구문 분석을 적용하지 않아도, 네트워크 출력 결과 만으로 의존 관계를 파악할 수 있다. 또한, 멀티 태스크 학습 기반 포인터 네트워크는 중심어의 위치와 의존 레이블(label) 정보를 동시에 학습할 수 있다.
자연어 처리는 형태소 분석, 구문 분석, 의미 분석, 화용 분석과 같은 순서로 처리되며, 자연어 이해, 자연어 생성 등에 응용된다. 여기서 본 발명은 구문분석 단계에 해당되며, 의미 분석 또는 화용 분석과 같은 상위 분석 방법과, 자연어 이해, 정보 추출 및 검색 등에 적용될 수 있다. 자연어 처리에서는 각 분석 단계들이 파이프라인(pipeline) 형식으로 구성되기 때문에 본 발명을 통하여 한국어 의존 구문 분석 성능을 향상시키면, 의미 분석, 화용 분석 단계에서의 성능도 향상된다.
또한, 본 발명의 한국어 의존 구문 분석은 자연어 처리 시스템의 완성도에 주요한 기여를 할 것으로 예상되며, 질의 응답 시스템, 정보 검색 및 추출 시스템, 텍스트 요약 시스템, 의미 분석 모듈 등으로 활용될 것으로 예상된다.
이상 본 발명을 몇 가지 바람직한 실시예를 사용하여 설명하였으나, 이들 실시예는 예시적인 것이며 한정적인 것이 아니다. 본 발명이 속하는 기술분야에서 통상의 지식을 지닌 자라면 본 발명의 사상과 첨부된 특허청구범위에 제시된 권리범위에서 벗어나지 않으면서 다양한 변화와 수정을 가할 수 있음을 이해할 것이다.
110 입력 데이터 추출기
120 인코더
130 디코더
120 인코더
130 디코더
Claims (11)
- 멀티 태스크 학습 기반 포인터 네트워크를 이용한 한국어 의존 구문 분석 시스템에서,
한국어를 포함하는 단어로 구성된 입력 열을 입력받아 인코딩을 생성하기 위한 인코더; 및
상기 인코딩을 이용하여 결과 열을 생성하되, 상기 인코딩에 대하여 입력 열의 위치 별 확률인 어텐션 가중치(attention weight)를 출력으로 하고, 상기 어텐션 가중치를 이용하여 생성한 문맥 벡터(context vector)를 기반으로 의존 레이블(label)을 판별하여 출력하는 디코더를 포함하는 한국어 의존 구문 분석 시스템.
- 청구항 1에 있어서,
상기 인코더는,
상기 입력 열의 각 단어를 입력받기 위한 인풋 레이어;
사전학습된 모델을 이용하여 상기 인풋 레이어를 통해 입력된 각 단어에 대한 차원축소를 수행하기 위한 프로젝션 레이어; 및
차원축소된 입력 열에 대하여 입력 순서 정보와 역순 정보를 포함하는 인코딩을 생성하기 위한 히든 레이어를 포함하여 이루어지는 것을 특징으로 하는 한국어 의존 구문 분석 시스템.
- 청구항 2에 있어서,
상기 히든 레이어는 bi-GRU(bidirectional Gated Recurrent Unit)를 이용하여 인코딩을 생성하는 것을 특징으로 하는 한국어 의존 구문 분석 시스템.
- 청구항 3에 있어서,
상기 디코더는 상기 히든 레이어에서 생성한 인코딩과, 이전 히든 스테이트(hidden state)를 입력으로 받고, 어텐션 스코어를 계산하는 것을 특징으로 하는 한국어 의존 구문 분석 시스템.
- 청구항 4에 있어서,
상기 히든 스테이트는 GRU(Gated Recurrent Unit)인 것임을 특징으로 하는 한국어 의존 구문 분석 시스템.
- 청구항 4에 있어서,
가장 큰 어텐션 스코어 값을 갖는 히든 스테이트의 위치가 상기 디코더의 입력과 의존 관계에 있는 중심어의 위치이고,
상기 디코더는 가장 큰 어텐션 스코어 값을 갖는 히든 스테이트와 상기 인코딩을 이용하여 문맥 벡터를 생성하고, 이를 이용하여 의존 레이블을 판별하는 것을 특징으로 하는 한국어 의존 구문 분석 시스템.
- 멀티 태스크 학습 기반 포인터 네트워크를 이용한 한국어 의존 구문 분석 시스템에서의 한국어 의존 구문 분석 방법에서,
한국어를 포함하는 단어로 구성된 입력 문서에서 입력 열 형태의 입력 데이터를 추출하는 단계;
상기 입력 열을 입력받아 인코딩을 생성하는 단계; 및
상기 인코딩을 이용하여 결과 열을 생성하되, 상기 인코딩에 대하여 입력 열의 위치 별 확률인 어텐션 가중치(attention weight)를 출력으로 하고, 상기 어텐션 가중치를 이용하여 생성한 문맥 벡터(context vector)를 기반으로 의존 레이블(label)을 판별하여 출력하는 디코딩 수행 단계를 포함하는 한국어 의존 구문 분석 방법.
- 청구항 7에 있어서,
상기 인코딩을 생성하는 단계는,
상기 입력 열의 각 단어를 입력받고, 사전학습된 모델을 이용하여 상기 인풋 레이어를 통해 입력된 각 단어에 대한 차원축소를 수행하고, 차원축소된 입력 열에 대하여 입력 순서 정보와 역순 정보를 포함하는 인코딩을 생성하는 것을 특징으로 하는 한국어 의존 구문 분석 방법.
- 청구항 8에 있어서,
상기 인코딩을 생성하는 단계에서 bi-GRU(bidirectional Gated Recurrent Unit)를 이용하여 인코딩을 생성하는 것을 특징으로 하는 한국어 의존 구문 분석 방법.
- 청구항 9에 있어서,
상기 디코딩 수행 단계에서, 상기 인코딩과, 이전 히든 스테이트(hidden state)를 입력으로 받고, 어텐션 스코어를 계산하는 것을 특징으로 하는 한국어 의존 구문 분석 방법.
- 청구항 10에 있어서,
상기 히든 스테이트는 GRU(Gated Recurrent Unit)인 것임을 특징으로 하는 한국어 의존 구문 분석 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170053147A KR101948613B1 (ko) | 2017-04-25 | 2017-04-25 | 멀티 태스크 학습 기반 포인터 네트워크를 이용한 한국어 의존 구문 분석 시스템 및 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170053147A KR101948613B1 (ko) | 2017-04-25 | 2017-04-25 | 멀티 태스크 학습 기반 포인터 네트워크를 이용한 한국어 의존 구문 분석 시스템 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20180119406A true KR20180119406A (ko) | 2018-11-02 |
KR101948613B1 KR101948613B1 (ko) | 2019-02-15 |
Family
ID=64328690
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170053147A KR101948613B1 (ko) | 2017-04-25 | 2017-04-25 | 멀티 태스크 학습 기반 포인터 네트워크를 이용한 한국어 의존 구문 분석 시스템 및 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101948613B1 (ko) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109597884A (zh) * | 2018-12-28 | 2019-04-09 | 北京百度网讯科技有限公司 | 对话生成的方法、装置、存储介质和终端设备 |
CN111460832A (zh) * | 2020-03-27 | 2020-07-28 | 北京百度网讯科技有限公司 | 对象编码的方法、装置、系统、设备及计算机存储介质 |
KR102138747B1 (ko) * | 2019-02-08 | 2020-07-28 | 네이버 주식회사 | 가로 글자와 세로 글자를 동시에 처리하기 위한 방법 및 시스템 |
CN111723635A (zh) * | 2019-03-20 | 2020-09-29 | 北京四维图新科技股份有限公司 | 实时场景理解系统 |
CN112269881A (zh) * | 2020-11-05 | 2021-01-26 | 北京小米松果电子有限公司 | 多标签文本分类方法、装置及存储介质 |
CN112417864A (zh) * | 2020-11-29 | 2021-02-26 | 中国科学院电子学研究所苏州研究院 | 基于门控拷贝和掩码的多轮对话省略恢复方法 |
KR20210043406A (ko) | 2019-10-11 | 2021-04-21 | 숭실대학교산학협력단 | 문서 맥락 기반 커버리지를 이용한 자동 요약 방법, 이를 수행하기 위한 기록 매체 및 장치 |
CN113065351A (zh) * | 2020-01-02 | 2021-07-02 | 阿里巴巴集团控股有限公司 | 中心词提取模型生成方法及装置和中心词提取方法及装置 |
KR20210130413A (ko) * | 2020-04-22 | 2021-11-01 | 한국과학기술원 | 자연어 텍스트의 시간적 문맥 정보 추출 장치 및 방법 |
CN113672737A (zh) * | 2020-05-13 | 2021-11-19 | 复旦大学 | 知识图谱实体概念描述生成系统 |
CN113723079A (zh) * | 2021-09-08 | 2021-11-30 | 天津大学 | 针对长距离对话状态追踪的分层建模贡献感知的上下文的方法 |
CN114722204A (zh) * | 2022-04-18 | 2022-07-08 | 首都经济贸易大学 | 多标签文本分类方法及装置 |
KR20230028639A (ko) * | 2021-08-19 | 2023-03-02 | 성균관대학교산학협력단 | 은유 탐지 장치 및 방법 |
CN116245178A (zh) * | 2023-05-08 | 2023-06-09 | 中国人民解放军国防科技大学 | 基于指针网络的解码器的生物医药知识抽取方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11113598B2 (en) * | 2015-06-01 | 2021-09-07 | Salesforce.Com, Inc. | Dynamic memory network |
-
2017
- 2017-04-25 KR KR1020170053147A patent/KR101948613B1/ko active IP Right Grant
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109597884A (zh) * | 2018-12-28 | 2019-04-09 | 北京百度网讯科技有限公司 | 对话生成的方法、装置、存储介质和终端设备 |
KR102138747B1 (ko) * | 2019-02-08 | 2020-07-28 | 네이버 주식회사 | 가로 글자와 세로 글자를 동시에 처리하기 위한 방법 및 시스템 |
CN111723635B (zh) * | 2019-03-20 | 2023-08-18 | 北京四维图新科技股份有限公司 | 实时场景理解系统 |
CN111723635A (zh) * | 2019-03-20 | 2020-09-29 | 北京四维图新科技股份有限公司 | 实时场景理解系统 |
KR20210043406A (ko) | 2019-10-11 | 2021-04-21 | 숭실대학교산학협력단 | 문서 맥락 기반 커버리지를 이용한 자동 요약 방법, 이를 수행하기 위한 기록 매체 및 장치 |
CN113065351A (zh) * | 2020-01-02 | 2021-07-02 | 阿里巴巴集团控股有限公司 | 中心词提取模型生成方法及装置和中心词提取方法及装置 |
CN111460832A (zh) * | 2020-03-27 | 2020-07-28 | 北京百度网讯科技有限公司 | 对象编码的方法、装置、系统、设备及计算机存储介质 |
CN111460832B (zh) * | 2020-03-27 | 2023-11-24 | 北京百度网讯科技有限公司 | 对象编码的方法、装置、系统、设备及计算机存储介质 |
KR20210130413A (ko) * | 2020-04-22 | 2021-11-01 | 한국과학기술원 | 자연어 텍스트의 시간적 문맥 정보 추출 장치 및 방법 |
CN113672737A (zh) * | 2020-05-13 | 2021-11-19 | 复旦大学 | 知识图谱实体概念描述生成系统 |
CN112269881A (zh) * | 2020-11-05 | 2021-01-26 | 北京小米松果电子有限公司 | 多标签文本分类方法、装置及存储介质 |
CN112417864B (zh) * | 2020-11-29 | 2023-10-31 | 中国科学院电子学研究所苏州研究院 | 基于门控拷贝和掩码的多轮对话省略恢复方法 |
CN112417864A (zh) * | 2020-11-29 | 2021-02-26 | 中国科学院电子学研究所苏州研究院 | 基于门控拷贝和掩码的多轮对话省略恢复方法 |
KR20230028639A (ko) * | 2021-08-19 | 2023-03-02 | 성균관대학교산학협력단 | 은유 탐지 장치 및 방법 |
CN113723079A (zh) * | 2021-09-08 | 2021-11-30 | 天津大学 | 针对长距离对话状态追踪的分层建模贡献感知的上下文的方法 |
CN113723079B (zh) * | 2021-09-08 | 2023-10-31 | 天津大学 | 针对长距离对话状态追踪的分层建模贡献感知的上下文的方法 |
CN114722204A (zh) * | 2022-04-18 | 2022-07-08 | 首都经济贸易大学 | 多标签文本分类方法及装置 |
CN116245178A (zh) * | 2023-05-08 | 2023-06-09 | 中国人民解放军国防科技大学 | 基于指针网络的解码器的生物医药知识抽取方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
KR101948613B1 (ko) | 2019-02-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101948613B1 (ko) | 멀티 태스크 학습 기반 포인터 네트워크를 이용한 한국어 의존 구문 분석 시스템 및 방법 | |
US10606946B2 (en) | Learning word embedding using morphological knowledge | |
Kim et al. | Two-stage multi-intent detection for spoken language understanding | |
US9372848B2 (en) | Systems and methods for language detection | |
EP3616083A2 (en) | Multi-lingual semantic parser based on transferred learning | |
KR20190019661A (ko) | 언어 분석기별 정답 레이블 분포를 이용한 자연어 이해 방법 | |
US11797761B2 (en) | Device, method and program for natural language processing | |
CN111401084A (zh) | 一种机器翻译的方法、设备以及计算机可读存储介质 | |
KR101627428B1 (ko) | 딥 러닝을 이용하는 구문 분석 모델 구축 방법 및 이를 수행하는 장치 | |
CN111666758A (zh) | 中文分词方法、训练设备以及计算机可读存储介质 | |
CN111859940B (zh) | 一种关键词提取方法、装置、电子设备及存储介质 | |
Zitouni et al. | Arabic diacritic restoration approach based on maximum entropy models | |
CN110010136A (zh) | 韵律预测模型的训练和文本分析方法、装置、介质和设备 | |
CN113705315A (zh) | 视频处理方法、装置、设备及存储介质 | |
Kitaev et al. | Learned incremental representations for parsing | |
CA2964331A1 (en) | System and method for language detection | |
US11893344B2 (en) | Morpheme analysis learning device, morpheme analysis device, method, and program | |
CN109815497B (zh) | 基于句法依存的人物属性抽取方法 | |
JP2005208782A (ja) | 自然言語処理システム及び自然言語処理方法、並びにコンピュータ・プログラム | |
Pandey et al. | Parts of speech tagging towards classical to quantum computing | |
Ghosh et al. | Parts-of-speech tagging in nlp: Utility, types, and some popular pos taggers | |
Yahi et al. | Morphosyntactic preprocessing impact on document embedding: An empirical study on semantic similarity | |
Jamtsho et al. | Dzongkha word segmentation using deep learning | |
Yoo et al. | Speech-act classification using a convolutional neural network based on pos tag and dependency-relation bigram embedding | |
Sharma et al. | Language identification for hindi language transliterated text in roman script using generative adversarial networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |