브레인 스토리
ACL 문법 오류 교정 대회 준비 과정을 소개합니다
2019/07/03 by 이수경, 함지연

자연어처리(NLP) 분야 많은 연구는 특히 번역 도메인에서 많이 이뤄지고 있습니다. 대표적으로 어텐션(attention)[1]과 같은 자연어처리 주요 기법이 바로 언어 번역 문제를 풀다가 발견됐죠. 이미 충분히 많은 데이터가 공개돼 있다는 점이 활발한 연구에 영향을 끼친 것으로 분석됩니다.

반면, 문법적으로 오류가 있는 문장을 바른 문장으로 번역하는 태스크인 문법 오류 교정(Grammatical Error Correction, 이하 GEC)은 아직 미개척된 분야입니다. 이는 일반 번역 문제와 비교했을 때 공개 데이터가 절대적으로 부족한 현실이 많은 영향을 미친 것으로 판단됩니다. 그 높은 중요도에 비해 연구가 많이 이뤄지지는 않았지만 전세계 많은 연구진이 이 태스크를 해결하고자 노력하고 있습니다.

카카오브레인 또한 이런 대열에 합류한 회사 중 하나입니다. 카카오와 함께 팀(Kakao&Brain)을 이뤄 출전한 ‘ACL BEA 2019 챌린지'에서 2등이라는 성적을 거두었죠. 함지연 연구원은 “팀 내에서 문장 생성(generation)을 비롯해 다양한 연구 주제들이 언급됐다”며 “풀어야 할 문제가 상대적으로 명확하고 중요도가 높다는 점에서 GEC 태스크에 흥미를 갖던 찰나, 관련 대회가 열린다는 소식을 접하며 참가를 결정했다”고 설명했습니다.

이번 시간에는 공동 연구팀이 참가한 GEC 대회와 문제 해결 방법론에 관한 자세한 이야기를 전해드리고자 합니다. 논문과 발표자료(8월 업로드 예정)는 각각 링크를 클릭해서 보실 수 있습니다.


ACL BEA 2019 챌린지란?

전산언어학으로 저명한 ACL[2] 학회는 BEA(Building Educational Application) 워크샵을 통해 GEC 대회를 열었습니다. 지난 CoNLL[3]-2014 이후 약 5년 만에 열린 이 대회에서 참가자는 문법적으로 틀린 문장을 옳은 문장으로 교정하는 시스템 구축 실력을 겨루게 됩니다.

[ 그림 1 ] BEA 2019에서 해결해야 하는 과제 예시

올해 열린 BEA 2019에서는 원어민과 비원어민 학생이 쓴 에세이 4,000문장(test set)[4]의 문법 오류를 교정하는 과제가 제시됐습니다. 주최 측은 비원어민 학생이 작성한 3만 3,000여 문장의 훈련 데이터(training set)[5]와 4,000여 문장으로 구성된 검증 데이터(validation set)[6]도 함께 공개했습니다.

훈련, 검증, 테스트 셋 모두 WI와 Locness로 구성돼 있습니다. WI는 비영어권 학생의 글을 첨삭해주는 온라인 웹플랫폼인 ‘write&improve(W&I)’에서 획득한 데이터입니다. 사람이 일정한 지침을 기준으로 첨삭했다는 점에서 일관성을 갖춘 데이터라 볼 수 있습니다. Locness는 벨기에 루벤 대학교(the University of Louvain)의 영어 말뭉치 언어학 센터(the Centre for English Corpus Linguistics)가 만든 원어민 에세이 데이터입니다. WI와 같은 지침으로 첨삭된 문장이라는 점에서 Locness 역시 일관성을 갖췄다고 볼 수 있습니다.

