0
votes

I keep getting this tensorflow error and I cannot figure out why. my code:

__future__ import absolute_import
from __future__ import division
from __future__ import print_function
import tensorflow as tf
import os

a = tf.constant(2.5)
b = tf.constant(4.5)
total = a + b;

tf.summary.scalar("a",a)
tf.summary.scalar("b",b)
tf.summary.scalar("total",total)

merged_op = tf.summary.merge_all()

writer = tf.summary.FileWriter("summary")

# Launch Session
with tf.Session() as sess:
  _, summary = sess.run([sum,merged_op])
  writer.add_summary(summary)
  writer.close()

And this is the full error:
TypeErrorTraceback (most recent call last)
<ipython-input-82-155dabddd08a> in <module>()
      1 with tf.Session() as sess:
----> 2   _, summary = sess.run([sum,merged_op])
      3   writer.add_summary(summary)
      4   writer.close()
      5 

/usr/local/lib/python2.7/dist-packages/tensorflow/python/client/session.pyc in run(self, fetches, feed_dict, options, run_metadata)
    927     try:
    928       result = self._run(None, fetches, feed_dict, options_ptr,
--> 929                          run_metadata_ptr)
    930       if run_metadata:
    931         proto_data = tf_session.TF_GetBuffer(run_metadata_ptr)


TypeError: Fetch argument <built-in function sum> has invalid type <type 'builtin_function_or_method'>, must be a string or Tensor. (Can not convert a builtin_function_or_method into a Tensor or Operation.)

I don't know what to do I am confused why I am getting this error because basically copied the code from a book I am reading called tensorflow for dummies.

1

1 Answers

0
votes

you've not declared 'sum' before doing sess.run. sum is a built-in function in python. You might want to run 'total'

sess.run([total,merged_op])

to proof that sum is built-in:

sum([5,4])
>>> 9