Rucrazia's Blog

[Tensorflow 2] 디버깅 - UnboundLocalError: local variable 'logs' referenced before assignment 본문

기술 - Coding/Python

[Tensorflow 2] 디버깅 - UnboundLocalError: local variable 'logs' referenced before assignment

DoyoungJ 2020. 6. 17. 17:05

Tensorflow 2 버전을 쓰면서 아래 코드에서 에러가 나온다면 다른 버전으로 까는 것을 추천합니다.

 

logs = tmp_logs
              end_step = step + data_handler.step_increment
              callbacks.on_train_batch_end(end_step, logs)
        epoch_logs = copy.copy(logs)

UnboundLocalError: local variable 'logs' referenced before assignment

 

저는 2.2.0 버전을 사용하고 있었는데 GPU를 쓰는 모델을 돌리면서 이러한 에러를 보게 되었습니다. tensorflow github에 들어가 보니 최신 버전에서는 code가 수정되어 있었습니다. 그래서 가장 신버전인 2.1.1 버전으로 업데이트를 하니 에러가 안 생겼습니다. 

 

              logs = tmp_logs  # No error, now safe to assign to logs.

 

기존의 tensorflow-gpu 버전을 삭제하고 새로운 버전을 업데이트 하는 방법입니다.

pip uninstall tensorflow-gpu -y
pip install tensorflow-gpu==2.1.1

'기술 - Coding > Python' 카테고리의 다른 글

[Depth Camera] Orrbec Astra S 처음 사용기  (2) 2022.07.08
Python과 Pycharm 설치 방법  (2) 2018.08.24