Cum se testează rezultatele motorului de căutare?

Am avut o întrebare de interviu:

Ți s-a spus că un motor de căutare rezultatul prin interogarea țintă nu îndeplinește o cerință prin poziția sa. Cum l-ați testa?

Cum l-ați testa?

Am avut însă câteva gânduri:

  • Aveți nevoie de o listă de interogări de căutare de intrare
  • Aveți nevoie de o poziție țintă pentru fiecare dintre interogări
  • Potriviți fiecare poziție țintă cu cea reală

Dar nu a fost suficient.

Comentarii

  • Aș adăuga doar ‘ re testarea algoritmului de căutare / clasificare, nu modul în care sunt prezentate fragmentele de rezultat sau modul în care funcționează completarea automată a interogării Ambele pot avea impact asupra eficacității ultimei recuperări.

Răspuns

Nu sunt expert în motoarele de căutare, dar există mulți factori care contribuie la modul în care sunt afișate rezultatele căutării. Interogarea este în esență punctul de plecare și modul în care motorul analizează interogarea este important. De asemenea, unele motoare de căutare vor „refactura” interogarea bazată pe algoritmi de limbaj natural. Ordinea rezultatelor returnate depinde adesea de diferite valori, cum ar fi popularitatea, numărul de cuvinte potrivite, cuvinte cheie, etichete etc. De asemenea, unele dintre aceste măsuri au o pondere mai mare decât altele.

Deci, această întrebare de la sine nu vă oferă cu adevărat suficient context, sau poate că scopul acestei întrebări a fost să vă determine să puneți întrebări pentru a obține mai mult context. Uneori intervievatorii vor pune întrebări vagi pentru a vedea dacă intervievatul va începe să ia „înțepături în întuneric”. „fără a câștiga un context suficient (de exemplu, începeți să vă loviți de probleme și sperați să vă împiedicați de o soluție sau să vă gândiți la problemă și să luați în considerare soluțiile potențiale cu gândire prealabilă).

Răspuns

De fapt, întrebarea cum să testați motoarele de căutare face parte din problema de recuperare a informațiilor (IR). Voi enumera doar o puține abordări cum pot fi evaluate / testate.

Abordare IR tradițională

O modalitate în IR tradițional este de a pregăti configurarea testului, inclusiv:

  • Interogări candidate
  • Set de date al paginilor indexate
  • Set de rezultate așteptate (a inclus clasarea așteptată) pentru fiecare interogare

Apoi obțineți rezultate reale rulând motorul dvs. de căutare peste interogări candidate și comparați rezultatele reale cu rezultatele așteptate folosind una dintre valorile de regăsire a informațiilor , de exemplu precise / recall sau nDCG . Acest lucru vă va oferi un răspuns cantitativ cât de rău sau bun este motorul dvs. de căutare în ceea ce privește setul de rezultate (cerință) așteptat.

Evident, răspunsul va fi specific contextului. Va depinde în special de alegerea interogărilor candidate, intenția și formularea acestora, setul de date al paginilor indexate și modul în care au fost evaluate rezultatele așteptate. Deci care a fost contextul?

Abordare IR orientată spre obiectiv / interactiv

O altă abordare, poate mai mult practic, ar fi implicarea potențialilor utilizatori și lăsarea acestora să evalueze calitatea rezultatelor pentru o anumită interogare. Aceștia ar putea aduce propriile interogări sau puteți defini interogări pentru ei. Aceștia ar putea fi câțiva oameni sau o întreagă comunitate, din care puteți obține feedback mai implicit despre calitatea rezultatelor (de exemplu, rezultatele pe care se face clic sunt cele așteptate).

Izolarea problemei

În cele din urmă, problema ar putea fi nu evaluarea calității generale a motorului de căutare, ci doar restrângerea motivului pentru clasarea scăzută rezultatul acestei interogări. Așadar, aș urmări problema pe care ați avut-o:

Vi s-a spus că un rezultat al unui motor de căutare prin interogarea țintă nu îndeplinește o cerință prin poziția sa.

