Co to jest: „semantyczna wyszukiwarka”?

Artur Machlarz ByArtur Machlarz

Co to jest: „semantyczna wyszukiwarka”?

Do wyszukiwarek semantycznych zalicza się przynajmniej dwa rodzaje wyszukiwarek: wyszukiwarki analizujące „znaczenie” indeksowanych dokumentów oraz wyszukiwarki przeszukujące zasoby sieci semantycznej. Te dwa rodzaje wyszukiwarek semantycznych działają inaczej i inną mają też pełnić rolę w poszukiwaniu informacji.

1.

Wyszukiwarką semantyczną w pierwszym sensie jest (a raczej chciałaby być) np. Hakia oraz Powerset. Obie obejmować swoim zakresem mają docelowo całą sieć.

Hakia, w przeciwieństwie do wyszukiwarek typu Google, ma dostarczyć maksymalnie relewantny do zapytania zestaw linków do stron internetowych dzięki zaawansowanym technologicznie procedurom mechanicznego przetwarzania języka naturalnego, a nie „metodom statystycznym”. Hakia przeszukiwać ma nie tyle strony internetowe, co zawartość znaczeniową tych stron. Zawartość znaczeniową dokumentów zaś otrzymuje, stosując odpowiednie metody analizy tekstu dokumentu. Hakia dostarczać ma także bezpośrednich odpowiedzi na postawione zapytanie w oparciu o treść wysoko ocenianych witryn internetowych (tzn. jeśli w oknie zapytania wpiszemy zdanie ze znakiem pytającym, Hakia ma szukać odpowiedzi na pytanie). Wyszukiwanie oparte na analizie znaczeniowej dokumentów miałoby taką zaletę, że:

  1. eliminowałoby dokumenty zawierające terminy wyszukiwane, ale rozpoznane jako posiadające w danym kontekście odmienne znaczenie
  2. wprowadzałoby do zbioru wyszukanych dokumentów strony internetowe zawierające wyrażenia o formie odmiennej od użytych w zapytaniu, ale semantycznie zbieżne.

W związku z tak postawionym zadaniem pojawiają się jednak trudności dwojakiego rodzaju: po pierwsze, wchodzą tu w grę dokładnie wszystkie problemy związane z semantyczną analizą języka naturalnego, po drugie zaś, rodzi się pytanie o algorytm ustalania hierarchii wybranych dokumentów.

Co to znaczy, że „Hakia rozpoznaje znaczenie” użytego w zapytaniu wyrażenia i rozpoznaje to samo znaczenie w indeksowanych dokumentach? Hakia interpretuje wyrażenia języka naturalnego w ustalonych modelach: mapach pojęć odpowiadających poszczególnym terminom. Oczywiście do dyspozycji mamy więcej niż proste pojęcia stanowiące znaczenia prostych terminów: do pojęć dołączone są różnego rodzaju syntaktyczne i semantyczne warunki określające możliwe relacje między pojęciami. Konieczne będzie także ustalenie zasad wyboru jednego z wielu możliwych znaczeń terminów wieloznacznych. Hakia przeprowadza analizę semantyczną wyrażeń w sposób na pierwszy rzut oka całkiem satysfakcjonujący. Ustalamy po prostu statystyczne prawdopodobieństwo współwystępowania znaczeń słów składających się na zdanie. Znaczenia-pojęcia są ustalone w słowniku, z którego Hakia korzysta. Niektóre konstelacje są szybko eliminowane na podstawie oceny możliwych kategorialnych dopełnień określonego pojęcia, niektóre zaś są oceniane jako mniej lub bardziej prawdopodobne statystycznie. Polecam omówienie przykładu analizy na blogu Hakii.

To rozwiązanie, ma jednak wady: na przykład taką, że cała konstrukcja opiera się na jednym centralnym i względnie stałym słowniku podającym zasady interpretacji poszczególnych terminów. Dlaczego jest to wada? Dlatego że słownik będący podstawą interpretacji semantycznej jest modelem, który zawiera pewną wiedzę: np. pozwala wnioskować z informacji o przedmiocie lub zdarzeniu A o innym przedmiocie lub zjawisku. Wydaje się, że przynajmniej w naukach ścisłych, np. w medycynie, nie ma w tym nic złego, o ile model będzie oparty na dobrych źródłach i o ile założymy względną stałość wiedzy medycznej czy nauk ścisłych. Jednak mamy tu do czynienia z językiem technicznym, który jest dużo prostszy niż język naturalny. Ambicją Hakii zaś jest „rozumienie” wyrażeń języka naturalnego – ewentualnie pytań w języku naturalnym zawierającym terminy techniczne. Semantyka języków naturalnych nie jest zaś zestawem względnie stałych pojęć-znaczeń przyporządkowanych elementom leksykonów tych języków.

