[Python] KoNLPy 토크나이징 라이브러리 알아보기 및 시작하기 (설치)

NoNLPy는 기본적인 한국어 자연어 처리를 위한 파이썬 라이브러리이고 공식 사이트에 따르면 코엔엘파이라고 읽는다. KoNLPy는 오픈소스 소프트웨어이며, GPL v3 라이센스에 따라 자유롭게 사용할 수 있어 한국어 자연어 처리 분야에서 많이 사용하는 라이브러리이다.

NLP (Natural Language Processing, 자연어처리)는 텍스트에서 의미있는 정보를 분석, 추출하고 이해하는 일련의 기술집합이다.

출처 https://konlpy-ko.readthedocs.io/ko/v0.4.3/start/


install

공식홈페이지다운로드

Mac OS

$ pip install konlpy     # Python 2.x
$ pip3 install konlpy    # Python 3.x
$ bash <(curl -s https://raw.githubusercontent.com/konlpy/konlpy/master/scripts/mecab.sh)

Kkma 모듈 사용하기

from konlpy.tag import Kkma
from konlpy.utils import pprint

if __name__ == '__main__':
    kkma = Kkma()
    message = '안녕하세요 저는 홍길동입니다.'
    hello = "안녕하세요. 저는 홍길동이며 고등학교 3학년입니다. 오늘 자연어 처리 공부를 시작한 학생이며 앞으로 앱에 자연어 처리 기술을 응용하며 개발을 진행할 예정입니다. 앞으로 많은 관심과 응원 부탁드립니다. 감사합니다."

    # 형태소 추출
    pprint("morphs : " + str(kkma.morphs(message)))

    # 형태소와 품사 태그 추출
    pprint("nouns : " + str(kkma.nouns(message)))

    # 명사만 추출
    pprint("pos : " + str(kkma.pos(message)))

    # 문장 분리
    sentences = kkma.sentences(hello)
    pprint("sentences : " + str(sentences))
    for i in sentences:
        print(i)

결과

"morphs : ['안녕', '하', '세요', '저', '는', '홍길동', '이', 'ㅂ니다', '.']"
"nouns : ['안녕', '저', '홍길동']"
("pos : [('안녕', 'NNG'), ('하', 'XSV'), ('세요', 'EFN'), ('저', 'NP'), ('는', 'JX'), "
 "('홍길동', 'NNG'), ('이', 'VCP'), ('ㅂ니다', 'EFN'), ('.', 'SF')]")
("sentences : ['안녕하세요.', '저는 홍길동이며 고등학교 3 학년입니다.', '오늘 자연어 처리 공부를 시작한 학생이며 앞으로 "
 "앱에 자연어 처리 기술을 응용하며 개발을 진행할 예정입니다.', '앞으로 많은 관심과 응원 부탁 드립니다.', '감사합니다.']")
안녕하세요.
저는 홍길동이며 고등학교 3 학년입니다.
오늘 자연어 처리 공부를 시작한 학생이며 앞으로 앱에 자연어 처리 기술을 응용하며 개발을 진행할 예정입니다.
앞으로 많은 관심과 응원 부탁 드립니다.
감사합니다.

Process finished with exit code 0
품사 설명
NNG 일반 명사
JKS 주격 조사
JKM 부사격 조사
VV 동사
EFN 평서형 종결 어미
SF 마침표, 물음표, 느낌표

Kkma는 총 56개의 품사 태그를 지원하고 있다.

http://kkma.snu.ac.kr/documents/?doc=postag 참고

답글 남기기

이메일 주소는 공개되지 않습니다.