"TensorFlow"의 두 판 사이의 차이
둘러보기로 가기
검색하러 가기
잔글 (→OS에 따른 설치) |
잔글 |
||
53번째 줄: | 53번째 줄: | ||
* 필요한 텐서플로우를 설치한 후 다음 링크에서 호환되는 버전을 찾는다. https://www.tensorflow.org/install/source_windows#tested_build_configurations | * 필요한 텐서플로우를 설치한 후 다음 링크에서 호환되는 버전을 찾는다. https://www.tensorflow.org/install/source_windows#tested_build_configurations | ||
− | * 텐서플로우 버전에 맞게 [https://developer.nvidia.com/cuda-toolkit-archive CUDA] | + | * 텐서플로우 버전에 맞게 [https://developer.nvidia.com/cuda-toolkit-archive CUDA], [https://developer.nvidia.com/rdp/cudnn-archive cuDNN]를 설치해준다. CUDA는 그냥 설치하면 되고, cuDNN은 맞는 것을 다운받아 압축을 푼 후 내부의 파일들을 CUDA의 해당하는 폴더에 내용물들을 복사해주면 된다. 기본경로는 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v버전 형태이다. |
* 시스템 환경변수 편집 -> 고급 -> 환경변수(Edit environment for your account)에서 system variables 중 CUDA_PATH가 있는지 확인. | * 시스템 환경변수 편집 -> 고급 -> 환경변수(Edit environment for your account)에서 system variables 중 CUDA_PATH가 있는지 확인. | ||
|} | |} |
2022년 1월 6일 (목) 15:34 판
1 개요
머신러닝과 딥러닝에 많이 사용되어 머신러닝 라이브러리라 생각하는 사람들이 많은데, 실제로는 숫자계산을 위한 범용적인 라이브러리이다.
기본적으로 리눅스 환경에서 사용하기 위해 만들어진 라이브러리.
1.1 설치
설치가 까다로운 편이다. 요구하는 파이썬 버전 조건도 제한적이라 도커 안에서 다루는 편이 편할 것 같다.
1.1.1 의존성 확인
사용하는 버전이 안맞으면 계속 에러만 뜬다.
tensorflow 버전 | 알맞는 CUDA |
---|---|
2.4.x | 11.1 |
2.3.x | 10.1 |
1.1.2 OS에 따른 설치
OS | 방법 | ||||||
---|---|---|---|---|---|---|---|
Window |
| ||||||
1.2 설치확인
과정 | 설명 | 방법 | ||||||
---|---|---|---|---|---|---|---|---|
설치확인 | 텐서플로우 버전에 따라 명령어가 다르다. 버전 확인 후 알맞은 방법으로 hello를 표시해보자.
|
버전확인import tensorflow as tf
print(tf.__version__)
|
2 사용법
신경망 모델을 정의하기 위한 공간을 그래프, 모델을 실행하는 공간을 세션이라 부른다.
유의 : 1.x버전에서 세션을 정의하고 run 하는 과정이 2.x에선 생략되어 연산이 바로 실행된다.
의도 | 설명 | 방법 |
---|---|---|
상수 정의 | 상수를 변수에 대입한다. | 변수 = tf.constant(숫자) |
변수 정의 | 변수 = tf.Variable(초기값) | |
플레이스홀더 정의 | 데이터를 담을 그릇을 만든다.
갯수에 해당하는 원소를 가진 배열이 들어오게 된다. 배열 크기에 제한을 두고 싶지 않다면 None을 넣는다. |
변수 = tf.placeholder(자료형, [갯수]) |
2.1 활용
의도 | 설명 | 방법 |
---|---|---|
데이터 시각화 | TensorBoard. 로그데이터를 저장할 파일을 만들고 명령줄에서 tensorboard --logdir=경로 를 넣어주면 특정 포트에서 실행한다.
2세대 언어는 이것과 다를텐데... |
import tensorflow as tensorflow
tb = tf.summary.FileWriter("log_dir", graph=)
|
데이터 다운 | MNIST에서 제공하는 데이터 따위를 손쉽게 다운받을 수 있다. | from tensorflow.examples.tutorials.mnist import input_data # 손글씨 분류데이터를 받아온다.
DB = input_data.read_data_sets('저장경로/', one_hot=True)
|
3 에러
3.1 패키지 버전관련
에러 | 원인 | 해결방법 |
---|---|---|
Could not load dynamic library 'cudart64_110.dll'; dlerror: cudart64_110.dll not found | 2.1버전 이후부터 패키지에 CPU, GPU버전이 모두 설치된다.
GPU 도구가 설치되지 않았을 때 발생. |
|
위와 같은 에러
W tensorflow/stream_executor/platform/default/dso_loader.cc:60] Could not load dynamic library 'cudart64_110.dll'; dlerror: cudart64_110.dll not found |
의존성 문제. ㅅㅂ.. | CUDA10.1을 사용하고 있다면 pip install tensorflow==2.3.0을 사용하고,
tensorflow가 2.4.0 이라면 CUDA11.0 으로 올려야 한다. |
AttributeError: module 'tensorflow' has no attribute 'Session' | 2.X버전은 session정의가 없어진다. 1.x버전의 문법으로 명령을 실행할 때 나오는 에러. | 위의 설치 참고. |
ModuleNotFoundError: No module named 'tensorflow' | 분명 설치했는데 안된다??
(설치했다 지우긴 했다;;) |
터미널에서 pip install --ignore-installed --upgrade tensorflow 를 시도해보자.
|