Google Search Engine Ranking Factors 2011

Seomoz, qualche anno luce fa (2005), introdusse il concetto di “Search Engine Ranking Factors“, ma questo ormai lo sappiamo tutti.

Volendo esaminare come sta cambiando, e come cambierà in futuro il modo di fare SEO, vediamo da dove siamo partiti secondo Seomoz:

2005

  1. Uso della keyword nel Tag Title
  2. Anchor text dei backlinks
  3. Uso della keyword nel documento
  4. Accessibilità del documento
  5. Link che il documento riceve, e anchor, dall’interno del sito

2007

  1. Uso della keyword nel Tag Title
  2. Link popularity globale del sito
  3. Anchor text dei backlinks
  4. Link Popularity e struttura di linking del sito
  5. Anzianità del dominio

2009

  1. Anchor text dei backlinks
  2. Uso della keyword nel Tag Title
  3. Link Popularity
  4. Diversità dei domini da cui provengono i backlink
  5. Parola chiave usata nei nomi a dominio

Ma davvero siamo ancora fermi a questo punto?

Diamo un’occhiata alla rete e vediamo se troviamo qualcosa di più interessante. Tra i primi 2 risultati della query “Search Engine Ranking Factors 2011” su Google.com troviamo Searchenginewatch e Seroundtable

Searchenginewatch ci parla di:

Deeplinking – spero bene che sia uno “strumento” acquisito

CTR nelle Serp – e anche questo spero sia un fattore acquisito, visto che se ne parlava nell’ormai centenario brevetto sui dati storici – sezione comportamento utenti 

“il motore di ricerca può monitorare il numero delle volte che un documento è selezionato da un insieme di risultati di una ricerca e/o la quantità di tempo che uno o più utenti spendono accedendo al documento”

Posizionamento organico e Local Business –  chi non si è ancora accorto dell’importanza della presenza, e quindi dell’ottimizzazione, dei Local Business e della sua integrazione con la serp organica dovrebbe quantomeno preoccuparsi 🙂

Leggendo Search Engine Land troviamo poi:

Social Ranking: già tempo fa Danny Sullivan aveva scritto un articolo riguardante l’importanza della presenza sui Social Network e sull’autorevolezza dei profili sociali. Qualunque SEO con un pò di buon senso e un po di esperienza aveva già capito che anche se i link dai Social Network uscissero in nofollow, una certa autorevolezza aiutava comunque il ranking sull’organico (e quindi i nofollow venivano in un certo qualsenso considerati follow). Sempre in una intervista di quache mese fa di Danny Sullivan a Google e Bing, apparsa su Seomoz, c’è la conferma ufficiale di come Twitter e Facebook possano aiutare il posizionamento organico.

E non dimentichiamo di aggiungere Google stesso come fonte ufficiale:

Speed Ranking: c’è sempre stato il segnale che molti ma non tutti erano pronti a recepire e cioè che la velocità di risposta del server e del caricamento della pagina potesse influenzare il ranking sull’organico. Ne aveva parlato Matt Cutts ad aprile dello scorso anno dopodichè  Google stesso ne diede conferma.

Personalmente poi introdurrei un fattore vecchio che ritengo sarà veramente determinante in futuro, visto anche gli ultimi sviluppi relativi a Panda Update, e cioè l’autorevolezza del dominio, e quindi i backlink da siti ufficiali, governativi e hub.

Quindi, personalmente direi che le novità riguardanti i “Search Engine Ranking Factors 2011” si potrebbero riassumere, in ordine sparso:

  1. Speed ranking
  2. Social Ranking
  3. Site autority (Link popularity)

GUS: Google Universal Search

E come non riprendere poi un articolo sulla nascita della Universal Search di Google 🙂

Leggi fino alla fine mi raccomdando, ti aspettano i deliri dell’epoca 😀

GUSGoogle Universal Search…perchè Google non era abbastanza universale?

A quanto pare no!

Si poteva fare di meglio, ed è quanto stanno cercando di fare al Googleplex i Google Fellow (ingegneri d’elite del Search Quality Team) sviluppando un nuovo tipo di ricerca verticale in grado di restituire all’utente che effettua una query diversi tipi di risultati e “formati”.

Dei cambiamenti di Google, nelle ultime due settimane, se ne parla ovunque ormai: dalle ricerche correlate alle novità apportate con le prime applicazioni dell’Universal Search.

Per quei pochi che non hanno avuto la possibilità di connettersi ad internet nelle ultime settimane (…) ricordiamo cos’è GUS: l’Universal Search di Google è la nuova interfaccia di ricerca del motore americano; d’ora in poi sarà possibile accedere direttamente dall’home page del search engine più famoso ed usato al mondo a diversi tipi di formati come immagini, video, mappe, news e libri tanto per citarne alcuni, sfruttando appieno le potenzialità dei diversi database del gigante californiano.

Amit Singhal, direttore del Search Quality Departament, in una recente intervista al New York Times:

“La ricerca negli ultimi anni si è mossa da “Dammi quello che ho cercato” verso “Dammi quello che voglio“.”

Questo conferma la filosofia di Google che è quella di fornire all’utente ciò che cerca, ma che, per alcuni tipi di ricerche, non era di semplice attuazione. Basti pensare a determinati termini molto generici come “Apple” o “pesca” per evincere le difficoltà incontrate dagli ingegneri nel cercare di capire cosa sta effettivamente cercando l’utente.

universal-search-shoot.jpg

Nonostante GUS venga implementato e potenziato nel tempo, ci sono già alcune query di ricerca, come quella mostrata a lato, che ne mostrano le potenzialità: immagini, video, ricerche correlate e news.

Il lavoro di SEO negli ultimi tempi si è evoluto, e non poco: si è passati da un SEO prettamente tecnico, ad un SEO molto più vicino e soprattutto legato al marketing e alla promozione a 360 gradi, tante sono state, infatti, le innovazioni che hanno determinato un sostanziale cambiamento nel lavoro quotidiano di ogni SEO.

Così come si sta evolvendo il lavoro di SEO, già in corso da diverso tempo, così Google continua ad evolvere e a cambiare.

Una delle innovazioni sotto gli occhi di tutti che Universal Search apporterà nel lavoro di SEO, sarà quello di posizionare nei risultati organici video, immagini, news, libri e mappe.

Premetto che non ho fatto test al riguardo, ma sono dell’idea che ogni risultato di ricerca nell’organico viene valutato come un singolo documento da estrarre durante il processamento della query di ricerca; ovviamente a seconda dei documenti esistono diversi parametri di ottimizzazione che difficilmente possono essere mischiati; nell’informatica, in generale, è difficile paragonare elementi appartenenti a famiglie differenti.

Mentre per mappe e libri penso sia difficile che gli algoritmi di ranking considerino gli stessi parametri di ottimizzazione conosciuti finora per i documenti testuali, il mio “SEO SENSE” mi fa supporre che posizionare video e immagini non sarà troppo diverso dal posizionare un qualsiasi altro documento nell’organico (doc, pdf, etc)

Prendo ad esempio il posizionamento di un video per spiegarmi meglio.

