텐서플로우는 딥러닝을 매우 쉽게 구현할 수 있게 도와주는 구글 개발자들이 만든 파이썬 라이브러리입니다.
직접 텐서를 하나하나 연결해서 신경망을 구성할 수도 있고
귀찮으면 Keras 라는 하이레벨 API로 단 몇줄만에 신경망을 구성할 수도 있습니다.
페이스북에서 만든 딥러닝라이브러리 PyTorch랑 자주 비교하는데 Tensorflow 2버전 이후부터는 훨씬 코드가 짧아져서 초심자는 텐서플로우로 입문하는게 나은 것 같습니다.
근데 구글이 만든 라이브러리들 종특은 설명서가 오지게 어렵고 불친절합니다. 텐서플로우도 그렇습니다.
그게 유일한 단점이고 아무튼 Tensorflow 2 설치 & 셋팅법을 알아보도록 합시다.
Tensorflow 2 윈도우/맥 개발환경 셋팅
맥이나 윈도우나 거의 똑같습니다.
옛날 1버전보다 신경쓸것도 별로 없고 쓸데없는 버그도 줄어서 다행
1. (중요) 파이썬 3.x 64bit 버전을 설치합니다.
3.12버전 이상은 tensorflow 2.16버전 이상만 사용가능한 이슈가 있어서 3.11버전 이하로 설치해봅시다.
https://www.python.org/downloads/mac-osx/ (맥)
https://www.python.org/downloads/windows/ (윈도우)
▲ 여기서 64 혹은 x86-64 글자가 들어있는 버전을 다운받아 설치하시면 됩니다. x86만 있는건 안됩니다.
아나콘다 같은걸로 설치하셨다고 해도 파이썬이 64bit 버전이 아니면 아나콘다 삭제 후 다시 설치하셔야합니다.
(참고) 내 파이썬 버전을 확인하는 법은
윈도우는 시작메뉴에서의 검색 - cmd 혹은 PowerShell 검색 후 실행 - python 입력 후 엔터
그러면 64bit인지 32bit 인지 뜹니다.
맥은 런치패드에서 - terminal 혹은 터미널 검색 - python 입력 후 엔터
그 다음에 import struct 엔터
그 다음에 print(struct.calcsize("P") * 8) 엔터
하시면 32인지 64인지 출력해줍니다.
2. pip를 이용해 tensorflow 라이브러리를 설치합니다.
파이썬 라이브러리 설치가 처음인 분들은 시작메뉴에서의 검색 - cmd 혹은 PowerShell 로 들어가신 후
pip install tensorflow==2.15.0 입력 후 엔터 하시면 됩니다.
맥북은 런치패드에서 터미널 (terminal) 검색하신 후
똑같이 pip install tensorflow==2.15.0 합시다.
맥북은 때에 따라
sudo pip install tensorflow==2.15.0
pip3 install tensorflow==2.15.0
입력 해야하는 경우도 있습니다.
다만 윈도우에서 GPU를 사용하고 싶다면 하단을 참고합시다.
이제 파이썬 파일을 하나 만드신 후
import tensorflow as tf
이렇게 작성해보신 후 실행해봤을 때 에러만 안나면 설치가 잘된 것입니다.
warning GPU CUDA 어쩌구 그런말이 뜨기도 할텐데 빨간 에러만 안뜨면 성공입니다.
(선택) 윈도우에서 Tensorflow GPU로 구동하기
여기까지 셋팅하면 CPU로 딥러닝을 돌리게 되는데
GPU를 사용하면 CPU 보다 10~20배 빠르게 학습작업을 종료할 수 있습니다.
예를 들면 i7 8700k 보다 GTX 1060가 작업량이 20배 더 빠른데
왜냐면 딥러닝에 필요한 연산은 99% 행렬곱연산이기 때문에 GPU가 이걸 가장 잘합니다.
하지만 GPU쓰려면 3~4GB 정도의 하드 여유공간과 설치할 프로그램이 3~4개 필요한데
강의에선 무거운거 안해서 CPU만 써도 대부분 몇 분 안에 끝납니다.
(0) 공식 설치가이드인데
https://www.tensorflow.org/install/gpu?hl=ko
실은 별로 쓸모가 없으니 검색하거나 하단 따라하는게 낫습니다.
(1) Tensorflow 라이브러리를 설치합시다.
pip install tensorflow-gpu==2.10.0
터미널 열어서 입력하면 됩니다.
(윈도우+GPU의 경우 tensorflow 라이브러리가 아니라 tensorflow-gpu의 2.10버전을 설치해야합니다)
(2) 내 GPU 사용가능한지 확인
https://developer.nvidia.com/cuda-gpus
▲ Nvidia의 CUDA를 이용할 수 있어야하기 때문에 가능한 그래픽카드들은 위에서 확인 가능합니다.
GTX 10X0 이상이면 대부분 가능합니다.
(3) 다음 소프트웨어가 시스템에 설치되어 있어야 합니다.
NVIDIA® GPU 드라이버
CUDA® Toolkit
cuDNN
설치는 기본으로 잡히는 경로를 매우 추천드립니다.
하지만 설치시 버전을 잘 선택해야하는데
https://www.tensorflow.org/install/source_windows?hl=ko#gpu 보고 cuDNN과 CUDA버전을 맞춰봅시다.
cuDNN은 개발 툴킷이라 설치를 자동으로 해주고 그런거 없습니다.
다운 받으시면 zip파일 압축해제 하시고
\cuda\bin\cudnn*.dll 파일을 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin 폴더 안에 붙여넣기
\cuda\include\cudnn*.h 파일을 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include 폴더 안에 붙여넣기
\cuda\lib\x64\cudnn*.lib 파일을 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\lib\x64 폴더 안에 붙여넣기
하십시오. (경로는 때에 따라서 10.1 대신 여러분이 다운받은 버전이 될 수 있습니다)
▲ 그 다음 시작메뉴에서 환경 변수 편집 검색해서 들어가셔서
▲ 1 2 3 차례로 누릅니다.
▲ 그리고 이런 두개의 항목이 잘 있으면 그냥 끄시고
없으시면 새로만들기 눌러서 위에랑 똑같이 두개 추가해주시면 됩니다.
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\libnvvp
(10.1 대신 여러분의 아까 그 버전명을 적으시면 됩니다)
끝
(4) 어떤 경우엔 이것도 설치가 필요할 수 있습니다.
msvc 2019 컴파일러 (IDE인데 컴파일러도 함께 설치됩니다)
(5) GPU로 잘 구동되는지 확인은
import tensorflow as tf
if tf.test.gpu_device_name():
print('Default GPU Device: {}'.format(tf.test.gpu_device_name()))
파이썬 파일에 위의 코드 그대로 작성해서 실행했을 때 GPU:0 이런게 나오면 셋팅 끝입니다.