Tensorflow - eval() 错误:您必须为占位符张量提供一个值

2024-03-23

我尝试使用 eval() 来了解每个学习步骤中发生的情况。

但是,如果我在 tf.matmul 操作上使用 eval() ,那么我会收到错误You must feed a value for placeholder tensor.

如果我删除了 eval(),那么一切都会按预期正常工作。

num_steps = 3001

with tf.Session(graph=graph) as session:
    tf.global_variables_initializer().run()
    writer = tf.summary.FileWriter("/home/ubuntu/tensorboard", graph=tf.get_default_graph())
    for step in range(num_steps):
        offset = (step * batch_size) % (train_labels.shape[0] - batch_size)
        batch_data = train_dataset[offset:(offset + batch_size), :]
        batch_labels = train_labels[offset:(offset + batch_size), :]
        feed_dict = {tf_train_dataset : batch_data, tf_train_labels : batch_labels}
        _, l, predictions, summary = session.run([optimizer, loss, train_prediction, summary_op], feed_dict=feed_dict)
        writer.add_summary(summary, step)

        # If I removed this line, then it would work
        loss.eval()

batch_size = 128

graph = tf.Graph()
with graph.as_default():
    with tf.name_scope('tf_train_dataset'):
        tf_train_dataset = tf.placeholder(tf.float32, shape=(batch_size, image_size * image_size))
    with tf.name_scope('tf_train_labels'):
        tf_train_labels = tf.placeholder(tf.float32, shape=(batch_size, num_labels))
    with tf.name_scope('tf_valid_dataset'):
        tf_valid_dataset = tf.constant(valid_dataset)
    with tf.name_scope('tf_test_dataset'):
        tf_test_dataset = tf.constant(test_dataset)

    with tf.name_scope('weights'):
        weights = tf.Variable(tf.truncated_normal([image_size * image_size, num_labels]))
    with tf.name_scope('biases'):
        biases = tf.Variable(tf.zeros([num_labels]))

    with tf.name_scope('logits'):
        logits = tf.matmul(tf_train_dataset, weights) + biases
    with tf.name_scope('loss'):
        loss = tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits(logits, tf_train_labels))
        tf.summary.scalar("loss", loss)

    with tf.name_scope('optimizer'):
        optimizer = tf.train.GradientDescentOptimizer(0.5).minimize(loss)

    with tf.name_scope("train_prediction"):
        train_prediction = tf.nn.softmax(logits)
    with tf.name_scope("valid_prediction"):
        valid_prediction = tf.nn.softmax(tf.matmul(tf_valid_dataset, weights) + biases)
    with tf.name_scope("test_prediction"):
        test_prediction = tf.nn.softmax(tf.matmul(tf_test_dataset, weights) + biases)

    with tf.name_scope("correct_prediction"):
        correct_prediction = tf.equal(tf.argmax(tf_train_labels,1), tf.argmax(train_prediction,1))

    with tf.name_scope("accuracy"):
        accuracy = tf.reduce_mean(tf.cast(correct_prediction, tf.float32))
        tf.summary.scalar("training_accuracy", accuracy)

    summary_op = tf.summary.merge_all()

确切的错误是:

InvalidArgumentError (see above for traceback): You must feed a value for placeholder tensor 'tf_train_dataset/Placeholder' with dtype float and shape [128,784]
     [[Node: tf_train_dataset/Placeholder = Placeholder[dtype=DT_FLOAT, shape=[128,784], _device="/job:localhost/replica:0/task:0/cpu:0"]()]]

有人有更好的方法来记录变量吗?我尝试过tensor_summary,但它没有在网站上显示。

谢谢大家


除了 AllenLavoie 的评论之外,您实际上可以通过 eval 来输入字典。

loss.eval(feed_dict=feed_dict)

TensorFlow 奇怪的 API 不知道我已经事先输入了字典。

Hence: _, l, predictions, summary = session.run([optimizer, loss, train_prediction, summary_op], feed_dict=feed_dict)

