티스토리 뷰
mecab-ko-dic 설치
mecab-ko-dic은 오픈 소스 형태소 분석 엔진인 MeCab을 사용하여, 한국어 형태소 분석을 하기 위한 프로젝트입니다. 말뭉치 학습과 사전 목록 일부는 21세기 세종계획의 성과물을 사용하였습니다.
mecab-ko-dic은 21세기 세종계획 모든 현대 말뭉치에서 50문장씩을 추출하여 학습에 이용하였습니다. (총 23,615 문장)
mecab-ko-dic은 아파치 라이센스 2.0에 따라 소프트웨어를 사용, 재배포 할 수 있습니다.
설치 및 사용
mecab-ko-dic을 설치하고 사용하기 위해서 다음과 같은 작업이 필요합니다. 모든 작업은 Linux 기준입니다. 양해바랍니다.
mecab-ko 설치
mecab-ko는 한국어의 특성에 맞는 기능이 추가된 MeCab의 fork 프로젝트입니다.
mecab-ko 다운로드 페이지 에서 mecab-ko의 소스를 다운 받고 설치합니다. tar.gz를 압축 해제하시고 일반적인 자유 소프트웨어와 같은 순서로 설치할 수 있습니다.
$ tar zxfv mecab-XX-ko-XX.tar.gz $ cd mecab-XX-ko-XX $ ./configure $ make $ make check $ su # make install
자세한 내용은 다음의 URL을 참조하시기 바랍니다.
mecab-ko-dic 다운로드
mecab-ko-dic 다운로드 페이지 에서 mecab-ko-dic의 최신 버전을 다운 받습니다.
mecab-ko-dic 설치
tar.gz를 압축 해제하시고 일반적인 자유 소프트웨어와 같은 순서로 설치할 수 있습니다. 기본으로 /usr/local/lib/mecab/dic/mecab-ko-dic에 설치됩니다.
$ tar zxfv mecab-ko-dic-XX.tar.gz $ cd mecab-ko-dic-XX $ ./configure $ make $ su # make install
automake 버전 문제로 설치 도중 에러가 나는 경우, 다음과 같이 할 수 있습니다.
- automake1.11 설치 후, 위와 동일하게 재시도 혹은,
autogen.sh 실행 후 재시도
$ tar zxfv mecab-ko-dic-XX.tar.gz $ cd mecab-ko-dic-XX $ ./autogen.sh $ configure $ make $ su # make install
libmecab.so.2를 찾을 수 없는 에러가 나는 경우, 다음과 같이 할 수 있습니다.
라이브러리를 다시 링크하고 확인후 재시도
$ sudo ldconfig
사용
다음과 같이 mecab을 실행하여 한국어 형태소 분석 결과를 보실 수 있습니다.
$ mecab -d /usr/local/lib/mecab/dic/mecab-ko-dic mecab-ko-dic은 MeCab을 사용하여, 한국어 형태소 분석을 하기 위한 프로젝트입니다. mecab SL,*,*,*,*,*,*,* - SY,*,*,*,*,*,*,* ko SL,*,*,*,*,*,*,* - SY,*,*,*,*,*,*,* dic SL,*,*,*,*,*,*,* 은 JX,*,T,은,*,*,*,* MeCab SL,*,*,*,*,*,*,* 을 JKO,*,T,을,*,*,*,* 사용 NNG,*,T,사용,*,*,*,* 하 XSV,*,F,하,*,*,*,* 여 EC,*,F,여,*,*,*,* , SC,*,*,*,*,*,*,* 한국어 NNG,*,F,한국어,Compound,*,*,한국/NNG/*+어/NNG/* 형태소 NNG,*,F,형태소,Compound,*,*,형태/NNG/*+소/NNG/* 분석 NNG,*,T,분석,*,*,*,* 을 JKO,*,T,을,*,*,*,* 하 VV,*,F,하,*,*,*,* 기 ETN,*,F,기,*,*,*,* 위한 VV+ETM,*,T,위한,Inflect,VV,ETM,위하/VV/*+ᆫ/ETM/* 프로젝트 NNG,*,F,프로젝트,*,*,*,* 입니다 VCP+EF,*,F,입니다,Inflect,VCP,EF,이/VCP/*+ᄇ니다/EF/* . SF,*,*,*,*,*,*,* EOS
Elasticsearch Plugin 설치
Elasticsearch Plugin 설치는 아래와 같이 수행하면 되지만, 그냥 수행하면 최신 Elasticsearch와 버전이 맞지 않아 오류가 발생할 것이다.
$ ./bin/elasticsearch-plugin install https://bitbucket.org/eunjeon/mecab-ko-lucene-analyzer/issues/attachments/7/eunjeon/mecab-ko-lucene-analyzer/1486603969.8/7/elasticsearch-analysis-mecab-ko-5.2.0.0.zip
~/elasticsearch-5.6.1$ ./bin/elasticsearch-plugin install https://bitbucket.org/eunjeon/mecab-ko-l ucene-analyzer/issues/attachments/9/eunjeon/mecab-ko-lucene-analyzer/1500357175.91/9/elasticsearch-analysis-mecab-k o-5.5.0.0.zip -> Downloading https://bitbucket.org/eunjeon/mecab-ko-lucene-analyzer/issues/attachments/9/eunjeon/mecab-ko-lucene- analyzer/1500357175.91/9/elasticsearch-analysis-mecab-ko-5.5.0.0.zip [=================================================] 100% Exception in thread "main" java.lang.IllegalArgumentException: plugin [elasticsearch-analysis-mecab-ko] is incompat ible with version [5.6.1]; was designed for version [5.5.0] at org.elasticsearch.plugins.PluginInfo.readFromProperties(PluginInfo.java:146) at org.elasticsearch.plugins.InstallPluginCommand.verify(InstallPluginCommand.java:474) at org.elasticsearch.plugins.InstallPluginCommand.install(InstallPluginCommand.java:543) at org.elasticsearch.plugins.InstallPluginCommand.execute(InstallPluginCommand.java:217) at org.elasticsearch.plugins.InstallPluginCommand.execute(InstallPluginCommand.java:201) at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:67) at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:134) at org.elasticsearch.cli.MultiCommand.execute(MultiCommand.java:69) at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:134) at org.elasticsearch.cli.Command.main(Command.java:90)
최신버전의 plugin file을 https://bitbucket.org/eunjeon/mecab-ko-lucene-analyzer/issues?status=new&status=open 에서 찾아 다운받고 압축을 푼 다음 plugin-descriptor.properties 파일 내용중 elasticsearch.version을 현재 설치된 es version으로 수정한다.
elasticsearch.version=5.6.1
작업한 elasticsearch directory를 zip으로 다시 압축하고 아래 명령어를 수행한다.
zip -r elasticsearch ea561.zip
./bin/elasticsearch-plugin install file:/home/es/ea561.zip
참고링크)
- 은전한닢
https://bitbucket.org/eunjeon/mecab-ko-dic
http://blog.nacyot.com/articles/2015-06-13-eunjeon-with-elasticsearch/
- zip
https://askubuntu.com/questions/27349/how-do-i-compress-a-directory
- 한글 형태소 분석기
'Programming > ElasticSearch' 카테고리의 다른 글
인덱스 안의 모든 타입의 xxx field의 fielddata를 true로 세팅 (402) | 2017.10.27 |
---|---|
no [query] registered for [filtered] 오류가 나며 filtered query가 에러나는 경우 (0) | 2017.10.25 |
Elasticsearch) Painless script를 이용해서 값을 변경하기 (0) | 2017.10.19 |
X-Pack 인증 Bypass하기 (0) | 2017.10.11 |
Elasticsearch 실행시 vm.max_map_count [65530] is too low 오류 수정 방법 (1) | 2017.10.11 |
- Total
- Today
- Yesterday
- zsh
- spring #lombok
- Netty
- boot2docker
- pycharm
- git
- scrapy
- docker-machine
- X-Pack
- IntelliJ
- AWS
- 은전한닢
- Paw
- mecab
- Redis
- PubSub
- docker
- Python
- MacOS
- pymongo
- GCP
- PIP
- Elasticsearch
- xpath
- Spring Boot
- MongoDB
- ansible-container
- kubernetes
- Ansible
- TDD
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |