Open9
KKC(かな漢字変換)を作りたい
ピン留めされたアイテム

KKCを作りたいのでいろいろメモ


Viterbi(ビタビ)アルゴリズムというやつが一番大事。
とりあえずこのコードでは動的計画法の一種であるこの実装では変換候補に対して
- 単語候補を取得
- その単語に対して最適な前ノードを選択
- スコアを計算してノードを追加
スコアを計算する際に、単語自体のスコア、getScoreOfWord
と連続する品詞のスコア getScoreBetweenPosTag
を用いているみたい。

そしてそれを保存するフォーマットがLOUDSとよばれるものらしい

Rust用にもライブラリある

辞書引きアルゴリズムとして、エイホ–コラシック法っていうのもあるらしい

N-Bestだったり分節分け、学習の副作用などいろいろ載っている。
正直あんまりわかってない...

単語ラティス(辞書から引いた文字を格納するための構造)関連
形態素解析における高速な単語ラティス生成より

KKCではないが参考になる