z geoinformatických dat 30. listopadu 2012 Rozvoj aplikačního potenciálu (RAPlus) CZ.1.07/2.4.00/17.0117
Dvě DN na úseku Příklad Najděte mezní situaci pro dvě DN na úseku délky L metrů tak, aby se ještě nejednalo o shluk. ( Epanechnikova funkce: K d (x)= 3 4d 1 ( ) ) x 2 d I ( d;d) (x) Jádrový odhad hustoty: f n (x)= 1 n n i=1 K d(x X i ) HV 3 4dn
Dvě DN na úseku ( f 2 (x 0 ) = 1 ( ) 3 x0 X 2 ( ) ) 1 x0 X 2 2 1 + 1 = 2 4d d d ( ( ) 3 V 2 ( ) ) V 2 = 1 + 1 = 4d 2 d d ( ( ) ) 3 V 2 = 1 4d d Chceme, aby f 2 (x 0 ) HV, což bude platit, pokud ( ( ) ) 3 V 2 1 4d d V 3 4d 2 2 2 d
Dvě DN na úseku 4 x 10 3 3.5 3 2.5 Hustota 2 1.5 1 0.5 0 0 500 1000 1500 2000 Vzdálenost (m) http://girosaf.cdvinfo.cz/
O čem se bude mluvit? TÉMA KONTEXT APLIKACE Jádrový odhad hustoty Empirická DF K - funkce Shluková analýza Shlukování dopravních nehod Generalizace linií Klasifikaèní stromy Geografická generalizace Diskriminaèní analýza Identifikace zatáèek Ètyøpolní tabulky Biostatistika Pøírodní hazardy
O čem se bude mluvit? TÉMA KONTEXT APLIKACE Jádrový odhad hustoty Empirická DF K - funkce Shluková analýza Shlukování dopravních nehod Generalizace linií Klasifikaèní stromy Geografická generalizace Diskriminaèní analýza Identifikace zatáèek Ètyøpolní tabulky Biostatistika Pøírodní hazardy
Osnova prezentace 1. 2. 3. logistická regrese rozhodovací stromy 4. Použití dosažených výsledků
Motivace Proč je důležité identifikovat zatáčky? bezpečnostní riziko zklidňující prvek management správy komunikací popisná statistika
Dopravní komunikace přímá část přechodnice oblouk 100 100 100 90 90 90 80 80 80 70 70 70 60 60 60 50 50 50 40 40 40 30 30 30 20 20 20 10 10 10 0 50 0 50 0 20 0 20 40 60 0 100 80 60 40 20 0 x(t) = y(t) = t ( at 2 cos 0 2 t ( at 2 sin 0 2 ) dx, ) dx.
Klotoida
Zadání úlohy Úkoly identifikovat oblouky a přímé úseky určit poloměry oblouků x 10 6 1.1626 1.1626 1.1626 1.1627 1.1627 1.1627 6.1055 6.105 6.1045 6.104 x 10 5
Trénovací množina II/446 Štěpánov (8,7km) II/444 Těšíkov (5,6km) 1.107 x 106 1.1054 x 106 1.108 1.1056 1.109 1.1058 1.11 1.111 1.106 1.1062 1.112 1.113 1.114 1.115 5.53 5.52 5.51 5.5 5.49 5.48 x 10 5 1.1064 1.1066 1.1068 5.405 5.4 5.395 5.39 5.385 5.38 5.375 5.37 5.365 x 10 5
Trénovací množina II/446 Štěpánov (8,7km) II/444 Těšíkov (5,6km) 1.107 x 106 1.1054 x 106 1.108 1.1056 1.109 1.1058 1.11 1.111 1.106 1.1062 1.112 1.113 1.114 1.115 5.53 5.52 5.51 5.5 5.49 5.48 x 10 5 1.1064 1.1066 1.1068 5.405 5.4 5.395 5.39 5.385 5.38 5.375 5.37 5.365 x 10 5
Charakteristiky bodů velikost úhlu kumulativní úhel tří bodů kumulativní úhel pěti bodů vzdálenost bodů poloměr kružnice opsané poloměr oskulační kružnice
Charakteristiky bodů velikost úhlu kumulativní úhel tří bodů kumulativní úhel pěti bodů vzdálenost bodů poloměr kružnice opsané poloměr oskulační kružnice
Charakteristiky bodů velikost úhlu kumulativní úhel tří bodů kumulativní úhel pěti bodů vzdálenost bodů poloměr kružnice opsané poloměr oskulační kružnice
Charakteristiky bodů velikost úhlu kumulativní úhel tří bodů kumulativní úhel pěti bodů vzdálenost bodů poloměr kružnice opsané poloměr oskulační kružnice
Charakteristiky bodů velikost úhlu kumulativní úhel tří bodů kumulativní úhel pěti bodů vzdálenost bodů poloměr kružnice opsané poloměr oskulační kružnice
Charakteristiky bodů velikost úhlu kumulativní úhel tří bodů kumulativní úhel pěti bodů vzdálenost bodů poloměr kružnice opsané poloměr oskulační kružnice
Poloměr oskulační kružnice Křivka c:i R R 2. Poloměr oskulační kružnice R(t 0 )= 1 κ(t 0 ) = ċ(t 0) Ṫ(t 0) T(X i) = X i+1 X i 1 X i+1 X i 1, Ṫ(X i) = T(X i+1) T(X i 1 ) t 1 + t 2, X2 T(X2) (X3) X3 X4 T(X4) ċ(x i) = X i+1 X i 1 t 1 + t 2, κ(x i) = T(X i+1) T(X i 1 ) X i+1 X i 1 X1 X5
Úhel Body mimo oblouk Body v oblouku 0.3 Hustota 0.2 0.1 0 0 2 4 6 8 10 12 14 16 18 20 Úhel
Kumulativní úhly Tří bodů Pěti bodů 0.07 0.06 Body mimo oblouk Body v oblouku 0.03 Body mimo oblouk Body v oblouku 0.05 Hustota 0.04 0.03 Hustota 0.02 0.02 0.01 0.01 0 0 10 20 30 40 50 Kumulativni uhel tri bodu 0 0 10 20 30 40 50 60 70 80 Kumulativni uhel peti bodu
Vzdálenost dvou bodů 0.05 Body mimo oblouk Body v oblouku 0.04 0.03 Hustota 0.02 0.01 0 0 10 20 30 40 50 60 70 80 90 Vzdalenost bodu
Poloměry kružnic Kružnice opsaná Oskulační kružnice 3 x 10 3 Body mimo oblouk Body v oblouku 3 x 10 3 Body mimo oblouk Body v oblouku 2 2 Hustota Hustota 1 1 0 0 1000 2000 3000 4000 5000 Polomer kruznice opsane 0 0 1000 2000 3000 4000 5000 Polomer oskulacni kruznice
Generalizace linie
Důvody použití Metody redukce objemu dat odstranění šumu odstranění hustých míst v datech vypuštění/ponechání každého k-tého bodu linie délkový test úhlový test Douglas-Peuckerův algoritmus
Douglas-Peuckerův algoritmus (1972)
Douglas-Peuckerův algoritmus (1972)
Douglas-Peuckerův algoritmus (1972)
Douglas-Peuckerův algoritmus (1972)
Douglas-Peuckerův algoritmus (1972)
Douglas-Peuckerův algoritmus (1972)
Použití D-P algoritmu Původně ε=0,1m ε=0,5m ε=1m II/446 125 113 84 65 II/444 212 210 180 151 1.107 x 106 1.107 x 106 1.108 1.108 1.109 1.109 1.11 1.11 1.111 1.111 1.112 1.112 1.113 1.113 1.114 1.114 1.115 5.53 5.52 5.51 5.5 5.49 5.48 x 10 5 1.115 5.53 5.52 5.51 5.5 5.49 5.48 x 10 5
Prahová hodnota II/446 II/446 Hraniční hodnota Kružnice Oskulační Kružnice Oskulační poloměru (m) opsaná kružnice opsaná kružnice 100 65% 65% 54% 56% 300 73% 72% 74% 76% 500 74% 73% 80% 80% 1000 70% 78% 80% 81% 1500 70% 74% 78% 80% 2000 72% 75% 77% 78%
Klasifikační stromy Diskriminační analýza
Klasifikační stromy Metody diskriminační analýzy lineární diskriminační analýza kvadratická diskriminační analýza logistická regrese jádrový odhad hustoty metoda k-tého nejbližšího souseda neuronové sítě algoritmus podpůrných vektorů (SVM) případové usuzování rozhodovací stromy
Klasifikační stromy Metody diskriminační analýzy lineární diskriminační analýza kvadratická diskriminační analýza logistická regrese jádrový odhad hustoty metoda k-tého nejbližšího souseda neuronové sítě algoritmus podpůrných vektorů (SVM) případové usuzování rozhodovací stromy
Klasifikační stromy 1 Logistická regrese 0.8 0.6 0.4 0.2 0 4 2 0 2 4
Klasifikační stromy θ=(α, β 1, β 2,..., β n) T x=(1, X 1, X 2,..., X n) T P(Y X=1)= eθt x =: p(x) 1+e θt x Metoda maximální věrohodnosti L(θ) = l(θ) = = s p(x i) yi (1 p(x i)) (1 yi), i=1 s y i ln p(x i)+(1 y i) ln(1 p(x i))= i=1 s y i(θ T x i) ln(1+e θt x i ) max i=1
Významné parametry Klasifikační stromy velikost úhlu kumulativní úhel tří bodů kumulativní úhel pěti bodů vzdálenost bodů poloměr kružnice opsané poloměr oskulační kružnice
Nápad Klasifikační stromy Data R < 10km R >= 10km Model 1 Model 2
Nápad Klasifikační stromy Data R < 10km R >= 10km Pøímá Logistická èást regrese úseku Model 1 Model 2
Klasifikační stromy Rozhodovací stromy klasifikační regresní
Huntův algoritmus Klasifikační stromy Rekurzivně: Pokud všechny objekty v uzlu patří do stejné skupiny uzel je listem. V opačném případě uzel rozdělíme. Otázky Jak určit optimální rozdělení uzlu? Kdy růst stromu zastavit?
Rozdělení uzlu Klasifikační stromy p(i t) relativní četnost zastoupení i-té skupiny v uzlu t
Míra nečistoty Klasifikační stromy Entropie Entropy(t) = Gini index K p(i t) log 2 p(i t) i=1 Gini(t)=1 Klasifikační chyba K [p(i t)] 2 i=1 Classification error(t) = 1 max[p(i t)] i
Míra nečistoty Klasifikační stromy A 0 B 8 A 2 B 6 A 4 B 4 Entropy Gini Error 0 0 0 0,811 0,375 0,25 1 0,5 0,5 1 0.8 0.6 0.4 0.2 Entropy Gini Classification error 0 0 0.2 0.4 0.6 0.8 1 p =I(rodič) c j=1 N(v j ) N I(v j) max
Zastavovací kritérium Klasifikační stromy Typická kritéria všechny objekty v uzlu náleží do stejné skupiny objekty v uzlu se shodují ve všech atributech Další kritéria počet objektů v uzlu je menší než stanovená hranice rozdělení uzlu nevylepší míru nečistoty
Underfitting a Overfitting Klasifikační stromy 40 Testovaci mnozina Overfitting 30 Error (%) 20 10 Trenovaci mnozina 0 0 5 10 15 20 Pocet uzlu
Klasifikační stromy Charakteristické vlastnosti stromů neparametrická metoda snadná interpretace, grafické znázornění výpočetně nenáročný algoritmus robustní metoda nadbytečné atributy neovlivňují výsledky fragmentace dat (nedovolit dělení při nízkém počtu objektů v uzlu)
Stromy a lineární regrese Klasifikační stromy Co lze a co nelze snadno oddělit? 1 1 0.5 0.5 0 0 0.5 1 0 0 0.5 1
R Klasifikační stromy library(rpart) rpart() vytvoření stromu plot() vykreslení stromu text() popisky post() postscript plotcp() vykreslení chyby prune() ořezání stromu podle chyby
Klasifikační stromy Výsledný klasifikační strom
Klasifikační stromy Použití dosažených výsledků 1 0.9 0.8 Podil DN v zatackach 0.7 0.6 0.5 0.4 0.3 0.2 0.1 Pocet DN celkem 1 2 3 5 6 10 0 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 Podil zatacek > 10
Exaktní binomický test p 0 podíl zatáček na silničním úseku n počet DN v zatáčkách N počet všech DN na úseku Klasifikační stromy Náhodný jev DN se stala v zatáčce má alternativní rozdělení s neznámým parametrem p. H 0 : p=p 0, proti H A : p > p 0 P(chyba I. druhu) ( n ) P N p 0 > K α α p-value = N k=n ( ) N p k 0 k (1 p 0) (N k)
Exaktní binomický test Klasifikační stromy 1 0.9 0.8 Podil DN v zatackach 0.7 0.6 0.5 0.4 0.3 0.2 0.1 Pocet DN celkem 1 2 3 5 6 10 0 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 Podil zatacek > 10
Nebezpečný úsek Klasifikační stromy 9.45 x 104 9.5 9.55 9.6 9.65 9.7 9.75 oblouk prima cast delka (m) 710 4034 pocet DN 9 4 9.8 9.85 9.9 4.86 4.88 4.9 4.92 4.94 4.96 4.98 5 x 10 4
Diskuze a dotazy Klasifikační stromy e-mail: andrasik.richard@gmail.com