问题描述
如何为 AutoKeras ImageRegressor (https://autokeras.com/tutorial/image_regression/) 构建 tf.Data.Dataset?
我使用的一些步骤来自页面:https://autokeras.com/tutorial/load/
我可以通过这种方式从单个文件夹加载图像:
batch_size = 32
img_height = 180
img_width = 180
data_dir = "/data"
x_train = ak.image_dataset_from_directory(
data_dir,validation_split=0,subset="training",seed=123,image_size=(img_height,img_width),batch_size=batch_size)
然后我可以使用 numpy 加载相应的响应值(通过一些额外的处理来为每个图像提供一个具有 1 个值的 numpy 数组):
y_train = np.genfromtxt("data.txt",delimiter='')
然后我可以在获取 numpy 数组的子集的同时使用 take 和 skip 来分割生成的数据集:
train_size = int(0.8 * n_rows)
val_size = int(0.2 * n_rows)
x_train_sm = x_train.take(train_size)
x_val_sm = x_train.skip(train_size)
y_train_sm = y_train[0:train_size]
y_val_sm = y_train[train_size:]
但是运行回归拟合给了我这个问题:
reg = ak.ImageRegressor(max_trials=max_trials,metrics=['mean_squared_error'],overwrite=False)
reg.fit(x_train_sm,y_train_sm,validation_split=0.2,batch_size=batch_size)
错误信息:
ValueError: Expected y to be None when x is tf.data.Dataset.
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)