为什么随着训练的进行,我的tensorflow代码运行越来越慢?

时间:2018-11-04 01:56:11

标签: python tensorflow

import tensorflow as tf

input_data = tf.constant([[1.,1.]])
output_data = tf.constant([[1.,0.]])
weight = tf.Variable([[1.,1.],
                      [1.,1.]])

sess = tf.Session()
sess.run(tf.global_variables_initializer())
optimizer = tf.train.GradientDescentOptimizer(0.1)

for epoch in range(1000):
    y = tf.matmul(input_data, weight)
    loss = (output_data[0][0] - y[0][0])**2 + (output_data[0][1] - y[0][1])**2
    sess.run(optimizer.minimize(loss))
    print(epoch)

随着纪元的进行,上述程序变得越来越慢。我认为这是因为在每个时期都不断添加新节点。我该如何处理?

1 个答案:

答案 0 :(得分:3)

尝试一下...

function (doc)

原始代码在每个时期重新创建图形。如果以这种方式进行操作,则该图形仅创建一次,并且循环中唯一的工作是渐变计算/更新。