Zresztą, o ile podanie prostych informacji dotyczących jednego terminu technicznego nie sprawia Hakii problemów, o tyle realizacja drugiego zadania – odpowiedzi na pytanie postawione w języku naturalnym ale dotyczącym medycyny – pozostawia sporo do życzenia. Wyniki zaś nie wydają się jakościowo odbiegać od efektów wyszukiwania w Google, które także radzi sobie już całkiem swobodnie z odmianami gramatycznymi wyszukiwanych słów:

Hakia

Wyszukiwanie pojedynczego terminu – Hakia selekcjonuje rodzaje danych.

Hakia

Wyszukiwanie stron mających zawierać odpowiedź na poprawnie postawione pytanie.

Abstrahując od trudności związanych z analizą semantyczną wyrażeń języka natualnego, można jednak postawić pytanie: czy taka „wyszukiwarka semantyczna” może naprawdę dostarczyć „informacje” zamiast „listy odnośników”? Wstępnie mówimy tylko tyle, że Hakia potrafiłaby skuteczniej wybrać relewantne do zapytania dokumenty. To nie ma jeszcze nic wspólnego z ich uporządkowaniem, tak jak prawidła algebry Boole’a nie mają jeszcze nic wspólnego z ustaleniem hierarchii dokumentów w tradycyjnych wyszukiwarkach. Żeby móc ustalić hierarchię dokumentów związaną z ich znaczeniem, Hakia musiałaby jednak dodatkowo oceniać zawartość pełnych dokumentów i ich związek z zapytaniem – dopiero wtedy mogłaby uznać wyższość jednego dokumentu nad innym. Być może brakuje mi wyobraźni, ale mam poważne wątpliwości, czy jest to możliwe. Algorytm ustalania hierarchii dokumentów mógłby oczywiście polegać na dowolnej metodzie oceny wartości dokumentu, choćby takiej jak w Google. To jednak, przynajmniej na poziomie deklaracji, nie jest celem Hakii. Na stronie Hakii czytamy:

WHAT IS DIFFERENT ABOUT HAKIA?
hakia is focused on bringing quality results via its semantic search technology. Today’s search engines bring popular results via statistical ranking methods. Popular results are not always quality results, and the searchers suffer in many ways ranging from wasted search time to using misleading information.” (źródło)

Mamy tu sugestię, że statystyczne metody ustalania hierarchii dokumentów nie będą satysfakcjonowały Hakii. Na jakiej podstawie będzie ustalana ich hierarchia? Niestety nie wiem – poza tym, jaka zasada nie będzie stosowana, nie dowiemy się raczej niczego. Zgodnie z wpisem na blogu Hakii z 14 marca, metody statystyczne oparte na przykład na ocenie linkowania do strony nie mogą być podstawą oceny relewantności wyniku wyszukiwania, ponieważ „umyka nam w ten sposób 99% zawartości strony”. Tylko że ustalanie, czy odpowiedź jest relewantna do zapytania, to nie problem zero-jedynkowy: to także problem zróżnicowania wagi całkiem sporej ilości dokumentów i jest to najpoważniejsza trudność w działaniu wyszukiwarek. Wierzyć mi się zaś nie chce, że Hakia wpadła na pomysł, w jaki sposób ocenić zawartość znaczeniową całych dokumentów i porównać ją z zapytaniem oraz pozostałymi dokumentami, aby właśnie na tej podstawie ustalić hierarchię dokumentów. To by wymagało analizy semantycznej dużo bardziej skomplikowanej niż tworzenie map pojęć dla leksykonów i związków frazeologicznych.

Wniosek: owszem, wyniki mają się poprawić dzięki uwzględnieniu semantycznej zgodności dokumentu z zapytaniem, ale – wg Hakii – mają się poprawić w tajemniczy sposób także dzięki podniesieniu jakości wartościowania dokumentów. Czy tak faktycznie jest? Niestety rzeczywistość wersji beta (działającej już blisko dwa lata) nadal skrzeczy: użyteczność tej wyszukiwarki jest bardzo niska. Żeby się o tym przekonać, wystarczy wpisać kilka próbnych pytań, nie tylko z zakresu medycyny, ale np. bardzo żywej dziedziny, jaką jest życie polityczne:

Hakia

Jakość dostarczonych wyników w odpowiedzi na tak proste pytanie nie skłania do optymizmu. Co mają „semantycznie” wspólnego z zapytaniem zaznaczone żółtym kolorem fragmenty?! Wybrane ilustracje także mają niewiele wspólnego z postawionym pytaniem, poza „ogólną problematyką”… Hierarchia dokumentów także nie wskazuje, że dokonano właściwego wyboru…

