• 검색 결과가 없습니다.

포인터 네트워크를 이용한 한국어 의존 구문 분석

N/A
N/A
Protected

Academic year: 2021

Share "포인터 네트워크를 이용한 한국어 의존 구문 분석"

Copied!
11
0
0

로드 중.... (전체 텍스트 보기)

전체 글

(1)

Korean Dependency Parsing using Pointer Networks

저자 (Authors)

박천음, 이창기

Cheoneum Park, Changki Lee

출처 (Source)

정보과학회논문지44(8), 2017.8, 822-831 (10 pages) Journal of KIISE44(8), 2017.8, 822-831 (10 pages)

발행처 (Publisher)

한국정보과학회

KOREA INFORMATION SCIENCE SOCIETY

URL http://www.dbpia.co.kr/Article/NODE07226480

APA Style 박천음, 이창기 (2017). 포인터 네트워크를 이용한 한국어 의존 구문 분석. 정보과학회논문지, 44(8), 822-831.

이용정보 (Accessed)

저작권 안내

DBpia에서 제공되는 모든 저작물의 저작권은 원저작자에게 있으며, 누리미디어는 각 저작물의 내용을 보증하거나 책임을 지지 않습니다. 그리고 DBpia에서 제공되는 저작물은 DBpia와 구독계약을 체결한 기관소속 이용자 혹은 해당 저작물의 개별 구매자가 비영리적으로만 이용할 수 있습니다. 그러므로 이에 위반하여 DBpia에서 제 공되는 저작물을 복제, 전송 등의 방법으로 무단 이용하는 경우 관련 법령에 따라 민, 형사상의 책임을 질 수 있습니다.

Copyright Information

Copyright of all literary works provided by DBpia belongs to the copyright holder(s)and Nurimedia does not guarantee contents of the literary work or assume responsibility for the same. In addition, the literary works provided by DBpia may only be used by the users affiliated to the institutions which executed a subscription agreement with DBpia or the individual purchasers of the literary work(s)for non-commercial purposes. Therefore, any person who illegally uses the literary works provided by DBpia by means of reproduction or transmission shall assume civil and criminal responsibility according to applicable laws and

강원대학교 114.70.234.***

2017/09/06 22:00 (KST)

(2)

ISSN 2383-630X(Print) / ISSN 2383-6296(Online) Journal of KIISE, Vol. 44, No. 8, pp. 822-831, 2017. 8 https://doi.org/10.5626/JOK.2017.44.8.822

․본 연구는 미래창조과학부 및 정보통신기술진흥센터의 정보통신・방송 연구 개발 사업의 일환으로 하였음. [2013-0-00131, (엑소브레인-1세부) 휴먼 지식증강 서비스를 위한 지능진화형 WiseQA 플랫폼 기술 개발]

․이 논문은 제43회 동계학술발표회에서 ‘멀티 태스크 학습 기반 포인터 네트 워크를 이용한 한국어 의존 구문 분석’의 제목으로 발표된 논문을 확장한 것임

††

학생회원 종신회원 : :

강원대학교 컴퓨터과학 [email protected]

