Skip to main content

01. 실습 환경 준비하기

About 2 minPythoncrashcoursepythonpygooglegoogle-colabjupyter-notebooknumpypandasipython

01. 실습 환경 준비하기 관련


01. 실습 환경 준비하기

금융 데이터 분석을 위한 파이썬 - WikiDocs

01. 아나콘다와 Colab

머신 러닝 실습을 하기 위해서는 많은 패키지가 필요합니다. 이를 일일히 설치하는 것보다는 필요한 패키지들을 모아놓은 파이썬 배포판 '아나콘다'를 설치하는 것을 권장합니다. 아나콘다는 Numpy, Pandas, Jupyter Notebook, IPython, scikit-learn, matplotlib, seaborn, nltk 등 이 책에서 사용할 대부분의 패키지를 전부 포함하고 있습니다.

여기서는 윈도우 환경을 기준으로 두고 아나콘다를 설치하는 방법과 인터넷을 통해 편하게 사용할수 있는 파이썬 실습 환경인 구글의 코랩(Colab)을 소개합니다.

아나콘다(Anaconda) 설치

📎링크: https://www.anaconda.com/distribution/open in new window

아나콘다
아나콘다

위 사이트 링크로 이동하여 사이트 하단으로 이동하면 (저자가 이 책을 작성할 당시 기준) 좌측에 파이썬 3.7 버전과 우측에 파이썬 2.7 버전의 아나콘다 설치 파일이 있습니다. 여기서는 파이썬 3.7 버전 64 비트를 설치합니다.

아나콘다설치2
아나콘다설치2

설치 파일을 실행한 후에 다른 윈도우 프로그램을 설치하는 것과 마찬가지로 Next > 를 누르면서 설치를 완료하면 됩니다. 아나콘다를 설치하면 머신 러닝을 위한 기본적인 파이썬 패키지들은 자동으로 설치가 됩니다. 다만 텐서플로우, 케라스, 젠심, 코엔엘파이와 같은 패키지들은 별도 설치가 필요한데 이에 대해서는 뒤에서 추가적으로 설명하겠습니다.

아나콘다를 다 설치했다면 아나콘다 프롬프트를 오픈하겠습니다.

아나콘다_프롬프트
아나콘다_프롬프트

아나콘다 프롬프트를 열었다면 아나콘다 프롬프트에 아래의 커맨드를 입력하여 아나콘다 파이썬 패키지를 전부 최신 버전으로 업데이트 합니다.

conda update -n base conda
conda update --all

이 책이 작성되었을 당시에는 파이썬 3.7 버전이 최신 버전이었지만, 독자분들이 파이썬을 설치하기 위해서 아나콘다 페이지에 접속하였을 때는 3.7보다 더욱 최신 버전으로 업데이트가 되었을 수 있습니다. 이 경우 무작정 파이썬 최신 버전을 설치하는 것은 좋은 방법이 아닙니다. 일반적으로 아래의 링크에서 파이썬 버전과 호환되는 텐서플로우 버전에 대한 안내가 나와있으니 반드시 설치 전 확인이 필요합니다.

📎링크: https://www.tensorflow.org/install/pip?hl=ko

예를 들어 위 페이지에서 'Python 3.9 지원에는 Tensorflow 2.5 이상이 필요합니다.' 라고 기재되어져 있다면, 파이썬 3.9를 설치하였을 때는 반드시 Tensorflow는 2.5 이상을 설치해야만 합니다.

구글의 코랩(Colab)

텐서플로우는 기본적으로 64비트 플랫폼만을 지원하므로 32비트 환경에서는 딥 러닝 실습 환경을 구축하기에는 많은 애로 사항이 있습니다. 또는 개인의 컴퓨터 사양이나 다른 이유로 아나콘다나 여러 패키지 설치가 어려운 경우도 있을 것입니다. 이런 경우에는 인터넷만 된다면 바로 파이썬을 실습할 수 있는 구글의 코랩(Colab)이 있습니다. 구글의 Colab은 뒤에서 설명하게 될 '주피터 노트북'과 매우 유사한 실습 환경을 제공합니다.

Colab 주소: https://colab.research.google.comopen in new window

구글의 Colab에 접속하는 방법은 위의 URL을 통해서 접속하거나, 구글 http://www.google.co.kropen in new window에서 Colab이라고 검색해서 접속할 수 있습니다.

A. 파이썬 실습하기

Colab 사용 시에는 구글 계정이 필요하므로 구글 아이디가 없으신 분들은 먼저 회원가입 후 로그인부터 해주세요.

1
1

로그인 후 좌측 상단에서 파일 > 새 노트 를 클릭합니다. 조금만 기다리면 파이썬을 실습할 수 있는 실습 환경 창이 뜨게 됩니다.

2
2

