I''m evaluating the performance of the model using this command
python -m scripts.evaluate tf_files/optimized_graph.pb
I tested it first using the flower_photos dataset and it works fine, but when evaluating my own dataset, I got this errors.
Traceback (most recent call last):
File "C:\Users\Reagan\AppData\Local\Continuum\Anaconda3\envs\keras\lib\site-packages\tensorflow\python\client\session.py", line 1323, in _do_call
return fn(*args)
File "C:\Users\Reagan\AppData\Local\Continuum\Anaconda3\envs\keras\lib\site-packages\tensorflow\python\client\session.py", line 1302, in _run_fn
status, run_metadata)
File "C:\Users\Reagan\AppData\Local\Continuum\Anaconda3\envs\keras\lib\site-packages\tensorflow\python\framework\errors_impl.py", line 473, in exit
c_api.TF_GetCode(self.status.status))
tensorflow.python.framework.errors_impl.InvalidArgumentError: input must be 4-dimensional[1,224,224]
[[Node: MobilenetV1/MobilenetV1/Conv2d_0/convolution = Conv2D[T=DT_FLOAT, data_format="NHWC", padding="SAME", strides=[1, 2, 2, 1], use_cudnn_on_gpu=true, _dev
ice="/job:localhost/replica:0/task:0/device:GPU:0"](_arg_input_0_1/_1, MobilenetV1/Conv2d_0/weights)]]
[[Node: MobilenetV1/Predictions/Reshape/_3 = _Recvclient_terminated=false, recv_device="/job:localhost/replica:0/task:0/device:CPU:0", send_device="/job:local
host/replica:0/task:0/device:GPU:0", send_device_incarnation=1, tensor_name="edge_198_MobilenetV1/Predictions/Reshape", tensor_type=DT_FLOAT, _device="/job:localhost/re
plica:0/task:0/device:CPU:0"]]
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\Reagan\AppData\Local\Continuum\Anaconda3\envs\keras\lib\runpy.py", line 193, in _run_module_as_main
"main", mod_spec)
File "C:\Users\Reagan\AppData\Local\Continuum\Anaconda3\envs\keras\lib\runpy.py", line 85, in _run_code
exec(code, run_globals)
File "D:\Pycharm Projects\Exercise Files\tensorflow-for-poets-2\scripts\evaluate.py", line 91, in
accuracy,xent = evaluate_graph(*sys.argv[1:])
File "D:\Pycharm Projects\Exercise Files\tensorflow-for-poets-2\scripts\evaluate.py", line 81, in evaluate_graph
eval_accuracy, eval_xent = sess.run([accuracy, xent], feed_dict)
File "C:\Users\Reagan\AppData\Local\Continuum\Anaconda3\envs\keras\lib\site-packages\tensorflow\python\client\session.py", line 889, in run
run_metadata_ptr)
File "C:\Users\Reagan\AppData\Local\Continuum\Anaconda3\envs\keras\lib\site-packages\tensorflow\python\client\session.py", line 1120, in _run
feed_dict_tensor, options, run_metadata)
File "C:\Users\Reagan\AppData\Local\Continuum\Anaconda3\envs\keras\lib\site-packages\tensorflow\python\client\session.py", line 1317, in _do_run
options, run_metadata)
File "C:\Users\Reagan\AppData\Local\Continuum\Anaconda3\envs\keras\lib\site-packages\tensorflow\python\client\session.py", line 1336, in _do_call
raise type(e)(node_def, op, message)
tensorflow.python.framework.errors_impl.InvalidArgumentError: input must be 4-dimensional[1,224,224]
[[Node: MobilenetV1/MobilenetV1/Conv2d_0/convolution = Conv2D[T=DT_FLOAT, data_format="NHWC", padding="SAME", strides=[1, 2, 2, 1], use_cudnn_on_gpu=true, _dev
ice="/job:localhost/replica:0/task:0/device:GPU:0"](_arg_input_0_1/_1, MobilenetV1/Conv2d_0/weights)]]
[[Node: MobilenetV1/Predictions/Reshape/_3 = _Recvclient_terminated=false, recv_device="/job:localhost/replica:0/task:0/device:CPU:0", send_device="/job:local
host/replica:0/task:0/device:GPU:0", send_device_incarnation=1, tensor_name="edge_198_MobilenetV1/Predictions/Reshape", tensor_type=DT_FLOAT, _device="/job:localhost/re
plica:0/task:0/device:CPU:0"]]
Caused by op 'MobilenetV1/MobilenetV1/Conv2d_0/convolution', defined at:
File "C:\Users\Reagan\AppData\Local\Continuum\Anaconda3\envs\keras\lib\runpy.py", line 193, in _run_module_as_main
"main", mod_spec)
File "C:\Users\Reagan\AppData\Local\Continuum\Anaconda3\envs\keras\lib\runpy.py", line 85, in _run_code
exec(code, run_globals)
File "D:\Pycharm Projects\Exercise Files\tensorflow-for-poets-2\scripts\evaluate.py", line 91, in
accuracy,xent = evaluate_graph(*sys.argv[1:])
File "D:\Pycharm Projects\Exercise Files\tensorflow-for-poets-2\scripts\evaluate.py", line 33, in evaluate_graph
with load_graph(graph_file_name).as_default() as graph:
File "D:\Pycharm Projects\Exercise Files\tensorflow-for-poets-2\scripts\count_ops.py", line 31, in load_graph
tf.import_graph_def(graph_def, name='')
File "C:\Users\Reagan\AppData\Local\Continuum\Anaconda3\envs\keras\lib\site-packages\tensorflow\python\framework\importer.py", line 313, in import_graph_def
op_def=op_def)
File "C:\Users\Reagan\AppData\Local\Continuum\Anaconda3\envs\keras\lib\site-packages\tensorflow\python\framework\ops.py", line 2956, in create_op
op_def=op_def)
File "C:\Users\Reagan\AppData\Local\Continuum\Anaconda3\envs\keras\lib\site-packages\tensorflow\python\framework\ops.py", line 1470, in init
self._traceback = self._graph._extract_stack() # pylint: disable=protected-access
InvalidArgumentError (see above for traceback): input must be 4-dimensional[1,224,224]
[[Node: MobilenetV1/MobilenetV1/Conv2d_0/convolution = Conv2D[T=DT_FLOAT, data_format="NHWC", padding="SAME", strides=[1, 2, 2, 1], use_cudnn_on_gpu=true, _dev
ice="/job:localhost/replica:0/task:0/device:GPU:0"](_arg_input_0_1/_1, MobilenetV1/Conv2d_0/weights)]]
[[Node: MobilenetV1/Predictions/Reshape/_3 = _Recvclient_terminated=false, recv_device="/job:localhost/replica:0/task:0/device:CPU:0", send_device="/job:local
host/replica:0/task:0/device:GPU:0", send_device_incarnation=1, tensor_name="edge_198_MobilenetV1/Predictions/Reshape", tensor_type=DT_FLOAT, _device="/job:localhost/re
plica:0/task:0/device:CPU:0"]]