Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

IZI 229 - Cvičení 1 Click-Stream analýza (analýza sekvencí) Berka Petr Kočka Tomáš Laš Vladimír.

Podobné prezentace


Prezentace na téma: "IZI 229 - Cvičení 1 Click-Stream analýza (analýza sekvencí) Berka Petr Kočka Tomáš Laš Vladimír."— Transkript prezentace:

1 IZI Cvičení 1 Click-Stream analýza (analýza sekvencí) Berka Petr Kočka Tomáš Laš Vladimír

2 Obsah Co je Click-Stream analýza Praktický příklad
Algoritmus hledání pravidel Implementace

3 Click-Stream Co je to Click-Stream Webové servery shromažďují obrovské množství dat (logové soubory) Tato data většinou nejsou dále využívána Tato data obsahují informace užitečné pro provoz serveru ? Jak tyto informace získat ?

4 Vlastnosti logových dat
Click-Stream Vlastnosti logových dat Milióny záznamů Přibližně stejná podoba (time; IP address; session ID; page request; referee) Jednotlivé sessions (návštěvy jednoho uživatele) poměrně krátké (16 přístupů) Z požadované stránky lze poznat informace o stránce (u e-shopů např. typ stránky, typ zboží)

5 Příklad logového souboru
Click-Stream Příklad logového souboru unix time ;IP address ; session ID ; page request; referee ; ; e8a0a4d7a4407ed9554b64ed1;/dp/?id=124 ; ; ;3995b2c0599f1782e2b b1c94;/dp/?id=182 ; ; ;2fd3213f2edaf82b27562d28a2a747aa;/ ; ; ; e8a0a4d7a4407ed9554b64ed1;/dp/?id=148 ;/dp/?id=124; ; ; e8a0a4d7a4407ed9554b64ed1;/sb/ ;/dp/?id=148; ; ;2fd3213f2edaf82b27562d28a2a747aa;/contacts/ ; /; ; ; e8a0a4d7a4407ed9554b64ed1;/sb/ ;/sb/; Příklad obsahuje 3 sessions

6 Click-Stream Předzpracování dat Z dat je z nich třeba vytvořit sekvence, které budeme analyzovat: Vytvořit časové sekvence stránek pro jednotlivé uživatele (sessions) Ze sekvence stránek (http adres) vytvořit sekvence analyzovaných „informací“ (sekvence typů stránek, sekvence druhů zboží) Lze přidat umělé „stránky“ ZAČÁTEK a KONEC Výsledná podoba: - start, lz, lz, dz, nk, end - start, 148, 128, end

7 Praktický příklad Internetový obchod
Click-Stream Praktický příklad Internetový obchod Data za 24 dní (3 milióny záznamů) Logový soubor standardní informace Předzpracování dat: uživatelů 1stránkové záznamy byly předem odstraněny Z těchto dat 2 základní vstupy: sekvence typů stránek a sekvence druhů zboží (30 kategorií)

8 Základní údaje Celkem přístupů 203 750 Shop1 35 864 Shop2 21 044
Click-Stream Základní údaje Celkem přístupů Shop Shop Shop Shop Shop Shop Shop

9 Základní údaje Nejvíce přístupů od jednoho uživatele: 15454
Click-Stream Základní údaje Nejvíce přístupů od jednoho uživatele: Průměrný počet přístupů: 16,186 Medián: Modus: Nejdelší čas: 433:27:53 (17 přístupů) Průměrný čas: 00:24:46 Medián: 0:03:08 Modus: 0:0:9

10 Shluková analýza Udělána pomocí MS SQL Server – Analysis services
Click-Stream Shluková analýza Udělána pomocí MS SQL Server – Analysis services

11 Analýza statických dat
Click-Stream Analýza statických dat Pomocí rozhodovacích stromů (pařezů) - SAS Pozorování: Lidé používající fulltextové vyhledávání se méně dívají na detaily zboží Závěry: Vyhledavač nenalezne to, co lidé chtějí.

12 Analýza statických dat
Click-Stream Analýza statických dat Ukázka dalších pozorování: Při nákupu (návštěvě stránek s košíkem) se lidé často na něco ptají. Lidé čtoucí stránky poradny méně chodí na detaily a listy zboží. Při návštěvě stránky obchody-elektro se méně dívá na detaily zboží. Velmi málo přístupů na často kladené dotazy

13 Click-Stream Přechody mezi obchody Uděláno pomocí CSAnalyzeru vygenerováním všech pravidel délky 2 ze sekvencí obchodů Nepřineslo žádné zajímavé výsledky

14 Click-Stream Přechody mezi zbožím Uděláno pomocí CSAnalyzeru vygenerováním všech pravidel délky 2 ze sekvencí zboží Možné využít pro nabízení dalšího zboží uživateli Nejsilnější pravidlo: reproduktory-příslušenství -> video-DVD : 26,00% “Nejslabší” pravidlo: vysavače-žehličky -> pračky-sušičky : 3,80%

15 Analýza sekvencí Pomocí CSAnalyzeru Vybrány „zajímavá“ pravidla
Click-Stream Analýza sekvencí Pomocí CSAnalyzeru Vybrány „zajímavá“ pravidla Pozorování: Lidé z faq chodí často dále do poradny Pravidlo: faq ->poradna předpoklad: 594 z toho závěr: 127 P: 21% Závěry: Na faq lidé nenajdou, co chtějí a hledají dále. Pozorování: Často lidé vyhledávají fultextem vícekrát za sebou Pravidlo: findf ->findf předpoklad: z toho závěr: P: 44% Závěry: Nenajdou co chtějí. Nevědí, jak hledat (co zadávat) Nejsilnější nalezené pravidlo Pravidlo: dt, kosik ->kosik předpoklad: 5174 z toho závěr: 4801 P: 93%

