Web Usage Mining
(Analisi dei dati di log)
Web Usage Minig
1
Web Usage Mining
Analisi dei dati di log
• Introduzione
– Web usage mining
– Scopi dello WUM
• Processo di WUM
– Fase di preprocessing
•
•
•
•
•
cleaning dei dati
identificazione delle sessioni
identificazione delle page view
completamento dei traversal path
identificazione degli episode
Web Usage Minig
2
Web Mining (WM)
 WM è il processo di scoperta ed analisi di informazioni
utili dai documenti e servizi Web, usando tecniche di
data mining.
 I dati che possono essere usati nel processo di WM:





Contenuto delle pagine Web
Struttura della pagina (HTML o XML tags)
Struttura del sito (hyperlink tra le pagine)
Dati di uso (Web log) descriventi come le pagine sono accedute
Profili utente includenti informazioni demografiche e di
registrazione.
Web Usage Minig
3
Finalità del WM
 Capire il comportamento degli utenti
 Analizzare il comportamente di navigazione degli utenti per capirne
le preferenze e quindi massimizzare l’attività commerciale.
 Capire chi compra e che cosa compra
 Scoprire la % di clienti acquisiti/persi
 Determinare l’efficacia di un sito Web
 Capire i pattern di navigazione per
 migliorare la struttura del sito
 personalizzare la navigazione
 Misurare il successo dell’attività di marketing
 Capire l’impatto sull’attività commerciale delle campagne di
marketing
 Classificare gli utenti per personalizzare l’offerta
 Misurare l’efficacia di specifici banner pubblicitari.
Web Usage Minig
4
Tassonomia di WM
Web Mining
Web Content
Mining
Web Structure
Mining
Web Usage
Mining
Web ContentCustumized
Mining
Web
Structure
UsageAccess
Mining
Access
PatternMining
Analisy Web
General
Pattern Analisy
L'insieme
dei processi,Customized
delle tecniche
Web Page
Search Result
General
Access
Adaptive
(Pekwitz
1997)
Estrazione didiconoscenza
dai pattern di
Processo
di scoperta
di sites
Processo
di &Etzioni,
scoperta Pattern
die delleAnalisys
tecnologie
data
analysis,
Content
Mining
Mining
Usage
Analisys
i patterns
ciascun utente,
accesso alle pagine (WebLogMining,
informazioni utiliAnalizza
dall’analisi
informazioni
del di accesso
utilididall’analisi
della
finalizzato
alla scoperta di
uno
per
volta.
1998,
WUM, 1998, WebSIFT,1999)
contenuto di dati Web.
struttura del sito (hyperlink)
e/o schemi
significativi
di
Il sito Web ristruttura se stesso automaticamente
delle pagine (tags HTML o XML)
(pattern)
dai Web
imparando dai patterns di accesso comportamento
Può aiutare
per migliorare
la struttura
server logs
descriventi
lailnavigazione
Personalization (Suggest, 2004. WebWatcher,
del
1999)
sito,
migliorare
caching, ecc.
utenti in uno o più siti Web.
Fornisce raccomandazioni per aiutaredegli
la navigazione
degli utenti.
Web Usage Minig
5
Web Content Mining
 Il Web Content Mining (WUM) indica il processo di
scoperta di informazioni utili dall’analisi del contenuto
del Web.
 Tale contenuto può essere non-strutturato, semi-strutturato
(documenti HTML o XML) o più strutturato (tabelle,
database).
 Una tassonomia del Web mining divide il Web content mining
in due classi: Agent Based Approach e Database Approach.
 Agent Based Approach prevede l’uso di agenti che possono
operare autonomamente a semiautonomamente (per uno o un
calsse di utenti) per scoprire e organizzare informazioni dal
Web.
Web Usage Minig
6
Web Content Mining
 Gli agenti in questa classe si dividono in:
Intelligent search agent
Vanno oltre i semplici search engines, usano, ad
esempio, informazioni descriventi il profilo di un utente
o classe di utenti o altre specifiche informazioni per
organizzare ed interpretare le informazioni scoperte.
Information filtering
Utilizzano tecniche di IR, informazioni sui hyperlink in uso
ed eventali altri approcci per classificare i documenti.
Web Usage Minig
7
Web Content Mining
 Personalization Web agents
Collaborative filtering.
Raccomanda pagine che sono state prima
richieste da altri utenti aventi simile caratteristiche
User registration preference
Raccomandazioni basate sul profilo o informazioni
demografiche dell’utente.
Content-based filtering
Raccomanda pagine che risulano, in base a qualche
criterio, simili al profilo dell’utente.
Database Approach
Vede i dati Web come memorizzati in un database e
quindi interrogabili tramite un linguaggio di query.
Web Usage Minig
8
Web Structure Mining
 E’ il processo di scoperta di informazioni utili dall’analisi
della struttura del sito (hyperlink) e/o delle pagine (tags
HTML o XML).
 L’informazione sulla struttura del sito Web può essere
usata per classificare le pagine o creare misure di similarità
tra documenti.
 PageRank
 misura l’importanza di un pagina calcolando il numero di pagine
che a questa puntano.
Web Usage Minig
9
Web Usage Mining
Il Web Usage Mining (WUM) indica l'insieme complessivo dei
processi, delle tecniche e delle tecnologie di data analysis, finalizzato
alla scoperta di significativi schemi di comportamento (pattern) dai
Web log descriventi la navigazione degli utenti in uno o più siti Web.
I Web log possono essere esaminati dal lato client o dal lato server.
Dal lato server permettono di scoprire informazioni sul sito/siti su cui il
servizio risiede, che possono essere usate, ad esempio, per migliorare la
struttura del sito
Dal lato client permettono di individuare informazioni su sequenze di
click (clickstrem), sul singolo utente o su gruppi di utenti, che possono
usate , ad esempio, per la personalizzazione del contenuto delle pagine.
Web Usage Minig
10
Scopi dello WUM
Web Usage
Mining
Personalization
System
Improvement
Site
Modification
Web Usage Minig
Businness
Intelligence
Usage Characterization
11
Scopi dello WUM
Personalization
– Dei contenuti (banner, prodotti, campagne
pubblicitarie)
– Recommendation systems
• Collaborative filtering
– Similarità tra le preferenze di utente e le preferenze
espresse esplicitamente da altri utenti.
• Content-based filtering
– Similitudine del contenuto di una pagina con il profilo
dell’utente.
• Usage-based filtering
– Basato sulla storia delle visite dell’utente
Web Usage Minig
12
Scopi dello WUM
 Business Intelligence
–
–
–
–
Customer attraction
Customer retention
Cross sales
Customer departure
 System Improvement
–
–
–
–
–
Web caching
Network trasmission
Load balancing
Intrusion detection
Fraud, etc.
Web Usage Minig
13
Scopi dello WUM
Site Modification
Dettagliato feedback sul comportamento degli
utenti per:
 permettere al Web designer di fare scelte di
ridisegno di un sito.
costruire modelli adattivi che permettono di
cambiare automaticamente la struttura di un sito in
modo da adattarlo meglio alle esigenze degli utenti.
Web Usage Minig
14
Scopi dello WUM
 Web Usage Characterization
 Consiste nell’analisi di dati di log per fornire
informazioni quali: numero di risultati e pagine visitate,
numero di visite, browser utilizzato, file salvati, ecc.
atte a caratterizzare l’uso, il contenuto e la struttura di
un sito Web.
 In genere sono usate tecniche adatte ad ottenere
informazioni strutturate (es. tecniche statistiche) che
non fanno parte delle tecniche di data mining.
Web Usage Minig
15
Scopi dello WUM
Web Usage Minig
16
Web Usage Minig
17
Sorgenti di dati per WUM
Web Usage Minig
18
Sorgenti di dati per WUM
 Server level
– Il server Web registra, in uno o più file, i dati
descriventi il comportamento di navigazione degli
utenti.
 Client level
– Il client invia a un repository informazioni concernenti
il proprio comportamento.
 Proxy level
– L’informazione è memorizzata livello server proxy.
Web Usage Minig
19
Livello Server
 Dati collezionati automaticamente nei file:
– Access log file
• Dati relativi alle richieste effettuate dagli utenti. Memorizzai in
vari formati, i più comuni CLF (Common Log Format) o
ECLF (Extended CLF)
– Error log file
• Dati relativi ad errori incorsi durante l’invio delle pagine
richieste.
– Referrer log file
• Memorizza lo URL della pagina dalla quale è stata effettuata la
richesta al sito.
– Agent log file
• Memorizza il nome ed il numero della versione del browser
usato dall’utente per fare la richiesta.
Web Usage Minig
20
Server access log file
Formato CLF
IP
Address
Userid
Time
Method/URL/
Protocol
Status
Size
IP Address  indirizzo Internet della macchina da cui proviene la richiesta,
può corrispondere all’indirizzo di un server proxy.
UserId  presente quando la richiesta richiede l’autenticazione per accedere
a determinati file. Se non disponibile compare il segno “-”.
Time 
tempo al quale il Web server ha ricevuto la richiesta
Method/URL/Protocol  modalità di accesso al Web server
Status 
codice ritornato dal server in risposta all’azione richiesta
Size 
numero di bytes trasmessi
Web Usage Minig
21
QuickTime™ e un
decompressore TIFF (LZW)
sono necessari per visualizzare quest'immagine.
Web Usage Minig
22
Server access log file
Formato ECLF
IP
Address
Userid
Time
Method/URL/
Protocol
Status
Size
Referrer
Agent
IP Address  indirizzo Internet della macchina da cui proviene la richiesta,
può corrispondere all’indirizzo di un server proxy.
UserId  presente quando la richiesta richiede l’autenticazione per accedere
a determinati file.
Time 
momento in cui il Web server ha ricevuto la richiesta
Method/URL/Protocol  modalità di accesso al Web server
Status 
codice ritornato dal server in risposta all’azione richiesta
Size 
numero di bytes trasmessi
Referrer  URL del documento da cui è stata emessa la richiesta della
pagina.
Agent 
sistema operativo e browser utilizzati dal client
Web Usage Minig
23
Method/URL/Protocol
 Method: modalità di accesso al Web server GET
 GET, POST e HEAD
 URL: indirizzo della della risorsa nel Web server
 Indica il file che è stato acceduto. Quando è specificata
una directory /, è il server a decidere che cosa ritornare
all’utente. Di solito il file file “index.html” or
“home.html”.
 Protocol: nome del protocollo di comunicazione
 HTTP/1.0
Web Usage Minig
24
Status
 Status codes are defined by the HTTP
protocol.
 Common codes include:
200: OK
3xx: Some sort of Redirection
 4xx: Some sort of Client Error
5xx: Some sort of Server Error
Web Usage Minig
25
Server access log file
Web Usage Minig
26
Server access log file
 Causa la presenza di vari livelli di caching i dati
collezionati possono non essere attendibili.
 Gli accessi a pagine memorizzate nella cache del
client o proxy non sono registrati nei server log.
 Il modello stateless del protocollo HTTP non
consente l’identificazione delle sessioni.
 L’informazione inviata da browser al server tramite
il metodo POST non è registrata nei file di log.
Web Usage Minig
27
Tempi di richiesta/risposta di una pagina
Web Usage Minig
28
Meccanismo dei Cookie
 Un cookie è un identificatore del client generato
dal server web e spedito ad un browser, che, se
abilitato, lo memorizza per usi successivi.
 In genere, è assegnato ad un browser la prima
volta che questo si collega ad un server Web.
 Il messaggio è poi inviato al server Web
ogniqualvolta il browser richiede una pagina a tale
server Web.
 Principale uso: identificare gli utenti per fornire ad
esse contenuti/servizi personalizzati.
Web Usage Minig
30
Formato del Cookie
 In genere costituito da 7 campi:
