Posts List

[자연어처리] 4. Part-of Speech Tagging

Part-of Speech Tagging

POS tagging은 각각의 문장이 어떤 품사로 사용됐는지를 파악하는 것이다. 

공개된 English POS tagset 중에는 Penn Treebank(45 tags)가 있고, Brown Corpus(87 tags)가 있다. (Penn Treebank Tagset이 가장 많이 사용된다.)

그럼 왜 POS Tagging이 중요하고 어려울까?

위에 보다시피 같은 that, around라도 POS Tag 가 무엇이냐에 따라 전혀 다른 의미로 해석될 수 있기 때문이다. (Ambiguity) 그리고 전체 단어의 약 11% 정도가 ambiguity를 가진다.

POS Tagging을 구현하는 방법에는 다양한 방법이 있고 최근에는 ML approach가 효과적인 방법으로 사용되고 있다.

먼저 가장 간단한 Unigram 으로 tagging하는 방법에 대해 알아보자.

Unigram tagging은 단어만 보고 이 단어의 품사를 알아내는 방법이다. 가장 간단한 방법인 만큼 POS Tagging의 baseline이되는데 놀랍게도 약 90%의 정확도를 보여준다.

좀 더 진화된 방법으로 N-gram tagging을 할 수 있다. N-gram은 과거 단어가 어떤 품사였는지를 확인하기 때문에 Unigram보다 더 합리적인 방법이다. 하지만 주어 다음에 동사가 올 확률이 높다고 해서 항상 절대적인 것은 아니다. 위 문제의 still이 부사임에도 불구하고 형용사(JJ : adjective)로 판단하는 것이 그 예이다.

이 문제를 해결하기 위해서 통계를 도입한 것이 Statistical Tagging이다. 바로 문장 W가 주어졌을 때 가장 높은 확률을 가지는 tag T를 찾는 것이다. 

그리고 이 확률을 구하는 방법으로는 Bayes' rule에 기반한 Generative model과 (ex. HMM : Hidden Markov Model), P(T|W)를 directly구하는 Discriminative model이 있다.(ex. MEMM, CRF) 

[참고 : Human ceiling vs. POS tagging]

댓글 쓰기

0 댓글