Machine Learning/Tensorflow

02. Conda를 이용한 Python 가상환경 생성 및 Tensorflow 설치

728x90
- CPU의 종류와 Version에 따라 Tensorflow의 Version이 달라짐.
- CPU가 AVX를 지원해야 Tensorflow2.0을 설치할 수 있음.
- AVX(Advanced Vector Extensions), AVX2 지원 확인
- CPU Spec 검색

1. Conda를 이용한 Python 가상환경 생성

1) 주로 딥러닝에 사용되는 Python library

- numpy(넘파이) : NumPy는 행렬이나 일반적으로 대규모 다차원 배열을 쉽게 처리 할수 있게 해주는 파이썬의 라이브러리, NumPy는 데이터 구조 외에도 수치 계산을 위해 효율적으로 구현된 기능을 제공. 

- matplotlib(맷플롯립) : 데이터 시각화 파이썬 라이브러리

- pandas : 데이터 분석을 위한 파이썬 라이브러리, R언어의 데이터프레임과 같은 이름의 데이터프레임 구조에 데이터를 저장하고 다양한 조작으로 데이터 분석을 편리하게 해 줌.

- scipy(사이파이) : Python을 위한 과학적 도구의 오픈소스 라이브러리, 프로그래밍, 수학, 과학, 공학을 위한 수치 해석 소프트웨어.

- spyder(스파이더) : NumPy, SciPy, Matplotlib, IPython이 통합된 IDE.

- seaborn(시본) : matplotlib 기반의 파이썬 시각화 라이브러리, 양한 색상 테마화 통계용 차트 등의 기능을 제공함.

- scikit-learn(사이킷런) : 파이썬 머신러닝 라이브러리

- h5py : hdf5(Hierachical Data Format version 5)는 대용량 데이터를 저장하기 위한 파일 포맷

2) Anaconda Prompt 관리자 권한으로 실행

3) 설치된 가상 환경의 확인

(base) C:\Users\dev>conda info --envs
# conda environments:
#
base                  *  C:\ProgramData\Anaconda3

- 설치된 가상 환경 정보 확인

(base) C:\Users\dev>conda remove --name machine --all
(base) C:\Users\dev>conda remove --name machinegpu --all

- 설치된 가상 환경 삭제

4) 가상환경 생성(-n machine : 작업 환경 이름)

(base) C:\Users\dev>conda create -n machine python=3.6 numpy scipy matplotlib spyder pandas seaborn scikit-learn h5py

- 해당 명령어 실행으로 가상환경 생성

5) 가상 환경 생성 종료 화면

#
# To activate this environment, use
#
#     $ conda activate machine
#
# To deactivate an active environment, use
#
#     $ conda deactivate
 

(base) C:\Users\dev>

- conda 생략 가능

6) 설치된 가상 환경의 확인

(base) C:\Users\dev>conda info --envs
# conda environments:
#
base                  *  C:\ProgramData\Anaconda3
machine                C:\ProgramData\Anaconda3\envs\machine

- 생성된 가상환경 확인 가능

7) 가상환경이 생성된 폴더의 확인

C:\ProgramData\Anaconda3\envs\machine


2. CPU 기반 Tensorflow 설치

1) machine 작업 환경 활성화

- 'Anaconda Prompt'에서 activate machine 입력

(base) C:\Users\dev>activate machine
(machine) C:\Users\dev>python -m pip install --upgrade pip  ← Python package 설치 툴 upgrade(생략 가능)

- 비활성화 : deactivate machine

2) Tensorflow 설치 확인

import tensorflow as tf: 라이브러리 import 및 별명 선언
print(tf.__version__): Tensorflow 버전 출력
exit(): 종료

 

3. 에러 발생 조치

더보기

  에러 발생시 조치 1

- 메시지
ModuleNotFoundError: No module named '_pywrap_tensorflow_internal' ImportError: DLL load failed: DLL 초기화 루틴을 실행할 수 없습니다.

- 해결 방법
https://www.microsoft.com/ko-kr/download/details.aspx?id=48145 접속
visual c++ 2015 redistributable (64bit) 다운받아 설치한다.


  에러 발생시 조치 2

- 메시지

ImportError: DLL load failed with error code -1073741795

- 해결 방법: 다른 버전의 Anaconda 설치 또는 하위 버전의 Tensorflow 설치

>>> exit()

- Tensorflow 삭제후 재설치

(machine) C:\Windows\system32>pip uninstall tensorflow
Uninstalling tensorflow-2.2.0:
  Would remove:
    c:\programdata\anaconda3\envs\machine\lib\site-packages\tensorflow-1.6.0.dist-info\*
    c:\programdata\anaconda3\envs\machine\lib\site-packages\tensorflow\*
    c:\programdata\anaconda3\envs\machine\scripts\freeze_graph.exe
    c:\programdata\anaconda3\envs\machine\scripts\saved_model_cli.exe
    c:\programdata\anaconda3\envs\machine\scripts\tensorboard.exe
    c:\programdata\anaconda3\envs\machine\scripts\toco.exe
    c:\programdata\anaconda3\envs\machine\scripts\toco_from_protos.exe
Proceed (y/n)? y
  Successfully uninstalled tensorflow-2.2.0

(machine) C:\Windows\system32>
(machine) C:\Windows\system32>pip install tensorflow==2.2.0

 * Anaconda 삭제시 가상환경이 정상적으로 삭제가 안되는 경우 탐색기에서 확인 삭제
-
기본 생성 폴더: C:/ProgramData/Anaconda3/envs 
-
숨김 파일 해제

- 숨김 파일 출력 설정

- 윈도우에 계정 및 패스워드 없이 로그인해도 [관리자 모드]로 설치하면 목록에 출력됨.
  C:\ProgramData\Anaconda3\envs

- 특정 계정으로 로그인한 경우의 폴더: C:\Users\USERNAME\AppData\Local\conda\conda\envs