37
Machine Learning & OpenStack MHR Inc, 1

[OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

Embed Size (px)

Citation preview

Page 1: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

Machine Learning & OpenStack

MHR Inc,

1

Page 2: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

Machine Learning?

2

Page 3: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

Image Captioning, What a surprise!!!

3

http://cs.stanford.edu/people/karpathy/deepimagesent/

Deep Learning을이용한 Image Captioning 샘플

Page 4: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

Image Captioning Process

4

Recognize Object

Detect Words

Generate sentences

Rank sentences

Identify Object

결코쉽지않은작업

Page 5: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

Big Event!!!, VS Alpha GO

5

누가이길까?

Page 6: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

Deep Blue VS in Chess

6

딥 블루는 세계 체스 챔피언 그랜드마스터 가리 카스파로프를 시간제한이 있는 정식 대국에서 이긴 최초의 컴퓨터이다. 딥블루는 1996년 2월 10일 카스파로프와의 첫 번째 체스 대국에서이겼다. 그러나 나머지 다섯 번의 대국에서 카스파로프가 3번 이기고2번 비겼기 때문에 최종적으로는 4-2의 점수로 카스파로프가 승리했다.

마지막 대국이 끝난 것은 1996년 2월 17일이다.

이후에 딥 블루에 엄청난 성능향상 작업이 있었고 1997년 5월에 다시맞붙었다. 성능이 향상된 새로운 컴퓨터의 비공식적인 별명은 '디퍼블루'(Deeper Blue)였다. 6번의 대국은 5월 11일에 최종적으로 끝났고3.5-2.5의 점수로 딥 블루가 승리했다. 이로써 딥 블루는 시간 제한이있는 정식 체스 토너먼트에서 세계 챔피언을 꺾은 최초의 컴퓨터가되었다.

Source - WIKI

Page 7: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

Human VS Machine In Finance Industry

• Goove WM, Zald DH등이 작성한 Clinical

versus Mechanical Prediction: a meta-

analysis 논문에 의하면 136건의 사례를

조사해보니 수학적 모델이 사람보다

비슷하거나 더 좋은 결과를 가져올 확률이

94%라고 한다.

7

(source - http://www.ncbi.nlm.nih.gov/pubmed/10752360)

Page 8: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

Algorithm Trading

8

• 알고리즘 트레이딩은 수학적 계산과 IT 시스템을

이용해 트레이딩을 하는 것으로 시스템 트레이딩

, Algo Trading 혹은 Blackbox 트레이딩이라고 한

다.

• 알고리즘 트레이딩은 투자은행, 연기금, 헤지펀드

, 증권회사등 많은 곳에서 사용되고 있으며, 최근

몇년사이에는 수학적지식과 IT지식을 가진 개인

들도 많이 참여하고 있다.

Page 9: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

James Harris Simons

9

• Renaissance Technology 설립자

• MIT, UC 버클리 수학박사

• 전 하버드대 수학교수

• 수학자 및 헤지펀드 매니져

• 1976년 베블런상 수상

• 2006년 역대 최고 연봉

– 17억달러(2조원)

https://en.wikipedia.org/wiki/James_Harris_Simons

실제로 그를 만나본 사람들은

'사이먼스는 돈이 중요한 사람이라기보다는 단순히 수학에 미친 사람’

Page 10: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

Algorithm Trading

10

미국은 2012년 알고리즘 트레이딩 거래량이 85%에 달할만큼 알고리즘 트레이딩은 가파르게 증가

Page 11: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

Behind the Magic

11

Page 12: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

Essense of Machine Learning

12

y = f(x)

• Training: given a training set of labeled examples {(x1,y1), …, (xN,yN)}, estimate the prediction function f by minimizing the prediction error on the training set

• Testing: apply f to a never before seen test example x and output the predicted value y = f(x)

output prediction

function

Image

feature

Page 13: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

Finding Parameter is What ML does

13

Page 14: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

Machine Learning

14

Page 15: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

Supervised Learning

15

• Prediction• Classification (discrete labels),

Regression (real values)

Page 16: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

Unsupervised Learning

16

• Clustering• Probability distribution estimation• Finding association (in features)• Dimension reduction

Page 17: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

What Machine Learning can do

17

Clustering Regression Classification

Supervised LearningUnsupervised Learning

Page 18: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

Regression

18

predictor variable x,y = w0 + w1x

Training Data Set

Page 19: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

Regression Example -

19

아래처럼주택가격예측을하고싶다면…

Page 20: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

Traditional Approach

20

수많은반복과노력이필요…

Y = ax + b

Hypothesis

Find ‘a’ and ‘b’ By hands

Page 21: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

Regression - Machine Learning Approach

21

기계에의한수많은반복

Y = ax + b

Hypothesis

Find ‘a’ and ‘b’ By Iteration

Page 22: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

Classification

22

1) Model Training 2) Classification

Page 23: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

Classification - Logistic Regression

23

최적의 w를찾아 Decision Boundary 결정

Page 24: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

OpenStack & Machine Learning

24

Page 25: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

A Serious Pain in Machine Learning

25

Training Time

Page 26: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

54.65 Hours

• Intel i7, 4.5Ghz, 4 Core

• Boosted Tree

• Numerical Data

• Data : 29,177

• 189 Features Only

26

Page 27: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

Nightmare

27

Page 28: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

Hyperparameter Optimization

28

Hyperparameter > Model Parameter

Fore Better Result

Page 29: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

Who Knows

29

Do everything

If no Domain Knowledge

Page 30: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

This is The Machine Learning!!!

30

정원꾸미는 것과 유사함

• Seeds = Algorithms

• Nutrients = Data

• Gardener = You

• Plants = Programs

Magic?

Page 31: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

Machine Learning in Practice

31

Understanding domain, prior

knowledge, and goals

Data integration, selection, cleaning,

pre-processing, etc.

Learningmodels

Interpreting results

Consolidating and deploying

discovered knowledge

Infinite loop

algorithm

Page 32: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

The Only Solution, So far

32

Parallelization + Automation

Page 33: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

So More Computing Power

33

Page 34: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

OpenStack!!!

34

APPS USERS ADMINS

Connects to apps via APIsSelf-service Portals for users

OpenStack

Virtual Data Center

To Provide Unlimited Computing Resources

Virtual Data Center Virtual Data Center Virtual Data Center

Page 35: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

Machine Learning

35

No Doubt!!!

Faster then you think

Page 36: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

OpenStack for Machine Learning?

36

GPU Spark High Speed Network

Page 37: [OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택

37

.