PYTHON - 형태소 분석기 mecab 설치 및 사용 방법 (feat. linux, python)

Intro

형태소 분석은 모든 자연어처리(NLP)의 필수 전처리 과정이다. 간단한 word2vec 모델부터 무거운 transformer기반 모델(대표적으로 Bert 모델)까지 인풋으로 입력되는 문장을 작은 단위로 쪼개주는 형태소 분석은 공통적으로 선행된다. 오늘은 가장 많이 사용되고 있는 mecab 형태소 분석기를 설치하고 konlpy 패키지를 불러와 mecab 형태소 분석기를 사용해 문장을 형태소 분해하는 방법을 다루보겠다. (모든 설명은 linux 운영체제에 기반한다.)


Mecab Installation

bitbucket mecab webstie에 접속해 1. mecab-ko와 2. mecab-ko-dic 3. mecab-python을 다운로드 및 설치해야 한다.

mecab-ko

mecab-ko-dic

ldconfig automake설치

mecab-python

git clone https://bitbucket.org/eunjeon/mecab-python-0.996.git
cd mecab-python-0.996/
python3 setup.py build
python3 setup.py install

linux 명령어 정리

  • tar
  • make
  • su
  • ldconfig

설치가 완료되면 mecab 버전을 볼 수 있다. (설치 성공!)

mecab --version
# mecab of 0.996/ko-0.9.2

Konlpy Installation

konlpy를 설치하기에 앞서 JDK 설치가 선행되야 한다.

java 설치

sudo apt-get install openjdk-8-jdk
java -version
# openjdk version "1.7.0_91"
# OpenJDK Runtime Environment (Zulu 7.12.0.3-linux64) (build 1.7.0_91-b15)
# OpenJDK 64-Bit Server VM (Zulu 7.12.0.3-linux64) (build 24.91-b15, mixed mode)

konlpy 설치

pip install konlpy

Use mecab in Python

from konlpy.tag import Mecab

m = Mecab(dicpath="/home/users/sjshin/bert/mecab-ko-dic-2.1.1-20180720") # 사전 저장 경로에 자신이 mecab-ko-dic를 저장한 위치를 적는다. (default: "/usr/local/lib/mecab/dic/mecab-ko-dic")
m.pos("안녕하세요")
# [('안녕', 'NNG'), ('하', 'XSV'), ('세요', 'EP+EF')]

Reference

Bitbucket-은전한잎 설치 참고블로그1