티스토리 뷰

반응형

0. 파이토치 뭐지?

 

2016년 초 파이토치가 세상에 공개된지가 벌써 5년이 되어갑니다. 텐서플로우와 마찮가지인 파이토치는 손쉽게 인공 신경망 모델을 만들고 이용할 수 있도록 지원하는 딥러닝 프레임워크입니다.  파이토치는 사실 토치라는 이름으로 루아(Lua)언어로 시작 되었습니다. 이 후 파이썬 환경으로 언어가 확장되면서 파이토치로 불리게 되었습니다. 파이토치는 국내외에서, 많은 커뮤니티를 통해 활발하게 이용되고 있습니다. (관련 사이트는 글 맨 아래 쪽에 링크로 소개되어 있습니다. )

 

 

1. 뭐가 그렇게 좋은지? 파이토치야~

 

내가 생각을 다해서 짜야하냐, 디버깅해가면서 짜면 안되는 거니?

 

"음.~ 파이토치로해~"

 

이후에 각각 다 설명하겠지만, 파이토치의 가장 (1) 큰 장점은 이해하고 사용하기 쉽다는 점입니다. 갸령 이전 텐시플로우에서는 (물론 텐서플로우도 2.0에서 부터 개선되고 있음) 정적으로 실행을 해야하기 때문에 추론을 통해 코드를 짜야 하므로 매우 불편한 점이 많았습니다. 하지만 파이토치의 경우, 즉시 실행을 통해 디버깅이을 쉽게 할 수 있어 개발자가 추론하는 과정이 매우 생략돼 접근하기 매우 쉽습니다. 특히 이러한 강점은 (2) 매우 단순하게, 딥러닝 생산성 높은 코딩작업을 지원합니다.

 

(3) 마지막으로 파이토치의 특징은 API를 통해 GPU 연산을 지원한다는 점입니다. 병렬 연산에서 GPU의 속도는 CPU의 속도보다 훨신 빠르며 그래픽 카드가 발점함에 따라 그 차이는 점점더 벌어지고 있습니다. 파이토치는 내부적으로 CUDA, cuDNN라는 API를 통해서 GPU 연산을 이용할 수 있도록 하며, 심층 신경망을 만들 때 복잡한 계산을 빠르게 처리할 수 있도록 지원합니다. 

 

CUDA(Compute Unified Device Architecture) : NVIDA가 GPU를 통한 연산을 가능하게 만든 API 모델

cuDNN : CUDA를 이용해 딥러닝 연산을 가속해주는 라이브러리

 

사실 이외에 더 본질적인 장점이 있습니다. 텐서플로우(TensorFlow)와 달리 파이토치가 Define by Run(Define and Run)이라든지 속도가 좀 더 빠르다든지 등 많은 내용이 있지만, 첫 이야기로 여기까지, 다루고 다음 이야기에서 차차 풀어내도록 하겠습니다. 

 

 

2. 자~ 시작한다~, 뭘 해야하는 거지?

 

개요를 간단하게 설명했으니, 이제 조금 실습을 해봐야겠죠? 항상 새로운 프로그래밍을 배울 때는 환경설정을 해야합니다. 파이토치는 크게 3단계의 환경설정이 필요합니다. [1단계] 아나콘다 > [2단계] NVIDA CUDA > [3단계] NVIDA cuDNN > [4단계] 파이토치 설치하기 를 순차적으로 설치하면 됩니다. 

 

1단계, 아나콘다 설치하기

 

아래의 링크를 통해 다운로드 받아 설치합니다. 

www.anaconda.com/products/individual 

 

Anaconda | Individual Edition

Anaconda's open-source Individual Edition is the easiest way to perform Python/R data science and machine learning on a single machine.

www.anaconda.com

2단계, NVIDA CUDA 설치하기

 

아래의 링크를 통해 다운로드 받아 설치합니다. 

developer.nvidia.com/cuda-toolkit 

 

CUDA Toolkit

CUDA Toolkit Develop, Optimize and Deploy GPU-Accelerated Apps The NVIDIA® CUDA® Toolkit provides a development environment for creating high performance GPU-accelerated applications. With the CUDA Toolkit, you can develop, optimize, and deploy your appl

developer.nvidia.com

3단계, NVIDA cuDNN 라이브러리 설치하기

 

아래의 링크를 통해 다운로드 받아 설치합니다. 다만 이 부분은 별도의 가입을 요구하므로, 구글계정이나 페이스북 계정으로 통해 진행하시면 편하게 다운받아 설치할 수 있습니다. 

developer.nvidia.com/cudnn 

 

