Review:$$ Model$Selec5on$ Training$vs.$Test$errors$ - - PowerPoint PPT Presentation

review model selec5on training vs test errors
SMART_READER_LITE
LIVE PREVIEW

Review:$$ Model$Selec5on$ Training$vs.$Test$errors$ - - PowerPoint PPT Presentation

Review:$$ Model$Selec5on$ Training$vs.$Test$errors$ Polynomial$regression$ Model$complexity:$Degree$of$polynomial$ Is$larger$always$be^er?$ Test$ Error$ Train$ Model$complexity$ Model$Selec5on$Criterion$


slide-1
SLIDE 1

Review:$$ Model$Selec5on$

slide-2
SLIDE 2

Training$vs.$Test$errors$

  • Polynomial$regression$

– Model$complexity:$Degree$of$polynomial$ – Is$larger$always$be^er?$

Model$complexity$ Error$ Test$ Train$

slide-3
SLIDE 3

Model$Selec5on$Criterion$

  • How$does$once$choose$the$‘best’$polynomial$

degree$using$only$the$training$set?$

  • Use$a$model#selec/on#criterion#as$a$proxy$for$

the$test$error:$ V2$x$LogVlikehood$$+$$penalty$term$

slide-4
SLIDE 4

Model$Selec5on$Criterion$

  • Akaike$Informa5on$Criterion$

– AIC$=$V2$x$LogVlikehood$$+$$2$x$K# – For$leastVsquares$regression:$

  • Bayesian$Informa5on$Criterion$(BIC)$

– BIC$=$V2$x$LogVlikehood$$+$$2$x$log(K)$ – For$leastVsquares$regression:$

K:$degree$of$polynomial$ n:$training$sample$size$ Note:$The$AIC$and$BIC$defini5ons$are$slightly$different$from$the$text$book,$and$ correspond$to$the$case$where$the$residual$error$variance$σ2$is$unknown.$

slide-5
SLIDE 5

Variable$Selec/on$

slide-6
SLIDE 6

Exhaus/ve$Search$

  • For$each$size$‘k’:$

– Enumerate$all$subsets$of$size$‘k’$ – Fit$regression$model$for$each$subset$ – Pick$subset$with$maximum$R2$

$

  • Use$BIC$to$choose$best$size,$and$output$
  • p/mal$subset$for$that$size$
slide-7
SLIDE 7

Enumera/ng$Subsets$

  • Enumerate$all$subsets$of$predictors${0,$1,$2$,$3}$

– Subsets$of$size$1:${0},${1},${2},${3}$ – Subsets$of$size$2:${0,$1},${0,$2},${0,$3},$ $ $ $ $ $ $${1,$2},${1,$3},${2,$3}$ – Subsets$of$size$3:${0,$1,$2},${0,$1,$3},$$ $ $ $ $ $ $${0,$2,$3},${1,$2,$3}$ – Subsets$of$size$4:${0,$1,$2$,$3}$

$

$

slide-8
SLIDE 8

Enumera/ng$Subsets$

  • Enumerate$all$subsets$of$predictors${0,$1,$2$,$3}$

– Subsets$of$size$1:${0},${1},${2},${3}$ – Subsets$of$size$2:${0,$1},${0,$2},${0,$3},$ $ $ $ $ $ $${1,$2},${1,$3},${2,$3}$ – Subsets$of$size$3:${0,$1,$2},${0,$1,$3},$$ $ $ $ $ $ $${0,$2,$3},${1,$2,$3}$ – Subsets$of$size$4:${0,$1,$2$,$3}$

$

$

Best$1Psubset$ Best$2Psubset$ Best$3Psubset$ Best$4Psubset$

Best$R2$within$ each$group$

slide-9
SLIDE 9

Enumera/ng$Subsets$

  • Enumerate$all$subsets$of$predictors${0,$1,$2$,$3}$

– Subsets$of$size$1:${0},${1},${2},${3}$ – Subsets$of$size$2:${0,$1},${0,$2},${0,$3},$ $ $ $ $ $ $${1,$2},${1,$3},${2,$3}$ – Subsets$of$size$3:${0,$1,$2},${0,$1,$3},$$ $ $ $ $ $ $${0,$2,$3},${1,$2,$3}$ – Subsets$of$size$4:${0,$1,$2$,$3}$

$

$

Best$1Psubset$ Best$2Psubset$ Best$3Psubset$ Best$4Psubset$

Choose&subset& with&lowest&BIC&

slide-10
SLIDE 10

Enumera/ng$Subsets$

  • Generate$all$subsets$of$set of$size$k

subsets_k = itertools.combinations(set, k)$

$$

  • Output$is$a$listPlike$object$
  • Itera/ng$through$the$generated$subsets

for subset in subsets_k: … $

slide-11
SLIDE 11

Pubng$it$together$

##Outer#loop:#iterate#over#sizes#1#….#d# for k in range(d): ###Enumerate#subsets#of#size#‘k’# subsets_k = itertools.combinations(predictors, k)

$

#

slide-12
SLIDE 12

Pubng$it$together$

##Outer#loop:#iterate#over#sizes#1#….#d# for k in range(d): ###Enumerate#subsets#of#size#‘k’# subsets_k = itertools.combinations(predictors, k)

$

##Inner#loop:#iterate#through#subsets_k# for subset in subsets_k : ##Fit#regression#model#using#‘subset’#and#calculate#R^2# # ###Keep#track#of#subset#with#highest#R^2# # #…$

$

# #

slide-13
SLIDE 13

Pubng$it$together$

##Outer#loop:#iterate#over#sizes#1#….#d# for k in range(d): ###Enumerate#subsets#of#size#‘k’# subsets_k = itertools.combinations(predictors, k)

$

##Inner#loop:#iterate#through#subsets_k# for subset in subsets_k : ##Fit#regression#model#using#‘subset’#and#calculate#R^2# # ###Keep#track#of#subset#with#highest#R^2# # #…$ # #

Finds$ kPsized$subset$ with$best$R2$

slide-14
SLIDE 14

Pubng$it$together$

##Outer#loop:#iterate#over#sizes#1#….#d# for k in range(d): ###Enumerate#subsets#of#size#‘k’# subsets_k = itertools.combinations(predictors, k)

$

##Inner#loop:#iterate#through#subsets_k# for subset in subsets_k : ##Fit#regression#model#using#‘subset’#and#calculate#R^2# # ###Keep#track#of#subset#with#highest#R^2# # #…$

$

###Compute#BIC#of#the#subset#you#get#from#the#inner#loop# ###Compare#with#lowest#BIC#so#far#

Finds$ kPsized$subset$ with$best$R2$