200 likes | 327 Views
Algoritmy extrakcie dát z webu. Autor: Milan Šafárik Vedúci: RNDr. Róbert Novotný. Ciele práce. Preskúmať oblasť extrakcie dát z webu. Analyzovať a vylepšiť algoritmy pre danú oblasť.
E N D
Algoritmy extrakcie dát z webu Autor: Milan Šafárik Vedúci: RNDr.Róbert Novotný
Ciele práce • Preskúmať oblasť extrakcie dát z webu. • Analyzovať a vylepšiť algoritmy pre danú oblasť. • Vybraný algoritmus implementovať a vyhodnotiť efektivitu zvoleného algoritmu na rôznych reálnych aplikačných doménach.
Data mining • Data mining, alebo dolovanie z dát je veda extrahovania skrytých hodnotných informácií z veľkých objemov dát. • Využíva sa tu množstvo rôznych techník, od štatistických a databázových až po rozhodovacie stromy a umelú inteligenciu.
3 fázy dolovania dát • Predspracovanie – Nespracované (surové) dáta obyčajne nie sú vhodné na dolovanie z rôznych dôvodov. Preto je potrebné odstrániť porušené a duplicitné dáta, alebo rôzne abnormality. • Spracovávanie dát – spracované dáta sú vstupom do vybraného algoritmu dolovania dát, ktorý nám extrahuje potrebné informácie, ktoré hľadáme. • Záverečné spracovanie– V mnohých aplikáciách nie sú všetky nájdené informácie užitočné. Tento krok hľadá tie užitočné a odstraňuje tie nepotrebné
Predspracovanie • Stiahne sa HTML dokument z internetu alebo sa načíta z disku. • Vytvorí sa z neho stromová štruktúra pomocou tried HtmlParser a Dom4J. • Odstránia sa nepotrebné dáta a html značky.
Spracovanie dát • Dáta z prvej fázy sa použijú ako vstup do algoritmov extrakcie. • Výstupom je množina výsledkov ohodnotených pravdepodobnosťami. • V záverečnom spracovaní sa už iba zbavíme výsledkov s nízkou pravdepodobnosťou.
Skryté Markovove modely Skryté Markovove modely sú štatistické modely stochastických procesov na počítanie pravdepodobnosti na základe vstupných pozorovaní. Sú reprezentované konečnostavovým automatom, ktorý môžemevyjadriť päticou: G = (Q, V, A, B, π), kde: • Q = konečná množina N stavov modelu. • V = konečná množina M vstupných symbolov (pozorovaní). • A = matica pravdepodobností medzi stavmi. • B = matica pravdepodobností medzi stavmi a pozorovaniami. • π = vektor pravdepodobností počiatočného stavu.
3 základné problémy • Ohodnotenie– Počítanie pravdepodobnosti, akou mohol model vygenerovať danú sekvenciu pozorovaní. Využíva sa tu Forward algoritmus. • Dekódovanie – Počítanie sekvenciu skrytých stavov ktorá by mohla túto sekvenciu pozorovaní s najväčšou pravdepodobnosťou vygenerovať.Viterbiho algoritmus. • Naučenie– Natrénovať parametre modelu na danú sadu sekvencií. Na učenie modelu slúži Baum-Welchov algoritmus.
Programovanie • Naivné algoritmy sú pomalé. • Potreba urýchleného výpočtu • Dynamické algoritmy ako Forward a Baum-Welchov algoritmus.
Príklad naivného výpočtu • Zložitosť (2T - 1) · NT násobení a NT – 1 pripočítavaní. • N = 5, T = 100 až 1072 operácii!
Príklad dynamického výpočtu • N · (N + 1) · (T - 1) + N násobení a N · (N - 1) · (T - 1) pripočítavaní.
Využitie modelov • Extrakcia po skupinách slov – Ak hľadáme pojmy, ktoré sa skladajú z viacerých slov, je najlepšie použiť tento model. Každá časť extrahovanej informácie bude skrytý stav v markovovom modely. • Extrakcia po skupinách znakov – Najlepšie fungujúci na rozpoznávanie slov alebo čísiel. Stavy sú písmená a až z (0 až 9). Potreba učenia Baum-Welchovim algoritmom.
Extrakcia po slovách Názvy mobilov: Samsung M8100, Motorola RAZR2 V9, LG GD510 Silver.
Testovanie Testovanie algoritmu na burzových dátach. Extrahovanie 10 rôznych informácii, spravených bolo 300 rôznych testovaní. Úspešnosť medzi 54% – 100%.
Možné vylepšenia • Využitie HTML štruktúry. • Preskakovanie v prehľadávaní textu.
Odborná literatúra • Lawrence R. Rabiner, A Tutorial on Hidden Markov Models andSelected Applications in Speech Recognition. • B. H. Juang, An Introduction to Hidden Markov Models • Altigran S. da Silva, A Brief Survey of Web Data Extraction Tools
Meranie efektivity • Precision (Presnosť) = Počet správne nájdených / Počet všetkých nájdených. Vysoké hodnoty. • Recall (Návratnosť) = Počet správnych / Počet, ktoré mali byť navrátené. Počítané hodnoty.
Meranie efektivity • F1 sa počíta, ak β = 1. • F2 sa počíta, ak β = 2.