티스토리 뷰
안녕하세요. 은행IT운영부 이지성 과장입니다.
오늘은 한글날 특집으로, 한글의 자연어 처리에서 가장 중요한 요소중의 하나인 "형태소분석기"에 대해서 알아보도록 하겠습니다.
먼저 형태소란 언어에 있어서 "최소 의미 단위"를 말합니다.
형태소 분석이란 형태소 보다 단위가 큰 언어 단위인 어절, 혹은 문장을 최소 의미 단위인 형태소로 분절하는 과정이라고 할 수 있겠습니다. 간단히 말해 "문장을 최소 의미 단위로 나누어, 품사 (명사,동사,형용사 등등)를 붙이는 작업" 이라고 하는 것이 좋을거 같네요.

예제를 보시면 더 이해가 되실 겁니다. 아래와 같이 문장을 최소의미 단어로 쪼개어 N (명사), J (조사), E (어미), P (용언) 등 품사을 붙인 모습입니다. 형태소 분석기는 "한나눔"이라는 분석기를 사용한 예입니다.
|
문장 : 나는 밥을 먹는다. |
한글은 영어와는 다르게 단어와 단어가 합쳐 질 수 있는 특성 때문에 자연어 처리가 더 어렵습니다.
"아버지 가방에 들어가신다" 와 "아버지가 방에 들어가신다"를 다른의미로 처리해야 하기 때문이죠.
실제로 위에서 예제로 보여드린 문장을 다른 형태소 분석기인 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월 되시길 바랍니다.

'NLP' 카테고리의 다른 글
| Dialogflow를 활용한 챗봇 만들기 (0) | 2021.07.05 |
|---|---|
| 나이브베이즈 분류를 이용한 스팸 필터링 알아보기 (0) | 2020.11.23 |
| TF-IDF 기법 이해하기 (0) | 2020.08.21 |
| LDA (Latent Dirichlet Allocation) 알아보기 (0) | 2020.05.13 |
| [데이터 시각화] word cloud (0) | 2020.02.28 |
- Total
- Today
- Yesterday
- 추천시스템
- FLASK
- AWS
- lambda
- pytorch
- IIS
- 로블록스
- 추천도서
- 기술사학원
- iso12207
- 밀키트
- 정보관리기술사독학
- 밀키트요리
- gpt3.5
- wfastcgi
- 12207
- hackerrank
- 콘도챗봇
- 챗봇
- 정보관리기술사합격
- ISO 12207
- 기술사
- 131회정보관리기술사
- 머신러닝
- s3
- r
- 정보관리기술사
- 자기계발
- 인조기프
- 정보관리
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |