Samenvatting Internetapplicaties Thank God for Wikipedia Dumon Willem - 3ELICTi 22 juni 2009
Deel I Web Basics Geschiedenis • • •
• • •
• •
• •
Het Web gebouwd op de structuur Internet, project v US DoD → DNS, TCP & IP resources versturen via HTTP, id = URI Semantisch web: betekenis (semantiek) geven a data, zodat ook machines k info v/h net halen 1. algemene formaten vr integratie & combinatie v data v verschillende bronnen ↔ WWW: uitwisseling docs, zonder relaties 2. taal om te bepalen hoe objecten relateren tt objecten uit de re¨ele wereld ⇒ v/d ene bron naar de andere omdat gerelateerd, zelfde onderwerp, ... Request For Comments - RFC: k later protocols w URI = URL (waar, locatie) + URN (wat, naam) http = text-based protocol, human readable, stateless → oplossingen: – cookies gebren (k gevaarlijk z) – URI’s met sessionkeys – state heen/trugsturen (nt aangeraden) – hidden fields op forms met voorgedef info die w meegestuurd (asp.net) – HTTP authenticatie – Macromedia Flash Local Stored Object – client side persistance script (blijft staan na afsluit) HTTP: – safe methods: get, head, options, trace – idempotent methods: put, post, delete → gevaarlijk, als knop weergeven, als >1x klikken mr 1x actie codes: 200=suc6, 4**=error content negotiation: aanvraag URI → beste representatie krijgen (bv juiste taal) – server side: server kiest beste uit URI-opties – client side: server stuurt alles, client kiest – transparent: caches werken als client side negotiation en kiezen beste Proxy: HTTP-tussenactor ipv end-to-end → veiligheid & performantie HTTPS: xtra SSL encryptie-laag (meestal enkel server authenticatie) 1
•
•
• • •
•
• •
principes grafisch ontwerp = CRAP: – Constrast: 2 versch elementen mtn veel verschillen ofwel lijkt het e vergissing – Repetition: stijl & visuele elementen doortrekken in hele site – Alignment: nadruk leggen, rust in pagina – Proximity: items groeperen/distanti¨eren Markup languages – HTML (logisch) = structuur beschrijven: Doctype+Head+Body (tags/element & targets in docs) – CSS (Cascading Style Sheets - fysisch) = struct+visueel, beschrijft hoe HTML moet gerendered w visueel gescheiden v inhoud (apart doc of apart deel i html), wel complexer ‘Gracefull Degardation’ = zorgen dat oudere - of browser met < fties ook werken class als meerdere html-objen zelfde style ↔ ID als mr 1 XHTML (extensible) = HTML met stengere syntaxis DHTML (dynamic) = HTML + CSS + JavaScript + Document Object Model (DOM) → interactieve webpagina’s DOM: – API: geeft progr-code toegang tt docs vr read/write – platform & taalonafhe representatie v XML & HTML – laat dynamisch updaten v website toe dr scripting – DOM-boom voor markup: script werkt in op boom nt op markup tekst & gemakkelijk vr navigatie – JavaScript = taal ondersteund in browsers vr DOM AJAX = DHTML (DOM met JavaScript) + HTML-requests → scripting code k nu ook data v HTTPserver halen + minder page reloads (dynamisch aanpassen v pagina, user-interacties) Asynchrone JavaScript & XML: XMLHttpRequest API om XML requests te maken via HTTP → XML omzetten in DOM tree om met JavaScript te k gebren JSON = JavaScript Object Notation: data coderen nr JS objecten
Deel II Web Services • • •
Webservice = appl-component toegankelijk via std webprotocollen & gft mogelijkh om op afstand een dienst te vragen a/e server Web Applicatie bestaat uit versch modules op versch platformen die dr comm-netw interageren Web architectuur: – Layer-based: ∗ 2 layers (static resources): Web Client ↔ Web HTTP Server ∗ 3 layers (dynamic resources - Business2Consumer): Web Client ↔ Web HTTP Server ↔ Database Server ∗ n layers: Business2Business – Client ↔ Server technologie: ∗ Server: application - (gevraagde info genereren) + presentation logic (in juiste vorm)
2
∗
•
1
Client: execution (validatie v gegevens in forms - HTML genereren) + presentatie (GUI) – Server Side Technologies ∗ Common Gateway Interface: appl & present logic gebundeld (platf onafh, g multithreading → iedere keer nieuwe kopie v app als simultane aanvraag) ∗ Java Servlets: gebundeld (platf onafh, multithreading, vlugger) ∗ JavaServer Pages (JSP) = extension v servlets: gescheiden ∗ Active Server Pages (ASP): gescheiden (platf afh) Web Agents: implementeren interactie met andere web-apps, Software Agent = progr dat continue loopt i/d 8rgrond en de omgeving aftast en indien nodig ingrijpt
Introductie tt Web Services
clients/apps maken gebr v server dr SOAP, services beschreven dr WSDL •
•
Simple Object Acces Protocol: 1. Envelop die beschrijft wat waar staat i/h bericht & hoe te verwerken (verplichte header + evt body (argen +methodes+resultaat)) 2. set v encodeerregels vr expressie v ‘instances’ v appl-gedefinieerde datatypen 3. conventie vr representatie v ‘remote procedure calls’ & antwoorden, SOAP k w gebr comb met andere protocollen Web Service Definition Language: XML doc met defs wruit klanten weten hoe ze service k gebruiken UDDI = Universal Description, Discovery & Integration = soort telefoonboek vr WSDL’s, wr WSDL-docs & info w in opgeslagen
•
Web server: onderst HTTP & methodes ↔ Web Service: hoger niveau service die HTTP gebruikt vr transport, gesofticeerdere interface
2
XML voor het Web
• •
XML = markup taal vr docs die gestructureerde info bevatten (simpele SGML) Markuptaal = computertaal om tekstdocs te vrzien v aanwijzingen (i/d txt) vr SW-matige verwerking
3
•
•
SGML = Standard Generalized Markup Language: moeilijk mr compleet (nt op Web) gebruikt om andere te beschrijven (doctypes defini¨eren) XML gebruikt om data te structureren, op te slaan & te verzenden/delen XML = simpel dialect v SGML XML beschrijft data, HTML beschrijft hoe data eruit ziet XML gebruiken om data te delen & om op te slaan goed gevormd XML doc = conform XML syntax ↔ geldig = conform regels v Document Type Definition (DTD) ⇒ XML Scheme = vervanger DTD omdat gemakkelijker XML Namespaces = methode om elementnaam-conflicten te vermijden: URI als prefix backwards comp: parsers die gn namespaces ondersteunen lezen erover, andere controleren XHTML = strengere & mooiere versie v HTML, zal dit ook vervangen
3
XML over SOAP ontvangen
• • • • • •
SOAP = XML schema om inhoud request/reply berichten vr te stellen, platform/taal onafh synchroon of async gestuurd, body bevat request of reply Voordelen: firewall-vriendelijk (http/smtp), andere protocols gebruiken vr eigenlijke transport (gwn doeladres vermelden), platform/verdeler onafh & XML is gwn leesbaar tightly coupled: betere performantie, beperkte inzetbaarheid ↔ loosely -
4
Service beschrijvingen
zie fig p3: • •
•
Service Provider: beschrijft zijn services (API, dataformaat) & registeert bij Broker Service Requester: cre¨eert nieuwe services dr andere services te integreren & vraagt Broker lijst met providers om eruit te selecteren k ook provider zijn, nt noodz e browser Service Broker: registreert servicebeschrijvingen v providers (formaat & API vr registreren en zoeken) UDDI defini¨eert servicebeshrijving WSDL beschrijft de API vr provider: – abstract: definieert struct v berichten v appies – concreet: communicatietype & service locatie
Bindings: keuze v protocol, def v hoe communiceren (berichten: soap / transport: TCP / data voorstelling) bindings k gemaakt w met operaties (input/output gedefnieerd) of interfaces Services: gespecifieerd hoe te vinden (naam+locatie(endpoints)) & ref nr gebruikte binding
5
UDDI: telefoonboek vr services
4 structuren: 1. 2. 3. 4.
businessEntity: beschrijving v/d provider businessService: info ovr service (naam, beschrijving, doel) bindingTemplate: adres v/e instantie v/e webservice + ref nr WSDL tModel: WSDL docs 4
6
Representational State Transfer - REST
• •
gebruikt resources = bronnen die info bijhouden, met bep id (vb URI bij HTTP) = herleiden v protocol nr set v bekende std-operaties (get/put/delete/post), gn voorkennis v/d resource nodig (↔ RPC: request+argen & reply) Als de client deze resource benaderd, w e representation v/d resource teruggestuurd, vb HTML doc. Deze representatie plaatst de client i/e andere staat. De client k veranderen v staat (state transfer), vb dr op e hyperlink in HTMLdoc te klikken → andere representatie = andere state. REST = ontwerppatroon, 6= standaard, schrijft wel gebruik v stden vr (vb HTTP, URL, XML/HTML/JPG (representaties) & image/txt (types)) REST fundamentals: – iedere service = e resource – iedere resource: ID (vb URL) – response data bevat links nr andere data → state transfer ⇒ data ontwerpen als netwerk v info ↔ OO: data omvatten
•
• •
7
Service Oriented Architecture - SOA
SOA = loosely coupled functies die opgesplitst w in services → ad hoc apps w gecre¨eerd uit bestaande services (beschikbrh v versch systemen nodig)
Deel III Web Mining 1
Intro Web Mining
Data mining = nt-onbeduidende proces v geldige, nieuwe, potentieel handige & verstaanbare patronen identificeren in data → Web Mining: deze technen toepassen op de inhoud, (hyperlink)-structuur & gebruik v webresources.
2
Web Structure Mining
onderzoeken v/d linkhi¨erarchie v/e site om navigatie te verbeteren mbv grafentheorie • •
patronen uit het web halen dr hyperlink-struct doc-structuur zelf onderzoeken (HTML-XML)
beschikbre info: in/out-degree, # paginas/bezoek, # bezoekers, boom-struct of grafe 2.1
Web Crawlers = robots/spiders
1.
gn systematisch & uitgebreid het web af, bezochte pag’s opslaan in lokale repository, pag’s indexeren op wrdn die ze bevatten volgen hyperlinks volgens depth-first of breadth-first Zoekrobots:
2. 3.
5
•
7.
spider/robot/crawler: zoekt pag’s af, haalt die binnen, parsed die op nieuwe hyperlinks enz + xtra pag’s v andere bronnen • indexer: cre¨ert ge¨ınverteerde index (dmv bep policy ivm hfdletters, zinnen...) • Query processor: levert query resultaten – front end: query herformuleren, hfdletters weg, ... – back end: zorgt voor juiste docs & rangschikking ervan Hub (veel outlinks) ↔ Authority (veel inlinks) syntactisch zoeken (adhv syntax v webgrafe) ↔ semantisch (pag’s evalueren tijdens doorzoeken → guided informed search gestructureerde data (cf databases, gebr vr support v apps) ↔ ongestruct (alle soorten data) maar ongestr: HTML,XML & nt alle databases gestruct struct ↔ betekenis: aan/afwezigh v bep wrdn, rangschikken volgens relevantie
2.2
Indexeren & Keyword zoeken
4. 5. 6.
nood a effici¨ente inhoudgebaseerde toegang tt webdocs: doc-voorstelling (term-doc-matrix = invert index & relevantie rangschikking = vector space model) 1. 2.
3. 4.
Reclame vs Zoekresult: pay/click doc preprocessen: html tags, leestekens, hfdletters, stopwrdn eruit → term-doc-matrix • bag-of-words: freq v bep term belangrijk, positie nt • complete representatie: positie ook bel, doc k trug samengesteld w Term-doc-matrix: ipv doc als id gebruiken, termen als id Vector-Space-Model: doc = vector, freq v termen = boolean (0 als nt voorkomen anders 1) → Term Frequency (TF) representatie: # kr term • freq term = 0 of som termen met som termen = over hele doc!! # kr term • freq term = 0 of max e term is voorgekomen • Cornell SMART system: freq term = 0 of 1 + log(1 + log(# kr term)) → Inverted Document Frequency: D = verz docs |D| • simpele breuk: IDF(ti ) = |D met Dti = # docs met term ti erin t | i
•
log: IDF(ti ) = log 1+|D| Dt i
5.
6.
7. 8.
⇒ TF/IDF-representatie: d ij = T F(ti , d j ) x IDF(ti ) Relevance Ranking: p 2 • afstand tss 2 vectoren: gelijkaardige docs dicht bij elkaar ( ∑m i=1 (qi − di ) ) en nadeel: doc-vector veel attrib , query-vectoren nt ⇒ altijd ver uiteen • hoek tss query vector & doc-vector (0 = gn match/relevantie, ~qi .~di ) Relevance feedback: gebruikers geven feedback op docs: D+ of D− Advanced Text Search • boolean-operators gebruiken: AND OR NOT • zinnen zoeken • deel v spreektaal herkennen: onderdelen in werkwoorden, lidwoorden,... • approximate string matching: kleine verschillen in woorden aanduiden/herkennen HTML struct gebruiken in keyword search ankers (anchor text): figuren, hyperlinks, tabellen e naam geven → ook indexeren
6
2.3
Zoekkwaliteit evalueren → Precision-Recall-Framework
D = alle docs - Dq = manueel geselectde relevante docs T
Dq R q Rq T R q Dq Dq
1.
Precision = fractie v/d gevonden docs die relevant is Rq =
2.
Recall = fractie v/d relevante docs die gevonden w = ⇒ juiste balans vinden met ranking: stel Rq gerangschikt → relevantie ri = 1 als di ∈ Dq , anders 0 ⇒ precision op rang k = 1k ∑ki=1 .ri ⇒ recall op rang k = |D1q | ∑ki=1 .ri
2.4
Similarity Search
docs gelijkaardig aan relevante, z wss ook relevant & doc2doc-gelijkaardigh accurater dan doc2query 2.5
Hyperlink Based Ranking - Link Mining
hyperlinks gemaakt dr mensen, hoe meer in-links, hoe belangrijker. Basisidee: link ernaar dus goed/interessant • • •
directe citatie bibliografische koppeling: link dr gebruik v zelfde docs co-citatie: meerdere mensen citeren dus goed (dynamisch)
2.6
Social Network Analysis - SNA
in kaart brengen/opmeten v relaties & stromen v mensen, organisaties, groepen,... → visuele/rekenkundige voorstelling • •
directe grafe met gewichten toegekend in-degree: # input edges nr 1 site → prestige
prestige p berekenen: adjacency matrix A, A(u,v) = 1 als site u site v citeert ⇒ p(u)=∑v A(v, u)p(v) 2.7
Pagerank - prestige vr websites
• •
populariteit v site meten dr # kr gem bezoeker (klikt random) de site bezoekt Rank Sink Problem: sites zonder in/outlinks: → opl: herbeginnen op random page = aan Rank Source beginnen & nt mr struct volgen mr gwn random jumpen → gepersonaliseerde PageRank: jouw pagina als Rank Source andere toepassingen: – Webverkeer schatten (load v hostserver schatten) – optimale crawling: pagerank gebr als evaluatiefie vr grafe & om sites te ordenen – optimale webpagina navigatie
•
7
2.8
Autoriteit & Hubness
•
•
HITS: Hyperlinks Induced Topic Selection - Kleinberg’s algoritme → Autoritaire site als vl citaties (inlinks), citaties v belangr sites wegen meer & hubness = belangrijkheid v site, veel outlinks nr autoritaire sites HITS vs PageRank: HITS berekent nt op voorhand (trager mr correcter), HITS = bidirectioneel → sites k elkaar b¨ınvloeden & PageRank berekent hubscores nt probl: veel dezelfde links op site & vb nieuwsgroepen: veel auto-generated links
2.9
Link-based Similarity Search
•
1 link volgen: meestal zelfde onderwerp, onderwerp verandert na min 2 links ipv keywords links gebren om gelijkaardige pag’s te vinden
3
Web Content Mining
onderzoeken v hetgeen gebruikers effectief lezen/interageren o/e pagina 3.1
Machine Learning
algoritmes vr verkrijgen v structurele beschrijvingen uit vben → nieuw result voorspellen & aantonen hoe result is bekomen opletten vr discriminatie! bep info gebruiken (vb gesl8, klasse, ...) methodes v statistiek: hypotheses testen → machine learning: juiste hypothese zoeken 3.2
Clustering
1.
Intro: • basisidee = zelfde dingen groeperen ∼ unsupervised learning • goede clustering ivm internal measurements: – intra-cluster afstand <<<: afstand tss objecten in cluster zo klein mog – inter-cluster afstand >>>: tss versch clusters zo groot mog external measurements = hoe representatief z clusters tt echte klasses K-means clustering: ‘k’ = # gewenste clusters, iteratief werken: • k willek ptn als centrum v/j clusters • lus tt gn verandering mr: – elk ander pt in cluster wrv center dichtst – clusters herberekenen Probl: traag & k op voorhand weten Hierarchical Agglomerative Clustering: incrementeel een hi¨erarchie vormen v clusters: iedere keer 2 dichtste punten/clusters samennemen, k = # clusters, q = gelijkheidsdrempel Probability-based Clustering • doc = random gebeurtenis die plaatsvindt m/e willek wssheid • doel: zoek meest aannemelijke clusters • doc ∈ cluster met bep wssheid
2.
3. 4.
8
•
5.
6.
Finite Mixtures: eindig # clusters, mbv mengeling v distributies → distro’s combineren adhv cluster gewichten ⇒ gem, standaardafwijking & kans (op steekproeven) v iedere cluster • Expectation-Maximization Algoritme: lokaal max v/d probabteit vinden, iteratief: – E-stap: cluster-wssheid v ieder geval berekenen – M-stap: parameters v clusterwssh inschatten – stoppen als verbetering verwaarloosbr Recommender Systems: • ipv doc bevat term (term-doc-matrix) → gebruiker houdt v pagina (user-doc-matrix) • Colleborative Filtering: rijen = gebruikers, kolommen = items (M(i,j) = 1 als persoon v item houdt) veel waarden tekort → voorspellen adhv gekende waarden • Clustering & Collab Filtering: persoonvectoren clusteren, mr personen h meerdere interesses → k in meerdere clusters zitten ⇒ items & personen alle2 clusteren WEKA Machine Learning: • begrijpbare set v data vrverwerkingstools (filters), leeralgoritmes & evaluatiemethodes • GUI incl datavisualisatie • omgeving om leeralgoritmes te vglen
3.3
Web Document Classification
1.
Intro: Concept = wat k geleerd w, instantie = vb v concept (met attributen) • Classification Learning = supervised: er is een uitkomst (de klasse v/h vb) • Association Learning: als g klasse & als elke struct ‘interessant’ is. k wrde v/elk attrib vrspellen → mr assoc-regels dan classif-regels → beperkingen nodig • Clustering = unsupervised: klasse v vb nt gekend (gn uitkomst) • Numerieke voorspelling = classificatie mr klasse = numeriek → supervised Supervised Learning: (a) Data verzamelen & preprocessing: training set (model opstellen), validatie set (param optimaliseren) & test set (3x versch set!) (b) Model opbouwen = training: iteratief/interactief vr beste model (c) Model testen & evalueren: test set (d) Model gebruiken om nieuwe documenten te classificeren performantie meten: # correcte classificaties, nauwkeurigh v wssheids-schattingen of fouten in numerieke voorspellingen → bep kosten Resubstitution error = error rate gekregen v training data zorgen dat in elke set (test/training) ∼ proporties v vertgnwrdigingen zitten v klasses gn overlappende sets: cross-validation = data verdelen in k subsets, elke subset 1 kr vr testen gebren & rest vr training → error-schattingen gemiddelde nemen Instance-based learning: basisidee: bewaar alle trainingsvben • nearest neighbour (NN): instantie classificeren in zelfde klasse als dichte trainingsvb • k-NN: instantie classif in klasse wrv meeste trainingsinstanties v/d k dichtste inzitten • distance-weighed k-NN: dichtste trainingsinstanties meer laten meetellen Case-based Reasoning = symbolisch ipv euclidische afstand (vb zelfde rechtszaken) Feature Selection: Curse of Dimensionality: • Entropy meet de onzuiverheid v/e verz vben • Gain = verw8e reductie v entropy bij sorteren v verz vben op bep attrib
2.
3.
4.
9
5. 6.
7. 8.
4
Naive Bayes Classification: gebruiken als gem/grote trainingsset & als onafhe attributen Relational Learning: • Classificatie meestal op bag-of-words representatie • hyperlink-based classificatie best met grafes • content-based classificatie best met vectors • classificatie op alle2? ⇒ First Order Inductive Learning (FOIL): zoeken nr clausule die enkel de positieve test-vben gebruikt LAZY vs EAGER learning: LAZY w8n op query alvorens te generaliseren, EAGER: eerst generaliseren adhv training data en daarna queries behandelen Modelselectie criteria: • Minimum Description Length - MDL: beschrijving = beschrijving model + beschrijving fouten ervan, doel = model met kortste DL vinden • compromis vinden tss complexiteit v model & voorspellingsnauwkeurigh (∼ Occam’s Razor: beste theorie = kleinste die alle feiten beschrijft) • Maximum a posteriori probability - MAP: als je a priori weet dat e theorie beter is → minder coderingsbits nodig MAP theorie vinden = MDL theorie vinden
Web Usage Mining
beschrijft hoe e pagina gebruikt w, dmv (server)logs (datum/tijd v toegang, IP, referenties ernaartoe& dr wie) → navigatiepatronen gebruikt user profielen/ratings (e-commerce) 4.1
Introductie & Definitie
1.
Sessie analyse: simpelste vorm, 1 of meerdere serversessies onderzoeken → inzicht in typisch gebr-gedrag & specifieke problen onderzoeken ↔ veel data & moeilijk te generaliseren Statische aggregatie: verzamelen data v 1 dag/sessie → rapport: kleine opslag, overzicht ↔ gn details Online Analytical Processing - OLAP: aggregatie-level aanpassen & meerdere dimensies (diepte): flexibel ↔ meer resources nodig Cross-Industry Standard Process for Data Mining - CRISP-DM: • business understanding: klanten kopen processen • data understanding: webserver sessies, transactie-info → data preparatie: sessie-id’s, sessie’s/info linken (anoniem) Ander framework: • input stage: data verzamelen (logs, registratie info & site topologie) • preprocessing stage: data cleanen/filteren, de-spidering, user-id, session-id & pad-completie • patronen ontdekken stage: clustering, association, classification • patronen evalueren/analyseren stage Clickstream analyse: • sequentie v pagevisits v/e bep user dr e pagina (page views, logs, cookies) → rekening houden met spiders! • pagina laden → alle items o/d site laden = alles apart in log → verzamelen = page view → versch page views = sessie
2. 3. 4.
5.
6.
10
•
vragen: wr komen users binnen op site (homepage?) - volgorde v page views - langs wr op site gekomen - # pages/visit - duur v bezoek - bij welke pagina gestopt
4.2
Databronnen vr Web Mining
1.
2. 3.
Web Server Log files = web logs: • Common Log Format: Remote host + Id + Authuser + Date/time + HTTP request (welk protocol, freq bezoeken, keywords nr de site) + Status code + Transfer volume field (netwerkactiviteit monitoren) • Extended Log Format: idem + Referrer (lijst met URL’s v vorig bezochte sites: hoe mensen je site gevonden h) + User Agent Field (browser, versie, OS: kijken of bot of mens = despidering, BW sparen) • M$ IIS Log Format User registration info User demographic info
4.3
Preprocessing vr Web Usage Mining
1.
Date cleaning/filtering: • variabelen extrageren: vb datum en tijd splitsen uit date/time field & URI, requestmethode, protocol uit HTTP request field • time stamp cre¨eren + duur v bezoek & sequentie v web request over versch dagen • page extensions: vb .jpg eruit, behalve als figuren als content bekeken & als BW-consumptie bekeken De-spidering: • als mogelijk: naam v crawler uit user agent field • toegangsgedrag v bot identificeren User Identification: internet = stateless (HTTP), sites anoniem bezocht & request w als ge¨ısoleerde events behandeld ⇒ state introduceren mbv user id • Cookies = text string v webserver (nt altijd inloggen, gepersonaliseerd, shopping cart behouden), k geblokkeerd/verwijderd w • IP: moeilijk id dr firewalls, proxies, caches & user name nooit ingevuld • heuristische info: als agent field versch → versch users Session Identification: lengte dat gebr o/e pagina blijft = proportioneel met zn interesses → verschil tss navigatiepag’s & pag’s met inhoud verschillende sessies als op zelfde dag mr veel tijd tss, bep drempelwrde Path Completion mbv site-topologie: back-button = cache Directories & Basket Transformation Data mining algoritmes meestal andere voorstelling v data dan logs → omzetten: data v log mappen o/e instantie - 1 sessie = 1 instantie attributen vb vlaggen: vlag aan als pagina in sessie bezocht werd
2.
3.
4.
5. 6.
4.4
Data analyse vr web Mining
• • • • •
Aantal bezoekacties = page requests Sessieduur Relatie tss bezoekacties & duur (page requst bij, hoevl tijd langer op pag?) Gem tijd/pagina (als zr laag: bots! trug nr preprocessing) duur/pag 11
4.5
Modeleren vr Web Usage Mining
1. 2. 3.
Clustering vr Usage Mining: als voorbereiding, bots↔mensen Association Learning: als ... dan ...: e-commerce, recommendations Classificatie: vb sessieduur: hoog/midden/laag onderverdelen
12