Home Top About Help Login Search

mecab入れるよ

ID: 15
creation date: 2009/10/04 13:39
modification date: 2009/10/04 13:39
owner: naoto5959
tags: linux,mecab

twitter botをもっとリッチにしたいんですね。というわけで、形態素解析エンジンのmecab入れようと思います。

MeCab: Yet Another Part-of-Speech and Morphological Analyzer

archiveの取得

本体

# curl -O http://downloads.sourceforge.net/project/mecab/mecab/0.98/mecab-0.98.tar.gz?use_mirror=jaist

perlバインディング

# curl -O http://downloads.sourceforge.net/project/mecab/mecab-perl/0.98/mecab-perl-0.98.tar.gz?use_mirror=jaist

辞書

# curl -O http://iij.dl.sourceforge.jp/naist-jdic/40865/mecab-naist-jdic-0.6.1-20090630.tar.gz
/download

# curl -O http://download.wikimedia.org/jawiki/latest/jawiki-latest-all-titles-in-ns0.gz

インストール

本体

# tar zxvf mecab-0.98.tar.gz
# cd mecab-0.98
# ./configure
# make
# make install
# cd /var/shared/lib/
# ln -s mecab-0.98 mecab

辞書

# tar zxvf mecab-naist-jdic-0.6.1-20090630.tar.gz
# cd mecab-naist-jdic-0.6.1-20090630
# ./configure --with-charset=utf8 

辞書の設定

# vi /usr/local/etc/mecabrc
dicdir = /usr/local/lib/mecab/dic/naist-jdic/

Wikipediaのタイトルリストから辞書を作る

# gunzip jawiki-latest-all-titles-in-ns0.gz

makedic.rcを作成

以下を参考に

mecab辞書にwikipediaのタイトル名を追加

#!/usr/bin/ruby

open($*[0]).each do |line|
  title = line.strip

  next if title =~ /^\./            
  next if title =~ /[0-9]{4}/
  next if title =~ /^[-.0-9]+$/

  score = [-36000.0 ,-400 *(title.size**1.5)].max.to_i
  print "#{title},0,0,#{score},名詞,一般,*,*,*,*,#{title},*,*,wikipedia_keyword,\n" if title.size > 9
end
# ruby ./makedic.rb jawiki-latest-all-titles-in-ns0 > jawikipedia.csv
# nkf -e jawikipedia.csv > /usr/local/lib/mecab/dic/naist-jdic/jawikipedia.csv
# cd /usr/local/lib/mecab/dic/naist-jdic/
# /usr/local/libexec/mecab/mecab-dict-index -f euc-jp -t utf8
0 comments
: