NL-112, Zero-Resource Cross-Lingual Named Entity Recognition (2020-AAAI)
◼️ Comment
- 이 논문은 제목그대로 NER 태깅이 안된 언어에 대해 모델을 학습하는 것이다.
- 설명은 이해하기 쉽게 영어/한국어 나눠서 해보자.
- 논문에서 다루는 개념이 꽤 많고 해서 어렵게 느껴진다.. 완벽히 이해를 하진 못한걸로...
- 이 논문의 문제 정의는 다음과 같다.
- 태깅된 영어 데이터세트 & 한국어 코퍼스가 있다.
- 여기서 한국어 NER 태깅 모델을 학습하는게 목표라고 보면 된다.
- 단순히, 이 논문을 안보고 문제를 해결한다면 다음의 방법도 있을 것 같다.
- 1) 비병렬 데이터세트로 번역기를 만든다. (style transfer처럼)
- 2) 영어 NER 태깅 시스템을 만든다.
- 3) 테스트시, 한국어->영어->단어 태깅->영단어를 한국 단어와 매칭 느낌으로 할 수 있을 것 같다.
- 이 논문에서는 크게 3가지 스텝이 있다.
- 1) 영어 NER 태깅 모델 학습
- 2) 영단어 <-> 한국단어를 매칭시키는 매트릭스 찾기
- 3) augumentd fine-tuning
- 하나씩 살펴보자. 먼저 1)
- 영어 NER 태깅 모델은 이미 있던 연구 방법인 LSTM+CRF 모델을 쓴다.
- 2) 영단어<->한국단어 매칭
- 정확히는 단어 번역이 아니고, word embedding을 transition 시키는 것이다.
- 즉, "I"의 eng embedding = "나"의 kor embedding을 매칭시키도록 하는 매트릭스 W을 학습하는 것이다.
- 각 단어 embedding은 영어코퍼스, 한국어코퍼스에서 따로 계산한다.
- 2-1) 그리고 식3, 4로 W을 학습시킨다.
- 그냥 W을 써도 되는데, 여기서는 이것을 향상시킨다. (사실 이 방법은 이 논문이 최초가 아니고 본문에 단 링크의 논문에서 제시한 방법이다.)
- 2-2) CSLS(Cross-domain Similarity Local Scaling)을 이용해서 영단어와 한국단어 사이를 매칭시킨다.
- 기본적으로는 주어진 영단어의 eng embedding x W와 kor embedding이 가장 근사한 한국단어를 찾으면 된다.
- 하지만, 이렇게 찾으면 뭐가 문제가 있다고 해서 CSLS의 방식으로 loss을 정의한 것으로 찾으면 된다.
- 2-3) 그러면 각 단어끼리 매칭이 될 텐데, 여기서 영어와 한국어 embedding을 모아둔 X와 Y을 만들어서 Procrustes solution을 구한다.
- RX=Y가되는 R의 해를 찾는 방법이다.
- 이렇게 구한 R이 새로운 W가 되고, 2-2)와 2-3)을 반복하면 향상된 W가 되는 것이다. (몇 번이나 반복하는지는 언급안됨)
- 3) augumented fine-tuning (식 7)
- 이제 쉽게 생각하면 다음과 같은 학습을 할 수 있다.
- "MS<ORG> is good"가 들어오면 "엠에스<ORG>은 좋다"라고 word transition을 통해 수도 레이블링을 하고 학습할 수 있는 것이다.
- 하지만, 이렇게 하면 당연히 문제가 있다.
- 언어별로 순서가 다를테니, 문제가 발생
- NER 태깅을 고려한 transition이 아니다.
- 따라서 다음의 방법들이 들어가는 것이다.
- character embedding 공유 (이것은 사실 알파벳이 공유된 언어들끼리만 가능하다고 하다.)
- 따라서 한국어와 영어 사이는 이 방법을 못 씀.
- 영어와 스페인어 이런거는 가능
- 영어 feature embedding을 target embedding에 넣어서 사용 (그림 1에서 위쪽의 노란박스)
- 즉 결론을 지으면 3)이 최종 학습 개념이고 다음과 같이 진행될 것이다.
- "An apple<과일> is good for people" --> "사과는<과일> 사람에게 좋다."
- "An apple<과일> is good for people" 로 영어 NER 모델 학습
- 이 때, eng word embedding과 char embedding 사용
- "사과는<과일> 사람에게 좋다."으로 한국어 NER 모델 학습
- 실제로, 이 문장이 들어가는 것이 아니고
- 영어 문장의 eng word embedding->kor word embedding을 변환시킨걸 사용
- 마찬가지로 char embedding 사용
- 영어 feature embedding을 한국어 NER 모델에 활용
- 추가적으로, 학습할 문장 길이가 길면 노이즈가 많이 낄텐데, 이를 설정할 테크닉이 있다. (아래 본문 참고)
- 궁금한 부분
- Procrustes solution는 SVD을 해야되는데, 단어 개수 및 embedding이 클텐데계산 비용이 많이 들텐데 가능한 부분인가?
- 한국어 테스트할 땐, 영어 feature embedding이 없을텐데 어떻게 처리하는가?
- 학습 때와 반대로, kor embedding->eng embedding->eng featrue embedding을 사용하는 것인가?
0. Abstract
- 최근에, 뉴럴 방법들이 manually crafted features의 필요 없이 많은 언어들의 NER 테스크에서에서 SoTA 결과들을 달성해왔다.
- 그러나, 이러한 모델들은 여전히 manually annotated training 데이터를 필요로하고, 이는 많은 언어들에서 가능하지 않다.
- 이 논문에서, 우리는 unsupervised cross-lingual NER 모델을 제안하여, 한 가지 언어로부터 NER knowledge을 다른 언어로 transfer을 할 수있게한다.
- 이는 어떠한 bilingual dictionary 혹은 parallel data에 대한 의존없이 완벽히 unsupervised way이다.
- 우리의 이것을 모델은 word-level adversarial learning과 parameter sharing과 feature agumentation을 가진 augmented fine-tuning을 통하여 달성한다.
- 5가지 다른 언어들에대한 실험은 우리의 접근법의 효율성을 보여주고, 기존의 모델들보다 good margin만큼 더 좋고 각 언어 쌍에 대해 새로운 SoTA을 달성한다.
1. Introduction
- Named-entity recognition (NER)은 tagging task로 locate을 찾고 텍스트안의 named entities을 predefined types (person, organization, location)으로 분류하는 것이다.
- 이것은 챌린지한 문제다. 왜냐하면 대부분 언어들에대해 named entitiy의 일부분인 단어들의 구체적인 패턴을 학습할만큼 충분한 레이블링된 데이터가 있지 않다.
- names을 구성하는 요소는 광범위하고 종종 unconstrained variation이 있기 때문에 작은 데이터세트로부터 일반화하는 것은 또한 어렵다.
- 전통적인 방법들은 주의깊에 디자인된 orthographic features와 language 혹은 domain-specific knowledge sources like gazetteers에 의존한다.
- 지속적인 뉴럴 쓰나미와 함께, 최근 접근법은 딥 뉴럴 네트워크들을 사용하여 informative features을 설계하거나 knowledge sources을 구성하는 expensive steps을 우회한다.
- 그러나, 그들의 성공에 중요한 것은 label된 학습 데이터의 많은 양의 사용이다.
- 불행히도, 많은 새로운 언어에 대한 labeled datasets을 설계하는 것은 비싸고 시간이 많이 소요되고 우리는 annotation을 하기 위해서는 공정히 교육받은 사람들이 필요하다.
- 많은 언어들은 named entities을 가진 annotated 적절한 코퍼스가 부족하기 때문에, cross-linugal transfer learning을 위한 모델 설계의 노력이 필요하다.
- 이것은 우리가 source language (예. 영어)로부터 annotated data을 활요하게해서 target language (예. 독일)의 named entities을 인식하는 흥미로운 솔루션을 제공한다.
- 1) cross-lingual NER 시스템을 설계하는 한 가지 가능성있는 방법은 학습을 정규화 하기 위한 제약으로써 target language에 대한 knowledge을 인코딩하는 것이다, 이는 이전의 POS tagging에서 시도했던 방법이다.
- 그러나 이를 위해서는 대상 언어에 대한 광범위한 지식이 필요합니다.
- 2) 다른 방법은 cross-language projection을 수행하는 것이다.
- 대부분의 projection-based 방법들은 parallel sentence-aligned bilinugal corpus 혹은 bi-text을 사용한다.
- 예를 들어, Yarowsky(2001)은 bi-text의 enlgish 쪽에서 English NER tagger을 사용한다. 그리고나서 이것의 token-level predictions을 target side로 project하고 마침내 NER tagger을 그들에 대해서 학습시킨다.
- Wang and Manning (2014)은 모델의 예측을 project하고 그들을 바로 projecting labels 대신에 constraints로 사용한다. 그래서 언어간에 information와 uncertainty을 더 잘 transfer할 수 있다.
- NER tags와 cross-lingual word alignments의 joint learning은 (Wang, Che, and Manning 2013)에의해 제안되었다.
- 전체적으로, 이러한 방법들은 한 쪽 사이드에서 NER tags을 가진 양방향 텍스트를 필요로하고, 이는 low-resource languages에 일반적이지 않다.
- sentence-aligned parallel corpora은 종종 low-resource 언어들에 대해 사용가능하지 않으며, 이러한 코퍼라를 설계하는 것은 NER 데이터세트 만드는 것도 비용이 비싸다.
- 즉 패러프레이징 같이 문장<->문장 의 병렬코퍼스가 필요하며, 한 쪽 사이드에는 NER이 태깅된 데이터세트가 필요하다는 것은 실제로 쉽지 않다는 것!!
- 최근에, 연구자들은 low-resource languages에 대한 cross-lingual NER 모델들을 제안해왔다.
- Lin et al. (2018)은 multi-lingual multi-task 아키텍쳐를 제안해서, supervised NER 모델들을 target 언어에서 최소한의 레이블된 데이터에 대해서 개발한다.
- 3) Xie et al. (2018)은 source language tags을 target language에 word-to-word translation을 통하여 projecting을 하여 unsupervised transfer model을 제안한다.
- 여기서 unsupervised word translation model of Conneau et al. (2017)을 사용한다고 한다.
- 그러나, 이러한 접근법은 많은 key limitation이 있다.
- 먼저, 각 targe language에서, 그들은 source에서 target으로 번역이 필요하고 새로운 NER 모델의 학습이 필요하다.
- 여기에서, 그들은 vocabulary items에대해 nearest neighbour search을 기반으로한 translation dictionary을 미리 계산해야하고, 이는 종종 계산이 비싸다.
- 이것은 scale time과 memory-wise을 어렵게 만든다.
- 게다가, 이는 종종 가장 좋은 모델을 선택하기 위해 target 언어로 레이블링된 dev 세트를 요구한다.
- 그래서, translation process는 unsupervised임에도 불구하고, 그들의 NER 모델은 완벽한 unsuperivsed는 아니다.
- 또한, target 언어 NER 모델의 학습은 source에 대한 어떠한 knowledge 없이 수행된다.
- Second-Language Acquisition (SLA)의 Comprehensible Output (CO) 이론 (Swain and Lapkin 1995)은 “learning takes place when a learner encounters a gap in his or her linguistic knowledge of the second language"라고 말한다.
- 이 gap을 인정함으로써, learner은 이를 인식하고 출력을 수정함으로써, 그는 language에 대한 새로운 무언가를 배울 수 있다.
- 즉, SLA에서, first 언어는 second 언어를 배우는데 중요한 역할을 한다는 것이다.
- 이 논문에서, 우리는 unsupervised (or zero-resource) cross-lingual neural NER 모델을 제안하고, 이는 source language로부터 labeled 데이터를 이용해서 target language을 위한 모델 학습이 가능하게 한다.
- SLA의 CO에서 영감받아, 우리는 first language에 대한 것을 완전히 까먹는대신, first language의 supervision아래에서 second language task을 배우는 것을 제안한다.
- 그래서, word- or phrase-based translation대신, 우리는 먼저 source language에서 base NER 모델을 학습하고나서, 두 언어들이 있을 때, objective을 최대화하도록 base 모델을 조정한다.
- 우리의 프레임워크는 두 개의 인코더들을 가진다.
- 하나는 source languae에 대한 것
- 다른 하나는 target language에 대한 것
- 우리의 source 모델은 bidirectional LSTM-CRF을 기반으로하고, 이는 target model에 2개의 steps으로 transfer된다.
- 우리는 먼저, word-level adversarial training을 통하여 mono-lingual word embeddings을 common space로 project한다.
- word-level mapping은 두 언어들 사이의 초기 cross-linugal links을 야기하지만, NER 정보를 고려하지 않는다.
- cross-lingual 셋업에서의 Transferring task 정보는 언어들이 word order가 언어별로 다양하기 때문에 특별히 챌린지하다.
- 이것을 해결하기 위해, 우리는 파라미터 공유와 feature augmentation을 이용한 augmented fine-tuning 방법을 제안하고, target 모델을 source model의 supervision에서 학습한다.
- In summary, we make the following key contributions:
- We propose a novel unsupervised cross-lingual NER model, assuming no labels in target language, no parallel bi-texts, no cross-lingual dictionaries, and no comparable corpora. To the best of our knowledge, we are the first to show true unsupervised results (validation by source-language) for zero-shot cross-lingual NER.
- Our approach is inspired by the CO theory of how humans acquire a second language, which enables easy transfer to a new language. Our approach only requires the tuning of the pre-trained source model on the (unlabeled) target data.
- We systematically analyze the effect of different components of the model and their contributions for transferring the NER knowledge from one language to another.
- We report sizable improvements over state-of-the-art cross-lingual NER methods on five language pairs encompassing languages from different families (2.43 for Spanish, 2.21 for Dutch, 6.14 for German, 7.1 for Arabic, 5.73 for Finnish). Our method also outperforms the models that use cross-lingual and multilingual external resources.
- We have released our code for research purposes.
2. Problem Definition
- 우리의 objective는 소스 언어의(즉, 영어) NER 지식을 타겟 언어 (예. 독일어)로 unsuperivsed 방법으로 transfer하는 것이다.
- 그렇게하는 동안 우리는 또한 가능한 솔루션의 풍경을 제공하고 다양한 솔루션 단계와 신경 모델의 다양한 구성 요소의 중요성을 분석하고자합니다.
- 우리는 다음과 같은 가정을 한다.
- 우리는 source와 target 언어들의 mono-lingual corpora에 접근할 수 있어서 fasttext와 같은 pretrained word embeddings을 만들 수 있다.
- 학습에서, 우리는 소스 언어 데이터세트에 대해서만 NER labels을 가진다고 가정한다.
- 우리는 모델 선택에 의해 두 가지 validation 시나리오를 고려한다.
- 우리는 labeled target 언어 validation set에 접근할 수 있다.
- 오직 source 언어 validation set만 가능하다.
- cross-lingual models을 학습하는 것은 두 가지 fundamental steps과 연관있다.
- 소스와 타겟 언어사이의 mapping을 배우는 것
- task objective을 최대화하도록 매핑된 resources을 재학습하는 것
- 이 두가지 steps은 분리되거나 같이 될 수 있다.
- 예를 들어, Xie 2018은 먼저, source 시퀀스들을 target word-by-word로 번역한다. (step i)
- 그리고 나서, 그들은 target 언어 NER 모델을 번역된 텍스트와 projected NER tags로 학습한다. (step ii)
- 그러나, 이전에 언급했듯이, 이 접근법은 여러 한계점이 존재한다.
- 게다가, (번역된) 소스 시퀀스에 대한 학습은 시퀀스 인코더가 좀 더 소스 언어 순서에 의존하도록 만들고, 이는 타겟 언어에 대한 노이즈를 유발할 수 있다.
- 반대로, 우리는 mapping과 task transfer을 같이 수행하는 것을 제안한다.
- 우리의 모델은 두 개의 인코더들로 구성된다.
- 하나는 소스 언어에 대한거고 다른 것은 타겟 언어에 대한 것
- 우리는 먼저, 소스 언어에대해 base NER 모델을 학습하고, adversarial learning과 augmented fine-tuning을 통하여 타겟 모델을 같이 학습한다.
- 이 방법은, 모델이 소스와 타겟 시퀀스들을 같이 학습하게 한다.
- 따라서, 우리는 먼저 우리의 base 모델을 소개하고나서 우리의 novel unsupervised cross-lingual transfer 접근법을 소개한다.
3. Our Source (Base) Model
- 우리의 소스 (base) 모델은 Lample (2016)과 같은 구조를 가진다. (그림 1의 왼쪽)
- 입력 문장 s = (w1, . . ., wm)이 주어지면, 우리는 먼저 각 토큰 wk을 character-level bi-LSTM으로 인코딩하고, 이는 token representation
을 연속적으로 현재 input character representation와 이전 hidden state의 양방향을 결합하여 얻는다.
- character bi-LSTM (그림1의 아래)는 orthographic 속성들 (예. 대문자, 접두사, 접미사)을 캡쳐한다.
- 각 토큰 wk에 대해, 우리는 word embedding
을 갖고 이는 pretrained word embedding matrix로부터 가져온다.
- pretrained word vectors은 단어들의 distributional semantics을 캡쳐한다.
- 우리는 단어의 character-level reprsentation와 word embedding을 concat하여 combined representation xk = [
,
]을 얻는다.
- X = (x1, . . ., xm)은 문장에서 words의 representation을 말하며, 우리는 character biLSTM과 embedding lookup으로부터 얻는다.
- X는 그리고나서, 또 다른 word-level bi-LSTM으로 들어가며, 이는 또한 연속적으로 처리하여 단어들의 contextualised representations을 얻는다.
- word-level bi-LSTM은 hidden layers을 통하여 정보를 전파하여 contextual information을 캡쳐하고, NER classification을 위한 feature로 직접적으로 사용할 수 있다.
- 그러나, 이것의 모델링의 강점은 출력에서 모델 일관성을 위해 global inference을 사용하는 structured models에 비해 한계가 있고, 특히 NER과 같은 출력 레이블사이의 dependencies이 있는 테스크에서 그렇다.
- 따라서 Softmax 레이어로 단어를 independently하게 분류하는 대신 CRF 레이어와 공동으로 모델링합니다 (Lafferty et al. 2001).
- input-output sequence pair (X, y)에 대해 다음과 같이 결합 확률 분포를 정의합니다.
- Lample et al. (2016), 우리는 CRF 레이어로 전달하기 전에 단어 표현을 변환하기 위해 point-wise dense layer를 사용합니다.
- 나중에 설명하는 것처럼 dense layer은 두 인코더가 작업 정보와 공통 언어 속성을 공유하는 교차 언어 모델에서 공통 인코더로 작동합니다.
4. Our Cross-Lingual Model
- 우리의 주요 목표는 소스와 타깃 언어들 사이의 NER 분포들의 매핑을 배우는 것이다.
- NER에 대한 뉴럴 접근법들은 fixed or contextualized pretrained embeddings에 과하게 의존한다.
- 그러나, 우리는 두 개의 다른 언어들에 각각 embeddings을 배울 떄, 그들의 distribution spaces은 관련된 언어들이라 해도 매우 다르다.
- 예를 들어, 그림3a는 영어와 스페인어에대한 NER tagged mono-lingual embedding에서 t-SNE plot을 보여준다.
- 두 distributions에 대한 매핑은 실제로 매우 챌린지한 테스크이고, 병렬 데이터나 데이터가 주어지지 않는 unsupervised setup은 특히 어렵다.
- 문제는 매핑이 NER 정보도 반영해야하는 요구로 인해 더욱 챌린지하다.
- NER의 효과적인 모델링은 이는 일반적으로 두 언어들 사이에서 차이가 있는 연속적인 dependencies을 고려를 요구한다.
- 그림 1은 우리의 cross-lingual NER 모델의 전체적인 구조를 보여준다.
- 우리는 3가지 새로운 요소를 base model을 추가한다.
- (i) a separate encoder for the target language with shared character embeddings (box on the right) followed by a target-specific dense layer,
- (ii) word-level adversarial mappers that can map word embeddings from one language to another (shown in the middle of the two boxes), and
- (iii) an augmented fine-tuning method with parameter sharing and feature augmentation.
4.1 Target Encoder with Shared Character Embedding
로 파라미터화된 우리의 타겟 인코더는 소스 인코더랑 같은 구조를 가진다.
- 공유하지 않고 분리된 인코더를 가지는 것은 우리는 고유 언어의 분명하게 구체적인 특성 (예. 형태, 어순)을 모델링할 수 있다.
- 그러나, 이것은 또한 두 인코더들 사이의 NER knowledge을 효과적으로 공유하는 방법에 대한 추가적인 챌린지를 추가한다.
- cross-lingual mapping을 통하여 지식 공유를 촉진시키기 위해, 우리는 common embedding matrix을 정의함으로써 두 언어들의 character embeddings을 공유한다.
- 두 언어들이 aplhabets 혹은 words을 공유한다면, 이러한 common features은 매핑을 배우기 전에 사용될 수 있다.
4.2 Word-level Adversarial Mapping
- character embeddings을 공유하는 것은 오직 언어들이 alphabets을 공유하는 언어들에서만 작동한다.
- 즉 영어와 한국어 이런거는 안됨
- 알파벳들을 공유하는 언어들이라 할지라도, 이것은 오직 초기 매핑만 제공할 수 있고, 이는 종종 cross-lingual mappiongs을 학습하기에 충분히 좋지 못하다.
- unsupervised 방법으로 word-level 매핑을 배우기 위해, 우리는 adversarial 접근법을 적용한다. (Conneau et al. (2017))
- X = {x1, . . ., xn} and Y = {y1, . . ., ym}은 각각 소스와 타겟 언어에서 n개와 m개 word embedding(d차원)이다.
- 우리는 X와 Y가 monolingual corpora로부터 독립적으로 학습된다고 가정한다.
- 우리의 목표는 mapping f(y)을 모든 yi에 대해 unsupervised way로 학습하는 것이다. (즉. 양방향 사전이 주어지지 않는다.)
- f(y)는 X에서 translation에 대응하는 것이다.
는 target에서 source로의 linear mapping weight을 의미하고
는 discriminator D의 (binary classifier) parameters을 의미한다.
- We define the discriminator and adversary losses as follows.
- P_
(src|z)는 D에 따라 z가 source (src=1)에서 왔는지, target-to-source mapping (src=0)에서 왔는지를 구별하는 것이다.
- mapper
는 멍청한 discriminator D와 함께 학습이 된다.
- 먼저 3번 식 설명을 해보자.
- 일단, 여기서
은 고정되고, 즉 target에서 source로 embedding 변환을 제대로 한다고 가정한 것이다.
- target embedding y를 x로 보내서 source embedding이 되지만 D입장에서는 변환된 embedding의 출러는 target이다라는 것을 학습시키는 것이다.
- 여기서 source와 target embedding은 word embedding이니까 고정의 개념이고, 즉, D가 제대로 embedding의 출처를 구별하도록 D의 파라미터가 학습되는 것이다.
- 3식의 오른쪽 term은 (변환되지 않은) 기본 embedding D을 구별하도록 학습하는 것이다.
- Adversarial training은 초기 word-level ampping을 제공하지만, 이는 충분히 좋지 않은 것이다.
- 4번식 설명을 해보자.
- refinement step은 다음과 같다.
- embedding spaces의 global properites을 고려하기 위해, initial mapping을 풍부하게 한다.
- 위의 식 3과 4로 인해
이 학습이 되지만, 좀 더 좋은 matrix을 위해 사용하는 것이라고 보면 된다.
- Conneau (2017)에 따라 우리는 Procrustes solution으로 refinement을 사용한다.
- 여기서, 우리는 먼저 우리의 adversarial training으로부터 learner mapper을 사용하여 seed dictionary을 야기한다.
- Procrustes solution: https://en.wikipedia.org/wiki/Orthogonal_Procrustes_problem
- 간략히 보면, RA = B가되는 R를 찾고 싶은 것이다. (없다면, RA-B가 최소화되는 X)
- 이 때 R^TR=I가되는 직교행렬이길 원하는 것이다.
- 수학적으로 다음을 찾으면 된다고 한다. M = BA^T라고 하자.
- M = U S V^T로 SVD을 한다.
- 여기서 나온 UV^T을 R로 설정하면 된다.
- common space에서 타겟 단어 (y)의 가장 가까운 소스 단어 (x)를 찾기 위해 CSLS (Cross-domain Similarity Local Scaling)를 사용합니다.
- CSLS: http://ziyangluo.tech/2020/06/20/CLWE-17-Mapping-14/
- CSLS는 여기서 설명한 논문에서 나온 거 같으며, 이 논문에서 말하는 단어치환은 여기서 유래된 것 같다.
- https://wiki.math.uwaterloo.ca/statwiki/index.php?title=Word_translation_without_parallel_data#Cross-Domain_Similarity_Local_Scaling_.28CSLS.29
- CSLS로 하고자 하는 것은 학습으로 구해진,
을 이용했을 때, source x와 target y의 단어가 잘 매칭이 안될 수도 있다는 것이다.
- 즉, 소스단어와 타겟단어를 잘 매칭하기 위해 Wx-y가 최소화되는 것으로 찾지 않고, CSLS에서 말하는 식으로 매칭시키면 된다는 것이다.
- 즉 CSLS을 통해서 x1<->yi, x2<->yk 식으로 매칭되는 단어들을 찾는다는 것이다.
- 이때 사용되는 W은 위에서 학습된
이다.
- seed dictionary을 사용하여, 우리는 Procrustes solution을 적용하여 initial mappings
을 향상시킨다.
- CSLS을 통해만들어진 X와 Y의 쌍이 있을 것이다.
- 이 쌍들을 이용해
을 다시 구한다는 것이다.
- 여기서는 학습이 아니라, 행렬 계산으로 구해진다.
- 근데, 모든 단어들을 포함하는 행렬이라면 차원이 상당히 클 것이다.
- 거기서 SVD 계산이 가능한가?
- 우리는 이러한 fine-tuning을 번갈아 가면서 한다.
- 새롭게 학습된 mapping에서 CSLS을 사용한 새로운 dictionary을 야기하고, Procrustes solution으로 mapping을 향상시킨다.
- 소스 to target에 대한 mapper
은 source embeddings to target space로 가는 것으로 유사하게 학습된다.
4.3 Augmented Fine-tuning
- word-level adversarial training은 단어를 독립적으로 매핑합니다.
- 그러나, NER은 시퀀스 레이블링 테스크이고 word order은 언어에 따라 다르다.
- 게다가, word-level cross-lingual mapping은 어떠한 테스크 정보를 (NER tags) 고려하지 않고, 이것은 단순히 word translation model이다.
- 결과적으로, mappings은 여전히 NER tags에 기반한 alignments에 대해 부족하다.
- 이것은 그림 3b에서 볼 수 있으며, 여기서 words은 그들의 translations로 매핑되지만, 그들의 NER tags에 따라 cluster되지 않는다.
- taget 인코더에서 target language ordering 정보와 소스 모델의 NER knowledge을 transfer하는 것을 동시에 배우기 위해서, 우리는 새로운 augmented finetuning method을 제시하고, 이는 3가지 steps로 작동한다.
- (i) Source model pretraining through weight sharing.
- 우리는 먼저 NER 모델을 우리가 가진 source에 대해 학습한다.
- 우리의 목표는 2번째 step에서 source 모델을 target 언어 문장에대해 pseudo NER labels을 생성하는 것이다.
- 그래서, 우리는 source words의 mapped representations에 대해 학습한다.
- 여기서 Lis는 CRF classificaion loss로 식 2에서 P는 source의 훈련 샘플 수이다.
- 타겟의 word order은 일반적으로 소스와 다르다.
- 모델이 좀 더 타겟 문장들에 효과적이게 만들기 위해, 우리는 소스 인코더에서 character bi-LSTM와 word bi-LSTM의 forward와 backward layers의 파라미터를 묶음으로써 order invariant features을 촉진시킨다.
- 우리의 실험에서 이것의 효과성을 보여준다.
- 공유하는 것은 파라미터의 수를 줄여주고 여러 언어에서 더 나은 일반화를 달성하는 데 도움이됩니다 (Lample et al. 2018).
- 우리는 mapped source model을 pretrained model이고 단순히 θs로 파라미터화되었다고 한다.
- (ii) Generating pseudo target labels.
- 우리의 소스 모델은 cross-lingual space에서 학습되기 때문에, 이것은 곧바로 target sentences에 대한 NER tags 추론에 적용할 수 있다.
- 그림 3b에서 보여주듯이, word-level mapping은 좋은 initial alignments을 제공하고, 이는 bootstrap 학습을 위해 타겟 언어에서 pseduo training samples을 생성하는데 사용가능하다.
- 그러나, source model이 초기에 target language word order에 대한 어떠한 지식을 가지고 있지 않기 때문에, 이것은 target sentence의 길이가 증가할수록 noisy labels을 생성할 것이다.
- 예를 들어, 그림 2는 다른 언어쌍에서 다른 문장 길이에 대한 tagged target words의 올바른 비율을 보여준다.
- 우리는 문장이 짧을 수록 noise 비율이 줄어드는 것을 알고 길이가 늘어날수록 한 지점까지 증가한다.
- 효과적으로 우리의 모델들을 pseudo target labels에대해 학습하기 위해, 우리는 문장 길이를 기반으로한 stochastic selection method을 적용한다.
- 특별히, 우리는 랜덤으로 length threshold I를 uniform distribution U(min, max)에서 선택하고, 여기서 min과 max는 각각 문장 길이의 최소값과 최대값을 의마한다.
- 그리고나서, 우리는 우리의 모델들을 오직 최대길이 I words을 가지는 문장들에 대해서만 학습한다.
- 제한한 stochastic training 스케줄 길이는 모델이 short와 long 문장들 사이의 learning-inference gap을 해결할 수 있다.
- (iii) Joint training with feature augmentation.
- 우리는 우리의 target NER 모델을 feature augmentation으로 source model과 함께 학습한다.
- 각 source의 batch로부터, 우리는 우리의 source model을 최적화 한다. (식 6)
- pseudo labels을 가지는 각 target batch에 대해, 우리는 source와 target model을 같이 학습한다.
- 그리고 source encoder의 features은 target encoder로부터의 features로 augmented된다. (그림1의 오른쪽 위)
- The overall loss function of our model is:
- 여기서 Q는 훈련에 고려되는 대상 샘플의 수입니다.
- augmented features을 사용한 이 공동 훈련은 대상 모델이 (잠재적으로) 잡음이있는 대상 샘플에 과적 합되지 않도록합니다.
- 어떤 의미에서 소스 모델은 대상 모델을 안내합니다. 알고리즘 1은 훈련 방법의 의사 코드를 제공합니다.
- 그림 3c는 our common encoder의 샘플 output distribution를 보여줍니다.
- 이제 표현이 NER 태그를 기반으로 잘 클러스터링 되었음을 알 수 있습니다.
5. Experimental Settings
5.1 Dataset
5.2 Compared Models
- Source-Mono:
- We train an NER model on the source language with source word embeddings and apply it to the target language with target embeddings, which can be pre-trained or randomly initialized. This model does not use any cross-lingual information.
- Cross-Word:
- We project source and target word embeddings to a common space using the unsupervised mapper (Ws→t or Wt→s). This model uses word-level crosslingual information learned from adversarial training and the Procrustes-CSLS refinement procedure.
- Cross-Shared:
- This model is the same as Cross-Word, but the weights of the forward and backward LSTM cells are shared to encourage order invariance in the model.
- Cross-Augmented:
- This is our full cross-lingual model trained with source labels and target pseudo-labels generated by the pretrained model and the model itself.
5.3 Model Settings
6. Results
7. Analysis (번역)
- Char embeddings
- 단일 언어의 경우와는 달리, 두 언어가 유사한 형태 적 특징 (en-es, en-nl, en-fi)을 가지고있는 경우 사전 훈련 된 소스 문자 임베딩이 교차 언어 작업에서 NER 지식을 전달하는 데 상당한 기여를한다는 것을 발견했습니다.
- 아랍어 (영어와 문자를 공유하지 않음)의 경우 문자 임베딩이 노이즈로만 작동하는 것처럼 보입니다.
- 하지만 독일어의 경우 캐릭터 공유에도 불구하고 비슷한 노이즈 효과가 있습니다.
- 아마도 이것은 독일어가 모든 명사를 대문자로 사용하기 때문에 대문자 패턴의 차이 때문일 것입니다.
- Embedding distribution
- 교차 언어 모델에서 기준 결과가 크게 향상됩니다.
- 그림 3a 및 3b는 단일 언어 및 교차 언어 임베딩 쌍의 분포를 보여줍니다.
- 두 언어가 분포 공간을 공유하지 않기 때문에 (그림 3a) 모델이 어떤 것도 학습 할 수 없습니다.
- 단일 언어 임베딩도 훈련을 방해합니다. 랜덤 임베딩은 전송 점수를 증가 시키지만 (표 3), 모델은 단일 언어 학습을위한 랜덤 임베딩으로 제대로 수행되지 않습니다 (표 2).
- 그러나 결과는 3에서 향상됩니다.
- 이는 두 언어 모두에 대해 더 나은 공통 공간을 검색해야 함을 의미합니다.
- 따라서 우리는 적대적 훈련을 통해 다국어 투영을 수행합니다.
- Shared LSTM cell
- 더 나은 시퀀스 불변성을 얻기 위해 앞뒤 LSTM 셀에서 공유 가중치를 실험했습니다.
- 이것은 더 많이 옮기기 위해 덜 배우는 아이디어에서 비롯됩니다.
- 스페인어와 네덜란드어의 경우 결과가 크게 향상되고 매개 변수가 47 % 감소합니다.
- 독일어와 핀란드어의 경우 큰 차이가 없지만 매개 변수 수가 54 %와 47 % 감소합니다.
- 그러나 아랍어의 경우 원어 (영어)와의 단어 순서 차이가 크기 때문에 결과가 떨어집니다.
- Effect of Sentence Length
- 우리의 주요 가정 중 하나는 의사 레이블이 모델의 엔트로피를 줄일 수 있다는 것입니다 (Grandvalet 및 Bengio 2004).
- 문장 길이는 더 나은 의사 레이블을 찾는 데 좋은 기능입니다.
- 그러나 이것은 비용을 동반합니다.
- Cross-Augmented 모델을 학습하는 동안 문장 길이의 효과를 연구하기 위해 30에서 150까지 다양한 길이의 문장으로 실험을 수행합니다.
- 그림 2는 문장 길이가 늘어날수록 올바르게 태그가 지정된 문장의 비율이 감소 함을 보여줍니다.
- 그러나 짧은 문장으로 만 모델을 훈련시키는 경우 모델은 대상 언어 데이터의 짧은 문장에 지나치게 적합합니다.
- 우리의 주요 모델은 교사 모델을 추가하고 균일 한 분포에서 문장 길이를 무작위로 샘플링하여이 문제를 해결합니다.
- Source vs. Target NER distribution
- 타겟 및 소스 개발 데이터 모두에서 조정 된 모델의 결과를보고합니다.
- 타겟 개발 데이터에서 튜닝 된 모델이 소스 개발 데이터에서 튜닝 된 모델보다 더 나은 성능을 보입니다.
- 소스 개발 데이터 조정 모델의 결과는 순전히 감독되지 않은 설정의 결과로 간주되어야합니다.
- 이 결과는 소스 및 대상 NER 분포 간의 차이점을 강조합니다.
- 따라서 대상 개발 데이터에 대한 조정은 지금까지 다국어 NER 연구에서 얻은 결과에 중요한 역할을합니다.
- 또한 대상 테스트 데이터로 모델을 튜닝 해 보았습니다.
- 여기서도 결과 사이의 차이를 관찰합니다. 안정적인 결과를보고하려면 표준 편차와 함께 여러 실험의 결과를 보고해야합니다.
- 지금까지 우리가 아는 한, 이것을 따르는 유일한 다른 논문은 Xie et al. (2018).
8. Related Work
9. Conclusions and Future Work
- 이 논문에서, 우리는 cross-linugal NER의 문제를 세부적으로 정의하고, 그래서 향휴 연구의 구조를 제공한다.
- 우리는 또한, cross-lingual NER에 대한 새로운 방법을 제안하여 weight-sharing로 인해 잘 일반화하고 반복적으로 target language domina에 적용하면서 다른 언어에서 SoTA을 달성한다.
- 앞으로 우리는 pre-trained LMs을 cross-lingual NER transfer에 대한 탐구를 할 것이다.
Reference
댓글
댓글 쓰기