タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

perlとPerlとmecabに関するnipotanのブックマーク (3)

  • Text::MeCab 0.20005 - アップグレードしてください - D-6 [相変わらず根無し]

    Text::MeCab 0.20005 - アップグレードしてください 前のエントリで調査した結果、Text::MeCab に深刻なメモリーリークが発見されました。 メモリを解放する処理自体は問題なく呼ばれていたのですが、そのタイミングがperlプロセスが終了する時点まで待たされている状態でした。最終的には確実に解放されていたのでなかなか気づかなかったのですが、node->nextやnode->prevのような関数を呼ぶとperlが終了するまでメモリが解放されませんでした。特に形態素解析する文章が巨大な場合、これは一瞬でメモリリークとなり、問題が顕在化します。 先ほどアップロードした0.20005でこの不具合を修正してありますので、CPAN登録が済み次第アップグレードを推奨いたします。急いでいる場合はcodereposからも入手できます。 ちなみに最終的なフィックスの決め手はXML::Li

  • Text::MeCabのメモリ管理(調査中) - D-6 [相変わらず根無し]

    Text::MeCabのメモリ管理(調査中) Text::MeCabがおかしい。某社社内より報告アリ。毎度ありがとうございます。 で、すでに数時間そのコードとにらめっこしている。なぜ思い通りに動かないのかよくわからない。根的な問題はわかった。Text::MeCab::NodeオブジェクトがDESTROYされるのがなぜかスコープを脱出した時ではなく、Global Destruction時のタイミングで起こっているのが問題。 どういうことかというと、Perlは2つのタイミングでガーベッジコレクションを行う。ひとつはステートメントとステートメントの間(スコープが変わる時も含む)、そしてもうひとつはPerlのインタプレタ自体がメモリから削除されるGlobal Destruction時。 現在のText::MeCabでは、以下のように$nodeオブジェクトをどんどん変更して行っても、さっきまで入っ

  • Text::MeCab::Dictでカスタム辞書 - D-6 [相変わらず根無し]

    Text::MeCab::Dictでカスタム辞書 ちょっとリリースそのものでバタバタしてしまいましたが、Text::MeCabを使って、mecabのカスタム辞書に語句を比較的容易に追加できるようにしました。例はText::MeCab 0.20004に同梱されているeg/add_custom.plを参照してください。 自分の場合はちょっと人名をがばっと追加したかったのでAcme::Actor::JA(codereposのみ -- CPANにはアップしてません)とText::MeCab::Dictを使って3000人程の人名を追加してやりました。これをすると何がいいかというと、これまでだとものすごく有名な人の名前で検索する場合とかに「姓」「名」に名前が分けられてしまっていたところがその名前全体をひとつの語句として認識してくれるようになります。 # 追加前 shell > 堂光一 堂 名詞,

    nipotan
    nipotan 2008/01/11
    lestrrat++
  • 1