我用文本数据保存了我的特征,其中pickle采用稀疏矩阵格式,形状为(323549,4119259)。我正在尝试使用sklearn库对它们执行奇异值分解,但是,我不断收到内存错误,这表明我的计算机不够强大,无法执行功能缩减。有更有效的方法吗?这是我使用的代码。
import numpy as np
from sklearn.decomposition import TruncatedSVD
import pickle
with open('vectors.pickle') as f: # Python 3: open(..., 'wb')
matrix = pickle.load(f) #Loads the TF-IDF Vectors
print('LSAING . . .')
lsa = TruncatedSVD(n_components=300, n_iter=10) #Perform the Feature Reduction
lsa.fit(matrix)
matrix_T = lsa.fit_transform(matrix)
print('Dumping')
with open('lsa.pickle', 'w') as f:
pickle.dump(lsa, f) #Dumps the new features
我正在使用带有8GB RAM的i7-5500处理器。