【发布时间】:2017-11-07 01:42:13
【问题描述】:
我收到以下错误...
ValueError: 无法为形状为“(?, 16)”的张量“TargetsData/Y:0”提供形状 (16,) 的值
我知道这与我的 Y 变量的形状有关,在本例中是变量 labels,但我不确定如何更改形状以使我的模型工作。
基本上,我有一个 CSV 文件,我使用 pandas 将其保存到变量中...
data = pd.read_csv('Speed Dating Data.csv')
经过一些预处理,我决定这样提取我的目标类......
# Target label used for training
labels = np.array(data["age"], dtype=np.float32)
接下来,我从data 变量中删除了此列...
# Data for training minus the target label.
data = np.array(data.drop("age", axis=1), dtype=np.float32)
然后我决定设置我的模型...
net = tflearn.input_data(shape=[None, 32])
net = tflearn.fully_connected(net, 32)
net = tflearn.fully_connected(net, 32)
net = tflearn.fully_connected(net, 16, activation='softmax')
net = tflearn.regression(net)
# Define model.
model = tflearn.DNN(net)
model.fit(data, labels, n_epoch=10, batch_size=16, show_metric=True)
如果我运行它,我会收到上面的错误。由于我的labels 似乎是(16,) 但我需要它是(?, 16),所以我尝试了以下代码...
labels = labels[np.newaxis, :]
但这又产生了另一个错误。我想我不确定我的目标类labels 应该是什么形式。我该如何解决这个问题?
【问题讨论】:
标签: python-3.x csv machine-learning tensorflow tflearn