[python] 입력을 처리 할 수있는 데이터 어댑터를 찾지 못했습니다 : <class ‘numpy.ndarray’>, (({“<class ‘int’>”} 유형의 값을 포함하는 <class ‘list’>))

history = model.fit(X, y, batch_size=32, epochs=40, validation_split=0.1)

라인 문제는 이것이었다

오류 표시 :

ValueError: Failed to find data adapter that can handle input: <class 'numpy.ndarray'>, (<class 'list'> containing values of types {"<class 'int'>"})



답변

TensorFlow의 ValueError

https://pythonprogramming.net/convolutional-neural-network-deep-learning-python-tensorflow-keras/

나는 다음 코드를 시도하고 나를 위해 일했다.

IMG_SIZE = 50

X = np.array(X).reshape(-1, IMG_SIZE, IMG_SIZE, 1)

y = np.array(y)

history = model.fit(X, y, batch_size=32, epochs=40, validation_split=0.1)


답변

그래서 이것은 최신 버전의 tensorflow에서 발생합니다. 어디에서 확실하지 않지만 버전 2.0.0에 있었는지와 동일한 일이 발생했습니다.

X 배열을 numpy 배열로만 변환한다고 가정하지만 dtype을 np.uint8을 사용하여 ‘X’와 ‘y’를 numpy 배열로 변환하십시오.

문제를 해결해야합니다


답변

나는 같은 문제에 직면했다. 그것이 목록의 형태로 밝혀졌습니다. 필드를 다음과 같은 numpy 배열로 변환해야했습니다.

training_padded = np.array(training_padded)
training_labels = np.array(training_labels)
testing_padded = np.array(testing_padded)
testing_labels = np.array(testing_labels)

그게 다야!


답변

VIKI는 이미 좋은 대답을했습니다. 더 많은 정보를 추가하고 있습니다. np.array () 래퍼를 추가하기 전에 콜랩 호스트도 충돌했습니다.

# Need to call np.array() around pandas dataframes.
# This crashes the colab host from TF attempting a 32GB memory alloc when np.array() wrappers are not used around pandas dataframes.
# Wrapping also cures warning about "Failed to find data adapter that can handle input"
history = model.fit(x=np.array(tr_X), y=np.array(tr_Y), epochs=3, validation_data=(np.array(va_X), np.array(va_Y)), batch_size=batch_size, steps_per_epoch=spe, validation_freq=5)

메모리 부족 문제로 인한 호스트 충돌은 다음과 관련이 있습니다.

텐서 플로우 고밀도 그래디언트 설명?


답변

제 경우에는 문제가 y에만있었습니다. 그것은 목록이었다. 그 경우에 나는 변화해야했다

y = np. 배열 (y)


답변

Mahmud의 답변은 섹션 [30]의 TensorFlow Tutorial “기본 회귀 : 연료 효율 예측”오류를 수정합니다. 다음은 두 줄입니다.

이것을 변경하십시오 :

example_batch = normed_train_data[:10]
example_result = model.predict(example_batch)

이에:

example_batch = np.array(normed_train_data[0:10])
example_result = model.predict(example_batch)

감사합니다 Mahmud


답변

배열을 캐스트하십시오.

예를 들면 다음과 같습니다.

import numpy as np
features = np.array(features,dtype='float64')
labels = np.array(labels, dtype ='float64')