TinyURL

Enter a long URL to make tiny:
Visualizzazione post con etichetta information retrieval. Mostra tutti i post
Visualizzazione post con etichetta information retrieval. Mostra tutti i post

lunedì 18 agosto 2008

Lucene

Ho già accennato a Lucene all'interno del Blog qui , ed ora mi è sembrato il caso di dovervi spiegare un po' meglio di cosa si tratta, vi propongo quindi una parte di un documento,dove vengono spiegati alcuni aspetti di Lucene, sull' "Information Retrieval" a cui sto lavorando in questi giorni. (Una delle fonti di parte del lavoro la potete trovare qui)

Descrizione
E' stato implementato in Java da Doug Cutting. Ora è supportato dall'Apache Software Foundation ed è reso disponibile con licenza ASL (Apache software License). E' disponibile anche in altri linguaggi come il Perl, C++, ecc.

E' stato concepito per aiutare a realizzare applicazioni che necessitano di funzionalità di indicizzazione e ricerca full text. Non bisogna però considerare Lucene come un motore di ricerca.
I dati gestiti da Lucene sono rappresentati come documenti (document) dotati di campi (fields) testuali. Questa genericità consente di realizzare con le API di Lucene prodotti che sono indipendenti dal formato dei file: possono essere indicizzati con lucene testi in vari formati ed ogni altro tipo di file dal quale è possibile estrarre informazioni.
La possiamo quindi considerare come una libreria estremamente flessibile che ci permette di inserire nelle nostre applicazioni le funzionalità di un motore di ricerca.

Panoramica sull'utilizzo
Occorre rendersi conto della flessibilità delle API che vengono messe a disposizione da Lucene per poter capire come utilizzarle.
Nel momento in cui noi vogliamo creare un indice dobbiamo utilizzare la classe IndexWriter di Lucene, che ci permette appunto di aggiungere tutti i Document al nostro indice. Il Document stesso deve essere creato da noi, inserendo al suo interno i diversi Field che lo descrivono.
Quando dobbiamo effettuare una ricerca ci dobbiamo basare sul QueryParser, che è la classe generatrice delle nostre Query. Come risultato di una query avremo un vettore di Document, che soddisfano i requisiti della nostra ricerca.

sabato 16 agosto 2008

Image retrieval - Caliph & Emir

Sull' Image Retrieval ed in generale sull' Information Retrieval si potrebbero scrivere post su post e probabilmente lo farò. Per ora volevo segnalare a chi è interessato alla tematica dell' Image Retrieval questo sito . Dove troverà sicuramente spunti interessanti e potrà sperimentare i programmi "Caliph & Emir" che si occupano di Image Retrieval. Sono presenti due demo e si ha la possibilità di scaricare gli eseguibili ed i sorgenti di entrambi le applicazioni. E' stata sviluppata anche la libreria "Lire" che vi aiuterà a creare le vostre applicazioni di Image Retrieval.

Caliph
Oltre a poter estrarre le informazioni che già esistono nelle fotografie digitali questo software sostiene la creazione di nuovi meta dati. Le informazioni semantiche sull'immagine sono presentate con un grafico diretto, in cui i nodi rappresentano gli oggetti semantici, le posizioni, gli agenti, le condizioni, i tempi od i concetti. Ed i bordi definiscono le relazioni tra queste entità semantiche.

Emir
E' un tool per Image Retrieval basato sui metadati, su file che sono nel repository costruito con Caliph. Sono supportati diverti tipi di retrieval, basta dire che la ricerca basata su keyword utilizza "Lucene".