Skip to main content

install pytorch with anaconda in windows 10 (윈도우에서 아나콘다 가상환경에 파이토치 설치) - 1(아나콘다 소개 및 설치)

Image tracking 할 일이 있어서 깃헙에서 이것 저것 찾다보니 pytorch가 필요해서 깔아보려고 했는데 윈도우에서는 pytorch가 안깔린다... 망할 윈도우... 그렇게 또 삽질이 시작됐다.

우선 아나콘다가 무엇인지 부터 알아보기로 했다. 


공식 홈페이지에 가니 ANACONDA란 한마디로 최고로 인기 많은 데이터 과학 플랫폼이란다.
250개 이상의 잘나가는 데이터 과학 패키지들을 포함하고 있는 Anaconda Distribution이라는 배포판이 있고 그 중에 Python이랑 R 패키지는 아나콘다의 안전한 환경에서 엄선 되고 컴파일되어 여러분의 시스템에서 온전히 '일'만 잘할 수 있게 도와준다고 한다.

Anaconda Distribution Diagram

음 대충 보니까 그럼 아나콘다는 패키지 모음 같은건가 보네 하고 본격적으로 Anaconda distribution을 알아보기로 했다.

Anaconda navigator는 데스크탑용 GUI 툴이고,

Libraries는 jupyter 등을 포함한 IDE와 Numpy, Pandas 같은 통계 분석 계산 패키지, 시각화도구, Tensorflow같은 머신 러닝 도구 등을 기본적으로 가지고 있거나 다운 받을 수 있다는 얘기이다.

Conda는 Anaconda의 패키지 매니저로 자동적으로 모든 패키지를 관리해주고 linux, mac, window 모든 플랫폼에서 작업할 수 있게 해준다. 또 가상 환경을 만들 수도 있다.
Anaconda에서 제공하는 패키지들 외에 유저나 커뮤니티에서 올려주는 패키지도 받을 수 있나보다. 

정리하자면 아나콘다는 다양한 운영체제에서 파이썬이나 R을 기반으로 여러가지 패키지를 쉽게 설치하고 작업할 수 있게 도와주는 도구라는 소리다!

재미 없는 홍보글 대충 읽어 봤으니 이제 본격적으로 다운을 받아서 직접 실행해보자.
뭐든 직접 뚝딱뚝딱 해보는게 훨씬 이해가 잘된다!



필자가 받은 Anaconda distribution 버전은 Version 5.1 | Release Date: February 15, 2018 이고
파이썬2, 3에 맞춰서 다운 받을 수 있게 되어있다.

요즘은 2에서 3로 거의 넘어가는 추세니까 대세를 따라 3를 받아보겠다.

그나저나 파이썬은 버전따라 넘 다르고 뭐가 자꾸 바뀌어서 쓸때마다 뭘로 해야될지 짜증난다.



다 그냥 다음 다음 다음 눌러 주시면 된다.

위에 옵션은 환경변수 설정으로 cmd에서 파이썬을 명령어로 한방에 실행할꺼냐 아니면 따로 설치되는 anaconda 콘솔로만 파이썬을 실행할꺼냐 물어보는건데 그렇게 쓰고 싶은 분들은 체크하시되 기존에 그냥 파이썬을 설치하셨거나 나중에라도 설치할 계획이 있는 분들은 꼬일 수 있으니 체크 하지 마시면 된다. 물론 아나콘다에서는 권장하지 않는단다. 

밑에 옵션은 아나콘다를 파이썬의 디폴트로 설정할까를 묻는 건데 Visual studio나 pycharm 같은 IDE에서 자동으로 아나콘다를 파이썬으로 잡을 수 있게 하겠다는 것이다. 자동 체크 되어있으니 잘모르겠으면 그대로 설치해주자~

다 설치하면 VS code랑 파트너라고 그거 설치하라고 권유를 하신다. 전 이미 깔려있으니 패스~

이제 윈도우 키를 누르고 Anaconda라고 입력하면 Anaconda Prompt라는 프로그램이 보인다!


아나콘다와 파이썬이 잘 깔린 것을 확인 할 수 있다!



Comments

Popular posts from this blog

Anaconda tensorflow-gpu 설치 에러 [WinError 126] 지정된 모듈을 찾을 수 없습니다, importError: Could not find 'cudnn64_6.dll'

anaconda를 이용하여 tensorflow cpu 버전을 사용하다가 training이 끝나지를 않아서  gpu 버전을 써보기로 했다. cpu 버전은 나름 쉽게 설치했었는데 gpu는 조금 더 까다로웠다. 블로그들을 참고해보니 막 무슨 파일을 다운 받고 어디에 붙여넣고 하라는데  처음에는 이해가 잘 안됐다. 내가 이해한대로 해보자면, 우선 다른 블로그를 참고해서 아나콘다와 tensorflow cpu 버전 설치 직전까지 진행해주시고, 필요한 파일은  CUDA 8.0 CuDNN 6.0 두 파일을 순서대로 설치. 대충 내용을 보니 CUDA 8.0은 그냥 설치하는 파일이고 CuDNN는 설치한 cuda 폴더 안에 추가하는 라이브러리, 기타등등 파일인데 다른 블로그에서는 CuDNN 폴더를 다 붙여 넣으라고도 했지만 딱 봐도 확연히 안에 들어있는 파일이 달라서 CuDNN 폴더에 있는 파일을 기존 cuda 폴더 안에 붙여 넣어주었다. 아무튼 여기서 주의해야 될 점은 CuDNN이 6.0이라는 것이다. 다른 블로그에서는 5.1을 받으라고 되어있는데 이상하게 내 anaconda에서는 계속 cudnn64_6.dll 파일을 찾을 수 없다고 에러가 떴다. 바로 이 에러이다. 알아보니 5.1은 bin 폴더안에 cudnn64_5.dll를 가지고 있고 6.0이 cudnn64_6.dll을 갖고 있었다. cudnn64_6.dll을 기본 설치 폴더 기준 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin 안에 붙여넣으니 성공적으로 tensorflow-gpu를 이용할 수 있게 되었다.

ftp, sftp, ssh 차이점

telnet ==> ssh  ftp ==> sftp  p2p방식이라 보안에 취약한것이 아니라 telnet과 ftp 인 경우는 패킷을 캡쳐해서 보면, 평문이기 때문에 보여져서는 안될부분(패스워드, 계정 등)이 쉽게 노출된다. 이는 아주 큰 문제를 발생시킬 수 있다. 이런 취약점을 보안하기 위해서 telnet은 ssh로  f tp는 sftp로 암호화된 프로토콜 SSL을 사용하는게 좋다. 이렇게 하면 모든 패킷을 암호화 해서 주고 받으므로  패킷을 잡아내더라도 해독하는데 슈퍼컴퓨터로 1달 이상 걸리게 된다.  cf)  telnet 과 ftp의 차이 telnet: 쉘권한을 취득(ex. bash)하여 마치 로컬 컴퓨터를 다루는 것처럼  실행되는 접속 방법  ftp: 파일을 전송하기 위한 프로토콜.  telnet으로 파일 전송을 못하며(zmodem프로토콜을 사용하면 되지만, 엄청 느림) ftp로 시스템을 관리하거나 데몬을 띄우는 것은 불가능.  Reference https://wpengine.com/resources/how-to-access-wordpress-files-using-sftp/ https://www.linux.co.kr/home2/board/subbs/board.php?bo_table=linuxserver&wr_id=19987

Solution: react-native-maps showsUserLocation 동작 안함 해결 방법

react-navive-maps를 이용해서 지도를 구현하고 있는데 내 위치로 가기 버튼이 보이질 않았다. First of all, a reminder: for the button to be visible, some criteria are needed (OK in the OP): showsUserLocation  must be set  true  because the default is  false showsMyLocationButton  must stay  true , as is the default The issue is in a race condition between two asynchronous events: onMapReady and onLayout (noted Ready and Layout, for short, below). The decision to draw the button or not is done at the time of the Layout, and the setting of UserLocation can't be done before the Ready of the map (a handle to it is needed). Unfortunately, usually, at launch, the Layout arrives  before  the Ready. 위 글을 참조해보면 showUserLocation과 showsMyLocationButton이 모두 true로 설정되어 있어야 하고,  문제는 onMapReady과 onLayout의 동기화 문제라고한다. 버튼을 그릴지 말지가 Layout이 다 마무리 되는 시점에 결정되고  유저의 위치는 맵이 다 준비 되어야만 작동을 하는데 일반적으로 맵이 다 준비되기 전에 Layout이 먼저 그려져 버려서 버튼이 안보이는 거라고 한다. 밑에 댓글들을 쭉...