16 Click-Stream Závěry analýzy „Klasické“ metody a analýza sekvencí se částečně překrývají a částečně doplňují – pro získání více znalostí je třeba dělat oboje Některá „zajímavá“ pravidla odhalí jen člověk, který dobře zná dané stránky V datech se nepodařilo najít delší „zajímavá“ pravidla

17 Algoritmus hledání pravidel
Click-Stream Algoritmus hledání pravidel Příklad sekvence: ABCDX Sekvenční pravidla DX, CD  X, BCD  X Obecná asociační pravidla A  X, AC  X, BD  X

18 Click-Stream Sekvenční pravidla Pokud je k pravidlu D X přidáno pravidlo CD X, mění se význam pravidla D X na (D, ale ne CD) X Př: 1. D X Ant: 9 AntSuc: 2 2. přidáme CD X Ant: 2 AntSuc: 2 změní se D X Ant: 7 AntSuc: 0

19 Click-Stream Sekvenční pravidla Je-li „správné“ pravidlo ABCDX, pak proces specializace, který ho najde je pouze tento: X, DX, CDX, BCDX, ABCDX Rozhodnutí o hledání dalších specializací je prováděno na základě ch2testu Neexistují konflikty mezi pravidly s výjimkou případu, kdy jedno pravidlo je specializací druhého (to umožňuje implementaci rychlého algoritmu na rozdíl od CN2)

20 Algoritmus pokrývání množin
Click-Stream Algoritmus pokrývání množin Inicializace pro každou stránku page vyskytující se v datech spočítej její relativní četnost v datech jako P = počet_výskytů_stránky_na_pozici_lmax + 1 / počet_sekvencí_délky_lmax + 1 2. je-li četnost P  nmin, 2.1 zařaď do seznamu pravidel Rules pravidlo default  page 2.2 zařaď page do seznamu uvažovaných stranek Pages 3. Spusť hlavní cyklus s pomocným pravidlem * => *

21 - má-li aktuální pravidlo Ant page délku Ant menší než lmax
Click-Stream Hlavní cyklus dokud není konec - má-li aktuální pravidlo Ant page délku Ant menší než lmax - pro všechny stránky pp z Pages najdi k pravidlu ppAnt  page nadpravidlo z Rules (pravděpodobně Ant  page, ale může se jednat o zkráceninu o více než jednu stránku zleva, extrémně až …  page – označme je Antx page) spočti chi2 test srovnáním ppAnt  page a Antxpage vyber maximální chi2 pravidlo ppAnt  page Pokud chi2<alfa pak Přidej ppAnt  page do Rules Uprav nadpravidlo Antx page pravidla ppAnt  page v Rules Otestuj významnost pravidla Antx page ve srovnání s jeho nadpravidlem v Rules a pokud nesplňuje významnost chi2 testu na hladině alfa pak vyjmi toto nadpravidlo z Rules a uprav jeho nadpravidlo, dtto …

22 Kompozicionální algoritmus
Click-Stream Kompozicionální algoritmus Inicializace pro každou stránku page vyskytující se v datech spočítej její relativní četnost v datech jako P = počet_výskytů_stránky_na_pozici_lmax + 1 / počet_sekvencí_délky_lmax + 1 2. je-li četnost P  nmin, 2.1 zařaď do seznamu pravidel Rules pravidlo default  page 2.2 zařaď page do seznamu uvažovaných stranek Pages 2.3 zařaď default  page do seznamu implikací Impl

23 1. vezmi implikaci Ant  page z Impl
Click-Stream 1. vezmi implikaci Ant  page z Impl 2. je-li délka Ant menší než lmax pak pro každou stranu pp z Pages 2.1 prodluž Ant na ppAnt 2.2 je-li četnost ppAnt v datech  nmin pak 2.2.1 spočítej platnost pravidla ppAnt  page jako P(ppAnt=>page) = počet_výskytů_ppAntpage / počet_výskytů_ppAnt 2.2.2 z pravidel v Rules, jejichž je ppAnt  page levostranným rozšířením spočítej váhu w(ppAnt) 2.2.3 pokud se váha w(ppAnt) významně liší od platnosti P(ppAnt  page) pak spočítej váhu w: w  w(ppAnt) = P(ppAnt  page) zařaď pravidlo ppAnt  page(w) do Rules 2.2.4 přidej implikaci ppAnt  page na konec Impl

24 Click-Stream Implementace

25 Implementace Vývojové prostředí Borland’s Delphi
Click-Stream Implementace Vývojové prostředí Borland’s Delphi Operační systém Windows Procesor > 600 MHz Paměť – čtyřnásobek vstupních dat

26 Click-Stream Implementace Algoritmus implementován jako objekt => lze snadno přidat jiný algoritmus Vyhledávání běží v samostatném vlákně => lze prohlížet částečné výsledky (případně včas přerušit vyhledávání) V systému zabudováno predikování na základě nalezených pravidel Ukládání pravidel, export, …

27 Click-Stream Implementace Systém umožňuje testování, tj. na základě vstupních dat určí pro každou stránku, kolikrát by podle vybraných pravidel byla predikovaná stránka správná a kolikrát špatná (pro sekvence typů stránek jsme dostali celkovou úspěšnost s 60 pravidly cca 60% [při predikování majoritní třídy bychom dostali 40%], jednotlivé stránky se pohybovaly mezi 30 – 80 %)

28 Click-Stream Testování algoritmů


Stáhnout ppt "IZI 229 - Cvičení 1 Click-Stream analýza (analýza sekvencí) Berka Petr Kočka Tomáš Laš Vladimír."

Podobné prezentace


Reklamy Google