Added material to slides

This commit is contained in:
mhjensen
2019-09-05 13:42:18 +02:00
parent f56c59cf34
commit 05c0090fd8
9 changed files with 36 additions and 6 deletions
@@ -407,9 +407,14 @@ MathJax.Hub.Config({
<span style="color: #BA2121; font-style: italic"> numpy and scipy.linalg at the cost of being slower.</span>
<span style="color: #BA2121; font-style: italic"> &#39;&#39;&#39;</span>
U, s, VT <span style="color: #666666">=</span> np<span style="color: #666666">.</span>linalg<span style="color: #666666">.</span>svd(A)
<span style="color: #408080; font-style: italic"># print(&#39;test U&#39;)</span>
<span style="color: #408080; font-style: italic"># print( (np.transpose(U) @ U - U @np.transpose(U)))</span>
<span style="color: #408080; font-style: italic"># print(&#39;test VT&#39;)</span>
<span style="color: #408080; font-style: italic"># print( (np.transpose(VT) @ VT - VT @np.transpose(VT)))</span>
<span style="color: #008000; font-weight: bold">print</span>(U)
<span style="color: #008000; font-weight: bold">print</span>(s)
<span style="color: #008000; font-weight: bold">print</span>(VT)
D <span style="color: #666666">=</span> np<span style="color: #666666">.</span>zeros((<span style="color: #008000">len</span>(U),<span style="color: #008000">len</span>(VT)))
<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>(<span style="color: #666666">0</span>,<span style="color: #008000">len</span>(VT)):
D[i,i]<span style="color: #666666">=</span>s[i]
@@ -409,7 +409,7 @@ with \( \boldsymbol{U}\in {\mathbb{R}}^{n\times n} \), \( \boldsymbol{\Sigma}\in
and \( \boldsymbol{V}\in {\mathbb{R}}^{p\times p} \).
<p>
We have \( \boldsymbol{U}^T\boldsymbol{U}=\boldsymbol{I} \) and \( \boldsymbol{V}^T\boldsymbol{V}=\boldsymbol{V}\boldsymbol{V}^T=\boldsymbol{I} \).
The matrices \( \boldsymbol{U} \) and \( \boldsymbol{V} \) are unitary/orthonormal matrices, that is in case the matrices are real we have \( \boldsymbol{U}^T\boldsymbol{U}=\boldsymbol{U}\boldsymbol{U}^T=\boldsymbol{I} \) and \( \boldsymbol{V}^T\boldsymbol{V}=\boldsymbol{V}\boldsymbol{V}^T=\boldsymbol{I} \).
<p>
<p>
@@ -2035,9 +2035,14 @@ Similarly, <a href="https://arxiv.org/abs/1803.08823" target="_blank">Mehta et a
<span style="color: #CD5555"> numpy and scipy.linalg at the cost of being slower.</span>
<span style="color: #CD5555"> &#39;&#39;&#39;</span>
U, s, VT = np.linalg.svd(A)
<span style="color: #228B22"># print(&#39;test U&#39;)</span>
<span style="color: #228B22"># print( (np.transpose(U) @ U - U @np.transpose(U)))</span>
<span style="color: #228B22"># print(&#39;test VT&#39;)</span>
<span style="color: #228B22"># print( (np.transpose(VT) @ VT - VT @np.transpose(VT)))</span>
<span style="color: #8B008B; font-weight: bold">print</span>(U)
<span style="color: #8B008B; font-weight: bold">print</span>(s)
<span style="color: #8B008B; font-weight: bold">print</span>(VT)
D = np.zeros((<span style="color: #658b00">len</span>(U),<span style="color: #658b00">len</span>(VT)))
<span style="color: #8B008B; font-weight: bold">for</span> i <span style="color: #8B008B">in</span> <span style="color: #658b00">range</span>(<span style="color: #B452CD">0</span>,<span style="color: #658b00">len</span>(VT)):
D[i,i]=s[i]
@@ -2104,7 +2109,7 @@ with \( \boldsymbol{U}\in {\mathbb{R}}^{n\times n} \), \( \boldsymbol{\Sigma}\in
and \( \boldsymbol{V}\in {\mathbb{R}}^{p\times p} \).
<p>
We have \( \boldsymbol{U}^T\boldsymbol{U}=\boldsymbol{I} \) and \( \boldsymbol{V}^T\boldsymbol{V}=\boldsymbol{V}\boldsymbol{V}^T=\boldsymbol{I} \).
The matrices \( \boldsymbol{U} \) and \( \boldsymbol{V} \) are unitary/orthonormal matrices, that is in case the matrices are real we have \( \boldsymbol{U}^T\boldsymbol{U}=\boldsymbol{U}\boldsymbol{U}^T=\boldsymbol{I} \) and \( \boldsymbol{V}^T\boldsymbol{V}=\boldsymbol{V}\boldsymbol{V}^T=\boldsymbol{I} \).
</section>
@@ -2039,9 +2039,14 @@ Similarly, <a href="https://arxiv.org/abs/1803.08823" target="_blank">Mehta et a
<span style="color: #CD5555"> numpy and scipy.linalg at the cost of being slower.</span>
<span style="color: #CD5555"> &#39;&#39;&#39;</span>
U, s, VT = np.linalg.svd(A)
<span style="color: #228B22"># print(&#39;test U&#39;)</span>
<span style="color: #228B22"># print( (np.transpose(U) @ U - U @np.transpose(U)))</span>
<span style="color: #228B22"># print(&#39;test VT&#39;)</span>
<span style="color: #228B22"># print( (np.transpose(VT) @ VT - VT @np.transpose(VT)))</span>
<span style="color: #8B008B; font-weight: bold">print</span>(U)
<span style="color: #8B008B; font-weight: bold">print</span>(s)
<span style="color: #8B008B; font-weight: bold">print</span>(VT)
D = np.zeros((<span style="color: #658b00">len</span>(U),<span style="color: #658b00">len</span>(VT)))
<span style="color: #8B008B; font-weight: bold">for</span> i <span style="color: #8B008B">in</span> <span style="color: #658b00">range</span>(<span style="color: #B452CD">0</span>,<span style="color: #658b00">len</span>(VT)):
D[i,i]=s[i]
@@ -2106,7 +2111,7 @@ with \( \boldsymbol{U}\in {\mathbb{R}}^{n\times n} \), \( \boldsymbol{\Sigma}\in
and \( \boldsymbol{V}\in {\mathbb{R}}^{p\times p} \).
<p>
We have \( \boldsymbol{U}^T\boldsymbol{U}=\boldsymbol{I} \) and \( \boldsymbol{V}^T\boldsymbol{V}=\boldsymbol{V}\boldsymbol{V}^T=\boldsymbol{I} \).
The matrices \( \boldsymbol{U} \) and \( \boldsymbol{V} \) are unitary/orthonormal matrices, that is in case the matrices are real we have \( \boldsymbol{U}^T\boldsymbol{U}=\boldsymbol{U}\boldsymbol{U}^T=\boldsymbol{I} \) and \( \boldsymbol{V}^T\boldsymbol{V}=\boldsymbol{V}\boldsymbol{V}^T=\boldsymbol{I} \).
<p>
<!-- !split --><br><br><br><br><br><br><br><br><br><br>
+6 -1
View File
@@ -2044,9 +2044,14 @@ Similarly, <a href="https://arxiv.org/abs/1803.08823" target="_blank">Mehta et a
<span style="color: #BA2121; font-style: italic"> numpy and scipy.linalg at the cost of being slower.</span>
<span style="color: #BA2121; font-style: italic"> &#39;&#39;&#39;</span>
U, s, VT <span style="color: #666666">=</span> np<span style="color: #666666">.</span>linalg<span style="color: #666666">.</span>svd(A)
<span style="color: #408080; font-style: italic"># print(&#39;test U&#39;)</span>
<span style="color: #408080; font-style: italic"># print( (np.transpose(U) @ U - U @np.transpose(U)))</span>
<span style="color: #408080; font-style: italic"># print(&#39;test VT&#39;)</span>
<span style="color: #408080; font-style: italic"># print( (np.transpose(VT) @ VT - VT @np.transpose(VT)))</span>
<span style="color: #008000; font-weight: bold">print</span>(U)
<span style="color: #008000; font-weight: bold">print</span>(s)
<span style="color: #008000; font-weight: bold">print</span>(VT)
D <span style="color: #666666">=</span> np<span style="color: #666666">.</span>zeros((<span style="color: #008000">len</span>(U),<span style="color: #008000">len</span>(VT)))
<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>(<span style="color: #666666">0</span>,<span style="color: #008000">len</span>(VT)):
D[i,i]<span style="color: #666666">=</span>s[i]
@@ -2111,7 +2116,7 @@ with \( \boldsymbol{U}\in {\mathbb{R}}^{n\times n} \), \( \boldsymbol{\Sigma}\in
and \( \boldsymbol{V}\in {\mathbb{R}}^{p\times p} \).
<p>
We have \( \boldsymbol{U}^T\boldsymbol{U}=\boldsymbol{I} \) and \( \boldsymbol{V}^T\boldsymbol{V}=\boldsymbol{V}\boldsymbol{V}^T=\boldsymbol{I} \).
The matrices \( \boldsymbol{U} \) and \( \boldsymbol{V} \) are unitary/orthonormal matrices, that is in case the matrices are real we have \( \boldsymbol{U}^T\boldsymbol{U}=\boldsymbol{U}\boldsymbol{U}^T=\boldsymbol{I} \) and \( \boldsymbol{V}^T\boldsymbol{V}=\boldsymbol{V}\boldsymbol{V}^T=\boldsymbol{I} \).
<p>
<!-- !split --><br><br><br><br><br><br><br><br><br><br>
+6 -1
View File
@@ -2676,9 +2676,14 @@
" numpy and scipy.linalg at the cost of being slower.\n",
" '''\n",
" U, s, VT = np.linalg.svd(A)\n",
"# print('test U')\n",
"# print( (np.transpose(U) @ U - U @np.transpose(U)))\n",
"# print('test VT')\n",
"# print( (np.transpose(VT) @ VT - VT @np.transpose(VT)))\n",
" print(U)\n",
" print(s)\n",
" print(VT)\n",
"\n",
" D = np.zeros((len(U),len(VT)))\n",
" for i in range(0,len(VT)):\n",
" D[i,i]=s[i]\n",
@@ -2748,7 +2753,7 @@
"with $\\boldsymbol{U}\\in {\\mathbb{R}}^{n\\times n}$, $\\boldsymbol{\\Sigma}\\in {\\mathbb{R}}^{n\\times p}$\n",
"and $\\boldsymbol{V}\\in {\\mathbb{R}}^{p\\times p}$.\n",
"\n",
"We have $\\boldsymbol{U}^T\\boldsymbol{U}=\\boldsymbol{I}$ and $\\boldsymbol{V}^T\\boldsymbol{V}=\\boldsymbol{V}\\boldsymbol{V}^T=\\boldsymbol{I}$.\n",
"The matrices $\\boldsymbol{U}$ and $\\boldsymbol{V}$ are unitary/orthonormal matrices, that is in case the matrices are real we have $\\boldsymbol{U}^T\\boldsymbol{U}=\\boldsymbol{U}\\boldsymbol{U}^T=\\boldsymbol{I}$ and $\\boldsymbol{V}^T\\boldsymbol{V}=\\boldsymbol{V}\\boldsymbol{V}^T=\\boldsymbol{I}$.\n",
"\n",
"## Spectral Decomposition of the OLS\n",
"\n",
Binary file not shown.
Binary file not shown.
+6 -1
View File
@@ -1590,9 +1590,14 @@ def SVDinv(A):
numpy and scipy.linalg at the cost of being slower.
'''
U, s, VT = np.linalg.svd(A)
# print('test U')
# print( (np.transpose(U) @ U - U @np.transpose(U)))
# print('test VT')
# print( (np.transpose(VT) @ VT - VT @np.transpose(VT)))
print(U)
print(s)
print(VT)
D = np.zeros((len(U),len(VT)))
for i in range(0,len(VT)):
D[i,i]=s[i]
@@ -1652,7 +1657,7 @@ We have our design matrix
with $\bm{U}\in {\mathbb{R}}^{n\times n}$, $\bm{\Sigma}\in {\mathbb{R}}^{n\times p}$
and $\bm{V}\in {\mathbb{R}}^{p\times p}$.
We have $\bm{U}^T\bm{U}=\bm{I}$ and $\bm{V}^T\bm{V}=\bm{V}\bm{V}^T=\bm{I}$.
The matrices $\bm{U}$ and $\bm{V}$ are unitary/orthonormal matrices, that is in case the matrices are real we have $\bm{U}^T\bm{U}=\bm{U}\bm{U}^T=\bm{I}$ and $\bm{V}^T\bm{V}=\bm{V}\bm{V}^T=\bm{I}$.
!split
===== Spectral Decomposition of the OLS =====