python mining
大きすぎてRAMに収まらないが、単一のHD内に収まるデータセットに興味があります。
hdf5
を使用して、データをファイルとしてエクスポートできることを理解していますpytables
。また、numexpr
基本的なアウトオブコア計算も可能です。
次に何が来るでしょうか?可能な場合はミニバッチ処理を行い、ミニバッチ処理が使用できない場合は線形代数の結果に基づいて計算を分解しますか?
または、見逃した高レベルのツールはありますか?
洞察をありがとう、
python mining
大きすぎてRAMに収まらないが、単一のHD内に収まるデータセットに興味があります。
hdf5
を使用して、データをファイルとしてエクスポートできることを理解していますpytables
。また、numexpr
基本的なアウトオブコア計算も可能です。
次に何が来るでしょうか?可能な場合はミニバッチ処理を行い、ミニバッチ処理が使用できない場合は線形代数の結果に基づいて計算を分解しますか?
または、見逃した高レベルのツールはありますか?
洞察をありがとう、
具体的に何をしたいのですか? 例を 1 つか 2 つ教えてください。
numpy.memmapは簡単です —
ディスク上のバイナリファイルに格納されている配列へのメモリ マップを作成します。
メモリ マップト ファイルは、ファイル全体をメモリに読み込まずに、ディスク上の大きなファイルの小さなセグメントにアクセスするために使用されます。Numpy の memmap は配列のようなオブジェクトです ...
SO の numpy+memmapも参照してください。
scikit-learn の人々は非常に知識が豊富ですが、特定の質問を好みます。
サブマップ縮小サイズのデータセットで作業する必要があります。SAS の深刻な代替手段として python pandas を調査し始めたとき、私は SO にこの質問を投げかけました: pandas を使用した「大規模データ」ワークフロー
そこに提示された答えは、パンダの HDF5 インターフェイスを使用して、パンダのデータ構造をディスクに直接保存することを提案しています。保存したら、バッチでデータにアクセスし、モデルを段階的にトレーニングできます。たとえば、scikit-learn には、データセットの増分部分でトレーニングできるいくつかのクラスがあります。そのような例の 1 つがここにあります。
http://scikit-learn.org/0.13/modules/generated/sklearn.linear_model.SGDClassifier.html
メソッドを実装するすべてのクラスは、partial_fit
段階的にトレーニングできます。私はまだこの種の問題に対する実行可能なワークフローを取得しようとしており、可能な解決策について話し合うことに興味があります.