Szukanie igły w Internecie

Z Tomaszem Skalczyńskim, wiceprezesem firmy XOR Internet, rozmawia Przemysław Gamdzyk.

Z Tomaszem Skalczyńskim, wiceprezesem firmy XOR Internet, rozmawia Przemysław Gamdzyk.

Użytkownicy mają do dyspozycji wiele wyszukiwarek internetowych - mogą korzystać z AltaVisty, Infoseeka, Google czy licznych innych rozwiązań. Wprowadzając to samo zapytanie, nierzadko otrzymają w tych wyszukiwarkach zupełnie różne odpowiedzi. Skąd się biorą różnice, co decyduje o jakości wyszukiwarki?

Dobra wyszukiwarka musi być przede wszystkim wydajna, precyzyjna i funkcjonalna. Obecnie w Internecie mamy ponad 2 mld stron. Każdego dnia przybywa ich ok. 7 mln. Rozwiązania, które przetwarzają tak ogromną ilość informacji, muszą reprezentować najwyższy poziom.

Tempo wzrostu jest tak duże, że być może przerasta możliwości rozwoju serwerów, na których wyszukiwarki działają. Czy w ten sposób Internet nam nie "ucieknie"?

Już ucieka. Najnowsze badania pokazują, że Internet rośnie szybciej niż wyszukiwarki mogą go indeksować. W tej sytuacji kluczową rolę odgrywa architektura wyszukiwarek. Perspektywy rozwoju mają jedynie te rozwiązania, które nie będą działać na komputerze centralnym, ale mogą być rozproszone między dowolną liczbę mniejszych komputerów. W ten sposób działa nie tylko nasza wyszukiwarka NetSprint, ale też np. Google, który pracuje na 3,5 tys. komputerów PC.

Swego czasu na rynku wyszukiwarek wiele zmieniło pojawienie się Google. Potrafi ona dawać zdumiewająco trafne wskazania na najwyższych pozycjach odpowiedzi, czasem można odnieść wrażenie, że niektóre strony wskazuje nie bezmyślna maszyna, lecz człowiek, który zrozumiał nasze intencje, tj. odgadł, czego rzeczywiście szukamy.

W przypadku Google zastosowano prostą koncepcyjnie metodę wartościowania stron zależnie od liczby prowadzących do niej dowiązań, tj. do wartej odwiedzenia strony musi prowadzić wiele dowiązań. Oprócz ich liczby analizowana jest także ich ważność w zależności od tego, z jakiej strony prowadzą. Przy budowie Net.Sprint postąpiliśmy podobnie, wzbogacając jednak funkcję wartościującą o dodatkowe elementy. Przykładowo, wiadomo że dowiązanie prowadzące z katalogu w największym portalu nie powinno prowadzić do niezbyt wartościowej strony. Waga tak naprawdę powinna być przypisywana poszczególnym dowiązaniom.

Liczenie dowiązań przypomina jedno z podstawowych narzędzi klasyfikacji w świecie naukowym. Tam ogromne znaczenie ma tzw. ranking cytowań w przypadku publikacji naukowych, to znaczy dany naukowiec czy jego konkretna praca znaczy tym więcej, im większa liczba innych prac odwołuje się do prac czy pracy tego naukowca.

Liczba dowiązań między stronami jest bardziej imponująca niż liczba stron. Jak liczyć wagę tych dowiązań? Pajęczyna WWW to przecież graf skierowany, w którym nie ma żadnych ograniczeń tworzenia przejść między węzłami...

Nie jest to aż tak trudne. Trzeba jedynie rozwiązać bardzo duże układy równań liniowych.

Jak dużych?

W przypadku polskiego Internetu ten graf ma obecnie jedynie ok. 10-12 mln węzłów - tyle, ile unikalnych dokumentów. Jest więc to liczenie układu równań liniowych z taką właśnie liczbą zmiennych. Kłopot w tym, że trzeba go rozwiązać od razu, w pewnym sensie zamrażając w pamięci obraz całego polskiego Internetu. Dlatego indeksując wszystkie strony, tworzymy jednocześnie ich lokalne archiwum. To naprawdę duże zbiory dyskowe. Z tego archiwum można korzystać podczas pobierania szukanych stron.

Indeksowanie zbiorów trwa ponad 20 godz. Każdego dnia aktualizujemy ok. pół miliona stron.

