【问题标题】:ValueError: Failed to find data adapter that can handle input:ValueError:未能找到可以处理输入的数据适配器:
【发布时间】:2021-04-20 14:55:04
【问题描述】:

我正在尝试将以下训练数据拟合到我的模型中:

data = np.array(data, dtype="float32") / 255.0
for i in coords_list:
    # print(" 'i' is: ", i)
    for j in i:
        # print(" 'j' is: ", j)
        np.array(j, dtype="float32")

split = train_test_split(data, coords_list, files, test_size=0.10, random_state=42)

(trainImages, testImages) = split[:2]
(trainTargets, testTargets) = split[2:4]
(trainFilenames, testFilenames) = split[4:]

其中data 是数组格式的图像列表,coords_list 是具有包含浮点数的元组的列表列表,files 是字符串列表。 在将我的输入数据(datacoords_list)转换为 numpy 数组后,我将它们拆分为训练、验证和测试集。然后将它们拟合到模型中,运行无法处理 coords_list 类型的 ValueError。

[...]

_ = model.fit(
    trainImages, trainTargets,
    validation_data=(testImages, testTargets),
    batch_size=6,
    epochs=5,           # 50
    steps_per_epoch=1,  # 500
    verbose=1
)

Traceback (most recent call last):
File "C:/Users/Alexandros.Oikonomid/OneDrive - Priva/Desktop/Truss_Detection/Trusses_Detection.py", line 210, in <module>
    _ = model.fit(
  File "C:\Users\Alexandros.Oikonomid\PycharmProjects\pythonProject1\lib\site-packages\tensorflow\python\keras\engine\training.py", line 108, in _method_wrapper
    return method(self, *args, **kwargs)
  File "C:\Users\Alexandros.Oikonomid\PycharmProjects\pythonProject1\lib\site-packages\tensorflow\python\keras\engine\training.py", line 1049, in fit
    data_handler = data_adapter.DataHandler(
  File "C:\Users\Alexandros.Oikonomid\PycharmProjects\pythonProject1\lib\site-packages\tensorflow\python\keras\engine\data_adapter.py", line 1104, in __init__
    adapter_cls = select_data_adapter(x, y)
  File "C:\Users\Alexandros.Oikonomid\PycharmProjects\pythonProject1\lib\site-packages\tensorflow\python\keras\engine\data_adapter.py", line 968, in select_data_adapter
    raise ValueError(
ValueError: Failed to find data adapter that can handle input: <class 'numpy.ndarray'>, (<class 'list'> containing values of types {'(<class \'list\'> containing values of types {\'(<class \\\'tuple\\\'> containing values of types {"<class \\\'float\\\'>"})\'})'})

任何有关如何解决此错误的建议将不胜感激!

【问题讨论】:

    标签: tensorflow keras computer-vision object-detection


    【解决方案1】:

    您的嵌套循环不会将 coords_list 转换为 numpy 数组。这应该可以解决它。

    import numpy as np
    
    coords_list = np.array(coords_list, dtype="float32")
    split = train_test_split(data, coords_list, files, test_size=0.10, random_state=42)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-02-13
      • 2020-01-12
      • 2020-05-30
      • 2020-10-14
      • 2023-03-30
      • 2022-06-22
      • 2021-09-18
      • 1970-01-01
      相关资源
      最近更新 更多