Stellen Sie für das KNN die Gewichtsmatrizen $W^1$ und $W^2$ auf und berechnen Sie damit jeweils durch zweifache Matrix-Vektormultiplikation die Aktivierungen am Ausgang des Netzwerks für die folgenden Lebewesen als Eingabegrößen. Die Komponenten der Vektoren können dabei als Werte in $cm$ interpretiert werden.
1.) $\vec{a}^0 = \left(\begin{array}{c} 8\\2\\3\\10 \end{array}\right)$ 2.) $\vec{a}^0 = \left(\begin{array}{c} 150\\1\\40\\120 \end{array}\right)$ 3.) $\vec{a}^0 = \left(\begin{array}{c} 4\\3\\25\\7 \end{array}\right)$
Tipp: Verwenden Sie zum Ausführen der Matrix-Verktormultiplikationen
( Vektoren, Matrizen, lineare Algebra )
import numpy as np
Tier 1: $\vec{a}^0 :=\left( \begin{array}{c} 8\\2\\3\\10 \end{array} \right)$ Tier 2: $\vec{a}^0 := \left(\begin{array}{c} 150\\1\\40\\120 \end{array}\right)$ Tier 3: $\vec{a}^0 := \left(\begin{array}{c} 4\\3\\25\\7 \end{array}\right)$
$W^1 := \left(\begin{array}{cccc}
-20 & 100 & -15 & 20 \\
1 & -100 & 1 & 1 \\
-100 & 80 & 8 & 10
\end{array}\right)$
$\vec{b}^1 := \left( \begin{array}{c} 0\\0\\0 \end{array} \right)$
$W^2 := \left(\begin{array}{cccc}
-10 & 0 & 2 \\
2 & -10 & -100
\end{array}\right)$
$\vec{b}^2 := \left(\begin{array}{c} 1\\1 \end{array}\right)$
NB: Die Funktion arbeitet elementweise auf der übergebenen Matrix, wobei hier lediglich eine (nx1)-Matrix (also ein Vektor) übergeben wird. Zurückgegenben werden soll ebenfalls eine (nx1)-Matrix.
def treppenfunktion(matrix):
a0 = tier2
$\vec{a}^1 := \vec{f}_0(W^1\vec{a}^0-\vec{b}^1)$
$\vec{a}^2 := \vec{f}_0(W^2 \vec{a}^1-\vec{b}^2)$
Tier 1: $\vec{a}^0 = \left( \begin{array}{c} 8\\2\\3\\10 \end{array} \right)$ Tier 2: $\vec{a}^0 = \left(\begin{array}{c} 150\\1\\40\\120 \end{array}\right)$ Tier 3: $\vec{a}^0 = \left(\begin{array}{c} 4\\3\\25\\7 \end{array}\right)$