티스토리 뷰

NLP

형태소 분석기 알아보기

HR대장 2020. 10. 8. 10:00
728x90

안녕하세요. 은행IT운영부 이지성 과장입니다.

 

오늘은 한글날 특집으로, 한글의 자연어 처리에서 가장 중요한 요소중의 하나인 "형태소분석기"에 대해서 알아보도록 하겠습니다.

 

먼저 형태소란 언어에 있어서 "최소 의미 단위"를 말합니다.

형태소 분석이란 형태소 보다 단위가 큰 언어 단위인 어절, 혹은 문장을 최소 의미 단위인 형태소로 분절하는 과정이라고 할 수 있겠습니다. 간단히 말해 "문장을 최소 의미 단위로 나누어, 품사 (명사,동사,형용사 등등)를 붙이는 작업" 이라고 하는 것이 좋을거 같네요.

 

 

예제를 보시면 더 이해가 되실 겁니다. 아래와 같이 문장을 최소의미 단어로 쪼개어 N (명사), J (조사), E (어미), P (용언) 등 품사을 붙인 모습입니다. 형태소 분석기는 "한나눔"이라는 분석기를 사용한 예입니다.

 

문장 : 나는 밥을 먹는다.

형태소분석 : 나 / N 
                + 는 / J
                + 밥 / N
                + 을 / J
                + 먹 / P
                +는다 / E

 

한글은 영어와는 다르게 단어와 단어가 합쳐 질 수 있는 특성 때문에 자연어 처리가 더 어렵습니다.

"아버지 가방에 들어가신다" 와 "아버지가 방에 들어가신다"를 다른의미로 처리해야 하기 때문이죠.

실제로 위에서 예제로 보여드린 문장을 다른 형태소 분석기인 Kkma 분석기를 사용하면 결과는 다르게 나옵니다.

 

 

한나눔 Kkma
아버지가방에들어가 / N 아버지 / NNG
이 / J 가방 / NNG
시ㄴ다 / E 에 / JKM
  들어가 / VV
  시 / EPH
  ㄴ다 / EFN

 

위와 같이 같은 문장이라도 서로 다르게 형태소를 분절하기 때문에, 형태소 분석기의 성능이 자연어 처리에 있어서 큰 영향을 미치는 요소 중 하나라는 것을 알 수 있습니다.

 

이 밖에도 한글은 동음이의어, 띄어쓰기, 구어와 문어의 차이, 높임법, 주어 및 목적어의 빈번한 생략 등의 특성때문에 한글의 자연어 처리의 난이도는 끝판왕이라고 할 수 있다고 합니다.

 

한글을 형태소 분석할 수 있는 형태소분석기의 종류로는 위에서 언급한 한나눔 형태소 분석기, Kkma 형태소 분석기, Komaran, Mecab, Twitter 등 다양한 형태소 분석기가 있습니다.

 

 

또한 위 그림처럼 형태소 분석기는 대량의 문장들을 처리해야 하므로, 실행시간도 사용자 입장에서는 매우 중요한 요소로 볼 수 있습니다. 흥미롭게도 Kkma, Komoran 형태소 분석기는 형태소가 1만개가 넘어가면 성능이 급격이 좋아지지 않은 것을 알 수 있습니다.

그 자세한 내용 및 성능 비교에 대해서는 아래 링크를 참고하시기 바랍니다.

 

[링크] https://konlpy-ko.readthedocs.io/ko/v0.4.3/morph/

 

날씨가 쌀쌀해지고 있습니다. 건강에 유의하시고,

2020년 알찬 마무리 하실 수 있는 10월 되시길 바랍니다.

 

 

 

728x90
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2026/02   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
글 보관함