기계 학습 마스터를위한 5 가지 Python 배포

통계, 데이터 과학 또는 기계 학습 분야에서 작업하는 경우 Python을 사용할 가능성이 높습니다. 또한 좋은 이유가 있습니다. 라이브러리와 도구의 풍부한 에코 시스템과 언어 자체의 편리함은 Python을 탁월한 선택으로 만듭니다.

하지만 어떤 파이썬? 언어 배포판에는 여러 가지가 있으며 각 배포판은 서로 다른 라인을 따라 서로 다른 청중을 위해 만들어졌습니다. 여기에서 가장 일반적인 것부터 가장 구체적인 것까지 5 개의 Python 화신을 기계 학습 작업을 처리하기 위해 어떻게 쌓이는 지 자세히 설명했습니다.

관련 비디오 : Python이 프로그래밍을 더 쉽게 만드는 방법

IT에 완벽한 Python은 시스템 자동화에서 기계 학습과 같은 최첨단 분야에서의 작업에 이르기까지 다양한 종류의 작업을 단순화합니다.

아나콘다 파이썬

Anaconda는 데이터 과학 및 기계 학습뿐만 아니라 범용 Python 개발에서도 주요 Python 배포판으로 두각을 나타내고 있습니다. Anaconda는 기업을위한 지원 계획을 제공하는 동일한 이름의 상용 공급자 (이전 Continuum Analytics)의 지원을받습니다. 

Anaconda 배포판은 무엇보다도 데이터 과학에서 자주 사용되는 패키지 인 NumPy, Pandas, Matplotlib 등에 쉽게 액세스 할 수있는 Python 배포판을 제공합니다. 단순히 Anaconda와 함께 제공되는 것이 아니라 Conda라는 사용자 지정 패키지 관리 시스템을 통해 사용할 수 있습니다. Conda가 설치된 패키지에는 Python의 자체 Pip을 통해 관리 할 수없는 까다로운 외부 바이너리 종속성이 포함될 수 있습니다. (원하는 경우 계속 Pip을 사용할 수 있지만 Conda가 해당 패키지에 대해 제공하는 이점을 얻을 수는 없습니다.) 각 패키지는 Anaconda에서 최신 상태로 유지되며 대부분은 Intel MKL로 컴파일됩니다. 속도 확장.

Anaconda가 제공하는 다른 주요 이점은 그래픽 환경 인 Anaconda Navigator입니다. Navigator는 IDE가 아니라 Conda 패키지 관리자 및 사용자 구성 가상 환경을 포함한 Anaconda 기능을위한 편리한 GUI 프런트 엔드입니다. 또한 Navigator를 사용하여 Jupyter 노트북 및 Visual Studio Code IDE와 같은 타사 애플리케이션을 관리 할 수 ​​있습니다.

Miniconda라고하는 최소 Anaconda 설치는 시작하기에 충분한 Anaconda 기반 만 설치하지만 필요에 따라 다른 Conda 또는 Pip 설치 패키지로 확장 할 수 있습니다. 이것은 Anaconda의 풍부한 라이브러리 영역을 활용하고 싶지만 간결하게 유지해야하는 경우에 유용합니다.

ActivePython

데이터 과학은 ActivePython의 사용 사례 중 하나 일뿐입니다. ActivePython은 아키텍처 및 플랫폼 전반에 걸쳐 일관된 구현을 통해 전문적으로 지원되는 언어 버전으로 제공되도록 설계되었습니다. 이는 AIX, HP-UX, Solaris, Windows, Linux 및 MacOS와 같은 플랫폼에서 데이터 과학에 Python을 사용하는 경우 도움이됩니다.

ActivePython은 가능한 한 Python의 원래 참조 구현에 가깝게 유지하려고합니다. 복잡한 수학 및 통계 패키지 (Anaconda 접근 방식)를위한 특수 설치 프로그램 대신 ActivePython은 필요한 경우 Intel MKL 확장을 사용하여 이러한 패키지 중 많은 것을 사전 컴파일하고 ActivePython의 기본 설치와 함께 패키지로 제공합니다. 공식적으로 설치할 필요는 없습니다. 상자에서 바로 사용할 수 있습니다.

그러나 사전 컴파일 된 패키지의 최신 버전으로 업그레이드하려면 ActivePython 자체의 다음 빌드가 나올 때까지 기다려야합니다. 이로 인해 ActivePython은 전체적으로 더 일관 적이며 결과의 재현성이 중요 할 때 가치있는 것이지만 유연성이 떨어집니다.

CPython

Python의 공식적인 평범한 버전 만 사용하여 처음부터 기계 학습 작업을 시작하려면 CPython을 선택하십시오. C로 작성된 Python 런타임의 참조 버전이므로 이름이 붙여진 CPython은 Python Software Foundation 웹 사이트에서 사용할 수 있으며 Python 스크립트를 실행하고 패키지를 관리하는 데 필요한 도구 만 제공합니다.

