首页 > 解决方案 > 使用 toarray() 方法显示内存错误

问题描述

xtrain,xtest,ytrain,ytest = train_test_split(df_train['clean_comments'],df_train['label'].values,test_size=0.3,shuffle = True)
vectorizer = TfidfVectorizer(strip_accents='unicode',analyzer='word',ngram_range=(1,3),norm='l2')
vectorizer.fit(xtrain)
x_train = vectorizer.transform(xtrain)
x_train = x_train.toarray()

我正在尝试使用 toarray() 方法将稀疏数组转换为密集数组,但它显示内存错误。我已经尝试过 todense() 方法,但也没有用。

标签: pythontfidfvectorizer

解决方案


稀疏矩阵仅用于在内存中存储与零不同的值,因此非常适合词袋矩阵。如果您尝试将稀疏矩阵转换为密集格式,则会消耗更多内存,因为它还存储零。如果您没有足够的内存,则会引发内存不足错误。


推荐阅读