motori di ricerca

Transcript

motori di ricerca
Appunti di Sistemi
A cura del prof. ing. Mario Catalano
I motori di ricerca Internet
1
Ricerca efficace
Il problema principale della
ricerca in Internet è riuscire a
recuperare il maggior
numero di documenti
pertinenti tra quelli esistenti.
Il rischio più grande non è
trovare poco materiale bensì
recuperare una massa
ingestibile di informazioni di
cui solo una parte pertinente
all'oggetto della ricerca.
2
Due fenomeni importanti


Rumore: un’interferenza che influisce sulla fedeltà della
comunicazione tra fonte e ricevente; nel nostro caso è
rumore il recupero di documenti non rilevanti nella
risposta a una richiesta.
Feedback: possibilità di correggere o chiarire subito il
messaggio tra fonte e ricevente; il feedback riduce perciò
gli effetti del rumore e garantisce un grado ottimale nella
comunicazione.
3
Caratteristiche
dell’informazione in Internet

Fluidità esterna

(alcune risorse web non si
lasciano facilmente ricondurre al
concetto di testo; es.: chat,
newsgroup, ecc.).
(nascita, morte, migrazione e/o
cambiamenti di siti o pagine web).

Fossilizzazione
(link morti, documenti superati da
versioni più recenti, ecc.).


Disintermediazione
(passaggio diretto del testo,
dall’autore al lettore:vantaggi e
pericoli).
Fluidità interna
(risorse, spesso molto articolate,
in continua evoluzione).
Detestualizzazione

Omogeneizzazione
(difficile discernere la qualità di
un documento sul web dal solo
“aspetto esterno”).
4
Il web invisibile
Con l’espressione invisible web si indicavano quelle risorse
del tutto impenetrabili ai motori di ricerca: testi in formati non
“leggibili” (es. pdf immagine scannerizzati), risorse interne a
database, o file difficilmente riducibili a testo, quali file audio
e video.
Tutte queste risorse stanno diventando meno invisibili grazie
all’evoluzione dei motori di ricerca. Ma la continua crescita
del Www sta peggiorando la situazione, così una buona
parte del Web continua a risultare oggi di fatto irraggiungibile
e quindi invisibile.
5
Pay for placement
Il «pay for placement» è un meccanismo per cui un’azienda
paga per garantirsi una buona posizione nella lista ottenuta
dalla ricerca con determinate parole chiave: ciò favorisce i siti
delle aziende commerciali a discapito di siti non profit o
comunque privi di finanziamento.
A tal proposito non sempre i motori di ricerca dichiarano la
propria politica rispetto a queste soluzioni. Google vende non i
risultati, ma solo dei banner pubblicitari che compaiono
associati a certe parole di ricerca, dichiarando di non piegarsi
alla logica del pay for placement.
6
Motori di ricerca




Un motore di ricerca è un servizio di rete che ha la funzione di
indicizzare automaticamente le pagine del web
Si accede ad un motore di ricerca come ad ogni altra pagina
tramite il corrispondente indirizzo URL
Il servizio è gratuito.
I gestori del sito finanziano la loro attività tramite la pubblicità
che compare nelle pagine del sito oppure tramite quote per
l’inserimento di nuovi URL nel database che contiene le
7
informazioni sulle quali si effettua una ricerca.
Motori di ricerca



I motori di ricerca per termini permettono di ricercare parole o
combinazioni di parole in un archivio indicizzato di documenti in
formato digitale.
La ricerca attraverso un indice per termini è molto comoda nel
caso in cui le informazioni da cercare sono caratterizzate da
termini molto specifici.
Occorre tuttavia tenere presente che si tratta di una ricerca
meccanica: il programma utilizzato non farà altro che cercare i
termini da noi forniti all'interno di un immenso indice alfabetico
in suo possesso - indice tenuto aggiornato da un software che
si muove continuamente lungo la rete, seguendo ogni link
incontrato e indicizzando tutte le pagine percorse - e fornirci le
corrispondenze trovate.
8
Alcune statistiche
Il PageRank
Il PageRank (letteralmente, “classifica delle pagine”,
ma più significativamente denominato “indice di
popolarità”) è lo strumento che permette ai motori
di ricerca di ordinare i risultati delle ricerche.
Il PageRank di una pagina è sostanzialmente
determinato da:
 Quantità di link presenti su altre pagine web;
 Quantità di link presenti su pagine con PageRank
alto;
 Rilevanza in base ai criteri di ricerca.
