21
Massimo Melucci Information Retrieval Metodi e modelli per i motori di ricerca

E (U) · 2014. 7. 10. · 700.19 Massimo Melucci Information Retrieval Rivolto agli studenti e ai ricercatori di information retrieval, basi di dati e sistemi informativi dei dipartimenti

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

  • 700.19M

    assimo M

    elucciInform

    ation Retrieval

    Rivolto agli studenti e ai ricercatori di information retrieval, basi di dati e sistemi informativi dei dipartimenti di ingegneria, informatica, matematica, economia e statistica, ma anche ai professionisti dell’informatica interessati agli argomenti in qualità di utenti e di progettisti di sistemi informativi, il libro fornisce un’introduzione alle principali problematiche teoriche, metodologiche e implementative dei sistemi di information retrieval che influenzano la proget-tazione e la realizzazione dei motori di ricerca.

    L’autore affronta tutti gli aspetti fondamentali dell’indicizzazione automatica del contenuto informativo, del reperimento e ordinamento dei dati e della va-lutazione dei sistemi, descrivendo inoltre i principali modelli teorici e i metodi avanzati di indicizzazione e reperimento. Presenta infine i metodi principali di machine learning e alcuni temi e applicazioni sviluppati più di recente dall’in-dustria e dai ricercatori.

    Al termine di ciascuno dei nove capitoli il lettore è invitato a rispondere a quesiti per verificare le conoscenze acquisite e può consultare i riferimenti bi-bliografici proposti in modo argomentato per approfondire i temi appena trattati o avvicinarsi a quelli non presenti nel libro.

    Massimo Melucci è professore associato di Sistemi di Elaborazione delle Informazioni presso l’Università degli Studi di Padova. Svolge attività di ricerca in information retrieval dal 1993.

    E 33,00 (U)

    Massimo Melucci

    Information RetrievalMetodi e modelli per i motori di ricerca

    FrancoAngeliLa passione per le conoscenze

    700.19_17x24.indd 1 07/05/13 12:24

  • Informazioni per il lettore

    Questo file PDF è una versione gratuita di sole 20 pagine ed è leggibile con

    La versione completa dell’e-book (a pagamento) è leggibile con Adobe Digital Editions. Per tutte le informazioni sulle condizioni dei nostri e-book (con quali dispositivi leggerli e quali funzioni sono consentite) consulta cliccando qui le nostre F.A.Q.

    http://www.francoangeli.it/Area_ebook/infoebook.asp

  • Collana di informatica – Nuova serie

    diretta da Arrigo L. Frisiani Comitato scientifico: Giovanni Adorni (Università di Genova), Luigi Benedicenti (University of Regina), Maurelio Boari (Università di Bologna), Giacomo Bucci (Univer-sità di Firenze), Virginio Cantoni (Università di Pisa), Paolo Ciancarini (Università di Bologna), Gianni Conte (Università di Parma), Paolo Cor-sini (Università di Pisa), Fabio Crestani (Università della Svizzera Italia-na), Rita Cucchiara (Università di Modena e Reggio Emilia), Valeria De Antonellis (Università di Brescia), Gianluca Foresti (Università di Udine), Alfonso Fuggetta (Politecnico di Milano), Andrea Fusiello (Università di Verona), Salvatore Gaglio (Università di Palermo), Marco Gori (Univer-sità di Siena), Enrico Grosso (Università di Sassari), Giovanni Guida (Università di Brescia), Giuseppe Iazeolla (Università di Roma “Tor Ver-gata”), Sebastiano Impedovo (Università di Bari), Pieter Kritzinger (University of Cape Town), Massimo Maresca (Università di Padova), Paolo Maresca (Università di Napoli Federico II), Giuseppe Mastronardi (Politecnico di Bari), Antonino Mazzeo (Università di Napoli Federico II), Massimo Melucci (Università di Padova), Marco Mezzalama (Politecnico di Torino), Stefano Mizzaro (Università di Udine), Alfredo Petrosino (Università di Napoli “Parthenope”), Antonio Puliafito (Università di Messina), Gabriella Sanniti di Baja (CNR - Istituto di Cibernetica), Nello Scarabottolo (Università di Milano), Fabrizio Sebastiani (CNR - Istituto di Scienza e Tecnologie dell’Informazione), Giovanni Semeraro (Univer-sità di Bari), Alberto Sillitti (Libera Università di Bolzano), Giancarlo Succi (Libera Università di Bolzano), Carlo Tasso (Università di Udine), Genoveffa Tortora (Università di Salerno), Marco Vanneschi (Università di Pisa), Mario Vento (Università di Salerno), Alessandro Verri (Univer-sità di Genova), Lorenzo Vita (Università di Catania), Renato Zaccaria (Università di Genova).

  • I lettori che desiderano informarsi sui libri e le riviste da noi pubblicati possono consultare il nostro sito Internet: www.francoangeli.it e iscriversi nella home page

    al servizio “Informatemi” per ricevere via e-mail le segnalazioni delle novità.

  • Massimo Melucci

    Information RetrievalMetodi e modelli per i motori di ricerca

  • Grafica della copertina: Alessandro Petrini

    Copyright © 2013 by FrancoAngeli s.r.l., Milano, Italy.

    L’opera, comprese tutte le sue parti, è tutelata dalla legge sul diritto d’autore. L’Utente nel momento in cui effettua il download dell’opera accetta tutte le condizioni della licenza d’uso dell’opera previste e

    comunicate sul sito www.francoangeli.it.

  • Indice

    Indice 5

    Elenco delle figure 9

    Elenco degli acronimi 15

    Presentazione 21

    1 Introduzione 251.1 Dal memex ai motori di ricerca 251.2 Information Retrieval 281.3 Motori di ricerca 371.4 Suggerimenti bibliografici 411.5 Quesiti 43

    2 Metodi di indicizzazione 472.1 Introduzione 472.2 Indicizzazione ed efficacia 492.3 Analisi lessicale 522.4 Stemming 562.5 Costruzione dei termini 612.6 Controllo statistico dell’indice 622.7 Agente di ricerca 752.8 Suggerimenti bibliografici 902.9 Quesiti 92

    3 Metodi di reperimento e ordinamento 953.1 Introduzione 953.2 Operatori logici 983.3 Livello di coordinamento 99

    5

  • 3.4 Implementazione del reperimento 1023.5 Suggerimenti bibliografici 1093.6 Quesiti 110

    4 Metodi di valutazione 1154.1 Introduzione 1154.2 Base di partenza e gruppo di controllo 1194.3 Misure di valutazione 1224.4 Collezione sperimentale 1364.5 Iniziative di valutazione 1404.6 Suggerimenti bibliografici 1454.7 Quesiti 146

    5 Modelli di indicizzazione e reperimento 1495.1 Introduzione 1495.2 Modello logico 1515.3 Modello vettoriale 1535.4 Modello probabilistico 1695.5 Modello linguistico 1865.6 Suggerimenti bibliografici 1935.7 Quesiti 194

    6 Metodi avanzati di indicizzazione 1976.1 Introduzione 1976.2 Valutazione e indicizzazione 1986.3 Àncore dei link 2006.4 Autorevolezza delle pagine 2016.5 Pagine duplicate 2096.6 Compressione dei dati 2106.7 Collocazioni e termini 2146.8 Analisi della semantica latente 2166.9 Indicizzazione collaborativa 2256.10 Suggerimenti bibliografici 2266.11 Quesiti 227

    6

  • 7 Metodi avanzati di reperimento e ordinamento 2297.1 Introduzione 2297.2 Sistemi paralleli e distribuiti 2327.3 Ordinamento per autorevolezza 2387.4 Reperimento per semantica latente 2497.5 Espansione delle interrogazioni 2567.6 Retroazione di rilevanza 2617.7 Suggerimenti bibliografici 2767.8 Quesiti 277

    8 Metodi di Machine Learning 2798.1 Introduzione 2798.2 Separabilità dei punti 2818.3 Classificazione 2858.4 Ordinamento dei documenti 2998.5 Raggruppamento 3018.6 Suggerimenti bibliografici 3058.7 Quesiti 306

    9 Contesti applicativi 3099.1 Introduzione 3099.2 Immagini, suoni e musica 3119.3 Reti sociali e blog 3189.4 Personalizzazione 3249.5 Pubblicità digitale 3309.6 Analisi dei dati 3339.7 Suggerimenti bibliografici 3379.8 Quesiti 337

    Suggerimenti bibliografici 341

    Indice analitico 359

    7

  • Elenco delle figure

    1.1 Il memex immaginato da Bush (1945) 261.2 Distribuzione delle lingue 331.3 Architettura funzionale di un Information Retrieval System 341.4 Information Retrieval System 351.5 Collezione di documenti e relativo indice 361.6 Data center 381.7 World Wide Web (web) visto, visibile e invisibile 391.8 Profondo web 40

    2.1 Sorgente della home-page di un quotidiano 502.2 Indicizzazione esaustiva e indicizzazione specifica 522.3 Analisi lessicale di alcune parole 532.4 Stop-list per l’inglese 542.5 Stop-list per l’italiano 552.6 Frammento iniziale dell’algoritmo di Porter per lo stemming 572.7 Riduzione di parole italiane a radici comuni 572.8 Lista di affissi 592.9 Perdita d’informazione dopo rimozione delle stop word e

    stemming 602.10 Calcolo dei lemmi 602.11 Etichettatura delle parti del discorso (Part-of-Speech (POS)

    tagging) 622.12 Distribuzione di frequenza di in-link della collezione

    sperimentale WT10G 642.13 Le cinquanta parole delle query più frequentemente inviate a

    un motore di ricerca nel 2002 (riportate da Jansen e Spink(2006)) 64

    2.14 Distribuzione di frequenza delle parole della collezionesperimentale CACM 64

    9

  • 2.15 Legge di Heap 652.16 Indice di una collezione 692.17 Architettura di un indice 712.18 Semplice algoritmo d’indicizzazione 722.19 Distribuzione delle trenta parole più frequenti del manuale

    di MySQL 722.20 Struttura di un URL e dialogo in HTTP 752.21 Funzionamento di un agente di ricerca 762.22 Agente di ricerca e DNS server 762.23 Dialogo con un server web 772.24 Illustrazione di un metodo per determinare punti di partenza 802.25 Esplorazione in ampiezza 802.26 Algoritmo d’esplorazione in ampiezza 812.27 Esplorazione in profondità 812.28 Algoritmo d’esplorazione in profondità 822.29 Evoluzione di una coda ed evoluzione di una pila 832.30 Architettura di un sistema di Information Retrieval (IR) con

    un agente di ricerca 842.31 Canonizzazione degli Uniform Resource Locator (URL) 852.32 Sitemap 892.33 Robots.txt 892.34 Really Simple Syndication (RSS) 90

    3.1 Rapporti di grandezza tra documenti reperiti, rilevanti e nonreperiti 96

    3.2 Operatori logici 983.3 Descrittori e insiemi di documenti 983.4 Operazioni con FONDI e POTA 1033.5 Indice risultante dalla fig. 3.3 1043.6 Elaborazione di un’interrogazione booleana 1043.7 Schema di un algoritmo di reperimento 1043.8 Term-At-A-Time (TAAT) e Document-At-A-Time (DAAT) 1053.9 Algoritmo di reperimento TAAT con operatori logici 106

    10

  • 3.10 Reperimento DAAT 1073.11 Algoritmo di reperimento TAAT con terminazione anticipata 110

    4.1 Quadrato latino 1214.2 Quadrato greco-latino 1224.3 Tabella di contingenza per il calcolo di richiamo e precisione 1244.4 Run di venti documenti 1274.5 Due configurazioni a confronto 1294.6 Misura E 1294.7 Calcolo di richiamo e precisione per due ranking 1304.8 Interpolazione di richiamo e precisione 1324.9 Caso peggiore, normale e ideale di Cumulative Gain 1344.10 Numero di scambi e τ di Kendall 1354.11 Metodi di costruzione di una collezione sperimentale 1384.12 Pooling method 1394.13 Fase di addestramento 1394.14 Misurazione e test statistico delle ipotesi 1404.15 Fase di test sperimentale di una configurazione 1404.16 Prime collezioni sperimentali 1414.17 Composizione della collezione TIPSTER 1434.18 Topic TREC n. 301 1434.19 Documento TREC rilevante al topic n. 301 144

    5.1 Teoria, modelli, esperimenti e realtà fisica 1505.2 Vettori di documenti e interrogazioni nello spazio vettoriale

    a due dimensioni 1545.3 Vettori di documenti e interrogazioni nello spazio vettoriale

    a tre dimensioni 1545.4 Modello vettoriale e multimedia 1555.5 Cluster Hypothesis 1575.6 Coseno tra vettori nello spazio vettoriale a due dimensioni 1615.7 Coseno tra vettori nello spazio vettoriale a tre dimensioni 1615.8 Nozione di normalizzazione a perno 163

    11

  • 5.9 Coseno tra vettori e ruolo delle relazioni tra descrittori 1645.10 Funzione di IR con il modello vettoriale 1665.11 Decisione secondo il modello probabilistico 1695.12 Stima del modello probabilistico 1705.13 Spazio probabilistico 1715.14 Tabella dei costi di decisione nel modello probabilistico 1725.15 Costi di imprecisione e perdita 1735.16 Curse of dimensionality 1785.17 Indipendenza stocastica e indipendenza stocastica condizionata1795.18 Tabella di contingenza per il modello probabilistico 1835.19 Language Model 1875.20 Bigrammi e probabilità 1875.21 Metafora di un LM 1885.22 Mistura di LM 1905.23 Lisciamento di LM 191

    6.1 Àncore 2016.2 Pagine e link web che non formano una catena di Markov

    ergodica 2036.3 Pagine e link web che formano una catena di Markov

    persistente, ma periodica 2046.4 Algoritmo PageRank 2086.5 Rilevamento di pagine duplicate mediante hashing e

    fingerprinting 2106.6 Compressione e codifica dei caratteri 2116.7 Albero binario di compressione 2126.8 Metodo di compressione γ 2136.9 Metodo di compressione δ 2146.10 Metodo di compressione basato sulle differenze 2146.11 Due basi per lo stesso documento 2186.12 Quattro vettori nello spazio a due dimensioni 225

    7.1 Relevance Feedback 231

    12

  • 7.2 IRS parallelo 2327.3 Ripartizione di una matrice di occorrenza di un Information

    Retrieval System (IRS) parallelo 2337.4 IRS distribuito 2357.5 Mutuo rinforzo 2397.6 Algoritmo Hyperlinked Induced Topic Search (HITS) 2407.7 Grafo di sette nodi per calcolare autorevolezza e centralità 2447.8 Popolarità, conformismo, centralità e autorevolezza 2457.9 Un grafo per HITS 2467.10 Insieme radice 2477.11 Insieme radice, insieme base e HITS 2487.12 Confronto tra HITS e PageRank 2497.13 Piccola collezione usata per illustrare il modello di analisi

    latente (tratta dall’articolo di Deerwester e altri (1990)) 2527.14 Disposizione di documenti e interrogazione dopo LSA 2547.15 Decomposizione a Valori Singolari 2567.16 Tipi di Relevance Feedback 2627.17 Stato iniziale della retroazione 2637.18 Reperimento prima della retroazione 2637.19 Addestramento durante la retroazione 2637.20 Assegnazione del giudizio di rilevanza durante la retroazione 2637.21 Reperimento dopo la retroazione 2647.22 Cluster Hypothesis verificata e non verificata 2647.23 Relevance Feedback (RF) vettoriale positivo e negativo 2667.24 Algoritmi di RF 272

    8.1 Machine Learning e spazi 2808.2 Separabilità di un insieme di punti 2838.3 Trasformazione dei dati di un training set 2858.4 Separabilità perfetta di un insieme di punti 2908.5 Iperpiano di una Support Vector Machine (SVM) 2918.6 Calcolo dell’iperpiano ottimo 2958.7 Kernel trick 296

    13

  • 8.8 Non separabilità dei punti 2988.9 Raggruppamento di otto punti in tre gruppi in R2 3028.10 Algoritmo k-Means 3038.11 Rappresentazione del metodo Scatter and Gather 3048.12 Punti distribuiti in tre gruppi e tre classi 3058.13 Misura F 305

    9.1 Frammento di testo apparso sullo schermo e poi riconosciutomediante Optical Character Recognition (OCR) 312

    9.2 Struttura di un’immagine 3149.3 Notazione della melodia di un brano musicale segmentata in

    profili melodici 3169.4 Profili melodici di un brano ottenuti con uno stemming per

    la melodia 3179.5 Struttura di un blog 322

    14

  • Elenco degli acronimi

    ASCII American Standard Code for Information InterchangeASK Anomalous State of KnowledgeCGI Common Gateway InterfaceCG Cumulative GainCG Discounted Cumulative GainCLEF Cross-Language Evaluation ForumCLIR Cross-Language IRCMS Content Management SystemCPA Cost Per ActionCPC Cost Per ClickCPM Cost Per MilleCTD Click-Through DataDAAT Document-At-A-TimeDARPA Defense Advanced Research Program AgencyDNS Domain Name SystemDVS Decomposizione a Valori SingolariDV Term Discrimination ValueEM Expectation MaximizationFIFO First-In First-OutFND Forma Normale CongiuntivaGPS Global Positioning SystemHITS Hyperlinked Induced Topic SearchHTML HyperText Markup LanguageHTTP HyperText Transfer ProtocolIDF Inverse Term FrequencyIE Information ExtractionIP Internet ProtocolIRF Implicit RFIRS Information Retrieval System

    15

  • IR Information RetrievalLIFO Last-In First-OutLM Language ModelLR Learning to RankLSA Latent Semantic AnalysisMAP Mean Average PrecisionML Machine LearningMMIR IR multimedialeMRR Mean Reciprocal RankNDCG Normalized Discounted Cumulative GainNIST National Institute of Standard and TechnologyNLS oN Line SystemNTCIR NII-NACSIS Test Collection for IR SystemsOLTP Online Transaction ProcessingOCR Optical Character RecognitionOPAC Online Public Access CataloguePOS Part-of-SpeechPRP Probability Ranking PrincipleQA Question AnsweringQE Query ExpansionQLM Query-Likelihood ModelRF Relevance FeedbackRGB Red Green BlueRSS Really Simple SyndicationSGBD Sistema di Gestione di Basi di DatiSML Statistical Machine LearningSMS Short Message SystemSQL Structured Query LanguageSVM Support Vector MachineTAAT Term-At-A-TimeTFIDF Term Frequency × Inverse Document FrequencyTF Term FrequencyTREC Text REtrieval Conference

    16

  • TRW Term Relevance WeightURL Uniform Resource LocatorVSM Vector Space ModelWWW World Wide Web (web)XML eXtensible Markup Language

    17

  • per mia moglie, Alessandrae

    per mio figlio, Oleg

    IndiceElenco delle figureElenco degli acronimiPresentazione