KoNLPy(Korean Natural Language Processing in Python)는 한국어 자연어 처리를 위한 파이썬 라이브러리입니다. 형태소 분석기(예: Mecab, Komoran, Kkma, Hannanum, Okt)를 지원하며, 한국어 텍스트를 분석하는 데 유용합니다.
📌 주요 기능
- 형태소 분석 (토큰화)
- 문장에서 단어를 추출하고 품사를 분석합니다.
- 예) “안녕하세요, 반갑습니다.” → “안녕/Noun, 하세요/Verb, 반갑습니다/Adjective”
- 품사 태깅 (POS tagging)
- 단어의 품사를 판별하여 태그를 부여합니다.
- 명사 추출
- 문장에서 명사만 추출할 수 있습니다.
- 어근 추출 (Stemming)
- 단어의 기본 형태(어근)를 찾아줍니다.
📌 설치 방법
KoNLPy는 pip
으로 설치할 수 있습니다.
pip install konlpy
하지만 일부 형태소 분석기(Mecab 등)는 추가적인 설치 과정이 필요합니다.
📌 사용 예제
from konlpy.tag import Okt
okt = Okt()
text = "KoNLPy를 이용한 한국어 자연어 처리 테스트입니다."
# 형태소 분석
print(okt.morphs(text)) # ['KoNLPy', '를', '이용한', '한국어', '자연어', '처리', '테스트', '입니다', '.']
# 품사 태깅
print(okt.pos(text))
# [('KoNLPy', 'Alpha'), ('를', 'Josa'), ('이용한', 'Verb'), ('한국어', 'Noun'), ('자연어', 'Noun'), ('처리', 'Noun'), ('테스트', 'Noun'), ('입니다', 'Adjective'), ('.', 'Punctuation')]
# 명사 추출
print(okt.nouns(text)) # ['한국어', '자연어', '처리', '테스트']
📌 지원하는 형태소 분석기
KoNLPy는 여러 형태소 분석기를 지원하며, 각각의 특성이 다릅니다.
분석기 | 특징 |
---|---|
Okt | 트위터에서 개발한 분석기, 신조어 및 인터넷 용어에 강함 |
Mecab | 속도가 빠르고 정확도가 높음 (Linux, Mac에서 사용 가능) |
Komoran | 대용량 데이터 처리에 적합 |
Kkma | 문장 분석 기능이 강함 |
Hannanum | 서울대학교에서 개발한 형태소 분석기 |
📌 활용 분야
- 감성 분석(Sentiment Analysis)
- 키워드 추출
- 텍스트 요약
- 챗봇 개발
- 자연어 검색 시스템 구축 등
KoNLPy는 한국어 자연어 처리(NLP)를 다룰 때 매우 유용한 라이브러리로, 형태소 분석 및 텍스트 마이닝 작업에 널리 활용됩니다. 🚀