요즘 Tensorflow 로 강화학습(Reinforcement Learning) 관련해서 공부를 하고 있습니다.

 

여기서 대부분의 자료가 Tensorflow 1.x 버전을 기반으로 소스코드가 만들어져있어 이를 위해 2.x 버전을 사용중인 저는 다운그레이드를 해야한다는 생각이 들어 자료를 찾다가 나름의 솔루션을 찾아서 공유드리고자 글을 간단히 작성해봅니다.

 

먼저, Tensorflow 2.x 환경에서 1.x 코드를 돌려볼 수 있는 간단한 솔루션이 있긴 합니다.

 

이를 위한 코드는 아래와 같습니다. 

 

해당코드는 강제로 Tensorflow 환경을 1.x로 import 시키고, 2.x 에서 기본설정된 즉시 실행을 비활성화 한다고 이해했습니다.

import tensorflow.compat.v1 as tf
tf.disable_v2_behavior()

 

하지만, 확실히 완전한 호환은 되지 않는 점을 확인해서 완전한 Tensorflow 1.x 환경을 만들자는 생각이 들어 이를 위한 자료를 찾게 되었습니다.

 

 

 

<현재의 Tensorflow 버전 및 Python 버전 확인>

 

앞서 말씀드렸듯, 콘솔 커맨드 창에서 현재의 tensorflow 버전을 확인 해보신 후 현재버전이 2.x 버전이라면 1.x 소스코드 구동이 원활히 잘 되지 않으실껍니다.

 

현재의 Tensorflow 버전을 확인하는 코드는 아래와 같습니다.

import tensorflow as tf
print(tf.__version__)

 

 

또 다른 주의사항은 tensorflow 1.x (저는 1.15.5 버전 설치) 설치를 위해서는 Python 3.7 이하가 필요한것을 확인했습니다.

 

현재 Python 버전 확인은 아래와 같습니다.

python --version

 

 

<새로운 가상환경 세팅>

 

 Python 버전을 3.7 버전으로 (저는 3.7.16 버전으로 설치) 세팅된 가상환경을 세팅해야 Tensorflow 1.x 버전이 설치가 된다는 사실을 확인 후 새로운 가상환경을 꾸며보기로 했습니다.

 

먼저 새로운 가상환경을 만듭니다.

conda create -n (새로운 가상환경 이름) python 3.7

 

위와 같이 가상환경을 만들면 기본적으로 3.7 버전의 python 기반으로 코드가 돌아가기때문에 Tensorflow 1.x 구동을 위한 기본 환경은 완성됫습니다.

 

다음으로 Tensorflow 1.x 를 설치해줍니다. (저는 임시로 1.15.5 CPU 버전을 설치해줬습니다)

# cpu기반 개발환경일 때, 
pip install tensorflow==1.15.5

#gpu기반 개발환경일 때, 
pip install tensorflow-gpu==1.15.5

 

 

<강화학습을 위한 OpenAI 의 GYM 과 기타 파일 설치>

강화학습을 위해 OpenAI 에서 제공하는 간단한 게임들 기반으로 강화학습을 테스트 해볼 수 있는 Gym 이라는 환경을 설치 해줍니다.

 

그리고 키보드 입력값을 받기 위한 readchar도 설치 해줍니다.

 

마지막으로 이미지와 그래프등을 통해 결과를 확인하기 위한 matplotlib 를 설치 해줍니다.

 

pip install gym
pip install readchar
pip install matplotlib

 

 

이렇게 해서 Tensorflow 1.x 버전 기반으로 강화학습 공부를 해볼 수 있는 Python 3.7버전 기반의 환경이 완성되었습니다.

 

다양한 분들의 블로그에서 자료를 찾아서 저 나름대로 정리를 하여 공유드렸는데, 저처럼 완전 초보인분들께 혹시나 조금이라도 도움이 되셨으면 좋겠습니다.

 

참고했던 블로그는 아래와 같으며, 더 자세한 정보는 해당 사이트들을 통해 확인해보시기 바랍니다.

 

- [Tensorflow] 텐서플로우 버전 확인, 업그레이드, 다운그레이드 방법 (https://jimmy-ai.tistory.com/107)

 

- [Tensorflow]tf 2.x에서 tf1.x 코드 실행하기 (https://nsbg.tistory.com/entry/TensorFlow-tf-2x%EC%97%90%EC%84%9C-tf-1x-%EC%BD%94%EB%93%9C-%EC%8B%A4%ED%96%89%ED%95%98%EA%B8%B0)

 

- I cannot install Tensorflow Version 1.15 through pip (https://stackoverflow.com/questions/61491893/i-cannot-install-tensorflow-version-1-15-through-pip)

 

- ERROR: Could not find a version that satisfies the requirement... (https://lynnn.tistory.com/138)

 

 

 

 

 

Posted by Tommy™
,