Così come per i documenti testuali esistono diversi parametri di ottimizzazione interna ed esterna, title e backlink, rilevanza e popolarità tanto per dirne alcuni, o per le immagini, alt, prossimità e metadati, così ci saranno altri fattori da ottimizzare per posizionare un video di youtube nei risultati organici.

A prima vista, guardando una pagina di youtube, penso al title, alla descritpion, ai tag, ai commenti e aggiungerei backlink, comportamento e preferenze dell’utente.

Andando contro corrente mi vien da pensare: perchè devo fare boombing su un video di youtube o matecafe, accrescendo sempre di più la popolarità degli stessi con deeplink?

Mi spiego: se fino ad ora il deeplink veniva usato per spingere una determinata pagina del nostro sito, accrescendo comunque la link popularity del dominio, e, di conseguenza, se fatto con i dovuti crismi, il trust dello stesso, perchè dovrei fare deeplink (boombing con anchor text) su un sito di proprietà di Google come youtube?

Sarebbe interessante se si riuscisse a posizionare in Universal Search una pagina del nostro sito con un video.

Sicuramente è presto per parlarne, ma in tutte le serp che ho visto, i risultati con video fanno sempre capo agli stessi siti: Youtube, Matecafe e Google Video (non ho mai visto Yahoo Video); non vorrei, quindi, che GUS diventi uno strumento per accrescere ancora di più (ce n’è bisogno?) il monopolio di Google, non in termini di uso e servizi, ma in termini di presenza dei “siti di Google” in una serp organica.

Sto delirando, lo so, ma spero che qualcuno abbia capito il mio ragionamento.

Come creare un sito di successo?

Questo scrivevo nel lontano 2007 🙂

NOTA BENE: nel 2007 Google non interpretava Javascript e altri linguaggi lato client di oggi, ora nel 2019 SI e lo fa già da un certo periodo 🙂

Ricordo i primi test nella comunità seo di quegli anni per capire se il crawler seguisse i link generati in javascript o no

Approfondimenti attuali sul tema:
https://webmasters.googleblog.com/2015/10/deprecating-our-ajax-crawling-scheme.html

Times have changed. Today, as long as you’re not blocking Googlebot from crawling your JavaScript or CSS files, we are generally able to render and understand your web pages like modern browsers. To reflect this improvement, we recently updated our technical Webmaster Guidelines to recommend against disallowing Googlebot from crawling your site’s CSS or JS files.

I primi 5 punti essenziali per sviluppare un sito di successo

1. Il nome a dominio

Il nome a dominio è uno dei primi punti che decreta il successo o il fallimento di un sito: nomi troppo lunghi o difficili da ricordare sono da evitare, meglio concentrarsi su nomi brevi e che contengano nel nome almeno un accenno all’ attività principale del sito. Questo per una duplice ragione: per l’ utente, che ricorderà più facilmente il nome del sito e che già dal nome potrà capire di cosa tratta il sito; per i motori di ricerca, che ancora danno molta considerazione alle keyword contenute nell’ url del sito.

2. Il server

La scelta del servizio di hosting o di un server dedicato, con ip dedicato, molte volte decreta da solo il successo o il fallimento di un sito: troppo spesso infatti si incorre in un servizio di hosting a basso prezzo, con tempi di rispostalunghi che disturbano i visitatori e che li spingono a spingere il tasto back nel browser, o addirittura si incontrano periodi di down del server in cui il sito non può essere raggiunto, perdendo visitatori, potenziali clienti se si tratta di un’ attività, e ledendo comunque l’ immagine generale del sito: per non parlare poi se il sito è stato raggiunto da Google, che potrebbe tener conto delle preferenze dell’ utente tra una serp e dei tempi di permanenza nel sito stesso

3. Il linguaggio di sviluppo

Il linguaggio di programmazione con cui si sviluppa un sito internet determina il successo o meno dello stesso sui motori di ricerca: molti webmaster, termine che non ha più molto significato con l’ avvento del nuovo modo di fare web, in cui diverse figure si occupano dello sviluppo di un progetto su internet, si affidano ancora prettamente a linguaggi di sviluppo lato client come javascript per favorire l’ utente in diverse applicazioni che permettano la personalizzazione di diversi strumenti e applicazioni del sito, non considerando che i motori di ricerca difficilmente considerano i linguaggi lato client. Un motore di ricerca legge il codice di una pagina web, codice che viene generato dal server: i linguaggi lato client come javascript sono usati per gestire applicazioni web che vengono interpretate invece dal browser dell’ utente, e perciò non acquisibili dal motore di ricerca. La scelta del linguaggio di sviluppo deve essere fatta ad hoc, sia per le applicazioni lato server, in modo da far indicizzare correttamente i contenuti del sito dai motori di ricerca, sia per le applicazioni lato client intepretate dal browser e che non necessitano dell’ indicizzazione sui motori, come ad esempio la personalizzazione del layout grafico del sito.

4. Il sito Usabilità

Un sito internet di successo deve essere usabile, user-friendly, in modo da garantire la soddisfazione dell’ utente che vi accede in cerca dell’ informazione desiderata. L’ usabilità, solo recentemente codificata dalla norma ISO 9241 come “il grado in cui un prodotto può essere usato da particolari utenti per raggiungere certi obiettivi con efficacia, efficienza e soddisfazione in uno specifico contesto d’ uso”, è un concetto molto antecedente: nasce negli anni 60 a seguito del concetto di interazione uomo-artefatto, si sviluppa poi in ambito informatico e soprattutto con l’ avvento di Internet, grazie a Jakob Nielsen e al suo decalogo sull’ usabilità.

4.1. Accessibilità

L’ accessibilità è la capacità di un servizio o di una risorsa d’ essere fruibile con facilità da un qualsiasi utente. Il termine è comunemente associato alla possibilità anche per persone con ridotta o impedita capacità sensoriale, motoria, o psichica, di fruire dei sistemi informatici e delle risorse software a disposizione. In internet tutto ciò si traduce nella facilità di fruizione da parte di diversi tipi di browser utilizzati per la navigazione in internet, non dimenticandoci di considerare browser datati o browser particolari utilizzati da persone diversamente abili che leggono solamente il testo di una pagina web. Per realizzare un sito accessibile si consiglia di seguire i parametri di sviluppo del W3C, il World Wide Web Consortium, l’ unico organo mondiale su internet che cerca di fissare degli standards di sviluppo per le applicazioni web, e in particolar modo le linee guida per la WAI Accessibility .

4.2 Utilità

Un sito internet, per avere successo e non rimanere nel limbo dei centinaia di milioni di siti anonimi, deve essere utile, deve cioè fornire informazioni e servizi utili al navigatore. Un sito utile, nel suo settore di appartenenza, deve essere utile per gli utenti, che decretano il successo o il fallimento del sito stesso, i quali, se soddisfatti, promuoveranno in maniera gratuita il sito stesso parlandone con amici e conoscenti. Un sito utile verrà facilmente linkato spontaneamente da altri siti a tema dello stesso, aumentandone così sia la popolarità su internet che le visite e il traffico generato dal sito.

5. La struttura

