SlideShare a Scribd company logo
1 of 12
Apr 2015
권재명
데이터분석의 길 4:
“고수는 통계학습의 달인이다”
“머신러닝 (Machine learning)은 인공지능(Artificial Intelligence)에서,
통계학습 (Statistical learning)은 통계학(Statistics)에서 시작되었다.
두 학문은 유사하지만,
머신러닝은 대용량 자료와 예측의 정확도를 강조하고,
통계학습은 모형과 해석, 추론의 오차와 불확정성을 강조한다.
... 물론 더 잘팔리는 것은 머신러닝이다.”
- Hastie and Tibshirani*
* https://lagunita.stanford.edu/c4x/HumanitiesandScience/StatLearning/asset/introduction.pdf
통계/통계학습 기초는 생략한다.
응용통계/통계학습의 명저들이 수두룩하기 때문이다. 예를들어:
● Introduction to Statistical Learning (pdf)
o 강의슬라이드와 R코드
o 약칭 ISL. 예측분석가의 필독서. 진도를 나가기 전에 (슬라이드라도) 1-6
장을 꼭 읽을 것을 권장한다.
● Modern Applied Statistics with S
o 약칭 MASS.*
● Elements of Statistical Learning (pdf)
o 약칭 ESL. 박사급(?) 예측분석가의 필독서. 수식이 무지 많다.
* R의 기본 라이브러리중 하나인 library(MASS)는 이 책에 기반한 것이다.
기본개념 복습 (ISL 1장 참조)
지도학습 (Supervised learning)에는 회귀분석(regression analysis)과 판별분석
(classification)이 있다. 기본적인 용어와 표기법만 복습하자:
● 반응변수* Y 그리고 p-차원 예측변수** X
● 훈련 데이터 (training data)는 X와 Y 의 관측치*** (x1,y1),...,(xn,yn)
● 회귀분석모형 (model)+: Y = f(X) + ε. 오차항 ε 는 E(ε) = 0.
● 기대값 f(x) = E(Y|X = x) 은 꿈의 예측값이다. 현실에선 계산불가.++
● 지도학습의 목표는 제한된 훈련데이터를 사용해 f(x)에 가장 가까운 fhat(x)
를 추정하는 것이다.
* 혹은 outcome, dependent variable, response, target
** 혹은 predictor, inputs, regressors, covariates, features, independent variables
*** 혹은 observations, examples, instances
+ 판별분석의 모형은 조금 복잡하다.
++그런데 꿈의 예측값 f(x)를 알아도 예측은 ε정도는 틀린다.
기본개념 복습 (ISL 2장, 5.1장 참조)
다음 질문이 혹시 헷갈린다면, ISL이나 다른 교재로 복습하도록 하자:
1. 모형의 복잡도(model complexity 혹은 flexibility)란?
2. 모수적 방법(parametric model)과 비모수적 방법(nonparametric model)이
란?
3. 과적합(overfitting)이란? 부적합 (under-fit)이란?
4. Bias-variance tradeoff란? Curse of dimensionality란? 과적합과의 관계는?
5. Training set 과 test set 이란? Training error, test error, Bayes error란? 모형
의 복잡도와 이들 error와의 관계는? (그림으로 그려보세요)
6. 모형평가(model assessment)와 모형선택(model selection)이란?
7. validation set 이란? 교차검증(cross-validation)이란?
이정도 모형은 알아두자 #1
모르면 인생이 피곤한 모형/방법* 과 R함수
1. 선형모형 (linear model)과 최소제곱적합 (least squares fit) lm
a. 선형회귀 (linear regression), 분산분석(ANOVA), 등등은 특별한 케이스
b. 변수선택 기법 (forward, backward, stepwise, best subset)
2. 일반화 선형모형 (generalized linear model) glm
a. 로지스틱 회귀모형은 특별한 케이스
* 미국 기업에서 “데이터 사이언티스트”한다고 인터뷰 하면 대부분의 회사는 대략 여기서 끝난다. 그 외
에는 기초 확률 통계. 다음 페이지의 방법을 묻는 회사/직책은 굉장히 적다.
자주 쓰이고, 알면 알수록 도움이 되는 모형/방법
1. regularization glmnet::glmnet*
a. Lasso, ridge, elastic-net 등은 특별한 케이스
b. shrinkage 와 variable selection을 아우른다.
2. k-nearest neighbor (k-nn) class:knn
3. 트리 (tree)모형 rpart::rpart
4. random forest randomForest::randomForest
* R 함수에서 class:knn 이라고 하면 library(class) 후 ?knn 하면 된다. R namespace에 관해 자세히 알
아보려면 R에서 ??"::" 로 도움말을 보자.
이정도 모형은 알아두자 #2
이정도 모형은 알아두자 #2 (계속)
5. local regression (LOESS) loess
6. linear discriminant analysis (LDA) MASS::lda
7. kernel smoothing, splines, generalized additive model (GAM) gam::gam
이정도 모형은 알아두자 #3
개념 이해하고, 패키지 돌리면 될 것 같은 모형들. 물론 깊이 알수록 좋다.
1. 차원축소(dimension reduction) 기법
a. principal component analysis (PCA) princomp
b. singular value decomposition (SVD) svd
2. principal component regression mvr::mvr
3. naive Bayes e1071::naiveBayes
4. support vector machine (svm) e1071::svm
5. boosting gbm::gbm 혹은 mboost::mboost
6. bagging ipred::bagging 혹은 adabag::bagging
7. neural net nnet::nnet
의외로 쓸 기회가 많은 모형들.
1. mixed effect model / random effect model lme4::{lmer, glmer}
a. 좋은 책: Data Analysis Using Regression and Multilevel/Hierarchical
Models
2. Bayesian model
a. Empirical Bayes, Hierarchical Bayesian model 등등.
b. R 에서 하는 방법도 있지만 OpenBUGS / WinBUGS, JAGS, Stan 등의
독립된 툴들이 대세(라고 한다)*.
* 필자의 약한 부분. -_-;
이정도 모형은 알아두자 #4
이정도 모형은 알아두자 #5 (“빅데이터”)
R은 아주 큰 자료는 처리하지 못한다. R로 분산컴퓨팅이나 대용량 컴퓨팅을 해보
고자 하는 노력도 있지만, 배보다 배꼽이 커질 수 있다.
관측치가 많으면 (large n), 샘플링*하고 R로 돌리면 편하다. 아니면 Python, 특히
scikit-learn 이 좋은 대안이 될 수 있다.
관측치뿐 아니라, 변수 갯수까지 많다면 (large n and p), 툴도 문제지만 더 깊은
지식/경험이 필요하다. 이 경우 흔히 사용되는 툴중 하나가 Vowpal Wabbit 으로
써, 이 툴은 Lasso같은 Regularized 선형 모형을 배치(batch)가 아니라 stochastic
gradient descent (SGD)를 이용해 온라인(online)으로 적합한다. 또다른 세계는
물론 딥러닝(Deep learning)이다.**
* 나중에 “고수는 큰자료를 두려워하지 않는다”편에서 다룰 예정.
** 물론 이런 방법들이 활용되고, 필요한 직장은 1%도 되지 않는다.
... 이 방법들을 MASS와 ISL에 등장하는 데이터에 적용해 보도록 하자.
다음 편은...

More Related Content

What's hot

Explaining Black-Box Machine Learning Predictions - Sameer Singh, Assistant P...
Explaining Black-Box Machine Learning Predictions - Sameer Singh, Assistant P...Explaining Black-Box Machine Learning Predictions - Sameer Singh, Assistant P...
Explaining Black-Box Machine Learning Predictions - Sameer Singh, Assistant P...Sri Ambati
 
Vanishing & Exploding Gradients
Vanishing & Exploding GradientsVanishing & Exploding Gradients
Vanishing & Exploding GradientsSiddharth Vij
 
딥러닝 - 역사와 이론적 기초
딥러닝 - 역사와 이론적 기초딥러닝 - 역사와 이론적 기초
딥러닝 - 역사와 이론적 기초Hyungsoo Ryoo
 
Support vector machines (SVM)
Support vector machines (SVM)Support vector machines (SVM)
Support vector machines (SVM)Luis Serrano
 
기계학습 / 딥러닝이란 무엇인가
기계학습 / 딥러닝이란 무엇인가기계학습 / 딥러닝이란 무엇인가
기계학습 / 딥러닝이란 무엇인가Yongha Kim
 
Application de l’intelligence artificielle à la prédiction et au diagnostic e...
Application de l’intelligence artificielle à la prédiction et au diagnostic e...Application de l’intelligence artificielle à la prédiction et au diagnostic e...
Application de l’intelligence artificielle à la prédiction et au diagnostic e...Alain Tassy
 
Model-Agnostic Meta-Learning for Fast Adaptation of Deep Networks
Model-Agnostic Meta-Learning for Fast Adaptation of Deep NetworksModel-Agnostic Meta-Learning for Fast Adaptation of Deep Networks
Model-Agnostic Meta-Learning for Fast Adaptation of Deep NetworksYoonho Lee
 
Meta learning with memory augmented neural network
Meta learning with memory augmented neural networkMeta learning with memory augmented neural network
Meta learning with memory augmented neural networkKaty Lee
 
Les reseaux profonds
Les reseaux profondsLes reseaux profonds
Les reseaux profondsStany Mwamba
 
(SURVEY) Semi Supervised Learning
(SURVEY) Semi Supervised Learning(SURVEY) Semi Supervised Learning
(SURVEY) Semi Supervised LearningYamato OKAMOTO
 
[논문리뷰] Data Augmentation for 1D 시계열 데이터
[논문리뷰] Data Augmentation for 1D 시계열 데이터[논문리뷰] Data Augmentation for 1D 시계열 데이터
[논문리뷰] Data Augmentation for 1D 시계열 데이터Donghyeon Kim
 
Quantum neural network
Quantum neural networkQuantum neural network
Quantum neural networksurat murthy
 
Methods of Optimization in Machine Learning
Methods of Optimization in Machine LearningMethods of Optimization in Machine Learning
Methods of Optimization in Machine LearningKnoldus Inc.
 
Bayesian Model-Agnostic Meta-Learning
Bayesian Model-Agnostic Meta-LearningBayesian Model-Agnostic Meta-Learning
Bayesian Model-Agnostic Meta-LearningSangwoo Mo
 
Time series classification
Time series classificationTime series classification
Time series classificationSung Kim
 
Wasserstein GAN 수학 이해하기 I
Wasserstein GAN 수학 이해하기 IWasserstein GAN 수학 이해하기 I
Wasserstein GAN 수학 이해하기 ISungbin Lim
 
Interpretable Machine Learning Using LIME Framework - Kasia Kulma (PhD), Data...
Interpretable Machine Learning Using LIME Framework - Kasia Kulma (PhD), Data...Interpretable Machine Learning Using LIME Framework - Kasia Kulma (PhD), Data...
Interpretable Machine Learning Using LIME Framework - Kasia Kulma (PhD), Data...Sri Ambati
 

What's hot (20)

Explaining Black-Box Machine Learning Predictions - Sameer Singh, Assistant P...
Explaining Black-Box Machine Learning Predictions - Sameer Singh, Assistant P...Explaining Black-Box Machine Learning Predictions - Sameer Singh, Assistant P...
Explaining Black-Box Machine Learning Predictions - Sameer Singh, Assistant P...
 
Vanishing & Exploding Gradients
Vanishing & Exploding GradientsVanishing & Exploding Gradients
Vanishing & Exploding Gradients
 
딥러닝 - 역사와 이론적 기초
딥러닝 - 역사와 이론적 기초딥러닝 - 역사와 이론적 기초
딥러닝 - 역사와 이론적 기초
 
Support vector machines (SVM)
Support vector machines (SVM)Support vector machines (SVM)
Support vector machines (SVM)
 
기계학습 / 딥러닝이란 무엇인가
기계학습 / 딥러닝이란 무엇인가기계학습 / 딥러닝이란 무엇인가
기계학습 / 딥러닝이란 무엇인가
 
Application de l’intelligence artificielle à la prédiction et au diagnostic e...
Application de l’intelligence artificielle à la prédiction et au diagnostic e...Application de l’intelligence artificielle à la prédiction et au diagnostic e...
Application de l’intelligence artificielle à la prédiction et au diagnostic e...
 
Model-Agnostic Meta-Learning for Fast Adaptation of Deep Networks
Model-Agnostic Meta-Learning for Fast Adaptation of Deep NetworksModel-Agnostic Meta-Learning for Fast Adaptation of Deep Networks
Model-Agnostic Meta-Learning for Fast Adaptation of Deep Networks
 
Meta learning tutorial
Meta learning tutorialMeta learning tutorial
Meta learning tutorial
 
Meta learning with memory augmented neural network
Meta learning with memory augmented neural networkMeta learning with memory augmented neural network
Meta learning with memory augmented neural network
 
Les reseaux profonds
Les reseaux profondsLes reseaux profonds
Les reseaux profonds
 
(SURVEY) Semi Supervised Learning
(SURVEY) Semi Supervised Learning(SURVEY) Semi Supervised Learning
(SURVEY) Semi Supervised Learning
 
