2013-02-18 18 views
6

Data una query, ho un punteggio di coseno per un documento. Ho anche il pagerank dei documenti. C'è un buon modo standard per combinare i due?Combinare TF-IDF (somiglianza del coseno) con pagerank?

Stavo pensando di moltiplicarli

Total_Score = cosine-score * pagerank 

Perché se si arriva a basso su entrambi pagerank o il coseno-score, il documento non è interessante.

Oppure è preferibile avere una somma ponderata?

Total_Score = weight1 * cosine-score + weight2 * pagerank 

È meglio? Quindi potresti avere un punteggio zero del coseno, ma un pagerank alto, e la pagina comparirà tra i risultati.

+0

La somma ponderata si trova sulla traccia corretta, ma si desidera eseguire hat w * log (PageRank)? o w * log (1 + PageRank)? Tutto questo sarebbe una combinazione lineare, non vorresti considerare una combinazione non lineare invece che abbia una firma sigmoidea? – sAguinaga

risposta

-1

Non riesco a immaginare un singolo caso in cui ciò sarebbe utile. Pagrank calcola in che modo "importante" un documento viene misurato come connessione ad altri documenti importanti (presumo che sia ciò che intendi: i bordi sono documenti per documentare i collegamenti in base a co-occorrenze a termine.Se vuoi dire qualcos'altro, per favore specifica).

Il punteggio di coseno è una metrica di somiglianza tra due documenti. Quindi il tuo pensiero è di combinare una metrica a coppie con una metrica del nodo per trovare solo documenti importanti simili a un altro documento? Perché non eseguire semplicemente pagerank sulla rete dell'ego dell'altro documento?

+1

Il punteggio del coseno è la somiglianza del coseno tra la query e il documento. – user1506145

0

Capisco che stai facendo un compromesso tra relatività e importanza. Questo è un problema di Multi-objective optimization.

Penso che la tua seconda soluzione funzionerebbe. È la cosiddetta scalarizzazione lineare . Devi sapere come ottimizzare i pesi. Ma i metodi per farlo possono essere trovati con diverse filosofie e tipi di soggettività che dipendono dal primato di ogni variabile caso per caso. In realtà, Come ottimizzare i pesi in un tale problema è a research area of mathematics. Quindi è difficile indicare quale modello o metodo è il più adatto al tuo caso. Potresti voler continuare con i collegamenti wiki sopra, e provare se riesci a trovare alcuni principi su questo tipo di problemi, e poi seguirli per risolvere il tuo caso.

1

La somma ponderata è probabilmente migliore di una regola di classificazione.

È utile suddividere il problema in una fase di recupero/filtraggio e una fase di classificazione. Il problema delineato con l'approccio della somma ponderata non è più valido.

Il processo descritto nel documento this di Sergey Brin e Lawrence Page utilizza una variante del modello vettore/coseno per il recupero e sembra una sorta di somma ponderata per la classifica in cui i pesi sono determinati dall'attività dell'utente (vedere la sezione 4.5 .1). Usando questo approccio un documento con zero coseno non passerebbe la fase di recupero/filtraggio e quindi non verrebbe considerato per il posizionamento.

0

Si potrebbe considerare l'utilizzo di harmonic mean. Con una media armonica i 2 punteggi saranno essenzialmente mediati comunque, i punteggi bassi trascineranno la media più in basso di quanto farebbero in una media regolare.

Si potrebbe utilizzare:

Total_Score = 2*(cosine-score * pagerank)/(cosine-score + pagerank) 

Diciamo pagerank ha segnato 0,1 e del coseno 0.9, la media normale di questi due numeri sarebbe: (0.1 + 0.9)/2 = 0.5, la media armonica sarebbe: 2*(0.9*0.1)/(0.9 + 0.1) = 0.18.

Problemi correlati