In questo documento introduco ed analizzo il nuovo algoritmo di Google per l’indicizzazione ed il ranking delle immagini. Ritengo quest’argomento di importanza cruciale sia in virtù dell’uso sempre più frequente dei motori di ricerca per immagini, sia perché quanto introdotto da Google è una vera e propria rivoluzione nel campo della ricerca di immagini.
I due punti appena introdotti sono in qualche modo il problema che l’Image Rank (IR) vuole affrontare e risolvere, gli attuali algoritmi su cui si basa, ad esempio, il sistema di ricerca di Google Images non prevedono in alcun modo la lettura dell’immagine, attualmente l’indicizzazione delle immagini si basa esclusivamente sull’interpretazione di alcuni fattori (nome file, tag alt, testo adiacente all’immagine, ecc.) non strettamente legati ad essa.
Questo tipo di approccio, evidentemente non esaustivo, talvolta centra l’obiettivo grazie ai passi in avanti che la tecnologia ha fatto nel campo dell’indicizzazione delle pagine web e soprattutto contiene gli investimenti di risorse (economiche e non) impiegate.
Dopo questa opportuna precisazione sulle soluzioni attualmente impiegate dai motori di ricerca, risulta intuitivamente evidente il possibile approccio alla risoluzione del problema: per offrire risultati sempre più pertinenti nella ricerca delle immagini, i motori di ricerca devono “mettere le mani” nelle immagini stesse, stabilire cosa accomuna le immagini (visual link) e creare una procedura iterativa per dare un “peso numerico” ad ogni immagine al fine di stabilirne il ranking.
Questo concetto racchiude in se una serie di problematiche affatto banali alle quali, il team di Google, sembra abbia dato risposta. Provo ad analizzare e spiegare “come” studiando il documento ufficiale pubblicato a fine Aprile 2008.
Obiettivi
1) Introdurre un algoritmo per il ranking delle immagini basato sulla somiglianza visuale (visual similarity).
2) Introdurre un sistema in grado di ri-catalogare e ri-ordinare l’attuale indice di Google Images, dimostrando che, dalla comparazione di alcuni parametri di ogni immagine, può derivare un affidabile sistema di ranking.
3) Migliorare i risultati della ricerca di immagini, valutando il progetto sulle principali ricerche effettuate nella più grande collezione di immagini esistente.
Approccio & Algoritmo
Il principio alla base dell’algoritmo del PageRank delle immagini è l’Eigenvector Centrality (centralità dell’autovettore), in base a questa teoria è possibile misurare l’importanza di tutti i nodi di un network attribuendo ad ognuno di essi un peso numerico, dove il peso assegnato ad ogni nodo è direttamente proporzionale al peso assegnato ai nodi ad esso connessi.
Pur essendo questo principio molto interessante, non mi dilungherò in un trattato di algebra lineare ma cercherò, dal punto di vista SEO, di accomunare il più possibile il Visual PageRank al PageRank stesso, essendo quest’ultimo anch’esso basato sul principio dell’Eigenvector Centrality.
Per i lettori più curiosi, suggerisco alcune fonti per l’approfondimento della teoria degli autovettori:
Eigenvalue, eigenvector and eigenspace (EN)
Analisi gerarchica e matrice dei confronti
Procedendo invece con l’analisi, la breve definizione introdotta può essere avvicinata all’algoritmo del PageRank nel seguente modo:
Ad ogni pagina web (nodo) viene assegnato un peso numerico (PR) in funzione delle altre pagine web ad essa connessa (hiperlinks) e del loro peso numerico.
Avvicinarci, invece, alla definizione/applicazione dell’ Image Rank non è altrettanto immediato. La definizione del PageRank si basa sugli hiperlinks, elementi introdotti dall’essere umano che rappresentano un legame concettuale tra le pagine web ed il cui obiettivo è permettere a chi naviga di trovare facilmente altre pagine correlate, nel caso delle immagini cosa può rappresentare un legame tra esse? Data una immagine, quali sono le immagini ad essa collegate?
L’ImageRank si fonda, come detto, sul concetto di somiglianza visuale delle immagini. Due immagini sono collegate (e quindi linkate) tra loro se ci sono punti di attenzione in comune ad entrambe le immagini. Dove i punti di attenzione potrebbero avere sfocature diverse, forme diverse o semplicemente essere riprese da prospettive diverse pur rappresentando la stessa cosa.
Un sistema affidabile di misurazione della similarità delle immagini è un punto di importanza cruciale per come l’algoritmo è stato definito. Ci sono, a tal proposito, una serie di teorie sulla comparazione delle immagini, in termini di analisi delle forme, dei colori e delle prospettive, anche in questo caso, per brevità, mi limito a fornire delle letture di approfondimento sui principali algoritmi utilizzati dall’ ImageRank:
SIFT, Scale Invariant Feature Transform (EN)
A performance evaluation of local descriptors (EN)
Le teorie suddette, vengono impiegate dal ImageRank per produrre un unico vettore descrittivo (descriptor vector) a 128 dimensioni, dalla cui comparazione si definisce la somiglianza tra immagini in base alla seguente definizione:
Date due immagini ed i loro relativi vettori descrittivi, la similarità tra le immagini è data dal numero di punti di interesse in comune diviso per la media dei punti di interesse da esse contenuti.
Fissata la definizione di similarità delle immagini occorre precisare che l’applicazione di quanto esposto finora, sulla mole di immagini attualmente gestita dai motori di ricerca per immagini (parliamo di bilioni di immagini), è computazionalmente impraticabile. L’algoritmo sarà quindi applicato con un approccio “query dipendente”, ovvero, si continueranno ad usare gli attuali elementi di metadatazione (nome dell’immagine, tag alt, testo della pagina, etc.) per ridurre il numero di immagini da analizzare ed all’interno di questo sottoinsieme sviluppare il grafico di similarità e quindi applicare l’ImageRank.
Sistema di ricerca completo
Gli attuali sistemi di ricerca, spesso restituiscono immagini irrilevanti nei risultati e soprattutto, non analizzando il contenuto dell’immagine, non assicurano una buona varietà di risultati al variare della ricerca effettuata. L’ImageRank, centra invece entrambi questi obiettivi sia per ricerche con concetti visivi omogenei, in cui un unico grafico di similarità restituirà l’immagine con il maggior numero di punti di interesse all’interno del set di risultati, sia per ricerche con concetti visivi eterogenei, in cui saranno dapprima identificati un numero, non stabilito a priori, di concetti, e quindi di grafici di similarità, quindi all’interno di ognuno di essi, saranno recuperate le immagini maggiormente rilevanti per la query effettuata.
Risultati sperimentali e conclusioni
Per assicurare l’effettiva affidabilità dell’algoritmo sono stati effettuati dei test su un campione di 2000 query, le più popolari di Google Product, e per ognuna di esse sono state estratte le prime 1000 immagini ed ad esse è stato applicato l’ImageRank.
I risultati sono stati sottoposti al giudizio di 150 volontari, con un approccio che evitasse qualsiasi influenza dei loro gusti o delle loro esperienze, al fine di valutare quanto effettivamente l’algoritmo migliora la rilevanza dei risultati.
Il risultato del test, da cui si nota l’evidente miglioramento apportato dall’ImageRank, è rappresentato nella seguente tabella:
Dall’analisi dei test sono anche emersi gli attuali limiti dell’algoritmo e due casi particolari in cui l’ImageRank fallisce. Per alcune ricerche, ad esempio “dell computers”, tra le immagini maggiormente rilevanti compare il logo della Dell che non è attinente alla ricerca, in quanto non rappresenta alcun prodotto della dell ed in particolare un computer. Il logo viene riproposto dall’algoritmo come immagine rilevante perché esso viene ritrovato in molte immagini relative ai prodotti dell ed anche perché il logo fornisce all’algoritmo un ampio numero di tratti distintivi particolarmente adatti all’estrazione dei descrittori locali. L’altro caso in cui l’ImageRank restituisce immagini irrilevanti è dato dalla presenza di screenshot di pagine web, anche in questo l’imprecisione è data dalla presenza di alcuni punti di interesse in comune a molte immagini.
Concludendo, l’Image Rank centra gli obiettivi preposti sia in termini di riduzione decisa del numero di immagini irrilevanti nei risultati delle ricerche, sia in termini di applicazione dell’esempio di successo del Page Rank nel campo della ricerca delle immagini, definendo un nuovo concetto di Hiperlink ed introducendo delle modalità operative per la sua valutazione. Altresì, l’Image Rank, apre la strada a future ricerche per la valutazione del comportamento del sistema quando sottoposto a condizioni avverse (introduzione di immagini duplicate nell’indice dei risultati al fine di manipolare la rilevanza delle immagini).
Proprio partendo da questo spunto cercherò di seguire nei prossimi post le evoluzioni dell’algoritmo e di studiare le basi delle conseguenti strategie di posizionamento.
Diego Borrelli
SEO Strategist









