【发布时间】:2020-11-05 13:27:11
【问题描述】:
我正在尝试计算稀疏矩阵的余弦相似度
<63671x30 sparse matrix of type '<class 'numpy.uint8'>'
with 131941 stored elements in Compressed Sparse Row format>
问题是我使用了 scikit-learn 的 cosine_similarity 函数,但我得到了这个错误:
memoryError: Unable to allocate 29.7 GiB for an array with shape (3984375099,) and data type float64
我在谷歌上搜索了建议我增加页面文件大小的错误,但这样做之后,我的电脑就死机了,我不得不强制关机并重新启动。有什么办法可以克服吗?
【问题讨论】:
-
你能添加更多关于输入的细节吗?形状,密度等
-
@Marat 它不是很密集,基本上它是 32 个类的矢量化,并且矩阵的形状已经在帖子中。
-
好吧,你有 130K+ 个项目,因此有数十亿对,稀疏的特征根本没有帮助。对于这个问题,您需要考虑其他一些事情,以使其易于管理。
-
显示准确的调用和错误回溯。
-
你的矩阵的取值范围是多少?只是二进制或更多?此外,考虑到您的数据有多稀疏,错误消息表明该产品比预期的要密集得多。这似乎表明少数特征比其他特征更频繁。你能对此发表评论吗?它可能有助于设计解决方案。
标签: python numpy nlp recommendation-engine