Powerset działa na zbliżonych do Hakii zasadach. Opierając się na opisanej w schemacie RDF „wiedzy” pochodzącej z Wikipedii, Powerset będzie mógł dokonywać wyboru słów kluczowych z dokumentów internetowych i interpretować je zgodnie z wiedzą tam zawartą. Aktualnie Powerset jest ograniczony do przeszukiwania Wikipedii, której przekład na formuły w schemacie RDF nie jest tak skomplikowany, jak próba stworzenia narzędzi do przekształcenia dowolnej strony w html na zapis o strukturze RDF. Zawartość Wikipedii stanowi dla Powerset bazę wiedzy, na podstawie której będzie tworzony model interpretacji semantycznej – daje to nadzieję na nieco lepsze rezultaty niż w przypadku Hakii. Jednak zasadnicze zadanie wydaje się nadal bardzo karkołomne: trzeba ustalić zasadę przekładu otwartego tekstu dowolnego, strukturalnie bardzo swobodnie uporządkowanego, dokumentu na ustaloną reprezentację. Drugim zadaniem jest znowu ustalenie hierarchii dokumentów.

Powerset aktualnie wydaje się lepiej radzić sobie z drugim zadaniem, przynajmniej w przypadku pytań zadanych jako słowa kluczowe, ponieważ użytkownik widzi możliwe kategorie z różnych rodzajów powiązane z określonym słowem kluczowym i może dokonać samodzielnego wyboru interesującej go dziedziny. Powerset także dużo lepiej radzi sobie z wyborem listy wyników:

Powerset

Niezależnie od aktualnego stanu rozwoju wyszukiwarek opartych na analizie semantycznej języków naturalnych, przyjmijmy, że istnieje taki rodzaj wyszukiwarek (a przynajmniej, że istnieje taki pomysł…), że wyszukiwarka listę wyników buduje na podstawie porównania znaczenia pytania i treści dokumentu (niezależnie od tego, jaka jest struktura tego dokumentu). Celem budowy takich wyszukiwarek ma być poprawienie jakości przeszukiwania sieci. Dostarczane mają być bardziej relewantne do zapytania wyniki i przedstawione w bardziej odpowiadającej zapytaniu hierarchii.

2.

Drugi typ wyszukiwania semantycznego jest związany z rozwojem sieci semantycznej, zwanej też Web 3.0 i jest, moim zdaniem, dużo bardziej obiecujący. Do wyszukiwarek w tym trendzie zaliczylibyśmy wyszukiwarki przeszukujące zawartość sieci semantycznej, tzn. zawartość różnego typu plików RDF oraz modeli interpretacji danych, czyli ontologii zapisanej w OWL (np. Swoogle, Sindice, Falcons, Watson).

Co konkretnie przeszukują tego rodzaju wyszukiwarki semantyczne? Przeszukują „sieć semantyczną” – w gruncie rzeczy, przeszukują zawartość indeksowanych plików RDF. Pliki RDF stanowią zaś metaopis zawartości dokumentów internetowych. Każdy wiersz pliku RDF (poza deklaracją modeli interpretacji) ma strukturę trójczłonową: podmiot-predykat-wartość. Podmiotem jest URI (czyli adres jednoznacznie wskazujący opisywany przedmiot – może to być np. adres www); podmiot ten ma określoną cechę (jedna z kategorii pochodzących ze wskazanych w nagłówku pliku RDF ontologii) o pewnej wartości. Np. wiersz

http://www.infopoint.pl/wordpress/foaf.rdf#me http://xmlns.com/foaf/0.1/name "Artur Machlarz"

mówi nam, że obiekt identyfikowany przez http://www.infopoint.pl/wordpress/foaf.rdf#me, nazywa się (ma wskazaną w ontologii FOAF własność) „Artur Machlarz” (ta własność ma taką wartość).

Wyszukiwarki semantyczne mogą np. poszukiwać terminów lub fraz z dowolnej wskazanej części wierszy plików rdf:

Watson

Watson – w opcjach wyszukiwania zaznaczone są wszystkie rodzaje danych: klasy, właściwości oraz wartości

 

Watson

Watson – rekonstrukcja zapisu trójkowego odszukanego pliku rdf

Falcons

Falcons – w wynikach wyszukiwania dodatkowe informacje o własnościach terminu lub pliku

Falcons

Falcons – wyniki wyszukiwania

Wyjątkiem z wymienionych wyżej wyszukiwarek jest Swoogle, która przeszukuje wyłącznie opublikowane w sieci ontologie.

Wymienione wyżej wyszukiwarki pozwalają nie tylko odszukać terminy w plikach RDF, ale umożliwiają także przefiltrowanie danych np. względem ich typu (typu, czyli kategorii, której wartością w różnych plikach rdf jest wyszukany termin lub fraza).

