From ca32b67495365447e36516fd6daba8e14771af63 Mon Sep 17 00:00:00 2001 From: ludwigbothmann <46222472+ludwigbothmann@users.noreply.github.com> Date: Tue, 16 Jan 2024 22:49:10 +0100 Subject: [PATCH] add reproduced lq penalty plot --- .../regularization/figure_man/bv_true_fun.png | Bin 0 -> 36879 bytes .../figure_man/lq-penalty-plots.png | Bin 0 -> 34301 bytes slides/regularization/rsrc/lq-penalty-plot.py | 39 ++++++++++++++++++ .../slides-regu-bias-variance.tex | 20 +++++++-- slides/regularization/slides-regu-l0.tex | 9 ++-- 5 files changed, 61 insertions(+), 7 deletions(-) create mode 100644 slides/regularization/figure_man/bv_true_fun.png create mode 100644 slides/regularization/figure_man/lq-penalty-plots.png create mode 100644 slides/regularization/rsrc/lq-penalty-plot.py diff --git a/slides/regularization/figure_man/bv_true_fun.png b/slides/regularization/figure_man/bv_true_fun.png new file mode 100644 index 0000000000000000000000000000000000000000..85078c245a93e793510a9d277f26c64ba337e7da GIT binary patch literal 36879 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

