By komputer wiedział, o co nam chodzi
- Utworzono: piątek, 28, czerwiec 2013 17:00
Sieć semantyczna to pojęcie, które w ostatnich czasach robi dużą karierę w światku informatycznym, choć wiąże się też z psychologią, a poniekąd nawet z filozofią. Ujmując rzecz najprościej, aczkolwiek bardzo pobieżnie, można powiedzieć, iż sieć semantyczna ma brać pod uwagę to, czego internauta "naprawdę" szuka. Innymi słowy, nie chodzi tylko o to, czy słowa, jakie wpisuje się w wyszukiwarkę, istnieją w słownikach, ani o to, czy można na nie natrafić w internecie, ale również o to, co oznaczają i jakie są pomiędzy nimi związki.
Dziś często możemy zauważyć, że wyszukiwarki (np. Google czy DuckDuckGo) co prawda całkiem sprawnie wyszukują strony, na których pojawia się dane nazwisko czy nazwa - ale słabo radzą sobie ze znajdowaniem odpowiedzi na pytania lub zdobywaniem bardziej złożonych informacji. Mamy tu na myśli sytuacje takie jak np. próba szybkiego zaplanowania podróży do danej miejscowości w taki sposób, by uwzględnić szereg warunków (np. najniższy koszt, postoje w określonych miejscach etc.). Może też się zdarzyć, że szukamy sklepu internetowego, ale takiego, który umożliwia korzystanie z kilku określonych form płatności, a zarazem nie stawia pewnych wymagań, które nam nie odpowiadają. Obecnie często wygląda to tak, że wpisujemy w Google ciąg wyrazów typu "sklep płyty za pobraniem płatność karta bez rejestracji" - i czasem uda się otrzymać coś w miarę przydatnego, ale częściej wyniki będą dość chaotyczne. Druga opcja to żmudne przeszukiwanie wszystkich sklepów po kolei, trzecia zaś to po prostu nadzieja, że pytanie podobne do naszego ktoś już zadał na jakimś forum - i otrzymał odpowiedź.
Sieci semantyczne mają przezwyciężyć te niedomagania w taki sposób, byśmy mogli komunikować się z komputerami znacznie płynniej. O to, by komputer możliwie poprawnie potrafił zauważyć kontekst naszego pytania czy sformułowania - i zrozumieć, że chodziło nam np. o "letter" jako literę, a nie list, o zamek w drzwiach, a nie Zamek Czocha, o zespół muzyczny "Apteka", a nie o sklep z farmaceutykami itd.
Koncepcję semantycznego modelu sieci zbudowali tacy uczeni jak Richard H. Richens, Allan M. Collins (kognitywista), M. Ross Quillian (lingwista) czy Elizabeth F. Loftus (psycholog). Nad zagadnieniem pracowali także Tim Berners-Lee, James Hendler i Ora Lasille, którzy zresztą wprowadzili pojęcie "semantic web".
Podstawowym narzędziem czy też pojęciem używanym w teorii sieci semantycznych jest graf. Graf w matematyce definiuje się najczęściej jako parę uporządkowaną (V, E), gdzie V to dowolny niepusty zbiór wierzchołków, E natomiast jest rodziną dwuelementowych podzbiorów V, tj. rodziną krawędzi. Innymi słowy E zawiera się w następującym zbiorze:
Graf może być także skierowany, wówczas jego krawędzie nazywamy łukami – i zakłada się, że jeden wierzchołek jest ich początkiem, drugi natomiast końcem. Określają one więc relację zachodzącą w jedną stronę (np. „Jan jest mężczyzną” – oczywiście nie można tego utożsamiać z „mężczyzna jest Janem”).
Graf może mieć także charakter mieszany, rozważa się również pętle, tj. krawędzie, których oba końce to ten sam wierzchołek. W przypadku grafów semantycznych przyjmuje się, że wierzchołki mogą przynależeć do pewnych typów, takich jak np. zdarzenie, osoba, przedmiot określonego rodzaju etc. Mało tego, również łuki mogą mieć różne znaczenie, tj. reprezentować różnego rodzaju relacje. Chodzi o zależności takie jak np. bycie częścią czegoś, wykluczanie się z czymś itd.
Przy pracy nad sieciami semantycznymi konstruuje się tzw. ontologie, czyli swego rodzaju słowniki pojęć, które obowiązują np. w danej dziedzinie nauki czy biznesu. Ontologia zawiera nie tylko same pojęcia, ale też opisy relacji pomiędzy nimi oraz reguły wnioskowania i warunki, jakie muszą zostać spełnione, by np. dana relacja stała się możliwa. Zbliża się to np. do koncepcji języka programowania o nazwie Prolog, gdzie również pisanie programu rozpoczyna się od zbudowania bazy faktów i reguł, które opisują zależności między tymi faktami.
Ontologia też jest więc siecią, a w ściślejszym ujęciu – grafem. Jej definicja musi jednak uwzględniać typy wierzchołków i typy krawędzi:
TV to zbiór n typów wierzchołków (od t1do tn), TE to zbiór typów krawędzi. Innymi słowy, drugi zbiór zawiera informacje na temat tego, jakiego rodzaju zależności mogą występować pomiędzy wierzchołkami. Ściślej:
Pamiętajmy, że krawędzie, choć wyobrażamy je sobie jako odcinki łączące punkty, de facto określane są po prostu przez same punkty końcowe. Samą sieć można z kolei zdefiniować jako czwórkę uporządkowaną:
V to zbiór wierzchołków od v1do vk, E to zbiór krawędzi (od e1 do el). Dwa pozostałe elementy czwórki to funkcje. Mianowicie vt przypisuje j-temu wierzchołkowi i-ty typ, zaś et przyporządkowuje odpowiedni typ j-tej krawędzi - czyli przyporządkowuje jej dwuelementowy zbiór postaci (ti, tj).
Doprecyzujmy, o jakiego rodzaju krawędziach możemy mówić (czy też - o czym one mogą mówić nam). Otóż sieć może być skonstruowana w taki sposób, że będzie jedynie definiować dane obiekty (x jest y). Może też określać pewne twierdzenia na temat elementów – prawdziwe lub nie, zależnie od spełnienia określonych warunków. Zaimplementować da się również implikacje ("jeśli zachodzi x, to zachodzi y"), a także działania (procedury), umożliwiające np. przekazywanie informacji, wnioskowanie na pewnych zasadach etc. Można wreszcie łączyć te wszystkie podejścia w obrębie jednej sieci.
W świecie sieci semantycznych użytkownik korzysta z tzw. agenta, czyli programu, który ma za zadanie poprowadzić nas przez cały proces poszukiwania informacji. Taki agent może np. znaleźć właściwy dla naszych potrzeb hotel, a potem porozumieć się z agentem po drugiej stronie (tj. agentem hotelowym) i wyszukać szczegółowe informacje, a nawet wynegocjować i zatwierdzić warunki.
Skala zastosowań sieci semantycznych może być niezwykle szeroka. W przyszłości, o ile projekty związane z tym tematem będą rozwijane, podejście semantyczne umożliwi rozwiązanie nie tylko tak "codziennych" i "przyziemnych" kwestii jak znalezienie taniej kawiarni na Mokotowie czy zaplanowanie podróży na Bornholm. Przeciwnie - przyda się także w organizacji rozmaitych procesów biznesowych czy w badaniach naukowych. Na razie tematyka sieci semantycznych wciąż jest na stosunkowo wczesnym etapie rozwoju, nie ma jeszcze też w pełni sprecyzowanych, sformalizowanych zasad i definicji, aczkolwiek pewne pojęcia i założenia zdają się być powszechnie przyjęte. Prowadzi się już zajęcia z tej dziedziny na uczelniach, tematykę badają także firmy informatyczne, w tym również polskie.
J. Sobal
-
Popularne
-
Ostatnio dodane
Menu
O Finweb
ANALIZY TECHNICZNE
Odwiedza nas
Odwiedza nas 2588 gości