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

Juliaで学ぶ Hamiltonian Monte Carlo (NUTS 入り)
Juliaで学ぶ Hamiltonian Monte Carlo (NUTS 入り)Juliaで学ぶ Hamiltonian Monte Carlo (NUTS 入り)
Juliaで学ぶ Hamiltonian Monte Carlo (NUTS 入り)Kenta Sato
 
Introduction to XGBoost
Introduction to XGBoostIntroduction to XGBoost
Introduction to XGBoostJoonyoung Yi
 
「操作変数法」の報告事例
「操作変数法」の報告事例「操作変数法」の報告事例
「操作変数法」の報告事例Yoshitake Takebayashi
 
Causal Inference : Primer (2019-06-01 잔디콘)
Causal Inference : Primer (2019-06-01 잔디콘)Causal Inference : Primer (2019-06-01 잔디콘)
Causal Inference : Primer (2019-06-01 잔디콘)Minho Lee
 
確率統計-機械学習その前に v2.0
確率統計-機械学習その前に v2.0確率統計-機械学習その前に v2.0
確率統計-機械学習その前に v2.0Hidekatsu Izuno
 
[DL輪読会]Multi-Agent Cooperation and the Emergence of (Natural) Language
[DL輪読会]Multi-Agent Cooperation and the Emergence of (Natural) Language[DL輪読会]Multi-Agent Cooperation and the Emergence of (Natural) Language
[DL輪読会]Multi-Agent Cooperation and the Emergence of (Natural) LanguageDeep Learning JP
 
決定木・回帰木に基づくアンサンブル学習の最近
決定木・回帰木に基づくアンサンブル学習の最近決定木・回帰木に基づくアンサンブル学習の最近
決定木・回帰木に基づくアンサンブル学習の最近Ichigaku Takigawa
 
강화 학습 기초 Reinforcement Learning an introduction
강화 학습 기초 Reinforcement Learning an introduction강화 학습 기초 Reinforcement Learning an introduction
강화 학습 기초 Reinforcement Learning an introductionTaehoon Kim
 
차원축소 훑어보기 (PCA, SVD, NMF)
차원축소 훑어보기 (PCA, SVD, NMF)차원축소 훑어보기 (PCA, SVD, NMF)
차원축소 훑어보기 (PCA, SVD, NMF)beom kyun choi
 
데이터는 차트가 아니라 돈이 되어야 한다.
데이터는 차트가 아니라 돈이 되어야 한다.데이터는 차트가 아니라 돈이 되어야 한다.
데이터는 차트가 아니라 돈이 되어야 한다.Yongho Ha
 
Top-K Off-Policy Correction for a REINFORCE Recommender System
Top-K Off-Policy Correction for a REINFORCE Recommender SystemTop-K Off-Policy Correction for a REINFORCE Recommender System
Top-K Off-Policy Correction for a REINFORCE Recommender Systemharmonylab
 
[DL輪読会]Learning Robust Rewards with Adversarial Inverse Reinforcement Learning
[DL輪読会]Learning Robust Rewards with Adversarial Inverse Reinforcement Learning[DL輪読会]Learning Robust Rewards with Adversarial Inverse Reinforcement Learning
[DL輪読会]Learning Robust Rewards with Adversarial Inverse Reinforcement LearningDeep Learning JP
 
Deep State Space Models for Time Series Forecasting の紹介
Deep State Space Models for Time Series Forecasting の紹介Deep State Space Models for Time Series Forecasting の紹介
Deep State Space Models for Time Series Forecasting の紹介Chihiro Kusunoki
 
[팝콘 시즌1] 이윤희 : 다짜고짜 배워보는 인과추론
[팝콘 시즌1] 이윤희 : 다짜고짜 배워보는 인과추론[팝콘 시즌1] 이윤희 : 다짜고짜 배워보는 인과추론
[팝콘 시즌1] 이윤희 : 다짜고짜 배워보는 인과추론PAP (Product Analytics Playground)
 
[DL輪読会]`強化学習のための状態表現学習 -より良い「世界モデル」の獲得に向けて-
[DL輪読会]`強化学習のための状態表現学習 -より良い「世界モデル」の獲得に向けて-[DL輪読会]`強化学習のための状態表現学習 -より良い「世界モデル」の獲得に向けて-
[DL輪読会]`強化学習のための状態表現学習 -より良い「世界モデル」の獲得に向けて-Deep Learning JP
 
PyData.Tokyo Meetup #21 講演資料「Optuna ハイパーパラメータ最適化フレームワーク」太田 健
PyData.Tokyo Meetup #21 講演資料「Optuna ハイパーパラメータ最適化フレームワーク」太田 健PyData.Tokyo Meetup #21 講演資料「Optuna ハイパーパラメータ最適化フレームワーク」太田 健
PyData.Tokyo Meetup #21 講演資料「Optuna ハイパーパラメータ最適化フレームワーク」太田 健Preferred Networks
 
機械学習 / Deep Learning 大全 (2) Deep Learning 基礎編
機械学習 / Deep Learning 大全 (2) Deep Learning 基礎編機械学習 / Deep Learning 大全 (2) Deep Learning 基礎編
機械学習 / Deep Learning 大全 (2) Deep Learning 基礎編Daiyu Hatakeyama
 
機械学習モデルのハイパパラメータ最適化
機械学習モデルのハイパパラメータ最適化機械学習モデルのハイパパラメータ最適化
機械学習モデルのハイパパラメータ最適化gree_tech
 
深層学習による非滑らかな関数の推定
深層学習による非滑らかな関数の推定深層学習による非滑らかな関数の推定
深層学習による非滑らかな関数の推定Masaaki Imaizumi
 

What's hot (20)

Juliaで学ぶ Hamiltonian Monte Carlo (NUTS 入り)
Juliaで学ぶ Hamiltonian Monte Carlo (NUTS 入り)Juliaで学ぶ Hamiltonian Monte Carlo (NUTS 入り)
Juliaで学ぶ Hamiltonian Monte Carlo (NUTS 入り)
 
Introduction to XGBoost
Introduction to XGBoostIntroduction to XGBoost
Introduction to XGBoost
 
「操作変数法」の報告事例
「操作変数法」の報告事例「操作変数法」の報告事例
「操作変数法」の報告事例
 
Causal Inference : Primer (2019-06-01 잔디콘)
Causal Inference : Primer (2019-06-01 잔디콘)Causal Inference : Primer (2019-06-01 잔디콘)
Causal Inference : Primer (2019-06-01 잔디콘)
 
確率統計-機械学習その前に v2.0
確率統計-機械学習その前に v2.0確率統計-機械学習その前に v2.0
確率統計-機械学習その前に v2.0
 
[DL輪読会]Multi-Agent Cooperation and the Emergence of (Natural) Language
[DL輪読会]Multi-Agent Cooperation and the Emergence of (Natural) Language[DL輪読会]Multi-Agent Cooperation and the Emergence of (Natural) Language
[DL輪読会]Multi-Agent Cooperation and the Emergence of (Natural) Language
 
決定木・回帰木に基づくアンサンブル学習の最近
決定木・回帰木に基づくアンサンブル学習の最近決定木・回帰木に基づくアンサンブル学習の最近
決定木・回帰木に基づくアンサンブル学習の最近
 
강화 학습 기초 Reinforcement Learning an introduction
강화 학습 기초 Reinforcement Learning an introduction강화 학습 기초 Reinforcement Learning an introduction
강화 학습 기초 Reinforcement Learning an introduction
 
차원축소 훑어보기 (PCA, SVD, NMF)
차원축소 훑어보기 (PCA, SVD, NMF)차원축소 훑어보기 (PCA, SVD, NMF)
차원축소 훑어보기 (PCA, SVD, NMF)
 
데이터는 차트가 아니라 돈이 되어야 한다.
데이터는 차트가 아니라 돈이 되어야 한다.데이터는 차트가 아니라 돈이 되어야 한다.
데이터는 차트가 아니라 돈이 되어야 한다.
 
決定木学習
決定木学習決定木学習
決定木学習
 
Top-K Off-Policy Correction for a REINFORCE Recommender System
Top-K Off-Policy Correction for a REINFORCE Recommender SystemTop-K Off-Policy Correction for a REINFORCE Recommender System
Top-K Off-Policy Correction for a REINFORCE Recommender System
 
[DL輪読会]Learning Robust Rewards with Adversarial Inverse Reinforcement Learning
[DL輪読会]Learning Robust Rewards with Adversarial Inverse Reinforcement Learning[DL輪読会]Learning Robust Rewards with Adversarial Inverse Reinforcement Learning
[DL輪読会]Learning Robust Rewards with Adversarial Inverse Reinforcement Learning
 
Deep State Space Models for Time Series Forecasting の紹介
Deep State Space Models for Time Series Forecasting の紹介Deep State Space Models for Time Series Forecasting の紹介
Deep State Space Models for Time Series Forecasting の紹介
 
[팝콘 시즌1] 이윤희 : 다짜고짜 배워보는 인과추론
[팝콘 시즌1] 이윤희 : 다짜고짜 배워보는 인과추론[팝콘 시즌1] 이윤희 : 다짜고짜 배워보는 인과추론
[팝콘 시즌1] 이윤희 : 다짜고짜 배워보는 인과추론
 
[DL輪読会]`強化学習のための状態表現学習 -より良い「世界モデル」の獲得に向けて-
[DL輪読会]`強化学習のための状態表現学習 -より良い「世界モデル」の獲得に向けて-[DL輪読会]`強化学習のための状態表現学習 -より良い「世界モデル」の獲得に向けて-
[DL輪読会]`強化学習のための状態表現学習 -より良い「世界モデル」の獲得に向けて-
 
PyData.Tokyo Meetup #21 講演資料「Optuna ハイパーパラメータ最適化フレームワーク」太田 健
PyData.Tokyo Meetup #21 講演資料「Optuna ハイパーパラメータ最適化フレームワーク」太田 健PyData.Tokyo Meetup #21 講演資料「Optuna ハイパーパラメータ最適化フレームワーク」太田 健
PyData.Tokyo Meetup #21 講演資料「Optuna ハイパーパラメータ最適化フレームワーク」太田 健
 
機械学習 / Deep Learning 大全 (2) Deep Learning 基礎編
機械学習 / Deep Learning 大全 (2) Deep Learning 基礎編機械学習 / Deep Learning 大全 (2) Deep Learning 基礎編
機械学習 / Deep Learning 大全 (2) Deep Learning 基礎編
 
機械学習モデルのハイパパラメータ最適化
機械学習モデルのハイパパラメータ最適化機械学習モデルのハイパパラメータ最適化
機械学習モデルのハイパパラメータ最適化
 
深層学習による非滑らかな関数の推定
深層学習による非滑らかな関数の推定深層学習による非滑らかな関数の推定
深層学習による非滑らかな関数の推定
 

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)
 

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