[英]Error "NameError: name 'logdir' is not defined"
作為初學者,我正在學習 tensorflow 網站上的教程。 在回歸部分,我收到以下錯誤
命令: size_history['Tiny'] = compile_and_fit(tiny_model,'sizes/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
因此,通過谷歌搜索"compile_and_fit" "tiny_model" logdir
我發現您遵循的教程必須是https://www.tensorflow.org/tutorials/keras/overfit_and_underfit
正如回溯告訴您的那樣, compile_and_fit()
調用get_callbacks()
,后者又使用變量logdir
。 logdir
沒有直接作為參數傳遞給get_callbacks()
,也沒有在函數內部的任何地方定義。 因此, get_callbacks()
到達該行,看到名稱logdir
,未能在其局部變量中找到該名稱的任何內容,因此嘗試訪問該名稱的全局變量。 但是 Python 抱怨根本不存在這個名稱,甚至不存在全局變量——所以我猜你一定跳過了教程的前面部分,在那里你會設置那個全局變量:
logdir = pathlib.Path(tempfile.mkdtemp())/"tensorboard_logs"
shutil.rmtree(logdir, ignore_errors=True)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.