Come testare i risultati dei motori di ricerca?

Avevo una domanda per lintervista:

Ti è stato detto che un motore di ricerca Il risultato per query di destinazione non soddisfa un requisito in base alla sua posizione. Come lo testeresti?

Come lo testeresti?

Ho avuto alcuni pensieri però:

  • Hai bisogno di un elenco di query di ricerca di input
  • Hai bisogno di una posizione target per ciascuna query
  • Abbina ogni posizione target con lattuale

Ma non era abbastanza.

Commenti

  • Vorrei solo aggiungerti ‘ testare lalgoritmo di ricerca / posizionamento, non il modo in cui vengono presentati gli snippet dei risultati o il modo in cui funziona il completamento automatico delle query. Entrambi possono influire sullefficacia del recupero finale.

Risposta

Non sono esperto di motori di ricerca, ma ci sono molti fattori che contribuiscono alla modalità di visualizzazione dei risultati di ricerca. La query è essenzialmente il punto di partenza e il modo in cui il motore analizza la query è importante. Inoltre, alcuni motori di ricerca eseguiranno il “refactoring” della query sulla base di algoritmi di linguaggio naturale. Lordine dei risultati restituiti dipende spesso da varie metriche come popolarità, numero di parole corrispondenti, parole chiave, tag e così via. Inoltre, ad alcune di queste misure viene dato più peso di altre.

Quindi, questa domanda da solo non ti fornisce un contesto sufficiente, o forse lo scopo di questa domanda era di farti fare domande per ricavarne più contesto. A volte gli intervistatori pongono domande vaghe per vedere se lintervistato inizierà a prendere “pugnalate al buio “senza ottenere un contesto sufficiente (ad es. iniziare a parlare dei problemi e sperare di trovare una soluzione, o pensare al problema e considerare le potenziali soluzioni con premeditazione).

Risposta

In realtà, la domanda su come testare i motori di ricerca fa parte del problema del information retrieval (IR). Elencherò solo un pochi approcci come possono essere valutati / testati.

Approccio IR tradizionale

Un modo in IR tradizionale è preparare la configurazione del test, tra cui:

  • Query dei candidati
  • Set di dati di pagine indicizzate
  • Set di risultati attesi (inclusa la classifica prevista) per ogni query

Successivamente ottieni risultati effettivi eseguendo il tuo motore di ricerca sulle query candidate e confronta i risultati effettivi con i risultati attesi utilizzando una delle metriche di recupero delle informazioni , per esempio precisione / richiamo o nDCG . Questo ti darebbe una risposta quantitativa su quanto sia buono o cattivo il tuo motore di ricerca rispetto al set di risultati attesi (requisito).

Ovviamente, la risposta sarà specifica del contesto. Dipenderà in particolare dalla scelta delle domande dei candidati, dallintenzione e dalla formulazione, dal set di dati delle pagine indicizzate e dal modo in cui sono stati giudicati i risultati attesi. Allora qual era il contesto?

Approccio IR interattivo orientato agli obiettivi

Un altro approccio, forse di più pratico, sarebbe coinvolgere potenziali utenti e consentire loro di valutare la qualità dei risultati per una determinata query. Potrebbero portare le proprie query o potresti definire le query per loro. Potrebbero essere poche persone o unintera comunità, da cui potresti ottenere un feedback più implicito sulla qualità dei risultati (ad esempio, i risultati su cui si fa clic sono quelli previsti).

Isolamento del problema

Infine, il problema potrebbe non essere valutare la qualità complessiva del motore di ricerca, ma solo restringere il motivo del posizionamento basso di questo particolare risultato della query. Quindi, seguirei il problema che hai riscontrato:

Ti è stato detto che il risultato di un motore di ricerca per query target non soddisfa un requisito in base alla sua posizione.