NVIDIA cuDNN

NVIDIA cuDNN The NVIDIA CUDA® Deep Neural Network library (cuDNN) is a GPU-accelerated library of primitives for deep neural networks. cuDNN provides highly tuned implementations for standard routines such as forward and backward convolution, pooling, nor

developer.nvidia.com

자 설치가 다 되셨나요? 설치에 문제가 없었으면 좋겠네요~

 

1단계와 2단계는 크게 어렵지 않은데(일반적인 응용프로그램 설치파일과 동일합니다.), 3단계는 제가 봐도 조금 어려운 부분이 느껴집니다.  그래서 이부분만 잠깐 설명하고 넘어가도록 하겠습니다. 우선 위의 링크를 클릭해 회원가입과 cuDNN을 다운로드 받습니다. 

 

여기서 주의해야할 점은 바로 어떤 파일을 다운로드 받아야 하냐는 것입니다. 운영체제, CUDA 버전을 고려해 다운로드 해주시면 됩니다. 아래의 그림과 같이 말이죠

 

다운로드가 끝나면, "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA" 폴더를 찾아 갑니다. 여기에 다운로드 한 파일의 압축을 해제해 주시고, 덮어쓰기를 하면 끝. 덮어쓰기 대상  폴더는 bin, include, lib입니다. 왼쪽은 cuDNN 압축해제이고, 오른쪽은 CUDA 폴더 입니다. 왼쪽의 파일을 오른쪽으로 붙여넣기 하면 cuDNN의 설치는 완료입니다. 

 

 

4단계, 파이토치를 Pytorch 설치하기

 

그럼 마지막 파이토치를 설치하기 위해서는 아래의 링크 접속이 필요합니다. 링크 접속을하게 되면 본인의 환경에 맞는 파이토치를 선택해야만 합니다. 

 

Start Locally | PyTorch

 

PyTorch

An open source deep learning platform that provides a seamless path from research prototyping to production deployment.

pytorch.org

저는 아래와 같이 설정을 하였습니다. 여기서 중요한 부분은 바로 붉은색으로 표신한 박스에 있는 부분입니다. 해당 부분의 글씨를 복사해서 콘다에 실행을 시켜 주어야만 합니다. 

 

conda install pytorch torchvision torchaudio cudatoolkit=11.1 -c pytorch -c conda-forge

 

자 그럼 아나콘다 프롬프트를 실행시켜 주시고, 설치 명령어를 실행시켜 줍니다. 참 편리하죠 여기까지가 설치환경이 완료된 것입니다.

3. 개발도구 설치하기- Visual Studio Code

 

개발을 하기 위해서는 개발도구가 필요합니다. 보통 통합 개발도구라고해서(IDE), Visual Studio, Pycharm이라는 것이 있습니다. 그 중에서 무료로 사용할 수 있고, 이용하기 쉬운 Visual Studio Code를 활용해보도록 하겠습니다. 

 

Python을 기반으로 설치하는 방법은 아래의 랑크를 참조하시면 됩니다. 

 

dataleader.tistory.com/13 

 

Visual Studio Code(VSCode) 비주얼 스튜디오 코드로 파이썬 사용하기(개발하기)

0. VScode는 ? Visua Studio Code(VSCode)는 MS(Microsoft : 마이크로소프트)에서 개발한 텍스트 편집기 입니다. 가장 큰 특징은 MS가 개발했음에도 불구하고 크로스 플랫폼을 지원하며 윈도우, MacOS, 리눅스 등.

dataleader.tistory.com

자 그럼 아래와 같이 아나콘다 네비게이션을 실행합니다. 그 후, 비주얼스튜디오 코드를 아나콘다 네비게이터를 통해 실행시켜 주면 복잡한 과정을 거치지 않고 아나콘다를 사용할 수 있습니다. 

 

위와 같이 아나콘다 인터프리터를 사용하는 표시가  확인됩니다. 혹 이 부분이 확인이 되지 않는다면 클릭을 통해서, 인터프리터를 변경해 주시면 됩니다. 

 

4. 맺음말

 

이번 포스트에서는 파이토치를 설치하는 방법을 알아보았습니다. 다음 포스트 부터는 본격적으로 파이토치를 이용해 프로그램을 작성하는 방법에 대해서 알아보도록 하겠습니다. 여러분들 학습에 많은 도움이 되었으면 좋겠습니다. 아무튼 오늘도 제 포스트를 읽어주셔서 감사합니다. 

 

구독과 좋아요는 블로그 운영에 큰 힘이 됩니다.!!

반응형
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함