我對python mining
數據集太大而無法坐在RAM中,但坐在一個HD內。用於核心外計算/數據挖掘的Python工具
據我所知,我可以導出數據爲hdf5
文件,使用pytables
。 numexpr
也允許一些基本的核外計算。
接下來會發生什麼?在可能的情況下進行小批量配料,並且在小批量配料不能使用時依靠線性代數結果來分解計算?
還是有一些更高水平的工具,我錯過了?
感謝見解,
我對python mining
數據集太大而無法坐在RAM中,但坐在一個HD內。用於核心外計算/數據挖掘的Python工具
據我所知,我可以導出數據爲hdf5
文件,使用pytables
。 numexpr
也允許一些基本的核外計算。
接下來會發生什麼?在可能的情況下進行小批量配料,並且在小批量配料不能使用時依靠線性代數結果來分解計算?
還是有一些更高水平的工具,我錯過了?
感謝見解,
在sklearn 0.14(將在未來幾天發佈)中,有一個完整的文本文檔核外分類示例。
我認爲這可能是一個很好的例子入手:
http://scikit-learn.org/dev/auto_examples/applications/plot_out_of_core_classification.html
在下一版本中,我們將與更多的分類擴展這個例子和用戶指南中添加文檔。
注意:你也可以用0.13重現這個例子,所有的構建塊已經存在。
你到底想幹什麼—你可以給一個或兩個,請例子是什麼?
numpy.memmap容易—
創建存儲器映射到存儲在磁盤上的一個二進制文件的陣列。
內存映射文件用於訪問磁盤上大型文件的小段,而不會將整個文件讀入內存。 NumPy的的 MEMMAP的是陣列狀物體...
也numpy+memmap看到左右。
scikit-learn人們非常瞭解,但更喜歡具體的問題。
我有一個類似的需求來處理sub map-reduce大小的數據集。我提出這個問題上,所以當我開始研究蟒蛇大熊貓作爲一項嚴肅的替代SAS:"Large data" work flows using pandas
答案提出使用HDF5接口從大熊貓大熊貓數據結構存儲直接在磁盤有提示。一旦存儲,您可以批量訪問數據並逐步訓練模型。例如,scikit-learn有幾個類可以在數據集的增量部分進行培訓。一個這樣的例子在這裏找到:
http://scikit-learn.org/0.13/modules/generated/sklearn.linear_model.SGDClassifier.html
實現了partial_fit
方法可以逐步訓練的任何類。我仍然試圖爲這些問題找到一個可行的工作流程,並且希望討論可能的解決方案。
感謝您的回答丹尼斯。看起來skilearn有小型配料設施。其實我正在尋找最合理的方式來處理子圖的縮小尺寸的核心外學習。特別是我努力瞭解hdf5,sql,nosql的相對優勢。 – user17375 2013-01-31 15:08:12
Zelazny7的大數據工作流問題更好,因爲具體,並得到更好的答案 – denis 2013-03-18 11:20:22