« Previous | Next »
Inteligentne wyszukiwanie czyli trochę o clusteringu, który wchodzi w mainstream
Published on 06/01/07
by Kuba Filipowski
Z bloga Filipa Teppera dowiedziałem się, że Google w swojej intranetowej wyszukiwarce wprowadziło ficzer klastrujący wyniki wyszukiwania.
O co chodzi? Clustering czy raczej Data Clustering to zagadnienie związane z dziedziną wiedzy nazwaną Data Mining czyli z polska “Eksploracją danych”. Wg Wikipedii to: metoda tzw. klasyfikacji bez nadzoru (ang. unsupervised learning). Jest to metoda dokonująca grupowania elementów we względnie jednorodne klasy. Podstawą grupowania w większości algorytmów jest podobieństwo pomiędzy elementami – wyrażone przy pomocy funkcji (metryki) podobieństwa.
Clustering stosuje się między innymi przy kompresji. Ja jednak chce się skupić na wykorzystaniu Analizy skupień do grupowania wyników wyszukiwania zależności od znaczeń i kontekstów ich występowania.
Uprośćmy. Wpisując jakąś frazę do Google otrzymujemy wyniki, które są jakimś przeglądem tego co w Internecie miało jakiś związek z wpisaną przez nas frazą. Im fraza bardziej ogólna tym wyniki mniej odpowiadające naszym oczekiwaniom. Na przykład wpisując do Google słowo “mouse” otrzymujemy wyniki dot. myszy jako gryzonia, myszy komputerej i zespołu rockowego Modest Mouse. Wyniki są tak rozbieżne bo Google nie rozumie ani nie pyta o kontekst naszej frazy i podrzuca nam wszystko “jak leci” co zawiera żądaną frazę a kolejność wyników ustala na zasadzie page ranku, link popularity czy korzystając z jeszcze innego algorytmu.
Google nie bierze pod uwagę tego, że nam może chodzić o Mickey Mouse tylko zapomnieliśmy jej imienia ;). Chodzi więc o to, że Google nie powie nam nic o Mickey Mouse ponieważ nie sprecyzowaliśmy zapytania, zamiast podpowiedzieć nam zapytania które doprecyzują wyniki.
Skąd Google miałoby wiedzieć, że chodzi nam o Mickey Mouse albo, że w ogóle słowo “mouse” może występować w kontekście disneyowskiej postaci? Odpowiedź jest prosta: z samych wyników wyszukiwania dla frazy mouse.
Pierwszy raz o takim sposobie grupowania wyników dowiedziałem się z wpisu na blogu TheTarPit. MiMaS w komentarzach linkuje do ciekawej wyszukiwarki Clusty, a jednak to nie jedyna wyszukiwarka tego typu.
Przyjrzyjmy się jej i kilku innym
Clusty

Clusty to produkt firmy Vivisimo. Clusty to meta-wyszukiwarka – korzysta więc z wyników kilku najlepszych wyszukiwarek. Twórcy zostawili tworzenie rankingów wyszukiwarkom, których wyniki wykorzystują i skupili się na jakości prezentacji tych wyników. Po prawej mamy panel z kontekstami dot. danej frazy oraz liczbą wyników w danym kontekście. Co ciekawe Clusty pozwala na przeszukiwanie kilku źródeł informacji – mamy możliwość przeszukiwania blogów, wikipedii, newsów i ofert pracy.
Mooter

Mooter to powstała dwa lata temu wyszukiwarka Mootermedia, która łączy zalety tzw. Visual search engines – czyli wyszukiwarek, które prezentują w wyniki w formie graficznej z wyszukiwarkami grupującymi. Coś podobnego do Amaznode o której kiedyś pisałem. Po wpisaniu zapytania otrzymujemy diargam kontekstów i znaczeń. Niestety nie udało mi się znaleść informacji na temat tego skąd Mooter czerpie wyniki – najprawdopodobniej to wyniki Google.
Ask.com