대회 참가자는 총 3가지 트랙에 도전할 수 있습니다. 라벨링 데이터(annotated data)[7] 활용 범위에 대한 부분은 트랙마다 조금씩 다른데요, 이는 트랙별 미션과도 상관성이 있다고 볼 수 있습니다. 트랙 1에서는 외부에 공개된 모든 훈련 데이터(public data)를 활용합니다. 트랙2는 각 기업이 자체 보유하고 있는 비공개 데이터(private data)도 활용한 문법 교정 시스템 개발을 목표로 하죠. 트랙 3에서는 주최 측이 제시한 검증 데이터만을 활용해 라벨링 데이터에 의존하지 않는 시스템 개발을 요구합니다. 비라벨링 데이터에 대한 제약은 따로 없었습니다.

[ 표 1 ] 개별 트랙에서 활용할 수 있는 데이터 종류


주요 선행 연구를 소개합니다

1. Transformer(2017)

기계 번역이나 언어 모델에서는 주로 RNN(recurrent neural network) 모델을 활용해왔습니다. N 단계에서의 값을 다시 입력값으로 사용해 N+1단계에서의 상태를 예측하는 재귀적(recursive)인 구조를 갖춘 RNN은 순차 데이터(sequential data)를 다루기 용이한 구조를 갖추고 있습니다. 하지만 이로 인해 병렬 처리(parallel processing)가 어려워 계산 속도가 느려진다는 한계를 지니고 있습니다. 먼 과거에 받아들인 데이터, 즉 입력 초기의 데이터를 잊어버리는 경향이 있어서 문장 길이가 길어질수록 성능도 떨어지게 되죠. 어텐션을 통해 위에 언급한 RNN 문제가 일정 부분 해소되기는 했으나, 여전히 RNN의 단점을 완전히 극복하지는 못했습니다.

Transformer는 기존의 모델에서처럼 RNN을 사용하지 않고 셀프 어텐션(self-attention)을 사용한 모델입니다. 연산량을 획기적으로 줄여 학습에 시간을 덜 소모하면서도 학습 성능은 효과적으로 향상됐습니다. 이 논문이 나온 이후 BERT[8], GPT2[9]를 비롯한 현재 모든 SOTA(state-of-the-art, 현재 최고 수준의) 모델은 바로 이 Transformer 구조에 기반을 두고 있습니다.

[ 그림 2 ] Transformer 아키텍처


2. GEC as a low-resource machine translation(2018)

저자는 GEC를 학습 데이터가 부족한 기계 번역 태스크로 정의했습니다. 모델의 가중치(weight) 일부를 언어 모델(language model)[10]로 사전 훈련(pre-training)[11]하거나 입력 문장에서 단어를 임의로 삭제하거나 추가하는 등 데이터가 부족한 상황에서 기계 번역할 때 활용되는 여러 기법을 사용했습니다. 그 결과, RNN 기반 모델보다 Transformer 모델에서 더 좋은 성능을 보였습니다.


3. Copy-augmented Transformer(2019)

GEC 태스크에서는 문법적 오류가 있다고 판단되는 일부 단어만 수정되고 나머지 대부분의 단어는 그대로 출력됩니다. 이런 이유로 문장 전체를 생성하는 관점에서만 문제에 접근할 경우, 모델은 단어를 그대로 복사하는 경향성을 갖게 될 것입니다. 입력 문장에서의 단어를 그대로 출력하는 것만으로도 문제를 맞혔다고 할 수 있기에 학습이 제대로 됐다고 보기는 힘들죠.

이에 연구진은 GEC 태스크를 새로운 단어를 생성하는 부분(generation mechanism)과 입력 문장의 단어를 복사하는 부분(copy mechanism)으로 나눠 훈련함으로써 모델의 성능을 높였습니다.

Copy-augmented Transformer가 주목받는 또다른 이유는 DAE(Denoising Auto-Encoding) 태스크를 사전 훈련했다는 데 있습니다. DAE는 노이즈 생성 함수인 noise(x)로 만든 데이터에서 노이즈를 제거해 원래 데이터를 추출하는 인코더-디코더 모델을 지칭합니다([그림 3]). 해당 논문의 noise(x)는 언어 간 번역에서 흔히 발생하는 문장 내 단어 순서가 바뀌는 오류에서 착안, 단어를 무작위로 삽입・수정・삭제하거나 그 순서를 바꿉니다.

