gpt4 book ai didi

python - Tensorflow在一个循环中多次运行session

转载 作者:行者123 更新时间:2023-11-28 22:20:42 27 4
gpt4 key购买 nike

我正在尝试使用简单的 Tensorflow 代码多次计算两个矩阵的乘积。我的代码如下:

import numpy as np
import tensorflow as tf

times = 10
alpha = 2
beta = 3

graph = tf.Graph()

with graph.as_default():
A = tf.placeholder(tf.float32)
B = tf.placeholder(tf.float32)
C = tf.placeholder(tf.float32)
alpha = tf.constant(2.0, shape=[1, 1])
beta = tf.constant(3.0, shape=[1, 1])
D = alpha*tf.matmul(A, B) + beta*C

with tf.Session(graph=graph) as session:
tf.initialize_all_variables().run()
for time in xrange(1, 2):
N = 10**time
a = tf.constant(np.random.random((N, N)))
b = tf.constant(np.random.random((N, N)))
c = tf.constant(np.random.random((N, N)))

for num in xrange(1, 3):
print num
session.run(D, feed_dict={A:a.eval(), B:b.eval(), C:c.eval()})
c = D

在 for 循环中运行 session.run() 时:

for num in xrange(1, 3):
print num
session.run(D, feed_dict={A:a.eval(), B:b.eval(), C:c.eval()})
c = D

我收到以下错误:

Error on running session.run() in a loop

我在 Tensorflow 网站上查看了 MNIST 的示例代码,但它们以类似的方式在 for 循环中运行“session.run()”。我正在寻找有关为什么我的代码中的“session.run()”在 for 循环内不起作用的任何见解。

谢谢。

最佳答案

with tf.Session(graph=graph) as session:
tf.initialize_all_variables().run()
for time in xrange(1, 2):
N = 10**time
a = np.random.random((N, N))
b = np.random.random((N, N))
c = np.random.random((N, N))

for num in xrange(1, 3):
print num
c = session.run(D, feed_dict={A:a, B:b, C:c})

您可以直接输入 numpy 数组,Session.run(D, ...) 返回 D 的 评估。

关于python - Tensorflow在一个循环中多次运行session,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48767184/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com