일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
29 | 30 |
- 포아송분포
- 블루아카이브 토픽모델링
- BERTopic
- 트위치
- 개체명 인식
- 구글 스토어 리뷰
- Roberta
- 피파온라인 API
- SBERT
- geocoding
- 데벨챌
- 데이터넥스트레벨챌린지
- 다항분포
- NLP
- 원신
- 붕괴 스타레일
- 자연어 모델
- 블루 아카이브
- Tableu
- LDA
- 클래스 분류
- 데이터리안
- 토픽 모델링
- 조축회
- 옵티마이저
- 코사인 유사도
- KeyBert
- CTM
- Optimizer
- 문맥을 반영한 토픽모델링
- Today
- Total
분석하고싶은코코
Mecab Mac 사용하기 + mecab 사용자 사전(user-dic) 추가하기 본문
Python을 통해서 한글 NLP 작업을 하기 위해서 필수로 사용하게 되는게 konlpy 모듈입니다.
이 모듈 안에서도 단어를 분리해주는 모듈들이 다양한데 그 중에서 이번 글에서는 mecab에 대해서 다뤄보겠습니다.
기본적으로
pip install konlpy
를 실행하면 knolpy관련 모듈이 설치 됩니다. 이후에
from konlpy.tag import Mecab
mecab = Mecab()
을 실행해서 잘되면 다행이지만.... 저는
-> 'NameError: name 'Tagger' is not defined'
에러가 발생했습니다. 그래서 mecab을 설치하는 부분부터 다시 찾아보게됐고 그 과정을 작성합니다.
순서는 아래와 같습니다.
1. mecab-ko 설치
2. mecab-dic 설치
3. mecab-python 설치
4. custom-dic 적용해보기
+ 단순히 Mecab모듈만 필요하신 분의 경우 아래과정 말고
pip install python-mecab-ko
를 실행하시면 MeCab이 설치 됩니다. 이후 Python에서
from mecab import MeCab
mecab = MeCab()
을 실행하시면 mecab을 사용하실 수 있습니다.
다시 원래 내용으로 돌아와서 처음 언급한 에러를 해결해보겠습니다. 우선 터미널을 킨 직후의 상황에서 작업을 진행합니다.
1. mecab-ko 설치
- 메캅 홈페이지에서 최신 버전 확인 후 다운로드
bitbucket.org/eunjeon/mecab-ko/downloads
- 다운로드
wget https://bitbucket.org/eunjeon/mecab-ko/downloads/mecab-0.996-ko-0.9.2.tar.gz
- 압축 해제 및 설치
>> tar xvfz mecab-0.996-ko-0.9.2.tar.gz
>> cd mecab-0.996-ko-0.9.2
>> ./configure
>> make
>> make check
>> sudo make install
터미널 명령어의 순서를 보면
다운로드 -> 압축해제 -> 폴더이동 -> [configure ~ make install] (설치 작업) 이라고 생각하시면 됩니다.
configure, make, make install에 대한 내용이 궁금하다면 링크를 통해 자세한 내용을 확인하실 수 있습니다.
(https://thoughtbot.com/blog/the-magic-behind-configure-make-make-install)
make install 부분에서 permission denied 라는 문구가 보인다면 아래 명령어를 실행해보세요. 권한을 해제하는 부분입니다.
make install DESTDIR=/tmp/myinst/
sudo cp -va /tmp/myinst/ /
이후 mecab- dic, python 설치 방법은 동일합니다.
2. mecab-dic 설치
- 사전 관리 프로젝트 다운로드
wget https://bitbucket.org/eunjeon/mecab-ko-dic/downloads/mecab-ko-dic-2.1.1-20180720.tar.gz
- 압축 해제 및 설치
>> tar xvfz mecab-ko-dic-2.1.1-20180720.tar.gz
>> cd mecab-ko-dic-2.1.1-20180720
>> ./configure
>> make
>> sudo make install
3. mecab python
- mecab 프로젝트 clone
>> git clone https://bitbucket.org/eunjeon/mecab-python-0.996.git
>> cd mecab-python-0.996
>> python setup.py build
>> su
가이드에 적혀 있어서 적어두긴 했지만 가장 마지막 su라는 명령어 자체는 왜 작성 되었는지에 대해서는 잘 모르겟다...
su(root관리자) 접근하는 것이라 패스워드 입력하라고 나올텐데 이를 설정하지 않으신 분들은
(터미널에서 sudo -s -> passwd root를 입력하시면 비밀번호를 설정할 수 있습니다.)
이제 정상적으로 Mecab 사용 가능
from konlpy.tag import Mecab
mecab = Mecab()
4. mecab-user-dic
따로 설치가 필요하지 않고 수정하고 적용해주는 작업까지 해주면 됩니다.
mecab-ko-dic-(버전) <- 2번에서 압축 풀어둔 그곳입니다. 그곳으로 가면 user-dic이라는 폴더가 있는데 여기가 사용자 사전에 대한 정보를 입력해줄 곳입니다. 우선 mecab-ko-dic 폴더로 이동합니다.
cd ~/mecab-ko-dic-2.1.1-20180720
user-dic 폴더 안에는 nnp, person, place에 대한 csv파일이 있는데 여기에 정보를 추가로 입력해주시면 됩니다. 방법은 터미널에서 해도 되고 직접 파일을 열어서 수정해주셔도 됩니다. 다만 최종적으로 csv파일이여야 한다는 점만 유의하면 됩니다.
원하시는 단어, 품사, 종장 여부 등 기본적인 mecab에 추가해줄 단어의 정보를 추가해주어야 하는데 이는 아래 링크를 참고해주시면 됩니다.
이렇게 user-dic 안에 있는 파일에 원하는 단어를 추가했다면 터미널로 돌아와서
./tools/add-userdic.sh
make install
순서대로 실행해주시면 사용자 사전까지 정상적이 적용됩니다.
이후 python을 통해 mecab을 호출하고 사용자 설정한 단어가 포함된 문장을 분리해보면 정상적으로 분리되는 모습을 보실 수 있습니다.
'Python > 라이브러리' 카테고리의 다른 글
fbprophet 연습 - 비트코인 (0) | 2022.11.10 |
---|