Telemat Lab's home page


Copyrigtht © 2001 Universita' di Firenze. All rights reserved.

Free license available.

WEB CHANGE 2001

di: Sauro Menchetti

Revisore: Prof. Franco Pirri


Capitolo 2 - Rappresentazione del Documento

Home Page Indice Pag. Prec. Pag. Succ.

2 Rappresentazione del Documento

La rappresentazione del documento ha un forte impatto nella risoluzione del problema. E' necessario quindi trovare una rappresentazione che sappia cogliere gli aspetti rilevanti del documento, tralasciando quelli meno importanti. Ad esempio, il cambiamento della punteggiatura, lo spostamento di un paragrafo o la correzione di una parola non sono dei fattori rilevanti per determinare se due pagine hanno lo stesso contenuto.


Indice del Capitolo 2


2.1 Modello del Documento

La rappresentazione del documento ha un forte impatto nella risoluzione del nostro problema. Una pagina web è tipicamente una stringa di caratteri. Per stabilire se due pagine hanno lo stesso contenuto, tali pagine devono essere rappresentate in modo adatto allo scopo che ci si prefigge.

Una tra le più sfruttate modellazioni utilizza le parole come unità di rappresentazione e trascura il loro ordinamento nel documento. Si ipotizza quindi che le parole siano tra di loro indipendenti e che siano anche indipendenti dalla posizione che occupano. Questo porta a rappresentare un documento come un "bag of words", cioè come un insieme non ordinato di parole indipendenti tra loro.

La rappresentazione come bag of words è equivalente ad una modellazione attributo-valore: ad ogni distinta parola che rappresenta l'attributo, corrisponde una "feature" con associato il numero di volte che la parola compare nel documento od un valore ad esso proporzionale (valore dell'attributo).

Per evitare di creare degli insiemi di features troppo popolati, si esegue una procedura di feature selection che seleziona come features solo le parole che hanno maggiore contenuto informativo.


2.2 Selezione delle Features Rilevanti

Non tutte le parole presenti in un insieme di documenti hanno la stessa rilevanza e lo stesso valore semantico: ad esempio, una congiunzione od un articolo hanno un peso minore rispetto a certe parole chiave presenti nel documento. È necessario quindi procedere ad una selezione delle parole con più alto contenuto informativo.

Una prima selezione può essere fatta usando una lista di parole semanticamente meno significative dette "stop words" e mappando le parole presenti nel documento su tale lista: se una parola del documento compare anche nella lista, allora viene cancellata dal documento. Tale lista viene chiamata "stop list" e può essere realizzata mediante un file di testo: conterrà articoli, congiunzioni, etc.

Una volta eliminate le stop words dal documento, si può applicare un algoritmo di "stemming" alle parole rimaste. Tale algoritmo prende una parola ed estrae da essa la sua radice: ad esempio, una parola singolare ed una plurale vengono così ad assumere lo stesso valore, così come un verbo coniugato o meno.

Le due feature selection descritte si applicano ad ogni tipo di documento. Poiché il nostro problema coinvolge delle pagine html, possiamo introdurre anche una funzione che pesi le parole in modo diverso a seconda di quali tag html coinvolgono. In questo modo le parole presenti nel titolo della pagina, nei meta, negli h1, h2, h3, nei link assumono un peso maggiore delle altre. Gli altri tag html di minore importanza vengono cancellati dalla pagina.

Altre elaborazioni di minore importanza riguardano la cancellazione dei caratteri non alfabetici (ad esempio la punteggiatura) e nel rendere case insensitive la pagina.

A questo punto il documento è pronto per essere suddiviso in token: tali token sono le feature più informative di quella pagina.

Ultimo aggiornamento: 11 Febbraio 2001


Telemat Lab's home page

Home Page Indice Pag. Prec. Pag. Succ.


Explore the TELEMAT Site !!!