Wyszukiwanie hybrydowe

Miejsce połączenia dwóch rzek o różnej barwie

Najlepsze wyniki daje zwykle połączenie obu mechanizmów. Każdy z nich łapie to, co drugi pomija.

Podział ról

Dopasowanie dosłowne trafia w kody, numery i nazwy własne. Semantyczne — w pytania zadane własnymi słowami. Razem pokrywają obie sytuacje.

W praktyce oba wyszukiwania idą równolegle na to samo zapytanie. Nie ma przełącznika ani zgadywania, o co użytkownikowi chodziło. Pytanie trafia do obu mechanizmów, a różnice między nimi rozstrzygają się dopiero przy składaniu listy.

Bywa też trzeci mechanizm w tym samym miejscu: reguły ustawione ręcznie. Wpisanie nazwy promocji albo kategorii ma prowadzić w konkretne miejsce niezależnie od tego, co wyliczą oba pozostałe. Takie wyjątki warto trzymać osobno i krótko — lista rosnąca bez końca jest sygnałem, że wyszukiwanie pod spodem nie działa.

Łączenie wyników

Wyniki obu wyszukiwań scalane są w jedną listę według pozycji na obu. Prosty sposób, który działa dobrze bez strojenia.

Zaletą liczenia po pozycjach jest odporność na to, że oba mechanizmy oceniają dopasowanie w zupełnie innych skalach. Fragment wysoko na obu listach wychodzi na czoło, fragment wysoko tylko na jednej trafia dalej, ale nie ginie. To wystarcza do uruchomienia i dopiero potem warto cokolwiek dostrajać.

Wagi

Przy zbiorach pełnych symboli warto dać większą wagę dopasowaniu dosłownemu. Przy tekstach opisowych — odwrotnie.

Wag nie ustala się z góry. Ustawia się je na zestawie zapytań i sprawdza, czy poprawa w jednej grupie pytań nie popsuła drugiej. Bez pomiaru trafności strojenie wag jest zgadywaniem.

Co trzeba przygotować

Dwie rzeczy naraz: indeks pełnotekstowy z obsługą polskiej odmiany oraz osadzenia fragmentów. Do tego wspólny sposób oznaczania fragmentów, żeby wynik z jednego mechanizmu dało się rozpoznać jako ten sam wynik z drugiego. Rozjazd w identyfikatorach jest tu najczęstszym błędem technicznym.

Sprawdzian

Zapytanie o kod produktu i zapytanie opisowe. Dobre wyszukiwanie hybrydowe radzi sobie z obydwoma bez ustawień przełączanych ręcznie.

Do tego trzeci przypadek: zapytanie mieszane, w którym pada i symbol, i opis. Właśnie tak pytają klienci w sklepie internetowym, gdy pamiętają fragment oznaczenia i wiedzą, do czego rzecz służy.

Koszt

Dwa mechanizmy zamiast jednego. Przy typowych zbiorach różnica jest nieistotna w porównaniu z poprawą trafności.

Większy koszt leży w utrzymaniu: dwa indeksy trzeba aktualizować zgodnie, inaczej wyniki zaczynają się rozjeżdżać w czasie.

Drugie zapytanie do indeksu pełnotekstowego jest tanie, bo ten indeks i tak istnieje. Osadzenie krótkiego pytania też nie waży wiele. Rachunek psuje się dopiero wtedy, gdy do każdego zapytania dokłada się dodatkowe porządkowanie wyników modelem — to już inna pozycja w kosztach.

Kolejność wdrożenia

Najpierw wyszukiwanie dosłowne, potem dołożenie semantycznego. Odwrotna kolejność zostawia lukę przy kodach i numerach.

Ta kolejność ma jeszcze jedną zaletę. Po pierwszym etapie widać, ile zapytań została obsłużonych bez warstwy znaczeniowej. Jeśli okaże się, że prawie wszystkie, drugi etap można odłożyć albo darować sobie — samo dopasowanie dosłowne bywa wystarczające przy zbiorach o ustalonym słownictwie.