What Can Linguistics and Deep Learning Contribute to Each Other? (Linzen et al. (2019))

|

신경망연구(Neural network research)와 언어학(Linguistics)의 융합은 두 분야의 발전을 이끌 수 있다. 언어학에서는 신경망을 통해 유의미한 언어학적 결과를 도출할 수 있고, 신경망 연구에서는 언어학적 지식(Language capabilities)을 통해 딥러닝의 성능(performance)를 개선할 수 있다.

1. the cognitive science of language: beneficial to neural network system(deep learning)

우선 언어학이 딥러닝에 도움이 되는 방법에 대해 알아보겠다.

1.1 Linguistics as a Normative standard

문장은 선형적이며 계층적이다. 문장 내에 존재하는 순서는 문장의 의미를 구성하는데 있어 매우 중요한 역할을 한다. RNN(Recurrent Neural Network)모델은 노드들 사이에 hidden layer를 삽입하여 hidden state의 결과가 계속 순환하며 문장 내 순서를 고려할 수 있게 만들어진 모델이다. 예를 들어 The cat is on the mat이라는 문장에서 cat 다음에 is가 올 확률이 높다는 것과 같은 방식으로 구조적으로 수용 가능한 문장을 형성할 수 있다. 하지만 통사적으로 간단한 문장이 높은 확률을 할당 받는다 하더라도 언어학자들이 연구하는 논란의 여지가 많은 문장들을 연구할 수 있는 수준이 되는 것은 아니다. 그래도 최근 언어모델(Linzen(2019)기준)은 언어학적 지식을 기반으로 통사적 능력(ability)를 측정하고 향상시키는데 높은 성능을 보이고 있다. 이렇게 언어학은 딥러닝 성능 향상의 기준점이 될 수 있다. 예를 들어 본 논문의 저자인 Tal Linzen은 2016년에 정문(grammatical)과 비문(ungrammatical)을 이용해서 언어모델이 정문에 더 높은 확률을 줄 수 있는지에 대한 실험을 하였는데 이에 대해 간단히 살펴보도록 하겠다:

1.1.1 Linzen et al.(2016): Grammatical/Ungrammatical

1) English subject-verb agreement

(1) The black cat … sneezes/sneeze?

위 예문은 주어와 동사의 agreement(주어, 동사 수 일치)에 대한 문제인데, black cat에 대해 알맞은 동사를 고르는 것이다. 이 경우는 그냥 더 빈번히 결합되는 동사를 고르면 되는 것이기 때문에 언어모델의 입장에서 매우 쉬운 테스크이다.

2) Head

문장 내 여러 명사구가 나올 경우 어떤 것을 주어로 볼지에 대한 문제는 조금 더 복잡하다.

(2) The ratio of men who survive to the women and children who survive … is/are?

위 예문에서 ratio가 주어인데 중간에 이탤릭체로 쓰여진(men, women, children)은 모두 방해요소들(attractors)이다. 이들은 주어와 달리 복수명사인데, 주어를 제대로 식별하지 못하면 동사를 are로 고르게 되는 것이다. 딥러닝은 이러한 문제를 사람보다 더 헷갈려 한다. 본 실험은 작은 규모로 진행되었는데, 4개 이상의 attractor가 있을 경우 50%이상의 오류가 나오는 것으로 확인되었다. 이후 Gulordava et al. 2018의 연구에서는 조금 더 큰 규모로 실험을 진행해서 이보다는 높은 정확도를 얻기는 했지만 여기에서도 마친가지로 동사 앞에 4개 이상의 attractor가 존재할 경우가 아닌 경우에 비해 오류율이 10배 이상 높은 것으로 나타났다. (본 논문에서 위키백과 코퍼스를 분석한 결과 95%이상의 구문에서 명사구가 없는 것으로 확인되었고, 명사구가 3개 이상인 경우는 0.25%로 매우 드물게 나타나는 것으로 확인되었다. 그니까 대부분의 문장에 대해서는 문제가 없다는 것인데, 사람만큼 완벽하게 식별하지는 못한다는 것이다. 근데 사람과 최대한 유사한 언어 기능을 구사하는 기계를 만드는게 목표니까… 그 이후 더 개선된 모델들이 계속 나오는 중이다.)

이외에 신경망 네트워크를 이용한 모델에 대한 연구들은 다음과 같다:

  • Tran, Bisazza, and Monz (2018): 모델의 probability와 prediction accuracy간의 관계를 연구.
  • Vaswani et al. (2017): Attention only model을 사용할 경우 attractor가 4개인 문장에 대해 RNN에서 약 3배 정도의 오류가 나왔다는 것을 확인한 연구.
  • Kuncoro et al. (2018): 통사적인 내용을 명시적으로 모델링한 신경망 시스템으로 오류를 줄일 수 있다는 연구.

지금까지 기술한 내용을 요약하자면, 언어학이 딥러닝의 기준점이 될 수 있다는 것이다.

1.2 Psycholinguistics and Experimental Control

이번에는 심리언어학적 실험통제가 딥러닝에 어떠한 도움을 줄 수 있는지를 다뤄보겠다. 딥러닝은 훈련을 하고 훈련 결과를 테스트한 후에 테스트 결과를 다시 훈련에 반영하는 과정을 반복한다. 하지만 이러한 훈련과 테스트 과정에는 동일한 데이터셋이 사용된다. 즉, 코퍼스 하나를 (일반적으로)7:3으로 나눠서 7은 traning set으로, 3은 test set으로 사용하는데 여기에서 문제가 나타난다. 우리가 코퍼스를 딥러닝 모델에 열심히 돌리는 이유는 뭔가 살펴보고자 하는 property가 있기 때문인데, 코퍼스에는 이와 관련된 정보가 따로 주석되지 않았기에 문제를 해결하기 어려운 것이다. 예를 들어 yes/no question 형식의 문장을 생성하고자 할 때, 코퍼스에는 문장 형식(의문문, 평서문, 명령문 등)에 대한 정보가 없기 때문에 모델이 yes/no question 형식을 찾아내는 것이 매우 어렵다. 그렇다면 이미 parsing이 된 Penn Treebank와 같은 코퍼스를 사용하면 되지 않냐는 의문이 제기될 수 있지만, 그러한 코퍼스들은 아직 딥러닝에 사용할 만큼의 규모로 구축되지 않았다는 문제가 있다. 그렇다면 이제 또 다른 의문이 제기될 수 있다. 모델이 입력되는 대규모 코퍼스를 바로바로 parsing하면 되지 않느냐 물을 수 있다. 이러한 방법은 통사론적으로 매우 간단한 문장에서는 제대로 작동할 수 있지만 통사론적으로 조금만 복잡한 문장의 경우에는 parsing이 제대로 이루어지지 않는다. 하지만 우리는 통사론적으로 복잡한 문장을 딥러닝이 잘 분석하고 이해하기를 원하기 때문에 이와 같은 방식으로 도출된 결과는 딥러닝 모델에 사용할 수 없다. 이러한 문제들을 해결하기 위해 심리언어학적 실험통제를 딥러닝에 대입하는 방안을 모색하였다. 심리언어학은 지금까지 사람을 대상으로 언어 현상을 실험하기 위해 통제된 실험 데이터셋(controlled data set)을 구축해왔기 때문이다. 이러한 데이터셋은 인간을 대상으로 실험한 결과이기 때문에 기계가 처리하기에는 어려운 결과들로 이루어져 있다. 따라서 이를 통해 모델의 언어능력(language competence)을 보다 확실하게 확인할 수 있다.

Marvin and Linzen (2018)의 연구가 이와 관련한 대표적인 연구로, 아래 예문 3, 4, 5번과 같은 비문-정문 pair로 모델의 언어 능력을 평가한 실험이다.

(3) The farmer that the parents love swims/*swim.

(4) The manager that the architects like doubted himself/*themselves.

(5) a. No authors that the security guards like have ever been famous.

b. *The authors that no security guards like have ever been famous.

예문 3번의 경우, that the parents love라는 관계절을 고려하여 주어와 동사의 수일치를 이룰 수 있는지를 볼 수 있다. 예문 4번의 경우는 anaphora의 distribution에 대해 알아보는 문장으로, that the architects likemanager에 IP(Inflection Phrase), TP(tense phrase) 혹은 CP(Complementizer Phrase)로 귀속될 수 있기 때문에 architects는 뒤에 나오는 anaphora를 C-commend(성분통어)하지 못한다. 따라서 binding theory에 따라 architects와 수가 맞더라도 themselves가 올 경우 비문이 된다. 예문 5번은 NPI(부정극어)에 대한 distribution을 알아보는 문장이다. 이러한 문장은 모두 2009년에 사람을 대상으로 진행된 실험에서 가져온 문장으로, tagging이 전혀 되지 않은 raw 코퍼스에서는 찾아보기 힘들다. 이에 따라 tagging되지 않은 코퍼스로 훈련한 RNN모델에 위와 같은 문장으로 test를 돌려본 결과, 정확도가 극적으로 떨어지는 것을 확인할 수 있었다. 따라서 이러한 실험을 통해 모델의 취약점을 찾아 보완할 수 있다.

하지만 이와 같은 실험을 진행할 때 local heuristics를 방지해야 한다. 즉, 모델이 잔머리 굴리는 것을 방지해야 한다.

(6) a. The little boy who is crying is hurt.

b. Is the little boy who is crying hurt?

c. *Is the little boy who crying is hurt?

local heuristics를 확인하기 위해서는 bigram model을 써보면 된다.bigram은 문장을 단순히 선형적으로만 봐서 문장의 구조를 파악하지 못하는 애다. 얘가 예측을 잘했다는 것은 그 문장은 모델이 잔머리 굴리기 딱 좋은 문장이라는 말이다. 위 예문은 6a를 yes/no question 형태로 만드는 예시이다. 위 예문에 대해서 단순히 바로 직전의 단어를 가지고 예측하는 모델인 bigram model이 6c가 비문이라는 것을 잘 예측하였다. 이는 그냥 단어쌍의 빈도를 기반으로 도출된 결과이다. 즉, who is라는 단어쌍이 who crying이라는 단어쌍 빈도보다 높았기 때문이다. 이런 것을 local heuristics라고 한다. 결과는 제대로 나왔지만 모델이 통사를 제대로 파악한 것은 아닌 것이다. 따라서 예문 6과 같은 문장으로 test를 진행하고서 모델의 통사 파악 능력을 높게 평가하는 것은 의미가 없다는 것이다.

local heuristics를 방지하기 위해 Adger(2003)연구에서는 언어학 교과서나 논문 등에서 나온 minimal pair를 가지고 모델을 테스트했는데, 여기에서도 bigram이 예측을 매우 잘했다. 심지어 bigram이 RNN보다 높은 성능으로 측정된 결과도 있었는데, 이는 언어학 교과서나 논문에서 발췌한 minimal pair도 그냥 가져와서 쓰면 local heuristics를 피할 수 없다는 것을 증명한다.

Gulordava et al. (2018)의 RNN이 selectional preference를 학습하여 문장을 의미론적으로 예측했는지에 대해 실험하였다.

(7) The dogs playing in the neighborhood park … barks/bark?

예를 들어 예문 7에서의 동사 예측은 통사적 분석이 아닌 반드시 selectional preferences와 semantic plausibility를 고려하여 이루어져야 한다. 왜냐하면 neighborhoods와 parks는 짖을 수 없기 때문에 the dog만이 head of the subject가 될 수 있는 것이다.

(8) The ideas rowing in the lamp economy … barks/bark?

예문 8은 촘스키의 ‘colorless green ideas’라는 문장과 같이 의미론적 측면은 완전히 배제하고 통사적 측면만을 고려하여 만들어진 문장이다. 이 문장을 RNN이 제대로 이해했다면 barksbark를 5:5 확률로 예측할 것이다. 하지만 실제 실험에서는 bark가 더 높은 확률로 예측되었다. 따라서 Gulordava et al. (2018)의 실험을 통해 RNN이 통사론적 측면은 어느정도 학습했지만 의미론적 측면은 잘 이해하지 못하는 것으로 확인되었다.

2. neural network system(deep learning): beneficial to the cognitive science of language

이제 딥러닝이 언어학에 도움이되는 방법에 대해 알아보겠다.

2.1 Innate Biases in Human Language Acquisition

딥러닝은 언어습득(language acquisition)에 내재된 bias의 존재 여부를 판단하는 언어처리 도구로서 유용하게 사용될 수 있다. 언어습득에 내재된 bias의 존재에 대해 연구하는 이유는 poverty of stimulus라는 개념에 있다. poverty of stimulus에 대한 논증은 직관에 근거하며, 딱히 과학적인 근거는 없다. 따라서 이러한 직관이 정확한지, vaild한 intuition인지, 즉 인간에게 실제로 언어에 대한 constrain이 내재되어 있는지 살펴보기 위해 딥러닝을 사용할 수 있다.

  • poverty of stimulus는 말 그대로 자극의 빈곤이다. Poverty of stimulus는 language acquisition에서 가장 중요한 개념 중 하나이며, 매우 특이한 현상이다. 간단하게 말하자면 인간에게는 언어에 대한 어떤 constrain이 내제되어 있다는 개념이다. 인간이 L1을 배우는 과정에서 산출해낼 수 있는 많은 문장에 비해 실제 받아들이는, 자극이 되는 문장의 수가 매우 제한적이라는 개념이다. 즉 통사론에서 다루는 복잡한 통사구조(e.g. cleft construction(분열문))의 경우, 코퍼스에서는 0.1%정도밖에 되지 않고, 아이가 언어를 배우는 과정에서도 매우 적은 빈도로 접할 수 있다. 하지만 아이가 약 8세정도가 되면 cleft문장을 완벽하게 구사한다. 이탈리아 언어학자 Antonella Sorace는 이탈리아어에서 자동사(intransitive)의 unaccusative(비대격)과 unergative(비능동격)의 형태가 다르다는 것을 가르치지 않아도 아이들이 자연스럽게 구사한다는 것을 발견했다. 이렇게 인간은 적은 작은으로도 critical period를 지나면 언어를 아주 fluent, grammatical, well-formed로 구사한다. 이것이 기계와 인간의 언어학습에 있어 가장 중요하고 근본적인 차이이다.

인간의 innate Bias의 존재 여부를 확인하기 위해 우선 언어 습득 모델을 모델링한다. 그리고 이 모델에 constraint를 준 버전과 안 준 버전을 비교한다. 그 결과 constraint가 있는 모델이 언어를 잘 습득하고 처리해낸다면 constraint를 필요로 한다는 결과가 도출되고, 반대로 constraint가 없는 모델이 언어를 잘 처리한다면 constraint는 딱히 필요 없는 것이다. 이렇게 딥러닝을 통해 모호하고 직관에 근거했던 이론이 empirical evidence를 얻게 될 수 있다.

이와 관련하여 McCoy et al. (2018) 연구를 살펴보도록 하겠다. 해당 연구에서는 모델의 yes/no question formation 학습 여부를 테스트하였는데, 여기에서 사용된 모델은 seq2seq)이다.

(10) My walrus that will eat can giggle.

(11) a. Can my walrus that will eat giggle?

b. *Will my walrus that eat can giggle?

이 실험에서는 예문10과 같은 평서문이 주어지지 않은 상태에서 11번을 형성하는지에 대해 실험하였다. 그 결과 몇몇 network가 structural components를 잘 학습하였는데, 이 network들과 어린 아이들이 보이는 오류 양상에는 차이가 있는 것을 발견하였다. 따라서 이러한 연구를 통해 neural network와 인간의 학습 방식은 다르다는 것을 확인할 수 있었고, 그에 따라 neural network에는 syntactic constraint가 딱히 필요하지 않다는 것도 알 수 있었다.

McCoy et al. (2018)에서 진행된 위와 같은 실험에도 한계점이 있다. 문장 a와 b가 있을 때 b가 비문이라면, 제대로 학습된 모델은 a에 bias를 줄 것이고 제대로 학습되지 않은 모델은 그러지 못할 것이다. 하지만 해당 실험에서는 두 부류의 모델 간의 bias 할당 차이가 거의 없었고 hidden layer의 equation에서만 차이를 보였는데 해당 연구에서는 이에 대해 설명하지 않았다. 이는 딥러닝 모델의 전반적인 문제이긴 한데, 모델의 black box 안에서는 무슨 일이 일어나는지 알 수 없다. 최근 explainable AI를 시도하는 연구들이 있지만 내가 모르는 것인지 아직 이렇다 할 결과는 없는 것 같다.

McCoy et al. (2018) 연구와는 달리 neural network에 explicit bias를 줘버리는 연구도 제안되었지만 아직까지 syntax를 explicit하게 준 모델이 주지 않은 모델에 비해 월등히 좋은 성능을 낸 모델은 없었다고 한다.

2.2 Modeling Human Sentence Processing

2.2.1 Markov Chain

기계가 사람처럼 문장을 처리하기 위해서는 사람의 reading behavior를 파악해야 한다. 인간의 독해력에는 뒷단어 예측 실력이 영향을 준다. 즉, 앞선 단어를 읽고 뒤에 나타날 단어를 예측할 수 있으면 빠른 속도 독해를 할 수 있고 단어를 건너뛰고도 문장의 내용을 파악할 수 있다. 이와 같은 예측 능력은 predictability estimate(예측 가능성의 수치)를 통해 모델링될 수 있다. 문장 내 단어를 예측한다는 것은 확률변수가 아닌 확률과정 개념으로 보는 것이 타당하다. 확률과정이 도입된 개념은 Markov Chain이라고 하는데, 이는 어떠한 상태가 이전 상태에 영향을 받는 것을 나타낸다.

2021-01-16

Smith & Levy (2013)의 연구에 따르면 n-1에 기반하여 다음 단어를 예측하는 N-gram모델로도 reading behavior를 잘 모사했다고 한다.

2.2.2 Grammatical Language Model vs. RNN Language Model

사람은 Incremental Parsing과 같은 문법 기반의 언어모델을 통해 문장을 처리한다. 하지만 이런 Parser기반의 언어모델이 단순한 Sequential model보다 더 효율적이라는 것을 수학적으로 증명하기란 쉽지 않다. 증명이 어려워서 심지어 Frank & Bod(2011)에서는 기계가 문장을 이해하는데 있어 통사적 정보가 불필요하다는 주장이 나오기도 했다. 근데 이건 아닌 것 같다.

문법 기반의 언어모델들(Grammatical Language Model)은 parsing된 코퍼스를 사용하는데, parsing된 코퍼스는 몇몇 한계점을 지닌다. 우선 사람이 직접 parsing을 해야 한다는 번거로움이 있고, 사람이 직접 만들기 때문에 단기간에 대규모 코퍼스 구축이 힘들어 대부분 크기가 작다. 그리고 인건비가 많이 들어가서 구축 비용이 비싸다. 반면 RNN모델은 매우 큰 코퍼스를 사용하더라도 훈련이 잘 된다. 그리고 Goodkind & Bicknell(2018)에 의하면 N-gram모델보다 human reading behavior를 예측하는데 높은 성능을 보인다고 한다. Goodkind & Bicknell(2018)가 도출한 결과에서 중요한 것은 RNN이 N-gram과 같이 단순히 문장의 sequence를 잘 기억하여 좋은 성능을 보이는 것이 아니라는 것이다. 이들은 RNN과 문법기반 언어모델 모두 garden-path sentence(구문분석 난이도가 높은 문장)를 처리하는데 효과적이라는 점을 언급하였다.

2.2.3 Human behavior in question might arise form statistical patterns in the input

Linzen and Leonard (2018)는 RNN과 인간이 범하는 오류의 패턴을 관계절과 전치사구의 attractor을 비교한 Bock and Cutting (1992)을 이용하여 상세히 분석하였다. 또한 이들은 주어가 단수일 경우와 복수일 경우의 수 일치도 비교하였는데 실험 참가자들이 주어의 head가 복수일 때보다 단수일 때 더 많은 attraction error를 냈다고 했다. 이러한 수의 불일치는 makedness(유표성)에 기인한다. 즉 복수명사는 단수 주어에 의해서 interrupt될 수 있는 privative feature(탈취자질)이다. 반면 단수 명사는 복수 주어와 encoding하는데 interrupt될 수 있는 자질을 가지지 않는다. 이러한 결과를 주목해봐야 하는 이유는 RNN에 유표성 개념을 주입하지 않았음에도 불구하고 인간과 비슷한 불일치를 보였다는 것이다.

반면 인간은 관계절 속에 attractor가 있을 때 오류를 적해 범했지만 RNN은 전치사절 속에 attractor가 있는 경우 더 많은 오류를 범했다는 결과도 있다. 이러한 결과는 RNN이 인식한 syntactic representation과 인간의 syntactic representation에는 차이가 존재한다는 것을 나타낸다. 이러한 결과를 통해 human data에 맞춰진 모델 설계가 필요하다고 볼 수 있는데, 이 부분이 매우 어렵다. 고전적인 언어 문법 모델의 경우에는 수작업으로 모델 수정이 가능했지만 딥러닝 모델에는 black box가 존재하여 안에서 뭐가 어떻게 돌아가는지 알 수 없기 때문에 수정작업 자체가 vague할 수 있다.

3. Competence model vs. Performance model

Linguistics as normative standard for neural network와 Modelling failable human language processing 접근법에는 큰 차이가 존재한다. 전자는 neural network가 언어학 이론으로 규범되는 규칙을 오류 없이 수행하는 것이 목표인 모델이고, 후자는 인간도 실수할 수 있는 언어처리를 모델링하는 것이 목표인 모델이다. 이 두 접근법은 각각 정해진 규범을 완벽하게 따르는 것을 목표로 하는 linguistic competence와 실제 발화 방식에 초점을 둔 linguistics performance에 기준점을 둔다는 차이를 보인다. 이는 곧 하나의 모델로 두 목표를 이룰 수 없음을 말한다. 즉, Competence model과 Performance model의 경로가 다르다는 것이다. 이 둘의 목표를 모두 이룰 수 있는 모델은 아직없다.

4. Conclusion

지금까지 딥러닝과 언어학이 상호 나눌 수 있는 이익에 대해 알아보았다. 언어학 분야에서는 언어 능력의 표준을 정의하는 것에 특화되어 있다. 이러한 competence를 통해 딥러닝 분야는 표준 규범이 지켜졌는지 테스트할 수 있고, 지켜지지 못한 경우에는 그의 원인을 해석해볼 수 있다. 그리고 딥러닝은 언어학 분야에 대해 언어습득 모델 구축과 문장 처리를 위한 유용한 플렛폼을 제공할 수 있다.

Reference

Linzen et al. “What Can Linguistics and Deep Learning Contribute to Each Other?,” Johns Hopkins University. 2019