Archive for Październik, 2011

Październik 31, 2011

Jak rozprzestrzeniają się choroby?

- autor: tsissput

Niniejszy wpis ma traktować o rozprzestrzenianiu się chorób, modelach epidemiologicznych i związku tych zagadnień z sieciami.

Przed przejściem do jakichkolwiek konkretów należy w kilku słowach przedstawić związek pomiędzy tematyką naszego przedmiotu a epidemiologią, co na pierwszy rzut oka może się wydawać dosyć nieprawdopodobne. Otóż nie do końca – połączenie dwóch dziedzin nauki spowodowało znaczny wzrost skuteczności przewidywania dynamiki oraz kierunku rozprzestrzeniania się chorób zakaźnych.

Wczesne modele epidemiologiczne opierały się na losowym zarażaniu się osób w obrębie całej populacji, co nawet przy pierwszym kontakcie z tym podejściem wydaje się nieintuicyjne. Każdy z nas ma świadomość, że raczej nie zarazi się bezpośrednio od nieznajomej osoby żyjącej i przebywającej w innej części Polski – chyba że wirusem komputerowym, ale nie o tym piszę. Właśnie dlatego pojawiła się potrzeba udoskonalenia sposobu przewidywania epidemii.

Przed przystąpieniem do omówienia sposobów wykorzystania modeli sieci w epidemiologii muszę napisać kilka słów na temat samej epidemiologii – trudno się spodziewać, żeby informatycy posiadali jakąś wiedzę na ten temat.

Podstawowy, najprostszy model opiera się wyłącznie na liczbach. Podaje on liczbę osób w danej populacji, które są:

  • Narażone na zarażenie.
  • Zarażone.
  • Wyleczone z choroby.

Pomijane tutaj są wszelkie inne czynniki, takie jak sposób rozprzestrzeniania się choroby, jej przebieg, czas reakcji na zarażenie. Tak znaczne uproszczenie mimo wielu potencjalnych wad w praktyce sprawdzało się, głównie ze względu na uniwersalność. Powstały dwa istotne modele:

  • SIR – model zakładający kolejność narażony -> zarażony -> zdrowy.
  • SIS – model zakładający kolejność narażony -> zarażony -> narażony.

Pierwszy model zakłada całkowitą odporność osoby po przebyciu choroby, natomiast w drugim przypadku dopuszczalne (oraz prawdopodobne) jest kolejne zarażenie. W modelach tych brane są pod uwagę następujące parametry:

  • Wielkość populacji.
  • Liczba osób narażonych, zarażonych i wyleczonych w populacji o ustalonej wielkości.
  • Przyrost naturalny.
  • Śmiertelność.
  • Prawdopodobieństwo wyzdrowienia.
  • Prawdopodobieństwo zarażenia osoby narażonej.

SIR oraz SIS są modelami liniowymi, gdzie zakłada się, jak już wcześniej wspomniałem, losowe kontakty pomiędzy osobami.  Powstawały dosyć liczne modyfikacje modeli, polegające w szczególności na uwzględnieniu szerszego spektrum wiedzy biologicznej dotyczącej poszczególnych chorób – podziale grup narażonych, zarażonych oraz wyleczonych na mniejsze podgrupy. W konkretnych przypadkach sprawowały się one rzeczywiście coraz lepiej, jednak problem z podstawą zbudowaną na założeniu o losowych kontaktach pozostał nierozwiązany.

Teraz przyszedł czas na kilka słów o sieciach w kontekście pierwszej części wpisu. Istnieje wiele terminologii które można zastosować w celu opisu sieci, jednak mi najbliższa jest związana z grafami, dlatego będę najczęściej posługiwał się pojęciami węzłów i krawędzi. Sieci społecznościowe zazwyczaj analizowane są pod kątem przyczyny połączenia jakichś węzłów (jak np. wspólna praca, wspólna szkoła, sąsiedztwo itp.). Zbudowanie struktury sieci jest efektem pośrednim, a nie głównym przedmiotem badań. Istnieją prace naukowe potwierdzające fakt, że znacznie łatwiej jest dobrze zrozumieć istniejącą sieć zwracając uwagę na przyczynę powstania połączeń, a nie traktując zbiór powiązań jako czarną skrzynkę, która jest nieistotna dla struktury.

Nawiązując do teorii grafów został nałożony pewien nacisk na zbadanie natury połączeń – szczególnie ich dwie własności :

  • symetrii (czy to, że znam Billa Gatesa oznacza, że on również mnie zna?).
  • przechodniości (czy to, że A zna B, a B zna C oznacza że A zna C?).

Wprowadzono również określenia ważności poszczególnych węzłów. Kryteriami mogą być np. ilość połączeń, ilość ścieżek prowadzących przez węzeł. Okazuje się, że ta informacja ma istotne zastosowanie w epidemiologii, ponieważ rola osób ważnych w społeczeństwie, mających kontakt z wieloma innymi osobami, jest bardzo istotna. Można sobie wyobrazić sytuację, gdzie jeden nauczyciel akademicki (ważna osoba) zaraża wszystkie osoby które przyszły na wykład groźną chorobą zakaźną.

Nie zamierzam tutaj przytaczać opisów sposobów definiowania sieci społecznościowych, ponieważ m. in. to właśnie jest przedmiotem wykładów. Warto tutaj jednak zaznaczyć po raz kolejny, czym różni się podejście naukowców zajmujących się sieciami społecznymi, a epidemiologów. Ci pierwsi chcą doskonale zrozumieć sieci, genezę ich powstawania, zależności w nich występujące oraz role poszczególnych osobników. Drudzy z kolei traktują wiedzę o sieciach jako narzędzie – bardzo ważne i pomocne, jednak narzędzie. Oznacza to, że matematycy i informatycy dostarczają instrumentarium osobom przewidującym szybkość i kierunek rozprzestrzeniania się groźnych chorób zakaźnych.

Ważnym pojęciem jest teoria przesiąkania. Formalnie można ją określić jako badanie zachowań połączonych klastrów węzłów w grafach. Przechodząc do dziedziny sieci społecznościowych mówimy o zależnościach pomiędzy sieciami.

Przykładowo można o tym myśleć, jako o badaniu zależności pomiędzy obsługą supermarketu (sieć A) a klientami tego sklepu (sieć B). Od razu staje się oczywiste, dlaczego ten fragment wiedzy dziedzinowej jest tak bardzo istotny w przypadku epidemiologii – eliminuje on wady najprostszych modeli opisanych na początku mojego wywodu. Nie ma tutaj już mowy o przypadkowych połączeniach wewnątrz całych społeczności – istnieją mniejsze grupy społeczne oraz opisane związki pomiędzy nimi, dlatego modelowanie wchodzi na wyższy poziom.

Do tej pory wszystko wyglądało różowo, jednak pojawia się trapiący informatyków od zawsze problem – w celu zbudowania doskonałej sieci potrzebna jest ogromna ilość danych. Należałoby uzyskać personalne informacje od każdej osoby w danej społeczności, co jest po prostu niemożliwe.

Zbieranie potrzebnych danych jest zadaniem trudnym, jednak jeszcze bardziej kłopotliwą kwestią jest zdefiniowanie i opisanie powiązań pomiędzy osobami. W przypadku każdej osoby należy się zastanowić, w jaki sposób możliwe jest zarażenie się. Zadanie może pozornie wydawać się proste, jednak w obliczu ilości sieci w jakich znajduje się lub ma kontakt każdy z nas, sprawa przestaje być taka prosta. Jak określić, w jakiej relacji trzeba być, żeby zarazić się daną chorobą? W jaki sposób określić dla danej relacji, na jaką odległość zbliżamy się do drugiej osoby? To są przykładowe pytania, które sprawiają, że pozornie proste zagadnienie jest bardzo wymagające. Oczywiście należy uwzględnić fakt prawdopodobieństwa zarażenia się – to, że się zbliżę do jakiejś chorej osoby na niebezpieczną odległość wcale nie oznacza, że będę miał daną chorobę. Ilość możliwych kombinacji nie tylko wpływa na złożoność modelu, lecz także powoduje powstanie dodatkowych trudności podczas zbierania danych. Ten problem dotyczy zwłaszcza chorób wenerycznych, gdzie pytania pomagające zbudować sieć naruszają strefę osobistą. Problem można częściowo rozwiązać stosując ograniczoną dziedzinę dostępnych związków między ludźmi – powoduje to pewną generalizację (coś na kształt dyskretyzacji zmiennej ciągłej), ale umożliwia praktyczne zastosowanie modeli.

Na zakończenie chciałbym jeszcze przedstawić trzy stosowane sposoby zbierania informacji o budowie sieci.

Pierwszym z nich jest śledzenie infekcji. Budowanie modelu następuje po epidemii jakiejś choroby – przykładem może być SARS w Hongkongu i Kanadzie. Lekarze szczegółowo badają każdy przypadek wystąpienia choroby i analizują, skąd osoba się zaraziła i komu przekazała chorobę. Zaletą metody jest niewrażliwość na problemy związane z definicją relacji, natomiast wadą jest pomijanie potencjalnie zagrożonych przypadków, w których choroba jednak nie wystąpiła.

Drugą metodą jest śledzenie kontaktów. W tym przypadku badane są również potencjalne wystąpienia choroby. Zarażeni dostarczają informacji na temat osób, które mogłyby się zarazić i idąc dalej tym tropem, analizowane są kolejne węzły w sieci. Dzięki takiemu podejściu eliminowana jest podstawowa wada pierwszej metody, natomiast powstaje problem z definiowaniem związków między ludźmi.

Ostatnim podejściem jest prowadzenie dzienników przez osobników w opisywanej społeczności. Pozwala to na zrzucenie obowiązku zbierania danych na członków populacji, jednak niesie za sobą istotne ryzyko różnych interpretacji tych samych danych. Ponieważ ciężko jest zdefiniować możliwe relacje między ludźmi, opisywanie ich zawsze będzie niejednoznaczne.

Mam nadzieję, że mój wpis pozwolił zainteresowanym na krótkie zapoznanie się z najciekawszymi moim zdaniem aspektami wykorzystywania sieci społecznych w epidemiologii. Jest to zagadnienie ciekawe, pozwalające na przekonanie się, jak można w praktyce wykorzystać wiedzę którą zdobywamy w trakcie zajęć.

Źródła:
http://www.ncbi.nlm.nih.gov/pmc/articles/PMC1578276/

Autor:
Piotr Starobrat (79415)

Reklamy
Październik 31, 2011

RMonto: ontologiczne rozszerzenie dla RapidMiner

- autor: tsissput

Wprowadzenie

Historia systemów do eksploracji danych zaczyna się wraz z tzw. systemami pierwszej generacji, które wspierały tylko dane w postaci tabeli atrybut-wartość i wspierały niewielki zakres algorytmów. Przykładowym rozwiązaniem tego typu jest Statistica Neural Networks, obecnie już dość wiekowe oprogramowanie umożliwiające przetwarzanie danych tabularycznych z wykorzystaniem różnych rodzajów sieci neuronowych. Systemy drugiej generacji, takie jak np. Weka, rozwiązują dodatkowo problemy związane ze skalowalnością, umożliwiające wykorzystywanie języków zapytań i dostęp do hurtowni danych. Zadanie, które stoi przed systemami trzeciej generacji, to rozwiązanie problemu umożliwienia dostępu do różnorodnych źródeł danych przy jednoczesnym zapewnieniu wygody w używaniu oprogramowania. RapidMiner stara się zapewnić użytkownikom możliwie wygodny interfejs, jednak nadal wspiera wyłącznie dane w postaci atrybut-wartość. W celu rozszerzenia możliwości RapidMiner i umożliwienia mu wykorzystywania danych w postaci strukturalnej, w szczególności danych z informacjami semantycznymi, zapisanych w postaci RDF, stworzono RMonto.