• Dominio  identificatore del server che ha creato il cookie
• Metodo  specifica il metodo con cui il cookie è inviato
= TRUE se inviato usando un HTTP header
= FALSE se inviato tramite un Javascript
• Path
 specifica il sottoinsieme di URL per cui il cookie è valido
• Secure  specifica se il cookie è criptato
• Expiration time  specifica il tempo di vita del cookie
• Name
 identifica il cookie
• Value
 memorizza informazioni (es. pagine visitate, scelte
effettuate, ecc)
 Il meccanismo dei cookie deve essere abilitato dal
client.
Web Usage Minig
31
Livello Client
 Dati collezionati tramite un agente software (es.
Javascript o Java applets) o con specifiche
estensioni al codice sorgente del browser usato.
 L’uso di un browser modificato può permette di
collezionare dati descriventi gli accessi a più
siti Web.
 In ambedue i casi è richiesta la collaborazione
dell’utente.
 Rispetto al livello server ha il vantaggio di
rimuovere problemi dovuti all’uso della cache e
all’identificazione delle sessioni.
Web Usage Minig
32
Livello Proxy
 Un proxy Web opera come un intermediario tra i
brower client e i server Web.
 L’informazione è memorizzata a livello server
proxy.
 Può riguardare più siti Web.
 Sono collezionati i dati dei soli client che
accedono al sito passando per il server proxy.
Web Usage Minig
33
Data modelling
 Le informazioni collezionate ai vari livelli
possono essere usate per identificare varie
astrazioni di dato.
 W3C ha definito le astrazioni di dato:
– User, Page view, Click stream, User session, Server
session, Episode
relative all’uso del Web.
 Possono essere usate per analizzare l’uso del Web.
Web Usage Minig
34
Data modelling
 User: un singolo individuo che sta accedendo file da uno o
più server Web tramite un browser.
 Page view: insieme di file (es. frame, graphic, ecc.) che
contribuisce alla visualizzazione di una singola pagina sul
browser utente.
 Click-stream: una sequenza di richieste di page view.
 User session: click-stream di page view per un singolo
utente all’intero dell’intero Web.
 Server session: insieme di page view relativo ad uno
specifico sito Web (comunemente detta visita o sessione).
 Episode: qualsiasi sottoinsieme semanticamente
significativo di un server o user session.
Web Usage Minig
35
Fasi del Processo di WUM
Web Usage Minig
37
WUM - Preprocessing
 Consiste nel convertire i dati usage, content e strucure,
collezionati ad i vari livelli, nelle astrazioni di dato adatte
per la fase di pattern discovery.
 Informazioni sul contenuto e struttura di un sito possono
essere usate per, ad esempio, limitare l’analisi a pagine che
si riferiscono ad un argomento, o ad una data struttura (es.
pagine tra loro collegate).
 Dipende dal tipo di studio che si intende effettuare.
 In generale può essere vista strutturata secondo tre fasi
principali: data cleaning, user/session identification, page
view identification e un fase opzionale: path completion.
Web Usage Minig
38
Fasi del preprocessing
Web Usage Minig
39
Data cleaning
 E’ una fase di “pulizia” del file di log per
eliminare informazioni irrilevanti o outlier,
rispetto all’analisi condotta.
 La richiesta di una pagina comporta il download
automatico di tutti i file che la costituiscono.
 Ciò comportare la registrazione di più entry nei
file di log.
 Un approccio comune consiste nel mantenere solo
la registrazione relativa alla pagina effettivamente
richiesta.
Web Usage Minig
40
Data cleaning
 Tipicamente sono:
 cancellate registrazioni relative a: file grafici (es. .gif o
.jpg), agent o spider,
 normalizzate le URL ad un formato comune,
Es. sample.edu, www.sample.edu,
www.sample.edu/ e
www.sample.edu/index.html riferiscono tutte la
stessa pagina.
 cancellate le registrazioni relative a agent e spider
(robots.txt),
 cancellate le registrazioni il cui status code è diverso da 200.
 cancellate le richieste effettuate con i metodi POST e
HEAD. POST di solito si riferisce a richieste CGI, HEAD è
normalmente usato dai robot. Richieste che di solito non si
riferiscono a richieste fatte dagli utenti.
Web Usage Minig
41
Esempio di access log file nel formato CLF
IP
User
ID
Time
Method
URL
Protocol
Status
Size
128.456.78.9
----
15/Jun/2001:03:04:01
GET
A.html
HTTP/1.0
200
3290
128.456.80.5
----
15/Jun/2001:03:05:41
GET
A.html
HTTP/1.0
200
3290
128.456.78.9
----
15/Jun/2001:03:10:00
GET
S.gif
HTTP/1.0
200
590
128.462.03.5
----
15/Jun/2001:03:12:31
GET
robots.txt
HTTP/1.0
200
1120
128.456.05.3
----
15/Jun/2001:03:24:01
GET
C.html
HTTP/1.0
200
5590
128.456.80.5
----
15/Jun/2001:03:27:00
GET
A.html
HTTP/1.0
200
3290
128.462.03.5
----
15/Jun/2001:03:30:23
GET
D.html
HTTP/1.0
200
2270
128.456.90.5
----
15/Jun/2001:03:34:01
HEAD
A.html
HTTP/1.0
200
190
Es. di access log file ( form.CLF) dopo la fase data cleaning
IP
User ID
Time
Method
URL
Protocol
Status
Size
128.456.78.9
----
15/Jun/2001:03:04:01
GET
A.html
HTTP/1.0
200
3290
128.456.80.5
----
15/Jun/2001:03:05:41
GET
A.html
HTTP/1.0
200
3290
128.259.28.8
----
15/Jun/2001:03:24:01
GET
B.html
HTTP/1.0
200
3000
128.456.80.5
----
15/Jun/2001:03:27:00
GET
C.html
HTTP/1.0
200
5590
128.456.78.9
----
15/Jun/2001:03:30:23
GET
B.html
HTTP/1.0
200
3000
Web Usage Minig
42
Problemi relativi alla
identificazione degli utenti e sessioni
Individuazione degli utenti di un sito
Ricostruzione del comportamento di navigazione
degli utenti (generalmente riferito ad un singolo
sito)
Uso di Proxy server
Uso di connessioni al sito tramite ISP (Information
Service Provider)
Individuazione dei riferimenti a pagine
memorizzate nelle cache
Impossibilità dei Web server a distingure tra
Web Usage Minig
43
differenti visite.
Metodi per l’identificazione degli utenti
e delle sessioni
Software agent
Implementati in Java Applet sono caricati nel client-browser una sola
volta all’esecuzione della prima richiesta. Pemettono di collezionare
dati relativi alle richieste successive che sono inviati al server Web.
Modified browser
Il codice sorgente del browser usato può essere modificato per
collezionare dati relativi alle richieste fatte all’intero Web.
IPAddress/Agent
Assume che ciascuna coppia IP address/Agent identifica un utente.
Embedded session ID
Alla prima richiesta fatta da un client-browser al server, quest’ultimo
ritorna la pagina richiesta modificata tramite l’inclusione di un ID
identificante la sessione. Le richieste a pagine successive sono
ricinosciute tramite tale ID.
Web Usage Minig
44
Metodi per l’identificazione degli utenti
e delle sessioni
Cookie
Un token è memorizzato nel client-browser. Permette di identificare
facilmente gli utenti di un sito Web
Registration
L’utente accede al sito Web tramite le sue informazioni di registrazione
al sito stesso.
Web Usage Minig
45
Identificazione degli utenti
Web Usage Minig
46
Identificazione degli utenti e delle sessioni
 Dati disponobili nei server log per identificare
l’utente e le sessioni: indirizzo IP, agent e clickstream dal lato server.
 Alcuni tipici problemi che si incontrano in questo
caso sono:
–
–
–
–
–
Singolo indirizzo IP/molteplici visite
Molteplici indirizzi IP/singola visita
Molteplici indirizzi IP/singolo utente
Molteplici visite/singolo utente
Singolo client/molteplici utenti
Web Usage Minig
47
Identificazione degli utenti
Singolo ind. IP/molteplici server session
Molteplici client-browser accedono al Web passando
per un server proxy.
Client
Singolo indirizzo IP
usato da più utenti
Client
Proxy
server
Web
server
Metodo IP address & Agent non applicabile
Web Usage Minig
48
Identificazione degli utenti
Molteplici indirizzi IP/singola server session
Ciascuna richiesta del client-browser può
essere evasa usando un differente indirizzo IP
Più indirizzi IP
in una server session
Client
ISP
server
Web
server
Metodo IP address & Agent non applicabile
Web Usage Minig
49
Identificazione degli utenti
Singolo client/molteplici utenti
In questo caso abbiamo lo stesso IP usato da più utenti che in
genere usano anche lo stesso browser.
Molteplici sessioni server/singolo utente
Si verifica quando un utente apre più di un browser e accede
simultaneamente parti differenti di un sito Web.
In questo caso l’utente accede con lo stesso IP usando lo
stesso browser o differenti browser.
Molteplici indirizzi IP/singolo utente
Si verifica quando un pool di utenti condivide la stesso insieme
di elaboratori.
Un utente che accede il Web da elaboratori differenti avrà un IP
differente da una sessione all’altra sessione.
Web Usage Minig
50
Metodo Embedded Session ID
1
Client
browser
Web server
5
2
1) Client-browser emette la richiesta
2) Web server riceve la richiesta
e la passa a Web application
3) Recupero del contenuto (pagina)
4) Web application genera lo ID e
cambia ogni href (link ad altrer pagine)
nella pagina agiungendoci lo ID
5) La pagina modificata è restituita dal
web server al client-browser
Le richieste a pagine successive sono
riconosciute tramite lo ID
5
Web application
<a href =“link.htm?ID>
anchor text
</a>
3
4
Web content
<a href =“link.htm>
anchor text
</a>
Web Usage Minig
51
Identificazione delle sessioni
 Una volta che l’utente è stato individuato, il clickstream (la sequenza di richieste) di ciascun utente
deve essere diviso in sezioni.
 La non disponibilità delle richieste fatte ad altri
siti Web rende difficile conoscere quando un
utente ha lasciato un sito Web.
 Un timeout di 30 minuti è comunemente usato per
individuare la fine di una sessione.
 Se il tempo che intercorre tra due richieste
successive supera il timeout si assume che
l’utente abbia iniziato una nuova sessione.
Web Usage Minig
52
Identificazione delle sessioni
 L’uso di tecniche quali: cookie, registration,
software agent, embedded session ID e modified
browser, permettono una facile individuazione delle
sessioni.
 Nel caso peggiore in cui si hanno solo informazioni
dai logs, gli utenti e le sessioni sono considerati
essere la stessa cosa.
 Non c’è modo di conoscere se sessioni identificate
dalla stessa coppia IP/Agent sono dello stesso
utente.
Web Usage Minig
53
Metodi per l’identificazione delle sessioni
Timeout: se il tempo che intercorre tra due
richieste successive supera un certo limite si
assume che l’utente abbia iniziato una nuova
sessione.
Referring page file: se lo referring page file per
una richiesta non fa parte della sessione corrrente
si assume che la richiesta viene da una sessione
differente.
IP address/agent: un agent differente per un IP
identifica una sessione differente
Web Usage Minig
54
Metodi per l’identificazione delle sessioni
Stesso IP-Agent/Differenti sessioni (Closest)
Caso in cui la coppia IP/Agent potrebbe
appartenere a più di una sessione.
La richiesta è assegnata alla sessione che è più
vicina alla referrer page al momento della richiesta.
Stesso IP-Agent/Differenti sessioni (Recent)
 Nel caso in cui si abbiamo più sessioni con la stessa
distanza dalla pagina richiesta, la richiesta è assegnata
alla sessione che ha acceduto la referrer page più di
recente.
Web Usage Minig
55
Web Usage Minig
56
Web Usage Minig
57
Web Usage Minig
58
Using referrer and agent information, 4 sessions are determined
Web Usage Minig
59
Esempio di euristica per l’identificazione
delle sessioni
• Basata sui metodi:
–
–
–
–
Timeout,
IP address/agent,
Referred file,
Closest e recent.
Web Usage Minig
60
Esempio di euristica per l’identificazione
delle sessioni
Heuristic Session Identify
1. Let Hi = {f1, …….., fn} denote a time ordered session history
2. Let lj, fj, rj, tj denote a log entry (fj request, rj referrer, tj time)
3. Let T denote the session timeout
4. Sort data by IP address, agent, and time
5. for each unique IP/Agent pair do
6.
for each lj do
7.
if ((tj – tj-1) > T) V rj  {H0, …….., Hm} then
8.
increment i
9.
add lj to Hi
10.
else
11.
assign = Distance(H, rj)
12.
add lj to Hassign
13. end
Web Usage Minig
61
Esempio di euristica per l’identificazione
delle sessioni
Function Distance (H,f)
1.
Let Hi denote a time ordered session history
2.
Let f denote a page file
3.
set min = 9999
4.
for each Hi  H do
5.
if f  Hi
6.
d i = Hi.size() - Hi.index(f)
7.
t i = Hi.tn - Hi.tf
8.
if (d i < min) then
9.
assign = i
10.
min = d i
11.
else if (d i = min)
12.
if (t i < tassign)
13.
assign = i
14. return assign
15. end
Web Usage Minig
62
Esempio di identificazione delle sessioni
Le richieste alle linee 4,5,6 e 8 sono identificate come facenti di
una sessione poiché hanno un agent differente dalle altre richieste.
Le altre possono fare parte o no di una stessa sessione.
Web Usage Minig
63
Esempio di identificazione delle sessioni
#
I
P
Time
Request
Referrer
13
15:06:06
B
1
1
15:04:41
index
-
14
15:06:18
2
B
2
15:04:41
1
index
15
15:06:19
F
B
3
15:04:41
A
index
16
15:06:36
1
C
7
15:05:18
C
1
17
15:07:24
G
2
9
15:05:43
index
-
18
15:07:49
4
F
10
15:05:43
1
index
19
15:07:49
F1
F
11
15:05:45
A
index
20
15:09:59
5
G
12
15:06:01
H
C
21
15:10:02
G3
G
Web Usage Minig
64
#
I
P
Time
Reques Referre
t
r
1
15:04:41
index
-
2
15:04:41
1
index
3
15:04:41
A
index
7
15:05:18
C
1
9
15:05:43
index
-
10
15:05:43
1
index
11
15:05:45
A
index
12
15:06:01
H
C
13
15:06:06
B
1
Web Usage Minig
65
Identificazione della sessione per la richiesta
di linea 13
Function
Distance (H,f)
Tempo
corrispondente
H = [H1={index,1,A,C,H}, H2={index,1,A}]
1. Let Hi denote a time ordered
all’ultimo
accesso
f=1
2. session
historyal
3. file
Let fnella
denote
a page file
page
sessione
H1
Step 1
4. set min = 9999
H1  H e 1  H1
5. for each Hi  H do
H1.size() = 5, H1.index(1) = 2, d1= 3,
6.
if f  Hi
7.
d i = Hi.size() - Hi.index(f)
H1.tn = 15:06:06, H1.t1 = 15:04:41, t1 = 85,
8.
t i = Hi.tn - Hi.tf
d1 < 9999 ==> assign = 1, min = 3.
9.
if (d i < min) then
10.
assign = i
Tempo
corrispondente
Step 2
11.
min
=page
di
all’accesso
del
H2  H e 1  H2
12.
else if (d i = min)
file
trattata
H2.size() = 3, H2.index(1) = 2, d2= 1,
13. nella richiesta
if (t i < tassign
)
14.
assign = i
H2.tn = 15:06:06, H2.t1 = 15:05:43, t2 = 23,
15. return assign
d2 < min ==> assign = 2, min = 3.
16. end
E’ ritornato il valore 2, quindi la richiesta
è associata alla sessione 2
Web Usage Minig
66
Scarica

PPT