본문 바로가기

pytorch

colab mecab 사용자 정의 사전 세팅, 추가 및 사용하기 실패한 글

반응형

pytorch mecab 사용자 정의 사전 추가하기 목차 

🕐  colab 준비

🕑  mecab 설치

🕒  mecab-ko, mecab-ko-dic 설치 및 컴파일

🕓  사용자 정의 사전 사용하기 근데 실패함 

 

 

사용자 사전 추가를 위해 기존에 colab에 mecab 설치한 방식대로 진행했었는데 에러들이 나오고 결국 이 방식으로 실패함 성공한 글은 저 아래에,, 

 

 

1. colab 에 Mecab 설치하기 

: mecab은 보통 window에 설치하기는 어렵고 macOS, Linux에 설치할 수 있다. 하지만 설치 과정에 많은 에러가 나기로 유명하고 나도 에러가 아주 다양하게 터졌지만 어찌저찌 되긴 했다. 

 

colab 에서 mecab 설치하기 포스팅

 

[colab] konlpy mecab 설치 및 사용하기 on macOSX

한국어 자연어처리 모델을 찾다가 여러가지가 많이 있는 대표적인 konlpy를 발견 ! 사용해보려고 했지만 설치하는 과정에서 에러가 많이 났다. 정확히는 설치는 잘 되는데 import에서 에러가 남ㅋ

blckchainetc.tistory.com

 

 

2. mecab-ko 설치해서 google cloud로 옮겨 압축 풀기 

아래 mecab-ko 홈페이지에서 최신 버젼으로 설치해서 구글 클라우드에 옮겨 colab에서 사용할 예정이다. 

 

1) mecab-ko 다운 홈페이지 👇

https://bitbucket.org/eunjeon/mecab-ko/downloads/

 

eunjeon / mecab-ko / Downloads — Bitbucket

For large uploads, we recommend using the API. Get instructions

bitbucket.org

 

2) 구글 클라우드에 옮기기 

 

3) colab과 구글 클라우드 연동 

 

4) colab에서 mecab 폴더를 올린 위치로 이동

 

5) 압축 파일일 경우 압출 풀기 / 아닌 경우 바로 폴더 안으로 들어가기 

# 압축 풀기 
tar xvfz [다운받은 폴더명 그대로]
cd [폴더명]

# 압출 풀리면 폴더 안으로 들어가기 
cd [폴더명]

# 컴파일 하기 
!./configure
! make
! make check
! sudo make install 

 

 

3. mecab-ko-dic 설치해서 google cloud로 옮겨 압축 풀기 

 

1) mecab-ko-dic 가장 최신 버젼 설치하기 👇

https://bitbucket.org/eunjeon/mecab-ko-dic/downloads/

 

eunjeon / mecab-ko-dic / Downloads — Bitbucket

For large uploads, we recommend using the API. Get instructions

bitbucket.org

 

2) 구글 클라우드에 옮기기

 

3) 위와 동일하게 해당 폴더 위치로 가서 

# 압축 파일이라면 
!tar zxfv [폴더명]
cd [폴더명]

# 일반 파일이라면
cd [폴더명]

# 컴파일
!./configure
!make
!sudo make install

 

 

 

4.  사용자 정의 사전 만들고 사용하기 

1) mecab-ko-dic을 압축 해제한 폴더 경로로 간다.

(ex: /content/drive/MyDrive/pytorch/mecab-ko-dic-2.1.1-20180720)

 

2) 사용자 정의 사전 csv 내용 추가하기 

# ls 명령어로 user-dic 폴더있는지 확인 후 입장
ls  
cd user-dic

# user-dic 폴더 안에 nnp.csv 파일이 있고 이 파일이 사용자 정의 사전을 추가할 곳이다. 
vi nnp.csv    ===> 여기서 nnp.csv가 SyntaxError : invalid syntax 라고 에러가 나서 직접 폴더를 열어서 수정했다. 

 

vi 편집 명령어는 안되어서 구글 클라우드에서 해당 csv 파일을 수정해서 다시 업로드하고 cat nnp.csv 로 잘 업로드되었는지 확인했다. 

 

 

3) 적용하기 

 

폴더 안 tools 폴더에 들어가 add-userdic.sh를 실행시켜  준다. -> 실행하면 user-dic 안에 있던 csv파일들이 mecab-ko-dic폴더 안에 추가가 된다. 

cd /content/drive/MyDrive/pytorch/mecab-ko-dic-2.1.1-20180720/tools
!./add-userdic.sh ===> 여기서 Bash: bad interpreter, permission denied 에러가 나왔다. 

Bash: bad interpreter, permission denied 에러 해결

# 권한을 살펴보기 
ll 

# 해당 파일의 권한 변경
!chmod 755 add-userdic.sh 

# 다시 시도하기 
!./add-userdic.sh

 

출력 결과 :  

generating userdic...
nnp.csv
/content/drive/MyDrive/pytorch/mecab-ko-dic-2.1.1-20180720/tools/../model.def is not a binary model. reopen it as text mode...
dictionary.cpp(171) [property.open(param)] 
person.csv
/content/drive/MyDrive/pytorch/mecab-ko-dic-2.1.1-20180720/tools/../model.def is not a binary model. reopen it as text mode...
dictionary.cpp(171) [property.open(param)] 
place.csv
/content/drive/MyDrive/pytorch/mecab-ko-dic-2.1.1-20180720/tools/../model.def is not a binary model. reopen it as text mode...
dictionary.cpp(171) [property.open(param)] 
make: Nothing to be done for 'clean'.
make: *** No targets specified and no makefile found.  Stop.

=> 에러 

 

이것만하고 mecab-ko-dic 폴더 위치에서 새로 추가된 파일들로 컴파일하면 끝인데.....

!make install 

 

 

 

이 외에도 다양한 에러들이 나옴. 

 

linux기반이여서 mac에서는 add-userdic.sh의 7번째 줄 else의 readline을 greadline으로 수정하고 coreutils을 brew로 설치해야 한다고 함. => 했지만 여전히 에러가 나옴 ! 결국 다시 처음부터 시작 

 

=> colab mecab 사용자사전 추가 성공한 글 

https://blckchainetc.tistory.com/entry/%EC%B5%9C%EC%8B%A0-colab-mecab-%EC%82%AC%EC%9A%A9%EC%9E%90-%EC%A0%95%EC%9D%98-%EC%82%AC%EC%A0%84-%EC%84%B8%ED%8C%85-%EC%B6%94%EA%B0%80-%EB%B0%8F-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0

 

[최신] colab mecab 사용자 정의 사전 세팅, 추가 및 사용하기

일반 mecab을 google colab에 설치해서 사용자 정의 사전 추가하려니 에러가 계속 나오고 colab 위에서 해결되지 않는 에러들이 있었다. 찾아보니 colab에서 사용하는 mecab이 따로 있었다. [google colab에서

blckchainetc.tistory.com

 

 

 

 

 

References : https://beausty23.tistory.com/61

반응형