한 줄로 다시 정리하자면, Copy-augmented Transformer는 noise(x)로 생성한 틀린 문장을 옳은 문장으로 바꾸는 방법을 사전 훈련한거라 보시면 됩니다.

[ 그림 3 ] DAE는 노이즈가 추가된 입력 문장으로부터 노이즈를 제거하는 태스크를 지칭한다. 


Kakao&Brain이 과제를 해결한 방법

GEC as low-resource MT는 데이터가 부족한 기계 번역의 한계를 극복하고자 다양한 기법을 통해 성능을 높였지만, 그만큼 구조는 복잡합니다. 아울러, 시중에 유통되는 철자 검사기만으로는 고유 명사를 인식하거나 문맥에 맞는 단어 선택이 어려운 것으로 분석됐습니다. Copy-augmented Transformer의 노이즈 생성 함수는 구두점 생략, 수의 불일치, 전치사, 단・복수, 시제 등 GEC 태스크에 자주 보이는 문법 오류를 생성하지 못합니다.

이에 공동 연구팀은 다음처럼 개선 방향을 설정했습니다. 첫째, 철자 검사기를 개선합니다. 둘째, 현실적인 문법 오류를 생성해 사전 훈련에 활용합니다. 연구팀은 [그림 4]와 같이 문법 교정 시스템을 구성했습니다. 

[ 그림 4 ] 카카오브레인 시스템의 핵심 내용을 도식화한 이미지


1. 문맥 인식 철자 검사기(context-aware spellchecker)

기존의 연구에서는 오픈소스 철자 검사기인 Hunspell을 그대로 사용했습니다. 이 프로그램은 사전에 구축한 사전에 없는 단어가 등장할 경우 편집 거리(edit distance)[12]가 가까운 여러 단어를 후보로 추천해줍니다. 

기존의 Hunspell에는 2가지 한계가 존재합니다. 첫번째, 문맥을 고려하지 못합니다. 예를 들어, Hunspell은 다음 2가지 예문에서의 오타 ‘esay’를 ‘easy’로 수정합니다. 문맥을 봤을 때 (a)에서는 ‘essay’를, (b)에서는 ‘easy’를 의도했을 가능성이 높음을 살펴볼 수 있습니다.

(a) This is an esay about my favorite sport.

(b) This is an esay question.

연구팀은 문맥을 고려하는 철자 검사기 개발을 위해 언어모델 점수(LM score)를 활용했습니다. 후보 단어로 대체한 문장이 나타날 확률을 비교해 그 값이 가장 큰 단어를 선택하는 식이죠. (a) 예문을 보면, ‘This is an essay about my favorite sport.’가 ‘This is an easy about my favorite sport.’보다 훨씬 더 자연스러운 문장으로, 후자의 언어모델 점수가 더 높습니다. 이 시스템은 자연스럽게 언어모델 점수가 높은 ‘essay’로 단어를 수정합니다.

두번째, 기존의 철자 검사기는 사전에 등재돼 있지 않은 고유명사를 오타로 판단합니다. 이렇게 되면 고유명사는 편집 거리는 가까우나 뜻이 완전히 다른 단어로 대체돼 문장의 뜻이 완전히 바뀔 공산이 크죠. 연구팀은 첫 글자를 대문자로 변환하는 대소문자 분별(truecasing) 논리를 추가해 단어가 고유명사임을 정의했습니다.

