37 nalog z obeh primerov izpita iz mape test/. Najprej reši sam, šele nato
klikni odgovor — razlaga se odpre šele po kliku. Vsi rezultati so računsko preverjeni.
Vrstice in stolpce štejemo z 0. Levi zgornji piksel je (0, 0). Prva številka v pikslu (4, 5) pomeni vrstico (4), druga stolpec (5). Smer x pomeni pomik po stolpcu (spreminjamo vrstico), smer y pomik po vrstici (spreminjamo stolpec). Rezultate zaokrožujemo glede na 0,5.
Digitalno sliko tvorimo s pomočjo 8-bitnega A/D pretvornika. Vse napetosti višje od 2 V se porežejo. V katero sivino se pretvori napetost 1,1 V?
8 bitov → $Q = 2^8 - 1 = 255$. Območje napetosti je $[0,\,2]$ V (nad 2 V se poreže).
$g = \dfrac{U - U_{\min}}{U_{\max} - U_{\min}}\cdot Q = \dfrac{1{,}1 - 0}{2 - 0}\cdot 255 = 0{,}55 \cdot 255 = 140{,}25 \;\to\; \mathbf{140}$
Past: $U_{\max}$ je 2 V (meja poreza), ne 1 V ali 5 V. In množimo z $Q = 255$, ne s 256.
Notranji parametri: $f = 20$ mm, $k = l = 100$ px/m, $\theta = 88°$, $u_0 = 800$, $v_0 = 600$. V kateri piksel se preslika točka $P = [432,\, 234,\, 678]$ (vrednosti v cm)?
1) Enote v metre: $f = 0{,}020$ m, $P = [4{,}32,\; 2{,}34,\; 6{,}78]$ m.
2) $\alpha = kf = 100 \cdot 0{,}020 = 2$ px, $\beta = lf = 2$ px.
3) $\cot 88° = 0{,}03492$, $\sin 88° = 0{,}99939$.
$u = \dfrac{\alpha x - \alpha\cot\theta\cdot y}{z} + u_0 = \dfrac{2\cdot4{,}32 - 2\cdot0{,}03492\cdot2{,}34}{6{,}78} + 800 = 1{,}274 - 0{,}024 + 800 = 801{,}25 \to \mathbf{801}$
$v = \dfrac{\beta/\sin\theta \cdot y}{z} + v_0 = \dfrac{2{,}0012 \cdot 2{,}34}{6{,}78} + 600 = 0{,}691 + 600 = 600{,}69 \to \mathbf{601}$
Kontrola reda velikosti: ker so $\alpha$ in $\beta$ le 2 px, mora biti rezultat zelo blizu $(u_0, v_0) = (800, 600)$. Odgovori b), c), e) so takoj izločeni.
Kalibriramo z linearnim postopkom. Korespondenčni par $(P_i, p_i)$, kjer je $P_i = [58,\, 245,\, 89]$ in $p_i = [115,\, 140]$. Kakšna je liha vrstica v matriki $\mathsf{P}$?
Homogene koordinate: $P_i = [58, 245, 89, \mathbf{1}]^T$, $u_i = 115$, $v_i = 140$.
Liha vrstica ima obliko $[\,P_i^T \mid 0^T \mid -u_i P_i^T\,]$:
$[58,\,245,\,89,\,1,\;\; 0,\,0,\,0,\,0,\;\; -115\cdot58,\,-115\cdot245,\,-115\cdot89,\,-115]$
$= [58,\,245,\,89,\,1,\;0,\,0,\,0,\,0,\;\mathbf{-6670},\,\mathbf{-28175},\,\mathbf{-10235},\,\mathbf{-115}]$
Kako hitro izločiš napačne: b) uporablja $v_i$ (to je soda vrstica), d) ima le 9 elementov, f) je pozabil pomnožiti z $u_i$, c) je uporabil napačno število.
3-bitna slika $I$ (spodaj). Kontrast spreminjamo z izenačitvijo histograma. V katero sivino se preslika sivina 1, če je $Q = 255$?
1 4 3 6 6 2 1 4 2 0 2 7 4 5 6 1 1 5 0 3
Histogram (20 pikslov): $h = [2,\,4,\,3,\,2,\,3,\,2,\,3,\,1]$ za sivine 0…7.
$g' = \dfrac{Q}{MN}\displaystyle\sum_{i=0}^{1}h_i = \dfrac{255}{20}(h_0 + h_1) = 12{,}75 \cdot (2+4) = 12{,}75 \cdot 6 = 76{,}5 \to \mathbf{77}$
Pasti: vsota je kumulativna do vključno 1, ne samo $h_1$ (to bi dalo 51). $MN = 20$ je število pikslov cele slike.
Sliko $I$ filtrirajmo z medianim filtrom 3×3. Kolikšno vrednost ima po filtriranju piksel (3, 1)?
27 222 110 35 245 22 232 222 1 102 46 148 198 66 67 140 208 204 37 37
Piksel (3, 1) → okolica 3×3 so vrstice 2–4 in stolpci 0–2:
1 102 46
198 66 67
208 204 37
Urejeno: 1, 37, 46, 66, 67, 102, 198, 204, 208 → mediana je 5. vrednost = 67.
Past: mediana ni vrednost sredinskega piksla (66) in ni povprečje (103,2).
Isto sliko $I$ filtrirajmo z nizkim sitom 3×3. Kolikšno vrednost ima po filtriranju piksel (3, 2)?
Piksel (3, 2) → okolica so vrstice 2–4 in stolpci 1–3:
102 46 148
66 67 140
204 37 37
Vsota $= 102+46+148+66+67+140+204+37+37 = 847$
$I'(3,2) = \dfrac{847}{9} = 94{,}11 \to \mathbf{94}$
94 ni med ponujenimi odgovori → pravilen je »Nič od naštetega«. To je pomembna lekcija: če si postopek naredil pravilno in rezultata ni na seznamu, ne popravljaj postopka na silo. Ta možnost je na obeh izpitih večkrat pravilna.
V isti sliki določimo »prave« robne piksle. Gradiente računamo s Sobelovim operatorjem, pri čemer uporabimo eksaktno formulo. Prag za gradient je $> 500$. Ali je piksel (2, 2) »pravi« robni piksel?
Okolica piksla (2, 2) — vrstice 1–3, stolpci 1–3:
22 232 222
102 46 148
66 67 140
$Y = I * H_1 = 1\cdot22 + 2\cdot232 + 1\cdot222 - 1\cdot66 - 2\cdot67 - 1\cdot140 = 708 - 340 = \mathbf{368}$
$X = I * H_2 = 22 - 222 + 2\cdot102 - 2\cdot148 + 66 - 140 = \mathbf{-366}$
$\sqrt{X^2+Y^2} = \sqrt{133956 + 135424} = \sqrt{269380} = \mathbf{519{,}0} > 500$ → Da
Opomba: tu bi tudi približek $|X|+|Y| = 734$ dal isti odgovor, a pri drugih številkah se odgovora razlikujeta — zato naloga posebej pove »eksaktna formula«.
Enopragovna operacija s $T = 100$. Regije labeliramo (od levega zgornjega piksla, najprej desno do konca vrstice in nato navzdol), pri čemer upoštevamo 8-sosedstvo. Kakšno vrednost ima piksel (3, 0)?
218 19 106 125 159 61 13 86 89 31 230 230 131 47 241 94 102 61 125 28
Po pragu $I \geq 100$ dobimo binarno sliko:
1 0 1 1
1 0 0 0
0 0 1 1
1 0 1 0
1 0 1 0
Označevanje (8-sosedstvo, levo→desno, navzdol):
Ključno: (2,0) ima vrednost 89 < 100, torej je ozadje — zato (3,0) ne more prevzeti oznake 1 in dobi novo.
3-bitna slika $I$. Kolikšen je globalni prag, določen s postopkom mediane? (Pri pragovni operaciji predpostavimo $S(i,j) = 1$, če $I(i,j) > T$.)
1 3 3 5 2 2 4 1 6 0 0 1 3 5 2 1 5 3 5 0
Histogram (20 pikslov): $h = [3,\,4,\,3,\,4,\,1,\,4,\,1,\,0]$
Kumulative $A_k$ in razmerja $A_k / A_Q$:
| k | 0 | 1 | 2 | 3 | 4 | 5 | 6 |
|---|---|---|---|---|---|---|---|
| $A_k$ | 3 | 7 | 10 | 14 | 15 | 19 | 20 |
| $A_k/A_Q$ | 0,15 | 0,35 | 0,50 | 0,70 | 0,75 | 0,95 | 1,00 |
Iščemo $T$, kjer je $A_T/A_Q \approx 0{,}5$ → $T = \mathbf{2}$ (razmerje je natanko 0,50). Pogoj $S = 1$ pri $I > T$ tu potrjuje, da je iskani prag res tisti, pri katerem kumulativa doseže polovico.
Regija na binarni sliki $I$. Uporabimo algoritem sledenja notranji meji. Kateri piksel obiščemo 3. po vrsti, če sledimo meji v 8-sosedstvu?
0 0 0 0 0 1 0 1 0 0 1 0 0 0 1 0 0 1 1 1
Smeri: 0 = V, 1 = SV, 2 = S, 3 = SZ, 4 = Z, 5 = JZ, 6 = J, 7 = JV.
Korak 1: prvi piksel ≠ 0 pri pregledu levo→desno navzdol je (1, 1) → $p_0 = (1,1)$, dir = 7.
Korak 2: dir = 7 je liho → začnemo pri smeri $(7+7) \bmod 8 = 6$ (J) in gremo v proti urni smeri.
smer 6 (J) → (2,1) = 0 ✗ · smer 7 (JV) → (2,2) = 1 ✓ → $p_1 = (2,2)$, dir = 7.
Korak 2 ponovno: dir = 7 liho → začnemo pri smeri 6 (J).
smer 6 (J) → (3,2) = 1 ✓ → $p_2 = (3,2)$, dir = 6.
Štetje: $p_0$ je 1. obiskani, $p_1$ 2., $p_2$ 3. → odgovor je (3, 2). Odgovor e) je past za tiste, ki $p_0$ ne štejejo, b) za tiste, ki se ustavijo pri $p_1$.
V sliki $I$ (11×10) iščemo šablono $H$ (3×5). Prag $T = 10$. Na katerem položaju je prišlo do ujemanja?
Slika I (vrstice 5–7)
… 115 167 118 243 106 112 208 161 185 22 108 244 54 138 46 66 81 91 94 163 92 239 25 173 65 192 208 254 215 46 …
Šablona H
118 243 106 112 208 54 138 46 66 81 25 173 65 192 208
Te naloge ni treba računati — šablono poiščeš vizualno. Ujema se popolnoma v vrsticah 5–7 in stolpcih 2–6.
Tam je razlika $|I - H| = 0$ v vseh 15 pikslih, torej $C_1 = 1/0 \to \infty$ — daleč nad pragom $T = 10$.
Položaj podamo kot središče šablone. Šablona 3×5 ima središče odmaknjeno za (1, 2) od levega zgornjega kota: $(5+1,\; 2+2) = \mathbf{(6, 4)}$.
Past: odgovor f) (6, 6) bi bil pravilen, če bi bila šablona 3×3 — vedno preveri velikost šablone.
Zapišite enačbo optičnega pretoka za piksel (3, 2) v sliki $I_1$. Parcialne odvode aproksimirajte z razliko naprej.
I₁
208 25 40 36 231 71 248 108 32 139 244 234 233 244 124 202 161 246 204 245
I₂
167 193 180 210 9 189 8 177 217 100 71 81 238 167 12 242 173 44 25 9
Dogovor predmeta: x je po stolpcu (spreminja se vrstica), y je po vrstici (spreminja se stolpec).
$I_x = I_1(4,2) - I_1(3,2) = 204 - 124 = \mathbf{80}$
$I_y = I_1(3,3) - I_1(3,2) = 202 - 124 = \mathbf{78}$
$I_t = I_2(3,2) - I_1(3,2) = 12 - 124 = \mathbf{-112}$
Enačba $I_x u_x + I_y u_y + I_t = 0$ → $80 u_x + 78 u_y - 112 = 0$
Past: če zamenjaš x in y, dobiš $78 u_x + 80 u_y - 112 = 0$ — in ravno zato je med odgovori več variant z zamenjanimi ali negativnimi koeficienti.
Piksel (i, j) opazujemo skozi 7 slik: 89, 80, 60, 83, 78, 73, 84. Kakšno vrednost bi imelo statično ozadje na tej lokaciji po postopku 2? Prag odstopanja je 10 (testirajte na pogoj ≤).
1) Povprečje vseh: $\dfrac{89+80+60+83+78+73+84}{7} = \dfrac{547}{7} = 78{,}14$
2) Izločimo tiste, kjer je $|x - 78{,}14| > 10$:
| x | 89 | 80 | 60 | 83 | 78 | 73 | 84 |
|---|---|---|---|---|---|---|---|
| odstopanje | 10,86 | 1,86 | 18,14 | 4,86 | 0,14 | 5,14 | 5,86 |
| obdržimo? | ne | da | ne | da | da | da | da |
3) Povprečje preostalih: $\dfrac{80+83+78+73+84}{5} = \dfrac{398}{5} = 79{,}6 \to \mathbf{80}$
Past: odgovor b) 78 dobiš, če uporabiš postopek 1 (povprečje vsega).
Sistem dveh kamer v umerjenih razmerah. $t = [4,\, 69,\, 73]$, $\mathsf{R} = \begin{bmatrix}4&4&3\\4&4&3\\10&2&9\end{bmatrix}$. Določite enačbo epipolarne premice v sliki prve kamere, prirejene pikslu (49, 62) v sliki druge kamere.
1) Protisimetrična matrika:
$[t_\times] = \begin{bmatrix}0 & -73 & 69\\ 73 & 0 & -4\\ -69 & 4 & 0\end{bmatrix}$
2) Osnovna matrika $\mathsf{E} = [t_\times]\mathsf{R}$:
$\mathsf{E} = \begin{bmatrix}398 & -154 & 402\\ 252 & 284 & 183\\ -260 & -260 & -195\end{bmatrix}$
3) $\mathsf{E}\,p' = \mathsf{E}\,[49, 62, 1]^T = [10356,\; 30139,\; -29055] = [a, b, c]$
4) Premica $au + bv + c = 0$ → $v = -\dfrac{a}{b}u - \dfrac{c}{b} = -\dfrac{10356}{30139}u + \dfrac{29055}{30139} = \mathbf{-0{,}34u + 0{,}96}$
Past: odgovor a) ima oba predznaka obrnjena — to dobiš, če pozabiš minus pri $-a/b$ in $-c/b$. Preveri predznake v $[t_\times]$: druga vrstica je $[t_3, 0, -t_1]$.
Piksel leve kamere (272, 230), ujemajoč piksel desne (171, 399). Povprečje korespondenčnih točk: leva (558, 163), desna (666, 443). Skalirni faktor: leva 0,52, desna 0,21. Kako izgleda pripadajoča vrstica? Uporabite ustrezno normalizacijo.
1) Normalizacija — najprej premik, nato skaliranje:
$u = (272 - 558)\cdot0{,}52 = -148{,}72$ $v = (230 - 163)\cdot0{,}52 = 34{,}84$
$u' = (171 - 666)\cdot0{,}21 = -103{,}95$ $v' = (399 - 443)\cdot0{,}21 = -9{,}24$
2) Vrstica $[uu',\; uv',\; u,\; vu',\; vv',\; v,\; u',\; v']$:
| člen | uu′ | uv′ | u | vu′ | vv′ | v | u′ | v′ |
|---|---|---|---|---|---|---|---|---|
| vrednost | 15459,4 | 1374,2 | −148,7 | −3621,6 | −321,9 | 34,8 | −104,0 | −9,2 |
Kako izločiš napačne: f) sploh ni normaliziran (uporablja povprečja kot vrednosti), a) je normaliziran brez skaliranja, c) in e) imata napačen vrstni red operacij.
Tri 3D rekonstrukcije: (488, 535, 104), (414, 508, 174) in (446, 567, 170). Prva navedena je 2× bolj natančna kot ostali dve. Kakšen je rezultat rekonstrukcije s postopkom, ki ima geometrijsko interpretacijo?
»Postopek z geometrijsko interpretacijo« = težišče trikotnika. Prva točka ima utež 2, ostali po 1 → delimo s 4.
$x = \dfrac{2\cdot488 + 414 + 446}{4} = \dfrac{1836}{4} = 459$
$y = \dfrac{2\cdot535 + 508 + 567}{4} = \dfrac{2145}{4} = 536{,}25 \to 536$
$z = \dfrac{2\cdot104 + 174 + 170}{4} = \dfrac{552}{4} = 138$
Past: odgovor f) (449, 537, 149) je natanko navadno povprečje treh točk — torej rezultat, če uteži ne upoštevaš.
Stereo sistem z vzporednima kamerama. Osnovnica 12 cm, goriščna razdalja 50 mm. Konica nosu je na levi sliki na (176, 325), na desni na (176, 308). Piksli so kvadratni, prostorska ločljivost 1400 px/m. Kolikšna je absolutna oddaljenost (v metrih)?
1) Enote: $B = 0{,}12$ m, $f = 0{,}05$ m.
2) Dispariteta: vrstica je pri obeh 176 (kot mora biti pri vzporednih kamerah), razlikuje se stolpec: $d = |308 - 325| = 17$ px.
3) V metre: $d = \dfrac{17}{1400} = 0{,}012143$ m
4) $z = \dfrac{fB}{d} = \dfrac{0{,}05 \cdot 0{,}12}{0{,}012143} = \dfrac{0{,}006}{0{,}012143} = \mathbf{0{,}494}$ m $\to$ 0,49
Past: odgovor e) 0,03 dobiš, če pozabiš pretvoriti disparieto v metre ($0{,}006/17 = 0{,}00035$… oz. drugačna varianta iste napake). Odgovor a) 494,12 pa je isti rezultat v napačnih enotah — to je znak, da je nekje faktor 1000.
Ista vrstica v levi in desni sliki. Piksel v stolpcu 5 leve slike. Kandidata v desni sliki sta stolpca 5 in 3. Kateri se bolje ujema? Ujemanje merimo z evklidsko razdaljo med sivinami v okolici 1×3.
stolpec: 0 1 2 3 4 5 6 7 8 LEVA = 247 228 48 0 181 221 30 10 153 DESNA = 154 132 2 176 241 223 29 90 62
Okolica 1×3 okoli stolpca 5 v levi sliki (stolpci 4–6): [181, 221, 30]
Kandidat 5 (stolpci 4–6 desne): [241, 223, 29]
$d = \sqrt{(181-241)^2 + (221-223)^2 + (30-29)^2} = \sqrt{3600 + 4 + 1} = \sqrt{3605} = \mathbf{60{,}04}$
Kandidat 3 (stolpci 2–4 desne): [2, 176, 241]
$d = \sqrt{(181-2)^2 + (221-176)^2 + (30-241)^2} = \sqrt{32041 + 2025 + 44521} = \sqrt{78587} = \mathbf{280{,}3}$
Manjša razdalja = boljše ujemanje → stolpec 5. Opomba: korenov sploh ni treba računati — dovolj je primerjati 3605 proti 78587.
Vzorce smo zložili v matriko Data (vrstice = vzorci, stolpci = značilnice). Normiramo z nelinearno transformacijo, $r = 1$. Kolikšna je značilnica z indeksom 2 za vzorec z indeksom 4? (Indeksiramo z 0!)
index 0 1 2 3 4 0 6 1 18 5 6 1 20 2 9 12 4 2 14 20 11 10 9 3 8 10 10 7 1 4 2 0 1 13 18 5 15 1 18 19 12 6 13 3 6 12 4
Stolpec 2: [18, 9, 11, 10, 1, 18, 6], iskana vrednost $x^* = 1$ (vrstica 4).
$\mu = \dfrac{18+9+11+10+1+18+6}{7} = \dfrac{73}{7} = 10{,}4286$
$\sigma^2 = \dfrac{1}{7}\sum(x_i - \mu)^2 = \dfrac{225{,}714}{7} = 32{,}245 \;\Rightarrow\; \sigma = 5{,}6785$
Korak 1: $z = \dfrac{x^* - \mu}{r\sigma} = \dfrac{1 - 10{,}4286}{1 \cdot 5{,}6785} = -1{,}6604$
Korak 2: $x = \dfrac{1}{1 + e^{-z}} = \dfrac{1}{1 + e^{1{,}6604}} = \dfrac{1}{6{,}2611} = \mathbf{0{,}160}$
Pasti: varianca se deli z N = 7, ne z 6. Odgovor d) 0,785 je $1/(1+e^{-1{,}66})$ — torej napačen predznak v eksponentu.
Razreda A in B, vsak s tremi vzorci. S postopkom (3, 2) najbližjih sosedov razvrstimo neznan vzorec $x = [9,\, 10,\, 8]$.
A = 11 9 14 B = 5 9 13
7 12 4 17 9 13
19 14 2 11 15 3
| vzorec | razred | d² | d | mesto |
|---|---|---|---|---|
| [7, 12, 4] | A | 24 | 4,899 | 1. |
| [11, 9, 14] | A | 41 | 6,403 | 2. |
| [5, 9, 13] | B | 42 | 6,481 | 3. |
| [11, 15, 3] | B | 54 | 7,348 | 4. |
| [17, 9, 13] | B | 90 | 9,487 | 5. |
| [19, 14, 2] | A | 152 | 12,329 | 6. |
Med $k = 3$ najbližjimi so 2 iz A in 1 iz B. Prag $l = 2$ je dosežen za razred A → vzorec razvrstimo v A.
Prihranek časa: korenov ni treba računati — vrstni red kvadratov razdalj je isti kot vrstni red razdalj.
Razreda A in B. Razvrščamo po pravilu »najbližji sosed«, znanje o razredu je v obliki tipičnega predstavnika. Ocenite zgornjo mejo predikcijske napake z metodo izpusti enega.
A = 10 4 B = 10 20
2 0 4 8
| izpustimo | predstavnik svojega | predstavnik drugega | d svoj | d drugi | razvrsti v |
|---|---|---|---|---|---|
| A₁ = [10, 4] | [2, 0] | [7, 14] | 8,944 | 10,440 | A ✓ |
| A₂ = [2, 0] | [10, 4] | [7, 14] | 8,944 | 14,866 | A ✓ |
| B₁ = [10, 20] | [4, 8] | [6, 2] | 13,416 | 18,439 | B ✓ |
| B₂ = [4, 8] | [10, 20] | [6, 2] | 13,416 | 6,325 | A ✗ |
$\hat{P}_e = \dfrac{1}{4} = \mathbf{25\ \%}$
Ključno: po izpustu vzorca je predstavnik njegovega razreda drugi vzorec (razred ima le dva). Predstavnik drugega razreda ostane povprečje obeh njegovih vzorcev. Če predstavnika ne preračunaš, dobiš 0 % — to je odgovor a).
Razvrščamo v razred A in B z enonevronskim zveznim perceptronom. Začetni razširjen vektor uteži $w = [1{,}7,\, -3{,}1,\, 2{,}3]$, prenosna funkcija sigmoidna, učenje z 1 in 0 označevanjem, stopnja učenja 1. Kolikšen je $\hat{w}$ po učenju (E mora biti blizu 0)?
A = 0 0 B = 0 −1
−1 −1 −1 0
Ne začni računati — najprej nariši točke:
x₂
0 | A ─────── B
| │ │
−1 | B ─────── A
└─────────────── x₁
−1 0
Razred A zaseda diagonalno nasprotni oglišči (0,0) in (−1,−1), razred B pa drugi dve oglišči (0,−1) in (−1,0). To je natanko problem XOR.
Enonevronski perceptron realizira eno hiperravnino — v 2D eno premico. Z eno premico ni mogoče ločiti diagonalno nasprotnih oglišč kvadrata. Napaka $E$ se med učenjem ustavi pri približno 0,5 in nikoli ne doseže 0.
Vredno zapomniti: ta trik ti prihrani 10 minut računanja. Vedno najprej nariši vzorce in preveri linearno ločljivost. Isto vprašanje z isto rešitvijo se pojavi na 2. kolokviju, naloga 9.
Trinevronski dvoplastni zvezni perceptron: $\hat{w}_1 = [0{,}3;\, 0{,}2;\, 0{,}8]$, $\hat{w}_2 = [0{,}2;\, 0{,}4;\, 0{,}3]$, $\hat{w}_3 = [-0{,}1;\, 1{,}4;\, -1{,}8]$. Prenosna funkcija 1. plasti $f(s) = s$, 2. plasti sigmoidna. Označevanje z dvojnim pragom, $a = 0{,}6$, $b = 0{,}3$. Kolikšna je napaka $E = 0{,}5\cdot(\dots)$?
A = 3 4 B = −6 0
1 4 −1 −1
| x | razr. | s₁ = y₁ | s₂ = y₂ | s₃ | y₃ | prispevek |
|---|---|---|---|---|---|---|
| [3, 4] | A | 4,100 | 2,600 | 0,960 | 0,7231 | y₃ ≥ 0,6 → 0 |
| [1, 4] | A | 3,700 | 1,800 | 1,840 | 0,8629 | y₃ ≥ 0,6 → 0 |
| [−6, 0] | B | −0,900 | −2,200 | 2,600 | 0,9309 | (0,3−0,9309)² = 0,39799 |
| [−1, −1] | B | −0,700 | −0,500 | −0,180 | 0,4551 | (0,3−0,4551)² = 0,02406 |
$E = \tfrac{1}{2}(0 + 0 + 0{,}39799 + 0{,}02406) = \tfrac{1}{2}\cdot0{,}42205 = \mathbf{0{,}2110}$
Vrednost 0,211 ni med ponujenimi → pravilen odgovor je »Nič od naštetega«.
Ključno pri dvojnem pragu: vzorca iz A sta že pravilno razvrščena ($y_3 \geq a$), zato ne prispevata k napaki. Če bi ju prišteval po formuli $(t-y)^2$, bi dobil drugačen rezultat — in ravno to so ponujeni napačni odgovori.
SOM z rešetko 4×5. Spreminjamo uteži nevrona na lokaciji (3, 1), trenutni vektor $w = [1{,}3;\, 1{,}7;\, 0{,}4]$. Po vstavljanju $x = [0{,}1;\, 0{,}7;\, 0{,}8]$ je bil zmagovalni nevron na (1, 3). $\epsilon = 1$, $\sigma = 3{,}51$ (konstanten). Kolikšen je vektor uteži po ažuriranju?
1) Razdalja V REŠETKI med nevronoma (3,1) in (1,3):
$d_L^2 = (3-1)^2 + (1-3)^2 = 4 + 4 = \mathbf{8}$
2) Funkcija okolice:
$h = e^{-d_L^2/\sigma^2} = e^{-8/3{,}51^2} = e^{-8/12{,}320} = e^{-0{,}6494} = 0{,}52239$
$g = \epsilon \cdot h = 1 \cdot 0{,}52239 = 0{,}52239$
3) Pravilo Hebba: $w_{\text{nov}} = w + g(x - w)$
$x - w = [0{,}1-1{,}3;\; 0{,}7-1{,}7;\; 0{,}8-0{,}4] = [-1{,}2;\; -1{,}0;\; 0{,}4]$
$g(x-w) = [-0{,}6269;\; -0{,}5224;\; 0{,}2090]$
$w_{\text{nov}} = [1{,}3-0{,}6269;\; 1{,}7-0{,}5224;\; 0{,}4+0{,}2090] = \mathbf{[0{,}673;\; 1{,}178;\; 0{,}609]}$
Pasti: odgovor d) je kar vektor $x$ (to bi dobil pri $g = 1$, torej če bi mislil, da je to zmagovalec). Odgovor c) je nespremenjeni $w$ (če bi mislil, da nezmagovalcev ne ažuriramo). Razdalja se meri v rešetki, ne med vektorjema uteži.
SOM z rešetko 2×2. Uteži: $w_{00} = [0{,}0;\, 0{,}9;\, 0{,}9]$, $w_{01} = [0{,}5;\, 0{,}2;\, 0{,}7]$, $w_{10} = [0{,}7;\, -0{,}1;\, -0{,}6]$, $w_{11} = [0{,}3;\, 1{,}9;\, -1{,}5]$. Prenosna funkcija je za vse nevrone sigmoidna. Vstavimo vzorec $x = [1{,}7;\, -1{,}8;\, -0{,}8]$. Kateri nevron je zmagovalni?
Prenosno funkcijo ignoriraj — v ekvivalentnem algoritmu izhod nevrona nima nobenega pomena. Šteje samo razdalja do vhoda.
| nevron | w | d² | d |
|---|---|---|---|
| (0, 0) | [0,0; 0,9; 0,9] | 13,07 | 3,615 |
| (0, 1) | [0,5; 0,2; 0,7] | 7,69 | 2,773 |
| (1, 0) | [0,7; −0,1; −0,6] | 3,93 | 1,982 |
| (1, 1) | [0,3; 1,9; −1,5] | 16,14 | 4,017 |
Primer izračuna: $d^2(x, w_{10}) = (1{,}7-0{,}7)^2 + (-1{,}8+0{,}1)^2 + (-0{,}8+0{,}6)^2 = 1 + 2{,}89 + 0{,}04 = 3{,}93$ — najmanjša → zmaga (1, 0). Korenov ni treba računati.
Vseh 12 nalog je istega tipa kot naloge 14–25 prvega izpita, le številke so druge. Če znaš tiste, znaš tudi te — in obratno.
$t = [37,\, 22,\, 22]$, $\mathsf{R} = \begin{bmatrix}5&1&1\\4&8&9\\7&7&2\end{bmatrix}$. Epipolarna premica v sliki prve kamere za piksel (121, 109) v drugi sliki.
$[t_\times] = \begin{bmatrix}0 & -22 & 22\\ 22 & 0 & -37\\ -22 & 37 & 0\end{bmatrix}$
$\mathsf{E} = [t_\times]\mathsf{R} = \begin{bmatrix}66 & -22 & -154\\ -149 & -237 & -52\\ 38 & 274 & 311\end{bmatrix}$
$\mathsf{E}p' = \mathsf{E}[121, 109, 1]^T = [5434,\; -43914,\; 34775]$
$v = -\dfrac{5434}{-43914}u - \dfrac{34775}{-43914} = \mathbf{0{,}124u + 0{,}792}$
Past: odgovor f) ima pravilni naklon, a napačen prosti člen — nastane, če pri $-c/b$ pozabiš na predznak $b$ (ki je tu negativen).
Leva (155, 493), desna (269, 560). Povprečji: leva (756, 572), desna (679, 959). Skalirna faktorja: 0,93 in 0,73.
$u = (155 - 756)\cdot0{,}93 = -558{,}93$ $v = (493 - 572)\cdot0{,}93 = -73{,}47$
$u' = (269 - 679)\cdot0{,}73 = -299{,}30$ $v' = (560 - 959)\cdot0{,}73 = -291{,}27$
$[uu',\, uv',\, u,\, vu',\, vv',\, v,\, u',\, v']$
$= [167287{,}7;\; 162799{,}5;\; -558{,}9;\; 21989{,}6;\; 21399{,}6;\; -73{,}5;\; -299{,}3;\; -291{,}3]$
Hitro izločanje: d) ni normaliziran, b) je normaliziran brez skaliranja (opazi $-601 = 155-756$). Preveri tretji člen: mora biti enak $u$ = −558,9.
Točke (457, 563, 188) — 2× natančnejša, (466, 588, 147) in (414, 507, 171).
$x = \dfrac{2\cdot457 + 466 + 414}{4} = \dfrac{1794}{4} = 448{,}5 \to 449$
$y = \dfrac{2\cdot563 + 588 + 507}{4} = \dfrac{2221}{4} = 555{,}25 \to 555$
$z = \dfrac{2\cdot188 + 147 + 171}{4} = \dfrac{694}{4} = 173{,}5 \to 174$
Zaokroževanje glede na 0,5: tako 448,5 kot 173,5 gresta navzgor — to je izrecno v navodilih izpita. Odgovor e) (446, 553, 169) je navadno povprečje treh točk.
Osnovnica 12 cm, goriščna razdalja 50 mm. Leva (395, 690), desna (395, 715). Ločljivost 1400 px/m.
$d = |715 - 690| = 25$ px $= \dfrac{25}{1400} = 0{,}017857$ m
$z = \dfrac{0{,}05 \cdot 0{,}12}{0{,}017857} = \dfrac{0{,}006}{0{,}017857} = \mathbf{0{,}336}$ m $\to$ 0,34
Odgovora d) 336,00 in e) 33600,00 sta ista številka z zamaknjeno decimalno vejico — znak za napako pri enotah.
Piksel v stolpcu 6 leve slike, kandidata sta stolpca 5 in 4. Okolica 1×3.
stolpec: 0 1 2 3 4 5 6 7 8 LEVA = 159 88 85 147 220 51 171 230 51 DESNA = 76 127 227 128 71 136 146 105 4
Okolica stolpca 6 v levi sliki (stolpci 5–7): [51, 171, 230]
Kandidat 5 (stolpci 4–6): [71, 136, 146]
$d^2 = (51-71)^2 + (171-136)^2 + (230-146)^2 = 400 + 1225 + 7056 = \mathbf{8681}$ → $d = 93{,}2$
Kandidat 4 (stolpci 3–5): [128, 71, 136]
$d^2 = (51-128)^2 + (171-71)^2 + (230-136)^2 = 5929 + 10000 + 8836 = \mathbf{24765}$ → $d = 157{,}4$
8681 < 24765 → bolje se ujema stolpec 5.
Nelinearna transformacija, $r = 1$. Značilnica z indeksom 2 za vzorec z indeksom 4.
index 0 1 2 3 4 0 21 15 30 14 4 1 2 3 37 30 18 2 34 18 21 4 26 3 18 2 10 24 5 4 22 30 10 17 18 5 23 2 30 29 26 6 27 38 40 10 33
Stolpec 2: [30, 37, 21, 10, 10, 30, 40], iskana vrednost $x^* = 10$.
$\mu = \dfrac{178}{7} = 25{,}4286$ $\sigma^2 = \dfrac{883{,}714}{7} = 126{,}245 \;\Rightarrow\; \sigma = 11{,}2359$
$z = \dfrac{10 - 25{,}4286}{11{,}2359} = -1{,}3732$
$x = \dfrac{1}{1 + e^{1{,}3732}} = \dfrac{1}{4{,}9475} = \mathbf{0{,}202}$
Odgovor f) 0,806 je $1/(1+e^{-1{,}3732})$ — napačen predznak. Opazi, da mora biti rezultat < 0,5, ker je $x^*$ pod povprečjem.
$x = [9,\, 8,\, 8]$.
A = 3 13 17 B = 8 7 4
18 14 10 16 19 20
13 15 3 3 16 1
| vzorec | razred | d² | d | mesto |
|---|---|---|---|---|
| [8, 7, 4] | B | 18 | 4,243 | 1. |
| [13, 15, 3] | A | 90 | 9,487 | 2. |
| [18, 14, 10] | A | 121 | 11,000 | 3. |
| [3, 13, 17] | A | 142 | 11,916 | 4. |
| [3, 16, 1] | B | 149 | 12,207 | 5. |
| [16, 19, 20] | B | 314 | 17,720 | 6. |
Med $k = 3$ najbližjimi: 2 iz A, 1 iz B → prag $l = 2$ dosežen za A. Zanimivo: najbližji sosed je iz B, a to ni odločilno — pravilo (k, l) gleda večino med k, ne najbližjega.
A = 6 8 B = 0 20
2 2 18 8
| izpustimo | svoj predstavnik | drugi predstavnik | d svoj | d drugi | razvrsti v |
|---|---|---|---|---|---|
| A₁ = [6, 8] | [2, 2] | [9, 14] | 7,211 | 6,708 | B ✗ |
| A₂ = [2, 2] | [6, 8] | [9, 14] | 7,211 | 13,892 | A ✓ |
| B₁ = [0, 20] | [18, 8] | [4, 5] | 21,633 | 15,524 | A ✗ |
| B₂ = [18, 8] | [0, 20] | [4, 5] | 21,633 | 14,318 | A ✗ |
3 napake od 4 → $\hat{P}_e = \mathbf{75\ \%}$. Razred B ima vzorca zelo narazen ([0,20] in [18,8]), zato je vsak od njiju po izpustu daleč od »predstavnika« svojega razreda — to je razlog za tako visoko napako.
Začetni $w = [1{,}2;\, 2{,}0;\, -0{,}2]$, sigmoidna prenosna funkcija, 1 in 0 označevanje, $\epsilon = 1$.
A = 0 0 B = 0 1
1 1 1 0
Razred A: (0,0) in (1,1). Razred B: (0,1) in (1,0). Spet XOR — diagonalno nasprotni oglišči v istem razredu.
Enonevronski perceptron da eno premico, ki tega ne more ločiti. Enako kot naloga 22 prvega izpita. Če na izpitu vidiš štiri vzorce v ogliščih kvadrata (ali enote), vedno najprej nariši — v pol minute veš odgovor.
$\hat{w}_1 = [0{,}3;\, 0{,}2;\, 1{,}0]$, $\hat{w}_2 = [0{,}7;\, 0{,}7;\, 0{,}7]$, $\hat{w}_3 = [0{,}5;\, 0{,}5;\, 0{,}0]$. 1. plast $f(s) = s$, 2. plast sigmoidna. Dvojni prag, $a = 0{,}7$, $b = 0{,}3$.
A = 2 3 B = −3 −6
3 2 −1 −3
Opazi: $w_{32} = 0$, torej $y_2$ sploh ne vpliva na izhod. $s_3 = 0{,}5 + 0{,}5\,y_1$.
| x | razr. | s₁ = y₁ | s₃ | y₃ | prispevek |
|---|---|---|---|---|---|
| [2, 3] | A | 3,7 | 2,35 | 0,9130 | y₃ ≥ 0,7 → 0 |
| [3, 2] | A | 2,9 | 1,95 | 0,8755 | y₃ ≥ 0,7 → 0 |
| [−3, −6] | B | −6,3 | −2,65 | 0,0659 | y₃ ≤ 0,3 → 0 |
| [−1, −3] | B | −2,9 | −0,95 | 0,2790 | y₃ ≤ 0,3 → 0 |
Vsi štirje vzorci so že pravilno razvrščeni → $E = \mathbf{0}$. To je bistvo dvojnega praga: perceptron je »dovolj dobro« naučen in učenje se za te vzorce ustavi. Primerjaj z nalogo 23 prvega izpita, kjer dva vzorca prispevata.
Rešetka 4×5, nevron (3,1), $w = [-0{,}6;\, -0{,}3;\, 0{,}5]$, $x = [0{,}4;\, 0{,}1;\, 0{,}9]$, zmagovalec (1,3), $\epsilon = 1$, $\sigma = 2{,}18$.
$d_L^2 = (3-1)^2 + (1-3)^2 = 8$ (ista lokacija kot pri T1.24, a drugačen σ)
$h = e^{-8/2{,}18^2} = e^{-8/4{,}7524} = e^{-1{,}6834} = 0{,}18575$, $g = 0{,}18575$
$x - w = [1{,}0;\; 0{,}4;\; 0{,}4]$ → $g(x-w) = [0{,}1858;\; 0{,}0743;\; 0{,}0743]$
$w_{\text{nov}} = [-0{,}6+0{,}1858;\; -0{,}3+0{,}0743;\; 0{,}5+0{,}0743] = \mathbf{[-0{,}414;\; -0{,}226;\; 0{,}574}]$
Opazi: pri manjšem σ (2,18 proti 3,51) je $h$ precej manjši (0,186 proti 0,522), zato se uteži premaknejo mnogo manj. Točno to je namen zmanjševanja σ proti koncu učenja.
Rešetka 2×2. $w_{00} = [0{,}9;\, 0{,}7;\, 1{,}0]$, $w_{01} = [1{,}0;\, 0{,}5;\, 0{,}9]$, $w_{10} = [-0{,}1;\, 0{,}5;\, -1{,}6]$, $w_{11} = [-1{,}2;\, 0{,}8;\, -0{,}4]$. Prenosna funkcija je $f(s) = 7s + 2$. Vhod $x = [-0{,}4;\, 0{,}4;\, -2{,}6]$.
Prenosna funkcija f(s) = 7s + 2 je popolno zavajanje — v ekvivalentnem algoritmu izhod nevrona nima nikakršnega pomena. Predavanja to izrecno povedo.
| nevron | w | d² | d |
|---|---|---|---|
| (0, 0) | [0,9; 0,7; 1,0] | 14,74 | 3,839 |
| (0, 1) | [1,0; 0,5; 0,9] | 14,22 | 3,771 |
| (1, 0) | [−0,1; 0,5; −1,6] | 1,10 | 1,049 |
| (1, 1) | [−1,2; 0,8; −0,4] | 5,64 | 2,375 |
$d^2(x, w_{10}) = (-0{,}4+0{,}1)^2 + (0{,}4-0{,}5)^2 + (-2{,}6+1{,}6)^2 = 0{,}09 + 0{,}01 + 1 = 1{,}10$ — najmanjša → zmaga (1, 0).