Kanzen
情報処理学会「文書処理とヒューマンインタフェース研究会」(1987)に掲載された論文「Emacsと親和性の高い日本語入力法 Kanzen」(竹内郁雄・杉村利明・天海良治、NTT電気通信研究所)で発表された日本語入力・かな漢字変換システム。TAO/ELIS(Lispマシン)上のEmacs互換エディタ「Zen」に組み込まれた。 #nlp #emacs
特徴
- Emacs本来のコマンド体系との高い整合性を保つ
- 編集とかな漢字変換が透過的に融合しており、専用の「変換中モード」を持たない。編集コマンドはいつでもどこでも実行できる
- WYSIWYGなリアルタイム画面表示
- モードの区別をカーソル形状(または色)で示し、ユーザの注視点を安定させる
辞書構成
単語辞書はユーザ辞書・基本単語辞書(約7万語)・ディスク単語辞書の3階層で構成される。まず高速なユーザ辞書と基本単語辞書を検索し、候補が見つからない場合のみディスク単語辞書も検索する2段階方式を採る。
変換アルゴリズム
変換対象文字列全体から、単語間の接続関係を表した「解析グラフ」を構築する。各ノードは自分から先頭ノードに至る経路のうち最小コストからm番目までの経路を保持しており、この特性により複数文節にまたがる誤変換(例:「彼ははだし」→「枯葉派だし」)を防ぎつつ、第1文節のみを高速に確定できる。1回の変換・再表示は約100ミリ秒のオーダーで、人間が遅延を感じない限界とされる約50ミリ秒に近いとされる。
辞書のデータ構造について
論文本文では辞書は上記の3階層構成のみが述べられており、辞書引きの内部アルゴリズム(索引構造)についての記述はない。同じくNTTで研究された日本語入力の高速化技術としてダブル配列があるが、ダブル配列の提案(青江順一, 1989年)はKanzenの発表(1987年)より後であり、両者の直接の関連は文献上確認できていない。