Python 在scikit学习中运行Randomforest的MemoryError
下面是中给出的Python 在scikit学习中运行Randomforest的MemoryError,python,python-2.7,machine-learning,scikit-learn,Python,Python 2.7,Machine Learning,Scikit Learn,下面是中给出的Python示例。但是,下面的代码段给出了错误消息,如MemoryError。什么可能导致此错误 forest = forest.fit(train_data_features, train["sentiment"]) Traceback (most recent call last): File "C:/Users/PycharmProjects/Project3/demo4.py", line 60, in <module> forest = forest.
Python
示例。但是,下面的代码段给出了错误消息,如MemoryError
。什么可能导致此错误
forest = forest.fit(train_data_features, train["sentiment"])
Traceback (most recent call last):
File "C:/Users/PycharmProjects/Project3/demo4.py", line 60, in <module>
forest = forest.fit(train_data_features, train["sentiment"])
File "C:\Users\AppData\Roaming\Python\Python27\site-
packages\sklearn\ensemble\forest.py", line 195, in fit
X = check_array(X, dtype=DTYPE, accept_sparse="csc")
File "C:\Users\AppData\Roaming\Python\Python27\site-
packages\sklearn\utils\validation.py", line 341, in check_array
array = np.array(array, dtype=dtype, order=order, copy=copy)
MemoryError
forest=forest.fit(训练数据特征,训练[“情绪”])
回溯(最近一次呼叫最后一次):
文件“C:/Users/PycharmProjects/Project3/demo4.py”,第60行,在
forest=forest.fit(训练数据特征,训练[“情绪”])
文件“C:\Users\AppData\Roaming\Python\Python27\site-
packages\sklearn\employee\forest.py”,第195行,适合
X=检查数组(X,dtype=dtype,accept\u sparse=“csc”)
文件“C:\Users\AppData\Roaming\Python\Python27\site-
packages\sklearn\utils\validation.py”,第341行,在check\u数组中
array=np.array(array,dtype=dtype,order=order,copy=copy)
记忆者
内存错误
,顾名思义,意味着您的可用内存即将耗尽
如果您遵循中的示例代码,那么有几件事可以帮助您:
- 当不再需要变量时,使用
对变量进行deltedel
(例如,
在第62行之后不需要)clean\u train\u reviews
- 在第42行之后,只需要
,其余的列车[“情绪”]
列车可以丢弃以释放内存
- 不要在开始时同时阅读训练集和测试集。
集仅在构建林后才需要,此时不再需要与列车集相关的任何其他内容测试
- 整个训练部分可以封装在一个返回森林的函数中,该函数将处理此后不再需要的所有引用
另一个解决方案是从32位Python切换到64位。根据您的建议,我创建了doTrain()函数,允许Python清理变量。在我运行本教程时,它单独解决了
内存错误。操作系统:Ubuntu 14.04,RAM 8G