ITTO20090704A1 - Sistema e metodo per la classificazione di contenuti - Google Patents

Sistema e metodo per la classificazione di contenuti Download PDF

Info

Publication number
ITTO20090704A1
ITTO20090704A1 IT000704A ITTO20090704A ITTO20090704A1 IT TO20090704 A1 ITTO20090704 A1 IT TO20090704A1 IT 000704 A IT000704 A IT 000704A IT TO20090704 A ITTO20090704 A IT TO20090704A IT TO20090704 A1 ITTO20090704 A1 IT TO20090704A1
Authority
IT
Italy
Prior art keywords
metadata
senses
category
type
block
Prior art date
Application number
IT000704A
Other languages
English (en)
Inventor
Alberto Ciaramella
Fulvio Corno
Paolo Pellegrino
Original Assignee
Intellisemantic Srl
Torino Politecnico
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intellisemantic Srl, Torino Politecnico filed Critical Intellisemantic Srl
Priority to IT000704A priority Critical patent/ITTO20090704A1/it
Priority to PCT/IB2010/054156 priority patent/WO2011033457A1/en
Publication of ITTO20090704A1 publication Critical patent/ITTO20090704A1/it

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually

Description

Sistema e metodo per la classificazione di contenuti
Settore tecnico
La presente invenzione riguarda, in generale, la gestione di contenuti e in particolare di contenuti multimediali.
Più specificamente, la presente invenzione riguarda la classificazione automatica di tali contenuti.
Arte nota
Come noto, esistono dei metodi per la classificazione automatica di documenti o informazioni testuali (pagine web, rapporti tecnici, articoli, notizie).
I metodi noti per la classificazione testuale sono tuttavia inadatti alla classificazione di informazioni non testuali (canzoni, immagini etc.) e l’arte nota ha usato in tali situazioni approcci basati sui contenuti (cioè l’analisi delle immagini, delle registrazioni audio, dei video) o approcci basati sulla descrizione delle risorse o metadati.
I Richiedenti, in generale, hanno notato che tali metodi noti sono applicabili in contesti molto specifici e che nessun metodo è stato dimostrato applicabile nei casi generali, cioè per la classificazione automatica delle informazioni o risorse testuali e non testuali.
Come noto, i più estesi archivi pubblici multimediali su Internet (quali YouTube, Flickr), utilizzano un approccio sociale per la descrizione e classificazione dei contenuti.
In questi casi, nei quali la maggior parte dei contenuti sono caricati dagli utenti (UGC: User Generated Content), il contributore originario, cioè l’utente, fornisce la descrizione di ogni nuova risorsa (video, immagine, etc.) in una forma molto semplificata, se confrontata con quella usata negli archivi multimediali “professionali”, quali le librerie di clipart, i musei on line etc.
La descrizione della risorsa è formata da alcuni campi testuali (quali il titolo, la descrizione, e, cosa più importante, i cosiddetti tag), specificati dal contributore, che possono essere arricchiti da altre informazioni o risorse fornite dai fruitori della risorsa (quali i commenti, tag aggiuntivi, collegamenti ad altri contenuti, bookmark della risorsa).
La pubblicazione “Classification of Multi-Media Content (Video’s on YouTube) Using Tags and Focal Points” di Ankur Satyendrakumar Sharma e Mohamed Elidrisi, pubblicata, alla data di deposito della presente domanda di brevetto, all’indirizzo "www.users.cs.umn.edu/ ̃ankur/projects.html", presenta un metodo per classificare contenuti multimediali che usa come ingresso i tag.
Dato che i tag, come già sottolineato, possono comprendere parole inserite dagli utenti che hanno caricato le risorse, o da altri utenti, e possono contenere parole inglesi o parole in lingue differenti dall’inglese, parole gergali, acronimi, errori di ortografia, nomi propri, o altro, è evidente che questa arte nota soffra di almeno due problemi:
- usare solo una fonte di informazione in ingresso (cioè i tag); - non gestire l’inaccuratezza dell’informazione in ingresso.
In sostanza i depositanti hanno notato che la classificazione automatica dei contenuti è gestita in modo differente a seconda del tipo di contenuti e del contesto e che non esiste alcun metodo applicabile nei casi generali.
La presente invenzione mira a risolvere questi problemi. Per definire meglio il contenuto dell’invenzione, nel seguito della descrizione si assume che i seguenti termini siano usati secondo le seguenti definizioni, in ogni caso secondo l’uso comune del settore:
- Risorsa – una risorsa è ogni unità atomica di contenuto che può essere identificata, classificata e ricercata in un archivio, preferibilmente on-line. Preferibilmente la presente descrizione si riferisce a risorse multimediali, cioè a risorse non testuali. Comunque le risorse possono essere intese più in generale appartenenti a qualunque tipo di risorsa.
- Descrizione della risorsa – la descrizione di una risorsa è l’insieme di metadati associati alla risorsa. Tali metadati possono essere, per esempio, in forma di testi, tag o categorie. Tali metadati possono essere forniti dall’autore originario, oppure da qualche visitatore del sito. Per esempio, la descrizione di una risorsa può comprendere uno o più dei seguenti elementi, tipi di elementi o tipi di metadati:
Titolo: un breve frammento di testo, di 1 o 2 righe, assegnato dall’autore, che identifica sinteticamente la risorsa;
Descrizione: un testo più lungo, qualche paragrafo, che descrive con maggior dettaglio il contenuto della risorsa;
Categoria da sito: una o più categorie scelte da una lista di categorie; ciò significa che l’autore deve scegliere quella più appropriata per la risorsa in base ad una lista di categorie predefinite (dai creatori dell’archivio o del sito web). Questa informazione non sempre è affidabile, dato che è scelta dall’utente, e la lista predefinita di categorie molto spesso è ambigua e vaga (può non seguire i principi dello stato dell’arte dell’architettura dell’informazione);
I tag: un insieme di parole chiave (senza vincoli) che descrivono la risorsa. I tag possono contenere parole inglesi o in altre lingue, parole gergali, acronimi, errori di ortografia, nomi propri o altro. Tali tag sono scelti dal contributore o dall’utente, spesso scegliendo tra i tag più diffusi in un determinato dominio. In alcuni sistemi i tag possono contenere spazi interni (quale “Deep Purple”), in altri sistemi no (e in tale caso “Deep” and “Purple” devono essere considerati tag separati). In alcuni sistemi gli altri utenti possono aggiungere i propri tag personali ad una risorsa che qualcun altro ha caricato; Utente: l'informazione relativa alla identità dell’utente che ha caricato la risorsa è anche disponibile come descrizione della risorsa o metadato;
Commenti: i commenti sono, solitamente, un paragrafo o più di testo, e possono contenere informazione testuale utile ad identificare la risorsa; in generale essi sono una sorgente di informazione totalmente incontrollata, perché sono aggiunti alla risorsa da altri utenti;
Bookmark: i bookmark sono, solitamente, risorse personali o preferite; per esempio, altri utenti possono aggiungere una risorsa ai loro bookmark. In alcuni sistemi, l’aggiunta di una risorsa alle proprie risorse preferite richiede che l’utente selezioni qualche tag (personale) per classificarla.
- Categorie obiettivo – le categorie obiettivo, indicate nel seguito della descrizione come C(i), sono classi concettuali dipendenti dall’applicazione, usate per identificare e raggruppare insiemi di risorse con contenuti simili. Preferibilmente, le categorie obiettivo comprendono un insieme di categorie predefinite; tale insieme, secondo la forma preferita di realizzazione è una informazione di ingresso per il metodo descritto nella presente invenzione.
Sulla base delle definizioni precedenti, i depositanti hanno notato che un problema comune del descrittore della risorsa o dei metadati, è che non c’è nessun controllo, nessuno standard, nessuna garanzia per quanto riguarda la qualità dei metadati o per quanto riguarda la loro rilevanza per la risorsa descritta.
In conseguenza, rappresenta un problema l’identificazione della o delle categorie obiettivo corrette C(i) associate a una certa risorsa attraverso l’analisi dei soli metadati.
Descrizione dell’invenzione
La presente invenzione intende risolvere il problema appena descritto.
In altre parole, l’obiettivo della presente invenzione è un sistema ed un metodo configurati in modo da identificare automaticamente la categoria corretta o un insieme di categorie corrette C(i) corrispondenti ad una determinata risorsa, in particolare ad una risorsa multimediale, analizzando solo i metadati della risorsa.
In effetti, tale obiettivo è molto utile in tutti i casi in cui viene effettuata una ricerca, ad esempio su Internet, per identificare e raccogliere rapidamente l’informazione corretta.
Secondo la presente invenzione, questo problema è risolto per mezzo di un sistema per la gestione di contenuti avente le caratteristiche riportate nelle rivendicazioni che seguono.
La presente invenzione è anche relativa sia ad un metodo per la gestione di contenuti, sia ad un programma per elaboratore caricabile nella memoria di almeno un elaboratore e includente porzioni di codice software per eseguire i passi del metodo dell’invenzione quando il programma è eseguito in almeno una unità di elaborazione. Come utilizzato qui, il riferimento a tale programma per elaboratore è inteso equivalente al riferimento ad un mezzo leggibile da un elaboratore per controllare un sistema o un apparato, in modo da coordinare l’esecuzione del metodo secondo quanto previsto dall’invenzione. Il riferimento a “almeno una unità di elaborazione” è inteso sottolineare la possibilità che il metodo dell’ invenzione sia svolto in modo decentralizzato da una pluralità di unità di elaborazione.
Le rivendicazioni rappresentano parte integrale dell'insegnamento tecnico della presente invenzione.
Secondo una caratteristica di una forma preferita di realizzazione, la presente invenzione riguarda un sistema per la classificazione automatica di metadati o di descrizioni di risorse, in cui un sistema di calcolo, usando un insieme di processi semantici, è predisposto a riconoscere i sensi associati ai metadati e ad assegnare pesi delle categorie ai metadati.
Secondo un’ulteriore caratteristica della presente invenzione, l’insieme dei processi semantici comprende almeno un blocco di pre-elaborazione configurato per trovare i sensi più ampi che rappresentano tutti i possibili significati dei metadati, almeno un blocco di espansione configurato in modo da identificare i sensi che ricorrono più frequentemente come sensi espansi e da isolare e cancellare i sensi che sono marginali, e almeno un blocco di confronto configurato in modo da confrontare i sensi espansi a un insieme costante di sensi che corrispondono alle categorie obiettivo.
Secondo un’altra caratteristica della presente invenzione il sistema comprende un processo inibitore configurato in modo da inibire l’uscita del blocco di confronto, in modo tale che, sulla base di informazioni statistiche, non venga effettuata la classificazione di quel tipo di metadato.
Breve descrizione delle figure.
Queste e altre caratteristiche e vantaggi della presente invenzione appariranno più chiaramente dalla descrizione dettagliata riportata qui di seguito di una forma preferita di realizzazione, fornita comunque come esempio non limitativo e integrata dalla figure allegate, in cui i componenti designati dagli stessi numeri o da numeri simili indicano componenti aventi la stessa o simile funzionalità e costruzione ed in cui:
- Fig. 1 presenta un diagramma a blocchi di un sistema sviluppato secondo la presente invenzione;
- Fig. 2 presenta un’architettura generale dei moduli implementati nel sistema della Fig. 1;
- Fig. 3 presenta l’architettura della Fig. 2 in maggiore dettaglio;
- Fig. 4 presenta un’architettura di un blocco della Fig. 3 secondo una prima realizzazione;
- Fig. 5 presenta un’architettura di un blocco della Fig. 3 secondo una seconda realizzazione; e
- Fig. 6 presenta un passo di un processo interno della Fig. 4 o 5.
Descrizione di una Forma Preferita di Realizzazione
Con riferimento alla Fig. 1 un sistema per la identificazione di contenuti (sistema) 10 comprende uno o più server elaborativi 12 che ospitano elementi software configurati in modo da esporre, ad esempio, applicazioni web ad una pluralità di utilizzatori o di utilizzatori finali connessi ai server 12 attraverso una rete 16 per mezzo di terminali elaborativi 14, ad esempio personal computer.
L’invocazione di tali applicazioni, per esempio la ricerca e la navigazione di risorse, è attivata dai server 12 che accedono ai servizi forniti da almeno un server di classificazione 20a per il riconoscimento automatico della informazione corretta da utilizzare per arricchire la ricerca e la navigazione degli utilizzatori finali.
Secondo la forma preferita di realizzazione della presente invenzione, il sistema 10 è strutturato in modo da fornire un’informazione affidabile e convalidata semanticamente per una risorsa multimediale ed è usato in tempo reale.
Niente impedisce comunque che parti del sistema 10, per esempio i server 12 e il server di classificazione 20a, siano utilizzati in modo “batch”, in cui un’intera raccolta di risorse multimediali o una parte di essa è indicizzata in una sola volta e l’informazione risultante è memorizzata per un utilizzo successivo da parte dell’interfaccia utente o da altre applicazioni.
Secondo la forma preferita di realizzazione, il server 20a comprende un insieme di moduli di elaboratore o un package 20 (Fig. 1, Fig. 2) avente un’architettura configurata in modo da ricevere:
- in un primo ingresso 21a i metadati 21 di una singola risorsa d; tali metadati comprendono, ad esempio, una pluralità di unità atomiche di contenuto 31a, 31b, ... 31n (Fig. 2, Fig. 3, Fig. 4) come ad esempio: titolo, tag, descrizione, commenti o un sottoinsieme di queste informazioni, come già riportato, e
- in un secondo ingresso o ingresso ausiliario 23 un’informazione costante non dipendente dall’ingresso specifico; tale informazione costante comprende, per esempio, uno o più dei seguenti ingressi: - una lista di categorie obiettivo 23a,
- una rete semantica lessicale 23b, per esempio la rete semantica lessicale WordNet, descritta in “Introduction to WordNet: an online lexical database” di G.A. Miller, R. Beckwith, C. Fellbaum, D. Gross, K.J. Miller (Int. J Lexicography, vol. 3, pp. 235-244, January 1990),
- un insieme di corrispondenze (sensi della categorie) 23c di ogni categoria rispetto alla rete lessicale,
- un insieme di ulteriori tabelle di pre-elaborazione (dizionari) 23d.
Il sistema è inoltre configurato in modo da produrre come uscita 25a:
- una pluralità di numeri 25 che stimano la rilevanza di una risorsa rispetto alle categorie obiettivo; ognuno di tali numeri rappresenta, per esempio, un numero o peso CW(i) 25 che, per ognuna delle categorie obiettivo, stima la rilevanza della risorsa rispetto alla categoria corrispondente.
I numeri 25, secondo l’attuale forma di realizzazione, sono compresi tra 0 e 1 e rappresentano l’informazione corretta riconosciuta automaticamente da usare per arricchire la ricerca e la navigazione degli utilizzatori finali.
In particolare, l’uscita 25a del sistema 10 comprende un peso CW(i) per ogni categoria finale C(i). Ognuno di tali pesi 25 è un numero reale compreso tra 0 e 1 in cui un valore più alto nel peso della categoria indica che la risorsa d è più rilevante per tale categoria finale.
Una volta che le categorie obiettivo sono state definite come informazioni costanti, l’uscita del sistema di classificazione consiste semplicemente di un peso differente associato ad ogni categoria. Un esempio di uscite è presentato nella Tabella 1, dove ad ogni categoria è assegnato un peso per mezzo di un numero reale, da 0.000 a 1.000, che stima la rilevanza della risorsa rispetto alla classificazione in ogni possibile categoria finale. I pesi sono tali che 0.000 significa “totalmente non rilevante”, 1.000 significa “della massima rilevanza” e i valori intermedi rappresentano valori intermedi di rilevanza.
Tabella 1
Secondo la forma preferita di realizzazione del sistema 10, la strategia adottata implementata con il blocco 20 (blocco di classificazione) è di elaborare una pluralità di unità atomiche di contenuto (metadati) 31a, 31b, ..., 31n (Fig. 3) in modo indipendente in un insieme di blocchi paralleli “Stimatori” 33a, 33b, ..., 33n, e di calcolare i pesi delle categorie 35a, 35b, ..., 35n indipendentemente per ogni metadato (titolo, tag o descrizione etc.).
Questi pesi delle categorie 35a, 35b, ..., 35n sono combinati in un blocco finale “Combinatore” 37, in modo da classificare il contenuto multimediale d in almeno una categoria o da inferire che il contenuto multimediale non è rilevante per nessuna categoria.
Ognuno dei blocchi paralleli “Stimatori” 33a, 33b, ..., 33n lavora nello stesso modo, analizzando un tipo di risorsa di ingresso (campo metadato) 31a, 31b, ..., 31n e producendo una lista completa di pesi di categorie per ogni campo di metadati. Ogni Stimatore 33a, 33b, ..., 33n fornirà la misura della rilevanza originata dall’informazione di ingresso 31a, 31b, ..., 31n che ha ricevuto. Se i vari campi di metadati 31a, 31b, ..., 31n sono coerenti tra loro, è probabile che i pesi stimati della categoria finale 35a, 35b, ..., 35n siano anch’essi in accordo. Altrimenti, in caso di metadati male assortiti o incoerenti, i pesi delle categorie dovrebbero essere anch’essi incoerenti.
Il modulo Combinatore 37 misura la similarità tra i pesi delle categorie e, solo nei casi in cui si trova una sufficiente concordanza, fornisce in uscita un peso finale di rilevanza 25 e pesi di categoria o rilevanza e le categorie corrispondenti.
Ognuno degli Stimatori 33a, 33b, ..., 33n rispettivamente, ha, preferibilmente, la stessa interfaccia esterna e opera nello stesso modo per ogni campo di metadati.
Nel seguito, per semplicità, il funzionamento di uno Stimatore è spiegato usando come riferimento lo Stimatore 33a, e assumendo che gli altri Stimatori siano sostanzialmente equivalenti.
Lo Stimatore 33a (Fig. 4) è configurato per operare nel seguente modo:
- ricevere in ingresso un campo di metadati 31a dei metadati della risorsa 21. Tale campo è rappresentato da una stringa di testo, interpretata come un insieme di parole. Lo stimatore estrae le singole parole dalla stringa di testo, separandola tramite i caratteri separatori, quali spazi, virgole etc.;
- generare in uscita un insieme di pesi di categoria CW(i) 35a, per tutte le categorie obiettivo C(i) riportate nella lista delle categorie obiettivo 23a.
Lo Stimatore 33a può anche rifiutare di fare una classificazione, nel caso in cui le caratteristiche della stringa di ingresso non siano sufficienti per rilevare in modo non ambiguo le categorie rilevanti, come sarà spiegato nel seguito; in tal caso, non sarà prodotto nessun peso di categoria, ma sarà prodotto un simbolo corrispondente alla assenza dell’informazione relativa al peso della categoria.
Lo Stimatore 33a, secondo la forma preferita di realizzazione, è configurato in modo da usare la lista delle categorie obiettivo 23a, e almeno la rete semantica lessicale 23b e l’insieme associato delle corrispondenze 23c di ogni categoria rispetto alla rete lessicale (Sensi delle categorie). Più preferibilmente lo Stimatore 33a usa anche un insieme di tabelle aggiuntive di preelaborazione (Dizionario) 23d.
Secondo la presente forma di realizzazione come esemplificata, il funzionamento interno dello Stimatore 33a è basato su una rappresentazione semantica dell’informazione. Per tale scopo, la rete semantica lessicale 23b è usata per rappresentare i sensi semantici relativi alle parole di una certa descrizione della risorsa nella stringa di ingresso.
Nel presente esempio, è usata la rete semantica lessicale WordNet, ma, come facilmente comprensibile ad un tecnico del ramo, possono essere utilizzate altre reti semantiche lessicali senza cambiare l’invenzione come rivendicata.
Come noto, una rete semantica lessicale 23b, come ad esempio WordNet, consiste di una lunga lista di sensi. Ad ogni senso è associata una lista di lemmi, cioè di parole che possono essere usate per esprimere quel senso in inglese o nel linguaggio usato per la rete semantica lessicale; tale associazione, come è noto, è chiamata mappatura semantica.
Utilizzando la mappatura semantica, ogni lemma o parola può essere associato a sensi differenti (e questo è detto “polisemia”, cioè sensi molteplici per la stessa parola) e ad ogni senso possono essere associati molti lemmi (e questo è detto “sinonimia”, cioè molte parole per lo stesso senso).
In WordNet 23b ogni senso differente è identificato da un valore numerico differente, denominato offset.
Nella rete lessicale 23b, preferibilmente, i sensi sono connessi tra loro per mezzo di relazioni semantiche binarie r. Tali relazioni r specificano i differenti tipi di similarità, affinità e connessioni tra i differenti sensi.
Esempi di relazioni semantiche sono: ipernimia (un senso che è più generale di un altro) o il suo inverso iponimia (un senso che è più specifico), meronimia (un senso che descrive una sottoparte o un componente di un altro senso) e il suo inverso olonimia (un senso che descrive il tutto di un’altra parte), etc. Ogni relazione può essere rappresentata da un insieme di triple: oi→r→oj, in cui oie ojsono gli offset numerici dei due sensi ed r è una delle relazioni semantiche supportata da WordNet 23b.
Come chiaramente comprensibile da un tecnico del ramo, altre reti semantiche possiedono simili insiemi di relazioni semantiche e possono essere usate dal metodo presentato nella seguente invenzione.
Il blocco Stimatore 33a comprende una pluralità di processi semantici 41, 43, 45 e 63 che si basano su una rappresentazione comune della medesima entità.
Questa rappresentazione comune dell’informazione semantica è codificata in una forma comune, cioè mediante un insieme pesato di sensi rilevanti o SenseSet.
Da un punto di vista pratico, un SenseSet è una tabella che riporta un insieme di sensi rilevanti, ognuno dei quali è messo in corrispondenza con un valore di peso, codificato come numero reale positivo, che rappresenta l’“importanza” di tale senso rispetto al significato espresso dall’entità.
Secondo la presente invenzione, da un punto di vista formale, un SenseSet SS è rappresentato da una corrispondenza incompleta (offset → peso):
SS = {o1→ w1, o2→ w2, ...}
dove nella equazione gli o rappresentano gli offset e i w (in inglese weight) rappresentano i pesi.
Tale corrispondenza può essere rappresentata da una tabella, come riportato sinteticamente nella sottostante Tabella 2:
Tabella 2
In cui:
- l’ offset del senso è un valore costante letto da WordNet;
- il peso del senso è il risultato di uno dei processi semantici descritti qui di seguito.
Ogni processo semantico all’interno del blocco Stimatore riceve e genera in ingresso e in uscita, rispettivamente, uno o più SenseSet.
Il blocco Stimatore 33a elabora i possibili significati delle parole di ingresso per mezzo dei processi semantici 41, 43, 45 63, e cerca di determinare i sensi più rilevanti associati all’ingresso e li mette in relazione con le categorie obiettivo. Lo Stimatore 33a procede in tre passi successivi:
1. il blocco di Pre-elaborazione 41: tale blocco è strutturato in modo da trovare l’insieme più ampio di SenseSet SSFin grado di rappresentare tutti i possibili significati del testo di ingresso; 2. il blocco di Espansione 43: tale blocco è strutturato in modo da navigare la rete semantica 23b per identificare i sensi che risultano più frequenti nel SenseSet SSFdi ingresso, e di isolare e cancellare i sensi che sono marginali (cioè le possibili interpretazioni del testo che non sono supportate dal contesto nel quale appare il testo), e di calcolare un SenseSet SSEaggiornato e tale da codificare questa nuova conoscenza disambiguata;
3. il blocco di Confronto 45: tale blocco è strutturato in modo da confrontare i sensi espansi SSEcalcolati dal testo di ingresso con i SenseSet SSECche rappresentano l’insieme di sensi che corrispondono a ciascuna delle categorie obiettivo C(i); il blocco di Confronto 45 calcola una misura di similarità tra SSEe ognuno dei SSEC. Tale calcolo include i pesi delle categorie CW(i).
La seguente descrizione dettaglia la realizzazione del metodo implementato secondo la presente invenzione.
Il blocco di Pre-Elaborazione (Pre-elaboratore) 41 realizza la seguente architettura:
- in ingresso ha lo stesso ingresso del blocco Stimatore, cioè un campo di metadati 31a comprendenti un insieme di parole;
- in uscita fornisce un SenseSet SSFche rappresenta tutte le possibili interpretazioni delle parole di ingresso.
Il Pre-elaboratore è configurato in modo da usare la rete semantica WordNet (usata per mettere in relazione i lemmi con i sensi) 23b e, preferibilmente, almeno uno degli altri ingressi ausiliari, ad esempio l’insieme delle istruzioni di preelaborazione (Dizionario) 23d generato dall’utilizzatore o i SenseSet corrispondenti ad ognuna delle categorie obiettivo 23c.
L’obiettivo del Pre-elaboratore 41 è di estrarre dalle parole di ingresso le possibili interpretazioni (semantiche). I problemi risolti dal Pre-elaboratore sono di natura duale:
- molte parole usate frequentemente nelle reti sociali non sono riportare nel dizionario inglese (esempio: "anime"), o sono usate con un significato differente da quello dell’inglese standard (ad esempio "cool" (fresco, ma anche ‘di moda’ nel gergo giovanile) è raramente usato per esprimere temperature);
- molto spesso, un significato preciso può essere attribuito solo alle coppie di parole, non alle parole singole. Ad esempio "hop" può essere un salto, seppur con qualche ambiguità, ma"hip hop" è un genere di musica e di danza, senza ambiguità.
Secondo una forma preferita di realizzazione della presente invenzione, il Pre-elaboratore 41 lavora su coppie non ordinate di parole, non su parole singole.
In particolare, per generalità e per semplicità di implementazione, le parole singole sono codificate come coppie di una parola con sé stessa.
Per esempio, la stringa di ingresso "live madonna concert" è trasformata nel seguente insieme di coppie di parole: "live live", "live madonna", "live concert", "madonna madonna", "madonna concert", "concert concert".
Ogni coppia di parole è quindi, preferibilmente, codificata in un Dizionario di azioni predefinite (Dizionario) 23d. In relazione all’azione memorizzata nel Dizionario 23d per la coppia di parole attuali, si può generare un nuovo SenseSet ed esso può essere utilizzato per calcolare il SenseSet finale in uscita SSF.
Secondo la forma preferita di realizzazione, la lista delle azioni possibili che può essere specificata nel Dizionario è presentata nella Tabella 3, in cui è descritto l’effetto di ogni azione, ed è specificata una informazione aggiuntiva ActionInfo.
Come può risultare chiaro per un tecnico del ramo, l’elenco e gli effetti delle possibili azioni possono anche variare in realizzazioni differenti da quella qui presentata.
Table 3
Secondo la forma preferita di realizzazione, le azioni del blocco di Pre-elaborazione sono divise in tre gruppi:
1° - azioni che non generano uscite (Scarta e Ricodifica):
La prima azione (Scarta) è usata per scartare le parole usate frequentemente ma semanticamente inutili (spesso chiamate “stopword”), come "il", "per", "di", etc. L’azione di ricodifica è utilizzata, preferibilmente, per normalizzare una data coppia di parole in una modalità equivalente che esprime la stessa informazione (ad esempio ricodificando la parola "hiphop", che appare come la coppia di parole "hiphop hiphop", con la coppia "hip hop").
2° - azioni che generano come uscita un insieme di sensi (Categoria, Semantica e Sensi) in cui:
– Categoria identifica le coppie di parole che possono essere messe in relazione non ambigua con una categoria o con un insieme di categorie obiettivo (eventualmente con pesi differenti); in questo caso sono restituiti il o i SenseSet della o delle categorie scelte;
– Semantica rappresenta una coppia di parole che è usata nello stesso o negli stessi sensi della parola inglese, quindi l’insieme di sensi corretti corrisponde al significato o ai significati che WordNet 23b già assegna a queste parole; in questo caso l’insieme di sensi risultante è calcolato cercando le due parole in WordNet; – Sensi copre le parole i cui sensi non corrispondono esattamente ad una categoria, e neppure corrispondono esattamente ai sensi di WordNet ; in questo caso, nel dizionario è memorizzato un SenseSet ad hoc e questo è restituito come risultato.
3° - Azione di Default :
Questa azione è intrapresa allorché la coppia di parole non è trovata nel Dizionario. In questo caso il sistema si comporta come nel caso Semantica, cioè cercando i significati in WordNet 23b.
L’azione di default è anche usata, per esempio nelle realizzazioni in cui il Dizionario non è presente.
I differenti tipi di azioni del blocco di Pre-elaborazione sono di rilevanza semantica differente, dato che essi rappresentano differenti gradi di probabilità che sia stato identificato il senso “corretto” della coppia di parole, in relazione alla differente qualità della sorgente di informazioni. Pertanto, i quattro tipi di azione che possono restituire uno o più SenseSet, e cioè le azioni Categoria, Semantica, Sensi, Default, sono associati ad un Peso di Azione (AW, dal termine inglese Action Weight) usato per determinare l’entità del contributo dell’azione considerata sul SenseSet finale SSFcalcolato.
Per esempio, il peso di azione AW (Action Weight in inglese) può essere una tabella di coefficienti come riportati nella seguente Tabella 4.
Tabella 4
In cui:
(1)
In particolare, l’insieme finale di sensi SSFrestituiti dal blocco di Pre-elaborazione è calcolato per esempio secondo l’espressione (2), come la somma pesata di tutti i SenseSet restituiti dalle Azioni attivate dal Dizionario oppure applicando l’azione di default, i cui pesi, come riportato nella Tabella 4, dipendono dal tipo della azione i-esima:
(2)
Nel caso "Sensi", il SenseSet SSi,Sensesè preso con i pesi già registrati nel Dizionario.
Nel caso di "Categoria", secondo la forma preferita di realizzazione, sono restituiti uno o più SenseSet, in relazione a quante categorie sono riportate nel Dizionario per la coppia di parole.
Più preferibilmente, per ogni categoria riportata, il SenseSet corrispondente all’identificatore (ID) di categoria (preso dall’ingresso ausiliario “Sensi della Categoria”), può essere moltiplicato per un coefficiente “Peso Azione-Categoria” (in inglese "Action Category Weight” (ACW(j)) specificato nel Dizionario per la Categoria C(j), per esempio secondo l’espressione (3).
(3)
Nei caso di "Semantica" e "Default", si costruisce un SenseSet prendendo tutti i sensi rilevanti in WordNet associati con ciascuna delle due parole della coppia, e si assegna un peso costante convenzionale pari ad 1.0 ad ogni senso del SenseSet SSi, formando per così dire un “SenseSet diagonale”, dal momento che non esiste altra informazione per ordinare la rilevanza dei vari sensi possibili. Pertanto questi due tipi di azione si comportano nello stesso modo, eccetto che, successivamente, l’insieme di sensi risultanti sarà moltiplicato per un peso di azione AW differente, come previsto dalle relazioni (1) e (2).
Se la ricerca su WordNet fallisce per qualche parola, per quella parola non viene restituito nessun SenseSet.
Alla fine della procedura il SenseSet SSF, calcolato secondo l’espressione (2), viene restituito dal Pre-Processore e viene passato al blocco di Espansione dei Sensi 43.
Il blocco di Espansione dei sensi (Blocco di Espansione) 43 segue la seguente architettura:
- in ingresso esso ha il SenseSet SSFrestituito dal blocco di Pre-El abo ra zio ne 41, c he rap pre sen ta tu tte le p oss ibi li rappresentazioni delle parole di ingresso;
- in uscita esso ha un SenseSet “espanso” SSE, che rappresenta le interpretazioni più probabili e rilevanti delle parole di ingresso.
Il blocco di Espansione 43, secondo l’implementazione preferita, usa una rete lessicale semantica 23b, come ad esempio la rete semantica WordNet, come ingresso ausilario, per navigare le relazioni semantiche tra i sensi.
L’obiettivo dell’Espansione dei sensi è di estrarre le interpretazioni più probabilmente coerenti delle parole di ingresso, come interpretato dal Pre-elaboratore, affrontando i seguenti problemi:
- il SenseSet SSFdi ingesso fornisce un’interpretazione estesa dal momento che contiene ogni senso che può essere potenzialmente associato alle parole di ingresso. Questo significa che, se una parola ha più significati, tutti questi significati saranno presenti in SSF, anche se solo uno di questi significati sarà realmente rilevante per la classificazione della risorsa. Perciò i sensi che sono fuori dal “contesto dominante” devono essere ‘penalizzati’. In altre parole, devono essere penalizzate le interpretazioni che potrebbero essere plausibili se la parola fosse considerata fuori dal contesto, ma che diventano “isolate” nel contesto attuale definito dalle altre parole.
- due o più parole con significati estremamente simili potrebbero avere generato due SenseSet SSFche non contengono sensi identici, ma solo sensi molto simili. Questo è dovuto al numero molto alto di sensi in WordNet 23b e al fatto che anche piccole variazioni di senso sono rappresentate da sensi con offset differenti.
E’ quindi importante riconoscere quali sensi in SSFsono sufficientemente “vicini” da essere considerati essenzialmente con lo stesso significato e pertanto “rinforzarli”, includendo allo stesso tempo nel SenseSet SSFdei nuovi sensi che sono strettamente connessi ai sensi rilevanti già presenti.
Secondo la forma preferita di realizzazione della presente invenzione, il blocco di Espansione 43 cerca di determinare la migliore interpretazione, navigando le relazioni semantiche definite in WordNet 23b ed effettuando le seguenti assunzioni:
- se l’interpretazione delle parole di ingresso è coerente, ci si attende che una grande parte dei sensi in SSFsi raggruppino intorno a uno (o pochi) gruppi di sensi rilevanti, mentre altri sensi non rilevanti dovrebbero essere isolati e mal connessi con quelli rilevanti. La nozione di “distanza” qui è definita considerando l’attraversamento delle relazioni semantiche.
Il processo interno nel blocco di Espansione 43 calcola un nuovo Insieme di sensi “espansi” SSE, nei quali i pesi dei sensi rilevanti vengono aumentati in modo significativo, e i pesi dei sensi non rilevanti assumono un valore molto inferiore. Per fare ciò, il peso di ogni senso è propagato ricorsivamente ai sensi ad esso adiacenti, come spiegato sotto, aggiungendo ad ognuno di questi sensi adiacenti una frazione del peso dei sensi considerati.
La nozione di senso adiacente è assunta, in generale:
1. selezionando un sottoinsieme di relazioni r di WordNet che devono essere seguite per trovare i nodi adiacenti;
2. definendo un peso frazionario RW(r), compreso tra 0.0 e 1.0, che definisce quale frazione del peso di un nodo precedente è trasferito ai nodi ad esso adiacenti, quando sono connessi dalla relazione r.
In particolare, RW è scelto in modo da favorire la generalizzazione dei sensi correnti, in modo da trovare (e da pesare di più) i sensi generali che sono antenati comuni alla maggior parte dei sensi in SSF.
Secondo l’attuale forma di realizzazione qui esemplificata, i pesi RW sono chiamati “Pesi per la Generalizzazione delle Relazioni” o GRW (Generalizing Relationship Weights, in inglese) e il processo è illustrato dalla seguente espressione (4):
In cui:
GRW è una tabella di valori come riportata, per esempio, nella Tabella 5 qui di seguito, in cui L indica “peso basso” ed H significa “peso più alto” di L. Preferibilmente, L è compreso tra 0.0 e 0.5. Più preferibilmente, L ha un valore di 0.2 e H ha un valore di 0.5.
TABELLA 5
Il SenseSet espanso SSEè determinato calcolando il punto fisso dell’equazione ricorsiva (5), che analizza la rete semantica come illustrato nella Figura 6.
(5)
In cui
- wE(o) è il peso del senso con offset o nel SenseSet SSE;
- wF(o) è il peso del senso con offset o nel SenseSet SSF;
- wE(o') è il peso del senso con offset o' nel SenseSet SSE; e
- o' è l’offset di un senso in WordNet dal quale è possibile raggiungere il senso con offset "o" attraversando una relazione r appartenente al sottoinsieme selezionato di relazioni.
L’espressione (5) esplicita un processo ricorsivo organizzato in modo da definire il peso wE(o) che ogni senso con offset (o) dovrebbe avere nel SenseSet SSE, espanso considerando tutte le relazioni scelte r di WordNet che puntano al nodo corrispondente al senso con offset "o".
Per ognuna di queste relazioni, o' è l’offset del nodo situato all’altro capo della relazione e il relativo peso wE(o') viene via via accumulato, tenendo conto del peso assegnato alla relazione implicata RW(r).
I pesi wF(o) del SenseSet SSFiniziale sono i punti di ingresso esterni del processo ricorsivo ed il loro contributo è aggiunto come termine addizionale nella espressione (5).
Quando un offset o, in seguito al calcolo effettuato dalla espressione ricorsiva (5), cambia il suo peso wE(o) da un valore precedente (wE<old>(o)) a un nuovo valore (wE<new>(o)), occorre rideterminare tutti i pesi per gli altri offset o" dipendenti da o, cioè i sensi per i quali esiste almeno una relazione o→r→o" (Fig. 6).
Il processo è quindi eseguito ripetutamente fino a quando non si manifestano ulteriori variazioni o fino a quando tutte le variazioni risultano inferiori ad una soglia predefinita τ determinata dalla relazione wE<new>(o) - wE<old>(o) < τ, in cui la soglia τ può essere, per esempio compresa nell’intervallo 0.001 - 0.1, e più preferibilmente può avere un valore di 0.01.
I valori risultanti wE(o) sono usati come SenseSet SSEespanso risultante e sono restituiti in uscita dal blocco di Espansione dei Sensi 43 (Fig. 4). Tale uscita è usata dal blocco di Confronto (in inglese Matching) 45.
Il blocco di Confronto 45 è l’ultimo stadio del blocco di Valutazione 33a e comprende il processo che misura la somiglianza tra il SenseSet SSEespanso e le categorie obiettivo predefinite.
Ogni categoria C(i) è descritta semanticamente da un opportuno SenseSet della categoria SSC(i)(Sensi della Categoria 23c nella Figura 4).
Il blocco di Confronto 45 comprende la seguente architettura:
- un primo ingresso è dato dal SenseSet SSEespanso restituito dal blocco di espansione dei sensi 43, che rappresenta l’interpretazione più plausibile e coerente delle parole di ingresso;
- un secondo ingresso è dato dai SenseSet SSEC(i)che descrivono le categorie obiettivo come descritto qui sotto;
- l'uscita è data dal “peso di rilevanza” CW(i) per ciascuna delle categorie obiettivo C(i), come esemplificato nella Tabella 1.
Secondo la forma preferita di realizzazione, i SenseSet della categoria SSC(i)sono definiti manualmente, scegliendo in WordNet 23b i termini generali più rilevanti che comprendono il significato effettivo della categoria C(i).
Tali SenseSet sono, in generale, più astratti e molto più concisi di SSE, in quanto è riportato solo un piccolo gruppo di offset. Ciò significa che, in generale, non è possibile un confronto diretto, a meno che i SenseSet SSC(i)della categoria non siano trattati mediante un processo di espansione simile a quello già descritto. In particolare, prima del confronto effettivo, ogni SenseSet SSC(i)della categoria è prima “espanso” tramite un blocco espansore dei sensi delle Categorie 63, producendo un “SenseSet delle Categorie espanso” SSEC(i).
Questo processo adotta un’espressione identica a quella (5) descritta in relazione al blocco di espansione dei sensi 43, eccetto per i pesi delle relazioni. Di fatto, mentre l’espansione nel blocco di Espansione dei sensi 43 ha l’obiettivo di “generalizzare” i sensi esistenti, nel blocco Espansore dei sensi delle Categorie 63 , è necessario “estendere” i (pochi) sensi generali che descrivono ogni categoria in un insieme più grande di sensi più concreti.
In questa fase sono quindi usati come pesi della relazione (Relationship Weight in inglese) un insieme di Pesi per l’Analisi delle Relazioni (“Analyzing Relationship Weights”, in inglese) RW = ARW come illustrato, per esempio nella seguente Tabella 6:
TABELLA 6
e la seguente espressione:
(6)
Nel blocco di confronto 45 l’effettivo confronto del SenseSet espanso SSEe dei vari SenseSet espansi SSEC(i)per le varie categorie C(i) è effettuato interpretando ogni SenseSet come un vettore in uno spazio con elevato numero di dimensioni, cioè con un numero di dimensioni pari al numero di offset di senso presenti in WordNet, cioè oltre 100,000 dimensioni, e calcolando il "coseno dell’angolo" tra il vettore corrispondente a SSEe ognuno dei vettori corrispondenti ai vari SSEC(i).
Ad ogni Categoria C(i) viene quindi assegnato ad un peso della categoria (Category Weight CW(i)in inglese) calcolato in base alla somiglianza misurata dal coseno.
Il calcolo è effettuato, per esempio, secondo l’equazione (7), in cui il simbolo x sta per il prodotto scalare di due vettori.
(7)
I pesi finali delle categorie CW(i) (un numero reale positivo per ogni categoria, compreso nel intervallo [0,1]) sono restituiti come risultati finali del blocco di confronto 45, e indirettamente, come risultato dell’intero blocco Stimatore 33a.
Come descritto in precedenza, il sistema 10 è capace di estrarre automaticamente i pesi delle categorie più plausibili, partendo dalle informazioni implicite nell’insieme delle parole di ingresso. Tuttavia i pesi calcolati della categoria potrebbero talvolta non essere corretti, per almeno una delle seguenti ragioni:
- le parole di ingresso sono insufficienti a creare una rappresentazione coerente del significato voluto. Per esempio, nel caso di meno di 4-5 parole, è estremamente improbabile che il processo possa identificare un cluster semantico;
- le parole di ingresso sono troppo disperse semanticamente, cioè non sono correlate tra loro in alcun modo. Questo significa che le parole di ingresso mancano di coerenza interna. In tale situazione non si può derivare alcuna informazione utile;
- troppe parole non si trovano in WordNet 23b o nel Dizionario 23d. Questo significa che sono state utilizzate parole, acronimi o nomi propri poco comuni. In questi casi, tali parole vengono necessariamente scartate.
In questi casi ogni blocco Stimatore 33a, 33b, ..., 33n sarebbe comunque forzato a fare una previsione della rilevanza delle categorie, ma è molto probabile che tale previsione sia scorretta, data la mancanza di un'informazione significativa e/o usabile e/o coerente.
Per superare questo problema, secondo una seconda forma di realizzazione della presente invenzione, si fa ricorso a un insieme alternativo di blocchi Stimatori, dei quali è descritto solo il primo 133a (Fig. 5), assumendo che gli altri abbiano una struttura equivalente al primo.
I blocchi Stimatori secondo la seconda realizzazione sono alternativi ai blocchi 33a, 33b, ..., 33n.
Ognuno di tali blocchi alternativi comprende a sua volta un processo o blocco di controllo o di inibizione 48, che controlla il progresso dei processi all’interno del blocco Stimatore, per esempio 133a, e stima se la classificazione calcolata debba essere considerata come corretta.
Se il blocco di inibizione 48 sospetta che la classificazione potrebbe essere sbagliata, allora tale processo 48 “inibisce” l’uscita del blocco di Confronto 45, in modo tale che non venga effettuata nessuna classificazione, il che è meglio di una classificazione sbagliata.
Nel seguito, come già menzionato, per semplicità, il funzionamento di uno Stimatore è spiegato utilizzando come riferimento lo Stimatore 133a, assumendo che gli altri stimatori, secondo la seconda realizzazione, siano sostanzialmente equivalenti.
Il processo o la logica di inibizione(inibitore) 48 si basa su informazioni puramente statistiche relative agli ingressi e alle uscite del blocco di Pre-elaborazione 41 e del blocco di Espansione 43 come riportate nella Tabella 7 riportata qui sotto, e non considera mai i valori effettivi delle parole di ingresso o dei vari SenseSet.
Il blocco inibitore 48 funziona confrontando, da un punto di vista statistico, gli indicatori statistici riportati in Tabella 7 con un modello che rappresenta le previsioni ‘giuste’ e ‘sbagliate’, addestrato rispetto ad un numero sufficientemente grande di risorse classificate a mano.
Più preferibilmente, il blocco inibitore 48 è addestrato su un esempio statisticamente significativo di risorse ed è capace di predire (con un margine di errore) se le categorie identificate debbano essere considerate corrette o no.
Il blocco inibitore 48 riceve in ingresso l’insieme dei campi riportati nella Tabella 7 e produce in uscita un valore Booleano: inibisci/non inibisci.
Tabella 7
Il processo di classificazione qui adottato è basato su una “Support Vector Machine” di per sé conosciuta nel campo del Data Mining.
Ogni volta che è inibita una “cattiva” classificazione, aumenta la precisione (Precision) del risultato. D’altro canto, se viene inibita una “buona” previsione, può essere ridotto il recupero (Recall). Pertanto l’adozione dell’Inibitore migliora la precisione della previsione, al costo di una possibile riduzione del recupero.
Il blocco di Combinazione (Merge in inglese) 37 (Fig. 3) ha l’obiettivo di confrontare l’informazione generata dai vari blocchi Stimatori, per esempio 33a o 133a, e di determinare se tale informazione è coerente.
Quando i blocchi Stimatori, per esempio 33a o 133a (Fig. 3, Fig. 4, Fig. 5), concordano su una interpretazione comune dei metadati della risorsa (il che significa che le categorie obiettivo che ottengono un rango elevato sono approssimativamente le stesse , e che le categorie obiettivo che ottengono un rango basso o nullo sono approssimativamente le stesse), allora il blocco di Combinazione 37 effettua la media dei pesi delle categorie rilevanti e restituisce il risultato complessivo.
Nel caso contrario, in cui cioè i ranghi delle categorie siano contraddittori, a tale categoria non è assegnato nessun peso di categoria, e in questo caso l’intero sistema rimane “silente” e non è prodotta nessuna classificazione, dal momento che è stata riscontrata dell’incoerenza nell’informazione di ingresso.
I processi usati nel blocco di combinazione possono essere differenti. Per esempio può essere usato il processo definito da D. Wolfran and H.A. Olson in "A method for comparing large scale inter-indexer consistency using ir modelling" in Canadian Association for Information Science, 2007.
E’ anche evidente che, nel caso in cui ci sia un solo blocco Stimatore, perché esiste solo un tipo di ingresso metadati oppure perché tutti i campi metadati sono stati concatenati in una stringa, non è necessario il blocco di Combinazione.
Il funzionamento del sistema illustrato è il seguente.
Appena un utente finale o un fornitore di un servizio Web desidera inserire, cercare, visualizzare, ... una risorsa d e una descrizione associata alla risorsa 21 in un computer server 12, tale server 12 accede al server di classificazione 20a e chiede una classificazione automatica on-line della risorsa d e della descrizione della risorsa associata 21.
Il server di classificazione 20a usa il blocco di classificazione 20 e l’ingresso ausiliario 23 ed è configurato in modo da generare automaticamente in uscita una classificazione non polarizzata associata alla risorsa valutata.
Come risultato del processo sopra descritto, le risorse possono essere cercate dagli utenti finali del sistema 10 senza alcuna perdita di tempo. In definitiva, si evita di effettuare classificazioni sbagliate delle risorse.
Lo stesso risultato è garantito alle applicazioni Web fornite dai fornitori di servizi che utilizzano il server 12 ad esempio per servizi di pubblicità, servizi di ricerca etc.
Il processo sopra riassunto è esemplificato nel seguito con un esempio reale che comprende numeri e risultati reali.
Consideriamo una risorsa multimediale, ad esempio un video di YouTube, con i seguenti metadati:
Tabella 8
Assumendo di descrivere il blocco stimatore 33a configurato per elaborare il metadato "Titolo" nella Tabella 8, la stringa di ingresso considerata dal blocco Stimatore 33a è “Britney Spears -Baby One More Time Pop Music Video”. Il blocco di Pre-Elaborazione 41 identifica le seguenti parole:
1. Britney
2. Spears
3. Baby
4. One
5. More
6. Time
7. Pop
8. Music
9. Video
L’elaborazione del blocco di Pre-elaborazione 41 delle coppie di parole fornisce i seguenti risultati:
Tabella 9
Tutte le azioni contrassegnate SEMANTICS (Semantica), CATEGORY (Categoria), DEFAULT nella Tabella 9 generano un SenseSet che deve essere aggiunto al risultato SSFdel blocco Pre-Processore 41. Alcuni di questi SenseSet possono essere identici (in particolare quando azioni multiple di tipo CATEGORY puntano alla stessa Categoria).
In questo esempio, SSFè composto di 14 SenseSet SSidistinti. La somma pesata di tutti gli SSifornisce SSF, che in questo caso è composto da 69 differenti offset.
La seguente Tabella 10 mostra una porzione di SSF(meno di metà), dalla quale si può già apprezzare che sono tenuti in conto tutti i possibili significati delle parole nel titolo.
Si può anche notare che diversi lemmi (cioè parole) sono associate a diversi sensi (cioè tutte le varianti del significato della parola).
Tabella 10
Questa è l’uscita del blocco di Pre-elaborazione 41, che è quindi passato al blocco di Espansione dei Sensi 43.
L’Espansore dei Sensi calcola il SenseSet SSEespanso, che è molto più esteso (217 offset di senso distinti, in questo caso), perché ora sono inclusi nuovi sensi rilevanti e correlati, come già illustrato (Tabella 11).
Tabella 11
Questo SenseSet SSEespanso appena calcolato dal blocco Espansore dei sensi 43 è a questo punto fornito come ingresso al blocco di Confronto 45, che calcola la similarità basata sul coseno di SSEcon tutti i Sensi espansi delle categorie SSEC(i)restituiti dal blocco Espansore dei sensi delle categorie 63. Tali valori di similarità rappresentano i pesi finali delle categorie (Category Weights in inglese) CW(i) restituiti dal blocco di Confronto 45. Un sottoinsieme risultante da questi confronti è mostrato nella seguente Tabella 12:
Tabella 12
Possiamo osservare che per molte categorie, il peso della categoria CW(i) è nullo (0.0), cioè esistono delle categorie totalmente irrilevanti. Ad altre categorie è assegnato un livello più alto o più basso, in relazione alla somiglianza più forte o più debole con il SenseSet espanso della risorsa.
Il risultato finale del processo di classificazione del titolo può quindi essere presentato come una lista “ordinata” delle categorie più rilevanti per la risorsa analizzata, come nel presente esempio relativo ad un video:
1. celebrities (0.228)
2. music videos (0.058)
3. anime and AMV (0.042)
4. Tv programs and shows (0.027)
5. music (0.024)
Lo stesso processo, ovviamente, sarà eseguito per tutte le altre descrizioni della risorsa, in modo da ottenere, alla fine, per mezzo del modulo di Combinazione 37, una classificazione automatica non polarizzata della risorsa d in almeno una categoria.
Ovviamente, sono possibili ovvie modifiche e/o variazioni della presentazione fatta, per quanto riguarda i dispositivi e le connessioni, come pure i dettagli della costruzione e del metodo di funzionamento senza variare la portata dell’invenzione come descritta dalle rivendicazioni che seguono.

Claims (10)

  1. RIVENDICAZIONI 1. Sistema per la classificazione automatica di risorse, in particolare risorse multimediali, comprendente - almeno un sistema di elaborazione (12, 20a) avente memorizzate le risorse (d) e metadati (21) associati a dette risorse, detti metadati comprendendo una pluralità di elementi, ciascuno di detti elementi comprendendo un diverso tipo di metadati; - almeno un insieme di processi semantici (41, 43, 45, 63) atti a gestire un tipo di metadati e generare in uscita, usando come riferimento un'informazione costante comprendente almeno una rete semantica lessicale (23b), una pluralità di pesi di categoria (CW(i), 25) rappresentativi della classificazione del tipo di metadati, in cui ogni peso di categoria è associato ad una categoria obiettivo riportata in una lista predeterminata di categorie obiettivo (23a).
  2. 2. Sistema secondo la rivendicazione 1 caratterizzato da ciò che detti diversi tipi di metadati comprendono almeno un elemento scelto nel gruppo comprendente - un titolo; - una descrizione; - una categoria da sito; - tags; - informazioni utente; - commenti; - bookmarks.
  3. 3. Sistema secondo la rivendicazione 1 o 2 caratterizzato da ciò che detta informazione costante comprende inoltre almeno un'informazione costante scelta nel gruppo che comprende - un insieme di corrispondenze (23c) fra ciascuna categoria obiettivo e una rete semantica lessicale (23b); - un insieme di tabelle di pre-elaborazione (23d).
  4. 4. Sistema secondo una qualsiasi delle rivendicazioni 1 a 3 caratterizzato da ciò che detto insieme di processi semantici (41, 43, 45, 63) comprende - almeno un blocco di pre-elaborazione (41) atto a trovare l’insieme più ampio di sensi (SSF) in grado di rappresentare tutte le possibili interpretazioni del tipo di metadati; - almeno un blocco di espansione (43) atto a navigare la rete semantica lessicale (23b) per identificare sensi che risultano più frequenti fra l’insieme più ampio di sensi (SSF) e per isolare e cancellare i sensi che sono marginali e calcolare sensi espansi (SSE) codificanti una nuova conoscenza disambiguata; - almeno un blocco di confronto (45) atto a confrontare i sensi espansi (SSE) con sensi costanti (SSEC(i)) corrispondenti alle categorie obiettivo (C(i)) ed assegnare detta pluralità di pesi di categoria (CW(i)).
  5. 5. Sistema secondo la rivendicazione 4 caratterizzata da - almeno un blocco di inibizione (48) atto ad inibire l'uscita del blocco di confronto(45), sulla base di informazioni statistiche, in modo che non sia fornita alcuna classificazione del tipo di metadati.
  6. 6. Metodo per assegnare in modo automatico una classificazione ad una risorsa accessibile in una rete di elaboratori, il metodo essendo atto ad eseguire in modo automatico i seguenti step: - ricevere in ingresso ad un sistema di elaborazione (12, 20a) metadati (21) associati alla risorsa (d), detti metadati comprendendo una pluralità di elementi, ciascuno di detti elementi comprendendo un diverso tipo di metadati; - gestire un tipo di metadati mediante un insieme di processi semantici (41, 43, 45, 63), detto insieme di processi semantici (41, 43, 45, 63) essendo atto, attraverso l'uso come riferimento di un'informazione costante comprendente almeno una rete semantica lessicale (23b), di: - associare a detto un tipo di metadati una lista predeterminata di categorie obiettivo (23a); - stimare per ciascuna categoria obiettivo un peso per categoria (CW(i)) da associare a detto un tipo di metadati così che ciascun tipo di metadati è pesato da pesi per categoria della lista delle categorie obiettivo, ciascun peso essendo rappresentativo della classificazione di detto tipo di metadati.
  7. 7. Metodo secondo la rivendicazione 6 in cui detto step di gestire un tipo di metadati comprende gli step di: - trovare l’insieme più ampio di sensi (SSF) in grado di rappresentare tutte le possibili interpretazioni del tipo di metadati; - navigare la rete semantica lessicale (23b) per identificare sensi che risultano più frequenti fra l’insieme più ampio di sensi (SSF) isolando e cancellando i sensi che sono marginali e calcolando sensi espansi (SSE) codificanti una nuova conoscenza disambiguata; - confrontare i sensi espansi (SSE) con sensi costanti (SSEC) corrispondenti alle categorie obiettivo (C(i)) ed assegnare detta pluralità di pesi per categoria (CW(i)) a detto tipo di metadati.
  8. 8. Metodo secondo la rivendicazione 7 in cui detto step di trovare l’insieme più ampio di sensi (SSF) in grado di rappresentare tutte le possibili interpretazioni del tipo di metadati comprende lo step di - lavorare su coppie di parole di detto tipo di metadati.
  9. 9. Metodo secondo una qualsiasi delle rivendicazioni 7 a 8 in cui lo step di confrontare i sensi espansi (SSE) con sensi costanti (SSEC) è seguito dall'ulteriore step di: - inibire il risultato del confronto (45) sulla base di informazioni statistiche, in modo che non sia fornita alcuna classificazione del tipo di metadati.
  10. 10. Prodotto informatico o insieme di prodotti informatici caricabile nella memoria di almeno un elaboratore elettronico e comprendente porzioni di codice software per attuare, quando il prodotto viene fatto eseguire su almeno un elaboratore elettronico, il metodo secondo una qualsiasi delle rivendicazioni 6 a 9.
IT000704A 2009-09-16 2009-09-16 Sistema e metodo per la classificazione di contenuti ITTO20090704A1 (it)

Priority Applications (2)

Application Number Priority Date Filing Date Title
IT000704A ITTO20090704A1 (it) 2009-09-16 2009-09-16 Sistema e metodo per la classificazione di contenuti
PCT/IB2010/054156 WO2011033457A1 (en) 2009-09-16 2010-09-15 System and method for content classification

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
IT000704A ITTO20090704A1 (it) 2009-09-16 2009-09-16 Sistema e metodo per la classificazione di contenuti

Publications (1)

Publication Number Publication Date
ITTO20090704A1 true ITTO20090704A1 (it) 2011-03-17

Family

ID=42138938

Family Applications (1)

Application Number Title Priority Date Filing Date
IT000704A ITTO20090704A1 (it) 2009-09-16 2009-09-16 Sistema e metodo per la classificazione di contenuti

Country Status (2)

Country Link
IT (1) ITTO20090704A1 (it)
WO (1) WO2011033457A1 (it)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6219967B2 (ja) * 2012-12-20 2017-10-25 コーニンクレッカ フィリップス エヌ ヴェKoninklijke Philips N.V. ラベル付非テキスト系アイテムを検索するためのシステム及び方法
CN117454892B (zh) * 2023-12-20 2024-04-02 深圳市智慧城市科技发展集团有限公司 元数据管理方法、装置、终端设备以及存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6285999B1 (en) 1997-01-10 2001-09-04 The Board Of Trustees Of The Leland Stanford Junior University Method for node ranking in a linked database

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
CHIN O S ET AL: "Automatic discovery of concepts from text", PROCEEDINGS OF THE IEEE/WIC/ACM INTERNATIONAL CONFERENCE ON WEB INTELLIGENCE IEEE COMPUT. SOC LOS ALAMITOS, CA, USA, 2006, pages 4 PP., XP002582242, ISBN: 0-7695-2747-7 *
PANDYA A ET AL: "Text similarity measurement using concept representation of texts", PATTERN RECOGNITION AND MACHINE INTELLIGENCE. FIRST INTERNATIONAL CONFERENCE, PREMI 2005. PROCEEDINGS (LECTURE NOTES IN COMPUTER SCIENCE VOL.3776) SPRINGER-VERLAG BERLIN, GERMANY, 2005, pages 678 - 683, XP002582240, ISBN: 3-540-30506-8 *
SUREKA A ET AL: "Semantic based text classification of patent documents to a user-defined taxonomy", ADVANCED DATA MINING AND APPLICATIONS. PROCEEDINGS 5TH INTERNATIONAL CONFERENCE, ADM 2009 SPRINGER VERLAG BERLIN, GERMANY LNKD- DOI:10.1007/978-3-642-03348-3_67, 2009, pages 644 - 651, XP002582241, ISBN: 978-3-642-03347-6 *
WOLFRAM D ET AL.: "A Method for Comparing large Scale Inter-indexer Consistency Using IR Modeling", CANADIAN ASSOCIATION FOR INFORMATION SCIENCE, 2007, pages 1 - 8, XP002582270, Retrieved from the Internet <URL:http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.83.8621> [retrieved on 20100511] *
YING LIU ET AL: "Using WordNet to disambiguate word senses for text classification", COMPUTATIONAL SCIENCE-ICCS 2007. 7TH INTERNATIONAL CONFERENCE. PROCEEDINGS, PART III (LECTURE NOTES IN COMPUTER SCIENCE VOL.4489) SPRINGER BERLIN, GERMANY, 2007, pages 781 - 789, XP002582243, ISBN: 3-540-72587-3 *

Also Published As

Publication number Publication date
WO2011033457A1 (en) 2011-03-24

Similar Documents

Publication Publication Date Title
Jung Semantic vector learning for natural language understanding
US9009134B2 (en) Named entity recognition in query
US8090724B1 (en) Document analysis and multi-word term detector
US9626424B2 (en) Disambiguation and tagging of entities
Bansal et al. Hybrid attribute based sentiment classification of online reviews for consumer intelligence
US20090292685A1 (en) Video search re-ranking via multi-graph propagation
Candito et al. Parsing word clusters
US20200272674A1 (en) Method and apparatus for recommending entity, electronic device and computer readable medium
WO2009017464A1 (en) Relation extraction system
US20140101162A1 (en) Method and system for recommending semantic annotations
Yang et al. Attention-based personalized encoder-decoder model for local citation recommendation
US20210350082A1 (en) Creating and Interacting with Data Records having Semantic Vectors and Natural Language Expressions Produced by a Machine-Trained Model
Charton et al. Automatic semantic web annotation of named entities
Meena et al. Feature priority based sentence filtering method for extractive automatic text summarization
ITTO20090704A1 (it) Sistema e metodo per la classificazione di contenuti
Devarajan et al. Analyzing semantic similarity amongst textual documents to suggest near duplicates
Gashaw et al. Enhanced amharic-arabic cross-language information retrieval system using part of speech tagging
Kozłowski et al. Sns: A novel word sense induction method
Lu et al. A collective topic model for milestone paper discovery
Tsapatsoulis Web image indexing using WICE and a learning-free language model
Benkoussas et al. Cross-Document Search Engine For Book Recommendation.
Giannini et al. A Logic-based approach to Named-Entity Disambiguation in the Web of Data
Kuzár Clustering on social web
Layfield et al. Experiments with document retrieval from small text collections using latent semantic analysis or term similarity with query coordination and automatic relevance feedback
Schmidts et al. Catalog Integration of Low-quality Product Data by Attribute Label Ranking.