이때 위 그림과 같이 Colab에서 코드를 작성하는 부분의 단위를 '셀'이라고 합니다. 그림에서 보이는 좌측 상단의 '+ 코드' 버튼을 클릭하여 새로운 셀을 추가할 수 있으며, 셀에서 코드를 작성하고 Shift+Enter키를 눌러서 코드를 실행할 수 있습니다.

3
3

셀에 3 + 5라는 코드를 작성하고, Shift+Enter를 누르면 8이라는 결과가 나오게 됩니다. 좌측에 [1]은 해당 코드가 몇 번째로 실행되었는지를 의미합니다. 셀을 추가해보면서 다른 파이썬 코드도 추가적으로 작성해보세요.

B. 무료로 GPU 사용하기

딥 러닝에서는 CPU보다는 GPU를 사용합니다. Colab에서 실습할 때의 장점은 GPU를 무료로 사용할 수 있다는 점입니다. GPU가 장착된 컴퓨터가 없는 딥 러닝 입문자들은 향후 이 책의 실습을 진행할 때 Colab에서 GPU를 사용하면서 딥 러닝을 공부하는 것을 강하게 권장드립니다. GPU를 사용하지 않고 실습을 진행하면 딥 러닝 모델을 학습하는 시간이 지나치게 소요될 수 있습니다.

런타임
런타임

Colab에서 GPU를 사용하는 방법은 새 노트에 진입했을 때 상단에서 런타임 > 런타임 유형 변경을 클릭합니다.

gpu
gpu

노트 설정의 하드웨어 가속기 > GPU 를 선택 후 저장을 누릅니다. 이후 실습을 진행합니다.

C. 파일 업로드

파일업로드1
파일업로드1

구글의 Colab에서 데이터를 업로드하여 해당 데이터로 실습을 하고자 한다면, 좌측 상단에서 폴더 모양의 버튼을 클릭합니다. 그 후 윗 방향의 화살표(↑)가 그려진 버튼을 클릭하여 파일을 업로드 할 수 있습니다. 위 그림에서 숫자 1번 버튼과 숫자 2번 버튼이 각각 이에 해당합니다. 예를 들어 test.txt 파일을 업로드한다고 해봅시다.

파일업로드3
파일업로드3

업로드 후에는 파일 목록에 test.txt 파일이 보입니다.

코랩의 사용법은 아래 동영상에서 배울 수 있습니다.

코랩의 사용법을 설명하는 김태영님 블로그의 게시물도 추천합니다.

코랩에서 파일을 업로드, 다운로드 하는 방법은 아래 게시물을 추천합니다.


02. 필요 프레임워크와 라이브러리

아나콘다를 설치했다면 기본적으로 Numpy, Pandas, Jupyter notebook, scikit-learn, matplotlib, seaborn, nltk 등이 이미 설치되어져 있습니다. 그래서 아나콘다에 포함되어있지 않은 tensorflow, keras, gensim과 같은 패키지만 별도로 pip를 통해 설치합니다.

하지만 컴퓨터에 아나콘다를 설치하지 않고 단순히 파이썬만 설치된 상태라면 위에서 언급한 모든 패키지를 pip로 설치해야 합니다. 여기서는 윈도우 환경을 기준으로 설명합니다.

텐서플로우(Tensorflow)

텐서플로우는 구글이 2015년에 공개한 머신 러닝 오픈소스 라이브러리입니다. 머신 러닝과 딥 러닝을 직관적이고 손쉽게 할 수 있도록 설계되었습니다. 뒤의 딥 러닝 실습을 위해서 텐서플로우를 설치해야 합니다.

아나콘다 프롬프트(Anaconda Prompt) 또는 명령 프롬프트를 통해서 설치할 수 있습니다. 아나콘다 프롬프트를 열었다면 아나콘다 프롬프트에 아래의 커맨드를 입력하여 텐서플로우를 설치합니다.

pip install tensorflow

이제 ipython 쉘을 실행하여 텐서플로우가 정상 설치되었는지 확인하는 의미에서 텐서플로우를 임포트하고 버전을 확인합니다.

# > ipython
# ...
import tensorflow as tf
tf.__version__
# '2.0.0'

텐서플로우 2.0이 설치되었습니다. 이해를 돕기 위해 제 컴퓨터 화면의 스크린샷을 아래에 첨부하였습니다.

tensorflow
tensorflow

쉘을 나올때는 exit라는 커맨드로 나올 수 있습니다. 다른 패키지들도 동일한 방식으로 설치 및 정상적으로 설치가 되었는지 버전을 확인하면 됩니다. 앞으로 저자가 각 패키지의 버전들을 기재하는 이유는 저자가 해당 버전으로 실습했으므로 참고하라는 의미에서 공개하는 것이지, 독자가 더 높은 버전임에도 저자가 공개한 버전들과 동일해야 한다는 의미는 아닙니다.

텐서플로우는 주로 tf라는 명칭으로 임포트하는 것이 관례입니다.