La cache dei motori di ricerca
La cache di un motore di ricerca ci offre l’ “immagine”
della pagina indicizzata, che viene archiviata sui
server del motore di ricerca. In alcuni casi in cui il
link diretto non è disponibile, questa caratteristica ci
offre la possibilità di visualizzare comunque l’ultima
versione salvata di quella pagina.
Spider

Le pagine da indicizzare vengono visitate dai
motori di ricerca tramite strumenti detti spider
 Visitano il web raccogliendo URL e relative parole
chiavi

Problemi:
 Non è possibile visitare l’intero Web a causa della
sua estensione e del suo continuo mutare
 Non è possibile mantenere aggiornata la visione del
Web da parte dei motori di ricerca a causa del fatto
che queste possono essere modificate o rimosse
12
Spider
Gli spider (detti anche Bot, Robot o Crawler) sono browser
testuali che hanno il compito di "girare" la Rete per controllare
la sopravvivenza o l'aggiornamento di pagine già visitate
oppure per ratificare l'arrivo di nuove pagine (sempre
presumibilmente di qualche interesse per il proprio database).
Lo spider visita le pagine Web cercando di carpirne i tratti
informativi essenziali senza perder tempo con filmati, immagini,
suoni, plug-in
Lo spider effettua una visita veloce di tutta o solo della parte
iniziale di una pagina Web (nemmeno la visita nella sua
interezza se il codice di cui è composta è troppo lungo)
cercando di ricavare da questa parte le informazioni che ne
inquadrano il contenuto informativo nel suo complesso.
13
Proviene da macchine costantemente connesse in Rete.
Posizionarsi sui motori di ricerca
(Top-ranking)
In primo luogo verificare se si è stati indicizzati, digitando l'url
del sito nell'interfaccia di ricerca del motore per vedere se
appare fra i risultati.
Si intende top-ranking le prime venti posizioni dei risultati di
una interrogazione svolta su un motore di ricerca digitando
specifiche stringhe di ricerca: un sito ad esempio che risulta fra
le prime venti posizioni per la stringa di ricerca 'motori' si dice
essere al Top Ranking per quella specifica stringa di ricerca
(keyword o coppia di keyword).
14
Tecniche di top ranking
- accordi commerciali col motore di ricerca (si paga!) per risultare fra le
pagine sponsorizzate.
- farsi linkare da altri siti web, possibilmente da quelli già indicizzati dai motori
di ricerca e con un buon ranking. La presenza di LINK IN-BOUND da parte
di siti con un buon ranking trascina verso l’alto il ranking del proprio sito.
- realizzare una pagina Web che sia correttamente interpretabile da un motore
di ricerca e far risaltare su quella pagina determinate parole chiave
(keywords)
- buona connettività del sito Web per poter essere accessibile agli spider dei
motori di ricerca
- scelta efficace del nome di dominio e url delle pagine Web (significativo
rispetto alle keyword, originale rispetto a siti concorrenti, costante nel tempo
senza soppressione di url)
- aggiornamento dei contenuti delle pagine
15
Codice a misura di spider
Il codice HTML di una pagina Web che aspira ad un
top-ranking deve essere:



leggero.
accessibile.
capace di esaltare delle parole chiave.
Una pagina accessibile a qualsiasi tipo di utenza
risulta maggiormente digeribile da un motore di
ricerca che non disdegnerà di metterla in evidenza
(a parità di popolarità sul Web) a scapito di pagine
difficilmente interpretabili.
16
Search Query



Per attivare la ricerca si deve formulare una search
query (interrogazione di ricerca)
Il risultato è un elenco di hit (URL di pagine che
soddisfano la richiesta)
Le hit vengono elencate in ordine di rilevanza rispetto alla
search query. Vengono usate diversi metriche:




Pagine che contengono più volte le parole chiave
Pagine su cui esistono più link in generale
Pagine su cui esistono più link all’interno delle hit considerate
Noise (Rumore): fenomeno a causa del quale buona
parte di hit non sono interessanti
17
Cosa sono le query?





Inizialmente possiamo pensare ad una query in un motore di ricerca come
ad una lista di parole chiave
Ad es: cinema a Napoli
Le parole vengono cercate all’interno dei documenti memorizzati nel sito del
motore di ricerca in qualunque ordine e non necessariamente tutte insieme
(per default ricerca disgiuntiva)
Inoltre vengono filtrate per eliminare le parole troppo comuni (ad es. articoli)
e le varianti (ad es. desinenze e plurali)
Ad es: cinema a Napoli va letta come: cerca i documenti che contengono la
parola cinema oppure la parola Napoli
18
Criteri di ricerca

Il risultato di una query viene calcolato considerando
le pagine che contengono
–
–
–

