HanDic(한딕)は,形態素解析エンジンMeCabで現代韓国語を解析するための辞書です.12万を超える辞書項目,書きことばを中心とした6000文以上の学習用データで構築されています.
著作権の問題があるため学習用データ自体の配布はしませんが,学習用モデルファイルはパッケージに含まれています.
- MeCab
- Python or Perl
git clone
$ git clone https://github.com/okikirmui/handic.git
もしくはZIPファイルをダウンロード
cloneしたリポジトリ配下のseedディレクトリに移動
$ cd handic/seed/
ZIPファイルをダウンロードした場合は解凍し,seedディレクトリに移動
$ cd handic-master/seed/
バイナリ辞書の作成
$ /usr/local/libexec/mecab/mecab-dict-index -f utf8 -t utf8
パラメータ学習用のモデルファイルmodel
が同梱されているので,それを使って配布用辞書を作成(インストール先が/usr/local/lib/mecab/dic/handic
の場合)
$ /usr/local/libexec/mecab/mecab-dict-gen -o /usr/local/lib/mecab/dic/handic -m model
解析用バイナリ辞書の作成
$ cd /usr/local/lib/mecab/dic/handic
$ /usr/local/libexec/mecab/mecab-dict-index -f utf8 -t utf8
MeCab実行時に-d
オプションでHanDic辞書ファイルのあるディレクトリを指定します.
$ mecab -d /usr/local/lib/mecab/dic/handic
この方法では,実行するたびに辞書を指定する必要があります.
ホームディレクトリに.mecabrc
を作成して,dicdir
にHanDic辞書ファイルのあるディレクトリを記述します.
dicdir = /usr/local/lib/mecab/dic/handic
この方法では,常にHanDicを使って解析することになります.
HanDicは,UTF-8エンコーディングされたテキストを入力として形態素解析を行います. また,入力は通常のハングル(Hangul Syllables「ハングル音節文字」領域の文字,いわゆる「完成型ハングル」)ではなく,初声・中声・終声の字母に分解した入力(Hangul Jamo「ハングル字母」領域の文字)である必要があります. 例えば完成型ハングルの「몸」(U+BAB8)は,字母に分解すると「ㅁ」(U+1106)「ㅗ」(U+1169)「ㅁ」(U+11B7)となります.
こうした字母への分解は,任意のスクリプトを使って行っても構いません.なお,本プロジェクトではtools
ディレクトリにPerl用スクリプトk2jamo.pl
とPython用スクリプトk2jamo.py
を同梱しています.
コマンドラインやターミナルで,k2jamo.pl
を使ってinput.txt
(例)を解析する場合:
$ perl k2jamo.pl input.txt | mecab -d /usr/local/lib/mecab/dic/handic
あるいはコマンドラインやターミナルで直接入力をする場合:
$ echo "겨울 방학 때 뭐 했어요?" | perl k2jamo.pl | mecab -d /usr/local/lib/mecab/dic/handic
のように行うことができます.
- Yoshinori Sugai(Kindai University)
Copyright (c) 2011- Yoshinori Sugai. All rights reserved.
''HanDic'' is under BSD-3-Clause.