și m-am întrebat:

  • Care au fost celelalte rezultate care au fost clasificate mai sus decât acesta?
  • De ce au fost clasate mai sus? Pot să spun acest lucru din fragmentele de rezultat? Poate că se potrivesc cuvintelor cheie de interogare, dar cu un sens diferit? Deci poate că formularea este incorectă? O altă formulare a intenției de interogare ar îmbunătăți rezultatul?
  • Aceeași interogare poate fi formulată diferit, iar aceleași formulări pot avea intenții de interogare diferite în spatele lor. Știu cu adevărat care a fost intenția unui căutător din spatele acestei interogări?
  • Care este exact cerința? Pentru a stimula paginile sponsorizate mai mari? Sau clasificați paginile superioare care corespund intenției de interogare?

Acestea vă pot ajuta să reproduceți problema pentru alte interogări similare.

Răspundeți

Am lucrat pentru o companie SEO în 2004.Ținta noastră a fost să obținem rezultate de căutare naturale / organice pe prima sau a doua pagină a Google pentru frazele cheie vizate (rezultatele căutării naturale / organice sunt rezultatele căutării obișnuite, nu cele sponsorizate de Google Ad Words). Compania a fost o start-up și a decis să se concentreze pe Google numai din moment ce deținea mai mult de 80% din piața motoarelor de căutare la acea vreme și studiile au arătat că utilizatorii arătau foarte rar după primele două pagini ale Google pentru o potrivire a rezultatului căutării.

Modul în care am testat rezultatele a fost să introducem expresiile cheie vizate (combinație de cuvinte cheie) în Google și să vedem dacă lista apare pe prima sau a doua pagină a Google, dacă da, atunci a fost luată în considerare un succes, dacă nu, atunci a fost considerat un eșec.

Astăzi lucrurile s-au schimbat cu publicitatea direcționată de Google, astfel încât oamenii să poată primi rezultate diferite de la diferite computere și dacă sunt conectați la Google Plus, acest lucru ar putea afecta și rezultatele, așa că nu știu dacă mai este posibil să testez acest lucru.

Comentarii

  • Deci, pur și simplu, rezultatele Google au fost tratate ca referință == rezultate așteptate?

Răspuns

Deoarece întrebarea menționează „res ult prin interogare nu își îndeplinește cerința în funcție de poziție „, se pare că obiectivul testului este să se asigure că clasarea corectă / sortarea bazată pe relevanță este la locul algoritmului de căutare. Pentru a depana / descrie în continuare acest lucru, aș putea cere mai multe detalii despre interogare – a fost doar o simplă căutare de text pe un singur câmp sau a implicat o combinație de câmpuri, a implicat caractere care nu sunt englezești (diacritice etc.)? Uneori, motivul pentru care un rezultat ar putea fi clasat mai jos ar putea fi faptul că unele caractere speciale sunt omise în căutare sau unele câmpuri specifice nu sunt indexate din cauza căutării omite acele câmpuri.

Am putea testa până la

  • Folosiți același termen / interogare cu o combinație suplimentară de câmpuri
  • Vedeți dacă hitmapul funcționează bine – adică primul documentul din rezultatele căutării are într-adevăr mai mult „număr de termeni de căutare” decât alte documente din câmpul căutat – deschiderea documentului și numărarea ar evalua acest lucru.
  • Eliminați un caracter odată sau un câmp (pentru mai multe căutare câmpată) și apoi verificați dacă rezultatele sunt relevante
  • utilizați un sinonim al termenului (pentru căutare termen) și vedeți dacă are imaginea documentului și se clasează mai sus
  • Limitați căutarea după data sau orice alt câmp și vedeți dacă un set de rezultate redus îl clasifică mai sus

O altă metodă ar fi doar să apelați API-ul de căutare utilizând un instrument precum lăutar sau Postman și apoi să comparați clasamentul returnat cu clasamentul în UI. Uneori, în timp ce analizați și încărcați pagina laterală a clientului, din cauza unor probleme de cache, sortarea ar putea fi deranjată.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *