From 009ac7e3383602c1faeb6dacbcbc2ee83eb3c600 Mon Sep 17 00:00:00 2001 From: Francesco Mecca Date: Wed, 1 Jul 2020 19:04:07 +0200 Subject: [PATCH] aa --- ...0aebebe540ea3c260f67e2a3efea40555b5304.png | Bin 0 -> 185 bytes ...111ee3f04bed792b496c613a0dba3edf7f77c5.png | Bin 0 -> 662 bytes ...d47ec25a0e2d20c996460948266164368f6aa1.png | Bin 0 -> 224 bytes ...d15e1ac5806269a4b64985d4443ab7792d83aa.png | Bin 0 -> 543 bytes ...c62399a4819c1004baba085ef0df7703e51d49.png | Bin 0 -> 162 bytes ...ea2cc0b571cf8184fee44e817611bff7ac2753.png | Bin 0 -> 519 bytes ...ca34c47825568fd9558fd9d1db191e9a55e61e.png | Bin 0 -> 604 bytes .../apprendimento_automatico/preparazione.org | 232 ++++++++++++++++++ todo.org | 12 +- 9 files changed, 240 insertions(+), 4 deletions(-) create mode 100644 anno3/apprendimento_automatico/ltximg/org-ltximg_1f0aebebe540ea3c260f67e2a3efea40555b5304.png create mode 100644 anno3/apprendimento_automatico/ltximg/org-ltximg_2e111ee3f04bed792b496c613a0dba3edf7f77c5.png create mode 100644 anno3/apprendimento_automatico/ltximg/org-ltximg_30d47ec25a0e2d20c996460948266164368f6aa1.png create mode 100644 anno3/apprendimento_automatico/ltximg/org-ltximg_53d15e1ac5806269a4b64985d4443ab7792d83aa.png create mode 100644 anno3/apprendimento_automatico/ltximg/org-ltximg_7dc62399a4819c1004baba085ef0df7703e51d49.png create mode 100644 anno3/apprendimento_automatico/ltximg/org-ltximg_d2ea2cc0b571cf8184fee44e817611bff7ac2753.png create mode 100644 anno3/apprendimento_automatico/ltximg/org-ltximg_e3ca34c47825568fd9558fd9d1db191e9a55e61e.png diff --git a/anno3/apprendimento_automatico/ltximg/org-ltximg_1f0aebebe540ea3c260f67e2a3efea40555b5304.png b/anno3/apprendimento_automatico/ltximg/org-ltximg_1f0aebebe540ea3c260f67e2a3efea40555b5304.png new file mode 100644 index 0000000000000000000000000000000000000000..8f452b94ee8f1529c405e49896841fcb5c1ff54f GIT binary patch literal 185 zcmeAS@N?(olHy`uVBq!ia0vp^AT}opGm!k*u|NSxsR#IkxB}@n@4x8j8}#;1l9yNT z^AE_)FN}*%Jahi?-u;L9`1$Sa9qa0w!rC0~0+n(WctjR6Fz_7#VaBQ2e9}Nc3r`ov z5DwYogoJ=J2Bv8ZECQ@dYuMiK@$xWkwh)gnEbxsu7;xagybUuI8yeLWdXF|Xs+wBN aVr1Ce%5lqkZ)y+F3q5eKR-dt&(kh1FpZCrPESzX-{hU2qh4QOPMx?=00009 za7bBm000ie000ie0hKEb8vpScceGZjnOd;GCV^ znR_M{hk3=m-}~O1x3h0&fD2l=f58Un^39R|X~H>K6-C$};n2t!DV5UMBjM0^rpdhz zL$4%-s>#9gPzlZ{6H<~4xEMs<04e4BX3W`o9~?BB&eIW?Cga!q(qn9sayKG@MWZt2 zE^KPGJ87Gg*RTZ~+hPSB8W^tSz!>lMH1}p~lVXSaaHOeC{UHqu&*v~0Y;aRUh)sgc5kk{|R*n#~Y2t zEu}|OjNNQS--=N;Z}LyK;{O0@q9ESs^aR#WvV~(y$@OXgXR(%?z*CJSuAH;WKm#l4 zjRN>uNY|b^EwYo(O1T8VWyRl3v(|3x`<4|vL?uBnWOJ?8cmYg%bxhj)8@SD9ZdeUg zp+1gS%+(~V&5w##-{B_Z!#Kht;N_=Kjn)`jirVcMl~`iOXqjjENU3_P0}hA^@b}JD zCLOssC%O>olULX4IUDy|LmBR39|frc@>o{vg+u^moent(St`5V0T3skcU@*|~A?H$*w-^9ny-`hV)Pv5}LKOm~jst2f!v%n*=n1O-s2naJy)#j513MP5FIEHY@ zCMP5$1e9@bFa;?rcor~$G10Ifi&e#8=AC1gMHcu-sB$nf83+oTJFVdQ&MBb@0LV>4_y7O^ literal 0 HcmV?d00001 diff --git a/anno3/apprendimento_automatico/ltximg/org-ltximg_53d15e1ac5806269a4b64985d4443ab7792d83aa.png b/anno3/apprendimento_automatico/ltximg/org-ltximg_53d15e1ac5806269a4b64985d4443ab7792d83aa.png new file mode 100644 index 0000000000000000000000000000000000000000..41a2a4d9fcefe12d234e8c71b588f1642f1be777 GIT binary patch literal 543 zcmV+)0^t3LP)+p>c&2&B0nMNRtuUwf7$dQ5Dc zu~QzLECdz^Li9s%i~AhSu>}2W{=&lZ1)T`V^hMAMms(wnl#Z8nocvLZGavaoFd7HP z3L70$IGW>z=cD!q=WDw3+ovPCq!T3}=R=Gka_OACWl^L^_OK@-BCb)$3w+PQxfIZv zXTiMEN)^Xv&IyE1u%fGrk!RNwp@5T-R4K*DvOKeGni{?YL%hlDZ)X=Gr~;f zso-S9{pcRdBb&{}qX=%)(Qug@g8B{P1|(rwJf8i!MfL<*uo2(p hc;is_#v8-G>JQ>_3`#n0lk)%o002ovPDHLkV1mBk^gsXr literal 0 HcmV?d00001 diff --git a/anno3/apprendimento_automatico/ltximg/org-ltximg_7dc62399a4819c1004baba085ef0df7703e51d49.png b/anno3/apprendimento_automatico/ltximg/org-ltximg_7dc62399a4819c1004baba085ef0df7703e51d49.png new file mode 100644 index 0000000000000000000000000000000000000000..87be73ec87a5b9bf4239aed015cc3701bc3691d6 GIT binary patch literal 162 zcmeAS@N?(olHy`uVBq!ia0vp^Y(UJ;!VDyD?o+%6q|^g^LR^9LoA+PVtly-kZ!mZM zVn6?YxcJ1n`X+gKh2H*2eEj^m`GxlOjtjoOnhI3PS>O>_%)r2R1cVu?j}WTLTyw*IE5UEw-rJk0_v^0NIO=isSK|V zsSiM+2uE7in2a^EFsg2jR);a9qY*|R(X&}7o|2p6kR%ai^lj#&)${K|`sSddd7v== zF6zfl3w8i>p+ivz zEzeWNvJ5SZi-yf}KQqtfpuA0MF42}H&lI?ND*dD__8!h$kvc@4DPV3MNn*5XGqlM+ z!xKAWIN}D*KJ)?1m`Rd^C+&7Y?>}@E)gf-;;I%RQ66clolQ@nTtj(rPVd(DVeockb z(_Y~>hzmPEe)MZ9Yy)%iux{JT95UuVBq(qsXtlWaYOeFo?ibSsYc7#r{2%}T002ov JPDHLkV1j?(;JW|- literal 0 HcmV?d00001 diff --git a/anno3/apprendimento_automatico/ltximg/org-ltximg_e3ca34c47825568fd9558fd9d1db191e9a55e61e.png b/anno3/apprendimento_automatico/ltximg/org-ltximg_e3ca34c47825568fd9558fd9d1db191e9a55e61e.png new file mode 100644 index 0000000000000000000000000000000000000000..91f6edf0cfd5680b7ae4bfa047ac7d90885e167d GIT binary patch literal 604 zcmV-i0;BzjP)U$0000pP)t-s0002& z@AM824_;qket&{4FEBqpL5+`+PESzX-{c=3Agr&lou8x3&(m#halOC8hKP#EFjdw7 z000SaNLh0L01m_e01m_fl`9S#0005cNklvHQL420K!ghFh5-v4R4;^HRp zOr4%~rut)pwBkbufWNe$mdalO0A{fK8wet(-_3JqYJ8FEBh%A>fv@AK6-Dy@kd`%| zZYea6Jm#9Q^E)-T&zT>6k94>brFH-m`>HlmQ-7xwW;)jChByc=HZ?R>U^ z+tY>RqlF!T342sb&HAmO$Cv7w@h()lNLIWx9R)tI5#I+VCzQoneU(o;5LA%6FV=Q{ z9Pq{H@r`!Pco**ECRU9acn%bCf;?VJ^Z#e3DZ)R$ZBm#l!5_DYpvuxMt@er6fonZ9 z%p^&Q$a^z2T$d|S=Pgp1AajpC5i%V6FQ}Y3QjSZ^#9KtUE0000 0 +| ĉ(x) = 0 se xᵀŵ - t = 0 +| ĉ(x) = -1 se xᵀŵ - t < 0 +Ovvero si rappresenta la classe positiva come 1 e la negativa come -1 +t rappresenta gli intercepts. +** SVM +Hyperplane: +| y = ax + b +| y -ax -b = 0 +| wᵀx = 0 +- w = (-b -a 1)ᵀ *x* = (1 x y)ᵀ +- Functional margins: soluzioni che non fanno errori +- Geometric margins: soluzioni che massimizzano la distanza fra i piu` + vicini punti di classe opposta +*** Margine funzionale +Valore dell'hyperplane al punto xᵢ: +| f(xᵢ) = w·xᵢ-t +possiamo usare f(xᵢ)>0 per discriminare fra classe positiva/negativa +- Functional margin: + | μ(xᵢ) = yᵢ(w·xᵢ-t) = yᵢf(xᵢ) + se l'esempio e` ben classificato: μ(xᵢ) > 0 +*** Support Vectors +Possiamo richiedere che ogni istanza nel dataset soddisfi: +| yᵢ(w·xᵢ-t) ≥ 1 +Istanze nel decision boundary (chiamate ~support vectors~): +| yᵢ(w·xᵢ-t) = 1 +Margine geometrico: +(x₊-x₋)·$\frac{w}{\Vert{w}\Vert}$ +*** TODO (w₀,w₁) ortogonali +*** Ottimizzazione: +Margin size: +| μ = (x₊-x₋)·w/‖w‖ +| x₊·w-t = 1 -> x₊·w = 1+t +| -(x₋·w-t) = 1 -> x₋·w = t-1 +| $\mu = \frac{1+t-(t-1)}{\Vert{w}\Vert} = \frac{2}{\Vert{w}\Vert}$ +μ va minimizzata, il che significa massimizzare ‖w‖ +| $minimize_{w,t} \frac{1}{2}\Vert{w}\Vert^{2}$ +| yᵢ(w·xᵢ-t)≥1; 0≤i≤n +minimizzaₓ: f₀(x) +soggetto a: fᵢ(x) ≤ 0 i = 1, ..., m + gᵢ(x) = 0 i = 1, ..., p +Formulazione duale di Lagrange: +| g(α, υ) = infₓ ⋀(x,α,υ) = infₓ(f₀(x) + ∑₁ᵐαᵢfᵢ(x) + ∑₁ᵖυᵢgᵢ(x)) +Duality: forma organizzata per per formare bound non triviali in un +problema di ottimizzazione +In problemi convessi il bound e` solitamente ~strict~ e massimizzare +il bound porta alla stessa soluzione che minimizzare la funzione +originale: ~strong duality~. +KKT conditions needs to hold for strong duality. +TODO: Vedi dimostrazione slides + +** Kernels +Trick usato per adattare degli algoritmi lineari a ipotesi non +lineari. +Idea: linear decision surface su uno spazio trasformato puo` +corrispondere ad una superficie non lineare sullo spazio originale. +Esempio: +| ϕ(x) = (x₁², sqrt(2)x₁x₂, x₂², c) +| ĉ(x) = sign(w·x-t) +| ĉ(x) = sign(K(w,x)-t) = sign(ϕ(w)·ϕ(x)-t) + +Una kernel function K: V×V→R per la quale esiste un mapping ϕ:V→F, F +spazio di Hilbert, tale che: +K(x,y) = <ϕ(x), ϕ(y)> +Ovvero una kernel function calcola l'inner product di x e y dopo +averli mappati su un nuovo spazio di Hilbert (possibilmente highly +dimensional) + +Restituiscono un intuizione della similarita` (proporzionalmente) +**** TODO Mercer condition +**** Inner product +generalizzazione del dot product su piu` spazi. +| Simmetrico: = +| lineare sul primo argomento: = a + b +| definito positivamente: ≥0; = 0 ⇔ x = 0 +Comodi perche`: +- linear classifier possono lavorare su problemi non lineari +- similarity function in highly dim. space senza calcolare i feature + vectors +- composizione, nuovi kernel da vecchi + +**** Kernel importanti +Polinomiale: +K(x,y) = (x·y)ᵈ or K(x,y) = (x·y+1)ᵈ +- d = 1 → identity +- d = 2 → quadratic +- feature space esponenziale in d + +Gaussian Kernel: +$K(x,y) = exp(-\frac{\Vert{x-y}\Vert^2}{2\sigma}$ +σ e` deciso tramite cross validation su un altro set indipendente +il feature space ha dimensionalita` infinita. + * Meo +** Concept learning +Assunto base: ogni ipotesi che approssima bene la target function +sugli esempi di training, approssimera` bene anche la target function +con esempi mai visti. +Inoltre D e` consistente e senza rumori ed esiste un'ipotesi h che +descrive il target concept c. +Un'ipotesi h e` una congiunzione di constraint sugli attributi. +Il numero delle ipotesi e` esponenzialmente largo sul numero delle +features: +| {codominio funzione}^{n distinte istanze} +- Ipotesi piu` generale: + siano hⱼ, hₖ due funzioni booleane (ipotesi) definite su X. + Si dice che hⱼ e` almeno generale quanto hₖ, scritto hⱼ≥hₖ iff + | ∀x∈X: hₖ(x) = 1 → hⱼ(x) = 1 + La relazione ≥ impone un ordine parziale (rifl, trans, antisimm). +- Version Space: + Si chiama version space il set delle ipotesi consistenti con il dataset. +*** Algoritmo Find-S +#+BEGIN_SRC +h ← most specific hyp. in H +foreach x∈X: + foreach aⱼ in h: (attribute constraint) + if h(x)⊧aⱼ: + continue + else: + h ← next more general hyp that satisfies aⱼ +output h +#+END_SRC +Advantages: +- Hyp. space defined through conjunction of constraints +- will output most specific hyp. that is consistent +- will be consistent with negative examples as well +Svantaggi: +- non si sa se il learner converge al target concept (non sa se e` + l'unica ipotesi valida) +- non sa se il training data e` consistente: ignora esempi negativi +*** Version Space +Definiamo il Version Space come: +| VSₕ_D = {h∈H|Consistent(h,D)} +| Consistent(h,D) = ∀∈D: h(x) = c(x) +General and specific boundary of VS: set of maximally g/s members +| VSₕ_D = {h∈H| ∃s∈S, ∃g∈G: g≥h≥s} +**** List then Eliminate +#+BEGIN_SRC +Version Space ← list of every hyp. in H +foreach in X: + foreach h in Version Space: + if h(x) ≠ c(x) : remove h from VS +output VS +#+END_SRC +**** Candidate Elimination +#+BEGIN_SRC +G ← max. general hyp. +S ← max. specific hyp. +foreach d= ∈ D: + if d is ⊕: + remove from G any inconsistent hyp. + foreach inconsistent hyp. s in S: + remove s from S + add to S all minimal generalizations h of s: + - h consistent with d + - some members of G is more general than h + - S is a summary of all members cons. with positive examples + remove from S any hyp. more general than other hyp. in S + if d is ⊖: + remove from S any inconsistent hyp. + foreach inconsistent hyp. g in G: + remove g from G + add to G all minimal generalizations h of g: + - h consistent with d + - some members of S is more general than h + - G is a summary of all members cons. with negative examples + remove from G any hyp. more general than other hyp. in G +#+END_SRC +- converge allo stesso VS qualsiasi l'ordine iniziale di D +- puo` convergere a VS diversi se non ci sono abbastanza membri nel + training set +**** Inductive Leap +Assumiamo che H contenga il target concept c. Ovvero che c puo` essere +descritto tramite una congiunzione di literals. +Unbiased learner: H esprime ogni concetto imparabile, ovver +Powerset(X). +S e G sono i due insiemi ⊕ ⊖ (con congiunzioni logiche, vedi slides). +Futile perche` un learner che non fa assunzioni a priori +sull'identita` del target concept non ha basi per classificare istanze +mai viste. +- Bias induttivo: + | ∀xᵢ∈X: (B ∧ D_c ∧ xᵢ) ⊧ L(xᵢ,D_c) + L(xᵢ, D_c) e` la classificazione assegnata dal concept learning + algorithm L dopo il training su D_c + Permette di trasformare un sistema induttivo in deduttivo +** TODO Path Through hyp. space +Vedi che vuole sapere +** TODO Trees +** Rules +Ordered rules are a chain of /if-then-else/. +#+BEGIN_SRC +1. Keep growing the rule antecedent by literal conjunction (high purity) +2. Select the label as the rule consequent +3. Delete the instance segment from the data, restart from 1 +#+END_SRC +La purezza misura i figli negli alberi, in rule learning la purezza e` +di un solo figlio il literal e` true. Si possono usare le purity +measure degli alberi ma senza bisogno di fare la media. diff --git a/todo.org b/todo.org index c010bfc..d9d74be 100644 --- a/todo.org +++ b/todo.org @@ -1,4 +1,4 @@ -* Apprendimento Automatico [2/4] +* Apprendimento Automatico [3/5] - [X] Scrivile per date di esame - [X] Richiedi date esame - [ ] Slides [0/5] @@ -22,10 +22,14 @@ + [ ] Sum of squared error + [ ] Silhouttes + [ ] Rivedi kernelization -- [-] Esercizi [1/3] +- [ ] Esposito [0/3] + + [ ] (w_0,w_1) ortogonale all'iperpiano + + [ ] dimostrazione dualita` grangiana + + [ ] Mercer condition +- [X] Esercizi [3/3] - [X] es1: perche` min_impurity decrease - - [ ] chiedi a Galla`, Marco e Naz quali sono tutti gli es - - [ ] linear models.zip? + - [X] chiedi a Galla`, Marco e Naz quali sono tutti gli es + - [X] linear models.zip? * Tesi [18/33] - [X] Rivedere inference rules di Gabriel e aggiustarle con le mie