케라스(Keras)

케라스(Keras)는 딥 러닝 프레임워크인 텐서플로우에 대한 추상화 된 API를 제공합니다. 케라스는 백엔드로 텐서플로우를 사용하며, 좀 더 쉽게 딥 러닝을 사용할 수 있게 해줍니다. 쉽게 말해, 텐서플로우 코드를 훨씬 간단하게 작성할 수 있습니다.

pip install keras

케라스를 설치 후에 사용할 수도 있지만, 텐서플로우에서 케라스를 사용할 수도 있습니다. 영어 커뮤니티에서는 순수 케라스를 keras라고 표기한다면, 텐서플로우에서 케라스 API를 사용하는 경우는 tf.keras라고 표기합니다. 이 두 가지는 실제로 문법도 많은 면에서 같아서 keras 코드를 tf.keras로 변경하는 건 아주 쉽고, keras를 학습하였다면 tf.keras도 금방 익숙하게 사용할 수 있습니다. 케라스 개발자인 프랑소와 숄레(François Chollet)는 앞으로는 keras보다는 tf.keras를 사용할 것을 권장합니다. 이 책에서도 주로 tf.keras를 사용합니다.

# > ipython
# ...
import keras
keras.__version__
# '2.3.1'

젠심(Gensim)

젠심(Gensim)은 머신 러닝을 사용하여 토픽 모델링과 자연어 처리 등을 수행할 수 있게 해주는 오픈 소스 라이브러리입니다. 이 책에서도 젠심을 사용하여 Word2Vec 등 다양한 모델들을 학습해볼 것입니다.

pip install gensim
# > ipython
# ...
import gensim
gensim.__version__
# '3.8.1'

사이킷런(Scikit-learn)

사이킷런(Scikit-learn)은 파이썬 머신러닝 라이브러리입니다. 사이킷런을 통해 나이브 베이즈 분류, 서포트 벡터 머신 등 다양한 머신 러닝 모듈을 불러올 수 있습니다. 또한, 사이킷런에는 머신러닝을 연습하기 위한 아이리스 데이터, 당뇨병 데이터 등 자체 데이터 또한 제공하고 있습니다. 사이킷런은 위 패키지들과 달리 아나콘다로 자동 설치되지만 아나콘다를 설치하지 않았다면 아래의 커맨드로 Scikit-learn을 별도 설치할 수 있습니다.

pip install scikit-learn
# > ipython
# ...
import sklearn
sklearn.__version__
# '0.21.3'

주피터 노트북(Jupyter Notebook)

주피터 노트북은 웹에서 코드를 작성하고 실행할 수 있는 오픈소스 웹 어플리케이션입니다. 이 책의 모든 코드들은 기본적으로 본인의 컴퓨터에 설치된 주피터 노트북 또는 주피터 노트북과 실습 환경이 유사한 구글의 코랩(Colab)을 사용한다고 가정합니다. 주피터 노트북도 아나콘다를 설치하면 자동으로 설치되어져 있습니다. 아나콘다를 설치하지 않았다면 아래의 커맨드로 Jupyter notebook을 별도 설치할 수 있습니다.

pip install jupyter

설치가 완료되었으면 프롬프트에서 다음 명령어를 통해 주피터 노트북을 실행할 수 있습니다.

jupyter notebook

해당 명령어를 치면 웹 브라우저가 자동으로 열리면서 주피터 노트북이 실행됩니다. 만약 실행되지 않는다면, 직접 실행시켜야 합니다. 웹 브라우저를 열고 프롬프트에서 나오고 있는 주소인 "http://localhost:8888"에 접속합니다.

주피터_실행1
주피터_실행1

1) 새로운 노트 실행

주피터_실행2
주피터_실행2

주피터 노트북에서는 노트를 생성해서 해당 노트에 코드를 작성할 수 있습니다. 화면 우측의 New 버튼을 누르고, Python3을 눌러서 새로운 노트를 실행해봅시다.

2) 셀에 코드 작성해보기

주피터_실행3
주피터_실행3

노트가 실행되면 In [ ]이라는 문자가 적힌 텍스트 상자가 나옵니다. 주피터 노트북에서는 해당 텍스트 상자의 단위를 셀(cell)이라고 부릅니다. 해당 셀에 코드를 입력하고 [Cell] → [Run Cells]를 클릭하면 실행됩니다. 만약, 마우스로 일일히 실행하는 것이 번거롭게 느껴진다면 키보드의 Shift+Enter를 통해서 현재 셀 실행 후 다음 셀로 이동합니다. 이는 구글의 Colab에서 설명했던 실행 방식과 동일한 방식입니다.

다시 말씀드리지만 앞으로의 모든 실습은 Colab 또는 주피터 노트북에서 실행한다고 가정합니다. 이를 유념해주세요.


이찬희 (MarkiiimarK)
Never Stop Learning.