Anaconda와 Miniconda의 비교, 어느 곳에서 환경을 구축해야합니까?

2018/11/12

Anaconda와 Miniconda 소개

파이썬으로 기계 학습 환경을 구축한다면, 많은 책이나 사이트에서 우선 Anaconda를 사용해 두면 좋다고 쓰여 있습니다.

확실히 Anaconda에서는 간단하게 환경 구축을 할 수 있습니다만, 단점도 있습니다.그래서 Anaconda와 Miniconda 각각에 대한 특징을 비교해 보았습니다.

아나콘다

"Python+R 언어+conda+1000 이상의 관련 패키지+실행 환경+etc.…"

Anaconda를 설치하면 Python과 함께 과학 계산 및 데이터 사이센스용 패키지를 사용할 수 있게 됩니다.또한 파이썬에 늘어선 데이터 과학 방향 프로그래밍 언어인 'R'과 그 종합 개발 환경도 포함됩니다.대략적으로 정리해도 이하의 어플리케이션류가 인스톨 된다.

Anaconda에 포함된 것

  • 프로그래밍 언어: python, R
  • 패키지 : numpy, pandas, Matplotlib, Scikit-learn, Tensorflow ... 등 1000 개 이상
  • 통합 개발 환경(IDE): Jupyter, JupyterLab, Spyder, RStudio
  • 그래픽 사용자 인터페이스(GUI): Anaconda Navigator

미니콘다

'Python+conda+ 최소한의 패키지'

Anaconda의 최소 구성 버전. 파이썬의 설치는 간단하게 할 수 있지만, 필요한 패키지나 실행 환경의 구축은 conda를 사용해 개별적으로 실시한다.

Conda란?
패키지 관리자.패키지의 설치나 환경 정리 등을 실시하기 위한 프로그램. conda prompt라는 화면에서 conda 명령을 입력하여 다양한 명령을 실행할 수 있습니다.
명령 예: "패키지 설치: conda install ~~" "환경 확인: conda info"

각각의 장점과 단점

아나콘다

장점 단점
  • 기계 학습 등에 범용되는 패키지가 내포
  • 환경 구축의 번거로움이 들지 않고,
    문제의 위험이 적음
  • 설치하기만 하면
    기계 학습과 딥 러닝을 시작할 수 있는 환경
  • 다운로드하는 데 시간이 걸립니다.
  • 파일 크기가 큰
  • 무엇이 들어 있는지 파악할 수 없고, 블랙 박스화되어 버린다
  • 표준으로 탑재되어 있지 않은 패키지는 스스로 인스톨 필요
  • 불필요한 패키지가 많아 무거워진다.

미니콘다

장점 단점
  • 필요한 최소 패키지로 완료, 가벼운
  • 직접 설치하기 위해 패키지를 파악하기 쉽다.
  • 다운로드 빠른
  • 파일 크기 작음
  • 원하는 패키지는 모두 직접 설치해야합니다.
  • 필요한 패키지를 파악해 두어야 한다.
  • 환경 구축에 어려움을 겪고 문제의 위험이 있음

그건 그렇고, 파일 크기는 2018 년 10 월에 시도했을 때 10 배 이상 차이가있었습니다.

           용량          아나콘다          미니콘다
다운로드 시   646 MB          54 MB
설치 시 약 3GB 약 260MB

어느 쪽으로 환경을 구축해야합니까?

Anaconda 방향 Miniconda 방향
  • 환경 구축으로 고생하고 싶지 않은 사람
  • 불필요한 패키지가 있어도 신경 쓰지 않는 사람
  • 우선 빨리 기계 학습을 시작하고 싶은 사람
  • 디스크 공간에 여유가 있는 사람
  • 스스로 어떤 패키지를 사용하고 있는지 파악하고 싶은 사람
  • 불필요한 패키지를 설치하는 것을 싫어하는 사람
  • SSD 등을 사용하고 디스크 공간을 절약하고 싶은 사람

나는 처음 Anaconda로 환경 구축했습니다만 내용을 파악할 수 없게 되어, 결국 언인스톨하고 Miniconda로 다시 구축했습니다.

Anaconda는 표준으로 도구가 풍부하지만 결국 스스로 프로그램을 작성할 때 패키지에 대해 알아야합니다.무엇이 들어있는지 스스로 파악할 수 있는 것이 중요하다고 생각합니다.

참조

Miniconda 공식 https://conda.io/miniconda.html
Anaconda 공식 https://www.anaconda.com/distribution/

Miniconda에서의 환경 구축 방법은 이하에 정리하고 있습니다.