コードネームは初話ユウ

自然言語処理でいろいろやってみる

徐々に改良中

KNBコーパスで正答率が出るようになると、やはり良い数字を出したくなる。というわけでここしばらくは正答率を上げるために係ろっとの改良作業をやっていた。

誤答を出した対象文をログ付きで解析し、ログを見て誤答の原因を割り出して修正、という作業を繰り返すわけだが、最初のうちは実際の係り受けの誤りよりも、正答チェックの環境の方にバグがあるのが見つかり、そっちを直していた。前の記事の最後で訂正が入ったのはそのため。いや見苦しくてお恥ずかしい。

2週間ほどやって、現在の状況:

      正答  誤答   正答率

係ろっと   17564      3110      85.0%

(cabocha   18113      2561      87.6%   w/v0.64, ipadic)

 

この版を v0.2 としてまた github に載せておく。


cabochaとの差 2.6%。だいぶ近づいてきた。というか、誤答と判定されたものを調べてみると、コーパスの方が間違っているものや、正解が2通り(以上)考えられて実は誤答と言えないものもけっこうな頻度であるので、実質的には差はもっと小さいと思う。

cabochaでは素性が2万個、素性を組み合わせた特徴が4万個ある。そのためソースを追っても、計算方法自体はわかるのだが、本来知りたかった「係り受けはどういう基準で判定するのか」については結局よくわからなかった。係ろっとでは評価パラメタはv0.2で51個。アルゴリズムも読めばわかる程度の簡潔さなので、係り受けの基準についてはかなり「実感として理解できる」レベルになったと思う。

現状v0.2では、品詞分類の情報しか使用してなくて、個々の単語については区別していない。(ごく一部の基本的な助詞・助動詞を除く。)この情報を使えば更に精度が上がることが期待されるので、cabochaを越えることも十分可能では、…と思っているのだが、どうなんだろう?次はこれをやってみる予定。

 * * * *

…という記事を書いてさあ投稿しようとしたら、cabochaのv0.65というのが出ていた。なのでざっと試してみた。


      正答  誤答   正答率

cabocha    19348      1326      93.6%   (w/v0.65, ipadic)


…ん?上がりすぎじゃね?w  かなり目標が遠くなった感があるが、まあ地道にやっていきますか。