1.2 왜 파이썬인가?

1 소개 | 목차1.4 필수 라이브러리와 도구들

파이썬Python은 데이터 과학 분야를 위한 표준 프로그래밍 언어가 되어 가고 있습니다. 파이썬은 범용 프로그래밍 언어의 장점은 물론 매트랩MATLAB과 R 같은 특정 분야를 위한 스크립팅 언어의 편리함을 함께 갖췄습니다. 파이썬은 데이터 적재, 시각화, 통계, 자연어 처리, 이미지 처리 등에 필요한 라이브러리들을 가지고 있습니다. 이러한 많은 도구가 데이터 과학자에게 아주 풍부하고 일반적인, 그리고 또 특수한 기능들을 제공해줍니다. 곧 살펴보겠지만 파이썬의 장점 하나는 터미널이나 주피터 노트북Jupyter Notebook 1 같은 도구로 대화하듯 프로그래밍할 수 있다는 점입니다. 머신러닝과 데이터 분석은 데이터 주도 분석이라는 점에서 근본적으로 반복 작업입니다. 그래서 반복 작업을 빠르게 처리하고 손쉽게 조작할 수 있는 도구가 필수입니다.

범용 프로그래밍 언어로서 파이썬은 복잡한 그래픽 사용자 인터페이스(GUI)나 웹 서비스도 만들 수 있으며 기존 시스템과 통합하기도 좋습니다.

1.3 scikit-learn