Powiązane prace

Dotychczasowe działania w dziedzinie stworzenia narzędzi do uczenia maszynowego z danymi semantycznymi zaowocowało stworzeniem kilku narzędzi i propozycji standardów, które jednak nie są tak rozbudowane jak RMonto. Prawdopodobnie najważniejszą pozycją jest DL-Learner, narzędzie służące do odkrywania reguł decyzyjnych dotyczących ontologicznych baz wiedzy. Umożliwia on odkrywanie reguł zapisanych w języku ALC na podstawie danej listy przykładów pozytywnych i negatywnych, będących identyfikatorami zasobów w bazie wiedzy.

Narzędziem, również będącym ontologicznym rozszerzeniem dla RapidMiner, jest rapidminer-semweb. Umożliwia on transformację grafu RDF na postać tabeli atrybut-wartość przez konstrukcję odpowiednich cech oraz wizualizację tej transformacji. Niestety, nie umożliwia on bezpośredniego wykorzystania bazy wiedzy, bez kroku transformacji.

Zaproponowano również rozszerzenie języka SPARQL, nazywające się SPARQL-ML. Ma ono na celu rozszerzenie języka SPARQL o wsparcie dla algorytmów uczenia maszynowego i w efekcie rozszerzenia możliwego zbioru wyników o np. model grupujący wyniki.

Założenia projektowe

Projekt takiego systemu musi uwzględniać kilka niezwykle ważnych cech. Przede wszystkim trzeba zauważyć, że obecnie nie istnieje jeden słuszny system wnioskujący. Wśród nich dominują dwa nurty:

  • Oparty na metodzie tableau, zapewniający wyciągnięcie wszystkich możliwych wniosków, jednak kosztem bardzo wysokiej złożoności obliczeniowej. Przykładem takiego systemu jest Pellet.
  • Oparty na regułach, generalnie prowadzący do wnioskowania przybliżonego i niekompletnego, jednak zapewniający wysoką wydajność wnioskowania. Przykładowym takim systemem jest OWLim.
Drugim ważnym spostrzeżeniem jest fakt, że również w dziedzinie przechowywania danych istnieje duża różnorodność. Nie dość, że występuje wiele formatów plików (np. RDF/XML, N3, Turtle), to dane mogą być również pobierane bezpośrednio z końcówki SPARQL za pomocą zapytania typu CONSTRUCT. Dodatkowo użytkownik może posiadać część danych w bazie danych bądź pliku tekstowym, zapisane po prostu jako kolejne trójki RDF.
Problem różnorodności systemów wnioskujących został rozwiązany przez zapewnienie modułowej budowy. Wszystkie implementacje interfejsów do systemów wnioskujących implementują wspólny zbiór interfejsów, nazwany PutOntoAPI. Z kolei implementacje algorytmów i operatory RapidMiner mogą wykorzystywać systemy wnioskujące wyłącznie przez wspomniane API. Umożliwia to łatwą wymianę wtyczek, zapewnia wybór użytkownikowi oraz możliwość samodzielnego rozszerzania. Z rozmysłem nie zastosowano tutaj OSGi, by nie wprowadzać dodatkowej skomplikowanej biblioteki do systemu.
Drugie wymaganie, dotyczące różnorodności źródeł danych, na szczęście daje się łatwo rozwiązać, gdyż systemy wnioskujące generalnie wspierają wczytywanie danych z różnych formatów, a RapidMiner posiada dobre wsparcie dla wczytywania danych z plików i baz danych.

Możliwości

RMonto skonstruowane jest w formie kilkunastu operatorów, podzielonych w zależności od funkcjonalności na wiele grup, dostępnych w drzewie operatorów w RapidMiner. Poniższy opis jest podzielony zgodnie z tymi grupami.

  • Loading Zawiera trzy operatory: Load from file, Load from SPARQL endpoint oraz Build knowledge base. Pierwsze dwa działają na zasadzie wykonania zwrotnego i służą zdefiniowaniu parametrów operacji, która jest wykonywana w kontekście bazy wiedzy definiowanej przez ostatni z nich. Load from file  wspiera ładowanie danych z dowolnej lokacji dostępnej za pomocą standardowych metod dostępu do plików (a więc plików lokalnych oraz dostępnych w zasobach sieciowych), zapisanych w formatach RDF/XML, Turtle, N3, N-Triple. Load from SPARQL endpoint umożliwia ściąganie grafów RDF bezpośrednio z końcówek SPARQL przy wykorzystaniu zapytań typu CONSTRUCT.
  • ABox Operatory SPARQL selector oraz ABox extractor umożliwiają pobranie z bazy wiedzy listy występujących tam indywiduuów. Pierwszy z nich umożliwia to poprzez zapytanie SPARQL SELECT oraz wskazanie nazwy zmiennej z tego zapytania, zawierającej
  • TBox Zawiera dwa operatory, służące konstrukcji cech na potrzeby jednej z miar podobieństwa, Epistemic kernel. Oba dostarczają wyników w postaci tabeli zawierającej opisy klas zgodnie ze składnią Manchester. Pierwszy z nich, All known classes zwraca listę wszystkich nazwanych klas występujących w bazie wiedzy, natomiast drugi, Feature selector umożliwia ręczną konstrukcję cech przez łączenie nazwanych klas zgodnie z wyżej wskazaną składnią. Jego zaletą jest dostarczenie edytora wspierającego tworzenie tych cech przez odpowiednie kolorowanie składni.
  • Kernels W tej grupie znajdują się operatory umożliwiające budowanie macierzy niepodobieństwa dla wybranej grupy indywiduuów. Wszystkie z nich jako parametry wejściowe przyjmują listę indywiduuów (o długości n, pochodzącą np. z operatorów z grupy ABox bądź z pliku czy bazy danych) oraz bazę wiedzy. Na wyjściu znajduje się macierz typu n*n, będąca macierzą Grama dla danego zbioru indywiduuów. Aktualnie dostarczane są trzy operatory: Identity uwzględniający jedynie równoważność indywiduuów, Common classes opierający się na liczbie wspólnych nazwanych klas oraz Epistemic kernel, wykorzystujący zbiór cech, skonstruowany np. przy pomocy operatorów z TBox bądź wczytanych z pliku.
  • Clustering Aglomerative hierarchical clustering oraz Semantical k-Medoids wykorzystują macierze niepodobieństwa (uzyskane np. przez zastosowanie operatorów z poprzedniego punktu) oraz informacje z bazy wiedzy w celu wykonania grupowania. Pierwszy z nich buduje hierarchię opisanych grup, natomiast drugi buduje jeden poziom grup i opisuje je zgodnie z elementami centralnymi tych grup.
  • Pattern mining Fr-Ont-Qu  służy do wyszukiwania w bazie wiedzy wzorców, wyrażonych jako wzorce SPARQL, zgodnie ze wskazaną miarą podobieństwa. Wykorzystując miarę nienadzorowaną Support on KB uzyskuje się operator odkrywający częste wzorce, natomiast wykorzystując miary nadzorowane (np. Info gain), w wyniku otrzymuje się wzorce rozróżniające przykłady pozytywne od negatywnych.
  • Data transformation Operatory Propositionalisation oraz Add label from KB służą do transformacji danych uzyskanych z innych operatorów. Pierwszy z nich pozwala przetransformować bazę wiedzy z postaci grafu na postać binarnej tabeli. Oczywiście, jest to transformacja stratna. Wejściem dla tego operatora jest indywiduuów, które mają stanowić kolejne obiekty w uzyskanej tabeli oraz lista wzorców odkrytych przez Fr-Ont-Qu (bądź uzyskanych z innego źródła), stanowiąca listę atrybutów. Tak przetransformowane dane mogą później posłużyć jako wejście dla normalnych algorytmów uczenia maszynowego, np. indukcji drzew decyzyjnych. Operatorem o technicznym znaczeniu jest Add label from KB, który pozwala rozszerzyć listę indywiduuów o odpowiadające im wartości wskazanej cechy z bazy wiedzy.

Dalsze informacje

Powyższy wpis powstał w oparciu o artykuł „RMonto – towards KDD workflows for ontology-based data mining” (J. Potoniec, A. Ławrynowicz), dostępny w ramach materiałów z warsztatu PlanSoKD2011 i tam też można szukać dalszych informacji. Dodatkowe informacje dostępne są również na oficjalnej stronie projektu http://semantic.cs.put.poznan.pl/RMonto/, gdzie można znaleźć między innymi tutoriale wideo dotyczące sztandarowych zadań możliwych do wykonania z wykorzystaniem RMonto.

Autor: Jędrzej Potoniec (84868)

Październik 30, 2011

Trudności na drodze rozwoju sieci semantycznych.

- autor: tsissput

Każdy z nas słyszał już kiedyś stwierdzenie, że sieć semantyczna to przyszłość Internetu. Śledząc ostatnie nowinki ze świata IT widać, że sieci semantyczne znajdują coraz to nowe zastosowania, przykładem mogą być tu systemy eksperckie czy także działania jednego z gigantów świata IT firmy Oracle która udostępnia swoim klientom zbiór narzędzi pozwalających na przetwarzanie danych semantycznych bezpośrednio w systemach baz danych Oracle. Dzisiejszy model „sieci” opartej na dokumentach zaczyna powoli być wypierany przez „sieć” skoncentrowaną na zawartości tych dokumentów. Z perspektywy użytkowników jest to trend jak najbardziej pożądany. Większa dokładność wyszukiwań, selekcja danych najlepiej dopasowanych do naszego zapytania. To wszystko sprawia, że rozwój technologii semantycznych z pewnością będzie postępował, pytanie brzmi jednak jak poradzić sobie z trudnościami które napotkamy na drodze rozwoju tych technologii?

Stan obecny to problem z odczytaniem danych z sieci przez maszyny. Chyba każdy z nas zgodzi się z tym, że Internet to ogromne zasoby informacji. Problem w tym że dane publikowane w sieci Web w większości prezentowane są w sposób czytelny dla innych ludzi, a co za tym idzie nie zawsze czytelny dla maszyn analizująco-wnioskujących. Ludzie czytając zasoby Internetu potrafią łatwo powiązać informacje umieszczone na stronie internetowej z innymi danymi w sieci. Tu dochodzimy do ważnego problemu, to co dla ludzi wydaję się być czynnością dosyć prostą jest natomiast największą trudnością dla algorytmów analizujących sensowne informacje spośród miliardów witryn publikowanych w Internecie. Główną przeszkodą w analizowaniu, przetwarzaniu i rozumieniu zapytań jest fakt, że informacje przechowywane w sieci Web są dziś w setkach tysiącach formatów, przez co ich porównywanie i wnioskowanie na ich podstawie staje się zadaniem trudnym, żeby nie powiedzieć niemożliwym.

Co może być sposobem rozwiązania? Zmiana sposobu przechowywania informacji. Gromadzenie nowych danych w usystematyzowanych strukturach. Rozpatrując ten aspekt od strony technicznej nie jest to trudne do zrealizowania, pod warunkiem że mówimy tu o nowo powstających dokumentach i o standardzie działającym na przykład dla wszystkich dokumentów publikowanych w sieci Web od 1 stycznia 2012 roku. Problem zaczyna się jednak kiedy zastanowimy się co zrobić z obecnymi zasobami informacji dodanymi do światowej sieci internetowej przed wprowadzeniem jednego standardu. Rozwiązaniem może okazać się sztuczna inteligencja jak również lingwistyka komputerowa. Żeby było to możliwe, sieć semantyczna oprócz tylko danych powinna zawierać również dodatkowe informacje o relacjach pomiędzy nimi. Umieszcza się je w formie tekstowej, jako tak zwane metadane. Przykład takiej ontologii został zaprezentowany na obrazku poniżej.

Opis przykładu z obrazka „Ontologia: umożliwienie opisywania złożonych relacji”:
Powyżej zaprezentowano przykład ontologii przy opisie dzieł sztuki. Gdy poruszamy się pionowo poprzez strukturę, dochodzimy do przyporządkowania własności (według systematyki). Każdy malarz jest artystą, każde muzeum jest budynkiem. Pomiędzy elementami mogą wystąpić prawie niezliczone relacje. Obraz namalowany przez malarza przy użyciu danej techniki jest zawieszony w budynku architekta To może być muzeum, ale też salon w domu artysty.

Przetwarzanie języka naturalnego (z angielskiego NLU – Natural Language Processing) to między innymi metody obejmujące rozbiór wypowiadanych przez człowieka tekstów. Zazwyczaj polega to na podziale całej wypowiedzi na pojedyncze zdania i ich dalszą analizę. Dodatkowo wykorzystanie przez maszyny wiedzy o budowie zdań (podmiot -> predykat -> obiekt) sprawia że semantyczny rozkład treści zdania wydaje się być łatwy. Pozwala to na identyfikowanie osób, zdarzeń oraz lokalizacji i tworzenie powiązań między nimi, co w rezultacie podczas przeszukiwania minimalizuje liczbę błędnych rezultatów zapytań. Analizy te dążą do zbliżenia analiz dokonywanych przez ludzkich mózg, po usłyszeniu wypowiedzi. Ciągle jeszcze na tym polu analizy wypowiadanych tekstów pozostała długa droga, jednak z pewnością zostały już stworzone solidne podwaliny dla dalszego rozwoju.

Jakich trudności możemy się jeszcze spodziewać? Rozważmy wątek ekonomiczny. Czy firmom typu Google czy Yahoo opłaca się stworzenie idealnej wyszukiwarki semantycznej, która na zadane przez użytkownika pytanie udzieli tylko jednej odpowiedzi która z bardzo wysokim prawdopodobieństwem okaże się tą właśnie szukaną informacją? Odpowiedź wcale nie jest jednoznaczna. Obecne wyszukiwarki internetowe są darmowe, każdy użytkownik z dostępem do Internetu po wpisaniu w pasku przeglądarki adresu google.com czy też bing.com może po już po paru sekundach uzyskać do nich dostęp i wykorzystać w celu wyszukania interesującej go informacji. Współczesne silniki wyszukiwarek zaprezentują nam posegregowaną listę poszukiwanych fraz uzyskaną za pomocą metod statystycznych. Wśród wyświetlonych rezultatów znajdą się linki sponsorowane, reklamy różnych produktów w jakimś stopniu związanych z zadanym przez nas zapytaniem. Powstaje tu kluczowe pytanie jak duże są zyski czerpią właściciele wyszukiwarek internetowych z tych właśnie reklam oraz linków sponsorowanych. W wyszukiwarce semantycznej gdzie wyświetlany będzie jeden konkretny wynik, nie będzie już raczej miejsca na reklamy do jakich mogliśmy przywyknąć w ostatnich latach. Dlatego naturalnym wydaje się fakt, że dopóki bilans zysków i strat nie zostanie wyrównany, tacy giganci jak Google nie będą starali się za wszelką cenę przejść tylko i wyłącznie na wykorzystanie wyszukiwarek semantycznych. Specjaliści do spraw marketingu IT jednej z amerykańskich firm konsultingowych przewidują, że będzie to stopować rozwój wyszukiwarek semantycznych.

