Получение ошибки при использовании numpy.concatenate - PullRequest
0 голосов
/ 13 апреля 2019

Таким образом, в основном у меня есть два массива x_chunk и y_chunk измерений [10,512,512,50] каждый.Я преобразовал их в размеры [10,13107200], используя код:

x_chunk=x_chunk.reshape(10,13107200)
y_chunk=y_chunk.reshape(10,13107200)

Теперь я использую skmultiflow KNN Classifier и пытаюсь подогнать эти данные, используя partial_fit

model.partial_fit(x_chunk, y_chunk)

НоЯ получаю эту ошибку:

ValueError                                Traceback (most recent call last)
<ipython-input-26-d3e5ffef750e> in <module>()
     53     x_chunk=x_chunk.reshape(10,13107200)
     54     y_chunk=y_chunk.reshape(10,13107200)
---> 55     model.partial_fit(x_chunk, y_chunk)
     56     n_loop += 1
     57 

/usr/local/lib/python3.6/dist-packages/skmultiflow/lazy/knn.py in partial_fit(self, X, y, classes, weight)
    178 
    179         for i in range(r):
--> 180             self.window.add_element(np.asarray([X[i]]), np.asarray([[y[i]]]))
    181         return self
    182 

/usr/local/lib/python3.6/dist-packages/skmultiflow/utils/data_structures.py in add_element(self, X, y)
    968             raise TypeError("None type not supported as the buffer, call configure() to set up the InstanceWindow")
    969 
--> 970         aux = np.concatenate((X, y), axis=1)
    971         self._buffer = np.concatenate((self._buffer, aux), axis=0)
    972         self._n_samples += 1

ValueError: all the input arrays must have same number of dimensions

Это говорит о том, что размеры массивов должны быть одинаковыми, однако оба массива имеют одинаковые размеры, так в чем же проблема?

edit

Модель, которую я использовал:

from skmultiflow.lazy import KNN
model = KNN(n_neighbors=8, max_window_size=2000, leaf_size=40)
...