Con il termine struttura di un sito web si intende sia l’ organizzazione tassonomica dello stesso che l’ organizzazione delle diverse aree di una singola pagina web.

5.1 La tassonomia

Il termine Tassonomia si riferisce alla classificazione gerarchica di argomenti e concetti. Qualsiasi concetto può essere classificato attraverso schema tassonomico: un organizzazione gerarchica per categorie del concetto stesso. Da wikipedia:

“Secondo la matematica una tassonomia è una struttura ad albero di istanze (o categorie) appartenenti ad un dato gruppo di concetti. A capo della struttura c’ è un’ istanza singola, il nodo radice, le cui proprietà si applicano a tutte le altre istanze della gerarchia (sotto-categorie). I nodi sottostanti a questa radice costituiscono categorie più specifiche le cui proprietà caratterizzano il sotto-gruppo del totale degli oggetti classificati nell’ intera tassonomia.”

Attraverso il corretto sviluppo della tassonomia, organizzando il sito in macro – categorie, categorie e sotto categorie, si persegue il duplice scopo di realizzare un sito facilmente navigabile, rispettando quindi uno dei criteri dell’ usabilità, secondo i classici criteri di sviluppo e navigazione ad albero o a rete, sia maggiormente digeribile e classificabile dai motori di ricerca, che riescono a interpretare, tramite l’ utilizzo di diversi algoritmi, il tema sviluppato da una singola pagina web.

5.2 Le aree di una pagina

All’ interno della struttura di un sito internet, e più in particolare di una pagina web, è molto importante riuscire a disegnare e ottimizzare le diverse aree che compongono la pagina web, non solo pensando ai motori di ricerca, ma soprattuto all’ utente che si trova a navigare e a leggere i contenuti. Scrivere per il web è sostanzialmente diverso che scrivere nel modo tradizionale: la lettura a video, infatti, risulta molto più fastidiosa che la lattura su formato cartaceo. Questo porta l’ utente a scorrere velocemente i contenuti della pagina, soffermandosi sulle parole chiavi e sulle frasi che più lo colpiscono e lo interessano. Per questo diventa fondamentale non solo ottimizzare le aree di una pagina web ma riuscire a scrivere testi leggibili, con la corretta formattazione: quante volte vi siete imbattuti nei cosiddetti “muri di testo” e avete rinunciato alla lettura del contenuto?

Il decalogo dell’usabilità

Sempre attuale, anche se scritto oltre 10 anni fa 🙂

Le dieci linee guida più importanti da rispettare secondo Nielsen per rendere un’ applicazione web usabile

Quella che per molti può sembrare una lotta al cattivo design, è per Nielsen una “battaglia per il buon design”: per cercare di rendere un’ applicazione web usabile ci si può riferire alle sue 10 linee guida, generali ed adattabili ad ogni realtà digitale, anche conosciute come il “decalogo dell’usabilità”:

Coerenza: l’utente che naviga fra i documenti, non dovrebbe mai chiedersi se parole, immagini, pulsanti, situazioni o azioni diverse hanno lo stesso significato; “situazioni simili” devono essere coerenti nelle azioni, nella terminologia, nei colori, nello stile, nei caratteri e così via; la coerenza va applicata alla grafica (stessa presentazione grafica = stessa informazione), agli effetti (stesso comando = stesso effetto, stessa azione conseguente), alla presentazione (stessa informazione = stessa posizione).Ci vuole coerenza anche rispetto agli standard e alle convenzioni, ciò significa, che l’utente si aspetta di poter interagire con il nostro sistema allo stesso modo in cui fa con altri siti (ad es. quando si trova una frase sottolineata e, magari contrassegnata dal colore blu, si presume di avere a che fare con un link). La mancanza di coerenza porta ad una perdita di affidabilità e genera confusione.

Feedback: il feedback rappresenta l’informazione di ritorno in risposta a qualsiasi azione dell’utente sull’interfaccia ed ha lo scopo di rendere visibile all’utente lo stato corrente del sistema, in modo da evitare errori, incomprensioni o blocchi nell’interazione (ad es. quando si invia una form, il sistema dovrebbe dare il messaggio d’invio avvenuto, la comparsa di un indicatore d’avanzamento che indica il tempo necessario per eseguire un’operazione, emissione di un segnale sonoro che indica che si sta cercando di compiere un’azione non consentita ecc…). Importantissimi sono gli indicatori di “progress” per indicare la transazione in corso, poiché è stato appurato che già dopo un secondo l’utente avverte il ritardo del sistema nella risposta e, dopo 8 secondi il 50% di questi, abbandona il sito.

Uscite chiaramente indicate: il sistema non deve mai imprigionare l’utente in situazioni che non hanno via d’uscita visibili (ritorni alla pag. precedente, successiva, all’home page…), né limitare la sua libertà di movimento. L’utente deve avere la sensazione di avere tutto sotto controllo; deve poter prevedere gli effetti delle proprie azioni (es. avvertire delle dimensioni di un file prima di scaricarlo).

Prevenzione degli errori: è meglio evitare che un problema si presenti piuttosto che prevedere vari messaggi di errore, ma commettere degli errori nell’interazione con un prodotto è naturale. L’errore non è altro che un’azione specificata in modo incompleto o inesatto e, proprio perché gli errori sono sempre possibili, è importante che il sistema sia progettato in modo da diagnosticarli e facilitarne la correzione (es. fornire funzionalità d’annullamento delle operazioni, fornire una messaggistica efficace, evitare di presentare pagine senza opzioni di navigazione, rendere sempre disponibili le funzioni per uscire dal programma o per ritornare all’home page).

Messaggi d’errore semplici: in caso di errore i messaggi devono essere costruttivi, in altre parole orientare l’utente alla soluzione e non all’individuazione di colpe e deve essere data la possibilità di riscrivere solo la parte errata; fornire dunque anche funzionalità di ripristino delle condizioni di default.

Parlare il linguaggio dell’utente: il linguaggio utilizzato a livello d’interfaccia deve essere semplice e familiare per l’utente e rispecchiare i concetti e la terminologia a lui noti. Va evitato il più possibile un linguaggio tecnico od orientato al sistema, che utenti non esperti di informatica possono non comprendere (es. da evitare frasi come “il doc. è disponibile in formato .rtf” o “doc. zip trasferibile via ftp”). Rientrano in questo punto anche le icone e le metafore, forme per rappresentare concetti in forma grafica e simbolica, che se ben strutturate agevolano la comprensione, forse più delle parole.

Ridurre il carico di memoria per l’utente: è più facile riconoscere una cosa vedendola direttamente piuttosto che recuperarla dalla memoria, dunque nel definire gli strumenti in grado di agevolare la flessibilità e l’efficienza, va considerato che le esigenze degli utenti variano in relazione al loro livello d’esperienza rispetto al compito e alle tecnologie informatiche. Gli utenti non esperti, ad esempio, amano essere guidati passo dopo passo, mentre quelli più esperti, preferiscono utilizzare delle scorciatoie , delle quali anche utenti meno esperti, man mano che il loro livello di esperienza cresce, possono usufruire.

Scorciatoie: sarebbe utile quindi includere nel sistema anche scorciatoie come tasti o pulsanti che consentano una navigazione più rapida “accesskey” che permettono, con una combinazione di pulsanti, di passare direttamente in una determinata posizione della pagina; “facilities d’inserimento” ossia l’anticipazione del sistema nell’inserimento di un termine e così via.

Aspetto gradevole ed essenziale: le interfacce non dovrebbero contenere elementi irrilevanti o ridondanti poiché, ogni informazione superflua distrae dalla visibilità delle informazioni più importanti. Limitare la possibilità di scelta dell’utente perché, se in una pagina ci sono 50 pulsanti, esiste una possibilità su 50 che l’utente compia l’azione giusta per raggiungere il suo scopo.

Fornire help e manuali: normalmente un buon prodotto non dovrebbe aver bisogno di documentazione per essere utilizzato, però in certi casi può essere necessario fornire help e manuali. Nei casi in cui si ritiene necessario ciò, l’informazione va realizzata con l’obiettivo di garantire: facilità di consultazione; comprensibilità e brevità dei testi; orientamento dell’attività dell’utente; efficacia nella risoluzione del problema.

La competitività di una SERP

Anche questo lo dovevo per forza riprendere 😀

Considera che all’epoca di suite seo online ne esistevano veramente poche e sicuramente non con tutte le funzionalità che prevedono ora 🙂

Uno dei tanti compiti che un SEO si ritrova giornalmente nel suo lavoro è cercare di stabilire la competitività di una serp.

Tralasciando i criteri di come formulare una buona offerta seo, di come stabilire i prezzi in un mercato senza un vero albo e un codice deontologico, vediamo insieme alcuni criteri che possono essere utili nello stabilire la difficoltà di posizionare un sito su Google per una certa keyword, in un dato settore.

Generalmente, quando mi ritrovo a fare questo tipo di analisi, guardo diversi fattori e mi avvalgo di strumenti differenti.

La prima cosa che faccio è “dare un’occhiata veloce” alle prime 4 pagine della serp, cosicchè da farmi un’idea generale di quanti seo lavorano nel settore: questa analisi la faccio in maniera grossolana, cercando di stabilire gli addetti ai lavori dalla presenza dei parametri di ottimizzazione on-site da cui si può riconoscere la presenza di un seo, come la keyword nell’url, nel title della pagina e nel meta description, nonostante quest’ultimo abbia quasi esaurito la sua forza vista la troppa facilità con cui era manipolabile in fase di ottimizzazione. In un secondo tempo, con l’analisi dei backlink, approfondisco anche questo di analisi cercando di farmi un quadro preciso dei seo convolti nel settore.

Secondo passo è vedere rapidamente la quantità dei collegamenti sponsorizzati offerti da AdWords: se presenti in modo da riempire solo la prima pagina, oppure se in numero elevato da coprire più pagine, se compaiono solo nella parte destra o anche in cima ai risultati organici. Di seguito apro il pannello Adwords e, utilizzando il keyword tool external, effettuo qualche stima sui probabili bid per capire quanto “vale” la keyword.

Fatto questo, cerco di avvalermi delle stime effettuate da tool come Seobook e Google Trends per capire quanto effettivamente la keyword viene ricercata e se ci sono altre keyword a cui puntare, almeno nel breve periodo, in grado di portare un discreto ritorno economico in fase iniziale.

Dopodichè effettuo qualche ricerca su Google utilizzando alcuni parametri per la ricerca avanzata, come intitle (all), inurl (all) e inanchor (all), guardando non solo il numero dei risultati restituiti ma soprattutto gli eventuali cambiamenti nell’ordinamento della serp, per riscontrare differenze con la serp principale. Controllo anche l’exact match e poi accendo il fido Seo Quake (estensione Firefox) e comincio a studiare in maniera approfondita i primi 40 risultati, tabellando non solo i risultati forniti da Seo Quake ma risalendo agli stessi parametri anche della home, nel caso nella serp compaia una pagina e non la home stessa.

Dei dati forniti da Seo Quake mi soffermo in particolar modo all’analisi dei backlink dei competitor: sappiamo infatti, che non è sufficiente sapere solo il numero di link che puntano ad una determinata pagina, ma diventa sempre più fondamentale capire il tipo e le informazioni passate: se a tema, se e quanto fidati, se provenienti da circuiti di affiliazione, directory o scambi link tanto per dirne alcuni.

Infine “olio di gomito” per cercare di interpolare i dati raccolti e riuscire ad avere un quadro completo.

Questo è un breve accenno di quello che faccio sempre per valutare la difficoltà di una keyword.

E voi? Qual’è il vostro modus operandi per stabilire la competitività di una serp?

PhraseRank: indicizzazione per frasi.

Phrase identification in an information retrieval system

I sistemi di IR finora usati dai più grandi motori di ricerca si sono sempre basati sull’acquisizione di contenuti e documenti di testo tramite algoritmi in grado di riconoscere i temi trattati da un documento usando le singole parole contenute: da un documento, eliminate le stopwords, si acquisiscono le parole che formano il documento e si classifica qust’ultimo in base alla rilevanza delle parole all’interno del testo.

Il processo non è assolutamente così semplice come l’ho descritto sopra, ma rende l’idea degli attuali processi per la ricerca e il recupero delle informazioni di un documento di testo in una grande collezione di documenti come il web.

Il gigante californiano di Mountain View, ultimamente, ha rilasciato una serie di 5 brevetti che potrebbero cambiare l’attuale sistema di information retrieval, cambiando così non solo il sistema di indicizzazione dei documenti, ma anche il sistema di ranking e di ordinamento dei risultati, un processo di IR che andrebbe a rivoluzionare l’attuale mondo SEO: l’indicizzazione per frasi.

Il primo brevetto di Google della serie si intitola Phrase identification in an information retrieval system.

Abstract

“Un sistema di IR che usa frasi per indicizzare, recuperare, organizzare e descrivere documenti. Le frasi identificate predicono la presenza di altre frasi nel documento. I documenti vengono indicizzati in accordo alle frasi che includono. Le frasi correlate e l’estensione delle frasi sono anch’esse definite. Frasi in una query sono identificate e usate per recuperare e valorizzare i documenti. Le frasi sono anche usate per raggruppare i documenti nei risultati delle ricerche, creare le descrizioni dei documenti ed eliminare documenti duplicati dai risultati e dall’indice.”

Di seguito leggiamo le traduzioni dei claims del brevetto:

1. Un metodo di selezione documenti in un insieme in risposta ad una query, che comprende: ricevimento della query, idenfitifcazione di una pluralità di frasi nella query, dove minimo una frase è formata da più parole, identificazione dell’estensione di almeno una delle frasi identificate, e selezione dei documenti dall’insieme di documenti che contengono almeno una frase dall’insieme includendo frasi nella query e nell’estensione della frase.

2. Il metodo chiamato al punto 1, dove la selezione dei documenti comprende: combinazione di una “posting list” di un frase identificata e una “posting list” dell’estensione della frase identificata per formare una “posting list” combinata; selezione dei documenti che appaiono nella “posting list” combinata e nelle“posting list”di altre frasi identificate.