Sieci semantyczne dostarczają całego zestawu rozwiązań umożliwiającego bardziej efektywne wyszukiwanie informacji spośród zasobów stron internetowych oraz ich integrację z innymi źródłami. Wspólny standard opisu danych jak również wspólny sposób ich prezentacji z pewnością przyspieszy rozwój sieci semantycznych. Również Unia Europejska i współfinansowanie projektów związanych z technologiami semantycznymi z budżetu 7 Programu Ramowego przyczynia się do poszerzania możliwości zastosowań tej techniki w sieci Web, a co za tym idzie także w życiu ludzi. Do narzędzi finansowanych z budżetu Unii należy między innymi LarKC (Large Knowledge Collider). Głównym założeniem projektu jest skalowalność sieci semantycznej WWW do rozmiarów obecnego Internetu. Więcej informacji o narzędziu jakim jest Large Knowledge Collider znajdziemy w filmiku zamieszczonym pod linkiem (http://www.youtube.com/watch?v=hjUbbl4cnAE&feature=player_embedded). Należy jednak pamiętać, że sieci semantyczne mogą działać jedynie jeśli zapewniony będzie dostęp do bardzo zróżnicowanych treści. Co więcej, zawartość stron sieci internetowej powinna być łatwa do znalezienia i połączenia, natomiast relacje między danymi lepiej opisane, niż ma to miejsce do tej pory w Internecie. Można jednak założyć, że rewolucja polegająca na przejściu od szukania fraz w wyszukiwarkach typu Google czy Yahoo do odpowiedzi na pytania zadane w języku naturalnym dokona się w najbliższych latach, jeśli oczywiście twórcy wyszukiwarek znajdą sposób żeby uzyskać zysk finansowy, który będzie równie wysoki jak reklamy i linki sponsorowane wyświetlane obecnie razem z rezultatami zapytań. Do tej chwili alternatywą może być dla nas wyszukiwarka Wolfram Alpha.

 

źródła:

http://www.chip.pl/artykuly/porady/2009/06/semantyczna-siec-boty-ucza-sie-kojarzyc?b_start:int=0

http://www.ploug.org.pl/konf_09/materialy/pdf/17_Semantic_Web_-_technologie.pdf

 

Autor: Łukasz Kujaciński (83712)

Październik 29, 2011

Czym jest poczucie wspólnoty?

- autor: tsissput

Zanim zaczniemy rozważania na temat sieci społecznych dobrze by było się zastanowić czym tak właściwie jest poczucie wspólnoty, oraz jakie cechy decydują o tym, że ludzie czują się ze sobą powiązani. Na przestrzeni lat wielu psychologów próbowało w swoich pracach, zdefiniować społeczeństwo i opisać je za pomocą liczb. Pomimo tego, że każdy z nich skupiał się na różnych aspektach społeczeństwa, wszyscy zgadzają się, że poczucie wspólnoty tak naprawdę zależy od indywidualnych potrzeb i doświadczeń ludzi jako jednostek. Stąd trudno jest znaleźć jednolite cechy określające wspólnotę.

David W. McMillan i David M. Chavis w swoim artykule podjęli próbę zdefiniowania poczucia wspólnoty. Ich definicja opiera się na czterech podstawowych elementach:

– członkostwie

– wpływie

– integracji i wypełnianiu wspólnych potrzeb

– dzieleniu się wspólnymi przeżyciami

Definicja, którą sformułowali brzmi: „Sense of community is a feeling that members have belonging, a feeling that members matter to one another and to the group, and a shared faith that members’ needs will be met through their commitment to be together.”

Żeby lepiej zrozumieć poczucie wspólnoty i elementy potrzebne do utworzenia i utrzymania wspólnoty postaram się rozwinąć każdą z tych 4 ww. cech.

Członkostwo

Członkostwo jest poczuciem, że każdy człowiek znajdujący się w wspólnocie wniósł swój wkład aby do danej wspólnoty należeć, oraz ma poczucie bycia częścią danej społeczności. Stąd rodzą się granice, które określają kto może a kto nie może należeć do danej wspólnoty. Są one ważną częścią wspólnoty, z jednej strony odgradzają nowych członków od wstąpienia, ale zarazem dają należącym już poczucie bezpieczeństwa. Ludzie aby uwypuklić owe granice często tworzą własne symbole, ubierając się podobnie, mówiąc specyficznym językiem.

Wpływ

Wpływ jest dwukierunkowym pojęciem. Z jednej strony aby jednostka była zainteresowana uczestniczeniem w wspólnocie, musi mieć poczucie, że ma wpływ na jej działania. Z drugiej strony spoistość grupy jest uwarunkowana, jej zdolnością do wpływania na członków.

Integracja i wypełnianie wspólnych potrzeb

Trzeci element jest tak naprawdę wzmocnieniem poczucia wspólnoty. Żeby stworzyć silniejszą więź pomiędzy ludźmi, wspólnota musi w jakiś sposób wypełniać potrzeby jej członków. Niektórymi nagrodami jakie mogą otrzymywać członkowie grupy, które niewątpliwie wpływają na poczucie wspólnoty są: status bycia członkiem, wspólne sukcesy, oraz kompetencje i zdolności pozostałych członków. Oczywiście istnieje dużo więcej potrzeb, są one jednak uwarunkowane indywidualnymi przeżyciami członków i zależą od potrzeb jednostek.

Dzielenie się wspólnymi przeżyciami

Dzielenie się wspólnymi przeżyciami jest częściowo oparte na wspólnej historii. Nie jest konieczne, aby członkowie uczestniczyli w historii, ale muszą identyfikować się z nią. Współudział członków w wydarzeniach historycznych ma wpływ na umocnienie więzi społecznych. Przykładem mogą być weterani wojenni, którzy pomimo, że nie znają się dobrze czują wielką więź pomiędzy sobą.

Dynamika wewnątrz poszczególnych elementów

Teraz kiedy zdefiniowaliśmy elementy poczucia wspólnoty zastanówmy się jak one współdziałają między sobą. McMillan i Chavis w swojej pracy zaproponowali schemat, który zawiera wszystkie ww. elementy (table 1).

tabela 1 - elementy poczucia wspólnoty i ich relacje

Pięć cech członkostwa zdaje się funkcjonować w swego rodzaju samo-wzmacniającego się cyklu.

Możemy także stwierdzić, że wpływ grupy na jednostkę, daje tej jednostce większą możliwość wpływu na grupę. Kiedy jeden z członków stara się bardziej  dominować lub mieć większy wpływ na grupę staje się mniej podatny na wpływy grupy.

Wymienna dynamika integracji i wypełniania wspólnych potrzeb, zdaje się być jasna. Społeczeństwa powstają wokół jakichś konkretnych potrzeb, a ludzie łączą się razem aby te potrzeby realizować.

Dzielenie się wspólnymi przeżyciami może być przedstawione za pomocą dwóch wzorów. Pierwszy z nich pokazuje wpływ kontaktów pomiędzy członkami, oraz jakość interakcji na dzielenie się wspólnymi przeżyciami.  Drugi opisuje, zależność: (szczęśliwe zakończenia wspólnych historii – ich dwuznaczność)x(jakość wydarzeń x wspólny udział w nich) + wartość szacunku z nich wyniesionego – wielkość upokorzenia.

Dynamika pomiędzy poszczególnymi elementami

Na zakończenie przedstawię prosty(lekko wyidealizowany) przykład jak poszczególne cechy wpływają na stworzenie społeczeństwa, oraz jak przenikają się nawzajem.

Na uniwersytecie, ktoś wywiesza ogłoszenie o utworzeniu grupy sportowej. Na pierwsze zebranie przychodzą zupełnie obcy dla siebie ludzie, których jednak połączyła wspólna potrzeba uprawiania danego sportu (wypełnianie wspólnych potrzeb). Drużyna jest ograniczona jedynie do uczniów danego uniwersytetu (granice członkowstwa), oraz spędza wspólny czas na treningach (integracja). Grają mecze z innymi uczelniami i zaczynają wygrywać(dzielenie się wspólnymi wydarzeniami ze szczęśliwym zakończeniem). W trakcie gry zawodnicy dają z siebie wszystko, żeby uzyskać jak najlepszy wynik(wkład osobisty). Wraz z kolejnymi zwycięstwami członkowie są coraz bardziej rozpoznawani(szacunek wyniesiony z bycia członkiem grupy). Ktoś proponuje, aby kupić jednakowe stroje(symbole),a pozostali przystają na to  ( wpływ).

Przykład pokazuje jak w liniowy sposób potrzeby przeplatają się wzajemnie. Oczywiście świat nie zawsze jest taki prosty.

Podsumowując ww. cechy wspólnoty , są tylko próbą opisania tego co jest grupie potrzebne do koegzystencji. Oczywiście, żeby grupa mogła istnieć nie jest konieczne spełnienie wszystkich z nich. Jednak cechy te  łączą grupę w całość i powodują powiększenie więzi pomiędzy jej członkami. Myślę, że znajomość mechanizmów wpływających na poprawne funkcjonowanie grupy może wpływać na jakość naszych kontaktów.  Świadomość wspólnych potrzeb łączących nas z grupą, wpływu jaki my mamy na grupę oraz grupa na nas oraz tego jak ważne jest wspólne przeżywanie różnych wydarzeń może nam pomóc znaleźć swoje miejsce w grupie a co za tym idzie lepsze funkcjonowanie w tej grupie oraz szerzej w całym społeczeństwie. Nie należy bowiem zapominać, że człowiek to istota społeczna, która do prawidłowego rozwoju potrzebuje akceptacji i wsparcia od innych.

 

Żródła:

Sense of Comunity: A Definition and Theory

Autor: Krzysztof Duszczyk 84787

Październik 26, 2011

Cleverbot – chatbot, który przeszedł test Turinga

- autor: tsissput

 

Cleverbot to program komputerowy , który został stworzony w 1988 roku przez zajmującego się zagadnieniami sztucznej inteligencji Rollo Carpentera. Od momentu stworzenia Cleverbot cały czas się uczył prowadząc niekończące się rozmowy. W 1997 roku doczekał się bardzo istotnej innowacji, która polegała na udostępnieniu każdemu internaucie na świecie możliwości przeprowadzenia z nim rozmowy. Do chwili obecnej Cleverbot miał podobno przeprowadzić w sumie ponad 65 miliardów konwersacji.

Cleverbot jest typem chatbota. Czym jest chatbot? Chatbot, znany również jako chatterbot lub linguabot to program komputerowy którego zadaniem jest prowadzenie konwersacji przy użyciu języka naturalnego bądź interfejsu tekstowego, sprawiając wrażenie inteligentnego. Zabieg ten ma na celu oszukanie rozmówcy, tak aby myślał iż rozmawia on z żywym człowiekiem. Chatboty często używane są na stronach internetowych jako interaktywne, wirtualne postacie, zastępujące żywych konsultantów, odpowiadając na pytania z zakresu usług i działalności danej firmy.

Jedne z najprostszych chatbotów posługują się stałą bazą wiedzy złożoną ze słów kluczowych i przypisanych im komunikatów. Komunikaty te wysyłają w odpowiedzi użytkownikowi, gdy w jego tekście znajdą dane słowo. Na przykład prosty chatbot dostając pytanie „Jaka jest u Ciebie pogoda?” zapewne odpowie komunikatami „Jest bardzo słonecznie” lub też „Jest pochmurno” przypisanymi do słowa „pogoda”. Inną metodą może być też zamiana wiadomości otrzymanej i odesłanie jej z powrtoem użytkownikowi aplikacji, Jeżeli np. rozmówca wysyła komunikat „Bardzo lubię placki”, program może odpowiedzieć następująco: „Dlaczego bardzo lubisz placki?”. Sposoby te zazwyczaj są wystarczające, aby ludzi, którzy nie są świadomi rozmowy z komputerem i nie znają tego typu programów, zainteresować na tyle, by utrzymali rozmowę przynajmniej przez krótki czas. Są to tak zwane „sposoby udawania inteligentnej osoby”. Zalicza się do nich np.:

  • opowiadanie żartów,
  • przytaczanie cytatów,
  • nawiązywanie wypowiedzi do słów kluczowych,
  • zarzucenie rozmówcy pytaniami,
  • przypominanie początkowych wypowiedzi rozmówcy,
  • odpowiadanie wymijająco,
  • częsta zmiana tematu rozmowy,
  • inne.

Bardziej zaawansowane chatboty poszerzają swoją bazę wiedzy w trakcie kolejnych rozmów. Wykorzystują zaawansowane parsery do analizy otrzymanych wiadomości korzystające zarówno z wiedzy z dziedziny analizy języka naturalnego jak i algorytmów uczenia maszynowego.

Wracając do tematu nadrzędnego, czyli Cleverbot’a. Jest on pierwszym programem, który zaliczył test Turinga. O tym, kim był Alan Turing nie muszę chyba pisać. Natomiast pojęcie testu Turinga jest zapewne mniej znane. Test Turinga, który definiuje „maszynę myślącą”, został zaproponowany w 1950 roku przez wspomnianego ów Alana Turinga. Zgodnie z jego założeniami, maszyna jedynie wtedy może pomyślnie go przejść, jeżeli opanuje umiejętność myślenia w sposób podobny do ludzkiego. Oznacza to, że prowadzący z nią rozmowę człowiek nie będzie mógł wiarygodnie stwierdzić, że nie rozmawia z drugim człowiekiem.

„Test wygląda następująco: sędzia – człowiek – prowadzi rozmowę w języku naturalnym z pozostałymi stronami. Jeśli sędzia nie jest w stanie wiarygodnie określić, czy któraś ze stron jest maszyną czy człowiekiem, wtedy mówi się, że maszyna przeszła test. Zakłada się, że zarówno człowiek jak i maszyna próbują przejść test zachowując się w sposób możliwie zbliżony do ludzkiego.”

Jeszcze do niedawna testu Turinga nie zaliczył żaden komputer. Aż do początku września tego roku. Test został zaliczony podczas dorocznego festiwalu Techniche w indyjskim Guwahati. Dokonał tego właśnie Cleverbot.
W teście udział wzięło 1334 osoby, które obserwowały przebieg rozmowy z programem Cleverbot, oczywiście nie wiedząc kto jest rzeczywistym rozmówcą. Po zaobserwowanej konwersacji aż 59,3% z nich przyznało, że jej uczestnikiem był człowiek, co oznacza, iż Cleverbot jako pierwszy na świecie przeszedł test Turinga.

Co na temat zaliczonego testu sądzi twórca programu Cleverbot?
„Moja odpowiedź na to pytanie jest dość jednoznaczna. Nie, pomyślne przejście testu nie oznacza, że Cleverbot myśli. Można jedynie stwierdzić, że może było trochę inteligencji w tym co się stało, ale myślę, że powinniśmy tu odróżnić myślenie od inteligencji słowa.”

Zdaniem Carpentera problem polega na tym, że mimo iż wynik przewyższył 50% próg, to i tak program Cleverbota i ludzi wciąż dzieli przepaść.

Carpenter dodaje:
„Zdanie egzaminu nie jest dowodem inteligencji, a jedynie pokazuje, że maszyna może naśladować inteligencję. To oczywiście jednak nie znaczy, że przechodzenie takiego testu jest bez sensu.”

Na podstawie przeprowadzonego znamy też wynik „ludzi”. W rozmowach, w których rozmówcą faktycznie był człowiek zaledwie 63,3% obserwatorów przyznało, że byli świadkami konwersacji z istotą ludzką. Więc można by tutaj zaryzykować stwierdzenie, że jako ludzkość tracimy swój „ludzki” czynnik.

Cleverbot jest dostępny na platformy mobilne takie jak iOS oraz Android. Jest to spora nowość. W przypadku platformy Android rozmowę możemy prowadzić nagrywając naszą mowę, która zostanie zamieniona na tekst i przesłana do serwera aplikacji Cleverbot. W odpowiedź Cleverbot zinterpretuje naszą sentencję i udzieli odpowiedzi, która zostanie odtworzona na urządzeniu mobilnym na głos.

Większość współczesnych linguabotów oprócz interfejsu tekstowego posiada interfejs graficzny. Wizualizacja postaci chatbota przybiera najczęściej postać człowieka, ale może on być dowolnym przedmiotem. Dobrym przykładem jest tutaj bot ze strony existor.com

Wygląd może być stworzony za pomocą:
• grafiki 3D,
• rysunku,
• nagrania wideo,
• zdjęcia modelki/modela,
• animacji flash,
• innych.

Jeżeli chodzi o zastosowanie chatbotów to poza zastosowaniem naukowym i rozrywkowym, chatboty są wykorzystywane w Internecie jako wirtualni doradcy i przewodnicy po serwisach internetowych. Tego typu programy zazwyczaj nie starają się zachować w tajemnicy faktu, że nie są człowiekiem, ale dzięki temu, że „rozumieją” pytania zadawane w języku naturalnym, mogą być wykorzystywane jako inteligentne wyszukiwarki treści potrzebnych użytkownikowi. Takie chatboty są zwykle dostępne z poziomu przeglądarki internetowej i często wyposażone w animowany awatar, który obrazuje przeżywane emocje.

Innym produktem Rollo Carpentera jest Jabberwacky. Jest to również program symulujący człowieka, z którym można porozmawiać przy użyciu języka naturalnego i interfejsu tekstowego. Jabberwacky dwukrotnie (w 2005 i 2006 roku) wygrał zawody oparte na teście Turinga o nagrodę Loebnera.

Istnieje mnóstwo chatbotów. Wszystkie chatboty można znaleźć w katalogach chatbotów (np. na stronie http://www.chatbots.org/pl ). Przykładowe polskie chatboty to m.in.: Snikers, Ania, Wirtualny Szkoleniowiec BHP, i inne.

Pomiędzy chatbotami rozgrywane są zawody. Zawody skupiają się wokół testu Turinga lub bardziej szczegółowych zadań. Dwa coroczne zawody to: Nagroda Loebnera i „The Chatterbox Challenge”.

Warto by jeszcze wspomnieć odnośnie ewaluacji chatbotów. Poświęconych jej jest wiele artykułów. W skrócie można powiedzieć, że zajmuje się ona oceną strony lingwistycznej (sensowności wypowiedzi chatbota), strony pozalingwistycznej; czyli komponentówtakich jak wygląd, mimika i intonacja itp.

Tym akcentem dobrze byłoby zakończyć dyskusję o Cleverbocie i chatbotach. Pozostaje nam tylko obserwować coraz bardziej „inteligentne” boty i spoglądać w przyszłość, jak jeszcze lepiej można by je wykorzystać.

 

Rozmowa z Cleverbotem:

Ja : So now that you’ve passed the Turing test, what are you going to try and do next?
CB: I am going to continue to try and have a decent conversation with you.

Ja: Are you going to greet the people which writes articles on the tsiss.wordpress.com site?
CB: Yes

 

Źródła:
http://www.cleverbot.com/
http://www.cleverbot.com/human
http://en.wikipedia.org/wiki/Cleverbot
http://en.wikipedia.org/wiki/Chatterbot
http://en.wikipedia.org/wiki/Turing_test

Autor: Marek Gołębiowski (83690)

Październik 25, 2011

Open Government Data – semantyczne dane rządowe

- autor: tsissput

Zwiększająca się ilość danych publikowanych przez organizacje rządowe, spowodowały problemy ze skalowalnością i zarządzaniem takimi danymi. Problemem jest połączenie rozproszonych źródeł danych w jedną przezroczystą całość, tak aby dla użytkowników było to użyteczne i przejrzyste. Linking Open Government Data Portal jest open source’owym projektem opartym o technologie Semantycznej Sieci stworzonym przez zespół Tetherless World Consetllation(w skrócie TWC). Serwis ma na celu uporządkowanie i lepsze zarządzanie danymi państwowymi, które są publikowane przez organizacje rządowe oraz zaktywizowanie społeczności w tym obszarze. TWC LOGD Portal jest miejscem gdzie użytkownicy mogą aktywnie uczestniczyć w projekcie poprzez dodawanie, modyfikowanie i konwertowanie danych. OGD staje się coraz ważniejszym kanałem komunikacyjnym pomiędzy rządem a obywatelami. Korzyścią rozwoju OGD jest ograniczenie kosztów dostarczania dużych ilości zaufanych danych dla obywateli.

W sierpniu 2010 serwis miał już zgromadzone ponad 8,5 miliarda trójek RDF z 11 różnych źródeł danych, gdzie głównym źródłem było data.gov. Większość publikowanych danych rządowych jest w postaci surowej – bez formalnej struktury. Serwis TWC LOGD ma możliwość konwersji tychże danych do postaci RDF. Konwerter podczas konwersji danych, analizuje metadane oraz źródło pochodzenia dokumentów. Przechowuje także historię wersji dokumentów, nie nadpisując zawartości starych dokumentów.

Poniższy schemat przedstawia przepływ dokumentów w TWC LOGD Portal:

Dostęp do danych semantycznych jest zrealizowany na wiele sposobów. Każdy zbiór danych posiada stronę zawierającą zagregowane informacje dotyczące plików takich jak: tytuł, opis, pochodzenie. Te informacje są wprowadzane ręcznie przez użytkowników. Natomiast automatycznie generowane są m.in.: liczba trójek, linki do zasobów).

Innym sposobem dostępu do danych istnieje poprzez zapytania SPARQL. Dostępne jest narzędzie dla programistów SPARQL Proxy, dzięki któremu można wzbogacić otrzymywane wyniki o takie formaty jak JSON i tabele HTML. Następnym udostępnionym narzędziem jest LOD cache służącym do synchronizacji danych RDF.

TWC LOGD Portal jest oparty na idei Mashup. Mashup to strona sieci Web lub aplikacja, która wykorzystuje i łączy dane z dwóch lub więcej źródeł, do tworzenia nowych usług. Termin oznacza łatwą, szybką integrację, często za pomocą otwartych interfejsów API i źródeł danych do dostarczania wzbogaconych wyników, które niekoniecznie były pierwotną przyczyną do stworzenia tych nieprzetworzonych danych źródłowych.

Schemat przedstawia 4-stopniowy przepływ danych w demie „CASTNET Ozone Map”. Kroki 2-4 przedstawiają trzy poziomy mashup:

  1. Danych – aplikacje łączą dane z różnych źródeł wykorzystując zapytania SPARQL,
  2. Wizualizacji – aplikacje wykorzystują różnorodne biblioteki wizualizacji lub API takie jak Google Visualization API, MIT Simile Exhibit.
  3. Aplikacji – w których powiązane aplikacje stworzone przez różne strony, są połączone z wykorzystaniem HTTP

TWC LOGD Portal pokazuje, jak zasady Linked Data oraz technologie sieci semantycznej mogą być stosowane, aby zmniejszyć koszty i zwiększyć ponowne wykorzystanie modeli danych, linków i technik wizualizacji.

Ta koncepcja ma na celu zachęcanie deweloperów do wspólnego opracowywania modelu danych, określeniu terminów, koncepcji, tworzenia innych heterogenicznych zbiorów danych i korzystania z biblioteki ogólnej wizualizacji i interfejsów API, aby szybciej uzyskać pożądane aplikacje. Przykładowo: demko „CASTNET Ozone Map” przedstawione na poprzednim rysunku, która jest złożone z wielu źródeł danych i wykorzystującej Webowe API wizualizacyjne, powstało w ciągu zaledwie dwóch tygodni i iteracyjnie poszerzane je na przestrzeni miesiąca. Podobnie, we wrześniu 2010 r. zostały utworzone cztery wersje demonstracyjne takich stron, w celu wspierania badań Tobbaco Prevelace w projekcie PopSciGrid.

Deweloperzy nie muszą być ekspertami w technologiach semantycznych aby tworzyć LOGD mashups. Studenci w RPI’s Fall w 2009 r. stworzyli mashup za pomocą technologii semantycznych i zbiorów danych znajdujących się na TWC LOGD Portal. Poświęcając dwie godziny na wprowadzenie do podstaw RDF i SPARQL oraz metod korzystania z narzędzi do wizualizacji, takich jak Google Visualization API, każda grupa stworzyła serwis o idei Mashup w czasie krótszym niż dwa tygodnie. Podobnie, w sierpniu 2010 na warsztatach organizowanych przez Mash-a-thon, zorganizowanej po części przez TWC, mających na celu zaangażowanie deweloperów rządowych w zdobycie umiejętności korzystania z narzędzi i zbiorów danych TWC LOGD. W zaledwie dwa dni, cztery zespoły z powodzeniem stworzyło demko na bazie LOGD-mashup, wykazując przy tym niski koszt transferu wiedzy i szybkiego procesu uczenia się, związanych z zastosowaniem najlepszych praktyk TWC LOGD Portal.

Strona główna TWC LOGD Portal sama w sobie jest mashup’em danych z wielu źródeł. Jak pokazano na rysunku poniżej, zawartość paneli są oparte na zapytaniach SPARQL poprzez użycie XSLT i Google Ajax API. Poniższy schemat przedstawia TWC LOGD Portal jako dynamiczny mashup.

Zespół absolwentów i studentów stworzyli ponad 40 różnych mashup’ów i wizualizacji na TWC LOGD Portal. Te mashup’y są różnorodne. Zademonstrowano integrację danych z wielu źródeł, w tym DBpedia, New York Times API oraz z wolno dostępnych danych rządowych opublikowanych poza USA. Ponadto opracowali:

  • interfejsy na urządzenia mobilne.
  • wsparcie dla interaktywnych analiz w konkretnych dziedzinach życia takich jak: służba zdrowia, polityka i dane finansowe;
  • metody udostępniania danych za pomocą łatwo dostępnych usług sieci Web
  • narzędzia dostępu do danych
  • semantyczne narzędzia do integracji danych.

Ponieważ dane są przetwarzane, konwertowane, modyfikowane, źródło pochodzenia i inne metadane mogą zostać usunięte z pierwotnej postaci danych. Dla danych opublikowanych przez TWC LOGD Portal jest to szczególnie ważne, ponieważ dane mogą pochodzić z różnych źródeł: rządowych jak i z pozarządowych – każdy z własnym stopniem autorytetu i wiarygodności. W trakcie procesu konwersji danych przechwytuje się dane dot. pochodzenia publikowanych danych, umożliwiając użytkownikom skontrolowane ich źródła a tym samym upewnienia się co do wiarygodności otrzymanych danych produktów i aplikacji.

Odkąd TWC LOGD konwerter przechwytuje informacje pochodzenia danych i zapisuje to do Proof Markup Language (PML), użytkownicy są w stanie wydobyć informację na podstawie tych metadanych, i wykorzystywać je w swoich aplikacjach i wizualizacjach. Rysunek przedstawia wybrane TWC LOGD mashup’y i wizualizacje.

Jaka jest przyszłość portalu ?

TWC LOGD Portal reprezentuje znaczny postęp w globalnym OGD, ale istnieje wiele sposobów, w których może zostać rozszerzona funkcjonalność aby lepiej służyć LOGD społeczności. Twórcy stawiają sobie za cel aby, portal angażował użytkowników poprzez interaktywne dema, prezentacje i tutoriale z zastosowaniem sieci semantycznej technologii do integracji istotnych tematów w portalu.

Publikacja skonwertowanych danych rządowych jest krytyczną usługą portalu. Planowane jest znacznie poszerzenie zakresu danych Data.gov. W szczególności tyczy się to danych geograficznych(270.000) dla których zostaną utworzone odpowiednia demka i samouczki dla ułatwienia korzystania z nich przez społeczność LOGD.

Świat LOGD jest ogromny, reprezentowany przez dostawców, deweloperów, do urzędników, działaczy, liderów społeczności lokalnych, przeciętnych obywateli i innych. Długoterminowym celem TWC LOGD Portal jest stanie się punktem centralnym dla dyskusji nt. LOGD zagadnień, technologii i najlepszych praktyk.

Oryginalny dokument pt.: „TWC LOGD: A Portal for Linking Open Government Data” jest dostępny na stronie: http://logd.tw.rpi.edu/files/swc2010_submission_16.pdf. Wszystkie rysunki pochodzą z tego źródła.

Autor: Tomasz Maciejewski(83721)

Październik 24, 2011

Porażające eksperymenty Milgrama

- autor: tsissput

Stanley Milgram był amerykańskim psychologiem społecznym, znanym głownie za sprawą dwóch eksperymentów:

  • Świat  jest mały.
  • Posłuszeństwo wobec władzy.
Chciałbym opisać pokrótce te doświadczenia, oraz podyskutować o ideach i wnioskach z nich płynących.

Świat  jest mały.

Prawdopodobnie pierwszym nawiązaniem do idei tego eksperymentu jest wyzwanie węgierskiego autora, Frigyes Karinthy, które polegało na znalezieniu osoby, z którą by nie był połączony za pośrednictwem mniej niż pięciu osób. Milgram, który wcześniej pracował nad publikacją Contacts and Influences, gdzie został przedstawiony formalny opis mechanizmów sieci społecznościowych oraz analiza matematycznych zależności w nich występujących, podjął to wyzwanie. W efekcie został przeprowadzony eksperyment, opisany ostatecznie w magazynie Psychology Today. Doświadczenie to miało miejsce w czasach, kiedy bardzo popularne były teorie mówiące, że świat się staje coraz bardziej połączony. Doszło nawet do tego, że austriacki matematyk, Manfred Kochen, postawił niewiarygodną tezę, że w społeczeństwie wielkości amerykańskiego bez struktury społecznej jest prawie pewne, że dwie osoby mogą się ze sobą skontaktować za pośrednictwem dwóch innych osób. Co więcej, sądził, że biorąc pod uwagę całą populację świata, wystarczyłoby dodać tylko jedno połączenie.
Ponieważ przed zaplanowaniem eksperymentu należy najpierw zbudować model, za pomocą metody Monte Carlo zostały przeprowadzone symulacje społeczeństwa i stwierdzono, że niezbędne jest zdefiniowanie słabych i silnych połączeń pomiędzy osobami. Pomimo bardzo ograniczonej mocy obliczeniowej komputerów tamtych czasów (1973) pomyślnie przeprowadzone symulacje wykazały, że w Stanach Zjednoczonych istnieją 3 stopnie oddalenia pomiędzy ludźmi. Po przeprowadzeniu symulacji nadszedł wreszcie czas na właściwy eksperyment. Jego procedura składała się z 5 kroków:
  1. Wybór osób, które miały uczestniczyć w doświadczeniu. Milgram zadecydował, że punktem startowym były Omaha (Nebraska) i Wichita (Kansas), natomiast jako pukt końcowy został wybrany Boston (Massachusetts). Wybór był uzasadniony, ponieważ miasta te oddziela ogromna odległość w sensie geograficznym oraz znacznie różnią się w sensie społecznym.
  2. Koperty zawierające list opisujący eksperyment, jego cel oraz założenia, były rozesłane do wylosowanych osób z miast startowych. Koperty zawierały również podstawowe informacje o losowo wybranej osobie z miasta końcowego. Dodatkowo dołączony był formularz, na którym potwierdzało się chęć wzięcia udziału w eksperymencie, podawało swoje podstawowe dane. Formularz można było odesłać do Harvardu (czyli bazy eksperymentu) za pomocą dołączonej, zaadresowanej koperty zwrotnej.
  3. Po potwierdzeniu wzięcia udziału w eksperymencie, osoba badany była pytana, czy zna osobę z miasta końcowego. Na potrzeby eksperymentu ustalono, że znajomość jest brana pod uwagę, jeżeli osoby mówią sobie po imieniu (są na „ty”). Jeżeli odpowiedź była pozytywna, to osoba badana bezpośrednio przekazywała list do osoby końcowej.
  4. W bardziej prawdopodobnym przypadku, czyli kiedy osoby się nie znały, badany był proszony o zastanowienie się nad kimś sobie bliskim (ktoś z rodziny, dobry znajomy itp.), kto być może będzie znał końcową osobę. W tym przypadku badany przesyłał list do wybranej właśnie osoby. Odbiorca zapisywał na formularzu swoje dane oraz powtarzał procedurę (punkty 3 i 4). Oczywiście w celu umożliwienia kontrolowania listu, przesyłana była również informacja o tym do Harvardu.
  5. Kiedy list docierał do osoby końcowej, na podstawie ilości wpisów na formularzu można było określić, jaką drogę przebyła przesyłka żeby dotrzeć do celu. Dzięki zabezpieczeniu w postaci dodatkowego listu z punktu 4, można było określić miejsca ewentualnych zagubień listów, które nigdy nie dotarły do punktu końcowego.
Wyniki eksperymentu dla mnie nie są zaskoczeniem. W większości przypadków (232 z 296) listy nie były dalej przekazywane – któraś z osób w łańcuchu komunikacyjnym odmawiała wzięcia udziału w eksperymencie. Prawdopodobnie ja sam nie przesłałbym dalej takiego listu, traktując go na zasadzie spamu. Pośród pozostałych 64 listów zdarzały się łańcuchy o długości jednej lub dwóch osób, jak również były takie o długości nawet dziesięciu osób. Średnia długość ścieżki wynosiła około sześciu osób, stąd powstało nawet określenie ‚sześć stopni oddalenia’.

Badacze zwrócili uwagę na fakt, że listy zazwyczaj szybko docierały w pobliże celu, jednak często krążyły w jego otoczeniu praktycznie losową ilość razy, czekając, aż dotrą do kręgu znajomych osoby docelowej. Krytycy poddają w wątpliwość wyniki eksperymentu, ze względu na kilka czynników:
  • Osoby nie były wybierane do eksperymentu losowo, lecz same się zgłaszały na podstawie przygotowanej reklamy. Zdaniem krytyków spowodowało to, że w eksperymencie brały udział głównie osoby postrzegające się jako towarzyskie.
  • Ponieważ bardzo duża ilość listów nie docierała do celu, prawdopodobieństwo przerwania dłuższego łańcucha połączeń było znacznie wyższe – rosło z każdą kolejną osobą.
  • Osoby decydujące, kto z otoczenia może znać osobę końcową, często były niepewne i w efekcie, mogły się mylić – powodując, że list nie szedł najkrótszą możliwą ścieżką.
  • Istnieją zamknięte społeczeństwa (jako przykład podawane jest Sentinelese), które zaburzają globalne łańcuchy połączeń.
Ja sam po przeczytaniu tych argumentów bardzo sceptycznie podchodzę do wyników tego eksperymentu. Trudno mówić o wynikach przy tak małej skali doświadczenia oraz nie znając kilku więcej danych statystycznych (chociażby wariancji, która określa rozrzut), ponieważ na podstawie wartości minimalnej, maksymalnej oraz średniej trudno oprzeć jakiekolwiek przemyślenia.

Posłuszeństwo wobec władzy

Moim zdaniem drugi eksperyment jest dużo ciekawszy, ponieważ sięga do najmroczniejszych zakamarków ludzkich, ale po kolei.
Inspiracją do tego doświadczenia było pytanie zadawane sobie przez Milgrama, co skłoniło ludzi do zbrodniczych posunięć, np. w czasie Holocaustu. Nie mógł on uwierzyć, że ludzie są zdolni do takich rzeczy.
Osobie badanej przypadała rola nauczyciela, wybierana w ustawionym losowaniu. Osoba ta siadała w jednym pokoju z kontrolującym przebieg doświadczenia – naukowcem, ubranym w garnitur oraz biały fartuch. Trzecią osobą biorącą udział w eksperymencie był uczeń, który siadał w drugim pokoju. Miał on założoną elektrodę, za pomocą której miał być rażony prądem elektrycznym. Przed rozpoczęciem całego procesu nauczyciel również był rażony prądem o niewielkim napięciu, żeby mógł się przekonać o prawdziwości eksperymentu. Rolą nauczyciela było przeczytanie listy par słów, które uczeń miał zapamiętać. Następnie nauczyciel czytał od pierwsze słowa z listy, natomiast zadaniem ucznia było prawidłowe dopasowanie drugiego słowa. W razie pomyłki nauczyciel miał razić prądem o wzrastającym napięciu. Naprawdę ciekawy motywator… Oczywiście w rzeczywistości nikt nikogo nie raził prądem, lecz cała otoczka spełniała swoje zadanie i osoba badana była przekonana, że faktycznie coś takiego ma miejsce. Po każdym ukaraniu ucznia były odtwarzane krzyki bólu i prośby o zaniechanie dalszego działania. Naukowiec, pełniący rolę autorytetu, spokojnym głosem kazał zawsze kontynuować eksperyment i zwiększać napięcie. W razie wątpliwości mówił, że uczniowi nie stanie się żadna trwała szkoda. Celem całego przedsięwzięcia było sprawdzenie, ile osób ulegnie autorytetowi i nie zaprzestanie krzywdzenia niewinnej osoby. Milgram początkowo planował wykonać doświadczenie w Stanach Zjednoczonych oraz Niemczech, żeby udowodnić po II Wojnie Światowej, że Niemcy są znacznie bardziej podatni na wpływ autorytetu. Przewidywano, że jedynie około 10% osób doprowadzi eksperyment do końca, natomiast 90% przerwie tortury. Wyniki bardzo zaskoczyły autora – okazało się, że nie ma potrzeby powtarzania eksperymentu w Niemczech – 65% badanych osób zaaplikowało uczniowi 450V porażenie prądem, które w rzeczywistości byłoby śmiertelne.

W tym momencie pojawia się pytanie o siłę autorytetu, potęgę władzy. Do czego zdolni są ludzie, jeżeli nieznana im osoba ubrana w garnitur i fartuch naukowca krótkimi, zdawkowanymi zdaniami wypowiadanymi spokojnym tonem, przekonała do potencjalnej egzekucji? Ja nie chcę znać odpowiedzi na to pytanie, historia pokazuje zbyt wiele przykładów na ten temat. Każdy czytając ten tekst na pewno myśli sobie „ja na pewno od razu bym przerwał eksperyment, mną nie można manipulować”. Błąd – statystyki są nieubłagalne, one nie kłamią. Oczywiście posiadając wiedzę na temat eksperymentu nietrudno byłoby odpowiednio zareagować, jednak uważam, że trudno obiektywnie ocenić swoje zachowanie posiadając już taki background.

Oczywiście eksperyment powtarzany był wielokrotnie w różnych miejscach na świecie, jednak w znakomitej większości przypadków ilość przerwanych eksperymentów nie była większa niż 50%. Na deser prezentuję krótki filmik, gdzie można obejrzeć relację ze współczesnej wersji doświadczenia, przeprowadzonej w 2006 roku:

źródła:

http://en.wikipedia.org/wiki/Stanley_Milgram

http://en.wikipedia.org/wiki/Milgram_experiment

http://en.wikipedia.org/wiki/Small_world_phenomenon

Autor: Piotr Starobrat (79415)

Październik 23, 2011

Życie i twórczość Jacoba Moreno

- autor: tsissput

Jacob Moreno był wiodącym psychiatrą, psychologiem, myślicielem i wychowawcą. Wymyślił psychodramę i socjometrie. Jest uznawany za pioniera psychoterapii grupowej. Jest szeroko rozpoznawany, jako jeden z założycieli dyscypliny analiza sieci społecznych, odłamu socjologii, która zajmuje się ilościową oceną poszczególnych ról w grupie lub społeczności, oraz analiz sieci połączeń między nimi.
Przodkowie Moreno pochodzili się z Hiszpanii. Po wydaniu dekretu alhambryjskiego (dotyczącego wygnania żydów) musieli wyemigrować. Osiedlili się w Konstantynopolu, skąd pochodził dziadek Jacoba – Buchis. Opuściwszy Konstantynopol przodek Jacoba zamieszkał w Pleven w Bułgarii, gdzie w 1856 roku doczekał się syna. W wieku 32 lat ojciec Jacoba ożenił się z dużo młodszą od siebie Pauliną Iancu, która również należała do grupy sefardyjskich żydów. Podczas wojny Rosyjsko-Tureckiej Moreno opuścili Pleven i osiedlili się w Bukareszcie. Tam w 19 maja 1899 roku urodził się Jacob. W czasach wielkiej twórczości intelektualnej i zawirowań politycznych cała rodzina wyprowadziła się z Bukaresztu.

W 1895 roku, zamieszkali w Wiedniu, gdzie młody Moreno zaczął studiować medycynę, matematykę i filozofię na Uniwersytecie Wiedeńskim. W 1912 roku uczęszczał na wykłady Zygmunta Freuda słynnego wówczas badacza ludzkiego umysłu. W swojej autobiografii Jacob wspomina spotkanie z Freudem,
kiedy to wykładowca wyróżnił go z tłumu i zapytał o jego badania. Moreno odpowiedział:

“Well, Dr. Freud, I start where you leave off. You meet people in the artificial setting of your office. I meet them on the street and in their homes, in their natural surroundings. You analyze their dreams. I give them the courage to dream again. You analyze and tear them apart. I let them act out their conflicting roles and help them to put the parts back together again.”
W teorii psychoanalizy Freuda, podstawą jest koncepcja struktury osobowości. Według niego, nasza osobowość składa się z trzech elementów: id, ego i superego. Każdy z nich ma własną dynamikę, mechanizmy i funkcje, jednak działają one tak blisko siebie, że trudno je rozdzielić. Upraszczając, oznacza to, że na każde nasze zachowanie wpływ ma zarówno id jak i pozostałe elementy. Struktura osobowości.

  • Id to pierwotna energia, która zasila pozostałe systemy. Jego celem jest zachowanie optymalnego poziomu energii w organizmie. Jeśli więc jest jej zbyt dużo, id dąży go tego, aby ją rozładować. Id bywa nazywane naturalnym popędem, albo też wewnętrznym dzieckiem, działa, bowiem właśnie jak dziecko, które chce unikać przykrości i dążyć do przyjemności.
  • Ego to element kontaktujący się ze światem zewnętrznym. To ego wie, co trzeba zrobić, aby osiągnąć zadowolenie i obniżyć poziom energii. Ego jest w stanie odróżnić to, co jest rzeczywiste i istnieje w świecie zewnętrznym od tego, co znajduje się jedynie w wyobraźni człowieka. Ego decyduje o działaniu i o tym, na jakie bodźce nastąpi reakcja organizmu. Można je przyrównać do dorosłego, który wie, co trzeba zrobić i w jaki sposób, aby osiągnąć dany cel.
  • Superego nazywane jest sumieniem lub poziomem społecznym. Przechowuje ono wszystkie nakazy i zakazy społeczne, moralne, prawne. Superego hamuje nieakceptowane społecznie impulsy id i dąży do doskonałości w rozumieniu wpojonych człowiekowi wartości i zasad.

Wszystkie trzy elementy osobowości współpracują ze sobą, tworząc jedną spójną strukturę, która powoduje, że jesteśmy tacy, jacy jesteśmy.
Jacob  nie zgadzał się z tymi teoriami i całkowicie je odrzucając rozpoczął właśnie badania, nad porzuconymi wcześniej przez Freuda relacjami międzyludzkimi. Zainteresował się również potencjałem drzemiącym w tworzeniu grup terapeutycznych. W 1917 roku uzyskał tytuł doktora, pod kierunkiem psychiatry, którym był Otto Petzel.

Badania Moreno w połączeniu z jego zamiłowaniem do teatru bardzo szybko doprowadziły do zainteresowania się możliwościami ekspresji oferowanej przez sztuki dramatyczne. Moreno zaczął także eksperymentować w poszukiwaniu nowych metod terapeutycznych łącząc skuteczność improwizacji i katharsis. Na podstawie swoich badań stworzył w 1920 roku „teatr eksperymentalny. Zapraszając uczestników do dołączenia do przedstawienia, w których będą one odgrywać różne role, Moreno chciał uwrażliwić każdego odgrywającego na różne aspekty własnej osobowości i aspekty osobowości ich partnerów. Miało to otworzyć drogę do twórczej spontaniczności i ekspresji własnych emocjonalnych możliwości.
W 1925 roku Jacob Moreno przeprowadził się do Nowego Jorku. Objął stanowiska w Columbia University i New School for Social Research. Przez pewien czas spierano się o jego dokładną datę urodzenia (1899 czy 1892), gdyż przyjeżdżając do Stanów przedstawił się, jako o 3 lata młodszy. W Nowym Jorku kontynuował prace nad swoimi badaniami. Ogromna metropolia, będąca zlepkiem narodowości dawało Moreno mnóstwo swobody i stanowiło świetne źródło badań..

W 1932 roku dr Moreno przedstawił psychoterapię grupową przed American Psychiatric Association
(międzynarodowe stowarzyszenie skupiające psychiatrów). Zwiększając intensywność badań nad relacjami międzyludzkimi wprowadził terapię grupową do więzień. Sformułował podstawy socjometrii, które zamieścił w swojej książce „Who Shall Survive” wydanej w 1934 roku. W książce opisane są techniki, służące
do obiektywnego opisu relacji w grupach, oraz różnych aspektów interakcji. W książce Moreno przyjął krytyczny stosunek do psychoanalizy, nie negując jednocześnie jej przydatności. W książce znajduje się jedno z najwcześniejszych graficznych przedstawień sieci społecznych – socjogram.
Przez następne 40 lat udoskonalał swoje teorie na temat stosunków międzyludzkich,oraz opracowywał narzędzia
dla nauk społecznych:

  • socjodramę,
  • psychodramę,
  • socjometrie.

W 1947 roku wydał monografie pt. „The Future of Man World” opisującej, jak rozwijając osiągnięcia autora, aby przeciwdziałać ekonomicznemu materializmowi Marksa, psychologicznemu materializmowi Freuda i technologicznemu materializmowi naszych współczesnych czasów.

W autobiografii Moreno opisane są następujące zasady dotyczące grup:

  • Spontaniczność i kreatywność są siłą napędową w rozwoju ludzkości, stojącą ponad niezależnym libido i socjometrycznymi motywami, które przeplatają się z tymi pierwszymi. Spontaniczność i kreatywność mogą być jednak pochodnymi niezależnego libido i socjometrycznymi motywami.
  • Miłość i wzajemne dzielenie się są potężne i niezbędne zasadami w życiu grupy, dlatego konieczne jest, pokładanie wiary w intencje innych, wiary wykraczającej poza posłuszeństwo wynikające z przymusu fizycznego, lub legalistycznego.
  • Super dynamiczna społeczność bazująca na powyższych zasadach może być wprowadzona do realizacji przez stosowanie nowych technik.

W 1950 roku Jacob Moreno stworzył międzynarodowy komitet dla grup psychoterapii w Paryżu, a w 1965 zorganizował pierwszą na Świecie Konferencję Psychodramy. W późniejszych latach jego metody socjometryczne osiągnęły wielki sukces w Stanach i Europie.
Po długiej chorobie Moreno zmarł 14 Maja 1974 Roku Nowym Jorku, wieku 84 lat. Wybrał śmierć przez powstrzymanie się od jakiegokolwiek pokarmu i wody. Na jego życzenie, epitafium nagrobku brzmi: „człowiek, który wniósł śmiech do psychiatrii”.
Ostatnie badania prowadzone przez Roberta Waldl’a z Uniwersytetu w Wiedniu pokazują ogromny wpływ teorii Moreno odnośnie dzieło „Ja i Ty” Martina Bubera.
Istnieje wiele ośrodków szkoleniowych i instytucji skupiających wiele tysięcy studentów.
Dr Zerka Moreno, żona Jacoba kontynuuje jego prace do dziś.

Źródła:

Marcin Hajder
Październik 23, 2011

Na czym polega idea otwartej nauki: OpenScience Project

- autor: tsissput

Ruch otwartej nauki jest to ruch społeczny, działający na rzecz otwarcia nauki, a szczególnie wolnego, darmowego dostępu do wyników badań i publikacji naukowych. Optuje on także za otwartym dostępem do surowych danych badawczych, otwartym modelem prowadzenia badań oraz wykorzystaniem w sferze nauki nowych form komunikacji sieciowej – tak zwaną Naukę 2.0.

Micheal Nielsen wielki orędownik ruchu otwartej nauki, na konferencji TEDxWaterloo przedstawił początki tej idei w latach 90 ubiegłego wieku, w projekcie poznawania ludzkiego genomu. W ramach projektu stworzono strony internetowe, na których biolodzy mogli umieszczać wyniki swoich prac i dzielić je z innymi naukowcami. Przykładem takiej strony może być GenBank. Bez współpracy wielu naukowców nie można by dzisiaj uznać tego projektu za wielki sukces.

Innym udanym zastosowania otwartej nauki był projekt matematyczny Polymath stworzony przez Timothy’ego Gowersa. Projekt ten powstał jako odpowiedź na pytanie: czy masowa współpraca w dziedzinie matematyki jest możliwa?, korzystając z mechanizmu komentarzy blogu dla stworzenia przestrzeni do współpracy w sformułowania nowego kombinatorycznego dowodu dla teorii Halesa-Jewetta. Dzięki pracy 40 osób po 7 tygodniach Gowers ogłosił, że problem został „prawdopodobnie rozwiązany”. Sukces projektu Polymath doprowadził do napisania i opublikowania przynajmniej dwóch nowych prac naukowych.

Jednak nie wszystkie projekty stworzone w duchu otwartej nauki były tak udane. W Internecie można znaleźć wiele prób stworzenia naukowych wyspecjalizowanych odpowiedników Wikipedii, obecnie wymarłych, gdyż nie znalazło się dostatecznie dużo osób, które wniosły by nich swój wkład w postaci napisania artykułów. Podobnie sprawa wyglądała w przypadku tworzenia naukowych sieci społecznościowych na kształt Facebooka, w których naukowcy mogliby się wymieniać pomysłami, danymi czy kodem. Mimo, iż pomysł wydawał się bardzo dobry, takie sieci z reguły świeciły pustkami.

Dlaczego te obiecujące pomysły zawiodły?

Obecnie pracę większości naukowców można określić jako tworzenie „zamkniętej” nauki. Produktywność naukowców jest mierzona liczbą prac publikowanych w renomowanych czasopismach, a znaczenie prac naukowych jest określane liczbą ich cytowań. Obie te miary pomagają ustalić zasady finansowania i kryteria awansu w większości instytucji, natomiast wdrażanie otwartej nauki jest dla tych miar szkodliwe. Czas spędzony na przygotowanie kodu programów do wydania lub pisanie postów na blogu jest uważany za stracony czas, w którym można było napisać artykuł do czasopisma lub rozprawę naukową.

Dlaczego w takim razie projekty takie jak Polymath odniosły sukces, co je różniło od nieudanych projektów?

Tajemnicą ich sukcesu było to, że mimo wykorzystania niekonwencjonalnych środków w celu rozwiązania problemów, czyli współpracy wielu osób, wykorzystania możliwości otwartej nauki, ostatecznie osiągały one konwencjonalne zakończenie w postaci opublikowania prac naukowych.

Michael Nielsen zdefiniował także nieformalną definicję otwartej nauki:

Idea otwartej nauki głosi, że wiedza naukowa z wszystkich dziedzin powinna być otwarcie dzielona z innymi tak szybko jak staje się stosowalna w procesie odkrywania.

Idei otwartej nauki przyświecają cztery podstawowe cele:

  • Przejrzystość metod eksperymentalnych, obserwacji i gromadzenia danych.
  • Publiczna dostępność i możliwość ponownego wykorzystanie danych naukowych.
  • Publiczna przystępność i przejrzystość komunikacji pomiędzy naukowcami.
  • Użycie webowych narzędzi w celu ułatwienia naukowej współpracy.

Idea otwartej nauki może być realizowane poprzez:

  • tworzenie i rozbudowywanie narzędzi wspomagających otwartość w nauce;
  • zwiększanie dostępności zasobów naukowych – publikacji, zbierania danych, materiałów dydaktycznych itd.;
  • ujednolicenie systemu dostępu do wiedzy naukowej poprzez integrację i ujednolicanie rozproszonych zbiorów;
  • promowanie otwartych form dystrybucji wiedzy;
  • wypracowanie i wprowadzanie rozwiązań systemowych na rzecz otwartej nauki.

Jednym ze sztandarowych projektów ruchu otwartej nauki jest Projekt OpenScience, który został stworzony w celu pisania i wypuszczania wolnego oprogramowania naukowego Open Source. Na stronie projektu znajduje się repozytorium linków do oprogramowania z różnych dziedzin wiedzy oraz blog kierownika projektu Dana Gezeltera. Większość prac badaczy zależy od posiadania odpowiednich narzędzi do analizy danych doświadczalnych oraz interakcji z modelami teoretycznymi. Wydajne komputery są obecnie na tyle tanie, że znaczna moc obliczeniowa jest w zasięgu wielu ludzi. Brakującym elementem jest oprogramowanie, dlatego głównym celem Projektu OpenScience jest udostępnienie narzędzi, które pozwolą naukowcom wybrać pomiędzy modelami i zrozumieć swoje obserwacje.

Obecnie istnieje 6 powiązanych projektów z Projektem OpenScience:

  • Zbieranie linków i zapewnienie miejsca dla przechowywania projektów oprogramowania naukowego Open Source.
  • Orędownictwo na rzecz rozproszonego modelu badań naukowych.
  • OpenMD otwarta implementacja programu do dynamiki molekularnej do użytku w przemyśle chemicznym i symulacjach biochemicznych.
  • Jmol Open Source’owy oparta na Java/Swing przeglądarka do dynamiki molekularnej.
  • JChemPaint Open Source’owy oparty na Java/Swing edytor struktury molekularnej.
  • LinkViewer Open Source’owa kolekcja skryptów powłoki, plików html, PHP3 odpowiedzialna za zarządzanie hierarchicznymi drzewami linków.

Warto sobie zadać pytanie jak wygląda ruch otwartej nauki w Polsce?

Najaktywniejszym ośrodkiem w Polsce działającym na rzecz otwartej nauki jest Interdyscyplinarne Centrum Modelowania Matematycznego i Komputerowego Uniwersytetu Warszawskiego (ICM UW).
ICM UW jest zaangażowane w m. in. następujące projekty związane z otwartą nauką:

Platforma Yadda

  • Repozytorium Yadda. Repozytorium gromadzące różnorodne cyfrowe zasoby naukowe (kolekcje Elsievier Science, BazTech, BazHum, AGRO, Biblioteka Wirtualna Matematyki) we wspólnym, zintegrowanym systemie, działającym na platformie YADDA.
  • Oprogramowanie Yadda. Informacje o systemie YADDA i programie DeskLight.

Polskie bazy danych

  • Baza BazTech. Bibliograficzno – abstraktowa baza danych rejestrująca artykuły z polskich czasopism z zakresu nauk technicznych oraz z wybranych czasopism z zakresu nauk ścisłych i ochrony środowiska.
  • Baza BazHum. Bibliograficzna baza danych zawartości polskich czasopism z zakresu nauk humanistycznych i społecznych.
  • Baza Agro. Bibliograficzna baza danych rejestrująca artykuły z polskich czasopism z zakresu nauk przyrodniczych, rolniczych i technicznych.
  • Polish Scientific Journal Contents. Bibliograficzno – abstraktowa baza danych rejestrująca artykuły z polskich czasopism naukowych z z zakresu nauk przyrodniczych.
  • The Central European Journal of Social Sciences and Humanities. Elektroniczne czasopismo publikujące angielskie streszczenia artykułów i rozpraw z czasopism z zakresu nauk społecznych i humanistycznych, wydawanych w Europie Środkowej.

Zasoby pełnotekstowe

  • Zasoby polskie ICM. Kolekcja wybranych książek z zakresu humanistyki i nauk społecznych, zdigitalizowana w roku 2007.
  • Otwórz książkę. Cyfrowa kolekcja współczesnych książek naukowych, udostępnionych przez autorów na licencjach Creative Commons.
  • BWN – Kolekcja nauk przyrodniczych. Pełnotekstowa baza danych, przechowująca artykuły z polskich czasopism naukowych z zakresu nauk przyrodniczych.
  • Biblioteka Wirtualna Matematyki. Pełnotekstowa baza danych, przechowująca bieżące i archiwalne artykuły z polskich czasopism matematycznych.
  • Słownik Geograficzny Królestwa Polskiego. „Słownik geograficzny Królestwa Polskiego i innych krajów słowiańskich” w wersji elektronicznej, z możliwością przeszukiwania pełnego tekstu.

Michael Faraday dał kiedyś swojemu młodszemu koledze radę: „Pracuj. Kończ. Publikuj” (ang. „Work.” Finish. Publish.”). Ta rada musi zmieniona, nie powinno wystarczać aby tylko opublikować swoją pracę. Jeśli chcemy aby idea otwartej nauki rozkwitła, powinno się zwiększyć oczekiwania do „Pracuj. Kończ. Publikuj. Wydawaj.” (ang. „Work. Finish. Publish. Release.”). Badania nie powinny być uznane za zakończone jeśli dane i metadane nie zostaną umieszczone w sieci dla użytku innych osób oraz jeśli kod nie zostanie odpowiednio udokumentowany i udostępniony a także dopóki komentarze nie zaczną się pojawiać na blogu ogłaszającym prace naukową. Jeśli ogólne oczekiwania co do znaczenia frazy: zakończyć projekt zostaną podniesione do tego poziomu, to społeczność naukowców zacznie wykonywać te czynności jako oczywiste.

Autor: Zbigniew Grudziński (84801)

Październik 23, 2011

Dane semantyczne – rozwiązania bazodanowe

- autor: tsissput

Codziennie jest publikowane dziesiątki gigabajtów danych w Internecie. Większość z nich jest chaotyczna, nieuporządkowana a co za tym idzie – o małej użytecznej wartości, czyli mówiąc potocznie – są to po prostu dla nas śmieci. Dla zwiększenia efektywności przeszukiwania danych stworzono format XML, który miał na celu pewne usystematyzowanie danych, opisaniu ich struktury. Format ten stał się on standardem opisu dokumentów w różnych dziedzinach. Jednakże, to było za mało, aby system mający do dyspozycji dane w takim formacie, mógł być ekspertem – potrafiącym wnioskować i udzielać odpowiedzi na złożone zapytania. Formatowi XML brakowało semantycznych znaczeń i powiązań pomiędzy danymi. W celu uzupełnienia tego braku, opracowano format RDF, dzięki któremu dane „otrzymały” nowe znaczenie. Format ten umożliwia zdefiniowanie różnorakich relacji pomiędzy danymi. Dzięki stworzeniu takiej mapy powiązań, system może wnioskować nowe informacje, które są nie-wprost zawarte w jego bazie danych. Do przeszukiwania interesujących nas informacji, niezbędne są mechanizmy wyodrębniające te dane. Tak jak dla formatu XML opracowano języki zapytań XPath i XQuery eksplorujące dane, tak dla RDF opracowano technologię SPARQL. Obie te technologie są rekomendowane przez organizację W3C do tworzenia Semantycznej Sieci.

Jest wiele na rynku dostępnych frameworków do zarządzania danymi semantycznymi. Poprzez dostarczany interfejs programistyczny, mogą zostać skonfigurowane pod różne dostępne relacyjne SZBD. Istnieją także bazy danych, zapewniające wsparcie dla technologii RDF. Dzięki temu można połączyć zalety relacyjnego schematu baz danych dołączając dane semantyczne z zachowaniem pożądanej wysokiej wydajności. Ma to duże znaczenie – dane semantyczne mogą dochodzić w bilionach trójek RDF i ich przetwarzanie powinno być możliwie jak najefektywniejsze.

W tej części zostaną przedstawione opisy architektur oprogramowań semantycznych. Nie zabraknie też testów wydajności przeszukiwania na różnych ilościach danych. Te rozwiązania to m.in.:

  • AllegroGraph
  • Jena
  • Open Anzo
  • Oracle Semantic Technologies
  • Sesame

AllegroGraph został stworzony przez firmę Franz Inc. założoną w 1984 r. Oprogramowanie jest dostępne na dwóch licencjach: bezpłatnej – z maksymalnym limitem 50 mln trójek RDF oraz komercyjnej – bez żadnych ograniczeń. Aplikacja ma zamknięte źródła, więc nieznany jest sposób przechowywania danych semantycznych. Wszystkie operacje na danych jak przechowywanie i przetwarzanie jest realizowane wewnątrz AllegroGraph, tak więc nie jest wymagane posiadanie zewnętrznych SZBD czy innych oprogramowań do działania systemu. SPARQL jest wykorzystywany jako język zapytań, ale istnieje także możliwość bezpośredniego dostępu do trójek przez niskopoziomowy interfejs. Dostęp do API jest możliwy poprzez języki takie jak C#, Java, Python, Lisp. Istnieje także możliwość dostępu do AllegroGraph poprzez protokół HTTP. Poniższy schemat przedstawia architekturę Klient – Serwer tego systemu.

Jena została stworzona przez firmę HP w wydziale HP Labs powstałym w 1966 roku. Projekt został zaimplementowany w języku JAVA i wydany na licencji typu open source. Jena może współpracować z wieloma relacyjnymi bazami danych takich jak MySQL, PostgreSQL czy Oracle. Jest także możliwość trzymania danych RDF w pamięci. Do wyłuskiwania danych wykorzystywany jest język zapytań SPARQL, który został zaimplementowany w pakiecie ARQ. Zapytania mogą być wykonywane poprzez wbudowany w Framework graficzny interfejs Joseki, lub aplikację Java. API pozwala na współpracę z ontologiami w różnych formatach takich jak OWL czy RDFS. Rdzeń Jeny udostępnia metody na tworzenie, modyfikację, odczyt i zapis danych RDF. Poniższy schemat przedstawia architekturę Jeny.

Open Anzo został stworzony przez firmę IBM i wydany na licencji typu open source co umożliwia na rozszerzanie projektu o pożądane funkcjonalności. Możliwe są 3 tryby działania: osadzenie w aplikacji, uruchomienie jako zdalny serwer lub lokalnie. Poniższy schemat przedstawia architekturę Open Anzo.

Patrząc od góry: warstwa Anzo Client Stack zapewnia interfejs programistyczny dla takich języków jak Java, C#, JavaScript. Moduł Anzo Node API służy do opisu danych RDF. Standardową technologią do wykonywania zapytań jest SPARQL, wykorzystując indeksy w celu zwiększenia efektywności przetwarzania. Komponent RealTime Update Manager jest odpowiedzialny za dostarczanie wiadomości o stanie przetwarzania. Z kolei Storage Services zajmuje się magazynem danych RDF, którym może być relacyjna baza danych jak Oracle bądź DB2.

Oracle – każdy zapewne kojarzy firmę Oracle, która od 30 lat tworzy rozwiązania bazodanowe. W niedawnym czasie dodała obsługę dla danych semantycznych do swoich baz 10g i 11g. Powstały specjalne wersje Jena Adapter dedykowane do nich. Poniższy schemat obrazuje zastosowane rozwiązania:

Oracle zapewnia wsparcie dla ogromnych ilości trójek RDF poprzez SPARQL, który jest podobny do SQL. Dzięki temu można łączyć dane relacyjne z danymi semantycznymi używając jednego rodzaju zapytania. Pełne wsparcie dla SPARQL jest możliwe poprzez Jena Adapter. Oracle postarał się o zaawansowane metody kompresji, do zredukowania objętości danych semantycznych.

Producentem Sesame jest Aduna. Została napisana w Javie i wydana na licencji open source typu BSD. Poniższy schemat przedstawia architekturę Sesame.

Patrząc od dołu: Warstwa RDF Model implementuje podstawowe założenia dot. danych RDF. Komponent Rio(RDF I/O) jest odpowiedzialny za parsowanie i obsługę zapisu danych RDF. SAIL API(Storage and Inference Layer API) – służy do inicjalizacji, wykonywaniu zapytań i modyfikowaniu danych RDF. Repository API – jest repozytorium adresów. Moduł HTTPRepository jest odpowiedzialny za zdalne połączenie z serwerem Sesame przez protokół HTTP.

Do wsparcia ontologii OWL jest dostępna wtyczka BigOWLIM. Poza obsługą SPARQL’a, Sesame posiada alternatywny rodzaj interpretera zapytań: SeRQL(Sesame RDF Query Language). Poza znanymi formatami RDF (N3, N – triples, RDF/XML) wspiera nowe rodzaje takie jak: TriG oraz TriX.

Poniższa tabelka przedstawia zebrane cechy architektur powyższych rozwiązań:

Nazwa Język progr. Język zapytań Typ magazynu Licencja
AllegroGraph Lisp SPARQL -natywne komercyjna
Jena Java SPARQL -pamięć-natywne

-RDBMS

Open source
Open Anzo Java SPARQL -RDBMS Eclipse Public License
Oracle Semantic Technologies Java SPARQL -RDBMS BSD
Sesame Java SPARQLSeRQL -pamięć-natywne

-RDBMS

BSD

Teraz przyszedł czas przetestować te rozwiązania.

Oprogramowanie:

  • AllegroGraph 3.3.1
  • Jena SDB 1.1
  • Open Anzo 3.1.0
  • Oracle Semantic Technologies (Jena Adapter 2.0)
  • Sesame 2.2.4

Sprzęt:

  • LAN 1Gbps
  • Intel Xeon 3,8GHz
  • 6GB Ram
  • 2x 136GB Ultra320-SCSI HDD

Dane testowe:

  1. 100 000 trójek N3 (10,3 MB)
  2. 1 000 000 trójek N3 (107MB)
  3. 5 000 000 trójek N3 (538 MB)

Zapytania oraz dane zostały wygenerowane przez benchmark SP2B, wykorzystując szereg konstrukcji znanych z SQL takich jak: DISTINCT, LIMIT, UNION i inne. Poniższe wykresy przedstawiają wyniki testów:

Wyniki testów przedstawiają dużą różnorodność czasów wykonania. Przy większej ilości danych, AllegroGraph przekraczał dopuszczalny limit (1000000 ms). Tak duże zróżnicowanie spowodowane jest m. in. strukturą tabel jakie tworzą poszczególne Frameworki przy imporcie danych RDF. Sesame stworzył od 70-90 tabel(w zależności od ilości danych), gdzie podczas Jena tylko 4 tabele. W zapytaniach wykorzystujących SQL’owe konstrukcje typu Join, Jena ma dużą przewagę wydajnościową. Oracle korzysta z Jena Framework tak więc struktury danych mają identyczne. Po krótkim przeanalizowaniu wszystkich testów, widać że najlepiej sobie radzą Jena oraz Oracle. W przypadku zamiaru przechowywania dużych ilości danych i oczekiwaniu szybkiego ich przetwarzania, najlepiej wybrać, któryś z tych dwóch produktów.

Oryginalny dokument pt.: „Evaluation of Current RDF Database Solutions” jest dostępny na stronie: http://ceur-ws.org/Vol-539/paper_7.pdf. Wszystkie rysunki pochodzą z tego źródła.

Autor: Tomasz Maciejewski(83721)