하지만 사전에 없는 단어가 모두 고유명사라고는 볼 수는 없습니다. 이에 연구팀은 단어가 고유명사인지, 오타인지를 판별하려는 목적에서 고유명사 사전을 구축했습니다. 연구팀은 위키피디아(Wikipedia)에서 대문자로 시작하는 단어를 추출해 1만 8,000개 단어로 구성된 고유명사 사전을 구축했습니다. 이렇게 되면 철자 검사기는 사전 데이터와 일치하는 고유명사를 옳은 단어로 인식하고, 그 외 단어에 대한 철자 검사를 진행합니다. 그 결과, Hunspell이 수정하지 못한 대소문자 오류를 상당수 바로잡는 데 성공했습니다.


2. DAE 사전 훈련

연구팀은 대회 종료를 2주 앞둔 시점만 하더라도 모델 구조를 개선하는 데만 치중했습니다. 하지만 기본 Transformer 모델과 비교하면 그 성능이 크게 나아지지는 않았죠. 이에 연구팀은 원점에서부터 과제를 되짚어보며 고민을 거듭했습니다. 효과적인 딥러닝 학습을 위해서는 수백만개 이상의 코퍼스가 필요합니다. 그런데 대회에서 사용할 수 있는 데이터셋 규모는 66만여 개 문장(트랙 1)과 4천 여개 문장(트랙 3)에 불과한 상황이었죠. 이처럼 공개된 라벨링 데이터 자체가 충분치 않은 부분에 연구팀은 다시 한 번 주목했습니다.

함지연 연구원은 “트랙 1과 트랙 3 모두 라벨링 데이터가 부족한 상황에서 기계 번역하는 문제라 판단했다”며 “데이터 규모가 더 작은 트랙 3에서 외부에 공개된 비라벨링 데이터로 성공적인 사전 훈련이 가능하다면, 같은 기법으로 트랙 1의 문제로 수월하게 해결하리라 가정했다”고 말했습니다.

사전 훈련은 데이터양이 절대적으로 적은 상황에서 적용하는 기법 중 하나입니다. 본 훈련에 사용되는 것과 유사한 데이터로 모델을 미리 학습시키면 본 훈련에 효과적인 초기값 확보에 크게 도움이 됩니다. 현재 사전 훈련이 자연어처리에서 주류로 자리하게 된 것도 바로 이런 효과 덕분입니다.

이에 연구팀은 [표 2]에서 보듯이 에세이 데이터와 비슷한 비라벨링 데이터셋에 noise(x)를 적용해 (틀린 문장-고친 문장) 데이터를 생성했습니다. 그런 뒤 Copy-augmented Transformer(2019)에서처럼 틀린 문장을 옳은 문장으로 바꾸는 DAE 태스크를 사전 훈련했습니다. 

[ 표 2 ] 연구팀이 사전 훈련에 활용한 1,670만 개의 문장(구텐베르크, 타토에바, 위키피디아)

연구팀은 사전 훈련의 효과를 높이기 위해서는 noise(x)가 현실에서 볼법한 문법 오류를 생성할 수 있어야 한다고 가정했습니다. 이런 오류에는 구두점 생략, 수의 불일치, 전치사, 단・복수, 시제, 태 등이 대표적입니다. 이에 연구팀은 토큰 또는 품사에 기반해 오류를 생성하는 noise(x)를 고안했습니다.

토큰 기반 방식은 GEC 데이터인 WI&Locness 훈련 데이터에서 찾은 오류 패턴에 따라 문법 오류를 생성합니다. 좀 더 자세히 설명하자면 다음과 같습니다. ERRANT(ERRor ANnotation Toolkit)이라는 도구를 활용해 (오류 문장-정답 문장)이라는 병렬 데이터에서 문법 오류를 추출하는 겁니다. 품사 기반 방식은 전치사, 명사, 동사처럼 토큰의 품사 정보를 활용하여 일정 확률로 문법 오류를 생성합니다. 각 품사의 원형은 바꾸지 않고 형태만 바꿉니다. 예를 들어, 전치사라면 다른 전치사로 바꾸거나 명사면 수(단수↔︎복수)를 바꾸고, 동사면 동사의 수나 시제, 태를 바꾸는 거죠.

