fenix.ne.jp の G-HAL です。
 Anthyの文節区切りの際に、
文節を分解した複合語を使った文節区切り候補と、
文節を連結して1単語化した複合語を使った文節区切り候補と、
複合語を使わない文節区切り候補の、
3種類の候補の評価が循環してしまい、
結果、評価の低い文節区切りを採用してしまう問題(バグ?)を
見つけました。
 修正パッチを作ってみましたので送付致します。

 添付のパッチでは
「文節を連結して1単語化した複合語を使った文節区切り候補」の評価を
強制的に最下位にする事で、評価の循環を切っています。


発症例:
 「きゃっかんてき」を変換した場合。

単語辞書から生成した名詞「|きゃっかんてき|」(「|客観的|」など)の評価
    <     複合語辞書から1単語化して生成した名詞
           「|きゃっかん_てき|」(「|客観_的|」など)の評価
# src-splitter/lattice.c の cmp_node() の /* 最後に遷移確率を見る */ の部分。

上記「|きゃっかん_てき|」の評価
    <    単語辞書から生成した副詞「|きゃっ|」(「|キャッ|」など)と
          複合語辞書から生成して文節を分割した名詞
          「|かん|てき|」(「|観|的|」など)を
          連結して生成した候補「|きゃっ|かん|てき|」の評価
# src-splitter/lattice.c の cmp_node() の cmp_node_by_type_to_type() 呼出の部分。

上記「|きゃっ|かん|てき|」の評価 < 上記「|きゃっかんてき|」の評価
# src-splitter/lattice.c の cmp_node() の /* 最後に遷移確率を見る */ の部分。

と、評価がループしており、
最後に生成された候補「|きゃっ|かん|てき|」が採用されてしまいます。

================================================================
                         (Now Printing)                         
================================================================

Attachment: anthy-9100h.debugpatch.bz2
Description: anthy-9100h.debugpatch.bz2

_______________________________________________
Anthy-dev mailing list
Anthy-dev@lists.sourceforge.jp
http://lists.sourceforge.jp/mailman/listinfo/anthy-dev

メールによる返信