Upload
angelica-bellini
View
216
Download
2
Embed Size (px)
Citation preview
Indexing enterprise knowledge bases with
Università degli Studi di GenovaFacoltà di Ingegneria Informatica
l . i . d . o . – DIST
Parma, 10 luglio 2009
AgentSeeker
Andrea Passadore, Alberto Grossoe Antonio Boccalatte
AgentSeeker – WOA 2009 2
Cos’è AgentSeeker?
• AgentSeeker è un sistema multi-agente che indicizza documenti testuali provenienti da…– … hard disk locali– ... un’intranet– … Internet
• AgentSeeker è indirizzato ad applicazioni aziendali.
• AgentSeeker utilizza le ontologie per…– … modellare i domini di business dell’azienda– … arricchire le query degli utenti.– …. classificare documenti e risultati.
AgentSeeker e AgentService
• AgentSeeker– E’ basato sul framework AgentService
• AgentService– C# e Framework .NET 3.5– (mono)– Licenza LGPL– Sviluppato dallo staff del l.i.d.o. (Università di
Genova)– www.agentservice.it
AgentSeeker – WOA 2009 3
AgentService
AgentSeeker – WOA 2009 4
Core systems
Agent model
Services
Behaviours Knowledges
Tools
Storage
Messaging
Persistence
Logging AMS
DF
MTS
Ontologies
Monitoring
Roles code generator
Maintenance
Development
Design tools
APX
Agent mobility
Wizards
Platform infrastructure
L’ecosistema di AgentService
AgentSeeker – WOA 2009 5
InternetExternal application
Le federazioni di AgentService
• Federare piattaforme multi-agente significa…– … recapitare automaticamente i messaggi ad agenti
remoti– … coordinare i servizi locali di pagine gialle– … muovere istanze degli agenti da una macchina
all’altra.• Benefici:
– Delocalizzare i servizi degli agenti– Calcolo distribuito– Bilanciamento del carico
AgentSeeker – WOA 2009 6
The AgentSeeker platform
AgentSeeker – ONTOSE 2009 7
Manager
Indexers
Central IndexQuery Agent
Directory Facilitator
Ontology Agent
htmlPdfOffice Suitetxt
Espandere AgentSeeker
AgentSeeker – WOA 2009 8
Bilanciamento del carico
AgentSeeker – WOA 2009 9
Un Indexer libero?
C’è Agent#2
Indicizza www.pa.icar.cnr.it/woa08/
RimuovimiUn Indexer libero?
C’è Agent#1
Indicizza cmt.math.unipr.it/woa09/
Rimuovimi
Iscrivimi
Iscrivimi
L’ontology agent
• L’ontology agent…– Supporta ontologie RDF-OWL– Gestisce ontologie…
• … contenute nel repository ufficiale dell’azienda• … importate dagli utenti.
– Classifica i documenti per argomenti– Riceve le query dell’utente dal Query Agent…
• … suggerendo una classificazione dei risultati• … aggiungendo più dettagli alla query stessa
AgentSeeker – WOA 2009 10
Classificare documenti
AgentSeeker – WOA 2009 11
Rimuove stop
words
Word Stemming
Conta le occorrenze
meccanica.owl: 0.32
automobile.owl: 0.09
energia.owl: 0.0002
Classificare documenti
• La classificazione a priori…– … è utile per poi privilegiare quei risultati in
linea con l’argomento di cui vuole trattare l’utente.
– … è utile per diminuire il numero di falsi positivi– … in esecuzione durante le sessioni di
indicizzazione…• … supporta solamente le ontologie direttamente
contenute nel repository
AgentSeeker – WOA 2009 12
Clusterizzare i risultati
AgentSeeker – ONTOSE 2009 13
Automobile.owl
auto
coupe
Station wagon
berlina“Prezzo”
motore
Motore elettrico
Prezzo AND car
Prezzo AND coupe
Prezzo AND berlina
Prezzo AND station wagon
Prezzo AND motore
Prezzo AND motore elettrico
auto
coupe
berlina
station wagon
Clusterizzare i risultati
• La clusterizzazione dei risultati…– … è utile per auto organizzare i risultati…
• … in directory che riflettono l’organizzazione concettuale del dominio di business
– … è utile per orientarsi in argomenti nuovi– … può essere basata su ontologie importate
– … richiede molte risorse e tempo di esecuzione.
AgentSeeker – WOA 2009 14
Espansione delle query
AgentSeeker – WOA 2009 15
Automobile.owlEstensione per: sottoclassi
proprietà
sinonimi
motore
pistone
has a
valvola
has a
propulsore
owl:sam
eAs
“motore Ferrari”
(motore Ferrari) OR(pistone Ferrari) OR(valvola Ferrari)
Espansione delle query
• L’espansione delle query…– … permette agli utenti di individuare più documenti
• I documenti sono ordinati per rilevanza…– … attraverso la valutazione offerta da Lucene– ... attraverso il meccanismo della valutazione a
priori
• L’espansione delle query supporta anche ontologie direttamente importate dagli utenti.
AgentSeeker – WOA 2009 16
Alcune valutazioni
• Espansione delle query: +250% di documenti individuati– Nei primi 60 documenti:
• 7 documenti sono off topic (con espansione delle query)
• 21 documenti sono off topic (senza espansione delle query)
AgentSeeker – WOA 2009 17
Alcune valutazioni
• Costruire un’ontologia per supportare gli utenti di AgentSeeker– … è un task complesso– … è un lavoro oneroso– … richiede svariate risorse dell’azienda
• Soluzione:– Sviluppare una sorta di wikipedia per le
ontologie
AgentSeeker – WOA 2009 18
Wiki ontologica
AgentSeeker – WOA 2009 19
• Aggiungere concetti e relazioni
• Modificare concetti• Tracciare le attività degli
utenti• Valutare le attività degli
utenti
Aggiungere un concetto
Modificare un concetto
Un’installazione AgentSeeker
AgentSeeker – WOA 2009 20
Intel XEON dual core 2 GHz
1,5 GB di RAM
AMD Athlon 2 GHz
960 MB di RAM
Intel Pentium 4 2 GHz
512 MB di RAM
• Totale: 304.000 documenti• Velocità: 6000 documenti/ora• 1000 siti visitati
Conclusioni
• AgentSeeker…– … è una comunità di agenti
• scalabile• flessibile• robusta• aperta
– … supporta le ontologie per modellare…• … il dominio di business dell’azienda• … le competenze degli utenti
AgentSeeker – WOA 2009 21
Conclusioni
• Il supporto ontologico– … è dinamico– … è basato su RDF - OWL– … è aperto ad ulteriori miglioramenti
• Il Query Agent e l’Ontology Agent…– … estendono le query degli utenti– … classificano i documenti
AgentSeeker – WOA 2009 22
Sviluppi futuri
• Wiki ontologica– Consentire una collaborazione sociale per costruire
il dominio di business dell’azienda• Un’interfaccia di amministrazione centralizzata
– Per gestire una federazione AgentSeeker• Migliorare l’usabilità del sistema• Aggiungere funzionalità all’Ontology Agent
– Ragionatori– Collegamenti a:
• Wordnet• Swoogle
AgentSeeker – WOA 2009 23
Fine
AgentSeeker – WOA 2009 24
Grazie per l’attenzione!