kousa****@nttda*****
kousa****@nttda*****
2007年 10月 31日 (水) 08:54:47 JST
幸坂です。おはようございます。 さっそくrev603を試したところ、正常動作を確認しました。 また、N-gram、部分一致検索ともに正常動作を確認しました。 ご対応ありがとうございました。 > -----Original Message----- > From: senna****@lists***** > [mailto:senna****@lists*****] On Behalf Of > morit****@razil***** > Sent: Tuesday, October 30, 2007 8:21 PM > To: sennaの開発に関する日本語での議論 > Subject: [Senna-dev 713] Re: 類似文書検索 > > > 森です。こんにちは。 > > senna rev603でこの問題を修正できたと思います。 > > なお、「*S1 "雨です"」 のように > 検索語が部分一致しないといけないパタンについては、 > もともと類似文書検索ではサポートしないつもりだったのですが、 > 今回試験的に実装してみました。 > > 試してみていただければ幸いです。 > > >>> morit****@razil***** さんは書きました: > > 森です。こんにちは。 > > > > ご報告ありがとうございます!! 確かにこれは問題ですね。 > > 対処させていただきたいと思います。 > > > > >>> kousa****@nttda***** さんは書きました: > > > 幸坂です。こんにちは。 > > > > > > 類似文書検索について、正常に検索できない問題がありましたので、 > > > 報告させて頂きます。 > > > > > > Senna1.0.9 > > > MeCabを利用したインデックスを構築。 > > > レコードは「豪雨」のみ。 > > > > > > パターン1) 「*S1 "豪雨です"」 -> ヒット > > > パターン2) 「*S1 "今日は豪雨です"」 -> ヒットせず (おかしい) > > > > > > 内部を見てみると、パターン1の場合は、 > > > 「豪雨」「です」 > > > と分割して、それぞれの単語がインデックスに存在するかチェックしていま す。 > > > > > > しかし、パターン2の場合は、 > > > 「今日」「は」「豪雨」「です」 > > > と分割して、「今日」がインデックスに存在するかチェックします。 > > > しかし、インデックスに存在しないため、なぜかループを抜けてしまい、 > > > 「は」「豪雨」「です」 > > > がチェックされていないように見受けられます。 > > > > > > 以下のように変更すると、それっぽい結果が返ってきます。 > > > > > > diff RELEASE-1.0.9/lib/index.c RELEASE-1.0.9_fix/lib/index.c > > > 2211c2211 > > > < while (!lex->status) { > > > --- > > > > while (lex->status != sen_lex_done) { > > > 2235a2236 > > > > if (!limit) { return sen_success; } > > > > > > diff RELEASE-1.0.9/lib/lex.c RELEASE-1.0.9_fix/lib/lex.c > > > 292c292 > > > < if (lex->status) { return SEN_SYM_NIL; } > > > --- > > > > if (lex->status == sen_lex_done) { return SEN_SYM_NIL; } > > > 315c315 > > > < } else { > > > --- > > > > } { > > > > > > しかし上記の対応では、 > > > 「*S1 "雨です"」 > > > とすると、エラーメッセージが返ってしまいます・・・。 > > > |e| cursor open failed (2) > > > 検索キーワードが部分一致してしまうとエラーになるようです。 > > > > > > N-gramに関しては調べていません・・・。 > > > > > > 以上です。 > > > > > > _______________________________________________ > > > Senna-dev mailing list > > > Senna****@lists***** > > > http://lists.sourceforge.jp/mailman/listinfo/senna-dev > > > > > -- > > morita > > > > _______________________________________________ > > Senna-dev mailing list > > Senna****@lists***** > > http://lists.sourceforge.jp/mailman/listinfo/senna-dev > > > -- > morita > > _______________________________________________ > Senna-dev mailing list > Senna****@lists***** > http://lists.sourceforge.jp/mailman/listinfo/senna-dev >