tutte o alcune parole della query
parole simili
parole con significato simile
Gli indirizzi calcolati vengono ordinati per rilevanza e
affidabilita’
–
–
–
–
Contiene piu’ parole della query
Contiene le parole vicine tra loro
Contiene le parole nel titolo della pagina
I siti non sono stati segnalati da utenti insoddisfatti
19
Strutturare una query

Esistono alcuni comandi per specializzare la
ricerca che sono considerati standard dalla
maggior parte dei motori di ricerca
– Bypassare i filtri ed includere determinate parole
– Escludere pagine con determinate parole
– Forzare la ricerca di una sequenza di parole
chiave

In realta’ ogni sito di ricerca fornisce il
servizio advanced search (e relativo help)
che permette di specializzare la ricerca
secondo le proprie caratteristiche
20
Search Query: gli operatori
La ricerca all’interno di un motore di ricerca può
essere ottimizzata tramite diversi operatori:


L’operatore “AND” permette di selezionare tutte le
pagine contenenti tutti i termini indicati nel campo di
ricerca. E’ l’opzione di default quindi non c’è
comunque bisogno di indicarlo.
L’operatore “OR” permette di selezionare tutte le
pagine contenenti almeno uno dei termini indicati
nel campo di ricerca.
Search Query: gli operatori


L’operatore “-” (meno) permette di specificare quali termini
associati ad un primo termine generico, vadano ignorati nella
ricerca. In pratica, indicando ad esempio nel campo di ricerca
“sport –basket” otterremo tutte le pagine in cui sia presente la
parola “sport” ad eccezione di quelle in cui sia presente anche
la parola “basket”.
L’operatore “+” (più) permette di rendere la ricerca sensibile ai
simboli grafici (accenti, diacritici, ecc.). Ad esempio se
vogliamo ricercare precisamente la parola “portò” (passato
remoto del verbo portare, terza persona singolare), basterà
digitare il simbolo “+” immediatamente prima della parola
(“+portò”).
Nota bene: in entrambi i casi tra l’operatore e il termine da ricercare non ci
devono essere spazi!
Search Query: gli operatori


Le virgolette: qualora si voglia ricercare un preciso
insieme di parole, o una frase esatta, basterà
racchiudere i termini di ricerca tra virgolette.
L’operatore “*” (asterisco) funge da carattere jolly.
Digitando ad esempio nel campo di ricerca la stringa
“televi*” il motore di ricerca selezionerà tutte le pagine
in cui sia presente una parola che inizi con “televi”.
Qualsiasi carattere o serie di caratteri segua, è
irrilevante.
Search Query: gli operatori
Gli operatori di ricerca appena visti possono
essere anche utilizzati insieme
(concatenati). Ad esempio possiamo
inserire nel campo di ricerca:
Televisione “Domenica Sportiva” –calcio
La “Ricerca Avanzata”
Se non si vuole scrivere una serie lunga di parole
unite ad operatori di ricerca, è possibile utilizzare la
“Ricerca Avanzata”, che permette di utilizzare tutte
le opzioni già descritte in maniera intuitiva.
La ricerca avanzata offre inoltre diverse altre
opportunità, come la selezione della lingua, del
formato del file, la ricerca all’interno di un
particolare sito web…
Il motore di ricerca mette a disposizione degli utenti
anche una serie di operatori avanzati che
permettono di affinare ulteriormente la ricerca.
Operatori avanzati




Operatore “site:” - limita la ricerca ad un particolare
indirizzo/dominio (es.: “site:www.rai.it”).
Operatore “link:” - trova tutte le pagine che hanno un
link all’indirizzo/dominio indicato di seguito.
Operatore “related:” – elenca una serie di siti
considerati “simili” all’indirizzo/dominio indicato di
seguito.
Operatore “filetype:” – permette di specificare che tipo
di file si sta cercando.
Operatori avanzati





Operatore “inurl:” – seguito da uno o più termini permette di
ricercare il primo nell’ url (indirizzo del sito) e gli altri sia nell’
url che nel testo della pagina.
Operatore “allinurl:” – seguito da due o più termini permette
di trovare gli indirizzi che comprendono tutti i termini indicati
nel proprio url.
Operatori “intitle:” e “allintitle:” – analoghi a “inurl:” e
“allinurl:” ma relativi al titolo della pagina.
Operatore “cache:” – permette di visualizzare la copia cache
dell’ indirizzo indicato di seguito.
Operatore “info:” – permette di visualizzare tutte le
informazioni relative al sito indicato ( breve descrizione, link
alla copia cache, link alle pagine simili e link alle pagine che
contengono un link al sito indicato).