3. Un metodo di selezione documenti in una raccolta di documenti in risposta ad una query, comprendendo: ricevimento della query, identificazione di una frase incompleta nella query, rimpiazzo della frase incompleta con l’estensione della frase e selezione documenti dalla raccolta contenente l’estensione della frase.

4. Il metodo chiamato al punto 3, dove l’identificazione della frase incompleta e il suo rimpiazzo comprende: identificazione di una frase candidata nella query, corrispondenza della frase candidata ad una frase incompleta in una lista di frase incomplete e rimpiazzo della frase
candidata con l’estensione della frase associata con la frase incompleta.

5. l metodo chiamato al punto 3, dove un estensione della frase di una frase incompleta comprende una super sequenza di frasi
incomplete che comincia con la frase incompleta.

6. Un metodo di selezione documenti in una raccolta in risposta ad una query, che comprenda: ricevimento di una query includendo la prima e la seconda frase, recupero della “posting list”dei documenti contenente la prima frase; per ogni documento nella lista: accesso alla lista indicando frasi correlate della prima frase che sono presenti nel documento, e sensible a reagire alla lista della frase correlata indicando che la seconda frase è presente in un documento, selezionando il documento da includere nel risultato di una query, senza richiamare una “posting list”di documenti contenenti la seconda frase.

7. Il metodo chiamato al punto 6, comprendente inoltre: sensibile a reagire alla lista delle frasi correlate che indicano che la seconda frase non è presente in un documento, escludendo il documento dai risultati della query, senza recuperare una “posting list”di documenti contenenti la seconda frase.

8. Il metodo chiamato al punto 6, comprendente: in risposta alla lista delle frasi correlate indicando che la seconda frase non è una frase correlata alla prima, intersecando la “posting list”dei documenti per la prima frase e con una “posting list” di documenti per la seconda frase per selezionare i documenti contenenti sia la prima che la seconda frase.

9. Il metodo chiamato al punto 6, comprendente inoltre: archiviazione delle liste di frasi correlate per una prima frase in rispetto ad un documento in un vettore di bit, dove un bit del vettore è regolato per ogni frase correlata alla prima frase che è presente nel documento, e un bit del vettore è rimosso per ogni frase correlata alla prima frase che non è presente nel documento, dove il vettore di bit ha un valore numerico, e valorizzando il documento selezionato determinando un valore adattato del vettore in accordo con l’insieme di bit per le frasi correlate alla prima frase che sono presenti nel documento.

10. Un metodo di ordinamento dei documenti inclusi nei in un risultato di una ricerca in risposta ad una query, dove la query comprende minimo una frase di ricerca, comprendendo: per ogni documento nel risultato di ricerca, accedendo al vettore di frase correlate per una frase di ricerca, dove in ogni bit del vettore è indicata la presenza, o l’assenza, di una frase correlata alla frase di ricerca; e ordinando i documenti nei risultati delle ricerche con il valore del loro vettore di frasi correlate, in modo che il documento con il più alto valore del vettore di frasi correlate è ordinato più in alto nei risultati delle ricerche.

11. Il metodo del punto 10, dove ogni bit del vettore di frasi correlate è associato con un frase correlata della frase di ricerca; e i bit sono ordinati cosicchè il più significativo bit del vettore è associato con una frase correlata avendo una più estesa informazione guadagnata in rispetto alla frase di ricerca, e il bit meno significativo è associato con una frase correlata avendo la minore informazione appresa in rispetto alla frase di ricerca.

12. Un metodo di ordinamento dei documenti inclusi nei risultati di ricerca in risposta ad una query, dove la query comprende al meno una frase di ricerca: per ogni documento nel risultato di ricerca: accedendo al vettore di frasi correlate per una frase della query, dove in ogni bit del vettore è indicata la presenza o assenza di una frase correlata alla frase di ricerca; per ogni bit indicando la presenza di una frase correlata della frase di ricerca, aggiungendo un predeterminato numero di punti associati con il bit per valorizzare un documento, e ordinando i documenti nei risultati di ricerca tramite il loro punteggio.

13. Il metodo al punto 12, dove ogni bit del vettore di frasi correlate è associato con una frase correlata alla frase di ricerca; i bit sono ordinati cosicchè il bit più significativo del vettore è associato con una frase correlata avendo la più estesa informazione guadagnata in rispetto alla frase di ricerca, e il bit meno significativo associato con una frase correlata avendo la minore informazione guadagnata in rispetto alla frase di ricerca; e il predeterminato numero di punti è associato con ogni serie di bit dal maggior numero di punti associati con i bit più significativi fino al minor numero di punti
associati con il bit meno significativo.

14.Un metodo per fornire un sistema di ir: automaticamente identificando frasi valide in un insieme di documenti comprendendo una pluralità di documenti, dove le frasi valide contengono frasi con più parole; indicizzando i documenti in accordo con le frasi valide contenute nei documenti, ricevendo una query di ricerca; identificando frasi contenute nella query, selezionando documenti in accordo alle frasi identificate, e ordinando i documenti selezionati

Storia dell’invezione

[0009] I sistemi di IR, generalmente chiamati motori di ricerca, sono ora uno strumento essenziale per trovare informazioni su larga scala, diverse, e crescenti come Internet. Di solito, i motori di ricerca creano un indice che correla i documenti (o pagine) a parole individuali presenti in ogni documento. Un documento è recuperato in risposta ad una query contenente un certo numero di termini di ricerca, generalmente basato sull’avere alcuni dei termini di ricerca presenti nel documento. I documenti recuperati sono poi ordinati in accordo ad altre misure statistiche, come la frequenza di occorrenze dei termini di ricerca, il dominio, analisi dei link e simili. I documenti recuperati sono poi presentati agli utenti, tipicamente nel loro ordine valorizzato, e senza altri raggruppamenti o gerarchie imposte. In alcuni casi, una porzione selezionata di un testo di un documento è presentata per fornire all’utente una breve descrizione del contenuto del documento.

[0010] Dirette corrispondenze booleane dei termini di ricerca hanno ben note limitazioni, e in particolare non possono identificare documenti che non hanno i termini di ricerca, ma hanno parole correlate. Per esempio, in un tipico sistema booleano, una ricerca con “pastori australiani” non potrebbe fornire documenti su altre razze di cani come i Border Collies che non hanno l’esatto termine di ricerca. Anzi, tale sistema è similmente in grado di recuperare e valorizzare altamente i documenti circa l’Australia (che non hanno niente a che fare con i cani), e documenti in generale sui pastori.

[0011] Il problema è che i sistemi convenzionali indicizzano documenti basati su termini individuali, piuttosto che su concetti. I concetti sono spesso espresso in frasi, come “pastori australiani”, “presidente degli Stati Uniti” o “Sundance film festival”. Al meglio, alcuni sistemi indicizzeranno i documenti in rispetto a un predeterminato e molto limitato insieme di parole conosciute, che sono generalmente selezione da un operatore umano. L’indicizzazione di frasi è di solito evitata a causa delle richieste computazionali e di memoria per identificare tutte le possibili frasi con 3, 4, 5 o più parole. Per esempio, sull’assunto che ogni 5 parole possono costituire una frase, e un grande corpodi testo potrebbe avere al minimo 200.000 termini unici, ci sarebbero approssimativamente 3.2 per 10 alla 26 frasi possibili, chiaramente molto più che un sistema esistente potrebbe memorizzare o comunque manipulare in modo programmatico. Altro problema è che le frasi continuamente entrano ed escono dal lessico in termini del loro uso, molto più frequentemente che una nuova parola venga inventata. Nuove frasi vengono sempre generate, in campo tecnologico, artistico, legato ad eventi mondiali e legislativo. Altre frasi poi tendono a scomparire dall’uso comune nel tempo.

[0012] Alcune sistemi di IR esistenti cercano di provvedere al recupero di concetti usando modelli co-occorrenti di singole parole. In questi sistemi una ricerca su una parola, come “presidente” recupererà documenti che hanno altre parole che frequentemente compaiono in associazione a “presidente”, come “bianca” e “casa”. Mentre questo approccio può produrre dei risultati di ricerca avendo documenti che sono concettualmente correlati a livello di singole parole, questo non cattura di solito le relazioni in tema che sono inerenti fra co-occorenze di frasi.

[0013] In accordo a questo, c’è bisogno di un sistema di IR e di una metodologia che può comprensivamente identificare frasi su larga scala, indicizzare documenti in relazione a frasi, cercare ed ordinare documenti in accordo con le loro frasi, e fornire raggruppamenti addizionali e informazioni descrittive sui documenti.

Sommario del brevetto

[0014] Un sistema e una metodologia di IR che usa frasi per indicizzare, ricercare, ordinare e descrivere documenti in un insieme di documenti. Il sistema è adatto per identificare frasi che hanno sufficientemente frequenza e/o uso distinto in un insieme di documenti per indicare che esse sono “valide” o “buone” frasi. In questo modo frasi di più parole, per esempio frasi di 4, 5, o più termini, possono essere identificate. Questo evita il problema di identificare e indicizzare ogni possibile frase risultante da tutte le possibili sequenze di un dato numero di parole.

[0015] Il sistema è anche adatto per identificare frasi che sono correlate l’una all’altra, basandosi sull’abilitità di una frase di predire la presenza di un’altra frase nel documento. Più specificatamente, si usa una misura di predizione in relazione all’attuale grado di co-occorrenza di due frasi verso un aspettato grado di co-occorrenza delle due frasi. L’ottenimento dell’informazione, come la percentuale dell’attuale grado di co-occorrenza per aspettarsi il grado di co-occorrenza, è una misura di predizione. Due frasi sono correlate dove la misura di predizione supera una predeterminata soglia. In questo caso, la seconda frase ha un guadagno significativo dalle informazioni riguardo alla prima frase. Semanticamente, saranno frasi correlate quelle che sono comunemente usate per discutere e descrivere un dato tema o un concetto, come “presidente degli stati uniti” e “casa bianca“. Per una data frase, le frasi correlate possono essere ordinate in accordo alla loro rilevanza o significato basate sulle loro rispettive misure di predizione.

[0016] Un sistema di IR indicizza documenti in un insieme di documenti tramite la validità o la bontà delle frasi. Per ogni frase, una “posting list” identifica i documenti che contengono la frase. In più, per una data frase, una seconda lista, vettore, o altra struttura è usata per immagazzinare dati indicando quali delle frasi correlate di una data frase sono presenti in ogni documento contenendo la frase data . In questo modo, il sistema può prontamente identificare non solo quali documenti contengono quali frasi in risposta ad una query di ricerca, ma quali documenti contengono anche frasi che sono correlate alla frase di ricerca, e questo più similmente all’essere specifiche sui temi o concetti espressi nelle frasi di ricerca.

[0017] L’uso delle frasi e delle frasi correlate provvedono alla creazione e l’uso di clusters di frasi correlate, che rappresentano, semanticamente, significativi raggruppamenti di frasi. I clusters sono identificati dalle frasi correlate che hanno una misura di predizione molto alta fra tutte le frasi del cluster. I clusters possono essere usati per organizzare i risultati di una ricerca, inclusa la selezione di quali documenti da includere nei risultati della ricerca e il loro ordine, così come l’eliminazione di documenti dai risultati delle ricerche.

[0018] Il sistema di IR è anche adatto per usare le frasi quando ricerca i documenti in risposta ad una query. La query è processata per identificare ogni frase che è presente nella query, così come per rercuperare l’associata “posting list” per le frasi di ricerca, e le informazioni sulle frasi correlate. In più, in alcune istanze un utente può immettere una frase incompleta nella frase di ricerca, come “presidente degli“. Le frasi incomplete come questa possono essere identificate e rimpiazzate dall’estensione della frase, come “presidente degli stati uniti“. Questo aiuto assicura che più similmente le ricerche degli utenti vengono di fatto eseguite.

[0019] Le informazioni relative di frase possono anche essere usate dal sistema per identificare e selezionare quali documenti includere nei risultati delle ricerche. Le informazioni sulla frasi correlate indicano per una data frase in un dato documento, quali frasi correlate alla data frase sono presenti in un dato documento. Di conseguenza, per una query contenente due frasi di ricerca, la “posting list” per la prima frase di ricerca è processata per identificare documenti contenenti la prima frase, e poi l’informazioni relativa di frase è processata per identificare quali di questi documenti contiene anche la seconda frase di ricerca. Questi ulteriori documenti vengono inclusi nei risultati della ricerca. Questo elimina la necessità del sistema di processare separatamente la “posting list” della seconda frase di ricerca, fornendo tempi di ricerca più veloci. Giustamente, questo approccio può essere esteso ad ogni numero di frase in una query, limitando risorse computazionali e tempi.

[0020] Il sistema può essere poi adattato per usare la frase e l’informazione relativa di frase per ordinare i documenti in un insieme di risultati di ricerca. L’informazione relativa di frase di una data frase è preferibilmente immagazzinata in un formato, come un vettore di bit, che esprime il relativo significato di ogni frase correlata a una data frase. Per esempio, il vettore di frase correlato ha un bit per ogni frase correlata ad una data frase, e i bit sono ordinati in accordo alle misure di predizione per la frase correlata. I bit più significativi del vettore di frase correlato sono associati con le frasi correlate che hanno il valore più alto della misura di predizione, e il bit meno significativo è associato con la frase correlata che ha il valore più basso della misura. In questo modo, per un dato documento e una data frase, l’informazione relativa di frase può essere usata per valorizzare un documento. Il valore del vettore di bit può essere usato come valore del documento. In questo modo documenti che contengono un alto ordine di frasi correlate di una frase di ricerca sono più portati ad essere correlati alla query che quelli che hanno un basso ordine di frasi relative. Il valore del vettore di bit può essere usato anche come componente in una più complessa funzione di valorizzazione, e può essere pesato ulteriormente. I documenti possono essere ordinati in accordo con il loro loro valore.