Uwzględnianie pól opisowych zawartych w pliku HTML, eliminowanie stron "spamowanych", czyli tak opisanych, żeby znalazły się możliwie wysoko w oknie wyszukiwarki, niezależnie od zadanego zapytania, to już dzisiaj standard. Jakie wyzwania dla twórców przeglądarek stawia język polski?

Na pewno trudne jest wyszukiwanie słów w formie odmienionej po podaniu zapytania o formę podstawową. Stosuje się tutaj słowniki, dostępne na rynku w postaci elektronicznej, które są zbiorami definicji słów. Wtedy dla pewnego zbioru słów wyszukiwarka może dysponować informacją o ich odmianie i znajdować strony zawierające wszystkie formy danego wyrazu.

A co z polskimi znakami diakrytycznymi?

Szukamy zawsze elementów w wersji "polskawej", czyli bez polskich "ogonków". Wszystkie indeksowane strony przechodzą przez filtr, pozbawiający teksty znaków diakrytycznych. Takie rozwiązanie gwarantuje bardzo dobre wyniki niezależnie od stosowanego przez użytkownika kodowania znaków.

Metodą na dotarcie do szukanej informacji jest zadawanie zapytań, które zawężają obszar prezentowanych odpowiedzi. Nie jest to łatwe, bo trzeba pytać, dostosowując się do języka zrozumiałego przez bazę danych...

Z naszych obserwacji wynika, że większość użytkowników wprowadza 1, 2, maksimum 3 słowa kluczowe i na tym się kończy. Jedynie niewielki odsetek potrafi posługiwać się składnią do zadawania zapytań zaawansowanych. W tej sytuacji kluczowe staje się określenie jak najprostszej składni zapytania.

Ale trudno się tego uczyć, tym bardziej że składnie poszczególnych przeglądarek bardzo się różnią. Dlaczego nie stosuje się innych rozwiązań, np. interaktywnego tworzenia zapytań za pomocą interfejsu graficznego?

Stosujemy formularz zaawansowanego wyszukiwania. Użytkownik ma na nim możliwość wizualnego formułowania zapytania. Jednak niewielu internautów korzysta z tej opcji.

World Wide Web rozwinął się obok klasycznych, wypracowanych przez lata metod klasyfikacji i podziału informacji. W budowie internetowych zasobów w ogóle nie uczestniczyło środowisko specjalistów od informacji, tradycyjnie związane z bibliotekarstwem. Widać to chociażby na przykładzie plików HTML stron WWW, które zawierają jedynie proste znaczniki - metatagi, w prymitywny sposób obrazujące ich zawartość. Czy są szanse na to, by do świata Internetu dotarły profesjonalne zasady organizacji informacji?

Systemów katalogowania jest wiele i są na ogół skomplikowane. Ze względu na to, że nie są otwarte, niezbyt przystają do rozproszonej, anarchistycznej natury Internetu. Jeśli technologia nie wymaga czegoś bezpośrednio, to trudno wymagać, żeby zostało to zaadaptowane w Internecie.

Dlaczego zatem nie szereguje się stron pod względem ich "jakości", np. poprzez prostą ocenę liczby błędów w kodzie HTML na stronie? Kiedy przyjdzie czas na stosowanie narzędzi sztucznej inteligencji, wykorzystanie heurystyki do szukania informacji? Dzisiaj poszukiwanie czegokolwiek w Internecie prawie zawsze kończy się frustracją, użytkownik musi przedzierać się przez bezsensowne odpowiedzi wyszukiwarki...

Pojawia się wiele obietnic, że będą działać wyspecjalizowane agenty, które za nas znajdą informacje i je uporządkują. W przyszłości może tak się stanie, dzisiaj jednak rozwiązania takie działają na tyle słabo, że użytkownicy ich nie akceptują. System "inteligentny" daje odpowiedzi, które zakwalifikuje jako te, których oczekuje użytkownik. Jego zaś to denerwuje, gdyż nie są to odpowiedzi, których szuka. Użytkownik nie będzie chciał, żeby system myślał za niego, dopóki system wciąż będzie "głupszy" od użytkownika. Wyszukiwarka nie myśli, ale bez niej bylibyśmy zagubieni w Internecie.

--------------------------------------------------------------------------------

Wyszukiwarka NetSprint działa obecnie w portaluhttp://Hoga.pl/ oraz w Interdyscyplinarnym Centrum Modelowania przy Uniwersytecie Warszawskim (http://netsprint.icm.edu.pl). Powstała w ciągu roku, zrealizowana przez 8-osobowy zespół z firmy XOR Internet.