[논문리뷰] Data Augmentation for 1D 시계열 데이터
[논문리뷰] Data Augmentation for 1D 시계열 데이터[논문리뷰] Data Augmentation for 1D 시계열 데이터
[논문리뷰] Data Augmentation for 1D 시계열 데이터
 
Quantum neural network
Quantum neural networkQuantum neural network
Quantum neural network
 
Methods of Optimization in Machine Learning
Methods of Optimization in Machine LearningMethods of Optimization in Machine Learning
Methods of Optimization in Machine Learning
 
RNN-LSTM.pptx
RNN-LSTM.pptxRNN-LSTM.pptx
RNN-LSTM.pptx
 
Bayesian Model-Agnostic Meta-Learning
Bayesian Model-Agnostic Meta-LearningBayesian Model-Agnostic Meta-Learning
Bayesian Model-Agnostic Meta-Learning
 
Time series classification
Time series classificationTime series classification
Time series classification
 
Wasserstein GAN 수학 이해하기 I
Wasserstein GAN 수학 이해하기 IWasserstein GAN 수학 이해하기 I
Wasserstein GAN 수학 이해하기 I
 
Interpretable Machine Learning Using LIME Framework - Kasia Kulma (PhD), Data...
Interpretable Machine Learning Using LIME Framework - Kasia Kulma (PhD), Data...Interpretable Machine Learning Using LIME Framework - Kasia Kulma (PhD), Data...
Interpretable Machine Learning Using LIME Framework - Kasia Kulma (PhD), Data...
 
Swarm intelligence algorithms
Swarm intelligence algorithmsSwarm intelligence algorithms
Swarm intelligence algorithms
 

Similar to 데이터분석의 길 4: “고수는 통계학습의 달인이다”

Chapter 11 Practical Methodology
Chapter 11 Practical MethodologyChapter 11 Practical Methodology
Chapter 11 Practical MethodologyKyeongUkJang
 
Ml for 정형데이터
Ml for 정형데이터Ml for 정형데이터
Ml for 정형데이터JEEHYUN PAIK
 
