如何使用 scikit-learn 在大型 csv 数据(~75MB)上训练模型而不会遇到内存问题?
我使用 IPython notebook 作为编程环境,使用 pandas+sklearn 包来分析来自 kaggle 的数字识别器教程的数据。
KNeighborsClassifier
用于预测。
问题:
使用 read_csv 函数加载大型数据集时发生“MemoryError”。为了暂时绕过这个问题,我必须重新启动内核,然后 read_csv 函数成功加载文件,但是当我再次运行相同的单元格时会出现同样的错误。
当read_csv
函数成功加载文件时,对 进行更改后dataframe
,我可以将特征和标签传递给 KNeighborsClassifier 的 fit() 函数。此时会出现类似的内存错误。
我尝试了以下方法:
逐块迭代 CSV 文件,并相应地拟合数据,但问题是每次数据块的预测模型都会被覆盖。
您认为我可以做些什么来成功训练我的模型而不会遇到内存问题?