1

大きなデータのクラスタリングに sklearn Kmeans Minibatch を使用していますが、メモリ エラーが発生します。

これは、この構成での私のラップトップ構成であり、正常に機能しています。

  1. コア i5 64 ビット
  2. パイソン 3.6.2
  3. 8GBのRAM

TfidfVectorizer Xを .npz ファイル (426 Mb) に保存しました。次に、異なる数のクラスターを使用して、 そのXに対してクラスタリングを数回実行します。

X = sparse.load_npz("D:\clustering_final\sp-k2.npz")

n_samples: 850900、n_features: 1728098

MiniBatchKMeans を使用した疎行列データのクラスタリング

Batch_size=1000、n_clusters=500、compute_labels=True、init='k-means++'、n_init=100

私のpythonスクリプトはこのラップトップ構成で正常に動作しますが、別のラップトップで同じPython(すべて同じコピーされたpython36フォルダー)を使用すると、メモリエラーが発生します。他のラップトップの構成が高くても:

  1. コア i5 64 ビット
  2. パイソン 3.6.2
  3. 16GBのRAM

    km.fit(X) File "C:\python36\lib\site-packages\sklearn\cluster\k_means_.py", line 1418, in fit init_size=init_size) File "C:\python36\lib\site-packages\sklearn\cluster\k_means_.py", line 684, in _init_centroids x_squared_norms=x_squared_norms) File "C:\python36\lib\site-packages\sklearn\cluster\k_means_.py", line 79, in _k_init centers = np.empty((n_clusters, n_features), dtype=X.dtype) MemoryError

必要なライブラリとその他の依存関係をすべて確認しましたが、低構成のラップトップで完全に動作します。高構成のラップトップで実行できないのはなぜですか?

奇妙に聞こえるかもしれませんが、本当です。

4

0 に答える 0