Variational Autoencoder를 여러 가지 각도에서 이해하기 (Understanding Variational Autoencod...
Variational Autoencoder를 여러 가지 각도에서 이해하기 (Understanding Variational Autoencod...Variational Autoencoder를 여러 가지 각도에서 이해하기 (Understanding Variational Autoencod...
Variational Autoencoder를 여러 가지 각도에서 이해하기 (Understanding Variational Autoencod...Haezoom Inc.
 
Machine learning bysogood
Machine learning bysogoodMachine learning bysogood
Machine learning bysogoodS.Good Kim
 
00_ML 기초_기본개념
00_ML 기초_기본개념00_ML 기초_기본개념
00_ML 기초_기본개념AHRA CHO
 
파이썬(Python) 으로 나만의 딥러닝 API 만들기 강좌 (Feat. AutoAI )
파이썬(Python) 으로 나만의 딥러닝 API 만들기 강좌 (Feat. AutoAI ) 파이썬(Python) 으로 나만의 딥러닝 API 만들기 강좌 (Feat. AutoAI )
파이썬(Python) 으로 나만의 딥러닝 API 만들기 강좌 (Feat. AutoAI ) Yunho Maeng
 
한눈에 보는 머신러닝
한눈에 보는 머신러닝한눈에 보는 머신러닝
한눈에 보는 머신러닝주경 이
 
Metric learning 세미나
Metric learning 세미나Metric learning 세미나
Metric learning 세미나ssuser198c901
 
Metric Learning 세미나.pptx
Metric Learning 세미나.pptxMetric Learning 세미나.pptx
Metric Learning 세미나.pptxDongkyunKim17
 
풀잎스쿨 - LIME 발표자료(설명가능한 인공지능 기획!)
풀잎스쿨 - LIME 발표자료(설명가능한 인공지능 기획!)풀잎스쿨 - LIME 발표자료(설명가능한 인공지능 기획!)
풀잎스쿨 - LIME 발표자료(설명가능한 인공지능 기획!)Bong-Ho Lee
 
[IMR2014]WEEK10
[IMR2014]WEEK10[IMR2014]WEEK10
[IMR2014]WEEK10JY LEE
 
PRML Chapter 7 SVM supplementary files
PRML Chapter 7 SVM supplementary filesPRML Chapter 7 SVM supplementary files
PRML Chapter 7 SVM supplementary filesSunwoo Kim
 
Deep neural networks for You-Tube recommendations
Deep neural networks for You-Tube recommendationsDeep neural networks for You-Tube recommendations
Deep neural networks for You-Tube recommendationsseungwoo kim
 
세월호/ 타이타닉호 사고의 빅 데이터 방법론적 분석
세월호/ 타이타닉호 사고의 빅 데이터 방법론적 분석세월호/ 타이타닉호 사고의 빅 데이터 방법론적 분석
세월호/ 타이타닉호 사고의 빅 데이터 방법론적 분석Kwang Woo NAM
 
파이썬으로 익히는 딥러닝 기본 (18년)
파이썬으로 익히는 딥러닝 기본 (18년)파이썬으로 익히는 딥러닝 기본 (18년)
파이썬으로 익히는 딥러닝 기본 (18년)SK(주) C&C - 강병호
 
[홍대 머신러닝 스터디 - 핸즈온 머신러닝] 1장. 한눈에 보는 머신러닝
[홍대 머신러닝 스터디 - 핸즈온 머신러닝] 1장. 한눈에 보는 머신러닝[홍대 머신러닝 스터디 - 핸즈온 머신러닝] 1장. 한눈에 보는 머신러닝
[홍대 머신러닝 스터디 - 핸즈온 머신러닝] 1장. 한눈에 보는 머신러닝Haesun Park
 
boosting 기법 이해 (bagging vs boosting)
boosting 기법 이해 (bagging vs boosting)boosting 기법 이해 (bagging vs boosting)
boosting 기법 이해 (bagging vs boosting)SANG WON PARK
 
Transfer learning usage
Transfer learning usageTransfer learning usage
Transfer learning usageTae Young Lee
 
Deep Learning for AI (1)
Deep Learning for AI (1)Deep Learning for AI (1)
Deep Learning for AI (1)Dongheon Lee
 

Similar to 데이터분석의 길 4: “고수는 통계학습의 달인이다” (20)

Chapter 11 Practical Methodology
Chapter 11 Practical MethodologyChapter 11 Practical Methodology
Chapter 11 Practical Methodology
 
Ml for 정형데이터
Ml for 정형데이터Ml for 정형데이터
Ml for 정형데이터
 
Variational Autoencoder를 여러 가지 각도에서 이해하기 (Understanding Variational Autoencod...
Variational Autoencoder를 여러 가지 각도에서 이해하기 (Understanding Variational Autoencod...Variational Autoencoder를 여러 가지 각도에서 이해하기 (Understanding Variational Autoencod...
Variational Autoencoder를 여러 가지 각도에서 이해하기 (Understanding Variational Autoencod...
 
Machine learning bysogood
Machine learning bysogoodMachine learning bysogood
Machine learning bysogood
 
00_ML 기초_기본개념
00_ML 기초_기본개념00_ML 기초_기본개념
00_ML 기초_기본개념
 
파이썬(Python) 으로 나만의 딥러닝 API 만들기 강좌 (Feat. AutoAI )
파이썬(Python) 으로 나만의 딥러닝 API 만들기 강좌 (Feat. AutoAI ) 파이썬(Python) 으로 나만의 딥러닝 API 만들기 강좌 (Feat. AutoAI )
파이썬(Python) 으로 나만의 딥러닝 API 만들기 강좌 (Feat. AutoAI )
 
한눈에 보는 머신러닝
한눈에 보는 머신러닝한눈에 보는 머신러닝
한눈에 보는 머신러닝
 
Metric learning 세미나
Metric learning 세미나Metric learning 세미나
Metric learning 세미나
 
Metric Learning 세미나.pptx
Metric Learning 세미나.pptxMetric Learning 세미나.pptx
Metric Learning 세미나.pptx
 
PaLM Paper Review
PaLM Paper ReviewPaLM Paper Review
PaLM Paper Review
 
풀잎스쿨 - LIME 발표자료(설명가능한 인공지능 기획!)
풀잎스쿨 - LIME 발표자료(설명가능한 인공지능 기획!)풀잎스쿨 - LIME 발표자료(설명가능한 인공지능 기획!)
풀잎스쿨 - LIME 발표자료(설명가능한 인공지능 기획!)
 
[IMR2014]WEEK10
[IMR2014]WEEK10[IMR2014]WEEK10
[IMR2014]WEEK10
 
PRML Chapter 7 SVM supplementary files
PRML Chapter 7 SVM supplementary filesPRML Chapter 7 SVM supplementary files
PRML Chapter 7 SVM supplementary files
 
Deep neural networks for You-Tube recommendations
Deep neural networks for You-Tube recommendationsDeep neural networks for You-Tube recommendations
Deep neural networks for You-Tube recommendations
 
세월호/ 타이타닉호 사고의 빅 데이터 방법론적 분석
세월호/ 타이타닉호 사고의 빅 데이터 방법론적 분석세월호/ 타이타닉호 사고의 빅 데이터 방법론적 분석
세월호/ 타이타닉호 사고의 빅 데이터 방법론적 분석
 
파이썬으로 익히는 딥러닝 기본 (18년)
파이썬으로 익히는 딥러닝 기본 (18년)파이썬으로 익히는 딥러닝 기본 (18년)
파이썬으로 익히는 딥러닝 기본 (18년)
 
[홍대 머신러닝 스터디 - 핸즈온 머신러닝] 1장. 한눈에 보는 머신러닝
[홍대 머신러닝 스터디 - 핸즈온 머신러닝] 1장. 한눈에 보는 머신러닝[홍대 머신러닝 스터디 - 핸즈온 머신러닝] 1장. 한눈에 보는 머신러닝
[홍대 머신러닝 스터디 - 핸즈온 머신러닝] 1장. 한눈에 보는 머신러닝
 
boosting 기법 이해 (bagging vs boosting)
boosting 기법 이해 (bagging vs boosting)boosting 기법 이해 (bagging vs boosting)
boosting 기법 이해 (bagging vs boosting)
 
Transfer learning usage
Transfer learning usageTransfer learning usage
Transfer learning usage
 
Deep Learning for AI (1)
Deep Learning for AI (1)Deep Learning for AI (1)
Deep Learning for AI (1)
 

More from Jaimie Kwon (권재명)

효율적 데이터 과학을 위한 7가지 팁
효율적 데이터 과학을 위한 7가지 팁효율적 데이터 과학을 위한 7가지 팁
효율적 데이터 과학을 위한 7가지 팁Jaimie Kwon (권재명)
 
데이터분석의 길 5: “고수는 큰자료를 두려워하지 않는다” (클릭확률예측 상편)
데이터분석의 길 5:  “고수는 큰자료를 두려워하지 않는다” (클릭확률예측 상편)데이터분석의 길 5:  “고수는 큰자료를 두려워하지 않는다” (클릭확률예측 상편)
데이터분석의 길 5: “고수는 큰자료를 두려워하지 않는다” (클릭확률예측 상편)Jaimie Kwon (권재명)
 
데이터분석의 길 3 “r 워크플로우 (스토리텔링)”
데이터분석의 길 3   “r 워크플로우 (스토리텔링)”데이터분석의 길 3   “r 워크플로우 (스토리텔링)”
데이터분석의 길 3 “r 워크플로우 (스토리텔링)”Jaimie Kwon (권재명)
 
데이터분석의 길 2: “고수는 최고의 연장을 사용한다” (툴채인)
데이터분석의 길 2:  “고수는 최고의 연장을 사용한다” (툴채인)데이터분석의 길 2:  “고수는 최고의 연장을 사용한다” (툴채인)
데이터분석의 길 2: “고수는 최고의 연장을 사용한다” (툴채인)Jaimie Kwon (권재명)
 
데이터 분석의 길 1. “고수는 생선 잡는 법을 알고있다” (검색과 영어)
데이터 분석의 길 1. “고수는 생선 잡는 법을 알고있다” (검색과 영어)데이터 분석의 길 1. “고수는 생선 잡는 법을 알고있다” (검색과 영어)
데이터 분석의 길 1. “고수는 생선 잡는 법을 알고있다” (검색과 영어)Jaimie Kwon (권재명)
 
실리콘 밸리 데이터 사이언티스트의 하루
실리콘 밸리 데이터 사이언티스트의 하루실리콘 밸리 데이터 사이언티스트의 하루
실리콘 밸리 데이터 사이언티스트의 하루Jaimie Kwon (권재명)
 

More from Jaimie Kwon (권재명) (6)

효율적 데이터 과학을 위한 7가지 팁
효율적 데이터 과학을 위한 7가지 팁효율적 데이터 과학을 위한 7가지 팁
효율적 데이터 과학을 위한 7가지 팁
 
데이터분석의 길 5: “고수는 큰자료를 두려워하지 않는다” (클릭확률예측 상편)
데이터분석의 길 5:  “고수는 큰자료를 두려워하지 않는다” (클릭확률예측 상편)데이터분석의 길 5:  “고수는 큰자료를 두려워하지 않는다” (클릭확률예측 상편)
데이터분석의 길 5: “고수는 큰자료를 두려워하지 않는다” (클릭확률예측 상편)
 
데이터분석의 길 3 “r 워크플로우 (스토리텔링)”
데이터분석의 길 3   “r 워크플로우 (스토리텔링)”데이터분석의 길 3   “r 워크플로우 (스토리텔링)”
데이터분석의 길 3 “r 워크플로우 (스토리텔링)”
 
데이터분석의 길 2: “고수는 최고의 연장을 사용한다” (툴채인)
데이터분석의 길 2:  “고수는 최고의 연장을 사용한다” (툴채인)데이터분석의 길 2:  “고수는 최고의 연장을 사용한다” (툴채인)
데이터분석의 길 2: “고수는 최고의 연장을 사용한다” (툴채인)
 
데이터 분석의 길 1. “고수는 생선 잡는 법을 알고있다” (검색과 영어)
데이터 분석의 길 1. “고수는 생선 잡는 법을 알고있다” (검색과 영어)데이터 분석의 길 1. “고수는 생선 잡는 법을 알고있다” (검색과 영어)
데이터 분석의 길 1. “고수는 생선 잡는 법을 알고있다” (검색과 영어)
 
실리콘 밸리 데이터 사이언티스트의 하루
실리콘 밸리 데이터 사이언티스트의 하루실리콘 밸리 데이터 사이언티스트의 하루
실리콘 밸리 데이터 사이언티스트의 하루
 

데이터분석의 길 4: “고수는 통계학습의 달인이다”

  • 1. Apr 2015 권재명 데이터분석의 길 4: “고수는 통계학습의 달인이다”
  • 2. “머신러닝 (Machine learning)은 인공지능(Artificial Intelligence)에서, 통계학습 (Statistical learning)은 통계학(Statistics)에서 시작되었다. 두 학문은 유사하지만, 머신러닝은 대용량 자료와 예측의 정확도를 강조하고, 통계학습은 모형과 해석, 추론의 오차와 불확정성을 강조한다. ... 물론 더 잘팔리는 것은 머신러닝이다.” - Hastie and Tibshirani* * https://lagunita.stanford.edu/c4x/HumanitiesandScience/StatLearning/asset/introduction.pdf
  • 3. 통계/통계학습 기초는 생략한다. 응용통계/통계학습의 명저들이 수두룩하기 때문이다. 예를들어: ● Introduction to Statistical Learning (pdf) o 강의슬라이드와 R코드 o 약칭 ISL. 예측분석가의 필독서. 진도를 나가기 전에 (슬라이드라도) 1-6 장을 꼭 읽을 것을 권장한다. ● Modern Applied Statistics with S o 약칭 MASS.* ● Elements of Statistical Learning (pdf) o 약칭 ESL. 박사급(?) 예측분석가의 필독서. 수식이 무지 많다. * R의 기본 라이브러리중 하나인 library(MASS)는 이 책에 기반한 것이다.
  • 4. 기본개념 복습 (ISL 1장 참조) 지도학습 (Supervised learning)에는 회귀분석(regression analysis)과 판별분석 (classification)이 있다. 기본적인 용어와 표기법만 복습하자: ● 반응변수* Y 그리고 p-차원 예측변수** X ● 훈련 데이터 (training data)는 X와 Y 의 관측치*** (x1,y1),...,(xn,yn) ● 회귀분석모형 (model)+: Y = f(X) + ε. 오차항 ε 는 E(ε) = 0. ● 기대값 f(x) = E(Y|X = x) 은 꿈의 예측값이다. 현실에선 계산불가.++ ● 지도학습의 목표는 제한된 훈련데이터를 사용해 f(x)에 가장 가까운 fhat(x) 를 추정하는 것이다. * 혹은 outcome, dependent variable, response, target ** 혹은 predictor, inputs, regressors, covariates, features, independent variables *** 혹은 observations, examples, instances + 판별분석의 모형은 조금 복잡하다. ++그런데 꿈의 예측값 f(x)를 알아도 예측은 ε정도는 틀린다.
  • 5. 기본개념 복습 (ISL 2장, 5.1장 참조) 다음 질문이 혹시 헷갈린다면, ISL이나 다른 교재로 복습하도록 하자: 1. 모형의 복잡도(model complexity 혹은 flexibility)란? 2. 모수적 방법(parametric model)과 비모수적 방법(nonparametric model)이 란? 3. 과적합(overfitting)이란? 부적합 (under-fit)이란? 4. Bias-variance tradeoff란? Curse of dimensionality란? 과적합과의 관계는? 5. Training set 과 test set 이란? Training error, test error, Bayes error란? 모형 의 복잡도와 이들 error와의 관계는? (그림으로 그려보세요) 6. 모형평가(model assessment)와 모형선택(model selection)이란? 7. validation set 이란? 교차검증(cross-validation)이란?
  • 6. 이정도 모형은 알아두자 #1 모르면 인생이 피곤한 모형/방법* 과 R함수 1. 선형모형 (linear model)과 최소제곱적합 (least squares fit) lm a. 선형회귀 (linear regression), 분산분석(ANOVA), 등등은 특별한 케이스 b. 변수선택 기법 (forward, backward, stepwise, best subset) 2. 일반화 선형모형 (generalized linear model) glm a. 로지스틱 회귀모형은 특별한 케이스 * 미국 기업에서 “데이터 사이언티스트”한다고 인터뷰 하면 대부분의 회사는 대략 여기서 끝난다. 그 외 에는 기초 확률 통계. 다음 페이지의 방법을 묻는 회사/직책은 굉장히 적다.
  • 7. 자주 쓰이고, 알면 알수록 도움이 되는 모형/방법 1. regularization glmnet::glmnet* a. Lasso, ridge, elastic-net 등은 특별한 케이스 b. shrinkage 와 variable selection을 아우른다. 2. k-nearest neighbor (k-nn) class:knn 3. 트리 (tree)모형 rpart::rpart 4. random forest randomForest::randomForest * R 함수에서 class:knn 이라고 하면 library(class) 후 ?knn 하면 된다. R namespace에 관해 자세히 알 아보려면 R에서 ??"::" 로 도움말을 보자. 이정도 모형은 알아두자 #2
  • 8. 이정도 모형은 알아두자 #2 (계속) 5. local regression (LOESS) loess 6. linear discriminant analysis (LDA) MASS::lda 7. kernel smoothing, splines, generalized additive model (GAM) gam::gam
  • 9. 이정도 모형은 알아두자 #3 개념 이해하고, 패키지 돌리면 될 것 같은 모형들. 물론 깊이 알수록 좋다. 1. 차원축소(dimension reduction) 기법 a. principal component analysis (PCA) princomp b. singular value decomposition (SVD) svd 2. principal component regression mvr::mvr 3. naive Bayes e1071::naiveBayes 4. support vector machine (svm) e1071::svm 5. boosting gbm::gbm 혹은 mboost::mboost 6. bagging ipred::bagging 혹은 adabag::bagging 7. neural net nnet::nnet
  • 10. 의외로 쓸 기회가 많은 모형들. 1. mixed effect model / random effect model lme4::{lmer, glmer} a. 좋은 책: Data Analysis Using Regression and Multilevel/Hierarchical Models 2. Bayesian model a. Empirical Bayes, Hierarchical Bayesian model 등등. b. R 에서 하는 방법도 있지만 OpenBUGS / WinBUGS, JAGS, Stan 등의 독립된 툴들이 대세(라고 한다)*. * 필자의 약한 부분. -_-; 이정도 모형은 알아두자 #4
  • 11. 이정도 모형은 알아두자 #5 (“빅데이터”) R은 아주 큰 자료는 처리하지 못한다. R로 분산컴퓨팅이나 대용량 컴퓨팅을 해보 고자 하는 노력도 있지만, 배보다 배꼽이 커질 수 있다. 관측치가 많으면 (large n), 샘플링*하고 R로 돌리면 편하다. 아니면 Python, 특히 scikit-learn 이 좋은 대안이 될 수 있다. 관측치뿐 아니라, 변수 갯수까지 많다면 (large n and p), 툴도 문제지만 더 깊은 지식/경험이 필요하다. 이 경우 흔히 사용되는 툴중 하나가 Vowpal Wabbit 으로 써, 이 툴은 Lasso같은 Regularized 선형 모형을 배치(batch)가 아니라 stochastic gradient descent (SGD)를 이용해 온라인(online)으로 적합한다. 또다른 세계는 물론 딥러닝(Deep learning)이다.** * 나중에 “고수는 큰자료를 두려워하지 않는다”편에서 다룰 예정. ** 물론 이런 방법들이 활용되고, 필요한 직장은 1%도 되지 않는다.
  • 12. ... 이 방법들을 MASS와 ISL에 등장하는 데이터에 적용해 보도록 하자. 다음 편은...