использование dask параллельной подгонки записей на предикторах sklearn (обертка ParallelPostFit) - PullRequest
0 голосов
/ 28 сентября 2018

Я пытаюсь оценить предиктор sklearn, который я сделал для массива входных данных, превышающего объем памяти.Я прочитал документацию о параллельном посте https://dask -ml.readthedocs.io / en / latest / modules / generate / dask_ml.wrappers.ParallelPostFit.html и все еще испытываю некоторые проблемы.Следующий код иллюстрирует проблему, с которой я сталкиваюсь:

from dask.base import tokenize
import numpy as np
import dask.array as da
from dask.array import Array
from sklearn.linear_model import LinearRegression
from dask_ml.wrappers import ParallelPostFit
"""
for stack overflow question
"""
x = np.linspace(0,100,100,dtype=np.int32)
y = np.linspace(0,100,100,dtype=np.int32)
z = np.linspace(0,100,100,dtype=np.int32)

Y = np.random.normal(size=(100,))
X = np.stack([x,y,z],axis=1)
reg = LinearRegression().fit(X,Y)

#now try to compute on dask arrays over the whole space
x= da.linspace(0,100,100,chunks=(10,)).astype(np.int32)
y= da.linspace(0,100,100,chunks=(10,)).astype(np.int32)
z= da.linspace(0,100,100,chunks=(10,)).astype(np.int32)
x,y,z = da.meshgrid(x,y,z,sparse=False,indexing='ij')
stacked = da.stack([x.flatten(),y.flatten(),z.flatten()],axis=1)
clf = ParallelPostFit(estimator=reg)
clf.predict(stacked)

Исключение clf.predict выдает ошибку значения. Невозможно отбросить ось с более чем 1 блоком.Пожалуйста, используйте atop вместо.

, который я не понимаю, как исправить.Спасибо за любую помощь.

...