함 연구원은 “결과적으로는 토큰에 기반한 방식이 더 나은 성능을 보였지만, 주어와 동사의 수 일치와 같은 일부 문법 오류는 품사에 기반 방식이 더 적합하다는 사실을 관찰할 수 있었다”며 “우리는 더 높은 확률로 품사에 기반한 방식으로 문법 오류를 생성할 수 있도록 했다”고 설명했습니다.

연구팀 실험 결과, 트랙 1과 트랙 3에서 모두 유효한 결과를 내며 모델 구조를 개선하는 방식과 비교했을 때 더 좋은 성능을 냈습니다. 이에 대한 자세한 이야기는 모델의 성능을 평가하는 부분에서 자세히 이어서 하도록 하겠습니다.


3. 훈련과 미세조정

연구팀은 데이터가 적은 상황에서 다양한 기계 번역 기법을 적용했을 때 RNN 기반 모델보다 더 큰 성능 향상을 보인 Transformer와 Copy-augmented Transformer를 모델로 활용했습니다. 사전 훈련을 통해 획득한 가중치로 이 모델의 초기값을 설정했죠. 그런 뒤 사전 학습으로 획득한 지식을 잊지 않기 위해 학습률(learning rate)[13]을 줄여가며 트랙별로 제시된 라벨링 데이터를 가지고 훈련을 진행했습니다. 트랙 1에서는 Lang8, NUCLE, FCE, WI&Locness(훈련) 데이터를, 트랙 3에서는 4,000여개의 검증 데이터 중 3,000개를 훈련에 활용했습니다.

[ 표 3 ] 연구팀이 사전 훈련에 활용한 데이터셋의 종류

[ 표 4 ] 연구팀이 트랙별 사전훈련 훈련-미세조정-검증에 활용한 데이터셋 종류

훈련을 마친 뒤에는 모델을 미세 조정(fine-tuning)[14]합니다. 어떤 데이터를 활용하느냐가 미세 조정의 핵심이라고 할 수 있겠습니다. 연구팀은 테스트 데이터와 분포(distribution)가 가장 유사한 데이터가 미세조정에 가장 효과적일 것으로 판단했습니다.

그 이유는 글을 쓴 사람마다, 문장을 고친 사람마다 특정 문맥에 따른 어휘 선호도나 콤마에 대한 스타일에 따라 데이터 분포가 달라지기 때문입니다. 또는 영국식 영어와 미국식 영어에 따른 데이터 분포도 차이도 분명 존재할 것입니다. 혹은 글의 종류에 따른 차이도 있을 수 있습니다. 예를 들어, 위키피디아 역사 관련 페이지는 에세이와는 다른 어휘로 구성될 것이라고 추론해볼 수 있죠.

연구팀은 에세이 문장으로 구성된 테스트 데이터와 그 분포가 가장 비슷한 WI&Locness 데이터를 가지고 미세조정을 진행했습니다. 트랙 1에서는 WI&Locness 훈련 데이터 3만 3,000개로 학습 모델을 미세조정했습니다. 

[ 그림 5 ] 문장 길이와 단어를 수정한 횟수 간의 관계를 나타내는 그래프. 가로축은 단어 수, 세로축은 수정 횟수를 가리킨다. 대체로 문장 길이에 비례해 수정 횟수가 늘어난다. 반면, Lang-8은 길이가 비슷한 문장이더라도 수정 횟수가 판이하다는 걸 확인할 수 있다.


연구팀이 고안한 문법 교정 시스템의 성능

주최 측은 재현율(recall, R)[15]보다는 정밀도(precision, P)[16]를 강조한 값인 F0.5 점수[17]를 성능 평가 척도로 내세웠습니다. GEC 태스크 상에서 재현율은 전체 문법 오류 문장 중 실제로 고친 문장의 비중(TP/(TP+FN))을, 정밀도는 모델이 고친 문장 중 문법 오류가 있는 문장의 비중(TP/(TP+FP))을 가리킵니다. 문법 오류 교정 대회에서는 틀린 부분을 찾는 것과 틀린 부분을 제대로 고치는 것 모두 중요합니다. 다만 주최 측이 정밀도의 변화가 더 크게 반영되는 F0.5 점수를 평가 척도로 내세웠다는 점은 틀린 부분을 제대로 고쳤는지를 더 중시했다는 의미로 해석해볼 수 있습니다.

[ 표 5 ] 문법 오류 교정 태스크에서의 오분류표

그 결과, 공동 연구팀은 트랙 1과 트랙 3에서 각각 21팀 중 2등, 9팀 중 2등이라는 기록을 거뒀습니다. 주목해야 할 부분은 연구팀이 제안한 모든 단계(철자 검사, DAE 사전 훈련)가 성능 향상에 유효한 영향을 미쳤다는 점입니다. 

[ 표 6 ] 트랙 1과 트랙 3에서 검증 데이터셋(왼쪽 열)과 테스트 데이터셋(오른쪽 열)을 대상으로 각각 성능을 평가한 결과표

연구팀이 제안한 철자 검사 방식은 [표 7]에서 보듯이 기존의 철자 검사기만 활용하거나(Hunspell) 철자 검사기로 추천받은 단어의 문맥적 자연스러움을 평가할 때(Hunspell+LM)보다는, 고유명사의 대소문자 분별까지 했을 때(ours) 더 큰 성능 향상을 낸 것으로 나타났습니다. 이 방식에서는 철자(SPELL)와 띄어쓰기(ORTH)[18] 오류가 특히 잘 해결됐습니다.

[ 표 7 ] 연구팀이 제안한 철자 검사 방식이 더 높은 성능을 내고 있다.

또한 연구팀은 비라벨링 데이터를 활용한 DAE 사전 훈련만으로도 성능이 크게 향상됨을 확인할 수 있었습니다([표 8]). 방법론을 다시 정리하자면, copy-augmented transformer의 noise(x)는 단어를 무작위로 삽입・수정・삭제하거나 그 순서를 바꾸지만(random 방식), 연구팀은 라벨링 데이터를 활용해 문법 오류의 발생 확률에 현실성을 더했죠. 그 결과, 토큰에 기반한 오류 생성 방식은 구두점(PUNCT) 오류를, 품사에 기반한 방식은 수의 일치(VERB:SVA), 명사수(NOUN:NUM), 전치사(PREP) 오류 등을 특히 잘 고쳤습니다. 함 연구원은 “무작위로 만들어낸 오류보다는 실제로 인간이 저지를법한 오류에 가까운 오류 생성 함수를 고안했던 게 실제로도 성능 향상에 기여했음을 검증했다”고 말했습니다. 

[ 표 8 ] 어떻게 문법 오류를 생성했느냐에 따라 DAE 사전 훈련 방식의 효과가 다름을 알 수 있다. 무작위 확률로 문법 오류를 생성하기보다는 사람들이 실제로도 많이 틀리는 문법 오류를 생성하는 등 현실성을 반영했을 때 그 성능이 더 높음을 확인할 수 있다.

함지연 연구원은 “ERRANT 도구로 오류형을 분석해보니, 팀원 각자가 고안한 성능 개선 방식이 잘 교정하는 문법 오류 영역이 제각기 달랐다. 이 개선 방안을 하나로 합치면 성능이 큰 폭으로 늘 것으로 기대했고 덕분에 좋은 성과를 낼 수 있었다”면서도, “다만 기발한 모델을 만들고 싶었으나 기본적인 Transformer와 그 성능이 비슷했던 점은 다소 아쉽다”고 소회를 밝혔습니다.