Ask.com (wcześniej Ask Jeeves) to piąta pod względem popularności wyszukiwarka w USA (wg Nielsen//NetRating). To chyba najbardziej mainstreamowy przykład użycia technologii clustering’u. Ask używa algorytmów grupujących, kupionej jakiś czas temu przez InterActiveCorp, wyszukiwarki Teoma.
Carrot 2

Na koniec polski akcent – Carrot 2 to wyszukiwarka klastrująca stworzona na Politechnice Poznańskiej przez Stanisława Osińskiego, Dawida Weissa. Wyszukiwarka naprawdę dobra. Carrot 2 grupuje wyniki wyszukiwarek Yahoo, Google i MSN, poza tym daje możliwość przeszukania Wikipedii, Dmoz, serwisu z ofertami pracy Indeed oraz… zasobów Politechniki Poznańskiej. Poza tym Carrot 2 ma fajny AJAX’owy interface i w dodatku jest to projekt Open Source’owy. Świetna sprawa.
Ok ale zacząłem od Google i ich intranetowej wyszukiwarki – jakie znaczenie ma intranet Google? Tak, że w intranecie Google testowało wiele rozwiązań, które potem wprowadzało do wyszukiwarki internetowej. Możemy się więc spodziewać, że clustering będzie wkrótce ogólnodostępną funkcjonalnością najpopularniejszej wyszukiwarki i tym samym wejdzie do ścisłego mainstreemu co wg mnie jest bardzo pozytywną informacją. Krok w stronę semantycznej sieci?
Co dalej?
Proszę skometuj ten tekst - jestem ciekawy co o nim myślisz. Możesz też podlinkować swój wpis używając trackbacku: Inteligentne wyszukiwanie czyli trochę o clusteringu, który wchodzi w mainstream.

Komentarze dotyczące wpisu "Inteligentne wyszukiwanie czyli trochę o clusteringu, który wchodzi w mainstream"
komentarze (9)
a.dan.ti
06/01/07
najbardziej dziwi mnie, że Google jeszcze nie wprowadził tego mechanizmu…
a marchewka rewelacyjna!
pawlik
06/01/07
http://www.google.pl/search?hl=pl&q=tango
hm?
losamorales
06/01/07
chyba nie bardzo, znaczy jakis kontekst niby jest ale hmm.. czy to klastrowanie?
ekhil
06/01/07
Pozwolę sobie jeszcze polecić artykuł na Read/Write Web dotyczący Clusty i clusteringu.
http://www.readwriteweb.com/archives/overview_of_clu.php
a.dan.ti
06/01/07
niby jest jakieś światełko ale np. dla sun, czy walc ;-) już nie działa… widocznie tylko dla kilku haseł? nie wiem jeszcze jak z tym ficzerem…
Dawid Weiss
07/01/07
Uprzejmie dziękuję za wspomnienie Marchewy i przychylną opinię. Faktycznie to, co robi Google może nadać rozpędu dla nowych (niekoniecznie grupowanych) interfejsów użytkownika do wyszukiwarek. Pożyjemy, zobaczymy.
Do: “a.dan.ti” — proszę spróbować zwiększyć liczbę pobieranych wyników. Grupowanie opiera się na snippetach, jeśli w nich nie ma nic ciekawego, to zwykle trudno będzie o sensowne nagłówki grup. Same źródło danych też ma znaczenie, bo zmieniają się snippety w wynikach (proszę porównać wyniki z Google/ Yahoo i MSNa — dla każdego są inne). No i ostatnie — nasze demo on-line ma wszystkie wejścia podpięte pod analizatory dla języka angielskiego, tak więc dla zapytań w języku polskim wyniki nie powinny być oceniane (wersja z polskimi analizatorami jest dostępna w kodzie źródłowym).
php
07/01/07
Dzięki, za opis pozostałych wyszukiwarek, które korzystają z tej technologii.
a.dan.ti
08/01/07
ależ ja miałam na myśli google, carrot sprawuje się całkiem nieźle ;-) nawet dla walc – grupuje na polskie i angielskie grupy.
: Archiwum : Google z analizą skupień itd Wyszukiwarki i wszystko o Google
15/01/07
[...] Komnetuje to link yashke.com przedstawiając już istniejące – od dosyć dawna rozwiązania dotyczące clusteringu jak np polską Carrot 2. [...]
Zostaw komentarz