即使放置也不起作用before loss.eval()

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Tensorflow - eval() 错误:您必须为占位符张量提供一个值 的相关文章

  • minAreaRect OpenCV 返回的裁剪矩形 [Python]

    minAreaRectOpenCV 中返回一个旋转的矩形 如何裁剪矩形内图像的这部分 boxPoints返回旋转矩形的角点的坐标 以便可以通过循环框内的点来访问像素 但是在 Python 中是否有更快的裁剪方法 EDIT See code在
  • Python 中 time.sleep 和多线程的问题

    我对 python 中的 time sleep 函数有疑问 我正在运行一个脚本 需要等待另一个程序生成 txt 文件 虽然 这是一台非常旧的机器 所以当我休眠 python 脚本时 我遇到了其他程序不生成文件的问题 除了使用 time sl
  • 烧瓶 - 404 未找到

    我是烧瓶开发的新手 这是我在烧瓶中的第一个程序 但它向我显示了这个错误 在服务器上找不到请求的 URL 如果您输入了网址 请手动检查拼写并重试 这是我的代码 from flask import Flask app Flask name ap
  • 获取 int() 参数必须是字符串或数字,而不是“Column”- Apache Spark

    如果我使用以下代码 我会收到此异常 int argument must be a string or a number not Column df df withColumn FY F when df ID substr 5 2 isin
  • 无法在我的程序中使用 matplotlib 函数

    我正在 Windows 10 中运行 Anaconda 安装 conda 版本 4 3 8 这是我尝试在 python 命令行中运行的代码 import matplotlib pyplot as plt x 1 2 3 4 y 5 6 7
  • 打印一份拥有多个家庭的人员名单,每个家庭都有多个电话号码

    我有一类 Person 它可以有多个 Home 每个 Home 都有一个或多个电话号码 我已经定义了类 但现在我正在尝试创建一个视图 其中列出每个人的所有家庭以及每个家庭地址的所有电话号码 类似于 john smith 123 fake s
  • 同一台机器上有多个Python版本?

    Python 网站上是否有关于如何在 Linux 上的同一台计算机上安装和运行多个版本的 Python 的官方文档 我可以找到无数的博客文章和答案 但我想知道是否有 标准 官方方法可以做到这一点 或者这一切都取决于操作系统 我认为它是完全独
  • 一个类似 dict 的 Python 类

    我想编写一个自定义类 其行为类似于dict 所以 我继承自dict 不过 我的问题是 我是否需要创建一个私有的dict我的成员 init 方法 我不明白这个有什么意义 因为我已经有了dict如果我只是继承自的行为dict 谁能指出为什么大多
  • Django 1.7 应用程序配置导入错误:没有名为 appname.apps 的模块

    我正在尝试按照以下文档为我的一个名为 文章 的 Django 应用程序设置自定义应用程序配置https docs djangoproject com en dev ref applications https docs djangoproj
  • django 中的身份验证方法返回 None

    你好 我在 django 中做了一个简单的注册和登录页面 当想要登录时 登录视图中的身份验证方法不返回任何内容 我的身份验证应用程序 模型 py from django db import models from django contri
  • 如何让 Streamlit 每 5 秒重新加载一次?

    我必须每 5 秒重新加载 Streamlit 图表 以便在 XLSX 报告中可视化新数据 如何实现这一目标 import streamlit as st import pandas as pd import os mainDir os pa
  • 导入目录下的所有模块

    有没有办法导入当前目录中的所有模块 并返回它们的列表 例如 对于包含以下内容的目录 mod py mod2 py mod3 py 它会给你
  • 预测测试图像时出现错误 - 无法重塑大小数组

    我正在尝试使用 TensorFlow 和 Keras 在 Python 中进行图像识别 并且我已经关注了下面的博客 https stackabuse com image recognition in python with tensorfl
  • 更新 matplotlib 中颜色条的范围

    我想更新一个contourf在函数内绘制 效果很好 然而 数据的范围发生了变化 因此我还必须更新颜色条 这就是我未能做到的地方 请参阅以下最小工作示例 import matplotlib pyplot as plt import numpy
  • 在 for 循环中访问 itertools 产品的元素

    我有一个列表列表 是附加 itertools 产品的一些其他结果的结果 我想要的是能够使用 for 循环访问列表列表中列表的每个元素 但我无法访问所有元素 我只能访问最后一个列表的元素 结果是一个非常巨大的列表列表 例如 1 2 4 3 6
  • 有没有办法拉伸整个显示图像以适应给定的分辨率?

    我最近一直在使用pygame制作游戏 遇到了一个小问题 基本上 我希望能够将屏幕上的整个图像 我已经传输到它的所有内容 拉伸到用户将窗口大小调整到的分辨率 我在 pygame 和堆栈溢出的文档中搜索了很多 但我似乎找不到答案 这可能吗 我的
  • 通过新数据更新绘图,而不是在 Jupyter 笔记本中制作新绘图

    我有一些问题 希望你能帮我解决 我需要使用下拉小部件创建交互式绘图 我可以在其中选择并绘制感兴趣的数据 我通过以下方式做到这一点 import plotly graph objects as go import ipywidgets as
  • 如何使用logging.conf文件使用RotatingFileHandler将所有内容记录到文件中?

    我正在尝试使用RotatingHandler用于 Python 中的日志记录目的 我将备份文件保留为 500 个 这意味着我猜它将创建最多 500 个文件 并且我设置的大小是 2000 字节 不确定建议的大小限制是多少 如果我运行下面的代码
  • 在 anaconda 环境下运行 qsub

    我有一个程序 通常在 Linux 的 conda 环境中运行 因为我用它来管理我的库 指令如下 source activate my environment python hello world py 我怎样才能跑你好世界 py在与 PBS
  • 为什么我的 PyGame 应用程序根本不运行?

    我有一个简单的 Pygame 程序 usr bin env python import pygame from pygame locals import pygame init win pygame display set mode 400

