Un Evento Unico. 5 Sale. 27 Interventi. SEO, SOCIAL, E-Commerce, Mobile, Turismo.
CLICCA QUI e SCOPRI DI PIù X Chiudi

Visualizza un messaggio singolo
Vecchio 02-05-06, 16:36   #52 (permalink)
kerouac3001
User Attivo
 
L'avatar di kerouac3001
 
Data di registrazione: Apr 2005
Ubicazione: Roma (ma Palermitano sugnu)
Messaggi: 1,524
Invia un messaggio tramite MSN a kerouac3001
Stamattina ho fatto questo: I.R. Tool..ho seguito alla lettera i consigli di Low, ma aspetto che sia lui a dire se ho sbagliato qualcosa o no. A me sembra che funzioni.

Direi che creando lo script le idee mi si sono chiarite abbastanza. Ho una sola questione per Low: questo sistema si basa solo sulla frequenza delle parole in un documento e non sulla loro posizione: per esempio se la query è gatto nero in genere il motore di ricerca preferirà i testi in cui le parole gatto e nero sono consecutive e disposte nell'ordine della query ("...gatto nero..." è meglio di "...nero gatto..." e sicuramente è meglio di "gatto ... nero"). La posizione delle parole è un fattore di grande importanza e immagino che google non possa non tenerne conto al momento del calcolo dell'angolo. Infatti non si tratta di una funzione di perfezionamento dei risultati (come può essere la popolarità), ma più che altro deve fare parte del sistema che stabilisce qual'è il grado di pertinenza tra un documento e una query..quindi, detto ciò: come gestisce google questo aspetto e come lo implemento nello script in modo da stabilire quale documento testuale sia più adeguato alla query?

Un ultima questione: come hai detto tu ho calcolato l'angolo tramite la formula => prodotto scalare diviso il prodotto delle lunghezze

Dato che la query è necessariamente un sotto insieme del documento sono arrivato alla banale conclusione che il prodotto scalare possa ridursi al prodotto tra i pesi delle varie parole che compongono la query e i corrispettivi pesi nel documento.

Esempio:

=> query:

====> gatto [peso: 0,01]
====> nero [peso: 0,05]

=> documento:

====> io [peso: 0,03]
====> non [peso: 0,05]
====> sono [peso: 0,02]
====> un [peso: 0,09]
====> gatto [peso: 0,002]
====> nero [peso: 0,01]

Da 2 array composti dalle parole che ho elencato e con i pesi che ho elencato, un rapporto scalare tra i due array sarebbe riducibile a:

query_peso_gatto * documento_peso_gatto + query_peso_nero * documento_peso_nero

?

E' corretto o ho sbagliato a fare il prodotto scalare?

P.S. allo script ho aggiunto un database in cui memorizzo le frequenze su yahoo per ogni parola chiave..in modo da disturbare yahoo il meno possibile ed accelerare i tempi di esecuzione. Ovviamente ad ogni parola presente nel database ho associato anche la data in cui è stata recuperata, in modo tale da recuperarla nuovamente una volta ogni mese (nell'ipotesi che la frequenza nel web non cambi di molto in un mese).

P.P.S. per chi volesse usare lo script: non inserite testi lunghi per ora, perchè ancora il database delle frequenze è molto piccolo e quindi con tutta probabilità un documento lungo non permetterà allo script di terminare tutto il lavoro (perchè dovrà fare molte richieste a yahoo). Ho settato il time limit a 240 secondi, ma potrebbe anche fermarsi molto prima.
__________________
Capodanno a Roma
kerouac3001 non in linea   Rispondi citando