[0021] L’informazione di frase può anche essere usata in un sistema di IR per personalizzare le ricerche per un utente. Un utente è modellato come una raccolta di frasi, per esempio, derivate da documenti che l’utente ha visionato (per esempio, visti sullo schermo, stampati, archiviati, etc). Più in particolare, dato un documento selezionato dall’utente, le relative frasi che sono presenti in questo documento, sono incluse in un modello o profilo dell’utente. Durante ricerche subsequenziali, le frasi nel “modello utente” sono usate per filtrare le frasi di una query di ricerca e per pesare il punteggio del documento dai documenti recuperati.

[0022] L’informazione di frase può anche essere usata in un sistema di IR per creare una descrizione di un documento, per esempio i documenti inclusi in un insieme di risultati di ricerca. Data una query di ricerca, il sistema identifica la frase presente nella query, insieme alle frasi ad essa correlate, e le la sua estensione. Per un dato documento, ogni frase di un documento ha un conto di quante frasi di ricerca, frasi correlate, ed estensioni sono presenti nella sentenza. Le frasi del documento possono essere ordinate da questi conti (singolarmente o in combinazione), e un certo numero delle frasi superiori di posto (esempio cinque frasi) sono selezionate per formare la descrizione del documento. La descrizione del documento può essere presentata all’utente quando un documento è incluso nei risultati delle ricerche, cosi che l’utente ottenga una migliore comprensione del documento, relativamente alla query.

[0023] Un perfezionamento ulteriore di questo processo di generazione delle descrizioni dei documenti permette al sistema di fornire descrizioni personalizzate, che riflettano l’interesse dell’utente. Come prima, un “modello utente” archivia informazioni identificando frasi correlate che sono di interesse per l’utente. Questo modello utente è intersecato con una lista di frasi correlate alle frasi di ricerca, per identificare sia frasi comuni sia gruppi. L’insieme comune è poi ordinato in accordo all’informazione relativa di frase. L’insieme risultante di frasi correlate è poi usato per ordinare le frasi di un documento secondo il numero di casi di queste frasi correlate presenti in ogni documento. Un numero di frasi che hanno il numero più alto di frasi comuni correlate è selezionato come descrizione personalizzata del documento.

[0024] Un sistema di IR può anche usare l’informazione di frase per identificare ed eliminare documenti duplicati, sia mentre indicizza l’insieme di documenti, o mentre processa una query di ricerca. Per un dato documento, ogni frase di un documento ha un conto di quante frasi correlate sono presenti nella frase. Le frasi del documento possono essere ordinate tramite questo conto, e un certo numero di frasi di posto superiore (esempio cinque frasi) sono selezionate per formare la descrizione del documento. Questa descrizione è poi archiviata in associazione al documento, per esempio come una stringa o un hash delle frasi. Durante l’indicizzazione, un nuovo documento trovato è processato nello stesso modo per generare la descrizione del documento. La nuova descrizione del documento può essere abbinata contro precedenti descrizioni, e se la corrispondenza viene trovata, allora il nuovo documento è duplicato. Similarmente, durante la preparazione dei risultati di una query di ricerca, i documenti nell’insieme dei risultati delle ricerche possono essere processati per eliminare duplicati.

I: descrizione del sistema

[0037] In riferimento alla fig.1, è mostrata l’architettura software di un sistema di ricerca incoporato 100 in accordo all’incorporazione della presente invenzione. In questo, il sistema include un sistema di indicizzazione 110, un sistema di ricerca 120, un sistema di presentazione 130 e un server front end 140.

[0038] Il sistema di indicizzazione 110 è responsabile dell’identificazione di frasi nei documenti, e dell’indicizzazione dei documenti in accordo con le loro frasi, accedendo a diversi siti web 190 e altri insiemi di documenti. Il server front end 140 riceve le query dall’utente di un client 170, e fornisce queste query al sistema di ricerca 120. Il sistema di ricerca 120 è responsabile della ricerca di documenti rilevanti per la query di ricerca (risultati di ricerca), includendo l’identificazione di ogni frase nella query di ricerca, e poi dell’ordinamento dei documenti nei risultati della ricerca usando la presenza di frasi per influenzare l’ordine di importanza. Il sistema di ricerca 120 fornisce i risultati di ricerca al sistema di presentazione 130. Il sistema di presentazione 130 è responsabile della modifica dei risultati di ricerca inclusa la rimozione di documenti duplicati, e della generazione di descrizioni in tema coi documenti, e fornisce i risultati di ricerca modificati al server front end 140, che fornisce i risultati al client 170. Il sistema 100 include un indice 150 che archivia le informazioni di indicizzazione pertinenti ai documenti, e un magazzino di frasi (dati) 160 che archivia le frasi, e le informazioni statistiche correlate.

[0039] Nel contesto di questa applicazione, i “documenti” rappresentano ogni tipo di media file che può essere indicizzato e recuperato dal motore di ricerca, inclusi documenti web, immagini, file multimediali, documenti di testo, pdf o altri. Un documento può avere una o più pagine, partizioni, segmenti o altri componenti, appropriatamente al suo contenuto e tipo. In maniera equivalente un documento può essere inteso come una “pagina“, come comunemente si usa per riferirsi ai documenti su Internet. Nessuna limitazione all’opportunità dell’invenzione è implicata dall’uso del termine generico “documenti”. Il sistema di ricerca 100 opera su un largo corpo di documenti, come Internet e il World Wide Web, ma può nello stesso modo essere usato in insiemi più limitati, come per l’insieme di documenti di una libreria o di una impresa privata. In entrambi i contesti, si valuteranno i documenti che sono generalmente distribuiti su diversi sistemi di computer e siti. Senza perdita di generalità allora, i documenti in generale, a meno del formato o della locazione (esempio quale sito web o database) sarà collettivamente corrisposto ad un corpo o ad una raccolta di documenti. Ogni documento ha associato un identificativo che identifica univocamente il documento; l’identificativo è di solito una URL, ma anche altri tipi (esempio numeri documenti) possono essere usati. In questa è assunto l’uso delle URL per l’identificazione dei documenti.

Il sistema di indicizzazione: parte I

[0041] In una incorporazione, il sistema di indicizzazione 110 fornisce tre funzioni primarie operative:

  1. identificazione di frasi e frasi correlate,
  2. indicizzazione di documenti con rispetto alle frasi,
  3. generazione e mantenimento di una tassonomia basata sulle frasi.

Queste abilità valuteranno che il sistema di indicizzazione 110 compierà altre funzioni in supporto delle convenzionali funzioni di indicizzazione.

[0042] 1. L’dentificazione delle frasi

[0043] L’operazione di identificazione della frase del sistema di indicizzazione 110 identifica “buone” o “cattive” frasi nell’insieme di documenti che sono utili per indicizzare e ricercare documenti. In un certo aspetto, le buone frasi sono frasi che occorrono in più di una certa percentuale di documenti nell’insieme di documenti, e/o sono indicati avendo un’apparenza distinta in tali documenti, come delimitato dalle modifiche di tags altri morfologie, formattazione, o indicatori grammaticali. Un’altro aspetto delle buone frasi è che sono premonizioni di altre buone frasi, e non sono soltanto sequenze delle parole che compaiono nel lessico. Per esempio, la frase “presidente degli Stati Uniti” è una frase che predice altre frasi quali “George Bush” e “Bill Clinton“. Tuttavia, altre frasi non sono premonitrici, come “cadere dalle nuvole” o “fuori di testa” poiché gli idiomi e i modi di dire come questi tendono a comparire con molte altre frasi differenti e non correlate. Quindi, la fase dell’identificazione della frase determina quali frasi sono buone frasi e quale sono difettose (cioè, difettando nella potenza premonitrice).

[0044] In riferimento alla fig.1, il processo di identificazione della frase segue i seguenti passi funzionali:

[0045] 200: Raccolta delle possibili buone frasi, con frequenza e co-occorrenza statistica delle frasi.

[0046] 202: Classificazione delle frasi possibili sia come buone o difettose basate sulle statistiche di frequenza.

[0047] 204: Scremare la lista di buone frasi basandosi su una misura preventiva derivata dalle statistiche di co-occorrenza.

[0048] Ciascuna di queste fasi ora sarà descritta con ulteriori dettagli .

[0049] La prima fase 200 è un processo tramite cui il sistema di indicizzazione 110 indicizza un insieme di documenti in una raccolta di documenti, facendo ripetutepartizioni nella raccolta di documenti nel tempo. Una partizione è processata per il passaggio. Il numero di documenti recuperati per passaggio può variare, ed è preferibilmente circa 1.000.000 per partizione. Si preferisce che soltanto i documenti precedentemente non recuperati siano processati in ogni partizione, fino a che non siano processati tutti i documenti, o si incontrino alcuni altri criteri per la terminazione del processo. In pratica, il recupero continua poichè i nuovi documenti sono continuamente aggiunti alla raccolta di documenti. I seguenti passi sono presi dal sistema di indicizzazione 110 per ogni documento che è recuperato.

[0050] Attraversare le parole del documento con una lunghezza della finestra di frase di n, dove la n è una lunghezza massima voluta della frase. La lunghezza della finestra sarà tipicamente almeno 2 e preferibilmente 4 o 5 termini (parole). Le frasi includono preferibilmente tutte le parole nella finestra di frase, comprese quelle che in altri modi sarebbero considerato stop words, come “un” “il” e così via. Una finestra di frase può essere terminata da una conclusione della linea, un ritorno di paragrafo, un tag, o altri indizi di un cambiamento nel contenuto o formato.

[0051] La figura 2 illustra una parte di un documento 300 durante un attraversamento del processo di recupero, mostante la finestra di frase 302 che comincia alla parola “razza” e che si estende di 5 parole verso la destra. La prima parola nella finestra di frase 302 è la frase candidata i, e ciascuna delle sequenze i+1i+2i+3i+4 e i+5 è similarmente una frase candidata. Quindi, in questo esempio, le frasi candidate sono: “razza“, “cani di razza“, “cani di razza per“, “cani di razza per“, “cani di razza per i baschi” e “cani di razza per i pastori baschi“.

[0052] In ogni finestra di frase 302, ogni frase candidata è controllata a sua volta per determinare se è già presente nella buona lista di frasi 208 o nella lista di frasi possibili 206 . Se la frase candidata non è presente sia nella buona lista 208 o nella lista possibile 206, allora la frase candidata è stata già determinata per essere “cattiva” eviene saltata.

[0053] Se la frase candidata è nella buona lista 208, come entrata gj allora la voce di indice 150 per la frase gj è aggiornata per includere il documento (per esempio, il relativo URL o altro identificativo del documento), per indicare che questa frase candidata gj compare nel documento corrente. Un’entrata nell’indice 150 per una frase gj (o un termine) è riferita come la “posting list” della frase gj . La “posting list” include una lista dei documenti d (dai loro identitificativi, per esempio un numero di documento, o alternativamente un URL) in cui la frase si presenta.

[0054] In più, la matrice di co-occorrenze 212 è aggiornata, come ancora spiegato sotto. Nel primissimo passaggio, le buone e le cattive liste saranno vuote e così, la maggior parte delle frasi tenderanno ad essere aggiunte alla lista di frasi possibili 206.

[0055] Se la frase candidata non è nella buona lista 208 allora è aggiunta alla lista possibile 206, a meno che non sia già presente. Ogni entrata p sulla lista di frasi possibili 206 ha tre conteggi associati:

[0056] P(p): Numero di documenti su cui la frase possibile compare;

[0057] S(p): Numero di tutti i casi della frase possibile;

[0058] M(p): Numero di casi interessanti della frase possibile. Un caso di una frase possibile è “interessante” dove la frase possibile è distinta dal contenuto limitrofo nel documento tramite indicatori grammaticali o di formattazione, per esempio essendo in grassetto, o sottolineate, o come anchor text di un link, o tra virgolette. Queste (ed altre) distinzioni di apparenza sono indicate dalle varie modifiche fornite con i tag HTML e dagli indicatori grammaticali. Queste statistiche sono effettuate per una frase quando è disposta sulla buona lista 208.

[0059] In addizione alle varie liste, è mantenuta una matrice delle co-occorrenze 212 (G) per le buone frasi. La matrice G ha dimensioni m x m, dove m è il numero delle buone frasi. Ogni elemento G(j,k) nella matrice rappresenta un paio di buone frasi ( gj gk ). La matrice 212 mantiene logicamente tre conti separati per ogni paio ( gj gk ) di buone frasi in rispetto ad una finestra secondaria 304 che è incentrata sulla parola corrente i, e si estende di +/- h parole. In un esempio, come in fig.3, la finestra secondaria 304 è di 30 parole ( i+30, i-30 ). La matrice delle co-occorrenze 212 mantiene:

[0060] R(j,k) Conteggio delle righe co-occorrenti. Il numero delle volte che la frase gj appare in un finestra secondaria 304 con la frase gk.

[0061] D(j,k) Conteggio interessante disgiunto. Il numero delle volte che ogni frase gj o gk appare come testo distinto nella finestra secondaria.

[0062] C(j,k) Conteggio interessante congiunto. Il numero di volte che sia le frasi gj che gk appaiono come testo distinto nella finestra secondaria. L’uso di questo conteggio è particolarmente utile per evitare le circostanze dove la prase (ad esempio: nota di copyright) appare frequentemente nelle barre laterali, nel footer o nell’header, a questa non ha poteri di predizione di altro testo.

[0063] In riferimento all’esempio di fig.2, assumiamo che “cani di razza” è nella buona lista di frasi 208, così come le frase “pastore australiano” e “pastore australiano Club dell’America“. Entrambi queste frasi compaiono nella finestra secondaria 304 intorno alla frase corrente “cani di razza“. Comunque, la frase “pastore australiano Club dell’America” compare come anchor text di un link (indicato dalla sottolineatura) verso un sito web. Così il conteggio della riga co-occorrente per la coppia “cani di razza” “pastore australiano” viene incrementato, e il conteggio di riga e quello di interesse disgiunto per “cani di razza” “pastore australiano Club dell’America” sono entrambi incrementati visto che le frasi posteriori compaiono come testo distinto.