Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/284.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python “错误”;名称错误:名称';logdir';“未定义”;_Python_Tensorflow_Machine Learning - Fatal编程技术网

Python “错误”;名称错误:名称';logdir';“未定义”;

Python “错误”;名称错误:名称';logdir';“未定义”;,python,tensorflow,machine-learning,Python,Tensorflow,Machine Learning,作为初学者,我正在学习tensorflow网站上的教程。 在回归部分,我得到以下错误 命令:size\u历史['Tiny']=编译和拟合(Tiny\u模型,'size/Tiny') 错误: NameError:未定义名称“logdir” 我真的很感激任何帮助 完整的错误消息如下: --------------------------------------------------------------------------- NameError

作为初学者,我正在学习tensorflow网站上的教程。 在回归部分,我得到以下错误

命令:size\u历史['Tiny']=编译和拟合(Tiny\u模型,'size/Tiny')

错误:

NameError:未定义名称“logdir”

我真的很感激任何帮助

完整的错误消息如下:

---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-29-6b42ade0df41> in <module>
----> 1 size_histories['Small'] = compile_and_fit(small_model, 'sizes/Small')

<ipython-input-20-37c172377a6c> in compile_and_fit(model, name, optimizer, max_epochs)
     16     epochs=max_epochs,
     17     validation_data=validate_ds,
---> 18     callbacks=get_callbacks(name),
     19     verbose=0)
     20   return history

<ipython-input-19-1fd695b661fd> in get_callbacks(name)
      3     tfdocs.modeling.EpochDots(),
      4     tf.keras.callbacks.EarlyStopping(monitor='val_binary_crossentropy', patience=200),
----> 5     tf.keras.callbacks.TensorBoard(logdir/name),
      6   ]

NameError: name 'logdir' is not defined
---------------------------------------------------------------------------
NameError回溯(最近一次呼叫上次)
在里面
---->1 size_历史['Small']=编译_和_拟合(Small_模型,'size/Small')
在编译和拟合中(模型、名称、优化器、最大纪元)
16个时代=最大时代,
17验证数据=验证数据,
--->18回调=获取回调(名称),
19详细=0)
20回归历史
in-get_回调(名称)
3 tfdocs.modeling.EpochDots(),
4 tf.keras.callbacks.earlystoping(monitor='val\u binary\u crossentropy',patience=200),
---->5 tf.keras.callbacks.TensorBoard(logdir/name),
6   ]
NameError:未定义名称“logdir”
所以通过谷歌搜索
“编译并安装”“微型模型”logdir
我发现你所遵循的教程必须是

正如回溯告诉您的那样,
compile\u and\u fit()
调用
get\u callbacks()
,这反过来又使用变量
logdir
logdir
不是作为参数直接传递给
get\u callbacks()
,也不是在函数中的任何位置定义的。 因此,
get_callbacks()
到达该行,看到名称
logdir
,在其局部变量中找不到该名称的任何内容,因此尝试访问该名称的全局变量。但是Python抱怨根本不存在这样的名称,甚至没有全局变量,所以我猜您一定跳过了教程的前一部分,在那里您可以设置全局变量:

logdir = pathlib.Path(tempfile.mkdtemp())/"tensorboard_logs"
shutil.rmtree(logdir, ignore_errors=True)

很难说,但我猜
编译和_-fit
包含您编写的代码?在该代码的某个地方,使用名称
logdir
,而没有首先为其赋值。除非粘贴错误消息的完整回溯,否则我们只能盲目推测问题可能在哪里。(但如果您自己花时间查看回溯的每一行,您可能会看到它明确地告诉您问题发生在哪个文件的哪一行。)谢谢,我已经添加了完整的错误消息。请提供。非常感谢!是的,我天真地跳过了台词。祝你有美好的一天!!