e mi sono chiesto:

  • Quali erano gli altri risultati classificati più in alto di questo?
  • Perché erano classificati più in alto? Posso dirlo dagli snippet dei risultati? Forse corrispondono a parole chiave della query ma con un significato diverso? Quindi forse la formulazione non è corretta? Unaltra formulazione dellintenzione della query migliorerebbe il risultato?
  • La stessa query potrebbe essere formulata in modo diverso e le stesse diciture potrebbero avere una diversa intenzione della query dietro di loro. So davvero qual era lintenzione di un ricercatore dietro questa query?
  • Qual è precisamente il requisito? Per aumentare le pagine sponsorizzate più in alto? O classificare le pagine più in alto che corrispondono allintenzione della query?

Questi possono aiutarti a riprodurre il problema per altre query simili.

Risposta

Ho lavorato per una società di SEO nel 2004.Il nostro obiettivo era quello di ottenere risultati di ricerca naturali / organici sulla prima o sulla seconda pagina di Google per le frasi chiave mirate (i risultati di ricerca naturali / organici sono i risultati di ricerca regolari, non quelli sponsorizzati da Google Ad Words). Lazienda era una start-up e ha deciso di concentrarsi su Google solo poiché allepoca aveva oltre l80% del mercato dei motori di ricerca e gli studi hanno dimostrato che gli utenti molto raramente guardavano oltre le prime due pagine di Google per una corrispondenza dei risultati di ricerca.

Il modo in cui abbiamo testato i risultati è stato quello di digitare le frasi chiave mirate (combinazione di parole chiave) in Google e vedere se lelenco veniva visualizzato nella prima o nella seconda pagina di Google, se sì, allora è stato considerato un successo, se non è stato considerato un fallimento.

Oggi le cose sono cambiate con la pubblicità mirata di Google, quindi le persone potrebbero ricevere risultati diversi da computer diversi e se hanno effettuato laccesso a Google Plus ciò potrebbe influire anche i risultati, quindi non so nemmeno se sia più possibile testarlo.

Commenti

  • Quindi semplicemente i risultati di Google sono stati considerati come un riferimento == risultati attesi?

Risposta

Perché la domanda menziona “ricerca ult by the query non soddisfa i suoi requisiti in base alla posizione “, sembra che lobiettivo del test sia quello di garantire che lalgoritmo di ricerca abbia il giusto ordinamento basato su ranking / rilevanza. Per eseguire il debug / approfondire ulteriormente, potrei chiedere maggiori dettagli sulla query: era solo una semplice ricerca di testo su un singolo campo o coinvolgeva una combinazione di campi, coinvolgeva caratteri non inglesi (segni diacritici ecc.). A volte il motivo per cui un risultato potrebbe essere classificato più in basso potrebbe essere che alcuni caratteri speciali vengono omessi nella ricerca o alcuni campi specifici non sono indicizzati a causa della quale la ricerca omette quei campi.

Potremmo testare

  • Usa lo stesso termine / query con una combinazione aggiuntiva di campi
  • Verifica se la hitmap funziona bene, ovvero fa la prima documento nei risultati della ricerca ha davvero più “conteggio dei termini di ricerca” rispetto ad altri documenti nel campo cercato: lapertura del documento e il conteggio lo valuterebbero.
  • Elimina un carattere alla volta o un campo (per più ricerca nel campo) e quindi controlla se i risultati sono pertinenti
  • utilizza un sinonimo del termine (per la ricerca del termine) e vedi se rappresenta quel documento e si classifica più in alto
  • Restringi la ricerca per data o qualsiasi altro campo e vedere se un set di risultati ridotto lo classifica più in alto

Un altro metodo sarebbe semplicemente chiamare lAPI di ricerca utilizzando uno strumento come Fiddler o Postman e quindi confrontare il rango restituito con la classifica nellinterfaccia utente. A volte, durante lanalisi e il caricamento della pagina lato client, a causa di alcuni problemi di memorizzazione nella cache, lordinamento potrebbe risultare incasinato.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *