From 7921456d7d2b1fb8cd2d4a4386dc88b56b02ae92 Mon Sep 17 00:00:00 2001 From: Francesco Mecca Date: Wed, 8 Jul 2020 17:48:22 +0200 Subject: [PATCH] ripeti AA --- ...7bd3e46d275c35d7eed76d72ba8c5ef3b78801.png | Bin 0 -> 790 bytes ...e1ea0aa3ebbd6c0df33c1794b3738079adcdfd.png | Bin 0 -> 1215 bytes .../apprendimento_automatico/preparazione.org | 77 ++++++++++++++++-- todo.org | 7 +- 4 files changed, 76 insertions(+), 8 deletions(-) create mode 100644 anno3/apprendimento_automatico/ltximg/org-ltximg_067bd3e46d275c35d7eed76d72ba8c5ef3b78801.png create mode 100644 anno3/apprendimento_automatico/ltximg/org-ltximg_a4e1ea0aa3ebbd6c0df33c1794b3738079adcdfd.png diff --git a/anno3/apprendimento_automatico/ltximg/org-ltximg_067bd3e46d275c35d7eed76d72ba8c5ef3b78801.png b/anno3/apprendimento_automatico/ltximg/org-ltximg_067bd3e46d275c35d7eed76d72ba8c5ef3b78801.png new file mode 100644 index 0000000000000000000000000000000000000000..add44c82b048c761fdd60b3fb92ecf87ab49a2ea GIT binary patch literal 790 zcmV+x1L^#UP)T0{{R3n`%P50000mP)t-s0002& z@AO_@VNOp_KR-b(FED<8f^BbcA0Hsy-{hU2qm7S}%+J#f4-c%bvc12<8E?e600009 za7bBm000ie000ie0hKEb8vpFsgygBrgWGdkU@I|1 zUweU{pt|#iA^pwABCxo93c+P=+e;+OwVsjJQF0W|Fnv{8wtRyzL|}3I6oShA0H!-(>b+$Dt>jFCSaP}7TAi0_K|LgZ`dWJ zor69&kHPI3Ba_p~(}_a<$+(J3FdlkWtSVL-?WH5iV})|R>0|V0N@sriobM?M*7&29 zB?Xi{TCPnZ%aYQW+de0psg`&x$NqKNHMUJ&#$%n*ncF@?!mNFN7U6XMd-I0>1?jD& U49AkDCjbBd07*qoM6N<$f_vX`Hvj+t literal 0 HcmV?d00001 diff --git a/anno3/apprendimento_automatico/ltximg/org-ltximg_a4e1ea0aa3ebbd6c0df33c1794b3738079adcdfd.png b/anno3/apprendimento_automatico/ltximg/org-ltximg_a4e1ea0aa3ebbd6c0df33c1794b3738079adcdfd.png new file mode 100644 index 0000000000000000000000000000000000000000..9bbf0e6ac1d8cb2c220416a6efb5af5fc27dbab5 GIT binary patch literal 1215 zcmV;w1VHfT$U8K%xf)C!m6^u#K?b5)2DDcz7j8!pp&9X|SpAxfek@ zZ+(Gguv4{P!;yRa8)y!tq@LJz$ytr6a_%5*7p}6E7sHBU_^qMc!3K=;Z#)k>t;jTz zUErw(498AMJ%@D&XQLwKPQnIg_%(kXaNlFsxN!(rFwTWTjz6pjHIe~vKF&EIsTc4d zgkx2~)Ds=m%VG(tWFefT72U(Wbp2@rI2^Y)8<$B?l_)Y*k%YiPkaHBreRj>)9H$)P zU0MD<#X;*;A0PWYcvoJpy`LPEYer8M=2&MB^;e|pn`~Gdw>Vphw~$vAGZF! zj&k4)Sqf*yD&SjA!S&&U^^Q!z-s7##9Z|(X@5e-5(mCJy1HSteHQY$rxjA4%@v34* z61rz`x|4B~g{xmvD;$}^Ln~NW3+#&z?{5F~=X1J!@Z?DY-{%IbMX(q7zvt-jZo+?O z$Vz5q+P8F!YbNaL#u*r=H0-fAQEU74r8bJkU?iDPbL=Ri3g--8Q?zc+t%W!7LGW9> z?{wIP|Hw5ta|7Jl{ti|L_?`X96i$n%4_w{a+S;C>%}#+;k#GZu#oP_L!W&OWc*Ja_ zz$sfr?>x%COVJpNBoq1~r_@lT5%Z|Rvdc|-8QoTYKAw}dmz;t=bL~CGI0^6?OHRRl zhW%m4%UGHA*gdl>r@-yj;r&)oTt-B=0mAxlnS z!&0pDN2^e#W#CN9R-vJqoyK6w7-m9%7rnjU4G!7~n&}*tUt)V@X?Up5Tses`pTb*Y z+2i(g@8{~P5w%P^3WDSUS)Q?joiTr2wFke}9jebAc?+u+zf4;)#>JCgY06 z@Gp*JDpN4Oj0dx>&u;Bg<_R~FHrZGcHeIU&nF}x@kUWFmvv5K?-mJutOr;3pM9bqW z*7ez~eV>^p`4oPh2t=7y$1)d?Z|FWRRq{Eg$dOE?2vfTlPmXNVu9;ds1%LD)tCVSV zNLPP=B+n>(eHjK7Ig+UqtwN3|EEDZD_rid3r{n@zo>BPv%GI}@W*nVilq}|L!QHD# zE|BFJN1B4+=uD+(Bi+3L7n8D#z>dcAisH~xui+dSQ`*P0hpYNQL+2IKVygHx=jfO! dUHy+S{{Z}Qa|i{S0~7!N002ovPDHLkV1fxLMlb*X literal 0 HcmV?d00001 diff --git a/anno3/apprendimento_automatico/preparazione.org b/anno3/apprendimento_automatico/preparazione.org index 55eca08..23f9d0a 100644 --- a/anno3/apprendimento_automatico/preparazione.org +++ b/anno3/apprendimento_automatico/preparazione.org @@ -6,8 +6,8 @@ nuove istanze di problemi in base ai dati gia` consumati *** Probabilistic classifier Stima probabilita` dai dati e fornisce predizioni usando la seguente regola: -- Yₘₐₚ = $arg max_{Y}P(Y|X)$ = $argmax_Y\frac{(P(X|Y)(PY)}{P(X))}$ = - $argmax_Y\frac{(P(X|Y)(PY)}{P(Y))}$ +- Yₘₐₚ = $arg max_{Y}P(Y|X) = argmax_Y\frac{(P(X|Y)(PY)}{P(X))} = + argmax_Y\frac{(P(X|Y)(PY)}{P(Y))}$ - Yₘₗ = $argmax_YP(X|Y)$ (se priori non importanti) *** Features Se vogliamo approssimare la funzione coseno e` inutile considerare @@ -335,7 +335,7 @@ mai viste. 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 +Vedi che vuole sapere. ** TODO Trees (manca ranking e regression trees) I decision tree sono molto espressivi e corrispondono a proposizioni logiche in DNF. @@ -412,7 +412,66 @@ Il best split minimizza l'impurita` dei subset D₁, ..., Dₗ. - Gli alberi possono diventare rankers se imparano un ordinamento per i segmenti - Le foglie devono essere ordinate +Sfruttando la distribuzione delle classi nelle foglie possiamo +trasformare il feature tree in: +1. ranking tree: se ordiniamo le foglie in base alle probabilita` + empiriche +2. probability estimator +3. classifier: scegliendo le condizioni operative come conseguenza + della proporzione della frequenza sulle classi: + + clr = Pos/Neg + + c = Cfn / Cfp + + slope: 1/(c·clr) +TODO: Esercizi su Ranking trees e costi: 193 +*** Prune Tree +- PruneTree(T,D) +#+BEGIN_SRC +inputs: decision tree T; labelled data D +for every INTERNAL node N ∈T, partendo dal basso: +Tₙ ← subtree of T with N as root +Dₙ ← {x∈D | x is covered by N} +se l'accuracy di Tₙ su Dₙ e` peggiore della majority class in Dₙ : + sostituisci Tₙ in T con una foglia marcata con la maj. class di Dₙ +ritorna versione pruned di T +#+END_SRC +Invece di fare pruning si puo` introdurre un'errore di +generalizzazione (penalita` k su foglie) calcolato sul training set. +Non viene generata una foglia se non decrementa l'errore del padre di +almeno k+1. +TODO: Vedi come vengono stimati gli errori di generalizzazione sul +libro +TODO: vedi conseguenze inflation +*** Regression Trees +Possiamo inquadrare il problema del tree learning come un problema di +minimizzazione della varianza (o standard deviation nel caso di sqrt +GINI) sulle foglie: +| Var(Y) = 1/|Y| ∑(y-y̱)² y̱ e` y_predict +l'average della varianza e` la varianza moltiplicata per la +frequenza |Yⱼ|/|Y|. +- Nei problemi di regressione i valori del dominio di Y sono continui +- in BestSplit possiamo sostituire l'impurezza con la varianza + + Label(Y) = mean value dei valori di Y raccolte dalla foglia + + Homogeneous(Y) = true se la varianza e` sotto la soglia +- i regression tree son suscettibili all'overfitting in caso di pochi + esempi +*** Clustering Trees +- usiamo Dis: X×X ↦ R +- BestSplit usa l'average di Dis su ∀x₁,x₂ +- nel caso di vettori di features X⊆Rᵈ la somma della varianza sulle + features e` la distanza euclidea +- Complessita`: + + average squared distance = 2 volte la varianza + + Var(x) + + average vector delle distanze e Varᵢ(X) + + O(|D|) +Note: +- Cluster piccoli: overfitting +- outliers possono essere rimossi +- si possono rimuovere degli splits nei livelli piu` bassi + dell'albero: ~pruning~ +- label attraverso most representative instance: medoid (lowest total + dissimilarity) ** Rules Ordered rules are a chain of /if-then-else/. #+BEGIN_SRC @@ -474,6 +533,14 @@ coverage non convessa. I sottogruppi sono un subset dell'instance space la cui class distribution e` differente da quella di D. Mapping ĝ: X → C; D = (xᵢ, l(xᵢ))ⁱ +Precisione e average recall non sono sempre coincidono sulla +classificazione dei sottogruppi: +- Precision: focalizzato sui positivi +- avg recall: no fuoco +Nella subgroup discovery siamo interessati a imparare piu` di una +regola per individuare un gruppo omogeneo: weighted covering. +Si da un peso ad ogni esempio e lo si riduce ogni volta che si trova +una regola che lo copre. ** Distance models La distanza e` una misura di similarita`: minore la distanza, maggiore la similarita`. @@ -539,7 +606,7 @@ Dato Sum of Squared Error - Between cluster Sum of Squares: $BSS = \sum_i |C_i|(m-m_i)^2$ BSS + WSS e` costante. Il problema dei K-Means consiste nel trovare una soluzione che minimizza WSS (o massimizza BSS): cluster coesi. -*** Algoritmo di LLoyd +*** Algoritmo di Lloyd - Itera partizionando in base al centroide e ricalcola il centroide. - Converge ad un punto stazionario ma non garantisce che la soluzione sia il minimo globale. @@ -603,7 +670,7 @@ repeat until no change in D₁,...,Dₖ return D₁, ..., Dₖ #+END_SRC -- Cosine similarity: $cos θ = \frac{x\cdot y}{\Vert{x}\Vert \cdot +- Cosine similarity: $cos \theta = \frac{x\cdot y}{\Vert{x}\Vert \cdot \Vert{y} \Vert} = \frac{K(x,y)}{\sqrt{K(x,x)\times K(y,y)}}$ ** 5-cross validation dividi il dataset in 5 partizioni, 4 per il training set 1 per il test diff --git a/todo.org b/todo.org index 4f7b265..bfafda5 100644 --- a/todo.org +++ b/todo.org @@ -22,14 +22,15 @@ + [ ] Sum of squared error + [ ] Silhouttes + [ ] Rivedi kernelization -- [ ] Esposito [0/3] +- [ ] Esposito [0/4] + [ ] (w_0,w_1) ortogonale all'iperpiano + [ ] dimostrazione dualita` grangiana + [ ] Mercer condition + [ ] kernel semidefinito -- [ ] Meo [0/3] +- [-] Meo [1/5] + [ ] Vedi bene gini index - + [ ] Ranking e regression trees + + [X] Ranking e regression trees + + [ ] errori di generalizzazione e TODO ranking tree + [ ] subgroup discovery and ongoing + [ ] Voronoi + [ ] Proximity graph for measuring clusters