강원대학교 컴퓨터과학 교수(Kangwon Nat'l Univ.) [email protected]

(Corresponding author임) 논문접수 : 2017년 2월 20일 (Received 20 February 2017) 논문수정 : 2017년 5월 22일 (Revised 22 May 2017) 심사완료 : 2017년 5월 23일 (Accepted 23 May 2017)

CopyrightⒸ2017 한국정보과학회ː개인 목적이나 교육 목적인 경우, 이 저작 물의 전체 또는 일부에 대한 복사본 혹은 디지털 사본의 제작을 허가합니다.

이 때, 사본은 상업적 수단으로 사용할 수 없으며 첫 페이지에 본 문구와 출처를 반드시 명시해야 합니다. 이 외의 목적으로 복제, 배포, 출판, 전송 등 모든 유형의 사용행위를 하는 경우에 대하여는 사전에 허가를 얻고 비용을 지불해야 합니다.

정보과학회논문지 제44권 제8호(2017. 8)

포인터 네트워크를 이용한 한국어 의존 구문 분석

(Korean Dependency Parsing using Pointer Networks)

박 천 음

이 창 기

††

(Cheoneum Park) (Changki Lee)

요 약 본 논문에서는 멀티 태스크 학습 기반 포인터 네트워크를 이용한 한국어 의존 구문 분석 모델 을 제안한다. 멀티 태스크 학습은 두 개 이상의 문제를 동시에 학습시켜 성능을 향상시키는 방법으로, 본 논문에서는 이 방법에 기반한 포인터 네트워크를 이용하여 어절 간의 의존 관계와 의존 레이블 정보를 동 시에 구하여 의존 구문 분석을 수행한다. 어절 기반의 의존 구문 분석에서 형태소 기반의 멀티 태스크 학 습 기반 포인터 네트워크를 수행하기 위하여 입력 기준 5가지를 정의하고, 성능 향상을 위하여 fine- tuning 방법을 적용한다. 실험 결과, 본 논문에서 제안한 모델이 기존 한국어 의존 구문 분석 연구들 보다 좋은 UAS 91.79%, LAS 89.48%의 성능을 보였다.

키워드: 멀티 태스크 러닝, 포인터 네트워크, 의존 구문 분석, 딥 러닝

Abstract In this paper, we propose a Korean dependency parsing model using multi-task learning based pointer networks. Multi-task learning is a method that can be used to improve the performance by learning two or more problems at the same time. In this paper, we perform dependency parsing by using pointer networks based on this method and simultaneously obtaining the dependency relation and dependency label information of the words. We define five input criteria to perform pointer networks based on multi-task learning of morpheme in dependency parsing of a word. We apply a fine-tuning method to further improve the performance of the dependency parsing proposed in this paper. The results of our experiment show that the proposed model has better UAS 91.79% and LAS 89.48% than conventional Korean dependency parsing.

Keywords: multi-task learning, pointer networks, dependency parsing, deep learning

1. 서 론

구문 분석은 문장성분 사이의 관계를 분석하고 구조 화하여 문장의 구조적, 의미적 중의성을 해결하는 자연 어처리 문제이며, 구구조 구문 분석(Phrase structure parsing)과 의존 구문 분석(Dependency parsing)등이 있다. 의존 구문 분석은 문장구조를 중심어(head)와 수 식어(modifier)로 이루어진 의존 관계로 표현하는 방법 으로[1], 표현 방식이 간단하고 자유 어순에 적합하기 때문에 한국어와 같이 어순이 자유롭고 문장성분의 생 략이 빈번한 언어에서 주로 연구되었다. 의존 구문 분석 은 의미 분석(상호참조해결, 의미역 결정, 개체명 인식 등)과 정보 추출, 온톨로지 확장, 질의응답, 문서요약 등 에 응용될 수 있다.

한국어 의존 구문 분석은, 각 어절의 지배소(중심어) 는 자신(수식어)의 뒤쪽에 등장해야 하는 지배소 후위

(3)

원칙(head final)과 문장 전체에서 하나의 지배소(root) 를 가져야 하는 지배소 유일 원칙(head uniqueness), 어절들 간의 의존관계는 서로 교차하지 않는 투영 원칙 (no crossing) 등에 따라 구문분석이 수행된다. 이와 같 은 3가지 원칙을 기반으로 수행되는 기존 의존 구문 분 석과 달리 본 논문에서는 포인터 네트워크를 이용하여 의존 구문 분석을 수행한다.

포인터 네트워크(Pointer Networks)[2]는 어텐션 메 커니즘(Attention mechanism)[3]을 이용하여 입력열에 대응되는 위치를 출력하는 Recurrent Neural Network (RNN)의 확장된 모델이다. 본 논문에서는 포인터 네트 워크를 이용하여 입력문장에서 각 어절의 중심어를 찾 고 동시에 의존 구문 분석의 레이블(label) 정보를 출력 하는 멀티 태스크 학습(Multi-task learning) 기반 포인 터 네트워크를 이용한 한국어 의존 구문 분석을 제안한다.

본 논문의 구성은 다음과 같다. 2장에서 본 논문에서 제안하는 방법 대한 관련 연구를 설명하고, 3장에서 멀 티 태스크 기반 포인터 네트워크를 설명한다. 4장에서 본 논문에서 제안한 포인터 네트워크를 이용한 의존구 문분석에 대하여 설명하고, 5장에서 이에 대한 실험 및 결과를 보이고, 6장에서 결론을 맺는다.

2. 관련 연구

최근 자연어처리 연구에 딥 러닝을 이용하는 방법이 많이 제안 되었으며, 품사 태깅[4], 개체명 인식[5], 상호 참조해결[6], 의미역 결정[7], 기계 번역[8], 문서 요약[9]

등의 연구에서 좋은 성능을 보였고, 의존 구문 분석에서 도 딥 러닝을 이용한 전이 기반 방법이 활발히 연구되 고 있다[10-14]. [10]은 Feed-forward Neural Network (FFNN)와 다양한 자질조합을 이용하였고, [11]은 RNN 을 이용하여 전이 기반 의존 구문 분석을 수행하였다.

[13, 14]의 경우, Stack LSTM 모델과 음절, 형태소 정 보를 이용한 전이 기반 의존구문 분석을 수행하였다.

본 논문에서 제안하는 멀티 태스크 학습 기반 포인터 네트워크는 어텐션 메커니즘을 이용하여 입력 문장에서 각 어절의 중심어 위치를 출력하고, 동시에 의존 레이블 정보를 출력한다. 따라서 기존 의존 구문 분석 모델들 (전이기반[15] 및 그래프기반 의존 구문 분석[16])을 적 용하지 않아도 네트워크 출력 결과 만으로 의존 관계를 파악할 수 있으며, 멀티 태스크 학습 기반 포인터 네트 워크는 중심어의 위치와 의존 레이블(label) 정보를 동 시에 학습할 수 있다.

본 논문에서 제안한 방법은 Gated Recurrent Unit (GRU) [17]을 기반으로 구성된다.

2.1 Gated Recurrent Unit

일반 RNN 모델은 입력열이 길어질 경우에 각 입력에

그림 1 Gated Recurrent Unit Fig. 1 Gated Recurrent Unit

대한 이전까지의 hidden state 정보가 희미해지는 vani- shing gradient 문제가 발생한다. GRU는 Long Short- Term Memory (LSTM)[18] RNN에서 사용하는 3개의 gate를 2개의 gate로 줄인 방법으로, 입력 레이어와 이전 hidden state의 값을 조정하는 update gate 와 reset gate 를 두어 학습을 수행한다. GRU는 위와 같은 방법 으로 일반 RNN에서 발생하는 vanishing gradient 문제 를 해결하였다. GRU에 대한 수식은 아래와 같다.

위 식에서 Wr, Wz, Wh, Ur, Uz, Uh는 각 gate와 unit 상태를 학습하는 가중치 행렬이고, br, bz, bhbias term이다. 는 sigmoid 함수이며, xt는 현재 step 의 입력이고, ht-1은 이전 hidden state를 뜻한다. rt은 현재 hidden state에 이전 hidden state의 weight 반영 여부를 결정하는 reset gate이다. zt는 update gate이며, 현재 hidden state를 얼마나 갱신할지 결정한다.

Candidate activation 는 reset gate를 포함하여 일반 RNN처럼 계산된다. ⊙는 element-wise multiplication 을 의미하며, ht는 각 time step에 대한 hidden state의 출력 벡터이다. 그림 1은 GRU를 나타낸다[19].

3. 멀티 태스크 기반 포인터 네트워크

포인터 네트워크는 출력 클래스의 개수가 입력 열 길 이에 따라 변하는 문제를 처리할 수 있는 모델(즉, 출력 이 입력열의 위치인 모델)이며, RNN encoder-decoder 모델[17] 기반으로 어텐션 메커니즘을 이용한다. RNN encoder-decoder 모델은 주어진 입력 열을 인코딩 (encoding)하는 인코더(encoder RNN)와 인코딩을 이용 하여 결과 열을 생성하는 디코더(decoder RNN)로 구성 된다. 어텐션 메커니즘은 인코더의 hidden state와 현재 까지 생성한 디코더의 hidden state를 이용하여 입력에 대한 어텐션 가중치(attention weight)를 학습하고, 입

(4)

824 정보과학회논문지 제44권 제8호(2017. 8)

력열 중 정답에 큰 영향을 주는 위치가 어디인지 결정 한다. 본 논문에서는 어텐션 메커니즘을 이용하여 주어 진 단어와 중심어 의존 관계가 있는 단어의 위치를 결 정한다.

멀티 태스크 학습 기반 포인터 네트워크는 그림 2와 같이 어탠션 가중치(attention weight, 입력열의 위치 별 확률)를 디코더의 포인팅 출력(Youtput)으로 사용하고, 어텐션 가중치를 이용하여 생성한 문맥 벡터(context vector)를 기반으로 의존 레이블이 무엇인지 판별하여 그 레이블을 출력(Zoutput)한다. 본 논문에서는 bidi- rectional Gated Recurrent Unit(bi-GRU)[3]을 기반으 로 인코더를 구성하며, 다음과 같이 정의한다.

여기서 와 는 입력 열에 대한 forward, backward Network이며, E(xs)는 단어표현(word embedding)을 적용하는 함수이다. xs는 입력 단어가 되 며, s는 입력열에서의 단어 인덱스이다. 는 입력 순서 정보와 역순의 정보를 모두 보기 위하여 와 를 연 결(concatenate)한 것이다. 디코더에서는 입력열의 특정

위치(Yinput 혹은 yit)를 입력 받아 그에 따른 출력 결과

(중심어 위치와 의존 레이블)의 조건부확률을 학습하며, 다음과 같이 정의된다.

디코더의 hidden state ht는 인코더의 hidden state와 디코더의 이전 시간 hidden state를 입력으로 받는다.

여기서 t 는 디코더의 인덱스이다. at는 scorea함수의 결과 벡터를 정규화한 값(즉, attention weight)이며, 입 력 열의 각 위치 별로 pointing할 확률값이다. scorea

함수는 얼라인먼트 스코어(alignment score)를 계산하 며, concat 과 concat 2, concat 3로 나뉜다. 먼저 concat 은 ht와 를 합(concatenate)하여 점수(score)를 계산 하며, concat 2는 ht와 

, 를 합하여 점수를 계산 한다. 마지막으로 concat 3는 ht와 ct-1, 를 합하여 점 수를 계산한다. 여기서 ct는 문맥 벡터이며, at에서 가 장 높은 얼라인먼트 스코어를 가진 yt를 이용(하드 어 텐션(hard attention))하여 구한다.

zt는 의존 관계 레이블로, ct를 이용한 scorez함수로 구한다. concatz는 concatz과 concat 2z로 나뉜다. concatz

은 scorea의 concat 을 기반으로 하며, ct, ht를 합 (concatenate)하여 점수를 계산한다. concat 2z는 scorea

에서 concat 2 또는 concat 3를 기반으로 하며, ct, ht,



를 합하여 점수를 계산한다.

포인터 네트워크의 학습을 위해서는 negative log-like- lihood (nll)를 이용한다[2]. 본 논문에서 제안한 멀티 태 스크 학습 기반 포인터 네트워크는 학습을 수행할 때 y 에 대한 negative log-likelihood와 z에 대한 negative log-likelihood를 함께 계산한다. 이때 학습에 사용하는 목적함수(object function)은 다음과 같다.

y는 포인팅에 대한 정답이고, z는 의존 관계 레이블 에 대한 정답이다.  값은 y와 z의 negative log-like- lihood를 계산할 때 둘 사이의 비율을 결정하는 하이퍼 파라미터이다(표 6, 그림 3 참조).

4. 포인터 네트워크를 이용한 의존 구문 분석 포인터 네트워크를 이용한 의존 구문 분석은 주어진 임의의 어절(즉, 디코더의 입력)에 대하여 중심어 의존 관계를 갖는 중심어의 위치를 결과로 출력하여 분석을 수행한다. 멀티 태스크 학습은 두 개 이상의 문제를 하 나의 모델로 학습 및 예측을 수행하는 것으로, 본 논문 에서는 멀티 태스크 학습 기반 포인터 네트워크를 이용 하여 두 어절 간의 의존 관계와 의존 레이블 정보를 분 석한다. 이에 따른 포인터 네트워크 모델의 구조는 그림 2 와 같다.

그림 2에서 인코더의 입력은 A, B, C, D로 입력 문 장의 각 형태소이고, </s>는 문장의 끝을 알리는 종료 기호이다. 디코더에는 각 시간에 따른 입력이 하나의 열 (Yinput= {0(A), 1(B), 2(C), 3(D)})로 주어지고, 그에 대응되는 출력열들(위치를 출력하는 Youtput= {1(B), 2(C), 3(D), 4(</s>)}, 의존 레이블 정보를 출력하는 Zoutput= {a, b, c, d})을 생 성한다.

(5)

표 1 의존 구문 분석 디코더 입력 기준 Table 1 Input criterion for decoder of dependency parsing

Input sentence

나/NP:201[0] <sp>:2[1] 당신/NP:2834[2] 의/JKG:9[3] <sp>:2[4] 그림자/NNG:6803[5] 를/JKO:12[6] <sp>:2[7]

밟/VV:2241[8] 으며/EC:163[9] <sp>:2[10] 가/VV:262[11] ㅂ니다/EF:213[12] ./S F:3[13] </s>:1[14]

Input criterion Input explanation

Dp0

Dp0 defines the index of the begin morphemes of each input phrase as the input and output of decoder.

Yinput= {나/NP[0], 당신/NP[2],그림자/NNG[5], 밟/VV[8], 가/VV[11]}

Youtput= {밟/VV[8], 그림자/NNG[5], 밟/VV[8], 가/VV[11], </s>[14]}

Zoutput= {NPSBJ, NPMOD, NPOBJ, VP, VP}

Dp1

Dp1 defines the index of the last morphemes of each input phrase as the input and output of decoder.

Exclude symbolic representations (In that case, we define the immediately preceding morpheme as input).

Yinput= {나/NP[0], 의/JKG[3], 를/JKO[6], 으며/EC[9], ㅂ니다/EF[12]}

Youtput= {으며/EC[9], 를/JKO[6], 으며/EC[9], ./SF[13], </s>[14]}

Zoutput= {NPSBJ, NPMOD, NPOBJ, VP, VP}

Dp2

Dp2 defines the index of the last morphemes of each input phrase as the input of decoder and the index of the begin morphemes of each input phrase as the output of decoder (exclude symbolic).

Yinput= {나/NP[0], 의/JKG[3], 를/JKO[6], 으며/EC[9], ㅂ니다/EF[12]}

Youtput= {밟/VV[8], 그림자/NNG[5], 밟/VV[8], 가/VV[11], </s>[14]}

Zoutput= {NPSBJ, NPMOD, NPOBJ, VP, VP}

Dp3

Dp3 defines the index of the begin morphemes of each input word in that case of verb phrase, and the index of the last morphemes of each input word in the other phrase (exclude symbolic).

Yinput= {나/NP[0], 의/JKG[3], 를/JKO[6], 밟/VV[8], 가/VV[11]}

Youtput= {밟/VV[8], 그림자/NNG[5], 밟/VV[8], 가/VV[11], </s>[14]}

Zoutput= {NPSBJ, NPMOD, NPOBJ, VP, VP}

Dp4

Dp3 defines the index of the last morphemes of each input word in that case of verb phrase, and the index of the begin morphemes of each input word in the other phrase (exclude symbolic).

Yinput= {나/NP[0], 당신/NP[2],그림자/NNG[5], 으며/EC[9], ㅂ니다/EF[12]}

Youtput= {밟/VV[8], 그림자/NNG[5], 밟/VV[8], 가/VV[11], </s>[14]}

Zoutput= {NPSBJ, NPMOD, NPOBJ, VP, VP}

그림 2 멀티 태스크 학습 기반 포인터 네트워크 모델 구조 Fig. 2 Structure for pointer networks based on multi-task

learning

인코더의 입력은 입력 문장의 어절들을 형태소 단위 로 바꾼 것을 사용하며, 어절 정보를 표현하기 위하여 어절 사이에 띄어쓰기 심볼(<sp>)을 추가한다. 디코더

의 입력은 각 어절의 위치 정보이며, 출력 Y는 각 어절 의 중심어 위치이고, 출력 Z는 그 두 어절 간의 의존 관계 레이블 정보이다. 이때 입력 단위는 형태소이기 때 문에 표 1과 같이 입력기준(어절의 대표 형태소 위치)을 정의하여 학습데이터를 구축하였다. 표 1은 입력 문장

“나 당신의 그림자를 밟으며 갑니다.”에 대한 예를 보이 며, 입력 문장에 대한 형태소 정보는 “형태소/품사태그:

단어사전id[인덱스]”와 같이 표현하며, 입력 기준에 대한 정보는 Yinput, Youtput, Zoutput에 대하여 “형태소/품사태그 [인덱스]”와 같이 표현한다.

한국어는 첨가어로서 조사나 접사에 따라 문법적 관 계가 형성되어 두 단어 사이의 의존관계에 영향을 미치 기 때문에 어절의 대표 형태소를 무엇으로 하느냐에 따 른 디코더의 입력 기준을 표 1과 같이 정의한다.

Dp0는 디코더의 입력기준을 어절의 첫 번째 형태소 로 정의한다. 이러한 기준을 정의한 이유는 어절의 첫 번째 형태소는 의존관계에서 중요한 역할을 하는 명사 와 동사 등에 대한 정보로 이루어졌기 때문이다. 포인팅 대상인 디코더의 출력도 어절의 첫 번째 형태소이다.

Dp1은 어절의 마지막 형태소를 입력 기준으로 정의 한다. 마지막 형태소가 기호(symbol)인 경우에는 바로

(6)

826 정보과학회논문지 제44권 제8호(2017. 8)

이전 형태소(주로 명사나 조사, 어미 등)를 입력으로 정 의한다. Dp1은 Dp0와 달리 형태소의 시작 위치에 있는 명사나 동사 등의 정보를 직접적으로 확인하지 않지만, 해당 형태소 위치까지 인코딩된 hidden state를 사용하 여 같은 어절의 이전 형태소 정보들을 확인할 수 있다 고 가정한다. 포인팅 대상인 디코더의 출력도 어절의 마 지막 형태소이다.

Dp2는 Dp1과 같은 방법이지만 디코더의 입력은 어 절의 마지막 형태소이고, 디코더의 출력은 어절의 시작 형태소이다.

Dp3는 동사 구문인 경우, 어절의 시작 형태소를 디코 더 입력으로 정의하고, 그 외의 구문들은 어절의 마지막 형태소를 입력으로 정의한다.

Dp4는 Dp3와 반대로, 동사 구문은 어절의 마지막 형 태소를 입력으로, 그 외의 구문들은 어절의 시작 형태소 를 입력으로 정의한다. Dp3와 Dp4에서 디코더의 출력 은 형태소의 시작 위치로 정의한다. 여기서 어절의 마지 막 형태소를 입력으로 정의할 때, 형태소가 기호인 경우 에는 바로 이전 형태소를 입력으로 정의한다.

5. 실 험

본 논문에서는 한국어 의존 구문 분석의 실험을 위하 여 [10]과 동일한 조건으로 학습하고 평가하였다. 의존 구조로 변환된 세종 데이터셋[20]을 사용하였으며, 데이 터셋은 총 59,659 문장으로, 90%인 53,842 문장을 학습 에 사용하고, 10%인 5,817 문장을 평가에 사용하였다.

평가 척도는 Unlabeled Attachment Score(UAS)와 Labeled Attachment Score(LAS)를 사용하였다. 모든 실험은 Intel i7-4790 CPU (3.60GHz), 32GB RAM, Ubuntu 14.04 OS, GeForce GTX 1070에서 수행되었 으며, 히든 유닛 수 [100, 50]([, ])에서 약 12시간의 학습시간이 걸렸다.

단어표현(word embedding)은 10만 단어에 대해 2년 치 뉴스기사를 NNLM(Neural Network Language Model)[4]으로 학습한 것을 사용하였다. 단어사전은 “형 태소/태그”와 같이 구성되며, 사전에 없는 단어는 태그 정보만 확인하여 인덱싱하였다(즉, “unk/태그”와 같이 구성). 인코더와 디코더, 어텐션 레이어의 활성함수는 tanh를 사용하였고, Zoutput의 히든 레이어에 적용한 활 성함수는 relu를 사용하였다. 멀티 태스크 러닝 기반 포 인터 네트워크는 모멘텀(momentum)을 이용하여 학습 하고, 학습율(learning rate)은 0.05를 시작으로 성능 개 선이 없으면 5 에포크(epoch)마다 50%씩 감소시켰다.

표 2는 의존 구문 분석 디코더의 입력 기준에 대한 실험 결과이다. 실험 결과, 입력 기준 Dp0가 UAS 91.00%

로 가장 좋은 성능을 보였으며, Dp4가 90.98%로 두 번

표 2 입력 기준에 따른 성능 비교(%) Table 2 Comparison for input criterion (%) Input

criterion Score method Hidden unit dropout UAS

Dp0 concat [100, 50] [0, 0] 91.00

Dp1 concat [100, 50] [0, 0] 90.91

Dp2 concat [100, 50] [0, 0] 90.86

Dp3 concat [100, 50] [0, 0] 90.91

Dp4 concat [100, 50] [0, 0] 90.95

째로 높은 성능을 보였다. 이에 따라, 디코더의 입력으 로 어절 중 처음 등장하는 형태소를 입력 기준으로 하 여 명사나 동사 등의 정보를 직접적으로 확인하는 Dp0 가 포인터 네트워크를 이용한 방법에 가장 적합한 것을 알 수 있다.

표 3은 입력 기준 Dp0에 대한 스코어 함수 비교 실 험 결과이다. 실험 결과, 포인터 네트워크의 스코어 함 수는 concat2가 91.04%로 가장 좋은 성능을 보였다.

표 3 입력 기준 Dp0에 대한 얼라인먼트 스코어 비교(%) Table 3 Comparison of alignment score for input criterion

Dp0 (%) Input

criterion Score function Hidden unit dropout UAS

Dp0

concat

[100, 50] [0, 0]

91.00

concat2 91.04

concat3 90.83

표 4는 입력 기준 Dp0과 얼라인먼트 스코어 concat2 에 대하여 히든 레이어 유닛 수의 최적화를 수행한 결 과이다. 실험 결과, 히든 레이어 유닛 수가 [1200, 600]

일 때 UAS 91.50%, LAS 89.12%로 가장 좋은 성능을 보였다.

표 4 히든 레이어 유닛 수 최적화(%) Table 4 Optimization for number of hidden layer unit (%)

Input

criterion Score method Hidden unit dropout UAS LAS

Dp0 concat2

[100, 50]

[0, 0]

91.04 88.59 [200, 100] 91.22 88.74 [400, 200] 91.36 88.94 [800, 400] 91.40 89.00 [1200, 600] 91.50 89.12 [1600, 800] 91.33 88.89

표 5는 앞서 최적화 된 하이퍼 파라미터를 기반으로 드랍아웃(dropout) 최적화를 수행한 결과이며, 이때 alpha 값(멀티 태스크 러닝을 수행할 때, 태스크들의 에 러율을 적용하는 비율)은 0.2로 설정하였다. 실험 결과,

(7)

드랍아웃 [0.2, 0.2]일 때 UAS 91.72%, LAS 89.38%로 가장 좋은 성능을 보였으며, 이때 alpha 값 0.1에 대한 성능은 UAS 91.58%, LAS 89.12%이다.

표 5 드랍아웃 최적화(%) Table 5 Optimization for dropout (%) Input

criterion Score

method Hidden unit dropout UAS LAS

Dp0 concat2 [1200, 600]

[0, 0] 91.50 89.12 [0.1, 0.1] 91.39 89.07 [0.2, 0.2] 91.72 89.38 [0.3, 0.3] 91.25 88.84 [0.4, 0.4] 91.36 88.94 [0.5, 0.5] 90.83 88.30

표 6은 본 논문에서 제안한 방법에 대하여 다양한 pre-training 및 fine-tuning을 수행한 결과이다. Pre- training을 수행할 때 히든 레이어 유닛 수는 [1200, 600]을 사용하고 입력 기준은 Dp04를 기준으로 모델 을 학습하였고, fine-tuning은 pre-training 모델과 같 은 하이퍼 파라미터를 사용하고 드랍아웃을 달리하여 실험을 수행하였다. 입력 기준이 Dp0인 경우에는 concat2, concat3 스코어 함수를 이용하였고, Dp14인 경우에는 concat2 스코어를 이용하였다. Fine-tuning 방법은 방법 1(드랍아웃 [0, 0] Æ [0.1, 0.1] Æ [0.2, 0.2])과 방법 2(pre-training: [0.2, 0.2], fine-tuning:

[0.2, 0.2])로 나뉜다.

방법 1은 드랍아웃을 [0, 0], [0.1, 0.1], [0.2, 0.2] 순 서대로 실험하였으며, [0, 0]으로 pre-training을 수행하 고, [0.1, 0.1]에서 fine-tuning을 수행하였고, [0.1, 0.1]

로 학습한 모델을 pre-training 모델로 사용하여 [0.2, 0.2]에서 fine-tuning을 수행하였다. 방법 2는 표 5에서 가장 좋은 성능을 보인 하이퍼 파라미터로 pre-training 을 수행하고 같은 하이퍼 파라미터로 fine-tuning을 수 행하였으며, alpha 값을 0.1과 0.2로 설정하여 각각 성 능을 구하였다.

실험 결과, 순차적 방법보다 최적 파라미터 모델 기반 방법일 때 더 좋은 성능을 보였으며, 최적 파라미터 모 델 기반 방법에서 하이퍼 파라미터가 Dp0, concat2, 드 랍아웃 [0.2, 0.2], alpha 0.1일 때 UAS 91.79%, LAS 89.48%로 가장 좋은 성능을 보였다. 또한 같은 하이퍼 파라미터에서 alpha 0.2일 때 UAS 91.78%, LAS 89.50%의 성능을 보였다. 이에 따라, pre-training을 수 행하면 학습된 파라미터들이 초기값으로 설정되어 pre- training 및 fine-tuning을 수행하지 않을 때보다 더 좋 은 성능을 보이는 것을 알 수 있다.

같은 하이퍼 파라미터를 적용하고 pre-training 및

fine-tuning을 수행하였을 때, Dp1은 alpha가 0.1일 때 UAS 91.64%, LAS 89.35%를 보였고, Dp2는 alpha가 0.2일 때 UAS 91.52%, LAS 89.17%, Dp3은 alpha가 0.1일 때 UAS 91.55%, LAS 89.30%, Dp4는 alpha가 0.1일 때 UAS 91.68%, LAS 89.32%를 보였다. 각 입력 기준에 따른 성능 최적화를 수행한 결과, 입력 기준이 Dp0, Dp4, Dp1, Dp3, Dp2 순서로 높은 성능을 보였다.

표 6 멀티 태스크 학습 기반 포인터 네트워크에 대한 fine-tuning

Table 6 Fine-tuning for pointer networks based on multi- task learning

Fine-tuning method

Input criterion

Score

method Alpha dropout UAS LAS

Method 1

Dp0

concat2 0.2 [0.1, 0.1] 91.59 89.32 0.2 [0.2, 0.2] 91.64 89.43

Method 2

concat2 0.1 [0.2, 0.2] 91.79 89.48 0.2 [0.2, 0.2] 91.78 89.50

concat3 0.1 [0.2, 0.2] 91.65 89.34 0.2 [0.2, 0.2] 91.69 89.43

Dp1 concat2 0.1 [0.2, 0.2] 91.64 89.35 0.2 [0.2, 0.2] 91.60 89.33

Dp2 concat2 0.1 [0.2, 0.2] 91.51 89.15 0.2 [0.2, 0.2] 91.52 89.17

Dp3 concat2 0.1 [0.2, 0.2] 91.55 89.30 0.2 [0.2, 0.2] 91.52 89.33

Dp4 concat2 0.1 [0.2, 0.2] 91.68 89.32 0.2 [0.2, 0.2] 91.63 89.30

그림 3은 표 6에서 가장 좋은 성능을 보인 fine-tuning 된 Dp0을 이용하여 alpha 값에 따른 성능 변화를 나타낸 다. 그림 3의 왼쪽 세로축은 UAS 성능을 나타내고, 오른 쪽 세로축은 LAS 성능을 나타내며, 가로축은 alpha 값에 대한 수치(0.1~0.5)를 나타낸다. Alpha 값이 0.1인 경우 에는 UAS가 91.79%로 높은 성능을 보였고, LAS가 89.48%의 성능을 보였고, alpha 값이 0.2일 때 UAS는 91.78%, 0.3일 때 UAS 91.76%, 0.4일 때 UAS 91.77%, 0.5일 때 UAS 91.76%의 성능을 보였으며, alpha 값이 커짐에 따라 UAS 성능이 점점 감소하는 양상을 보였다.

반면에 LAS는 alpha 값이 0.2일 때 89.50%, 0.3일 때 89.49%, 0.4일 때 89.52%, 0.5일 때 89.48%의 성능을 보 였으며, alpha 값이 0.4일 때 가장 좋은 성능을 보였다.

이러한 결과를 보이는 이유는 alpha 값이 증가하면 목적 함수에서 의존 관계 레이블의 비율이 증가하기 때문이라 고 설명할 수 있다.

표 7은 표 6의 Dp0, Dp1, Dp4 중에서 가장 좋은 성 능을 보인 concat2의 성능과 기존 한국어 의존 구문 분 석 연구[10-14, 21, 22]들의 성능을 비교한 것이다. 본

(8)

828 정보과학회논문지 제44권 제8호(2017. 8)

표 7 한국어 의존 구문 분석 성능 비교(자동 분석 형태소 이용, %)

Table 7 Comparison for performance of Korean dependency parsing (using Sejong rigid set, %)

Dependency parsing UAS LAS

S. Lim [21]: Sejong corpus 88.15 -

C. Lee [10] with MI 90.37 88.17

J. Li [11]: Recurrent Neural Network model 90.33 -

S.H. Na [12]: String-to-dependency SMT model 88.16 -

S.H. Na [13]: based on Stack LSTM 90.11 87.70

S.H. Na [14]: Stack LSTMs by combining syllables and morphemes 90.44 87.93 S.H. Na [22]: Stack LSTM with Recurrent controllers 90.83 88.49 Our: Dp0 concat2 [1200, 600] dropout[0.2, 0.2], 0.1 91.79 89.48 Our: Dp0 concat2 [1200, 600] dropout[0.2, 0.2], 0.2 91.78 89.50 Our: Dp1 concat2 [800, 400] dropout[0.2, 0.2], 0.2 91.65 89.34 Our: Dp1 concat2 [1200, 600] dropout[0.2, 0.2], 0.2 91.64 89.35 Our: Dp4 concat2 [1200, 600] dropout[0.2, 0.2], 0.2 91.68 89.32

그림 3 Alpha 값에 따른 성능 변화 Fig. 3 Performance change with alpha value

논문에서 제안한 모델이 기존 연구 성능인 UAS 88~

90% 보다 높은 91.6~91.79%의 성능을 보였으며, 일반 포인터 네트워크에서 수행할 수 없었던 의존 관계 레이 블 분류문제도 해결할 수 있음을 알 수 있다. 표 7에서 본 논문에 대한 실험에 적용한 파라미터는 입력 기준, 얼라인먼트 스코어, 히든 레이어 유닛 수, 드랍아웃, alpha 값 순서와 같다.

그림 4, 5와 표 8, 9는 포인터 네트워크를 이용한 한 국어 의존 구문 분석에서 디코딩을 수행할 때 각 입력 단어에 대한 얼라인먼트 점수를 나타낸다(실험은 가장 좋은 성능을 보인 Dp0과 그에 따른 하이퍼 파라미터 concat2, fine-tuning: method 2, dim[1200, 600], drop- out[0.2, 0.2], alpha 0.1을 이용하였다).

그림 4는 디코더의 포인팅 출력에 대한 얼라인먼트 점수를 나타내며, 가로축은 디코더의 입력열이고 세로축 은 인코더의 입력열이다. 디코더의 입력인 “작가/NNG”

는 인코더 입력 중 “선생/NNG”에 대한 위치를 0.9999 점으로 가리킨다. 그 다음 디코더 입력인 “선생/NNG”

는 인코더 입력 중 “앉/VV”의 위치를 0.9900점으로 가 리킨다. 디코더 입력 중 4번째 입력인 “벗/VV”은 인코

더 입력에서 “걸/VV”의 위치를 0.7014점, “/VV”의 위치를 0.2970점으로 가리키며, 더 높은 점수인 “걸 /VV” 위치를 디코더의 출력 결과로 결정한다. 표 8은 그림 4에 대한 인코더 입력과 디코더 입력, 디코더 정답

출력(Youtput), 디코더 예측 출력(Youtput) 등을 보이며, 디

코더 예측 출력은 실제로 디코더가 예측한 결과와 그에 해당하는 각 출력 위치(단어로 표현)의 얼라인먼트 점수 를 보인다.

그림 5는 디코더의 레이블 분류에 대한 얼라인먼트 점수를 보이며, 가로축은 디코더의 입력열이고, 세로축 은 의존 구문 분석 레이블 사전이다. 디코더는 높은 점 수로 디코더의 정답 출력열과 같은 디코더 예측 출력열 을 결과로 내보내고 있다. 표 9는 그림 5에 대한 인코더 입력과 디코더 입력, 디코더 정답 출력(Zoutput), 디코더 예측 출력(Zoutput) 등을 나타내며, 디코더 예측 출력은 실제로 디코더가 예측한 레이블 정보와 그에 해당하는 얼라인먼트 점수를 나타낸다.

6. 결 론

본 논문에서는 멀티 태스크 학습 기반 포인터 네트워 크를 이용하여 한국어 의존 구문 분석을 수행하였다. 실 험 결과, 본 논문에서 제안한 방법이 일반 포인터 네트 워크에서 수행하지 못하던 의존 관계 레이블 분류에 대 하여 의존 관계 위치를 찾는 문제와 함께 수행이 가능 하였다. 한국어 의존 구문 분석에 대한 성능은 입력기준 Dp0에서 concat2의 얼라인먼트 스코어 방법과 히든 유 닛 [1200, 600], 드랍아웃 [0.2, 0.2]에서 fine-tuning을 수행하였을 때 UAS 91.79%, LAS 89.48%으로 가장 좋은 성능을 보였으며, pre-training 및 fine-tuning을 수행하지 않아도 같은 하이퍼 파라미터에서 UAS 91.72%, LAS 89.38%로 좋은 성능을 보였다.

본 논문은 어절의 구분을 <sp> 심볼로만 적용하였는

(9)

그림 4 한국어 의존 구문 분석 결과의 포인팅 얼라인먼트 점수(입력 기준 Dp0) Fig. 4 Pointing alignment score of Korean dependency parsing (input criterion Dp0)

표 8 Dp0 입력 기준을 따르는 의존 구문 분석의 포인팅에 대한 입력 및 출력 Fig. 8 Input and output for pointing of dependency parsing based on Dp0 input criterion

Encoder input

작가/NNG[0] <SP>[1] 선생/NNG[2] 님/XSN[3] 은/JX[4] <SP>[5] 코트/NNG[6] 를/JKO[7] <SP>[8] 벗 /VV[9] 어/EC[10] <SP>[11] 벽/NNG[12] 에/JKB[13] <SP>[14] 걸/VV[15] 고/EC[16] 는/JX[17]

<SP>[18] 책상/NNG[19] <SP>[20] 앞/NNG[21] 에/JKB[22] <SP>[23] 앉/VV[24] 아/EC[25] <SP>[26]

보/VX[27] ㄴ다/EF[28] ./SF[29] </S>[30]

Decoder input 작가/NNG 선생/NNG 코트/NNG 벗/VV 벽/NNG 걸/VV 책상/NNG 앞/NNG 앉/VV 보/VX

Decoder Youtput

(answer) 선생/NNG 앉/VV 벗/VV 걸/VV 걸/VV 앉/VV 앞/NNG 앉/VV 보/VX </s>

Decoder Youtput

(prediction, score)

선생/NNG 0.9999

앉/VV 0.9900

벗/VV 0.9859

걸/VV 0.7014

걸/VV 0.9998

앉/VV 0.9952

앞/NNG 0.9996

앉/VV 0.9996

보/VX 1.0000

</s>

1.0000

데, 향후 연구로는 Hierarchical Pointer Networks를 이용하여 어절을 구분할 예정이다.

References

[ 1 ] D. Hays, Dependency theory: a formalism and some observations, Language, pp. 511-525, 1964.

[ 2 ] O. Vinyals, M. Fortunato and N. Jaitly, Pointer Networks, Advances in Neural Information Pro-

cessing Systems, pp. 2674-2682, 2015.

[ 3 ] D. Bahdanau, K. Cho and Y. Bengio, Neural machine translation by jointly learning to align and translate, arXiv preprint arXiv:1409.0473, 2014.

[ 4 ] J. Li, E. Lee and J.H. Lee, Sequence-to-sequence based Morphological Analysis and Part-Of-Speech Tagging for Korean Language with Convolutional Features, Journal of KIISE, Vol. 44, No. 1, pp. 57- 62, 2017. (in Korean)

(10)

830 정보과학회논문지 제44권 제8호(2017. 8)

그림 5 한국어 의존 구문 분석 결과의 레이블 분류에 대한 얼라인먼트 점수(입력 기준 Dp0) Fig. 5 Labeling alignment score of Korean dependency parsing (input criterion Dp0)

표 9 Dp0 입력 기준을 따르는 의존 구문 분석 레이블 분류에 대한 입력 및 출력 Fig. 9 Input and output for labeling of dependency parsing based on Dp0 input criterion

Encoder input

작가/NNG[0] <SP>[1] 선생/NNG[2] 님/XSN[3] 은/JX[4] <SP>[5] 코트/NNG[6] 를/JKO[7] <SP>[8] 벗 /VV[9] 어/EC[10] <SP>[11] 벽/NNG[12] 에/JKB[13] <SP>[14] 걸/VV[15] 고/EC[16] 는/JX[17]

<SP>[18] 책상/NNG[19] <SP>[20] 앞/NNG[21] 에/JKB[22] <SP>[23] 앉/VV[24] 아/EC[25] <SP>[26]

보/VX[27] ㄴ다/EF[28] ./SF[29] </S>[30]

Decoder input 작가/NNG 선생/NNG 코트/NNG 벗/VV 벽/NNG 걸/VV 책상/NNG 앞/NNG 앉/VV 보/VX

Decoder Zoutput

(answer) NP NP_SBJ NP_OBJ VP NP_AJT VP NP NP_AJT VP VP

Decoder Zoutput

(prediction, score) NP 0.9983

NP_SBJ 0.9989

NP_OBJ 0.9999

VP 0.9992

NP_AJT 0.9993

VP 0.9993

NP 0.9987

NP_AJT 0.9999

VP 0.9999

VP 0.9999

[ 5 ] C. Lee, Named Entity Recognition using Long Short-Term Memory Based Recurrent Neural Network, Proc. of the KIISE Korea Computer

Congress 2015, pp. 645-647, 2015. (in Korean) [ 6 ] C. Park, K.H. Choi, C. Lee and S. Lim, Korean

Coreference Resolution with Guided Mention Pair

(11)

Model using Deep Learning, ETRI Journal, Vol. 38, No. 6, pp. 1207-1217, 2016. (in Korean)

[ 7 ] J. Bae and C. Lee, Korean Semantic Role Labeling using Stacked Bidirectional LSTM-CRFs, Journal of KIISE, Vol. 44, No. 1, pp. 36-43, 2017. (in Korean) [ 8 ] Y. Wu, M. Schuster, Z. Chen, Q.V. Le and M.

Norouzi, Google’s Neural Machine Translation Sys- tem: Bridging the Gap between Human and Machine Translation, arXiv preprint arXiv:1609. 08144, 2016.

[ 9 ] K. Choi and C. Lee, End-to-end Document Sum- marization using Copy Mechanism and Input Feeding, Proc. of the 28th Annual Conference on Human & Cognitive Language Technology, pp.

56-61, 2016. (in Korean)

[10] C. Lee, J. Kim and J. Kim, Korean Dependency Parsing using Deep Learning, Proc. of the 26th Annual Conference on Human & Cognitive Lan- guage Technology, pp. 87-91, 2014. (in Korean) [11] J. Li and J.H. Lee, Korean Transition-based

Dependency Parsing with Recurrent Neural Net- work, KIISE Transactions on Computing Prac- tices, Vol. 21, No. 8, pp. 567-571, 2015. (in Korean) [12] S.H. Na, Phrase-Based Dependency Parsing Using String-to-Dependency SMT, Proc. of the KIISE Korea Computer Congress 2015, pp. 657-659, 2015.

(in Korean)

[13] S.H. Na, K. Kim and Y.K. Kim, Stack LSTMs for Transition-Based Korean Dependency Parsing, Proc.

of the KIISE Korea Computer Congress 2016, pp.

732-734, 2016. (in Korean)

[14] S.H. Na, J.H. Shin and K. Kim, Improving Stack LSTMs by Combining Syllables and Morphemes for Korean Dependency Parsing, Proc. of the 28th Annual Conference on Human & Cognitive Lan- guage Technology, pp. 9-13, 2016.

[15] J. Nivre, Non-Projective Dependency Parsing in Expected Linear Time, Proc. of the ACL-IJCNLP, pp. 351-359, 2009.

[16] R. McDonald, K. Crammer and F. Pereira, Online Large-margin Training of Dependency Parsers, Proc. of the ACL, pp. 91-98, 2005.

[17] K. Cho, B. Van Merriënboer and C. Gulcehre, Learning phrase representation using RNN encoder- decoder for statistical machine translation, arXiv preprint arXiv:1406.1078, 2014.

[18] K. Yao, B. Peng, Y. Zhang, D. Yu, G. Zweig, and Y.

Shi, Spoken Language Understanding Using Longe Short-Term Memory Neural Networks, Spoken Language Technology Workshop (SLT), 2014 IEEE, pp. 189-194, 2014.

[19] J. Chung, C. Gulcehre, K.H. Cho, and Y. Bengio, Empirical Evaluation of Gated Recurrent Networks on Sequence Modeling, arXiv preprint arXiv:1412.

3555, 2014.

[20] The National Institute of the Korean Language, The 21 century Sejong plan. 2012. (in Korean)

[21] S. Lim, Y.T. Kim and D.Y. Ra, Korean Dependency Parsing Based on Machine Learning of Feature Weights, Journal of KIISE: Software and Applica- tions, Vol. 38, No. 4, pp. 214-223, 2011. (in Korean) [22] S.H. Na, J. Li, J.H. Shin and K. Kim, Stack LSTMs with Recurrent Controllers for Korean Dependency Parsing, Proc. of the KIISE 2016 winter confer- ence, pp. 446-448, 2016. (in Korean)

박 천 음 정보과학회논문지 제 44 권 제 5 호 참조

이 창 기 정보과학회논문지 제 44 권 제 1 호 참조

수치

그림  1  Gated  Recurrent  Unit Fig.  1  Gated  Recurrent  Unit
그림 2  멀티 태스크 학습 기반 포인터 네트워크 모델 구조 Fig.  2  Structure  for  pointer  networks  based  on  multi-task
표  6  멀티  태스크  학습  기반  포인터  네트워크에  대한  fine-tuning
표  7  한국어  의존  구문  분석  성능  비교(자동  분석  형태소  이용,  %)
+3

참조

관련 문서

In this paper, it is implemented the image retrieval method based on interest point of the object by using the histogram of feature vectors to be rearranged.. Following steps

In this paper, we propose a method to guarantee the system life as passive elements by using high efficiency operation and analog devices by tracking

In this paper, we extend approximation method of conic section by Bezier curve to sphere case by polynomial surfaces and we analyze the Hausdorff

In this chapter, we introduce unsupervised pattern recognition using a spiking neural network (SNN) based on the proposed synapse device and neuron circuit.. Unsupervised

In this context, this study would plan and realize ‘Object Method Projection Mapping’ by visualizing the reinterpreted objects’ meaning and project not on

Based on the analyses method adopted in this paper for estimating the convective heat transfer coefficient in the cold chamber, a closed-system, the

In this thesis, a method for obtaining model-based tuning rules for the PID controller are proposed incorporating with real-coded genetic algorithms.. First,

In this paper, we propose tree-based greedy algorithm to solve the minimum power broadcasting problem for minimizing the total transmit power on broadcasting in wireless