ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Anaconda] 개발환경 설치 및 WIN32 응용프로그램 오류
    💫 Computer Science/Python & AI Framework 2019. 12. 27. 14:26
    딥러닝 개발을 위한 아나콘다에 텐서플로우와 케라스를 설치과정

     

     

     

    1. 아나콘다 설치
    2. 패키지 업데이트
    3. 아나콘다 기본 가상환경인 Base에 텐서플로우, 케라스 pip install OR 가상환경을 새로 생성하여 설치

     

     

    http://www.python.org에서 로컬에 설치할 수 있는 파이썬은 기본 파이썬으로 pip패키지를 통합하는 관리모듈만 존재합니다. 여러 다른 패키지(numpy, scipy, pandas, sklearn...)등을 설치하려면 하나하나 설치를 해야합니다.

    하지만 아나콘다 가상환경을 설치하면 1000개가 넘는 파이썬 패키지를 기본으로 제공하고 있으며 여러 가상환경을 만들어서 파이썬 버전이나 비트버전을 바꿔가며 사용도 가능합니다.

     

    저같은 경우는 주식 관련 데이터로 실습을 해보기 위해 주식 관련 키움 API가 필요했는데요, 키움API는 32비트버전만을 제공해서 가상환경을 하나 더 설치해 거기에 파이썬32비트 버전과 필요한 패키지를 설치하여 사용하였습니다.

     

     

     

    1. 아나콘다 다운로드

     

    다운로드 사이트

    https://www.anaconda.com/distribution/#download-section 

     

    Anaconda Python/R Distribution - Free Download

    Anaconda Distribution is the world's most popular Python data science platform. Download the free version to access over 1500 data science packages and manage libraries and dependencies with Conda.

    www.anaconda.com

     

     

     

    2019/12/27 기준 파이썬3.7버전을 지원하는 아나콘다 4.8.0을 다운받을 수 있습니다. 자신의 운영체제와 비트에 맞는 것을 다운로드 누릅니다.

     

     

     

     

     

     

    다운받은 파일을 실행시키면,

     

    첫 화면 입니다.

     

     

    약관에 동의 I Agree

     

     

    Just Me를 누르면 본인 계정에만 설치, All Users를 누르면 모든 계정에 설치.

    한 컴퓨터가 계정이 여러개가 아니라면 둘 중 어느 것을 눌러도 상관 없습니다.

     

     

     

    설치 경로를 지정해 줍니다. 설치경로에 한글이 들어가면 간혹 에러가 발생할 수 있으니 영어로만 작성해주시면 됩니다.

     

     

     

     

     

     

     

    첫번째 옵션,
    Add Anaconda to my PATH environment variable

     

    "PATH 환경 변수에 Anaconda를 추가할지 여부를 선택하십시오. PATH 환경 변수 에 다른 소프트웨어를 방해 할 수 있으므로 Anaconda 를 추가하지 않는 것이 좋습니다 . 대신 시작 메뉴에서 Anaconda Navigator 또는 Anaconda Prompt를 열어 Anaconda 소프트웨어를 사용하십시오."

     

    환경변수에 추가할지를 선택하는 부분입니다. 아나콘다 외에 다른 파이썬 인터프리터를 환경변수에 등록해서 사용 한다면 체크 해제 하고 아나콘다만을 사용하는 경우 또는 아나콘다가 주력일 경우로 윈도우 CMD창에서 파이썬을 실행할 경우는 체크해줍니다. 체크할 경우 윈도우 CMD창 경로와 상관없이 아나콘다를 파이썬으로 인식환경변수를 설정해 주지만 다른 파이썬 인터프리터를 사용한다면 쉽게 충돌이 일어날 수 있다고 되어있습니다.
    저는 아나콘다만 주로 사용할 예정으로 체크를 하고 진행하였습니다.

     

     

    두번째 옵션,
    Register Anaconda as my default Python3.7

     

    아나콘다를 기본 파이썬으로 등록할지 여부를 선택하는 옵션입니다. 기본으로 체크가 되어있고 개발 도구나 에디터에서 아나콘다를 파이썬으로 인식하게 됩니다.

     

    저는 두 옵션 다 선택 후 Install 하였습니다.

     

    이후 Next만 누르면 설치가 완료 됩니다.

     

     

     

    설치가 완료되고 환경변수를 확인해보면 알아서 아나콘다 경로가 환경변수에 들어가있습니다.

    만약 설치했을 때 위의 첫번째 옵션을 선택하지 못하였다면 직접써서 추가해주어도 됩니다.

    기본 설치 경로: C:\Program Files\Anaconda3
    설치경로\Anaconda3, 
    설치경로\Anaconda3\Scripts, 
    설치경로\Anaconda3\Library\bin 

     

    설치 후, 아나콘다 프롬프트를 실행시켜 줍니다.

     

     

     

    conda --version

    conda --version 명령어를 입력하였을 때, 버전이 뜨면 제대로 설치가 된 것입니다.

     

     

     

    2. 패키지 업데이트

     

    conda update -n base conda

    conda패키지 전체 업데이트

     

     

     

     

    conda update --all

    파이썬 전체 패키지 업데이트

     

     

     

     

     

     

    3-1. 기본 가상환경에 텐서플로우 케라스 설치

    아나콘다 프롬프트에 처음 들어가면, 기본 가상환경인 (base)가 활성화 되어 있습니다.

     

    텐서플로우 설치

    pip install tensorflow

     

    케라스 설치

    pip install keras

     

    확인

    python

     

    >>import keras

    Using TensorFlow backend라고 뜨면 정상적으로 설치가 된 것입니다.

     

     

     

    >>import tensorflow as tf

    텐서플로우도 같은 방법으로 임포트 하였을 때 오류가 없다면 정상적으로 작동 되는 것 입니다.

    파이썬 실행창 빠져나가기는 Ctrl + Z

     

     

     

     

    3-2. 가상환경 하나 따로 생성해서 딥러닝 개발환경 만들기

     

    아나콘다 프롬프트 명령어 창에

     

    conda create -n 가상환경명 python=3.7 numpy pandas matplotlib tensorflow jupyter notebook scipy scikit-learn nb_conda nltk

    conda create -n 가상환경명 python=3.7 numpy pandas matplotlib tensorflow jupyter notebook scipy scikit-learn nb_conda keras

    파란색으로 표시된 부분은 패키지 라이브러리 입니다. numpy, pandas, matplotlib, tensorflow, keras 등 필요한 패키지 명을 적어주면 됩니다.

    저는 numpy, pandas, patplotlib, tensorflow, keras를 일단 설치하였습니다.

    만약 이후 다른 패키지가 더 필요하다면 명령어창에서 pip install 패키지명 명령어를 통해 설치하여 주면 됩니다.

     

    또는 이렇게 따로따로 실행하여도 됩니다.

    conda create -n 가상환경명 python=3.7
    
    activate 가상환경명 
    
    conda install numpy pandas matplotlib tensorflow jupyter notebook scipy scikit-learn nb_conda nltk

     

     

     

     

    - 필요한 명령어들 정리

     

    • 가상환경 생성
    conda create -n 가상환경명 python=원하는버전

     

    • 가상환경 삭제
    conda remove -n 가상환경명 --all

     

    • 가상환경 확인
    conda info --envs

     

    • 특정 가상환경 실행
    activate 가상환경명

     

    • 현재 접속한 가상환경을 나가서 base에 접속
    deactivate 가상환경명

     

    • 설치된 패키지 확인
    pip list

     

    이후 인터프리터를 개발환경을 셋팅한 가상환경으로 설치한 뒤, IDE를 이용하여 프로젝트 생성하고 실습을 진행하였습니다!

     

     

     

     

     

     

    오류문제 :
    OSError: [WinError 193] %1 is not a valid Win32 application(올바른 Win32응용프로그램이 아닙니다.)

     

    저는 케라스와 텐서플로우 라이브러리를 임포트 시키는데 계속 저와 같은 오류가 발생해서 ㅜㅜ 아나콘다 외에 로컬에 깐 파이썬도 삭제하고 아나콘다를 64비트로 계속 다시 설치하고 했는데도 저와 같은 오류때문에 하루종일 삽질을 하였습니다....

    python
    >> import platform
    >> print(platform.architecture)

    명령문를 통해 버전을 확인해도 64비트로 잘 설치가 되었는데 왜 32비트용 프로그램이 아니라는 오류가 나는지 계속 찾아보았습니다.... 케라스와 텐서의 dll파일을 뭔가 32비트로 잘못 설치했나 싶어 아나콘다를 싹 다시 밀고 패키지를 설치해보기도 하고 가상환경을 새로 생성하여 패키지를 설치해보고....

    하지만 설치하라는 대로 했는데 dll정보가 뭔가 잘못되었을리는 없고...

     

    자바는 대부분 라이브러리로 개발을 하니까 시스템 지식에 대한 필요가 덜 하지만 파이썬은 확장 모듈을 많이 사용하므로 순수 python오류가 아닌 경우 트러블슈팅하기가 상당히 어렵다고 합니다. 계속 찾아본 끝에 os도 64비트, 파이썬 인터프리터도 64비트나 임포트한 dll파일이 64비트가 아니다라고 생각했지만 dll호출이 잘못되었을리는 없고, 시스템관련 지식이나 peformat에 관해 공부를 해야하나까지도 생각했습니다..

     

    하지만 이 오류는 단순히 그냥 로컬에 설치한 numpy가 문제였던 것이었습니다^^.

    언제 설치했는지도 기억이 안나는 numpy 때문에 이렇게 고생을 한것이었습니다...

     

    https://stackoverflow.com/questions/25651990/oserror-winerror-193-1-is-not-a-valid-win32-application

     

    OSError: [WinError 193] %1 is not a valid Win32 application

    I am trying to call a python file "hello.py" from within the python interpreter with subprocess. But I am unable to resolve this error. [Python 3.4.1]. import subprocess subprocess.call(['hel...

    stackoverflow.com

     

    이와 비슷한 문제에 대한 질문글의 답변에도 여러 의견이 달렸는데 .py파일이 실행파일이 아니라던가, 쉘을 지정해주어야 된다던가.. 마지막 답변자가 pip install numpy를 진행하였다가 numpy의 경로가 엇갈려서 오류가 났었고 이를 uninstall해주어 해결했다는 답변을 보고 언뜻 파이참에서 numpy를 설치했던 기억이 났다... 이때 인터프리터를 사용하지 않았고 기본파이썬으로 진행해서 appdata파일 밑에 site-package가 설치되었고 로컬의 appdata파일 밑의 numpy 아나콘다의 numpy두개가 있던게 문제였습니다. 그래서 pip uninstall numpy를 해주니 문제가 해결..

     

     

    댓글

Designed by Tistory.