Wyszukiwarki semantyczne tego rodzaju nie dokonują interpretacji semantycznej zawartości dowolnych stron internetowych w oparciu o semantyczną analizę języka dokumentu, lecz bazują na opisie dokonanym przez twórców/właścicieli dokumentu i odwołaniach do wybranych ontologii wskazanych w nagłówkach plików rdf. W przeciwieństwie do Hakii i Powerset, wyszukiwarki tego typu przeszukują samą reprezentację semantyczną dokumentu, nie dokonują zaś przekładu treści dokumentu na tą reprezentację. Tą drugą część zadania zrealizować ma administrator strony.

Jaką rolę mają odgrywać wyszukiwarki semantyczne omawianego typu? Z pewnością pomogą nam odszukać ontologię do opisu zawartości naszej witryny. Jeśli zaś chodzi o poszukiwanie informacji, pozwolą nam łatwiej wyselekcjonować dokumenty zawierające interesujący nas termin w określonej kategorii. Dzięki temu nie dostaniemy w liście wyników linków do dokumentów, które z naszego punktu widzenia będą zupełnie bezwartościowe.

Popularyzacja wprowadzania metaopisów do portali internetowych wydaje się odległą przyszłością – jak sądzę – z dwóch powodów: po pierwsze, ze względu na niechęć webmasterów do takich „nowinek”, a przede wszystkim z powodu braku widocznych korzyści płynących z dodawania takiego metaopisu. Brak korzyści z pewnością zniknąłby z pola widzenia użytkowników sieci, gdyby Google – podobnie jak Yahoo – zaczął indeksować zawartość stron, indeksując także zawartość plików rdf.

Na co możemy w tej chwili liczyć, korzystając z wyszukiwarek tego rodzaju? No właśnie, niestety na niezbyt wiele… Powodem jest przede wszystkim ubóstwo zawartości sieci semantycznej – mała popularność stosowania „semantycznych” metaopisów stron internetowych. Sieć semantyczna to nadal pieśń przyszłości, ale… Wyobraźmy sobie korzyści wynikające z ułatwionego przetwarzania informacji, gdy mamy do odszukany zbiór metadanych, opisujących odpowiednio dokumenty internetowe – próbkę tego, jak miałoby to wygladać możemy sobie zorganizować korzystając np. z Simile Piggy Bank lub – online – z Openlink Data Explorer. Funkcjonalność wyszukiwarek semantycznych tego rodzaju będzie jednak postępowała wraz z rozwojem sieci semantycznej. Ich problemem nie będą żadne ograniczenia związane z analizą semantyczną języków naturalnych, ponieważ do ich zadań nie należy interpretacja wyrażeń językowych – to zaś stanowić może jedno z poważniejszych ograniczeń Hakii i Powerset.

AM.

Reblog this post [with Zemanta]

O autorze

Artur Machlarz

Artur Machlarz administrator

Od 2005 pracuje jako infobroker, zajmuje się wyszukiwaniem i opracowywaniem informacji. Specjalizuje się w tworzeniu unikalnych baz danych. Jako pracownik naukowy zajmuje się modelami przetwarzania informacji w systemach rozproszonych. Lubi się wspinać i grać na kontrabasie.

4 komentarze

skrukData wysania4:40 pm - Wrz 11, 2009

Ciekawy opis, chociaz jako ktos kto od 7 lat pracuje nad technologiami semantycznymi – odwrocilbym kolejnosc tej klasyfikacji. Bo wazniejsze sa opublikowane dane semantyczne i narzedzia je indeksujace, na bazie ktorych mozna budowac kolejne warstwy az do UI.

skrukData wysania4:40 pm - Wrz 11, 2009

Ciekawy opis, chociaz jako ktos kto od 7 lat pracuje nad technologiami semantycznymi – odwrocilbym kolejnosc tej klasyfikacji. Bo wazniejsze sa opublikowane dane semantyczne i narzedzia je indeksujace, na bazie ktorych mozna budowac kolejne warstwy az do UI.

james_26Data wysania11:46 pm - Wrz 1, 2010

Coz, wydaje mi się, że najistotniejsze zdanie pojawia się na koncu: „Popularyzacja wprowadzania metaopisów do portali internetowych wydaje się odległą przyszłością…” I tu jest pies pogrzebany. Tylko i az tyle!

james_26Data wysania11:46 pm - Wrz 1, 2010

Coz, wydaje mi się, że najistotniejsze zdanie pojawia się na koncu: „Popularyzacja wprowadzania metaopisów do portali internetowych wydaje się odległą przyszłością…” I tu jest pies pogrzebany. Tylko i az tyle!

Odpowiedz na „james_26Anuluj pisanie odpowiedzi

Time limit is exhausted. Please reload the CAPTCHA.