본문 바로가기
논문리뷰

[논문 리뷰 #4] Attention Mechanism에 따른 포인터 네트워크 기반 의존 구문 분석 모델 비교

by 나는 라미 2023. 5. 13.
728x90
반응형

Attention Mechanism에 따른 포인터 네트워크 기반 의존 구문 분석 모델 비교

: 한미래, 박성식(건국대학교 인공지능학과), 김학수(건국대학교 컴퓨터공학부)

(제 33회 한글 및 한국어 정보처리 학술대회 논문집(2021년))

 

00. 서론

최근 딥러닝을 활용한 의존 구문 분석 연구가 활발히 진행되고 있다. 딥러닝을 활용한 의존 구문 분석은 크게 3단계로 수행되는데 마지막 단계인 지배소 및 의존 관계 결정 단계에서 포인터 네트워크를 활용하는 방법이 사용된다. 포인터 네트워크는 내부적으로 어텐션(attention)기법을 응용해 동작한다. 이는 어떤 어텐션 기법을 사용하는지에 따라 포인터 네트워크의 성능이 달라지는지를 의미한다. 이 논문은 포인터 네트워크 기반 한국어 의존 구문 분석의 지배소 및 의존 관계 인식 단계에서 결정적 역할을 하는 어텐션 기법들을 비교 분석하여 제시하고 있다.

 

01. 의존구문분석

의존 구문 분석은 문장 내 의존소(dependent)지배소(head) 사이의 관계를 기반으로 문장 구조를 분석하여 구조적, 의미적 중의성 문제를 해소하는 작업으로 다양한 자연어처리 태스크에 활용된다.

최근 딥러닝을 활용한 한국어 의존 구문 분석 연구가 활발히 진행되고 있으며, 딥러닝을 활용한 한국어 의존 구문 분석은 대부분 3단계로 구성된다.

 

1.어절 표상 단계

의존소와 지배소 간의 관계를 인식하는데 필요한 자질들을 추출하여 어절의 벡터 표현을 얻어내는 단계이다. 어절 단위의 임베딩을 구한다는 말과 같은 말이다. 최근 대용량 말뭉치로 사전 학습한 언어 모델이 자연어처리 연구 전반에서 큰 성과를 거두면서 한국어 의존 구문 분석 모델의 어절 표상 단계에서도 많이 사용된다. 사전 학습 언어 모델을 통해 얻어낸 풍부한 언어 자질 이나 형태소 품사 정보 등의 의미적 자질이 활용된다.

2. 문맥 반영 단계

각 어절의 주변 문맥을 고려하는 단계이다. 어절 표상 단계에서 얻은 언어 자질을 순환 신경망(RNN)에 입력하여 문맥을 인코딩한다.

3. 지배소 및 의존 관계 결정 단계

각 어절의 지배소를 파악하고 의존소와 지배소 간의 관계를 식별하는 단계이다. 이 단계에서는 포인터 네트워크(Pointer Network)를 활용하는 방법이 주로 연구되고 있다.

 

02. 연구목적

 

 포인터 네트워크란 S2S(seq2seq)모델의 변형으로, 모델의 각 출력 스텝마다 입력 열의 특정 위치를 포인팅하도록 설계된 기술을 말한다. 어텐션 값을 계산해 가장 큰 값에 연결하도록 하며, 디코더의 출력이 인코더의 출력을 포인팅하게 된다.

 이 논문은 포인터 네트워크 기반 한국어 의존 구문 분석에 가장 효과적인 어텐션 기법을 선별하기 위해 다양한 어텐션 기법을 비교 실험하여 제시하고 있다.

 

03. 포인터 네트워크 기반 의존 구문 분석 모델

 

 가장 먼저 사전 학습 언어 모델을 기반으로 어절 표상을 진행한다. LSTM 인코더-디코더 계층을 통해 문맥 인코딩을 수행한 후, 문맥 인코딩 벡터를 입력으로 포인터 네트워크에서 지배소 및 의존 관계를 결정하게 된다.

 

 

 입력 문장은 wordpiece단위로 분절한 후 사전 학습 언어 모델에 입력한다. 출력된 wordpiece단위의 벡터들의 평균을 구해 어절 임베딩을 구성한다. (다음, ##에)의 각 벡터들의 평균을 구해 (다음에)라는 어절의 임베딩을 얻는 구조이다. 이후, 형태소 품사 임베딩 벡터와 연결(Concatenate)하여 어절을 표상한다. 여러 형태소 품사가 연결된 어절의 경우 각 어절의 첫 번째 형태소의 품사 정보만을 자질로 사용한다. 얻어낸 어절 표상을 bi-LSTM 계층에 통과 시켜 각 문장의 구조적인 정보를 반영한다.

 

 

 지배소 및 의존 관계를 결정하는 단계에서는 포인터 네트워크 모델을 사용한다. 포인터 네트워크는 어텐션 기법을 통해 디코더 출력의 각 스텝에 대응되는 인코더 출력 값을 포인팅 하도록 한다. LSTM의 인코더와 디코더의 출력이 가지는 상호 의존성을 어텐션 기법을 통해 계산하여 각 디코딩 스텝마다 가장 관련성이 톺게 측정되는 인코딩 위치를 해당 어절의 지배소로 선택하고, 의존 관계 인식을 위해서 어텐션 기볍의 결과 값을 사용한다.

 

 위의 식은 여러 어텐션 기법의 공통적인 연산 과정이다. 쿼리($Q$)는 LSTM 디코더의 출력값, 키($K$)와 밸류($V$)는 LSTM 인코터의 출력값을 이용한다. 어텐션 연산을 통해 현재 시점의 디코더 출력값과 모든 시점의 인코더 출력값 사이의 연관성을 계산한다. 어텐션의 결과 값인 $S$와 $O$는 각각 어텐션 점수와 단어 확률 분포를 반영한 어텐션 출력 벡터를 의미한다. $f(Q,K)$의 연산 결과인 $S$가 가장 높게 측정된 어절을 지배소로 선택한 후 $Softmax(S)\bullet V$의 연산 결과 $O$를 이용해 각 어절과 지배소 간의 의존 관계를 판단한다.

 

 비교를 위한 어텐션 기법은 다음과 같은 3가지이다. 스케일드 닷 프로덕트 어텐션(scaled dot-product attention), 멀티헤드어텐션(multi-head attention), 바이어파인 어텐션(biaffine attention) 기법을 각각 적용하여 비교 분석한다.

 

 

1. 스케일드 닷 프로덕트 어텐션(scaled dot-product attention)
 $f(Q,K)$는 내적(dot-product) 연산을 통해 주어진 $Q$에 대해서 모든 $K$와의 유사도를 구하여 지배소 선택을 위한 $S#값을 얻는다. 분모에 위치한 $\sqrt{d_k}$는 어텐션 점수를 정규화하기 위한 값이며, 쿼리($Q$)와 밸류($V$)의 히든 사이즈를 의미한다.


2. 멀티헤드 어텐션(multi-head attention)
 멀테헤드 어텐션은 여러개의 헤드에서 스케일드 닷 프로덕트 어텐션을 병렬적으로 수행하여 다양한 특징에 집중한 정보를 수집한다. $Q, K, V$를 사전에 정의한 헤드의 개수($n$)로 분할한다. 분할된 $Q, K, V$에 대해서 헤드의 개수만큼 독립적인 스케일드 닷 프로덕트 어텐션 연산을 수행한다. 연산이 완료 된 후, 산출된 $n$개의 $head_i$를 모두 연결하고 선형층(linear layer)에 입력하여 최종 어텐션 결과인 $O$를 출력한다. $W$는 선형층의 학습을 위한 파라미터를 의미한다. 각 헤드 어텐션에서의 결과 $f_i(Q,K)$를 모두 더해서 지배소 위치 예측에 사용하고, $O$는 의존 관계명 예측에 사용한다.

 

 

3. 바이어파인 어텐션(biaffine attention)
 bilinear 연산을 통해 입력 열에 대한 의존소와 지배소의 문장 구조 및 의존 관계 점수를 계산한다. $U, W, b$는 학습 가능한 파라미터로, $U$ 는 bilinear 연산의 가중치, $W$는 linear 계층의 가중치, $b$는 편향(bias)에 해당한다.

 

 

04. 실험 결과

 

 실험 및 평가를 위해 KLUE 데이터 셋을 사용한다. KLUE 데이터 셋은 Wikitree 와 Airbnb에서 추출한 문장들로 구성되었으며, Wikitree의 문장들은 사전 검수를 거쳐 문법 오류가 적은 반면, Airbnb의 문장들은 사전 검수를 거치지 않아 상대적으로 구어체에 가깝다. 

어절 표상에 사용된 사전 학습 언어 모델은 KLUE RoBERTa-large 모델이다. 

 

 

의존 구문 분석 성능 평가 척도는 Unlabeled Attachment Score(UAS), Labeled Attachment Socre(LAS)를 사용한다. UAS는 지배소(head)와 의존소(dependent)의 관계가 제대로 연결되어 있는지 만을 고려하는 점수이다. LAS는 지배소와 의존소의 연결과 더불어 지배소와 의존소의관계 태그(relation tag)가 함께 고려된 점수를 의미한다. UAS와 다르게 의미론적 관계가 포함된 점수이다.

 

 표 2를 통해 포인터 네트워크 모델이 UAS 점수가 가장 높은 바이어파인 어텐션(biaffine attention)을 사용하는 것이 어절의 지배소를 결정하는데 가장 효과적인 것을 알 수 있다. 어절과 지배소 사이의 의존 관계를 인식 하는 과정에서는 LAS 점수가 가장 높은 멀티헤드 어텐션(multi-head attetion)이 가장 적합한 것을 알 수있다. 의존 관계 인식을 위해서 다양한 시강에서 정보를 수집하는 방식의 멀티헤드 어텐션이 가장 효과적인 것으로 판단한다. 

 

 

05. 끝

논문을 끝까지 이해하기 위해서는 각 어텐션 기법에 대한 이해가 필요하다. 어텐션에 대한 공부를 선행하고 난 다음 읽으면 더 잘 이해될 것이다. 포인터 네트워크를 활용한 모델 구조에서 지배소 결정에는 바이어파인 어텐션이, 의존 관계 인식에는 멀티헤드 어텐션이 가장 좋은 성능을 보였다는 것을 제시하는 논문이다. 후에 포인터 네트워크를 사용하는 연구를 진행한다면 이를 활용해 각 목적에 맞게 어텐션을 골라 사용하여 좋은 성능을 보이도록 하는 것이 좋겠다.

728x90
반응형

댓글