我已经花了好几个小时试图理解这个code,但我做不到。
在第9单元格的第13行,它循环:
for i in range(num_unrollings + 1):
feed_dict[train_data[i]] = batches[i]
这意味着在 first 执行中,只有train_data[0]
有一个值。 train_data[1]
仍然是占位符。
当您在第8单元格的第48行中查看图形定义时:
train_labels = train_data[1:]
该图要求train_data[1]
存在,因为如果不存在,那么您将没有任何标签!
所以我的问题是:这如何工作?它不会崩溃,它可以完美运行。为什么第一次执行不会引发异常?在占位符仍然存在的情况下如何运行会话?
它应该引发一个
InvalidArgumentError:您必须使用dtype float和shape [64,27]的占位符张量“ Placeholder_1”输入值
不是应该例外吗?