随机推荐

  • 使用 Felix 和 Maven 创建完整的 OSGi 应用程序

    我有一组使用 Maven 构建的 OSGi 包 我想知道是否有一个可用的 Maven 插件可以让我执行以下操作 指定要包含在发行版中的一组捆绑包和 或指定单个捆绑包并解决依赖关系 构建一个完整的分发框架 我的意思是一个包含所有需要的包的 z
  • 如何计算术语-文档矩阵?

    我知道术语文档矩阵是一个数学矩阵 描述文档集合中出现的术语的频率 在文档术语矩阵中 行对应于集合中的文档 列对应于术语 我在用sklearn 的 CountVectorizer从字符串 文本文件 中提取特征以减轻我的任务 以下代码根据以下内
  • 使用 PhpUnit 时 Composer 无法加载加载器

    我正在尝试将 PhpUnit 与 Composer 一起使用 为了这个目的我做了 1 将 phpunit 添加到 req Composer 部分 require php gt 5 3 0 require dev phpunit phpuni
  • 在sql server 2008中将varchar转换为十进制

    我将此数据作为 varchar 00072330 如何将其转换为 SQL Server 2008 中类似 723 30 的小数 尝试这个 declare data as varchar 8 set data 00072330 print c
  • VS2015 或 NP++ 中的多行正则表达式

    我需要在多个文件中替换以下模式 this dialogs 当我设置时这工作正常single line在这里标记 https regex101 com r dF2yG3 2 https regex101 com r dF2yG3 2 但是我无
  • python创建DDE服务器并不断发送数据

    我正在尝试用 python 编写一个 DDE 服务器 它需要将不断变化的字符串发送到作为 DDE 客户端连接的程序 连接到 DDE 服务器的程序使用以下 DDE 设置来连接 服务 Orbitron 主题 Tracking 项目 Tracki
  • 在额外维度上扩展 NumPy 数组

    在额外维度上扩展给定 NumPy 数组的最简单方法是什么 例如 假设我有 gt gt gt np arange 4 array 0 1 2 3 gt gt gt shape 4 gt gt gt expand np arange 4 0 6
  • 有没有办法增加 Google Chrome 中 localStorage 的大小以避免 QUOTA_EXCEEDED ERR: DOMException 22

    我编写了一个网络应用程序 允许您将图像存储在 localStorage 中 直到您点击保存 因此 如果信号较差 它可以离线工作 当 localStorage 达到 5MB 时 Google Chrome 会在 javascript 控制台日
  • 在 Python 3 中查找网站中最常见的单词 [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我需要使用 Python 3 代码查找并复制在给定网站上出现超过 5 次的单词 但我不知道该怎么做 我已经浏览了有关堆栈溢出的档案 但
  • JQuery 在事件上加载脚本(点击)

    selector click function here I would like to load a javascript file let s say js script on click event js 这有可能吗 我不确定 但我记
  • 我可以在ironpython中使用命名参数和可选参数吗

    我希望在ironpython中加载 net dll 但是 net dll 中的静态函数之一有一些命名参数和可选参数 比如 绘制 重量 w 高度 h 面积 1 我只能使用完整的参数吗 完全支持命名参数和可选参数 NET 长期以来一直支持 VB
  • 为什么在非 ARC 环境中的属性上使用关键字“strong”?

    我刚刚开始使用 Xcode 4 2 和 iOS5 进行开发 创建空的选项卡式应用程序项目后 我注意到属性上使用了新的关键字 strong 我继续读下去这个帖子 https stackoverflow com questions 670102
  • HTML 'class' 元素属性可以包含换行符吗?

    HTML5 元素的 class 属性可以包含换行符吗 规范中是否允许并且浏览器支持它吗 我问这个问题是因为我有一些代码可以动态地将各种类插入到元素中 这创建了一个很难管理的很长的行 通常我会使用变量构建类值 但我使用的 CMS 要求模板条件
  • Thread.start() 和 Thread.run() 有什么区别?

    为什么我们称start 方法 该方法又调用run method 我们不能直接打电话吗run 请举例说明有什么区别 不 你不能 调用run就会执行run 方法在同一个线程中 无需启动新线程
  • 模板函数的模板参数

    我刚刚发布了一个skiplist容器库 Sun 编译器对此有抱怨 template
  • canvas getContext("2d") 返回 null

    我已经尝试了几种不同的方法 但我一直遇到同样的错误 我之前已经将图像加载到画布上 但自从几天前更新了 Safari 以来 我遇到了错误 我将发布我目前拥有的内容 但我尝试使用 jQuery html 的 onLoad 属性等来实现 var
  • Array 和 ArrayCollection(Flex) 的区别

    数组和数组集合有什么区别 首先 ArrayCollection是为Flex框架设计的 它的作用就像一个Proxy对于给定的Array实例 这意味着它可以侦听对源代码所做的修改Array并在发生这种情况时自行更新 它还包含框架特别需要的附加方
  • “开始..提交;” SQLite 失败

    我正在尝试学习如何使用BEGIN COMMIT在 SQLite 中 我正在尝试这段代码 BEGIN INSERT INTO fields VALUES field1 COMMIT 但它失败了 Error near INSERT syntax
  • 如何在一个视图控制器中使用两个 UIPickerView?

    我有两个UIPickerControllers 在一个视图控制器中 我可以让一个工作 但是当我添加第二个时 我的应用程序崩溃了 这是我用于一个选择器视图的代码 import UIKit class RegisterJobPosition U
  • Tensorflow - eval() 错误:您必须为占位符张量提供一个值

    我尝试使用 eval 来了解每个学习步骤中发生的情况 但是 如果我在 tf matmul 操作上使用 eval 那么我会收到错误You must feed a value for placeholder tensor 如果我删除了 eval