Gagal menemukan adaptor data yang dapat menangani input: <class 'numpy.ndarray'>, (<class 'list'> yang mengandung nilai-nilai tipe {"<class 'int'>"})


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

masalahnya adalah ini

Menampilkan kesalahan:

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

Tolong, edit pertanyaan Anda dan tambahkan lebih banyak kode dan konteks, dan traceback kesalahan penuh. Baca cara bertanya .
Valentino

Apa model? Itu bukan bagian dari salah satu paket yang ditandai. Perlihatkan traceback penuh.
hpaulj

Jawaban:



8

Jadi ini terjadi versi tensorflow yang lebih baru Saya tidak yakin dari mana tetapi saya berada di versi 2.0.0 dan hal yang sama terjadi

Saya berasumsi bahwa Anda hanya mengubah array X menjadi array numpy Tapi coba konversi 'X' dan juga 'y' menjadi array numpy menggunakan dtype sebagai np.uint8

Itu harus menyelesaikan masalah


Terima kasih atas bantuannya, sekarang berfungsi dengan baik untuk program saya. Ini menunjukkan bahwa saya akan menurunkan versi tensorflow saya dan semuanya tampak berfungsi
Neo

6

Saya menghadapi masalah yang sama. Ternyata itu dalam bentuk daftar. Saya harus mengubah bidang menjadi array numpy seperti:

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

itu dia!


2

VIKI sudah mengatakan jawaban yang bagus. Saya menambahkan lebih banyak informasi. Dulu crash host colab untuk saya juga, sebelum saya menambahkan pembungkus 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)

Crashing host karena kehabisan memori ada hubungannya dengan ini:

Penjelasan gradien padat Tensorflow?


2

Dalam kasus saya masalahnya hanya pada y. itu daftar. dalam hal ini saya harus berubah

y = np.array (y)


1

Jawaban Mahmud memperbaiki kesalahan TensorFlow Tutorial "Regresi dasar: Prediksi efisiensi bahan bakar" di bagian [30]. Ini adalah 2 baris:

Ubah ini:

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

Untuk ini:

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

Terima kasih, Mahmud


0

Cukup ketik lemparkan array.

sebagai contoh:

import numpy as np
features = np.array(features,dtype='float64')
labels = np.array(labels, dtype ='float64')
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.