以下のコードは、完了する前にシステムのメモリが不足する原因となります。大きなスパース行列でのコサイン類似度numpy with
次のような大きな行列でコサインの類似性を計算するより効率的な方法を提案できますか?
元の行列(mat
)の65000行のそれぞれについて計算したコサイン類似度を、他のすべてに対して相対的に計算し、結果が65000 x 65000の行列になるようにしたいと思います。各要素はコサインの類似性です元の行列の2つの行。
import numpy as np
from scipy import sparse
from sklearn.metrics.pairwise import cosine_similarity
mat = np.random.rand(65000, 10)
sparse_mat = sparse.csr_matrix(mat)
similarities = cosine_similarity(sparse_mat)
最後の行を実行した後、私は常にメモリが足りなくなり、プログラムが凍結したり、MemoryErrorでクラッシュしたりします。これは、私が8GBのローカルRAM上か64GBのEC2インスタンス上で動作するかに関係なく発生します。
'のような塊でそれを実行しますゼロ。 – hpaulj