501 lines
32 KiB
HTML
501 lines
32 KiB
HTML
<!--
|
|
Automatically generated HTML file from DocOnce source
|
|
(https://github.com/doconce/doconce/)
|
|
-->
|
|
<html>
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
|
<meta name="generator" content="DocOnce: https://github.com/doconce/doconce/" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
<meta name="description" content="Week 36: Statistical interpretation of Linear Regression and Resampling techniques">
|
|
|
|
<title>Week 36: Statistical interpretation of Linear Regression and Resampling techniques</title>
|
|
|
|
<!-- Bootstrap style: bootstrap -->
|
|
<link href="https://netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css" rel="stylesheet">
|
|
<!-- not necessary
|
|
<link href="https://netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.css" rel="stylesheet">
|
|
-->
|
|
|
|
<style type="text/css">
|
|
|
|
/* Add scrollbar to dropdown menus in bootstrap navigation bar */
|
|
.dropdown-menu {
|
|
height: auto;
|
|
max-height: 400px;
|
|
overflow-x: hidden;
|
|
}
|
|
|
|
/* Adds an invisible element before each target to offset for the navigation
|
|
bar */
|
|
.anchor::before {
|
|
content:"";
|
|
display:block;
|
|
height:50px; /* fixed header height for style bootstrap */
|
|
margin:-50px 0 0; /* negative fixed header height */
|
|
}
|
|
</style>
|
|
|
|
|
|
</head>
|
|
|
|
<!-- tocinfo
|
|
{'highest level': 2,
|
|
'sections': [('Plans for week 36', 2, None, 'plans-for-week-36'),
|
|
('Thursday September 9', 2, None, 'thursday-september-9'),
|
|
('Summary from last Week and Examples',
|
|
2,
|
|
None,
|
|
'summary-from-last-week-and-examples'),
|
|
('Linear Regression and the SVD',
|
|
2,
|
|
None,
|
|
'linear-regression-and-the-svd'),
|
|
('What does it mean?', 2, None, 'what-does-it-mean'),
|
|
('And finally $\\boldsymbol{X}\\boldsymbol{X}^T$',
|
|
2,
|
|
None,
|
|
'and-finally-boldsymbol-x-boldsymbol-x-t'),
|
|
('Code for SVD and Inversion of Matrices',
|
|
2,
|
|
None,
|
|
'code-for-svd-and-inversion-of-matrices'),
|
|
('Inverse of Rectangular Matrix',
|
|
2,
|
|
None,
|
|
'inverse-of-rectangular-matrix'),
|
|
('Ridge and LASSO Regression',
|
|
2,
|
|
None,
|
|
'ridge-and-lasso-regression'),
|
|
('From OLS to Ridge and Lasso',
|
|
2,
|
|
None,
|
|
'from-ols-to-ridge-and-lasso'),
|
|
('Deriving the Ridge Regression Equations',
|
|
2,
|
|
None,
|
|
'deriving-the-ridge-regression-equations'),
|
|
('SVD analysis', 2, None, 'svd-analysis'),
|
|
('Interpreting the Ridge results',
|
|
2,
|
|
None,
|
|
'interpreting-the-ridge-results'),
|
|
('More interpretations', 2, None, 'more-interpretations'),
|
|
('Deriving the Lasso Regression Equations',
|
|
2,
|
|
None,
|
|
'deriving-the-lasso-regression-equations'),
|
|
('Simple example to illustrate Ordinary Least Squares, Ridge and '
|
|
'Lasso Regression',
|
|
2,
|
|
None,
|
|
'simple-example-to-illustrate-ordinary-least-squares-ridge-and-lasso-regression'),
|
|
('Ridge Regression', 2, None, 'ridge-regression'),
|
|
('Lasso Regression', 2, None, 'lasso-regression'),
|
|
('Yet another Example', 2, None, 'yet-another-example'),
|
|
('The OLS case', 2, None, 'the-ols-case'),
|
|
('The Ridge case', 2, None, 'the-ridge-case'),
|
|
('Writing the Cost Function',
|
|
2,
|
|
None,
|
|
'writing-the-cost-function'),
|
|
('Lasso case', 2, None, 'lasso-case'),
|
|
('The first Case', 2, None, 'the-first-case'),
|
|
('Simple code for solving the above problem',
|
|
2,
|
|
None,
|
|
'simple-code-for-solving-the-above-problem'),
|
|
('With Lasso Regression', 2, None, 'with-lasso-regression'),
|
|
('Another Example, now with a polynomial fit',
|
|
2,
|
|
None,
|
|
'another-example-now-with-a-polynomial-fit'),
|
|
('Using CVXOPT', 2, None, 'using-cvxopt'),
|
|
('The simpler Example', 2, None, 'the-simpler-example'),
|
|
('Friday September 10', 2, None, 'friday-september-10'),
|
|
('Linking the regression analysis with a statistical '
|
|
'interpretation',
|
|
2,
|
|
None,
|
|
'linking-the-regression-analysis-with-a-statistical-interpretation'),
|
|
('Assumptions made', 2, None, 'assumptions-made'),
|
|
('Expectation value and variance',
|
|
2,
|
|
None,
|
|
'expectation-value-and-variance'),
|
|
('Expectation value and variance for $\\boldsymbol{\\beta}$',
|
|
2,
|
|
None,
|
|
'expectation-value-and-variance-for-boldsymbol-beta'),
|
|
('Deriving OLS from a probability distribution',
|
|
2,
|
|
None,
|
|
'deriving-ols-from-a-probability-distribution'),
|
|
('Independent and Identically Distrubuted (iid)',
|
|
2,
|
|
None,
|
|
'independent-and-identically-distrubuted-iid'),
|
|
('Maximum Likelihood Estimation (MLE)',
|
|
2,
|
|
None,
|
|
'maximum-likelihood-estimation-mle'),
|
|
('A new Cost Function', 2, None, 'a-new-cost-function'),
|
|
("More basic Statistics and Bayes' theorem",
|
|
2,
|
|
None,
|
|
'more-basic-statistics-and-bayes-theorem'),
|
|
('Marginal Probability', 2, None, 'marginal-probability'),
|
|
('Conditional Probability', 2, None, 'conditional-probability'),
|
|
("Bayes' Theorem", 2, None, 'bayes-theorem'),
|
|
("Interpretations of Bayes' Theorem",
|
|
2,
|
|
None,
|
|
'interpretations-of-bayes-theorem'),
|
|
("Example of Usage of Bayes' theorem",
|
|
2,
|
|
None,
|
|
'example-of-usage-of-bayes-theorem'),
|
|
('Doing it correctly', 2, None, 'doing-it-correctly'),
|
|
("Bayes' Theorem and Ridge and Lasso Regression",
|
|
2,
|
|
None,
|
|
'bayes-theorem-and-ridge-and-lasso-regression'),
|
|
('Test Function for what happens with OLS, Ridge and Lasso',
|
|
2,
|
|
None,
|
|
'test-function-for-what-happens-with-ols-ridge-and-lasso'),
|
|
("Invoking Bayes' theorem", 2, None, 'invoking-bayes-theorem'),
|
|
('Ridge and Bayes', 2, None, 'ridge-and-bayes'),
|
|
('Lasso and Bayes', 2, None, 'lasso-and-bayes'),
|
|
('Why resampling methods', 2, None, 'why-resampling-methods'),
|
|
('Resampling methods', 2, None, 'resampling-methods'),
|
|
('Resampling approaches can be computationally expensive',
|
|
2,
|
|
None,
|
|
'resampling-approaches-can-be-computationally-expensive'),
|
|
('Why resampling methods ?', 2, None, 'why-resampling-methods'),
|
|
('Statistical analysis', 2, None, 'statistical-analysis'),
|
|
('Resampling methods', 2, None, 'resampling-methods'),
|
|
('Resampling methods: Jackknife and Bootstrap',
|
|
2,
|
|
None,
|
|
'resampling-methods-jackknife-and-bootstrap'),
|
|
('Resampling methods: Jackknife',
|
|
2,
|
|
None,
|
|
'resampling-methods-jackknife'),
|
|
('Jackknife code example', 2, None, 'jackknife-code-example'),
|
|
('Resampling methods: Bootstrap',
|
|
2,
|
|
None,
|
|
'resampling-methods-bootstrap'),
|
|
('Resampling methods: Bootstrap background',
|
|
2,
|
|
None,
|
|
'resampling-methods-bootstrap-background'),
|
|
('Resampling methods: More Bootstrap background',
|
|
2,
|
|
None,
|
|
'resampling-methods-more-bootstrap-background'),
|
|
('Resampling methods: Bootstrap approach',
|
|
2,
|
|
None,
|
|
'resampling-methods-bootstrap-approach'),
|
|
('Resampling methods: Bootstrap steps',
|
|
2,
|
|
None,
|
|
'resampling-methods-bootstrap-steps'),
|
|
('Code example for the Bootstrap method',
|
|
2,
|
|
None,
|
|
'code-example-for-the-bootstrap-method'),
|
|
('Various steps in cross-validation',
|
|
2,
|
|
None,
|
|
'various-steps-in-cross-validation'),
|
|
('How to set up the cross-validation for Ridge and/or Lasso',
|
|
2,
|
|
None,
|
|
'how-to-set-up-the-cross-validation-for-ridge-and-or-lasso'),
|
|
('Cross-validation in brief',
|
|
2,
|
|
None,
|
|
'cross-validation-in-brief'),
|
|
('Code Example for Cross-validation and $k$-fold '
|
|
'Cross-validation',
|
|
2,
|
|
None,
|
|
'code-example-for-cross-validation-and-k-fold-cross-validation'),
|
|
('The bias-variance tradeoff',
|
|
2,
|
|
None,
|
|
'the-bias-variance-tradeoff'),
|
|
('Example code for Bias-Variance tradeoff',
|
|
2,
|
|
None,
|
|
'example-code-for-bias-variance-tradeoff'),
|
|
('Understanding what happens',
|
|
2,
|
|
None,
|
|
'understanding-what-happens'),
|
|
('Summing up', 2, None, 'summing-up'),
|
|
("Another Example from Scikit-Learn's Repository",
|
|
2,
|
|
None,
|
|
'another-example-from-scikit-learn-s-repository'),
|
|
('More examples on bootstrap and cross-validation and errors',
|
|
2,
|
|
None,
|
|
'more-examples-on-bootstrap-and-cross-validation-and-errors'),
|
|
('The same example but now with cross-validation',
|
|
2,
|
|
None,
|
|
'the-same-example-but-now-with-cross-validation'),
|
|
('Cross-validation with Ridge',
|
|
2,
|
|
None,
|
|
'cross-validation-with-ridge')]}
|
|
end of tocinfo -->
|
|
|
|
<body>
|
|
|
|
|
|
|
|
<script type="text/x-mathjax-config">
|
|
MathJax.Hub.Config({
|
|
TeX: {
|
|
equationNumbers: { autoNumber: "none" },
|
|
extensions: ["AMSmath.js", "AMSsymbols.js", "autobold.js", "color.js"]
|
|
}
|
|
});
|
|
</script>
|
|
<script type="text/javascript" async
|
|
src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
|
|
</script>
|
|
|
|
|
|
|
|
|
|
<!-- Bootstrap navigation bar -->
|
|
<div class="navbar navbar-default navbar-fixed-top">
|
|
<div class="navbar-header">
|
|
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-responsive-collapse">
|
|
<span class="icon-bar"></span>
|
|
<span class="icon-bar"></span>
|
|
<span class="icon-bar"></span>
|
|
</button>
|
|
<a class="navbar-brand" href="week36-bs.html">Week 36: Statistical interpretation of Linear Regression and Resampling techniques</a>
|
|
</div>
|
|
|
|
<div class="navbar-collapse collapse navbar-responsive-collapse">
|
|
<ul class="nav navbar-nav navbar-right">
|
|
<li class="dropdown">
|
|
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Contents <b class="caret"></b></a>
|
|
<ul class="dropdown-menu">
|
|
<!-- navigation toc: --> <li><a href="._week36-bs001.html#plans-for-week-36" style="font-size: 80%;">Plans for week 36</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs002.html#thursday-september-9" style="font-size: 80%;">Thursday September 9</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs003.html#summary-from-last-week-and-examples" style="font-size: 80%;">Summary from last Week and Examples</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs004.html#linear-regression-and-the-svd" style="font-size: 80%;">Linear Regression and the SVD</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs005.html#what-does-it-mean" style="font-size: 80%;">What does it mean?</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs006.html#and-finally-boldsymbol-x-boldsymbol-x-t" style="font-size: 80%;">And finally \( \boldsymbol{X}\boldsymbol{X}^T \)</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs007.html#code-for-svd-and-inversion-of-matrices" style="font-size: 80%;">Code for SVD and Inversion of Matrices</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs008.html#inverse-of-rectangular-matrix" style="font-size: 80%;">Inverse of Rectangular Matrix</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs009.html#ridge-and-lasso-regression" style="font-size: 80%;">Ridge and LASSO Regression</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs010.html#from-ols-to-ridge-and-lasso" style="font-size: 80%;">From OLS to Ridge and Lasso</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs011.html#deriving-the-ridge-regression-equations" style="font-size: 80%;">Deriving the Ridge Regression Equations</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs012.html#svd-analysis" style="font-size: 80%;">SVD analysis</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs013.html#interpreting-the-ridge-results" style="font-size: 80%;">Interpreting the Ridge results</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs014.html#more-interpretations" style="font-size: 80%;">More interpretations</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs015.html#deriving-the-lasso-regression-equations" style="font-size: 80%;">Deriving the Lasso Regression Equations</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs016.html#simple-example-to-illustrate-ordinary-least-squares-ridge-and-lasso-regression" style="font-size: 80%;">Simple example to illustrate Ordinary Least Squares, Ridge and Lasso Regression</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs017.html#ridge-regression" style="font-size: 80%;">Ridge Regression</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs018.html#lasso-regression" style="font-size: 80%;">Lasso Regression</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs019.html#yet-another-example" style="font-size: 80%;">Yet another Example</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs020.html#the-ols-case" style="font-size: 80%;">The OLS case</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs021.html#the-ridge-case" style="font-size: 80%;">The Ridge case</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs022.html#writing-the-cost-function" style="font-size: 80%;">Writing the Cost Function</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs023.html#lasso-case" style="font-size: 80%;">Lasso case</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs024.html#the-first-case" style="font-size: 80%;">The first Case</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs025.html#simple-code-for-solving-the-above-problem" style="font-size: 80%;">Simple code for solving the above problem</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs026.html#with-lasso-regression" style="font-size: 80%;">With Lasso Regression</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs027.html#another-example-now-with-a-polynomial-fit" style="font-size: 80%;">Another Example, now with a polynomial fit</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs028.html#using-cvxopt" style="font-size: 80%;">Using CVXOPT</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs029.html#the-simpler-example" style="font-size: 80%;">The simpler Example</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs030.html#friday-september-10" style="font-size: 80%;">Friday September 10</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs031.html#linking-the-regression-analysis-with-a-statistical-interpretation" style="font-size: 80%;">Linking the regression analysis with a statistical interpretation</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs032.html#assumptions-made" style="font-size: 80%;">Assumptions made</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs033.html#expectation-value-and-variance" style="font-size: 80%;">Expectation value and variance</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs034.html#expectation-value-and-variance-for-boldsymbol-beta" style="font-size: 80%;">Expectation value and variance for \( \boldsymbol{\beta} \)</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs035.html#deriving-ols-from-a-probability-distribution" style="font-size: 80%;">Deriving OLS from a probability distribution</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs036.html#independent-and-identically-distrubuted-iid" style="font-size: 80%;">Independent and Identically Distrubuted (iid)</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs037.html#maximum-likelihood-estimation-mle" style="font-size: 80%;">Maximum Likelihood Estimation (MLE)</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs038.html#a-new-cost-function" style="font-size: 80%;">A new Cost Function</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs039.html#more-basic-statistics-and-bayes-theorem" style="font-size: 80%;">More basic Statistics and Bayes' theorem</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs040.html#marginal-probability" style="font-size: 80%;">Marginal Probability</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs041.html#conditional-probability" style="font-size: 80%;">Conditional Probability</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs042.html#bayes-theorem" style="font-size: 80%;">Bayes' Theorem</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs043.html#interpretations-of-bayes-theorem" style="font-size: 80%;">Interpretations of Bayes' Theorem</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs044.html#example-of-usage-of-bayes-theorem" style="font-size: 80%;">Example of Usage of Bayes' theorem</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs045.html#doing-it-correctly" style="font-size: 80%;">Doing it correctly</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs046.html#bayes-theorem-and-ridge-and-lasso-regression" style="font-size: 80%;">Bayes' Theorem and Ridge and Lasso Regression</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs047.html#test-function-for-what-happens-with-ols-ridge-and-lasso" style="font-size: 80%;">Test Function for what happens with OLS, Ridge and Lasso</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs048.html#invoking-bayes-theorem" style="font-size: 80%;">Invoking Bayes' theorem</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs049.html#ridge-and-bayes" style="font-size: 80%;">Ridge and Bayes</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs050.html#lasso-and-bayes" style="font-size: 80%;">Lasso and Bayes</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs054.html#why-resampling-methods" style="font-size: 80%;">Why resampling methods</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs056.html#resampling-methods" style="font-size: 80%;">Resampling methods</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs053.html#resampling-approaches-can-be-computationally-expensive" style="font-size: 80%;">Resampling approaches can be computationally expensive</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs054.html#why-resampling-methods" style="font-size: 80%;">Why resampling methods ?</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs055.html#statistical-analysis" style="font-size: 80%;">Statistical analysis</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs056.html#resampling-methods" style="font-size: 80%;">Resampling methods</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs057.html#resampling-methods-jackknife-and-bootstrap" style="font-size: 80%;">Resampling methods: Jackknife and Bootstrap</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs058.html#resampling-methods-jackknife" style="font-size: 80%;">Resampling methods: Jackknife</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs059.html#jackknife-code-example" style="font-size: 80%;">Jackknife code example</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs060.html#resampling-methods-bootstrap" style="font-size: 80%;">Resampling methods: Bootstrap</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs061.html#resampling-methods-bootstrap-background" style="font-size: 80%;">Resampling methods: Bootstrap background</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs062.html#resampling-methods-more-bootstrap-background" style="font-size: 80%;">Resampling methods: More Bootstrap background</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs063.html#resampling-methods-bootstrap-approach" style="font-size: 80%;">Resampling methods: Bootstrap approach</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs064.html#resampling-methods-bootstrap-steps" style="font-size: 80%;">Resampling methods: Bootstrap steps</a></li>
|
|
<!-- navigation toc: --> <li><a href="#code-example-for-the-bootstrap-method" style="font-size: 80%;">Code example for the Bootstrap method</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs066.html#various-steps-in-cross-validation" style="font-size: 80%;">Various steps in cross-validation</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs067.html#how-to-set-up-the-cross-validation-for-ridge-and-or-lasso" style="font-size: 80%;">How to set up the cross-validation for Ridge and/or Lasso</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs068.html#cross-validation-in-brief" style="font-size: 80%;">Cross-validation in brief</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs069.html#code-example-for-cross-validation-and-k-fold-cross-validation" style="font-size: 80%;">Code Example for Cross-validation and \( k \)-fold Cross-validation</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs070.html#the-bias-variance-tradeoff" style="font-size: 80%;">The bias-variance tradeoff</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs071.html#example-code-for-bias-variance-tradeoff" style="font-size: 80%;">Example code for Bias-Variance tradeoff</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs072.html#understanding-what-happens" style="font-size: 80%;">Understanding what happens</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs073.html#summing-up" style="font-size: 80%;">Summing up</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs074.html#another-example-from-scikit-learn-s-repository" style="font-size: 80%;">Another Example from Scikit-Learn's Repository</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs075.html#more-examples-on-bootstrap-and-cross-validation-and-errors" style="font-size: 80%;">More examples on bootstrap and cross-validation and errors</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs076.html#the-same-example-but-now-with-cross-validation" style="font-size: 80%;">The same example but now with cross-validation</a></li>
|
|
<!-- navigation toc: --> <li><a href="._week36-bs077.html#cross-validation-with-ridge" style="font-size: 80%;">Cross-validation with Ridge</a></li>
|
|
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div> <!-- end of navigation bar -->
|
|
|
|
<div class="container">
|
|
|
|
<p> </p><p> </p><p> </p> <!-- add vertical space -->
|
|
|
|
<a name="part0065"></a>
|
|
<!-- !split -->
|
|
|
|
<h2 id="code-example-for-the-bootstrap-method" class="anchor">Code example for the Bootstrap method </h2>
|
|
|
|
<p>
|
|
The following code starts with a Gaussian distribution with mean value
|
|
\( \mu =100 \) and variance \( \sigma=15 \). We use this to generate the data
|
|
used in the bootstrap analysis. The bootstrap analysis returns a data
|
|
set after a given number of bootstrap operations (as many as we have
|
|
data points). This data set consists of estimated mean values for each
|
|
bootstrap operation. The histogram generated by the bootstrap method
|
|
shows that the distribution for these mean values is also a Gaussian,
|
|
centered around the mean value \( \mu=100 \) but with standard deviation
|
|
\( \sigma/\sqrt{n} \), where \( n \) is the number of bootstrap samples (in
|
|
this case the same as the number of original data points). The value
|
|
of the standard deviation is what we expect from the central limit
|
|
theorem.
|
|
|
|
<p>
|
|
|
|
<!-- code=python (!bc pycod) typeset with pygments style "default" -->
|
|
<div class="highlight" style="background: #f8f8f8"><pre style="line-height: 125%;"><span></span><span style="color: #008000; font-weight: bold">from</span> <span style="color: #0000FF; font-weight: bold">numpy</span> <span style="color: #008000; font-weight: bold">import</span> <span style="color: #666666">*</span>
|
|
<span style="color: #008000; font-weight: bold">from</span> <span style="color: #0000FF; font-weight: bold">numpy.random</span> <span style="color: #008000; font-weight: bold">import</span> randint, randn
|
|
<span style="color: #008000; font-weight: bold">from</span> <span style="color: #0000FF; font-weight: bold">time</span> <span style="color: #008000; font-weight: bold">import</span> time
|
|
<span style="color: #008000; font-weight: bold">import</span> <span style="color: #0000FF; font-weight: bold">matplotlib.mlab</span> <span style="color: #008000; font-weight: bold">as</span> <span style="color: #0000FF; font-weight: bold">mlab</span>
|
|
<span style="color: #008000; font-weight: bold">import</span> <span style="color: #0000FF; font-weight: bold">matplotlib.pyplot</span> <span style="color: #008000; font-weight: bold">as</span> <span style="color: #0000FF; font-weight: bold">plt</span>
|
|
|
|
<span style="color: #408080; font-style: italic"># Returns mean of bootstrap samples </span>
|
|
<span style="color: #008000; font-weight: bold">def</span> <span style="color: #0000FF">stat</span>(data):
|
|
<span style="color: #008000; font-weight: bold">return</span> mean(data)
|
|
|
|
<span style="color: #408080; font-style: italic"># Bootstrap algorithm</span>
|
|
<span style="color: #008000; font-weight: bold">def</span> <span style="color: #0000FF">bootstrap</span>(data, statistic, R):
|
|
t <span style="color: #666666">=</span> zeros(R); n <span style="color: #666666">=</span> <span style="color: #008000">len</span>(data); inds <span style="color: #666666">=</span> arange(n); t0 <span style="color: #666666">=</span> time()
|
|
<span style="color: #408080; font-style: italic"># non-parametric bootstrap </span>
|
|
<span style="color: #008000; font-weight: bold">for</span> i <span style="color: #AA22FF; font-weight: bold">in</span> <span style="color: #008000">range</span>(R):
|
|
t[i] <span style="color: #666666">=</span> statistic(data[randint(<span style="color: #666666">0</span>,n,n)])
|
|
|
|
<span style="color: #408080; font-style: italic"># analysis </span>
|
|
<span style="color: #008000">print</span>(<span style="color: #BA2121">"Runtime: </span><span style="color: #BB6688; font-weight: bold">%g</span><span style="color: #BA2121"> sec"</span> <span style="color: #666666">%</span> (time()<span style="color: #666666">-</span>t0)); <span style="color: #008000">print</span>(<span style="color: #BA2121">"Bootstrap Statistics :"</span>)
|
|
<span style="color: #008000">print</span>(<span style="color: #BA2121">"original bias std. error"</span>)
|
|
<span style="color: #008000">print</span>(<span style="color: #BA2121">"</span><span style="color: #BB6688; font-weight: bold">%8g</span><span style="color: #BA2121"> </span><span style="color: #BB6688; font-weight: bold">%8g</span><span style="color: #BA2121"> </span><span style="color: #BB6688; font-weight: bold">%14g</span><span style="color: #BA2121"> </span><span style="color: #BB6688; font-weight: bold">%15g</span><span style="color: #BA2121">"</span> <span style="color: #666666">%</span> (statistic(data), std(data),mean(t),std(t)))
|
|
<span style="color: #008000; font-weight: bold">return</span> t
|
|
|
|
|
|
mu, sigma <span style="color: #666666">=</span> <span style="color: #666666">100</span>, <span style="color: #666666">15</span>
|
|
datapoints <span style="color: #666666">=</span> <span style="color: #666666">10000</span>
|
|
x <span style="color: #666666">=</span> mu <span style="color: #666666">+</span> sigma<span style="color: #666666">*</span>random<span style="color: #666666">.</span>randn(datapoints)
|
|
<span style="color: #408080; font-style: italic"># bootstrap returns the data sample </span>
|
|
t <span style="color: #666666">=</span> bootstrap(x, stat, datapoints)
|
|
<span style="color: #408080; font-style: italic"># the histogram of the bootstrapped data </span>
|
|
n, binsboot, patches <span style="color: #666666">=</span> plt<span style="color: #666666">.</span>hist(t, <span style="color: #666666">50</span>, normed<span style="color: #666666">=1</span>, facecolor<span style="color: #666666">=</span><span style="color: #BA2121">'red'</span>, alpha<span style="color: #666666">=0.75</span>)
|
|
|
|
<span style="color: #408080; font-style: italic"># add a 'best fit' line </span>
|
|
y <span style="color: #666666">=</span> mlab<span style="color: #666666">.</span>normpdf( binsboot, mean(t), std(t))
|
|
lt <span style="color: #666666">=</span> plt<span style="color: #666666">.</span>plot(binsboot, y, <span style="color: #BA2121">'r--'</span>, linewidth<span style="color: #666666">=1</span>)
|
|
plt<span style="color: #666666">.</span>xlabel(<span style="color: #BA2121">'Smarts'</span>)
|
|
plt<span style="color: #666666">.</span>ylabel(<span style="color: #BA2121">'Probability'</span>)
|
|
plt<span style="color: #666666">.</span>axis([<span style="color: #666666">99.5</span>, <span style="color: #666666">100.6</span>, <span style="color: #666666">0</span>, <span style="color: #666666">3.0</span>])
|
|
plt<span style="color: #666666">.</span>grid(<span style="color: #008000; font-weight: bold">True</span>)
|
|
|
|
plt<span style="color: #666666">.</span>show()
|
|
</pre></div>
|
|
<p>
|
|
<p>
|
|
<!-- navigation buttons at the bottom of the page -->
|
|
<ul class="pagination">
|
|
<li><a href="._week36-bs064.html">«</a></li>
|
|
<li><a href="._week36-bs000.html">1</a></li>
|
|
<li><a href="">...</a></li>
|
|
<li><a href="._week36-bs057.html">58</a></li>
|
|
<li><a href="._week36-bs058.html">59</a></li>
|
|
<li><a href="._week36-bs059.html">60</a></li>
|
|
<li><a href="._week36-bs060.html">61</a></li>
|
|
<li><a href="._week36-bs061.html">62</a></li>
|
|
<li><a href="._week36-bs062.html">63</a></li>
|
|
<li><a href="._week36-bs063.html">64</a></li>
|
|
<li><a href="._week36-bs064.html">65</a></li>
|
|
<li class="active"><a href="._week36-bs065.html">66</a></li>
|
|
<li><a href="._week36-bs066.html">67</a></li>
|
|
<li><a href="._week36-bs067.html">68</a></li>
|
|
<li><a href="._week36-bs068.html">69</a></li>
|
|
<li><a href="._week36-bs069.html">70</a></li>
|
|
<li><a href="._week36-bs070.html">71</a></li>
|
|
<li><a href="._week36-bs071.html">72</a></li>
|
|
<li><a href="._week36-bs072.html">73</a></li>
|
|
<li><a href="._week36-bs073.html">74</a></li>
|
|
<li><a href="._week36-bs074.html">75</a></li>
|
|
<li><a href="">...</a></li>
|
|
<li><a href="._week36-bs077.html">78</a></li>
|
|
<li><a href="._week36-bs066.html">»</a></li>
|
|
</ul>
|
|
<!-- ------------------- end of main content --------------- -->
|
|
|
|
</div> <!-- end container -->
|
|
<!-- include javascript, jQuery *first* -->
|
|
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
|
|
<script src="https://netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js"></script>
|
|
|
|
<!-- Bootstrap footer
|
|
<footer>
|
|
<a href="https://..."><img width="250" align=right src="https://..."></a>
|
|
</footer>
|
|
-->
|
|
|
|
|
|
<center style="font-size:80%">
|
|
<!-- copyright only on the titlepage -->
|
|
</center>
|
|
|
|
|
|
</body>
|
|
</html>
|
|
|
|
|