535 lines
20 KiB
HTML
535 lines
20 KiB
HTML
|
|
<!DOCTYPE html>
|
|
|
|
<html>
|
|
<head>
|
|
<meta charset="utf-8" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
<title>Exercises week 38 — Applied Data Analysis and Machine Learning</title>
|
|
|
|
<link href="_static/css/theme.css" rel="stylesheet">
|
|
<link href="_static/css/index.ff1ffe594081f20da1ef19478df9384b.css" rel="stylesheet">
|
|
|
|
|
|
<link rel="stylesheet"
|
|
href="_static/vendor/fontawesome/5.13.0/css/all.min.css">
|
|
<link rel="preload" as="font" type="font/woff2" crossorigin
|
|
href="_static/vendor/fontawesome/5.13.0/webfonts/fa-solid-900.woff2">
|
|
<link rel="preload" as="font" type="font/woff2" crossorigin
|
|
href="_static/vendor/fontawesome/5.13.0/webfonts/fa-brands-400.woff2">
|
|
|
|
|
|
|
|
|
|
|
|
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
|
<link rel="stylesheet" type="text/css" href="_static/sphinx-book-theme.css?digest=c3fdc42140077d1ad13ad2f1588a4309" />
|
|
<link rel="stylesheet" type="text/css" href="_static/togglebutton.css" />
|
|
<link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
|
|
<link rel="stylesheet" type="text/css" href="_static/mystnb.css" />
|
|
<link rel="stylesheet" type="text/css" href="_static/sphinx-thebe.css" />
|
|
<link rel="stylesheet" type="text/css" href="_static/panels-main.c949a650a448cc0ae9fd3441c0e17fb0.css" />
|
|
<link rel="stylesheet" type="text/css" href="_static/panels-variables.06eb56fa6e07937060861dad626602ad.css" />
|
|
|
|
<link rel="preload" as="script" href="_static/js/index.be7d3bbb2ef33a8344ce.js">
|
|
|
|
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
|
|
<script src="_static/jquery.js"></script>
|
|
<script src="_static/underscore.js"></script>
|
|
<script src="_static/doctools.js"></script>
|
|
<script src="_static/clipboard.min.js"></script>
|
|
<script src="_static/copybutton.js"></script>
|
|
<script>let toggleHintShow = 'Click to show';</script>
|
|
<script>let toggleHintHide = 'Click to hide';</script>
|
|
<script>let toggleOpenOnPrint = 'true';</script>
|
|
<script src="_static/togglebutton.js"></script>
|
|
<script>var togglebuttonSelector = '.toggle, .admonition.dropdown, .tag_hide_input div.cell_input, .tag_hide-input div.cell_input, .tag_hide_output div.cell_output, .tag_hide-output div.cell_output, .tag_hide_cell.cell, .tag_hide-cell.cell';</script>
|
|
<script src="_static/sphinx-book-theme.d59cb220de22ca1c485ebbdc042f0030.js"></script>
|
|
<script>const THEBE_JS_URL = "https://unpkg.com/thebe@0.8.2/lib/index.js"
|
|
const thebe_selector = ".thebe,.cell"
|
|
const thebe_selector_input = "pre"
|
|
const thebe_selector_output = ".output, .cell_output"
|
|
</script>
|
|
<script async="async" src="_static/sphinx-thebe.js"></script>
|
|
<script>window.MathJax = {"options": {"processHtmlClass": "tex2jax_process|mathjax_process|math|output_area"}}</script>
|
|
<script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script>
|
|
<link rel="index" title="Index" href="genindex.html" />
|
|
<link rel="search" title="Search" href="search.html" />
|
|
<link rel="next" title="Project 1 on Machine Learning, deadline October 7 (midnight), 2024" href="project1.html" />
|
|
<link rel="prev" title="Week 37: Statistical interpretations and Resampling Methods" href="week37.html" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
<meta name="docsearch:language" content="None">
|
|
|
|
|
|
<!-- Google Analytics -->
|
|
|
|
</head>
|
|
<body data-spy="scroll" data-target="#bd-toc-nav" data-offset="80">
|
|
|
|
<div class="container-fluid" id="banner"></div>
|
|
|
|
|
|
|
|
<div class="container-xl">
|
|
<div class="row">
|
|
|
|
<div class="col-12 col-md-3 bd-sidebar site-navigation show" id="site-navigation">
|
|
|
|
<div class="navbar-brand-box">
|
|
<a class="navbar-brand text-wrap" href="index.html">
|
|
|
|
<!-- `logo` is deprecated in Sphinx 4.0, so remove this when we stop supporting 3 -->
|
|
|
|
|
|
|
|
<img src="_static/logo.png" class="logo" alt="logo">
|
|
|
|
|
|
<h1 class="site-logo" id="site-title">Applied Data Analysis and Machine Learning</h1>
|
|
|
|
</a>
|
|
</div><form class="bd-search d-flex align-items-center" action="search.html" method="get">
|
|
<i class="icon fas fa-search"></i>
|
|
<input type="search" class="form-control" name="q" id="search-input" placeholder="Search this book..." aria-label="Search this book..." autocomplete="off" >
|
|
</form><nav class="bd-links" id="bd-docs-nav" aria-label="Main">
|
|
<div class="bd-toc-item active">
|
|
<ul class="nav bd-sidenav">
|
|
<li class="toctree-l1">
|
|
<a class="reference internal" href="intro.html">
|
|
Applied Data Analysis and Machine Learning
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
<p aria-level="2" class="caption" role="heading">
|
|
<span class="caption-text">
|
|
About the course
|
|
</span>
|
|
</p>
|
|
<ul class="nav bd-sidenav">
|
|
<li class="toctree-l1">
|
|
<a class="reference internal" href="schedule.html">
|
|
Teaching schedule with links to material
|
|
</a>
|
|
</li>
|
|
<li class="toctree-l1">
|
|
<a class="reference internal" href="teachers.html">
|
|
Teachers and Grading
|
|
</a>
|
|
</li>
|
|
<li class="toctree-l1">
|
|
<a class="reference internal" href="textbooks.html">
|
|
Textbooks
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
<p aria-level="2" class="caption" role="heading">
|
|
<span class="caption-text">
|
|
Review of Statistics with Resampling Techniques and Linear Algebra
|
|
</span>
|
|
</p>
|
|
<ul class="nav bd-sidenav">
|
|
<li class="toctree-l1">
|
|
<a class="reference internal" href="statistics.html">
|
|
1. Elements of Probability Theory and Statistical Data Analysis
|
|
</a>
|
|
</li>
|
|
<li class="toctree-l1">
|
|
<a class="reference internal" href="linalg.html">
|
|
2. Linear Algebra, Handling of Arrays and more Python Features
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
<p aria-level="2" class="caption" role="heading">
|
|
<span class="caption-text">
|
|
From Regression to Support Vector Machines
|
|
</span>
|
|
</p>
|
|
<ul class="nav bd-sidenav">
|
|
<li class="toctree-l1">
|
|
<a class="reference internal" href="chapter1.html">
|
|
3. Linear Regression
|
|
</a>
|
|
</li>
|
|
<li class="toctree-l1">
|
|
<a class="reference internal" href="chapter2.html">
|
|
4. Ridge and Lasso Regression
|
|
</a>
|
|
</li>
|
|
<li class="toctree-l1">
|
|
<a class="reference internal" href="chapter3.html">
|
|
5. Resampling Methods
|
|
</a>
|
|
</li>
|
|
<li class="toctree-l1">
|
|
<a class="reference internal" href="chapter4.html">
|
|
6. Logistic Regression
|
|
</a>
|
|
</li>
|
|
<li class="toctree-l1">
|
|
<a class="reference internal" href="chapteroptimization.html">
|
|
7. Optimization, the central part of any Machine Learning algortithm
|
|
</a>
|
|
</li>
|
|
<li class="toctree-l1">
|
|
<a class="reference internal" href="chapter5.html">
|
|
8. Support Vector Machines, overarching aims
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
<p aria-level="2" class="caption" role="heading">
|
|
<span class="caption-text">
|
|
Decision Trees, Ensemble Methods and Boosting
|
|
</span>
|
|
</p>
|
|
<ul class="nav bd-sidenav">
|
|
<li class="toctree-l1">
|
|
<a class="reference internal" href="chapter6.html">
|
|
9. Decision trees, overarching aims
|
|
</a>
|
|
</li>
|
|
<li class="toctree-l1">
|
|
<a class="reference internal" href="chapter7.html">
|
|
10. Ensemble Methods: From a Single Tree to Many Trees and Extreme Boosting, Meet the Jungle of Methods
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
<p aria-level="2" class="caption" role="heading">
|
|
<span class="caption-text">
|
|
Dimensionality Reduction
|
|
</span>
|
|
</p>
|
|
<ul class="nav bd-sidenav">
|
|
<li class="toctree-l1">
|
|
<a class="reference internal" href="chapter8.html">
|
|
11. Basic ideas of the Principal Component Analysis (PCA)
|
|
</a>
|
|
</li>
|
|
<li class="toctree-l1">
|
|
<a class="reference internal" href="clustering.html">
|
|
12. Clustering and Unsupervised Learning
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
<p aria-level="2" class="caption" role="heading">
|
|
<span class="caption-text">
|
|
Deep Learning Methods
|
|
</span>
|
|
</p>
|
|
<ul class="nav bd-sidenav">
|
|
<li class="toctree-l1">
|
|
<a class="reference internal" href="chapter9.html">
|
|
13. Neural networks
|
|
</a>
|
|
</li>
|
|
<li class="toctree-l1">
|
|
<a class="reference internal" href="chapter10.html">
|
|
14. Building a Feed Forward Neural Network
|
|
</a>
|
|
</li>
|
|
<li class="toctree-l1">
|
|
<a class="reference internal" href="chapter11.html">
|
|
15. Solving Differential Equations with Deep Learning
|
|
</a>
|
|
</li>
|
|
<li class="toctree-l1">
|
|
<a class="reference internal" href="chapter12.html">
|
|
16. Convolutional Neural Networks
|
|
</a>
|
|
</li>
|
|
<li class="toctree-l1">
|
|
<a class="reference internal" href="chapter13.html">
|
|
17. Recurrent neural networks: Overarching view
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
<p aria-level="2" class="caption" role="heading">
|
|
<span class="caption-text">
|
|
Weekly material, notes and exercises
|
|
</span>
|
|
</p>
|
|
<ul class="current nav bd-sidenav">
|
|
<li class="toctree-l1">
|
|
<a class="reference internal" href="exercisesweek34.html">
|
|
Exercises week 34
|
|
</a>
|
|
</li>
|
|
<li class="toctree-l1">
|
|
<a class="reference internal" href="week34.html">
|
|
Week 34: Introduction to the course, Logistics and Practicalities
|
|
</a>
|
|
</li>
|
|
<li class="toctree-l1">
|
|
<a class="reference internal" href="exercisesweek35.html">
|
|
Exercises week 35
|
|
</a>
|
|
</li>
|
|
<li class="toctree-l1">
|
|
<a class="reference internal" href="week35.html">
|
|
Week 35: From Ordinary Linear Regression to Ridge and Lasso Regression
|
|
</a>
|
|
</li>
|
|
<li class="toctree-l1">
|
|
<a class="reference internal" href="exercisesweek36.html">
|
|
Exercises week 36
|
|
</a>
|
|
</li>
|
|
<li class="toctree-l1">
|
|
<a class="reference internal" href="week36.html">
|
|
Week 36: Linear Regression and Statistical interpretations
|
|
</a>
|
|
</li>
|
|
<li class="toctree-l1">
|
|
<a class="reference internal" href="exercisesweek37.html">
|
|
Exercises week 37
|
|
</a>
|
|
</li>
|
|
<li class="toctree-l1">
|
|
<a class="reference internal" href="week37.html">
|
|
Week 37: Statistical interpretations and Resampling Methods
|
|
</a>
|
|
</li>
|
|
<li class="toctree-l1 current active">
|
|
<a class="current reference internal" href="#">
|
|
Exercises week 38
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
<p aria-level="2" class="caption" role="heading">
|
|
<span class="caption-text">
|
|
Projects
|
|
</span>
|
|
</p>
|
|
<ul class="nav bd-sidenav">
|
|
<li class="toctree-l1">
|
|
<a class="reference internal" href="project1.html">
|
|
Project 1 on Machine Learning, deadline October 7 (midnight), 2024
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
|
|
</div>
|
|
</nav> <!-- To handle the deprecated key -->
|
|
|
|
<div class="navbar_extra_footer">
|
|
Powered by <a href="https://jupyterbook.org">Jupyter Book</a>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<main class="col py-md-3 pl-md-4 bd-content overflow-auto" role="main">
|
|
|
|
<div class="topbar container-xl fixed-top">
|
|
<div class="topbar-contents row">
|
|
<div class="col-12 col-md-3 bd-topbar-whitespace site-navigation show"></div>
|
|
<div class="col pl-md-4 topbar-main">
|
|
|
|
<button id="navbar-toggler" class="navbar-toggler ml-0" type="button" data-toggle="collapse"
|
|
data-toggle="tooltip" data-placement="bottom" data-target=".site-navigation" aria-controls="navbar-menu"
|
|
aria-expanded="true" aria-label="Toggle navigation" aria-controls="site-navigation"
|
|
title="Toggle navigation" data-toggle="tooltip" data-placement="left">
|
|
<i class="fas fa-bars"></i>
|
|
<i class="fas fa-arrow-left"></i>
|
|
<i class="fas fa-arrow-up"></i>
|
|
</button>
|
|
|
|
|
|
<div class="dropdown-buttons-trigger">
|
|
<button id="dropdown-buttons-trigger" class="btn btn-secondary topbarbtn" aria-label="Download this page"><i
|
|
class="fas fa-download"></i></button>
|
|
|
|
<div class="dropdown-buttons">
|
|
<!-- ipynb file if we had a myst markdown file -->
|
|
|
|
<!-- Download raw file -->
|
|
<a class="dropdown-buttons" href="_sources/exercisesweek38.ipynb"><button type="button"
|
|
class="btn btn-secondary topbarbtn" title="Download source file" data-toggle="tooltip"
|
|
data-placement="left">.ipynb</button></a>
|
|
<!-- Download PDF via print -->
|
|
<button type="button" id="download-print" class="btn btn-secondary topbarbtn" title="Print to PDF"
|
|
onclick="printPdf(this)" data-toggle="tooltip" data-placement="left">.pdf</button>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Source interaction buttons -->
|
|
|
|
<!-- Full screen (wrap in <a> to have style consistency -->
|
|
|
|
<a class="full-screen-button"><button type="button" class="btn btn-secondary topbarbtn" data-toggle="tooltip"
|
|
data-placement="bottom" onclick="toggleFullScreen()" aria-label="Fullscreen mode"
|
|
title="Fullscreen mode"><i
|
|
class="fas fa-expand"></i></button></a>
|
|
|
|
<!-- Launch buttons -->
|
|
|
|
</div>
|
|
|
|
<!-- Table of contents -->
|
|
<div class="d-none d-md-block col-md-2 bd-toc show noprint">
|
|
|
|
<div class="tocsection onthispage pt-5 pb-3">
|
|
<i class="fas fa-list"></i> Contents
|
|
</div>
|
|
<nav id="bd-toc-nav" aria-label="Page">
|
|
<ul class="visible nav section-nav flex-column">
|
|
<li class="toc-h2 nav-item toc-entry">
|
|
<a class="reference internal nav-link" href="#overarching-aims-of-the-exercises-this-week">
|
|
Overarching aims of the exercises this week
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
|
|
</nav>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div id="main-content" class="row">
|
|
<div class="col-12 col-md-9 pl-md-3 pr-md-0">
|
|
<!-- Table of contents that is only displayed when printing the page -->
|
|
<div id="jb-print-docs-body" class="onlyprint">
|
|
<h1>Exercises week 38</h1>
|
|
<!-- Table of contents -->
|
|
<div id="print-main-content">
|
|
<div id="jb-print-toc">
|
|
|
|
<div>
|
|
<h2> Contents </h2>
|
|
</div>
|
|
<nav aria-label="Page">
|
|
<ul class="visible nav section-nav flex-column">
|
|
<li class="toc-h2 nav-item toc-entry">
|
|
<a class="reference internal nav-link" href="#overarching-aims-of-the-exercises-this-week">
|
|
Overarching aims of the exercises this week
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
|
|
</nav>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div>
|
|
|
|
<!-- HTML file automatically generated from DocOnce source (https://github.com/doconce/doconce/)
|
|
doconce format html exercisesweek38.do.txt -->
|
|
<!-- dom:TITLE: Exercises week 38 --><div class="tex2jax_ignore mathjax_ignore section" id="exercises-week-38">
|
|
<h1>Exercises week 38<a class="headerlink" href="#exercises-week-38" title="Permalink to this headline">¶</a></h1>
|
|
<p><strong>September 16-20, 2024</strong></p>
|
|
<p>Date: <strong>Deadline is Friday September 20 at midnight</strong></p>
|
|
<div class="section" id="overarching-aims-of-the-exercises-this-week">
|
|
<h2>Overarching aims of the exercises this week<a class="headerlink" href="#overarching-aims-of-the-exercises-this-week" title="Permalink to this headline">¶</a></h2>
|
|
<p>The aim of the exercises this week is to derive the equations for the bias-variance tradeoff to be used in project 1 as well as testing this for a simpler function using the bootstrap method. The exercises here can be reused in project 1 as well.</p>
|
|
<p>Consider a
|
|
dataset <span class="math notranslate nohighlight">\(\mathcal{L}\)</span> consisting of the data
|
|
<span class="math notranslate nohighlight">\(\mathbf{X}_\mathcal{L}=\{(y_j, \boldsymbol{x}_j), j=0\ldots n-1\}\)</span>.</p>
|
|
<p>We assume that the true data is generated from a noisy model</p>
|
|
<div class="math notranslate nohighlight">
|
|
\[
|
|
\boldsymbol{y}=f(\boldsymbol{x}) + \boldsymbol{\epsilon}.
|
|
\]</div>
|
|
<p>Here <span class="math notranslate nohighlight">\(\epsilon\)</span> is normally distributed with mean zero and standard
|
|
deviation <span class="math notranslate nohighlight">\(\sigma^2\)</span>.</p>
|
|
<p>In our derivation of the ordinary least squares method we defined
|
|
an approximation to the function <span class="math notranslate nohighlight">\(f\)</span> in terms of the parameters
|
|
<span class="math notranslate nohighlight">\(\boldsymbol{\beta}\)</span> and the design matrix <span class="math notranslate nohighlight">\(\boldsymbol{X}\)</span> which embody our model,
|
|
that is <span class="math notranslate nohighlight">\(\boldsymbol{\tilde{y}}=\boldsymbol{X}\boldsymbol{\beta}\)</span>.</p>
|
|
<p>The parameters <span class="math notranslate nohighlight">\(\boldsymbol{\beta}\)</span> are in turn found by optimizing the mean
|
|
squared error via the so-called cost function</p>
|
|
<div class="math notranslate nohighlight">
|
|
\[
|
|
C(\boldsymbol{X},\boldsymbol{\beta}) =\frac{1}{n}\sum_{i=0}^{n-1}(y_i-\tilde{y}_i)^2=\mathbb{E}\left[(\boldsymbol{y}-\boldsymbol{\tilde{y}})^2\right].
|
|
\]</div>
|
|
<p>Here the expected value <span class="math notranslate nohighlight">\(\mathbb{E}\)</span> is the sample value.</p>
|
|
<p>Show that you can rewrite this in terms of a term which contains the variance of the model itself (the so-called variance term), a
|
|
term which measures the deviation from the true data and the mean value of the model (the bias term) and finally the variance of the noise.
|
|
That is, show that</p>
|
|
<div class="math notranslate nohighlight">
|
|
\[
|
|
\mathbb{E}\left[(\boldsymbol{y}-\boldsymbol{\tilde{y}})^2\right]=\mathrm{Bias}[\tilde{y}]+\mathrm{var}[\tilde{y}]+\sigma^2,
|
|
\]</div>
|
|
<p>with</p>
|
|
<div class="math notranslate nohighlight">
|
|
\[
|
|
\mathrm{Bias}[\tilde{y}]=\mathbb{E}\left[\left(\boldsymbol{y}-\mathbb{E}\left[\boldsymbol{\tilde{y}}\right]\right)^2\right],
|
|
\]</div>
|
|
<p>and</p>
|
|
<div class="math notranslate nohighlight">
|
|
\[
|
|
\mathrm{var}[\tilde{y}]=\mathbb{E}\left[\left(\tilde{\boldsymbol{y}}-\mathbb{E}\left[\boldsymbol{\tilde{y}}\right]\right)^2\right]=\frac{1}{n}\sum_i(\tilde{y}_i-\mathbb{E}\left[\boldsymbol{\tilde{y}}\right])^2.
|
|
\]</div>
|
|
<p>Explain what the terms mean and discuss their interpretations.</p>
|
|
<p>Perform then a bias-variance analysis of a simple one-dimensional (or other models of your choice) function by
|
|
studying the MSE value as function of the complexity of your model. Use ordinary least squares only.</p>
|
|
<p>Discuss the bias and variance trade-off as function
|
|
of your model complexity (the degree of the polynomial) and the number
|
|
of data points, and possibly also your training and test data using the <strong>bootstrap</strong> resampling method.
|
|
You can follow the code example in the jupyter-book at <a class="reference external" href="https://compphysics.github.io/MachineLearning/doc/LectureNotes/_build/html/chapter3.html#the-bias-variance-tradeoff">https://compphysics.github.io/MachineLearning/doc/LectureNotes/_build/html/chapter3.html#the-bias-variance-tradeoff</a>.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<script type="text/x-thebe-config">
|
|
{
|
|
requestKernel: true,
|
|
binderOptions: {
|
|
repo: "binder-examples/jupyter-stacks-datascience",
|
|
ref: "master",
|
|
},
|
|
codeMirrorConfig: {
|
|
theme: "abcdef",
|
|
mode: "python"
|
|
},
|
|
kernelOptions: {
|
|
kernelName: "python3",
|
|
path: "./."
|
|
},
|
|
predefinedOutput: true
|
|
}
|
|
</script>
|
|
<script>kernelName = 'python3'</script>
|
|
|
|
</div>
|
|
|
|
|
|
<!-- Previous / next buttons -->
|
|
<div class='prev-next-area'>
|
|
<a class='left-prev' id="prev-link" href="week37.html" title="previous page">
|
|
<i class="fas fa-angle-left"></i>
|
|
<div class="prev-next-info">
|
|
<p class="prev-next-subtitle">previous</p>
|
|
<p class="prev-next-title">Week 37: Statistical interpretations and Resampling Methods</p>
|
|
</div>
|
|
</a>
|
|
<a class='right-next' id="next-link" href="project1.html" title="next page">
|
|
<div class="prev-next-info">
|
|
<p class="prev-next-subtitle">next</p>
|
|
<p class="prev-next-title">Project 1 on Machine Learning, deadline October 7 (midnight), 2024</p>
|
|
</div>
|
|
<i class="fas fa-angle-right"></i>
|
|
</a>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
<footer class="footer">
|
|
<p>
|
|
|
|
By Morten Hjorth-Jensen<br/>
|
|
|
|
© Copyright 2021.<br/>
|
|
</p>
|
|
</footer>
|
|
</main>
|
|
|
|
|
|
</div>
|
|
</div>
|
|
|
|
<script src="_static/js/index.be7d3bbb2ef33a8344ce.js"></script>
|
|
|
|
</body>
|
|
</html> |