你能用占位符传递x --也就是输入,也就是自变量吗?但是图中没有x的占位符,这是设计出来的。这是因为这个模型是通过使用数据集读取文本文件而不是占位符来训练获得x的。由于先前对输入文件的训练,此模型现在是否需要使用输入文件进行新的数据预测?
对于相同的模型,现在有一个相关但不同的问题:当对此模型上的新数据进行此类预测时,是否需要显式提供超参数占位符?如果是这样,那又有什么意义呢?此特定训练模型的图形中的占位符仅用于超参数。(训练以这种方式工作得很好,我已经对训练和开发数据集进行了评估。)根据我的想法,超参数仅在训练期间引用,即在计算成本和评估优化器操作时引用。提醒一下,我只是希望评估预测(yhat),并且我现在没有训练,我没有提供标签y,没有使用成本表达式中的超参数计算成本,优化器操作也没有运行。
如果你知道的话谢谢。(如果您不确定您的答案,请说明。)
发布于 2018-09-12 03:03:50
如果代码编写得当,模型保存得当(即只存储了实际的层权重!),这并不难实现。
因为我不在办公室,所以我不能测试它,但我很确定这是您需要继续进行的路线。我以前做过类似的事情。
您可以按如下方式使用函数:
def select_input(is_training=True):
mode_variable = tf.placeholder(dtype=tf.bool)
if is_training:
<Your dataset API logic goes here>
def get_data():
return <Iterator you created>.get_next()
else:
<Create a placeholder for your data you want to read>
output = tf.cond(tf.equal(mode_variable, tf.constant(True)), lambda : get_data(), <Placeholder used>)
return output
https://stackoverflow.com/questions/52282377
复制相似问题