######################
# mecab-ko 다운로드
1 | wget "https://bitbucket.org/eunjeon/mecab-ko/downloads/mecab-0.996-ko-0.9.2.tar.gz" | cs |
###
# mecab 설치
1 2 3 4 5 6 | tar zxvf mecab-0.996-ko-0.9.2.tar.gz cd mecab-0.996-ko-0.9.2/ configure --prefix=/home/blade/mecab make make install | cs |
###
# mecab 사전 설치
1 2 3 4 5 6 | cd /home/blade/zip wget "https://bitbucket.org/eunjeon/mecab-ko-dic/downloads/mecab-ko-dic-2.0.1-20150920.tar.gz" tar zxvf mecab-ko-dic-2.0.1-20150920.tar.gz configure --prefix=/home/blade/mecab/dic --with-mecab-config=/home/blade/mecab/bin/mecab-config \ --with-dicdir=/home/blade/mecab/dic \ --libexecdir=/home/blade/mecab/libexec/mecab make make install | cs |
만약, 아래와 같은 에러가 날 때에는
1 2 3 4 5 6 7 8 9 10 | configure --prefix=/home/blade/mecab/dic >> checking for a BSD-compatible install... /usr/bin/install -c >> checking whether build environment is sane... yes >> checking for a thread-safe mkdir -p... /bin/mkdir -p >> checking for gawk... gawk >> checking whether make sets $(MAKE)... yes >> checking for mecab-config... no >> configure: error: mecab-config is not found in your system | cs |
1 2 3 4 | ./autogen.sh configure --prefix=/home/blade/mecab/dic make make install | cs |
라이브러리와 사전을 설치한 후에 사전디렉토리를 다시 변경하고 싶다면?
(없을 것 같지만, 쓰다보면 의외로 생김.. ㅋㅋ)
1 2 | vi mecab_home/etc/mecabrc dicdir = mecab_home/dic ; 원하는 디렉토리로 변경 | cs |
사용자 사전을 변경할 때에 쓰이는 품사 태그
NNG 일반 명사
NN 명사
NNP 고유 명사
끝
###
EUCKR 인코딩 상태에서는 형태소 분석기가 제대로 동작하지않음.
iconv를 이용해서 utf8로 변환한다.
1 2 3 4 5 6 7 8 9 | iconv -f euckr -t utf-8 1.euckr > 1.utf8 mecab 1.utf8 |more input-buffer overflow. The line is split. use -b #SIZE option. [ SSO,*,*,*,*,*,*,* 건축 NNG,*,T,건축,*,*,*,* 과 JC,*,F,과,*,*,*,* 도시 NNG,*,F,도시,*,*,*,* - SY,*,*,*,*,*,*,* 광화문 NNG,*,T,광화문,Compound,*,*,광화/NNG/*+문/NNG/* | cs |
# 일반명사만 추출하고 싶다면
1 2 3 4 5 6 7 | mecab 1.utf8 |grep NNG |awk '{print $1}'|more input-buffer overflow. The line is split. use -b #SIZE option. 건축 도시 광화문 타워 층 | cs |
* 사용자 사전을 추가하려면, 손을 더 봐야함.
* 주의 #1, 프로그램을 인스톨하고 나서, 원본 디렉토리를 지우지않는다. (지우지않고 하는 방법도 있긴한데, 더 귀찮음)
* 주의 #2. 입력 데이터는 utf-8 인코딩으로 준비해놓는다. 포맷은 csv.
1 2 | cd /home/blade/zip/mecab-ko-dic-2.0.1/user-dic ls -alF *csv | cs |
만약, 나처럼 euc-kr 인코딩 환경에서 사용 중이라면, 사용자 사전 추가 작업을 하기 전에 입력용 데이터를 iconv를 이용해서 변환해놓는다.
1 | iconv -f eurkr -t utf8 blade.euckr.csv > blade.csv | cs |
* 주의 #3. 사용자 사전 예제는 인스톨 디렉토리에 있으므로 예제를 보고 잘 만들어놓는다.
기본으로 제공되는 사전이 잘 만들어져있기 때문에, 대부분의 사용자들은 사용자 사전까지 손댈 일이 없을 것이다. (이렇게 좋은 자료를 공개해주시다니, 제작자 여러분들께 감사드립니다. 꾸벅)
복합 명사나 고유 명사를 추가하려면, user-dic 디렉토리에 있는 예제를 참고한다.
주의 사항을 숙지했다면, 사용자 사전을 추가하는 작업자체는 별로 어렵지않음.
사용자 사전 디렉토리에 *csv 포맷으로 데이터를 넣는다. (/home/blade/zip/mecab-ko-dic-2.0.1/user-dic/)
1 2 | cd /home/blade/zip.mecab-ko-dic-2.0.1/tools/ add-userdic.sh | cs |
끝.
########################
# mecab-ko-dic보다 더 좋다는 NIADic을 설치.
# NIADic 사전 다운로드
wget "https://github.com/haven-jeon/NIADic/archive/master.zip"
'인터넷/모바일' 카테고리의 다른 글
NGINX + PHP + centOS 7 사용 시에 ‘No input file specified.’ 해결방법 (0) | 2018.12.03 |
---|---|
cmd 창이 실행될 때에 자동적으로 스크립트 실행하기. (0) | 2018.01.09 |
텍스트 브라우저 w3m 설치 (0) | 2017.02.23 |
모니터 해상도에 따른 도트 피치 (0) | 2017.02.20 |
ubuntu : passwd 변경 시에 authentication token manipulation error 해결 방법 (0) | 2017.02.19 |