공동 연구팀은 자신들이 고안한 문법 오류 교정 시스템에서 개선해야 할 부분에 대해 언급했습니다. 이 시스템에서는 동사, 명사의 점수가 특히 낮다는 점을 살펴볼 수 있습니다. 명사와 동사에서 틀린 철자를 수정하는 것보다는 다른 어휘로 치환되는 사례가 많았습니다. 이들 품사에서는 사용자의 주관, 즉 선호도가 반영되는 측면이 더 강했기 때문으로 분석됩니다. 이를 해결하기 위해서는 현실에서 실제 사람들이 보편적으로 사용하는 어휘를 잘 반영하는 충분한 데이터를 확보해야 합니다.

다시 정리하자면, 여러 상황에서도 자연어처리 태스크가 제대로 동작하기 위해서는 좋은 품질의, 다량의, 현실적인 데이터가 필요하다는 의미입니다. 하지만 이는 현실적 불가능한 일입니다. 이에 카카오브레인 연구팀은 양질의 데이터가 부족한 상황에서도 문제를 효율적으로 풀 수 있는 방법론을 지속해서 연구한다는 계획입니다. 


참고
[1] 인코더(encoder)와 디코더(decoder) 구조의 모델이 특정 시퀀스를 디코딩할 때 관련된 인코딩 결과값을 참조할 수 있게 하는 기법
[2] Annual Meeting of the Association for Computational Linguistics의 약자
[3] Conference on Natural Language Learning의 약자
[4] 최종 모델의 성능을 측정할 때 활용하는 데이터
[5] 모델을 훈련하는 데 활용하는 데이터
[6] 과적합(over-fitting)을 막고자 매 훈련마다 모델을 평가하고 튜닝하는 데 활용하는 데이터. 개발 데이터셋(development set)이라고 부르기도 한다.
[7] 정답(label)이 붙여진 데이터
[8] 구글이 지난 2018년 공개한 대규모 말뭉치를 사전학습한 모델
[9] 오픈에이아이(OpenAI)가 2019년 2월 공개한 대규모 말뭉치를 사전학습한 모델
[10] 주어진 문장의 맥락상 다음에 나올 적절한 글자, 단어 또는 문장을 예측한다.
[11] 한 태스크에 특화된 모델 훈련(training)에 필요한 지식을 미리 가르치는 일
[12] 몇 번의 추가 편집으로 단어 A를 단어 B로 만들 수 있는지를 측정하는 기준
[13] 한 번에 갱신하는 가중치 값의 양
[14] 추가 훈련을 통해서 매개변수를 재조정하는 걸 의미한다.
[15] 실제로 참인 것 중에서 모델이 참이라고 예측한 것의 비율
[16] 모델이 참이라고 분류한 것 중에서 실제로 참인 것의 비율
[17] 1.25×(정밀도+재현율)/(0.25×정밀도+재현율)
[18] every day→everyday, bestfriend→best friend와 같은 문법 오류를 일컫는다.
이 글을 쓴 사람들
samantha.lee
이수경 | 글,정리
2016년 3월 알파고와 이세돌 9단이 펼치는 세기의 대결을 두 눈으로 목도한 이후 인공지능을 제대로 공부해봐야겠다고 결심했습니다. 인공지능 본진이자 연구소인 카카오브레인으로 걸어들어온 이유죠. 인공지능 기술과 이로 인해 바뀔 미래 사회를 다루는 글을 통해 사람들과 소통하고자 합니다.
chloe.brain
함지연 | 기술감수
물리학을 공부하다가 무엇인가를 직접 만들어 보고 싶은 생각에 컴퓨터공학도 함께 전공했습니다. 그 ‘무엇’이라는 대상은 현재 인공지능을 가리키고 있죠. 사람과 대화하는 인공지능을 만들기 위해서는 언어 정보를 습득하는 능력이 필수라고 보고 현재는 자연어처리 분야를 연구하고 있습니다. 이 기술을 가지고 인간과 자연스럽게 상호소통하는 인공지능을 만드는 데 기여하고 싶습니다.