Machine Learning with the tools IPython Notebook & GraphLab Create
출처 : Coursera / Emily Fox & Carlos Guestrin / Machine Learning Specialization / University of Washington
기계학습의 기본 개념 및 알고리즘을 실전 방식으로 학습하기 위해 특정 소프트웨어 패키지를 이용한다.
첫 째로 Machine Learning 을 이해하기 위해 소프트웨어 설치 과정을 진행한다. 이후에 광범위한 알고리즘을 구현하고 비교한다.
Python
이 과정에서는 Python 프로그래밍 언어를 사용하여 기계 학습을 사용하는 Intelligent applications을 만들 계획이다.
Python은 데이터와의 상호작용을 쉽게하는 간단한 스크립팅(scripting) 언어이다. 또한 Python은 가장 간단한 것부터 복잡한 것 까지 응용 프로그램을 쉽게 만들 수 있는 다양한 패키지를 제공한다.
IPython Notebook
IPython Notebook은 Python으로 프로그래밍하기 위한 간단한 대화형 환경이므로 결과를 쉽게 공유할 수 있다.
https://ipython.org/notebook.html
쉽게 생각하면 Python Terminal과 Wiki page의 조합이라고 보면 된다 따라서 code, plots, text를 결합하여 자신이 한 일을 설명할 수 있다.
SFrame & GraphLab
Python에는 훌륭한 기계 학습 라이브러리가 많다. 가장 인기 있는 것은 scikit-learn 이다.
http://scikit-learn.org/stable/
또한, Python에서 데이터 조작을 위해 대중적인 것은 Pandas이다.
이러한 도구의 대부분은 전문 분야에서 다루는 것을 포함하여 대규모 데이터 세트로 확장되지 않는다. 또한 전문 분야에서는 다양한 ML 모델, 기능 엔지니어링 변환 및 평가 메트릭을 다룬다. 기존 패키지 대부분의 경우 이 과정의 유스 케이스를 해결하는 데 필요한 도구를 얻으려면 패키지 조합을 설치해야 한다. 이것은 가능하지만 파이썬에 대한 고급 지식이 필요하다.
이 과정의 주요 목표는 특정 소프트웨어 패키지를 사용하는 방법이 아니라 핵심 ML 개념을 배우는 것이다. 따라서 이 과정에서는 수년 동안 작업해온 패키지 인 GraphLab Create를 사용하는 것이 좋다. 특히 실제 응용 프로그램을 만드는 사람들과 함께 업계에서 흥미로운 곡선을 보았다.
GraphLab Create는 확장 성이 뛰어난 Python 용 기계 학습 라이브러리로, 데이터 조작을 위한 확장성이 뛰어난 라이브러리 인 SFrame을 포함합니다.
SFrame over Pandas의 가장 큰 장점은 SFrame을 사용하면 메모리에있는 데이터 세트에 국한되지 않고 랩톱에서도 대용량 데이터 세트를 처리 할 수 있다는 것입니다.
SFrame API는 Pandas의 API와 매우 유사하며 두 API 간의 관계를 보여주는 문서입니다.
License for SFrame & GraphLab Create
SFrame 패키지는 오픈 소스에서 허용되는 BSD 라이센스하에 제공됩니다. 따라서 무료로 SFrame을 사용할 수 있다.
GraphLab Create는 Coursera를 포함하여 교육용으로 1 년 동안 재생 가능한 라이센스를 무료로 제공합니다. 그러나 이 소프트웨어에는 상용 목적의 유료 라이센스가 있다.
Getting started using these resources
필요한 소프트웨어 다운로드 및 설치를 하거나 Amazon EC2의 무료 인스턴스에 미리 패키지화 된 버전을 사용하는 두 가지 경우가 있다.
Option 1 : Downloading and installing all software on your machine
Python 설치
WINDOW10 Python3 and Pycharm Install
iPython 설치
sudo apt-get -y install ipython ipython-notebook
pip install --upgrade pip
pip install jupyter
ubuntu
$ netstat -tnlp
$ sudo ufw allow 8888/tcp # Ubuntu 8888번 포트를 열어준다.
$ jupyter notebook
window
> pip install --upgrade pip
> pip install jupyter
> jupyter notebook
localhost:8888
GraphLab Create Install
https://turi.com/learn/coursera/
REGISTER TO DOWNLOAD GRAPHLAB CREATE 를 클릭합니다.
이름과 각 항목을 작성한다
Select option that best describes your academic interest
각 맞는 항목을 기입한다.
Register 버튼을 클릭하면 다음과 같이 product key와 다운로드 가능한 창이 나온다.
해당 운영체제를 선택하고 Download GraphLab Create Launcher 버튼을 클릭한다
https://turi.com/learn/userguide/index.html
https://turi.com/products/create/docs/
Download 한 GraphLab Create Launcher를 실행합니다.
Register에 등록한 email-address와 product key를 입력합니다. Next 버튼을 클릭합니다.
Next 버튼을 클릭합니다.
직접 설치하기
윈도우 cmd 창에서 your registered email address here/your product key here/에 자신의 이메일 주소와 product key를 입력한다.
pip install --upgrade --no-cache-dir https://get.graphlab.com/GraphLab-Create/2.1/your registered email address here/your product key here/GraphLab-Create-License.tar.gz
python
>>> import graphlab
>>> graphlab.get_dependencies()
import graphlab
url = 'https://static.turi.com/datasets/regression/Housing.csv'
x = graphlab.SFrame.read_csv(url)
m = graphlab.linear_regression.create(x, target='price')
'MachineLearning' 카테고리의 다른 글
Machine Learning with the tools IPython Notebook Usage (0) | 2017.02.04 |
---|---|
Machine Learning with the tools IPython Notebook & GraphLab Create on AWS (0) | 2017.02.04 |
Machine Learning Introduction (0) | 2017.02.01 |
ML 기계학습 - 지도학습 (0) | 2016.12.26 |
ML 기계학습의 정의와 분류 (0) | 2016.12.26 |