解決tensorflow由於未初始化變數而導致的錯誤問題
阿新 • • 發佈:2020-01-09
我寫的這個程式
import tensorflow as tf sess=tf.InteractiveSession() x=tf.Variable([1.0,2.0]) a=tf.constant([3.0,3.0]) x.initializer.run() sun=tf.div(x,a) print(sub.eval()) sess.close()
出現瞭如下所示的錯誤:
原因是倒數第二行的sub沒有初始化,倒數第三行應該是初始化sub的,但是打錯了,成了sun,這樣後面出現的sub就相當於沒有初始化,所以出現了變數沒有初始化的錯誤。
FailedPreconditionError Traceback (most recent call last) C:\Users\SKJ\Anaconda3\lib\site-packages\tensorflow\python\client\session.py in _do_call(self,fn,*args) 1360 try: -> 1361 return fn(*args) 1362 except errors.OpError as e: C:\Users\SKJ\Anaconda3\lib\site-packages\tensorflow\python\client\session.py in _run_fn(session,feed_dict,fetch_list,target_list,options,run_metadata) 1339 return tf_session.TF_Run(session,-> 1340 target_list,status,run_metadata) 1341 C:\Users\SKJ\Anaconda3\lib\site-packages\tensorflow\python\framework\errors_impl.py in __exit__(self,type_arg,value_arg,traceback_arg) 515 compat.as_text(c_api.TF_Message(self.status.status)),--> 516 c_api.TF_GetCode(self.status.status)) 517 # Delete the underlying status object from memory otherwise it stays alive FailedPreconditionError: Attempting to use uninitialized value Variable_1 [[Node: Variable_1/read = Identity[T=DT_FLOAT,_class=["loc:@Variable_1"],_device="/job:localhost/replica:0/task:0/device:CPU:0"](Variable_1)]] During handling of the above exception,another exception occurred: FailedPreconditionError Traceback (most recent call last) <ipython-input-3-cac34f40642f> in <module>() 5 x.initializer.run() 6 sun=tf.div(x,a) ----> 7 print(sub.eval()) 8 sess.close() C:\Users\SKJ\Anaconda3\lib\site-packages\tensorflow\python\framework\ops.py in eval(self,session) 654 655 """ --> 656 return _eval_using_default_session(self,self.graph,session) 657 658 C:\Users\SKJ\Anaconda3\lib\site-packages\tensorflow\python\framework\ops.py in _eval_using_default_session(tensors,graph,session) 4899 "the tensor's graph is different from the session's " 4900 "graph.") -> 4901 return session.run(tensors,feed_dict) 4902 4903 C:\Users\SKJ\Anaconda3\lib\site-packages\tensorflow\python\client\session.py in run(self,fetches,run_metadata) 903 try: 904 result = self._run(None,options_ptr,--> 905 run_metadata_ptr) 906 if run_metadata: 907 proto_data = tf_session.TF_GetBuffer(run_metadata_ptr) C:\Users\SKJ\Anaconda3\lib\site-packages\tensorflow\python\client\session.py in _run(self,handle,run_metadata) 1135 if final_fetches or final_targets or (handle and feed_dict_tensor): 1136 results = self._do_run(handle,final_targets,final_fetches,-> 1137 feed_dict_tensor,run_metadata) 1138 else: 1139 results = [] C:\Users\SKJ\Anaconda3\lib\site-packages\tensorflow\python\client\session.py in _do_run(self,run_metadata) 1353 if handle is None: 1354 return self._do_call(_run_fn,self._session,feeds,targets,-> 1355 options,run_metadata) 1356 else: 1357 return self._do_call(_prun_fn,fetches) C:\Users\SKJ\Anaconda3\lib\site-packages\tensorflow\python\client\session.py in _do_call(self,*args) 1372 except KeyError: 1373 pass -> 1374 raise type(e)(node_def,op,message) 1375 1376 def _extend_graph(self): FailedPreconditionError: Attempting to use uninitialized value Variable_1 [[Node: Variable_1/read = Identity[T=DT_FLOAT,_device="/job:localhost/replica:0/task:0/device:CPU:0"](Variable_1)]] Caused by op 'Variable_1/read',defined at: File "C:\Users\SKJ\Anaconda3\lib\runpy.py",line 184,in _run_module_as_main "__main__",mod_spec) File "C:\Users\SKJ\Anaconda3\lib\runpy.py",line 85,in _run_code exec(code,run_globals) File "C:\Users\SKJ\Anaconda3\lib\site-packages\ipykernel\__main__.py",line 3,in <module> app.launch_new_instance() File "C:\Users\SKJ\Anaconda3\lib\site-packages\traitlets\config\application.py",line 653,in launch_instance app.start() File "C:\Users\SKJ\Anaconda3\lib\site-packages\ipykernel\kernelapp.py",line 474,in start ioloop.IOLoop.instance().start() File "C:\Users\SKJ\Anaconda3\lib\site-packages\zmq\eventloop\ioloop.py",line 162,in start super(ZMQIOLoop,self).start() File "C:\Users\SKJ\Anaconda3\lib\site-packages\tornado\ioloop.py",line 887,in start handler_func(fd_obj,events) File "C:\Users\SKJ\Anaconda3\lib\site-packages\tornado\stack_context.py",line 275,in null_wrapper return fn(*args,**kwargs) File "C:\Users\SKJ\Anaconda3\lib\site-packages\zmq\eventloop\zmqstream.py",line 440,in _handle_events self._handle_recv() File "C:\Users\SKJ\Anaconda3\lib\site-packages\zmq\eventloop\zmqstream.py",line 472,in _handle_recv self._run_callback(callback,msg) File "C:\Users\SKJ\Anaconda3\lib\site-packages\zmq\eventloop\zmqstream.py",line 414,in _run_callback callback(*args,**kwargs) File "C:\Users\SKJ\Anaconda3\lib\site-packages\tornado\stack_context.py",**kwargs) File "C:\Users\SKJ\Anaconda3\lib\site-packages\ipykernel\kernelbase.py",line 276,in dispatcher return self.dispatch_shell(stream,msg) File "C:\Users\SKJ\Anaconda3\lib\site-packages\ipykernel\kernelbase.py",line 228,in dispatch_shell handler(stream,idents,line 390,in execute_request user_expressions,allow_stdin) File "C:\Users\SKJ\Anaconda3\lib\site-packages\ipykernel\ipkernel.py",line 196,in do_execute res = shell.run_cell(code,store_history=store_history,silent=silent) File "C:\Users\SKJ\Anaconda3\lib\site-packages\ipykernel\zmqshell.py",line 501,in run_cell return super(ZMQInteractiveShell,self).run_cell(*args,**kwargs) File "C:\Users\SKJ\Anaconda3\lib\site-packages\IPython\core\interactiveshell.py",line 2717,in run_cell interactivity=interactivity,compiler=compiler,result=result) File "C:\Users\SKJ\Anaconda3\lib\site-packages\IPython\core\interactiveshell.py",line 2821,in run_ast_nodes if self.run_code(code,result): File "C:\Users\SKJ\Anaconda3\lib\site-packages\IPython\core\interactiveshell.py",line 2881,in run_code exec(code_obj,self.user_global_ns,self.user_ns) File "<ipython-input-2-69a776ba1e33>",in <module> x=tf.Variable([1.0,2.0]) File "C:\Users\SKJ\Anaconda3\lib\site-packages\tensorflow\python\ops\variables.py",line 233,in __init__ constraint=constraint) File "C:\Users\SKJ\Anaconda3\lib\site-packages\tensorflow\python\ops\variables.py",line 381,in _init_from_args self._snapshot = array_ops.identity(self._variable,name="read") File "C:\Users\SKJ\Anaconda3\lib\site-packages\tensorflow\python\ops\array_ops.py",line 131,in identity return gen_array_ops.identity(input,name=name) File "C:\Users\SKJ\Anaconda3\lib\site-packages\tensorflow\python\ops\gen_array_ops.py",line 2656,in identity "Identity",input=input,name=name) File "C:\Users\SKJ\Anaconda3\lib\site-packages\tensorflow\python\framework\op_def_library.py",line 787,in _apply_op_helper op_def=op_def) File "C:\Users\SKJ\Anaconda3\lib\site-packages\tensorflow\python\framework\ops.py",line 3271,in create_op op_def=op_def) File "C:\Users\SKJ\Anaconda3\lib\site-packages\tensorflow\python\framework\ops.py",line 1650,in __init__ self._traceback = self._graph._extract_stack() # pylint: disable=protected-access FailedPreconditionError (see above for traceback): Attempting to use uninitialized value Variable_1 [[Node: Variable_1/read = Identity[T=DT_FLOAT,_device="/job:localhost/replica:0/task:0/device:CPU:0"](Variable_1)]]
以上這篇解決tensorflow由於未初始化變數而導致的錯誤問題就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。