Uge 6: Øvelser#

Opgaver – Store Dag#

1: Kvadratisk ReLU#

Den kvadratiske ReLU er en aktiveringsfunktion \(\sigma: \mathbb{R} \to \mathbb{R}\) givet ved

\[\begin{equation*} \sigma(x)= (\operatorname{ReLU}(x))^2. \end{equation*}\]

Spørgsmål a#

Argumentér for, at \(\sigma\) er kontinuert differentiabel, og find et udtryk for \(\sigma'(x)\).

Spørgsmål b#

Find samtlige stationære punkter for \(\sigma\). Udregn funktionsværdien i alle stationære punkter. Antager funktionen minimums- eller maksimumsværdi i de stationære punkter?

2: Ekstremum eller ej#

Lad \(f: \mathbb{R}^2 \to \mathbb{R}\) være givet ved

\[\begin{equation*} f(x,y)=x^2 y + y \end{equation*}\]

Bestem samtlige lokale ekstrema for \(f\).

3: Stationære punkter i et neuralt netværk med kvadratisk ReLU#

I denne opgave betragter vi et simpelt “shallow” neuralt netværk \(\pmb{\Phi}: \mathbb{R}^2 \to \mathbb{R}\) med ét skjult lag. Netværket bruger den kvadratiske ReLU-funktion som aktiveringsfunktion i det skjulte lag:

\[\begin{equation*} \sigma_1(z) = (\operatorname{ReLU}(z))^2 \end{equation*}\]

Netværket er defineret ved følgende vægtmatricer og bias-vektorer:

\[\begin{equation*} \pmb{A}_1 = \begin{bmatrix} 1 & 1 \\ -1 & -1 \end{bmatrix}, \quad \pmb{b}_1 = \begin{bmatrix} -2 \\ 0 \end{bmatrix}, \quad \pmb{A}_2 = \begin{bmatrix} 1 & 1 \end{bmatrix}, \quad b_2 = 3 \end{equation*}\]

Aktiveringsfunktionen i det skjulte lag påføres elementvist, \(\pmb{\sigma}_1(\pmb{z}) = \begin{bmatrix} \sigma_1(z_1) \\ \sigma_1(z_2) \end{bmatrix}\), mens output-laget er lineært (dvs. \(\sigma_2(z)=z\) er identitetsfunktionen). Netværksfunktionen er givet ved:

\[\begin{equation*} \pmb{\Phi}(\pmb{x}) = \pmb{A}_2 \pmb{\sigma}_1(\pmb{A}_1 \pmb{x} + \pmb{b}_1) + b_2 \end{equation*}\]

Spørgsmål a#

Opskriv et eksplicit funktionsudtryk for \(\pmb{\Phi}(x_1, x_2)\) som afhænger af \(x_1\), \(x_2\) og \(\sigma_1\).

Spørgsmål b#

Find gradienten \(\nabla \pmb{\Phi}(x_1, x_2)\) i de områder af \(\mathbb{R}^2\), hvor hhv. den første neuron, den anden neuron eller begge er “aktive” (dvs. hvor argumentet til \(\sigma_1\) er positivt).

Spørgsmål c#

Vis, at mængden af stationære punkter for \(\pmb{\Phi}\) udgør en hel “strimmel” (en mængde af uendeligt mange punkter) i \((x_1, x_2)\)-planen. Find ulighederne, der beskriver denne strimmel.

Spørgsmål d#

Afgør om de stationære punkter er lokale minima, maksima eller sadelpunkter. Brug gerne et plot af funktionen til at understøtte din konklusion.

4: Globalt maksimum og globalt minimum#

Lad \(f: A \to \mathbb{R}\) være givet ved:

\[\begin{equation*} f(x,y)=xy(2-x-y)+1 \end{equation*}\]

hvor \(A \subset \mathbb{R}^2\) betegner det område i \((x,y)\)-planen hvor \(x\in\left[ 0,1\right]\), og \(y\in\left[ 0,1\right]\).

Spørgsmål a#

Find samtlige stationære punkter for \(f\) i det indre af \(A\). Brug gerne SymPy til at finde de (der er 4) stationære punkter for \(f\)\(\mathbb{R}^ 2\), da de to ligninger \(\frac{\partial f}{\partial x}(x,y)=0\) og \(\frac{\partial f}{\partial y}(x,y)=0\) ikke er helt nemme at løse - ellers regn i hånden, men spørg din hjælpelærer om en hint.

Spørgsmål b#

Bestem den globale maksimums- og minimumsværdi for \(f\) samt de punkter hvori disse værdier antages.

Spørgsmål c#

Opgaven her handler om en differentiabel funktion af to variable defineret på \([0,1]^2\). Hvordan ville du gribe opgaven an, hvis den handlede om en differentiabel funktion af fem variable defineret på \([0,1]^5\). Diskuter en mulig fremgangsmåde. I må gerne inddrage en god AI chatbot fx https://chatgpt.com/ eller https://copilot.microsoft.com/ i diskussionen.

Spørgsmål d#

Bestem værdimængden af \(f\).

Spørgsmål e#

Plot grafen for \(f\) sammen med punkter der viser hvor på grafen største- og mindsteværdien antages, og tjek at dine resultater ser fornuftige ud.

5: Tilbage til Tema 1#

I Tema 1: Gradientmetoden betragtede vi tre funktioner af formen \(f_i: \mathbb{R}^2 \to \mathbb{R}\). Alle funktionerne havde præcist et minimum, men ikke noget maksimum da de voksede mod uendeligt. Du må bruge denne oplysning uden bevis.

Vi bruger her funktionerne (med deres standardværdier) givet i Python ved:

# Variable og parameter der ingår i funktionerne
x1, x2 = symbols('x1 x2', real=True)
a, lambda1 = symbols('a lambda1',  positive=True)
def f1(x1, x2, a = S(1/2)):
    return a * x1**2 + 1 * x2**2

def f2(x1, x2, lambda1 = 0.5):
    Q = 1/sqrt(2) * Matrix([[1,1],[1,-1]])
    A = Q.T * Matrix([[lambda1,0],[0,1]]) * Q
    b = Matrix([-2,4])
    x = Matrix([x1,x2])
    q = x.T * A * x + x.T * b
    return q[0] 

def f3(x1, x2):
    return (1 - x1)**2 + 100*(x2 - x1**2)**2

I tema-øvelsen brugte vi gradient-metoden til at lede efter minimumspunktet og minimumsværdien. Det er en god metode fx når funktionen har mange (evt uendeligt mange) punkter hvor den ikke er differentiabel, men for pæne funktioner (fx funktioner der er uendeligt ofte differentiable) som de tre betragtede funktioner, er det meget nemmere blot at finde de punkter hvor gradienten er lig med nulvektoren.

Spørgsmål a#

Find alle stationære punkter og den tilhørende minimumsværdi for hver af de tre funktioner. Selvom funktionerne er givet i Python bør du regne denne opgave i hånden – det tager ikke længere tid.

Spørgsmål b#

Angiv billedmængden for hver funktion.

6: Globalt maksimum og globalt minimum igen#

Betragt funktionen \(f:\mathbb{R}^2\rightarrow\mathbb{R}\) givet ved

\[\begin{equation*} f(x,y)=x^2-3y^2-3xy \end{equation*}\]

samt mængden \(A=\lbrace(x,y) \in \mathbb{R}^2 \,| \, x^2+y^2\leq 1\rbrace\).

Gør rede for, at \(f\) har både et globalt maksimum og et globalt minimum på \(A\) og bestem disse værdier samt de punkter hvori de antages.

Til randundersøgelsen \(f\vert_{\partial A}\) bør du bruge SymPy.

7: Stationære punkter for kvadratiske former#

Lad \(q : \mathbb{R}^n \to \mathbb{R}\) være en kvadratisk form. Men andre ord: \(q\) har funktionsforeskriften

\[\begin{equation*} q(\pmb{x}) = \pmb{x}^T A \pmb{x} + \pmb{x}^T \pmb{b} + c \end{equation*}\]

hvor \(A\) er en \(n \times n\) matrix (og ikke nulmatricen), \(\pmb{b} \in \mathbb{R}^n\) er en søjlevektor og \(c \in \mathbb{R}\).

Der gælder at \(q\) er en differentiabel funktion med \(\nabla q(\pmb{x}) = (A + A^T) \pmb{x} + \pmb{b}\) i følge dette eksempel. Dette skal ikke vises (før den sidste opgave).

Spørgsmål a#

Opskriv et system af ligninger hvis løsning beskriver de stationære punkter. Argumenter for at \(q\) kan have enten nul, et eller uendeligt mange stationære punkter.

Spørgsmål b#

Antag at \((A + A^T)\) er invertibel. Argumenter for at \(q\) har netop et stationært punkt. Find det stationære punkt (du skal altså finde en formel eller udtryk for det stationære punkt).

Spørgsmål c#

Antag \(A\) er symmetrisk. Argumenter for at \(q\) har netop ét stationært punkt hvis og kun hvis \(\lambda=0\) ikke er en egenværdi for \(A\).

Spørgsmål d (valgfri)#

Udled formlen som vi startede med at tage for givet: \(\nabla q(\pmb{x}) = (A + A^T) \pmb{x} + \pmb{b}\)

8: En udfordring i lineær algebra#

Lad \(A\) være en \(n \times n\) matrix. Gælder der at den symmetriske matrix \((A + A^T)\) er invertibel, hvis \(A\) er invertibel? Bevis det eller giv et modeksempel!


Opgaver – Lille Dag#

1: Anvendelse af Hessematrix#

Betragt funktionen \(f:\mathbb{R}^2\rightarrow\mathbb{R}\) givet ved

\[\begin{equation*} f(x,y)=x^2+4y^2-2x-4y \end{equation*}\]

Spørgsmål a#

Gør rede for at funktionen \(f\) har netop ét ekstremum, bestem ekstremumspunktet og ekstremumsværdien.

Spørgsmål b#

Hvad er forskellen mellem et ekstremum og et egentligt ekstremum (eng: strict extremum)? Er det fundne ekstremum et egentligt ekstremum?

2: Lokale ekstrema og approksimerende andengradspolynomium#

Givet funktionen \(f:\mathbb{R}^2\rightarrow\mathbb{R}\) med forskriften

\[\begin{equation*} f(x,y)=x^3+2y^3+3xy^2-3x^2. \end{equation*}\]

Spørgsmål a#

Det oplyses at funktionen har præcis 3 stationære punkter. Vis at punkterne \(A=(2,0)\), \(B=(1,-1)\) og \(C=(0,0)\) er stationære punkter for \(f\) og afgør for hvert af dem om der er et lokalt maksimumspunkt eller lokalt minimumspunkt. Angiv i givet fald den lokale maksimumsværdi/minimumsværdi, og afgør om den er egentlig (eng: strict).

Spørgsmål b#

Vis at det approksimerende andengradspolynomium for \(f\) med udviklingspunktet \(A\) kan skrives som en ligning i de ubekendte \(x,y\) og \(z\) på denne form:

\[\begin{equation*} z-c_3=\frac 12\lambda_1(x-c_1)^2+\frac 12\lambda_2(y-c_2)^2. \end{equation*}\]

Hvilken flade beskriver denne ligning, og hvad angiver konstanterne?

Spørgsmål c#

Tegn grafen for \(f\) sammen med grafen for de approksimerende andengradspolynomier for \(f\) med udviklingspunkterne \(A\), \(B\) og \(C\). Diskutér om man ud fra egenværdierne for Hessematricerne i de tre punkter kan afgøre hvilken keglesnitsfladetype andengradspolynomierne beskriver.

3: Tilbage til Tema 1 igen igen#

Vi betragter den kvadratiske form \(f_2: \mathbb{R}^2 \to \mathbb{R}\) fra Tema 1: Gradientmetoden. Den er givet ved \(q: \mathbb{R}^2 \to \mathbb{R}\)

\[\begin{equation*} q(\pmb{x}) = \pmb{x}^T A \pmb{x} + \pmb{b}^T \pmb{x} \end{equation*}\]

hvor \(A\) er en \(2 \times 2\) matrix der afhænger af \(\lambda_1 \in \mathbb{R}\)

\[\begin{equation*} A = Q^T \Lambda Q, \quad Q = \frac{1}{\sqrt{2}} \begin{bmatrix} 1 & 1 \\ 1 & -1 \end{bmatrix}, \quad \Lambda = \begin{bmatrix} \lambda_1 & 0 \\ 0 & 1 \end{bmatrix} \end{equation*}\]

og \(\pmb{b} = - 2 A [1,2]^T\). Ændringer i forhold til Tema-øvelsen: 1) \(\lambda_1\) må være nul eller negativ, 2) ny definition af \(\pmb{b}\).

