자연어 처리 작업(NLP Task)을 소개 -1-

nlp

#1

NLP 란?

Natural Language Processing는 우리말로 자연어처리라고 하는 연구입니다.
말 그대로 자연 언어, 즉 예를 들면 한국어를 대상으로 언어를 분석하는 것이 목적입니다. 최근에는 주로 기계 학습에서 언어를 인식하거나 학습시키는 도구로 사용합니다.

자연어 처리의 예

"사과"와 “애플”, "금단의 열매"는 거의 같은 의미의 갖는 말입니다. 기계(컴퓨터)는 이것들을 같은 의미라기 보다는 xxx, yyy, zzz 식의 코드로 처리합니다.

즉 자연어 처리를 한다는 것은 기계, 컴퓨터에 이들 말들이 같은 의미를 뜻한다고 학습시키는 과정이라고 할 수 있습니다.

이를 자연어 처리스럽게 말하면, 단어를 수치화,벡터,분산 표현으로 만듦 라고 말합니다. 자연어 처리로 최근에 유명해진 기술로 word embeded, Word2Vec, Seq2Vec나 페이스북에서 만들어 공개한 FastText 등이 있습니다.

NLP 작업은 왜 하는데?

자연어 학습 뿐만 아니라 다른 기계 학습 문제를 풀 때 각각의 학습 시스템에 최적화된 알고리즘을 만드는 것이 좋겠지요. 하지만 여기에 몇 가지 문제가 있습니다.

그 중 가장 어려운 것은 이 분야의 연구가 여러분이 생각하시는 것보다 그리 연구가 진행되지 않았습니다.
구체적으로 말하면, A, B, C라는 비슷한 문제 각각을 별개의 문제로 취급하고, 각각의 문제를 풀었다 때에 얻을 수있는 지식을 공유할 수 없다는 것입니다. 또한 각 문제의 해법이 얼마나 효과적인지를 비교할 수 없다는 것도들 수 있습니다.

그리고 주로 기계 학습에 한정된 이야기지만 데이터가 구하기 어렵다는 것입니다. 기계 학습은 주로 데이터가 많으면 많을 수록 좋다! (그냥 쓰레기를 많이 모으면 그래도 쓰레기다!, 저는 이런 생각은 별로 좋아하지 않습니다.)

따라서 연구자는 어느 정도 일반적인 문제를 설정하고 그 문제를 풀어 그 정확도를 겨루는 것보다 좋은 연구 성과로 하고 있습니다.

이러한 과정을 자연어 태스크,NLP task, 자연어 작업라고 합니다.

이 페이지를 만드는 동기 부여

최근 BERTFastText는 눈부신 성과를 얻고 있으며, 특히 BERT는 어떤 자연어 태스크를 해야 할지 저는 불분명 한 점이 많습니다.
우리말에 대한 NLP 연구가 진행되기를 기대합니다.
그래서 우리말 데이터 세트가 더 증가 않을까

참고 문헌