ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [논문] End-to-end Neural Coreference Resolution
    연구실 2020. 7. 1. 16:00

    0. 용어 소개


    coreference resolution(상호 참조 해결): 임의의 개체(entity)에 대해 다른 표현으로 사용되는 단어들을 찾아 서로 같은 개체로 연결해주는 자연어처리 문제

     

    다음과 같은 문장에서 가능한 span

    span: 한 개 이상의 단어로 이뤄진 명사구가 될 수 있는 단어들의 집합

    mention: 상호참조해결의 대상이 되는 모든 명사구(갓 볶은 원두로, 갓 볶은 원두로 만든 커피)

    head(중심어): mention에서 해당 구의 실질적인 의미를 나타내는 단어(갓 볶은 원두로 만든 커피)

    coreference(상호참조): 같은 개체를 가리키는 mention(갓 볶은 원두로 만든 커피, 카페인, 그것)

     

     

    1. Introduction


    • 최초의 end-to-end neural coreference resolution 모델
      • 그동안의 coreference 모델들은[1][2][3]syntactic parser 이용한 파이프라인 모델
        • mention detection(mention인지 아닌지 판별)
        • systactic features for clustering(head 단어 판별)
    • 본 논문에서는 이런 파서들을 사용하지 않고도 performance 향상시킴
      • 어떤 spanentity mention인지 아닌지,mention을 어떻게 클러스터링 할 지를 학습
    • 문장의 모든 span(최대 길이 이하)을 살펴보고, gold coreference cluster에서 선행 spanmarginal likelihood 최적화
    • 문서 내 텍스트들에 대한 span 벡터 임베딩 만들어 낸다.
      • 문맥에 의존적인 boundary representationhead-finding attention 매커니즘과 결합
    • Attention component은 기존의 파서 기반의 head-word matching feature(Durrett and Klein, 2013)과 비슷하지만, 연속적인 에러에 덜 영향을 받으며, attention의 가중치가 기존의 전통적인 headedness정의와도 상관관계가 있음을 밝혀냈다.
    • 모든 span 쌍을 계산하지 않고, spanmention scorepair-wise antecedent score 이용해 spanpruning
    • 기존의 OntoNotes benchmark에서 F1을 1.5 줄였으며, 5개 모델에 대한 앙상블에 대해서는 3.1만큼 줄였다.

     

    [1] Sam Wiseman, Alexander M Rush, and Stuart M Shieber. 2016. Learning global features for coreference resolution. arXiv preprint arXiv:1604.03035.

    [2] Kevin Clark and Christopher D. Manning. 2016a. Deep reinforcement learning for mention-ranking coreference models. In Empirical Methods on Natural Language Processing (EMNLP).

    [3] Kevin Clark and Christopher D. Manning. 2016b. Improving coreference resolution by learning entitylevel distributed representations. In Association for Computational Linguistics (ACL).

     

    2. Related Work


    • 상호참조해결에서 머신러닝 기법을 사용하게 된 것은 꽤 오래됨.
    • 하지만 상호참조해결’ task 자체가 복잡하기 때문에 hand-engineered 시스템을 사용한 기법이 최근까지도 사용
    • 그동안은 highly engineered mention proposal 알고리즘을 이용한 head feature 파서를 이용
    • 이런 파서를 이용한 파이프라인 구조는 문제점을 가짐.
      • 잘못된 파싱이 연속된 에러를 야기
      • 새로운 언어에 대해 일반화 하지 못함
    • Daum´e III and Marcu (2005): mention detection과 상호참조해결을 함께 한꺼번에 모델링 한 non-piplined system이 처음 제안
      • 문장의 왼쪽에서 오른쪽으로 탐색하며 coreference structure을 예측하는 검색 기반 시스템
    • 상호참조 해결의 종류:
      • Mention-pair classifiers(Ng and Cardie, 2002; Bengtson and Roth, 2008)
        • 문서 내 등장하는 모든 mention을 두 개씩 묶어 pair 만들어 상호참조해결 문제를 분류 문제로 처리하는 방법
      • Entity-level models(Haghighi and Klein, 2010; Clark and Manning, 2015, 2016b; Wiseman et al., 2016)
        • 선행사와 현재 등장한 명사 에 대해 상호참조가 가능하면 이 둘에 대하여 하나의 엔티티로 집합관계를 형성
        • 뒤에 명사와 앞서 생성된 엔티티에 있는 후보 멘션(candidates)과의 관계에서 이 둘은 엔티티의 속성 정보를 공유하여 서로 상호참조가 가능한지 확인
        • 상호참조가 가능하면 등장한 명사를 해당 엔티티로 포함시킨다.
      • Latent tree models(Fernandes et al., 2012; Bj¨orkelund and Kuhn, 2014; Martschat and Strube, 2015)
      • Mention-ranking models(Durrett and Klein, 2013; Wiseman et al., 2015; Clark and Manning, 2016a)
        • 문서 내 등장하는 모든 mention을 가장 높은 점수를 가진 antecedent mention에 할당하는 방법

    3. Task


    • D: document, speakergenre에 대한 정보를 메타데이터로 가짐
    • T: 문서 내 단어 갯수
    • N: T(T+1)/2, 문서 내 가능한 span 갯수
    • START(i), END(i): i번째 span의 처음 단어와 끝 단어 (1i N)
    • span i antecedent y_i할당하므로써 상호참조 링크를 표현
      • y_i  에 대해 Y(i)={ϵ, 1, …, i -1}
      • ϵ: dummy antecedent
        • 해당 spanentity mention이 아닌 경우
        • 해당 spanentity mention이지만 앞의 span상호참조 관계가 없는 경우(맨 처음 등장한 경우)

     

    4. Model

     


    • 요약

    maximum width 까지의 모든 가능한 span 을 고려하지만 , 그림에서는 일부만 표현

     

    • span embedding representation 계산
    • mention score 계산해 낮은 mention 점수를 받은 span들은 pruning
      • 수용 가능한 span들이 갯수만이 coreference decision 단계에서 사용

    • antecedent score 계산
    • spanmention 점수들과 pairwise antecedent score을 종합해 최종 상호 참조 점수 계산

     

    • Step1
      • bidirectional LSTM을 사용해 span representation 생성
        • span 내외의 어휘 정보를 인코딩
        • attention 매커니즘을 이용해 span head 단어 찾기
      • 낮은 점수를 받은 span들은 pruning

    • 1단계: Bi-LSTM을 이용해 모든 단어를 인코딩

    • δ∈{-1, 1}: LSTM 방향
    • x_t*: bi-LSTM의 양방향 결과를 합친 것
    • 모든 문장은 독립적인 LSTM을 사용
      • 문장 간 정보가 본 실험에는 크게 중요하지 않기 때문
    • 2단계: Attention이용해 head 단어 찾기

    • (x_i ) ̂: span i에 포함된 워드 벡터의 weighted sum
    • 구문론적 파서를 이용하지 않고 attention 매커니즘을 이용해 head word 찾는다.

     

    • 3단계: span i에 대한 representation g_i 생성

    • x_(START(i))*, x_(END(i))*: i번째 span의 맨 첫번째/마지막 단어의 representation을 의미
      • 개체 멘션이 되는 경우는 맨 첫 단어가 명사이거나 맨 끝 단어가 명사이어야 하기 때문
    • head 단어 벡터 (x_i ) ̂  representationhead 단어와 비슷한 표현을 가지도록 만들어 줌.
    • ∅(i): span i의 크기를 의미하는 feature vector

     

    • 2단계
    •  

    댓글

©hyunbul