MpXiUbTYYDM)Y;Q8s)MP^J~2w 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 SDF%N--n>?PRVrot@&5q)R7c$a literal 0 HcmV?d00001 diff --git a/slides/regularization/figure_man/lq-penalty-plots.png b/slides/regularization/figure_man/lq-penalty-plots.png new file mode 100644 index 0000000000000000000000000000000000000000..3f04f42c415e42fc8e0de2f989fd3f5a0324a4b2 GIT binary patch literal 34301 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 literal 0 HcmV?d00001 diff --git a/slides/regularization/rsrc/lq-penalty-plot.py b/slides/regularization/rsrc/lq-penalty-plot.py new file mode 100644 index 00000000..abe96e40 --- /dev/null +++ b/slides/regularization/rsrc/lq-penalty-plot.py @@ -0,0 +1,39 @@ +# -*- coding: utf-8 -*- +""" +Created on Tue Jan 16 22:32:46 2024 + +@author: chris +""" + +import numpy as np +import matplotlib.pyplot as plt + +# Define the funs +def f1(x): return x**2 +def f2(x): return np.abs(x) +def f3(x): return np.abs(x)**(2/3) +def f4(x): return np.abs(x)**(1/2) +def f0(x): return np.where(np.abs(x)>=0.007, 1, 0) + +x_values = np.linspace(-2, 2, 400) + +fig, axes = plt.subplots(1, 5, figsize=(15, 4)) + +# Plot each function +for i, (func, q) in enumerate(zip([f1, f2, f3, f4, f0], ['q=2', 'q=1', 'q=2/3', 'q=1/2', 'q=0'])): + y_values = func(x_values) + axes[i].plot(x_values, y_values, color=f'C{i}') + axes[i].set_title(q, size=16) + axes[i].set_xlim(-1.2, 1.2) + axes[i].set_ylim(0, 1.1) + axes[i].label_outer() + axes[i].set_xlabel(r'$\theta$', size=20) + axes[i].set_ylabel('Penalty', size=16) + axes[i].tick_params(axis='both', which='major', labelsize=10) + axes[i].grid(False) + axes[i].spines['top'].set_visible(False) + axes[i].spines['right'].set_visible(False) + +plt.tight_layout() + +plt.show() diff --git a/slides/regularization/slides-regu-bias-variance.tex b/slides/regularization/slides-regu-bias-variance.tex index f220ae91..dccbb2c1 100644 --- a/slides/regularization/slides-regu-bias-variance.tex +++ b/slides/regularization/slides-regu-bias-variance.tex @@ -25,12 +25,26 @@ In this slide set, we will visualize the bias-variance trade-off. \\ \lz -First, we start with the DGP. Assume the true function $$f: [0, 1] \rightarrow \mathbb{R}, x\mapsto +\I_{\{x \geq 0.3\}}(x) - \I_{\{x \geq 0.6\}}(x).$$ - -Let the feature $x$ be uniformly d +First, we start with the DGP $\mathbb{P}_{xy}$. Assume the true function $$f: [0, 1] \rightarrow \mathbb{R}, x\mapsto +\I_{\{x \geq 0.3\}}(x) - \I_{\{x \geq 0.6\}}(x).$$ +Let the feature $x \sim \mathcal{U}([0, 1])$ and the target $y\vert x \sim \mathcal{N}(f(x), \sigma).$ +\begin{center} +\includegraphics[width=0.5\textwidth]{slides/regularization/figure_man/bv_true_fun.png} +\end{center} \framebreak +Obviously, $f$ is an element of the function family $$\mathcal{H} := \{f: [0, 1] \rightarrow \mathbb{R}\vert\; f \text{ is continuous except for at most 2 jump discontinuities}\}$$ + +To make our following discussion more formal, we introduce two distance functions. +\begin{itemize} + \item The distance between two functions $d:\mathcal{H}^2\rightarrow \mathbb{R}_{\geq 0}$ in $\mathcal{H}$ such that $$d(f_1, f_2) = \int_0^1(f_1(x) - f_2(x))^2dx.$$ + \item The distance between a function and $k$ observations $\overline{d}:\mathcal{H}\times([0,1]\times \mathbb{R})^k \rightarrow \mathbb{R}_{\geq 0}$ in $\mathcal{H}$ such that + $$\overline d(f, ((x_1, y_1), \dots, (x_k, y_k)) = \frac{1}{k}\sum^k_{i=1}(f_1(x_i) - y_i)^2 $$ +\end{itemize} + + +\framebreak + \center \vspace*{0.5cm} \includegraphics[width=0.6\textwidth]{figure_man/biasvariance_scheme.png} \\ diff --git a/slides/regularization/slides-regu-l0.tex b/slides/regularization/slides-regu-l0.tex index ca96dcfd..b2599b8b 100644 --- a/slides/regularization/slides-regu-l0.tex +++ b/slides/regularization/slides-regu-l0.tex @@ -17,7 +17,7 @@ \lecturechapter{L0 Regularization} \lecture{Introduction to Machine Learning} -\begin{vbframe}{LQ norm Regularization} +\begin{vbframe}{Lq norm Regularization} Besides $L1$ and $L2$ norm we could use any $Lq$ norm for regularization. @@ -39,11 +39,12 @@ \riskrt = \risket + \lambda \|\thetab\|_0 := \risket + \lambda \sum_j |\theta_j|^0. $$ \item Unlike the $L1$ and $L2$ norms, the $L0$ "norm" simply counts the number of non-zero parameters in the model. + \vspace{0.3cm} \begin{figure} \centering - \scalebox{0.8}{\includegraphics{figure_man/l0_norm.png}} - \tiny{\\ Credit: Christos Louizos} - \caption{\footnotesize $Lp$ norm penalties for a parameter $\thetab$ according to different values of $p$.} + \scalebox{0.99}{\includegraphics{figure_man/lq-penalty-plots.png}} + %\tiny{\\ Credit: Christos Louizos} + \caption{\footnotesize $Lq$ (quasi-)norm penalties for a scalar parameter $\thetab$ for different values of $q$} \end{figure} \item For any parameter $\thetab$, the $L0$ penalty is zero for $\thetab = 0$ (defining $0^0 := 0$) and is constant for any $\thetab \neq 0$, no matter how large or small it is. \item $L0$ regularization induces sparsity in the parameter vector more aggressively than $L1$ regularization, but does not shrink concrete parameter values as L1 and L2 does.