Wprowadzenie do "Wiki o Sztucznej Inteligencji"
Nasz projekt „Wiki o Sztucznej Inteligencji” będzie rozwijany w semantycznej wiki. Semantyczna Wiki to wiki z możliwością modelowania wiedzy w postaci grafów trójkowych. W ramach wprowadzenia dowiemy się jak korzystać z semantycznej wiki Semantic MediaWiki, którą będziemy wykorzystywać w czasie semestru.
(Uwaga – punkty, które są konkretnymi zadaniami są oznaczone wykrzyknikiem
)
-
Wiki o Sztucznej Inteligencji (w skrócie WSI) to przede wszystkim wiki, więc pozwala na tworzenie stron przy użyciu prostego markupu:
-
![:!:](/lib/images/smileys/icon_exclaim.gif)
Na początek napisz o sobie: opisz obok kogo aktualnie siedzisz (podlinkuj jej/jego stronę wiki), jaki przedmiot Ci się najbardziej podobał na studiach, co lubisz jeść, czy spodziewasz się hiszpańskiej inkwizycji itd.
Przydatny fragment dokumentacji MediaWiki opisujący markup wiki:
Formatting (zobacz również sekcję „Other formatting” po więcej szczegółów odnośnie linków, obrazów, itd
Wiki jest semantyczna, co oznacza, że wykorzystując specjalny markup można do niej dodawać wiedzę w postaci trójek podmiot-orzeczenie-dopełnienie:
W przypadku wiki: podmiot to zawsze strona, na której się znajdujemy.
Możemy tworzyć adnotacje trzech typów:
Kategorie – do tworzenia hierarchii, grupowania stron wiki, np. wpisując na swojej stronie [[Category:Osoba]]
, tworzymy trójkę [user] → Category → Osoba.
Object properties – relacje do innych stron wiki: dla użytkownika oglądającego stronę wyglądają jak zwykłe linki, ale niosą dodatkową informację o znaczeniu tego linku, porównaj: [[Użytkownik:kkutt]]
i [[Siedzi obok::Użytkownik:kkutt]]
– obydwa wyglądają tak samo (są linkami do strony Użytkownik:kkutt
), ale to drugie dodatkowo jeszcze przechowuje informację o nazwie tego powiązania tworząc trójkę: [user] → Siedzi obok
→ Użytkownik:kkutt
Data properties – relacje do stałych (stringów, liczb itd.), porównaj:
Jestem Wojtek i mam 12 lat
i
Jestem [[Imię::Wojtek]] i mam [[Wiek::12]] lat
. Powinnaś/Powinieneś rozumieć już różnicę
![:-)](/lib/images/smileys/icon_smile.gif)
Uwaga: tak, słuszne jest Twoje skonfudowanie – tworzenie Object properties i Data properties wygląda dokładnie tak samo. Jak system ma rozróżniać, że jedno jest stroną, a drugie jest stałą? W wiki mamy możliwość definiowania typów – możemy zdefiniować np. fakt, że Wiek jest liczbą, co później jest wykorzystywane przy przetwarzaniu adnotacji (wyświetlanie, sortowanie wyników itd.):
-
![:!:](/lib/images/smileys/icon_exclaim.gif)
Teraz dodaj adnotacje każdego z trzech rodzajów do swojej strony!
![:-)](/lib/images/smileys/icon_smile.gif)
Istniejącą bazę wiedzy możemy przetwarzać:
Na początek: możemy tworzyć zestawienia, które są zawsze aktualne (aktualizowane podczas odświeżenia strony) – co rozwiązuje problem z Wikipedią, który dzisiaj widzieliśmy.
![:!:](/lib/images/smileys/icon_exclaim.gif)
Korzystając z przykładów zawartych w
dokumentacji, stwórz na swojej stronie proste zapytanie
#ask
, które będzie wyświetlało wszystkie osoby (kategoria Osoba) i ich Wiek.
Możemy każdą informację umieścić tylko JEDEN raz, a później się na nią powoływać (bo możemy ją łatwo wyciągnąć). Może to być nawet niewidoczne dla użytkownika czytającego wiki (dopóki nie zerknie do źródła strony).
![:!:](/lib/images/smileys/icon_exclaim.gif)
Na swojej stronie dopisz zdanie
Przypominam, że mam {{#show: [FIXME]}} lat!
- zamień
[FIXME]
na odpowiedni kod, aby wyświetliła się tam wartość Wieku, która jest wpisana na Twojej stronie gdzieś wcześniej. Skorzystaj z
dokumentacji.
Pozwala to na łatwe wyciąganie bardziej skomplikowanych informacji (to przećwiczymy w trakcie semestru, gdy wiki będzie się bardziej rozrastać), łączenie danych z różnych źródeł (zarówno włączanie danych zewnętrznych do stron w wiki, jak i udostępnianie na zewnątrz wiedzy zawartej w wiki przez odpowiednie
API, tzw. SPARQL Endpoint) czy eksport bazy wiedzy do CSV/JSON/itd.
-
Najważniejsze podstawy już masz – teraz pytanie: jak konkretnie będzie wyglądać tworzenie Wiki o sztucznej inteligencji?
![:!:](/lib/images/smileys/icon_exclaim.gif)
Czy potrafisz już przygotować stronę wiki o nazwie „Kartkówka Lab 2”, na której pojawi się automatycznie aktualizowane zestawienie stron, które należy przeczytać przed kartkówką na kolejnych zajęciach?
-