1 / 28

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

Click-Stream analýza (analýza sekvencí) Berka Petr Kočka Tomáš Laš Vladimír. Obsah. Co je Click-Stream analýza Praktický příklad Algoritmus hledání pravidel Implementace. Co je to Click-Stream. Webové servery shromažďují obrovské množství dat (logové soubory)

serge
Download Presentation

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

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Click-Stream analýza(analýza sekvencí)Berka PetrKočka TomášLaš Vladimír

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

  3. Click-Stream 17. 3. 2005 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. Click-Stream 17. 3. 2005 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. Click-Stream 17. 3. 2005 Příklad logového souboru unix time ;IP address ; session ID ; page request; referee 1074589200;193.179.144.2 ;1993441e8a0a4d7a4407ed9554b64ed1;/dp/?id=124 ;www.google.cz; 1074589201;194.213.35.234;3995b2c0599f1782e2b40582823b1c94;/dp/?id=182 ; 1074589202;194.138.39.56 ;2fd3213f2edaf82b27562d28a2a747aa;/ ;www.seznam.cz; 1074589233;193.179.144.2 ;1993441e8a0a4d7a4407ed9554b64ed1;/dp/?id=148 ;/dp/?id=124; 1074589245;193.179.144.2 ;1993441e8a0a4d7a4407ed9554b64ed1;/sb/ ;/dp/?id=148; 1074589248;194.138.39.56 ;2fd3213f2edaf82b27562d28a2a747aa;/contacts/ ; /; 1074589290;193.179.144.2 ;1993441e8a0a4d7a4407ed9554b64ed1;/sb/ ;/sb/; • Příklad obsahuje 3 sessions

  6. Click-Stream 17. 3. 2005 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. Click-Stream 17. 3. 2005 Praktický příklad • Internetový obchod • Data za 24 dní (3 milióny záznamů) • Logový soubor standardní informace • Předzpracování dat: • 200 000 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. Click-Stream 17. 3. 2005 Základní údaje Celkem přístupů 203 750 Shop1 35 864 Shop2 21 044 Shop3 38 059 Shop4 48 656 Shop5 20 013 Shop6 27 498 Shop7 12 616

  9. Click-Stream 17. 3. 2005 Základní údaje • Nejvíce přístupů od jednoho uživatele: 15454 • Průměrný počet přístupů: 16,186 • Medián: 8 • Modus: 2 • 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. Click-Stream 17. 3. 2005 Shluková analýza Udělána pomocí MS SQL Server – Analysis services

  11. Click-Stream 17. 3. 2005 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. Click-Stream 17. 3. 2005 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 17. 3. 2005 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 17. 3. 2005 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. Click-Stream 17. 3. 2005 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: 52961 z toho závěr: 23298 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 17. 3. 2005 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. Click-Stream 17. 3. 2005 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 17. 3. 2005 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 17. 3. 2005 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. Click-Stream 17. 3. 2005 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. Click-Stream 17. 3. 2005 • Hlavní cyklus dokud není konec - má-li aktuální pravidlo Ant page délkuAnt 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. Click-Stream 17. 3. 2005 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. Click-Stream 17. 3. 2005 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 2.2.3.1 spočítej váhu w: w  w(ppAnt) = P(ppAnt page) 2.2.3.2 zařaď pravidlo ppAntpage(w) do Rules 2.2.4 přidej implikaci ppAntpage na konec Impl

  24. Click-Stream 17. 3. 2005 Implementace

  25. Click-Stream 17. 3. 2005 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 17. 3. 2005 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 17. 3. 2005 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 17. 3. 2005 Testování algoritmů

More Related