0

約10GBの非常に大きなファイルがあります。メモリに読み込めないので、なんとか.matファイルに転送しました。しかし、クラスタリングを試みたときに「メモリ不足」の問題が引き続き発生します。それに対する究極の解決策は、それらのメモリをディスクに入れることだと思います。しかし、matlab から kmeans() メソッドを呼び出す必要があります。メソッドを書き直さずに、kmeans のローカル変数をディスクにも配置する方法はありますか?

4

3 に答える 3

0

データをロードすると、最初にコンピュータの RAM メモリにロードされるため、問題に対する唯一の最終的な解決策は、16 GB の RAM を用意することだと思います。

于 2014-02-14T16:37:04.943 に答える
0

大規模なデータ セットを処理するための戦略が必要です。可能性は次のとおりです。

  1. 十分なメモリを備えたシステムを使用する
  2. データセットの精度を下げます。小さなエラーをクラスタリングする場合、スケーリングは重要ではありません。可能であれば、属性をスケーリングされた uint8 または uint16 に変更します。(もちろん、関係のないデータはすべて削除します)
  3. より適切なアルゴリズムを使用してください。私はこの分野の専門家ではありませんが、CLARA と CLARANS は 2 つの選択肢です。これらのアルゴリズムは、データのサブセットのみを必要とするわけではありません。matfile と組み合わせて、関連する部分のみをメモリに保持できるはずです。
于 2014-02-14T17:12:59.800 に答える