오픈 소스인 scikit-learn사이킷런은 자유롭게 사용하거나 배포할 수 있고, 누구나 소스 코드를 보고 실제로 어떻게 동작하는지 쉽게 확인할 수 있습니다. scikit-learn 프로젝트는 꾸준히 개발, 향상되고 있고 커뮤니티도 매우 활발합니다. 잘 알려진 머신러닝 알고리즘들은 물론 알고리즘을 설명한 풍부한 문서(http://scikit-learn.org/stable/documentation)도 제공합니다. scikit-learn은 매우 인기가 높고 독보적인 파이썬 머신러닝 라이브러리입니다. 그래서 산업 현장이나 학계에도 널리 사용되고 많은 튜토리얼과 예제 코드를 온라인에서 쉽게 찾을 수 있습니다. 앞으로 보게 되겠지만 scikit-learn은 다른 파이썬의 과학 패키지들과도 잘 연동됩니다.

이 책을 읽으며 scikit-learn의 사용자 가이드(http://scikit-learn.org/stable/user_guide.html)와 API 문서(http://scikit-learn.org/stable/modules/classes.html)를 같이 참고하면서 각 알고리즘에 대한 상세 내용과 다양한 옵션을 확인하면 좋습니다. 온라인 문서는 매우 자세한 내용을 포함하고 있으며 이 책은 그러한 상세 사항을 이해하는 데 필요한 머신러닝의 기초를 다루고 있습니다.

1.3.1 scikit-learn 설치

scikit-learn은 두 개의 다른 파이썬 패키지인 NumPy넘파이SciPy싸이파이를 사용합니다. 그래프를 그리려면 matplotlib맷플롯립을, 대화식으로 개발하려면 IPython아이파이썬과 주피터 노트북도 설치해야 합니다. 그래서 필요한 패키지들을 모아놓은 파이썬 배포판을 설치하는 방법을 권장합니다. 다음은 대표적인 배포판들입니다.

Anaconda (https://www.continuum.io/anaconda-overview)

대용량 데이터 처리, 예측 분석, 과학 계산용 파이썬 배포판입니다. Anaconda아나콘다는 NumPy, SciPy, matplotlib, pandas판다스, IPython, 주피터 노트북, 그리고 scikit-learn을 모두 포함합니다. macOS, 윈도우, 리눅스를 모두 지원하며 매우 편리한 기능을 제공하므로 파이썬 과학 패키지가 없는 사람에게 추천하는 배포판입니다. Anaconda는 상용 라이브러리인 인텔 MKL 2 라이브러리도 포함합니다. MKL을 사용하면(Anaconda를 설치하면 자동으로 사용할 수 있게 됩니다) scikit-learn의 여러 알고리즘이 훨씬 빠르게 동작합니다.

Enthought Canopy (https://www.enthought.com/products/canopy/)

또 다른 과학 계산용 파이썬 배포판입니다. NumPy, SciPy, matplotlib, pandas, IPython을 포함하지만 무료 버전에는 scikit-learn이 들어 있지 않습니다. 학생과 학위 수여가 되는 기관 종사자는 Enthought Canopy의 유료 버전을 무료로 받을 수 있는 아카데믹 라이선스를 신청할 수 있습니다. Enthought Canopy는 파이썬 2.7.x에서 작동하며 macOS, 윈도우, 리눅스에서 사용할 수 있습니다.

Python(x,y) (http://python-xy.github.io/)

특별히 윈도우 환경을 위한 과학 계산용 무료 파이썬 배포판입니다. Python(x,y)는 NumPy, SciPy, matplotlib, pandas, IPython, scikit-learn을 포함합니다.

파이썬을 이미 설치했다면 다음과 같이 pip 명령을 사용하여 필요한 패키지들을 설치할 수 있습니다.

$ pip install numpy scipy matplotlib ipython scikit-learn pandas pillow

2장에서 결정 트리를 그리기 위해서는 graphviz 패키지도 필요합니다. 자세한 내용은 깃허브를 참고해 주세요.


  1. 옮긴이_ IPython 노트북에서 여러 언어를 포괄하는 프로젝트인 주피터 노트북으로 이름이 바뀌었고 IPython은 주피터 노트북의 파이썬 커널을 의미하게 되었습니다. Jupyter 란 이름은 줄리아(Julia), 파이썬(Python), R의 합성어이고 목성의 발음과 같아 과학자들과 천문학자들에 대한 경의가 담겨 있습니다. 주피터 노트북 로고의 가운데 큰 원은 목성을 의미하며 주위 3개의 작은 원은 1610년 목성의 위성 3개를 최초로 발견한 갈릴레오 갈릴레이를 기리는 의미입니다. https://jupyter.org/
  2. 옮긴이_ 인텔 호환 프로세서를 위한 고성능 수학 라이브러리입니다. https://software.intel.com/en-us/intel-mkl

1 소개 | 목차1.4 필수 라이브러리와 도구들

이 글은 한빛미디어에서 출간한  “파이썬 라이브러리를 활용한 머신러닝“의 1장과 2장입니다. 이 책의 저작권은 한빛미디어(주)에 있으므로 무단 복제 및 무단 전제를 금합니다.

1.2 왜 파이썬인가?”에 대한 7개의 생각

  1. gyogyo

    회사에서 해보고 있습니다. pip install mglearn 명령은 connection faile 메세지와 함께 실행이 되지 않구요. (방화벽 문제인 듯 하네요) 저자의 github에서 mglean.tar.gz를 받아서 반디집을 이용해서 압축을 풀었습니다. 그 이후에는 어떻게 인스톨하나요?

    좋아요

    응답
    1. 로드홈 글의 글쓴이

      점심 먹고 오느라 답글이 늦었네요. ^^ mglearn을 설치하는 방법은 간단합니다. 사용하려고 하는 폴더 아래 mglearn이라는 서브 폴더를 만들고 압축된 내용을 풀어 넣으면 됩니다. 저자의 깃허브나 제 깃허브에 있는 폴더 구조와 같습니다. mglearn 폴더 밑에 있는 내용은 상위 폴더에서 from mglearn import … 로 불러 들일 수 있습니다.

      좋아요

      응답
    1. 박해선 글의 글쓴이

      안녕하세요. 아마 글에 코드가 포함되어 있으면 자동으로 걸러질 수 있어요. 궁금하신 점이 있으면 haesunrpark at 지메일 닷컴으로 보내 주세요.

      좋아요

      응답

댓글 남기기

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.