[mecab-users 152] Re: コーパスからの学習について

アーカイブの一覧に戻る

Taku Kudo taku****@chase*****
2006年 8月 2日 (水) 15:37:00 JST


工藤です

> >> メモリを増設すればこのエラーは解決するのでしょうか?
>
> >はい。解決します。
>
> なので、早速メモリを増設し 512M から 1G にメモリを増設し再度8万行のコーパスを学習させてみました。
> ところが、また同じエラーが発生してしまいました。
> これはおかしいな。と思ったので、コーパスから学習している間、パソコンのメモリ使用状況を監視してやってみたのですが、8万行の場合に1Gのメモリをフルに使っていないにもかかわらず上記のようなエラーが発生してしまいます。

ユーザごとに使えるメモリの上限が決まってるかもしれません。
とりあえず、メモリが4GB 程度のった 32bit 環境のマシンで
ipadic のモデル作成はできます。


> ということはこのエラーはメモリ不足ではなく、mecab 自体のプログラムがメモリ違反をしているのではないか?と考えました。
>
> また、juman5.0 の辞書を使うとメモリをかなり食うということなので、mecab-ipadic-2.7 を使ってコーパスを学習させてみたのですが、結果は mecab-jumandic-5.1 と同じ結果になりました。
>
> さらに、コーパスの量を増やし 14万行 で学習を行なったところ 8万行では
> Done! writing model file ...
> の直後にエラーが出ていたのが、コーパスをスクロールしている場面でエラーが発生し、
>
> terminate called after throwing an instance of 'std::bad_alloc'
>   what():  St9bad_alloc
> Abort trap (core dumped)
> パイプ破壊

std::bad_alloc 例外はメモリが確保できなかったときの例外なので
メモリ不足以外考えにくいです。メモリのアクセス違反があると、別の
エラーで落ちます。



mecab-users メーリングリストの案内
アーカイブの一覧に戻る