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

BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding
BERT: Pre-training of Deep Bidirectional Transformers for Language UnderstandingBERT: Pre-training of Deep Bidirectional Transformers for Language Understanding
BERT: Pre-training of Deep Bidirectional Transformers for Language Understandinggohyunwoong
 
バンディット問題の理論とアルゴリズムとその実装
バンディット問題の理論とアルゴリズムとその実装バンディット問題の理論とアルゴリズムとその実装
バンディット問題の理論とアルゴリズムとその実装EinosukeIida
 
Zero shot learning through cross-modal transfer
Zero shot learning through cross-modal transferZero shot learning through cross-modal transfer
Zero shot learning through cross-modal transferRoelof Pieters
 
BERT: Bidirectional Encoder Representations from Transformers
BERT: Bidirectional Encoder Representations from TransformersBERT: Bidirectional Encoder Representations from Transformers
BERT: Bidirectional Encoder Representations from TransformersLiangqun Lu
 
【DL輪読会】Dropout Reduces Underfitting
【DL輪読会】Dropout Reduces Underfitting【DL輪読会】Dropout Reduces Underfitting
【DL輪読会】Dropout Reduces UnderfittingDeep Learning JP
 
Semi supervised, weakly-supervised, unsupervised, and active learning
Semi supervised, weakly-supervised, unsupervised, and active learningSemi supervised, weakly-supervised, unsupervised, and active learning
Semi supervised, weakly-supervised, unsupervised, and active learningYusuke Uchida
 
MS COCO Dataset Introduction
MS COCO Dataset IntroductionMS COCO Dataset Introduction
MS COCO Dataset IntroductionShinagawa Seitaro
 
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)Yoshitake Takebayashi
 
[DL輪読会]One Model To Learn Them All
[DL輪読会]One Model To Learn Them All[DL輪読会]One Model To Learn Them All
[DL輪読会]One Model To Learn Them AllDeep Learning JP
 
異常検知と変化検知で復習するPRML
異常検知と変化検知で復習するPRML異常検知と変化検知で復習するPRML
異常検知と変化検知で復習するPRMLKatsuya Ito
 
인공신경망
인공신경망인공신경망
인공신경망종열 현
 
Pythonによる機械学習実験の管理
Pythonによる機械学習実験の管理Pythonによる機械学習実験の管理
Pythonによる機械学習実験の管理Toshihiro Kamishima
 
Data assim r
Data assim rData assim r
Data assim rXiangze
 
[DL輪読会]相互情報量最大化による表現学習
[DL輪読会]相互情報量最大化による表現学習[DL輪読会]相互情報量最大化による表現学習
[DL輪読会]相互情報量最大化による表現学習Deep Learning JP
 
2 5 3.一般化線形モデル色々_Gamma回帰と対数線形モデル
2 5 3.一般化線形モデル色々_Gamma回帰と対数線形モデル2 5 3.一般化線形モデル色々_Gamma回帰と対数線形モデル
2 5 3.一般化線形モデル色々_Gamma回帰と対数線形モデルlogics-of-blue
 
자습해도 모르겠던 딥러닝, 머리속에 인스톨 시켜드립니다.
자습해도 모르겠던 딥러닝, 머리속에 인스톨 시켜드립니다.자습해도 모르겠던 딥러닝, 머리속에 인스톨 시켜드립니다.
자습해도 모르겠던 딥러닝, 머리속에 인스톨 시켜드립니다.Yongho Ha
 
[DL輪読会]Swin Transformer: Hierarchical Vision Transformer using Shifted Windows
[DL輪読会]Swin Transformer: Hierarchical Vision Transformer using Shifted Windows[DL輪読会]Swin Transformer: Hierarchical Vision Transformer using Shifted Windows
[DL輪読会]Swin Transformer: Hierarchical Vision Transformer using Shifted WindowsDeep Learning JP
 

What's hot (20)

BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding
BERT: Pre-training of Deep Bidirectional Transformers for Language UnderstandingBERT: Pre-training of Deep Bidirectional Transformers for Language Understanding
BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding
 
順推論と逆推論
順推論と逆推論順推論と逆推論
順推論と逆推論
 
バンディット問題の理論とアルゴリズムとその実装
バンディット問題の理論とアルゴリズムとその実装バンディット問題の理論とアルゴリズムとその実装
バンディット問題の理論とアルゴリズムとその実装
 
Zero shot learning through cross-modal transfer
Zero shot learning through cross-modal transferZero shot learning through cross-modal transfer
Zero shot learning through cross-modal transfer
 
BERT: Bidirectional Encoder Representations from Transformers
BERT: Bidirectional Encoder Representations from TransformersBERT: Bidirectional Encoder Representations from Transformers
BERT: Bidirectional Encoder Representations from Transformers
 
【DL輪読会】Dropout Reduces Underfitting
【DL輪読会】Dropout Reduces Underfitting【DL輪読会】Dropout Reduces Underfitting
【DL輪読会】Dropout Reduces Underfitting
 
Semi supervised, weakly-supervised, unsupervised, and active learning
Semi supervised, weakly-supervised, unsupervised, and active learningSemi supervised, weakly-supervised, unsupervised, and active learning
Semi supervised, weakly-supervised, unsupervised, and active learning
 
MS COCO Dataset Introduction
MS COCO Dataset IntroductionMS COCO Dataset Introduction
MS COCO Dataset Introduction
 
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)
 
最新の異常検知手法(NIPS 2018)
最新の異常検知手法(NIPS 2018)最新の異常検知手法(NIPS 2018)
最新の異常検知手法(NIPS 2018)
 
[DL輪読会]One Model To Learn Them All
[DL輪読会]One Model To Learn Them All[DL輪読会]One Model To Learn Them All
[DL輪読会]One Model To Learn Them All
 
異常検知と変化検知で復習するPRML
異常検知と変化検知で復習するPRML異常検知と変化検知で復習するPRML
異常検知と変化検知で復習するPRML
 
인공신경망
인공신경망인공신경망
인공신경망
 
Pythonによる機械学習実験の管理
Pythonによる機械学習実験の管理Pythonによる機械学習実験の管理
Pythonによる機械学習実験の管理
 
Data assim r
Data assim rData assim r
Data assim r
 
[DL輪読会]相互情報量最大化による表現学習
[DL輪読会]相互情報量最大化による表現学習[DL輪読会]相互情報量最大化による表現学習
[DL輪読会]相互情報量最大化による表現学習
 
2 5 3.一般化線形モデル色々_Gamma回帰と対数線形モデル
2 5 3.一般化線形モデル色々_Gamma回帰と対数線形モデル2 5 3.一般化線形モデル色々_Gamma回帰と対数線形モデル
2 5 3.一般化線形モデル色々_Gamma回帰と対数線形モデル
 
자습해도 모르겠던 딥러닝, 머리속에 인스톨 시켜드립니다.
자습해도 모르겠던 딥러닝, 머리속에 인스톨 시켜드립니다.자습해도 모르겠던 딥러닝, 머리속에 인스톨 시켜드립니다.
자습해도 모르겠던 딥러닝, 머리속에 인스톨 시켜드립니다.
 
Mobilenet
MobilenetMobilenet
Mobilenet
 
[DL輪読会]Swin Transformer: Hierarchical Vision Transformer using Shifted Windows
[DL輪読会]Swin Transformer: Hierarchical Vision Transformer using Shifted Windows[DL輪読会]Swin Transformer: Hierarchical Vision Transformer using Shifted Windows
[DL輪読会]Swin Transformer: Hierarchical Vision Transformer using Shifted Windows
 

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에 등장하는 데이터에 적용해 보도록 하자. 다음 편은...