小编Ben*_*res的帖子

为什么在我的图形中重复了AdamOptimizer?

我对TensorFlow的内部知识还很陌生。为了试图理解TensorFlow的AdamOptimizer的实现,我检查了TensorBoard中的相应子图。默认情况下name + '_1',似乎有一个名为的重复子图name='Adam'

以下MWE产生下图。(请注意,我已经扩展了该x节点!

import tensorflow as tf

tf.reset_default_graph()
x = tf.Variable(1.0, name='x')
train_step = tf.train.AdamOptimizer(1e-1, name='MyAdam').minimize(x)

init = tf.global_variables_initializer()
with tf.Session() as sess:
    sess.run(init)
    with tf.summary.FileWriter('./logs/mwe') as writer:
        writer.add_graph(sess.graph)
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

我很困惑,因为我希望上面的代码在图形内部仅产生一个名称空间。即使检查相关的源文件(即之后adam.pyoptimizer.pytraining_ops.cc),这不是很清楚,我如何/为什么/在其中创建副本。

问题:重复AdamOptimizer子图的来源是什么?

我可以想到以下可能性:

  • 我代码中的错误
  • TensorBoard中生成的某种工件
  • 这是预期的行为(如果是,那么为什么?)
  • TensorFlow中的错误

编辑:清理和澄清

由于最初的困惑,我在最初的问题上写了详细的说明,以详细说明如何使用TensorFlow / TensorBoard建立可重现的环境,该环境可重现此图。现在,我已将所有内容替换为有关扩展x节点的说明。

python tensorflow tensorboard

9
推荐指数
1
解决办法
396
查看次数

如何将变量评估为 Python f 字符串

我想要一种评估 f 字符串的机制,其中要评估的内容在变量中提供。例如,

x=7
s='{x+x}'
fstr_eval(s)
Run Code Online (Sandbox Code Playgroud)

对于我想到的用例,字符串s可能来自用户输入(用户信任的地方eval)。

虽然eval在生产中使用通常是非常糟糕的做法,但也有明显的例外。例如,用户可能是在本地机器上工作的 Python 开发人员,他希望使用完整的 Python 语法来开发 SQL 查询。

关于重复的注意事项:这里这里有类似的问题。第一个问题是在模板的有限上下文中提出的。第二个问题虽然与这个问题非常相似,但已被标记为重复。因为这个问题的上下文与第一个问题有很大不同,我决定根据第二个问题之后自动生成的建议提出第三个问题:

这个问题以前有人问过,已经有了答案。如果这些答案不能完全解决您的问题,请提出一个新问题。

python string-interpolation python-3.x python-3.6 f-string

7
推荐指数
2
解决办法
3338
查看次数

如何引用当前包以与 importlib.resources 一起使用?

我有一个已安装的软件包(通常位于 内部\xe2\x80\xa6/lib/pythonX.Y/site-packages/my-package),其中包含(除其他外)资源\xe2\x80\xa6/my-package/a.txt\xe2\x80\xa6/my-package/b.png. 我想\xe2\x80\xa6/my-package/get_my_resources.py使用以下代码访问这些资源:

\n\n
txt = importlib.resources.read_text(this_package, 'a.txt')\nimg = importlib.resources.read_binary(this_package, 'b.png')\n
Run Code Online (Sandbox Code Playgroud)\n\n

我应该用来做什么this_package?当我尝试相对自引用时this_package = '.',出现错误

\n\n
TypeError: the 'package' argument is required to perform a relative import for '.'\n
Run Code Online (Sandbox Code Playgroud)\n

python python-importlib

6
推荐指数
1
解决办法
1797
查看次数