Spørgsmål a#

Find egenværdierne for \(A\).

Spørgsmål b#

Find alle stationærepunkter for \(q\) når \(\lambda_1 \neq 0\)

Spørgsmål c#

Hvordan er \(A\) og Hesse-matricen \(\pmb{H}_f\) relateret? Find resultatet i bogen hvis du ikke kan huske det. Beskriv det stationære punkt for hver af de tre tilfælde \(\lambda_1 > 0\), \(\lambda_1 = 0\) og \(\lambda_1 < 0\).

Spørgsmål d#

Hvordan er \(q\) og det approksimerende andengradspolynomium (med et vilkårligt udviklingspunkt) relateret? Plot \(q\) for hver af de tre tilfælde \(\lambda_1 > 0\), \(\lambda_1 = 0\) og \(\lambda_1 < 0\). Hvilke normalformer er der tale om (jf. https://en.wikipedia.org/wiki/Quadric#Euclidean_space).

4: Globale ekstrema for funktion af tre variable#

Vi betragter funktionen \(f:\mathbb{R}^3\rightarrow \mathbb{R}\) givet ved

\[\begin{equation*} f(x,y,z)=\sin(x^2+y^2+z^2-1)-x^2+y^2-z^2. \end{equation*}\]

samt den massive enhedskugle

\[\begin{equation*} \mathcal{K}=\left\{(x,y,z)\in \mathbb{R}^3 \mid x^2+y^2+z^2\leq 1\right\}. \end{equation*}\]

Du må gerne bruge SymPy til at regne Hesse-matricen og dens egenværdier.

Spørgsmål a#

Vis at \(f\) i det indre af \(\mathcal{K}\) kun har ét stationært punkt, nemlig \(O=(0,0,0)\), og undersøg om \(f\) har ekstremum i \(O\).

Spørgsmål b#

Bestem den globale maksimumsværdi og den globale minimumsværdi af \(f\)\(\mathcal{K}\) og de punkter hvori værdierne antages.

Spørgsmål c#

Bestem værdimængden af \(f\)\(\mathcal{K}\).

5: Hvor er det globale maksimum? Minimum?#

Givet funktionen \(f:\mathbb{R}^2\rightarrow\mathbb{R}\) med forskriften

\[\begin{equation*} f(x,y)=\exp(x^2+y^2)-4xy \end{equation*}\]

Husk at \(\exp(x^2+y^2) = \operatorname{e}^{x^2+y^2}\). Du må gerne bruge SymPy til at finde gradienten, de stationære punkter og Hesse-matricen (og dens egenværdier).

Spørgsmål a#

Find samtlige stationære punkter for \(f\).

Spørgsmål b#

Find samtlige lokale ekstrema.

Spørgsmål c#

Afgør om funktionen \(f\) har et globalt maksimum eller minimum, og angiv værdierne for disse hvis de eksisterer.

Spørgsmål d#

Angiv funktionens værdimængde.