CPython은 머신 러닝 또는 데이터 과학 프로젝트를위한 Python 환경을 맞춤 구축하려는 경우에 적합하며 올바르게 수행 할 것이라고 믿고 타사 변경이 방해가되는 것을 원하지 않습니다. CPython의 소스는 쉽게 구할 수 있으므로 속도 나 프로젝트 요구 사항을 위해 원하는 변경 사항을 사용자 정의 컴파일 할 수도 있습니다.

반면에 CPython을 사용한다는 것은 NumPy와 같은 패키지를 설치하고 구성하는 일을 모든 종속성과 함께 처리해야 함을 의미합니다.이 중 일부는 수동으로 추적하고 추가해야합니다.

이 작업 중 일부는 지난 몇 년 동안 덜 부담스러워졌습니다. 특히 이제 Python의 Pip 패키지 관리자가 많은 데이터 과학 패키지에 사용되는 종류의 미리 컴파일 된 바이너리를 우아하게 설치합니다. 하지만 여전히 많은 경우가 있습니다. 특히 Microsoft Windows에서는 모든 부분을 직접 조립해야하는 경우가 많습니다 (예 : C / C ++ 컴파일러를 수동으로 설치).

CPython 사용의 또 다른 단점은 Intel의 MKL (Math Kernel Library) 확장과 같은 기계 학습 및 데이터 과학에 유용한 성능 가속화 옵션을 사용하지 않는다는 것입니다. 인텔 MKL을 모두 사용하려면 NumPy 및 SciPy 라이브러리를 구축해야합니다.

열광적 인 캐노피

Enthought Canopy의 Python 배포판은 여러면에서 Anaconda와 유사합니다. 데이터 과학 및 기계 학습을 기본 사용 사례로 구성하고 자체 큐레이팅 된 패키지 색인과 함께 제공되며 전체 설정을 관리하기위한 그래픽 프런트 엔드 및 명령 줄 도구를 모두 제공합니다. 엔터프라이즈 사용자는 방화벽 뒤의 패키지 관리 시스템 인 Enthought Deployment Server를 구입할 수도 있습니다. Canopy 용으로 제작 된 기계 학습 패키지는 인텔 MKL 확장을 사용합니다.

Anaconda와 Canopy의 주요 차이점은 범위입니다. Canopy는 더 겸손하고 Anaconda는 더 포괄적입니다. 예를 들어 Canopy에는 Python 가상 환경을 만들고 관리하기위한 명령 줄 도구가 포함되어있는 반면 (다른 머신 러닝 워크 플로에 대한 다양한 패키지 세트를 처리 할 때 유용함) Anaconda는 해당 작업에 대한 GUI를 제공합니다. 반면에 Canopy에는 편리한 내장 IDE (조합 파일 브라우저, Jupyter 노트북 및 코드 편집기)도 포함되어있어 바로 시작하여 번거 로움없이 작업하는 데 유용합니다.

WinPython

WinPython의 원래 임무는 Microsoft Windows 용으로 특별히 빌드 된 Python 버전을 제공하는 것이 었습니다. Windows 용 CPython 빌드가 특별히 강력하지 않았을 때 WinPython은 유용한 틈새 시장을 채웠습니다. 오늘날 CPython의 Windows 에디션은 상당히 훌륭하며, WinPython은 특히 데이터 과학 및 기계 학습 응용 프로그램에서 CPython이 아직 해결하지 못한 균열을 메우는 방향으로 전환했습니다.

기본적으로 WinPython은 이식 가능합니다. 전체 WinPython 배포는 어디에나 배치하고 어디에서나 실행할 수있는 단일 디렉토리에 맞습니다. WinPython 설치는 지정된 작업에 필요한 모든 환경 변수, 패키지 및 스크립트와 함께 사전 설치된 아카이브 또는 USB 드라이브로 제공 될 수 있습니다. 특정 모델을 훈련 시키거나 특정 데이터 실험을 재현하는 데 필요한 모든 것을 포장하는 데 유용한 방법입니다. 또는 WinPython 설치를 Windows에 등록하고 기본적으로 설치된 것처럼 실행할 수 있습니다 (원하는 경우 나중에 등록 취소).

기계 학습 중심 Python 배포의 까다로운 요소도 많이 다룹니다. 대부분의 주요 라이브러리 (NumPy, Pandas, Jupyter, R 및 Julia 언어에 대한 인터페이스)는 기본적으로 포함되며 관련 인텔 MKL 확장에 대해 빌드됩니다. Mingw64 C / C ++ 컴파일러는 WinPython에서 NumPy와 함께 제공되므로 컴파일러를 설치하지 않고도 소스 (예 : Cython을 통해)에서 바이너리 Python 확장을 빌드 할 수 있습니다.

WinPython에는 자체 패키지 설치 프로그램 인 WPPM이 있으며, 이는 사전 빌드 된 바이너리 및 순수 Python 패키지와 함께 제공되는 패키지를 처리합니다. 기본적으로 패키지가 포함되지 않은 WinPython의 베어 본 버전을 원하는 사람들을 위해 WinPython은 Anaconda의 Miniconda와 동일한 라인에 따라 "제로 버전"을 제공합니다.

관련 비디오 : 기계 학습 및 AI 해독

기계 학습 및 인공 지능에 대한 과장된 광고를 깨고 패널이 기술의 정의와 의미에 대해 이야기합니다.