lej-la / APP2

Predstavme si GPSku, ktorá jednoducho celý deň nahráva polohové dáta. Typický turista sa dovezie na začiatok turistickej značky (napr. autom), potom si urobí túru, a potom sa zasa odvezie domov, pričom v medzičase si urobí niekoľko prestávok, kedy stojí (pri státí sa obvykle prejavujú všetky chyby GPS meraní, preto to v zázname vyzerá, ako keby turista poskakoval okolo jedného miesta ako žaba). Našou úlohou je zistiť, v ktorých časoch sa turista viezol, v ktorých sa pohyboval pešo a v ktorých stál. Za max. 10 bodov: Navrhnite riešenie založené na HMM, vrátane modelu, spôsobu trénovania a spôsobu inferencie. Podrobne riešenie popíšte a zdôvodnite, prečo si myslíte, že by mohlo fungovať. Za ďalších 50 bodov: Implementujte svoje riešenie, aplikujte ho na dáta z http://compbio.fmph.uniba.sk/vyuka/gm/assignments/gpsdata.zip a pokúste sa vyhodnotiť jeho úspešnosť. Na prezentáciu dát odporúčame Google Earth (ide o skutočné dáta namerané GPSkou). V takom prípade odovzdajte text popisujúci vaše riešenie a uložte všetky ďalšie materiály, zdrojáky a pod. na web, pričom odovzdáte linku.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Spracovanie GPS trackov

Pre nas problem trenujeme diskretne HMM s 3 skrytymi stavmi, jeden pre pohyb autom, jeden peso a jeden ked gps stoji. Pozorovania vyjadrime ako rozdiely po sebe iducich poloh. Konkretne ako euklidovsku vzdialenost po sebe nasledujucich vektorov (latitude, longitude). Aby sme mali pozorovani konecne vela, zaokruhlime rozdiely na 3 desatinne miesta a vypocitame vysledny pocet roznych pozorovani podla dostupnych dat.

Oznacovanie dat

Data sme si zobrazili pomocou gpsvisualizer.com a oznacili jednotlive tracky pismenami 'a', 's' a 'p' analogicky ku stavom 'autom', 'stoji', 'peso'. Oznacene data pouzijeme na vyhodnotenie uspesnosti natrenovaneho modelu.

Trenovanie a vyhodnotenie modelu

Parametre HMM natrenujeme pomocou Baum-Welchovho algoritmu. Najpravdepodobnejsiu sekvenciu skrytch stavov zratame pomocou Viterbiho algoritmu. Nasledne vyratame accuracy najpravdepodobnejsej sekvencie s pouzitim oznacenych dat.

Lepsie by zrejme bolo natrenovat spojite HMM, kedze nase riesenie skonverguje do nuly.

Accuracy mame vsak aj tak velmi vysoku pokial povieme, ze gps sa stale pohybovala autom. V nasich oznacenych datach je totizto 35790 merani pocas jazdy autom, 878 merani pocas chodze peso a len 460 merani ked gps stala.

Spustame skript gps.py pomocou Python 3. Balicky, ktore pouzivame su numpy a sklearn.

About

Predstavme si GPSku, ktorá jednoducho celý deň nahráva polohové dáta. Typický turista sa dovezie na začiatok turistickej značky (napr. autom), potom si urobí túru, a potom sa zasa odvezie domov, pričom v medzičase si urobí niekoľko prestávok, kedy stojí (pri státí sa obvykle prejavujú všetky chyby GPS meraní, preto to v zázname vyzerá, ako keby turista poskakoval okolo jedného miesta ako žaba). Našou úlohou je zistiť, v ktorých časoch sa turista viezol, v ktorých sa pohyboval pešo a v ktorých stál. Za max. 10 bodov: Navrhnite riešenie založené na HMM, vrátane modelu, spôsobu trénovania a spôsobu inferencie. Podrobne riešenie popíšte a zdôvodnite, prečo si myslíte, že by mohlo fungovať. Za ďalších 50 bodov: Implementujte svoje riešenie, aplikujte ho na dáta z http://compbio.fmph.uniba.sk/vyuka/gm/assignments/gpsdata.zip a pokúste sa vyhodnotiť jeho úspešnosť. Na prezentáciu dát odporúčame Google Earth (ide o skutočné dáta namerané GPSkou). V takom prípade odovzdajte text popisujúci vaše riešenie a uložte všetky ďalšie materiály, zdrojáky a pod. na web, pričom odovzdáte linku.


Languages

Language:Python 100.0%