scikit-learn を使用して、メモリの問題を発生させずに大きな csv データ (~75MB) でモデルをトレーニングするにはどうすればよいですか?
プログラミング環境として IPython ノートブックを使用し、pandas+sklearn パッケージを使用して、kaggle の数字認識チュートリアルからのデータを分析しています。
データはウェブページ、私のコードへのリンクで利用できます。エラーメッセージは次のとおりです。
KNeighborsClassifier
予測に使用されます。
問題:
read_csv 関数を使用して大規模なデータセットをロードすると、「MemoryError」が発生します。この問題を一時的に回避するには、カーネルを再起動する必要があります。その後、read_csv 関数はファイルを正常にロードしますが、同じセルを再度実行すると同じエラーが発生します。
read_csv
関数がファイルを正常にロードしたら、に変更を加えた後dataframe
、機能とラベルを KNeighborsClassifier の fit() 関数に渡すことができます。この時点で、同様のメモリ エラーが発生します。
私は次のことを試しました:
CSV ファイルをチャンク単位で反復処理し、それに応じてデータを適合させますが、問題は、予測モデルがデータのチャンクに対して毎回上書きされることです。
メモリの問題に遭遇することなく、モデルを正常にトレーニングするにはどうすればよいと思いますか?