ABONAMENTE VIDEO REDACȚIA
RO
EN
NOU
Numărul 149
Numărul 148 Numărul 147 Numărul 146 Numărul 145 Numărul 144 Numărul 143 Numărul 142 Numărul 141 Numărul 140 Numărul 139 Numărul 138 Numărul 137 Numărul 136 Numărul 135 Numărul 134 Numărul 133 Numărul 132 Numărul 131 Numărul 130 Numărul 129 Numărul 128 Numărul 127 Numărul 126 Numărul 125 Numărul 124 Numărul 123 Numărul 122 Numărul 121 Numărul 120 Numărul 119 Numărul 118 Numărul 117 Numărul 116 Numărul 115 Numărul 114 Numărul 113 Numărul 112 Numărul 111 Numărul 110 Numărul 109 Numărul 108 Numărul 107 Numărul 106 Numărul 105 Numărul 104 Numărul 103 Numărul 102 Numărul 101 Numărul 100 Numărul 99 Numărul 98 Numărul 97 Numărul 96 Numărul 95 Numărul 94 Numărul 93 Numărul 92 Numărul 91 Numărul 90 Numărul 89 Numărul 88 Numărul 87 Numărul 86 Numărul 85 Numărul 84 Numărul 83 Numărul 82 Numărul 81 Numărul 80 Numărul 79 Numărul 78 Numărul 77 Numărul 76 Numărul 75 Numărul 74 Numărul 73 Numărul 72 Numărul 71 Numărul 70 Numărul 69 Numărul 68 Numărul 67 Numărul 66 Numărul 65 Numărul 64 Numărul 63 Numărul 62 Numărul 61 Numărul 60 Numărul 59 Numărul 58 Numărul 57 Numărul 56 Numărul 55 Numărul 54 Numărul 53 Numărul 52 Numărul 51 Numărul 50 Numărul 49 Numărul 48 Numărul 47 Numărul 46 Numărul 45 Numărul 44 Numărul 43 Numărul 42 Numărul 41 Numărul 40 Numărul 39 Numărul 38 Numărul 37 Numărul 36 Numărul 35 Numărul 34 Numărul 33 Numărul 32 Numărul 31 Numărul 30 Numărul 29 Numărul 28 Numărul 27 Numărul 26 Numărul 25 Numărul 24 Numărul 23 Numărul 22 Numărul 21 Numărul 20 Numărul 19 Numărul 18 Numărul 17 Numărul 16 Numărul 15 Numărul 14 Numărul 13 Numărul 12 Numărul 11 Numărul 10 Numărul 9 Numărul 8 Numărul 7 Numărul 6 Numărul 5 Numărul 4 Numărul 3 Numărul 2 Numărul 1
×
▼ LISTĂ EDIȚII ▼
Numărul 4
Abonament PDF

Semantic Web scurtă introducere

Alina Dia Miron, Ph. D.
Semantic Web Expert
@Recognos Romania



PROGRAMARE

Web-ul Semantic este o extensie a Web-ului actual ce permite descrierea formală a resurselor existente pe Internet (pagini Web, documente text şi multimedia, baze de date, servicii etc). Dintre avantajele acestuia se impune ca principală identificarea rapidă și precisă a resurselor relevante pentru utilizator precum şi exploatarea automată a resurselor de către agenţii inteligenţi. Ideea de Web Semantic a apărut în urmă cu aproximativ 15 ani şi a fost introdusa de către Tim Berners-Lee, inventatorul Web-ului . Nevoia din care s-a născut ideea de Web Semantic poate fi explicată foarte uşor printr-un exemplu.

Să presupunem că un utilizator doreşte să afle informaţii despre un agent software, entitate din Inteligenţa Artificială care observă şi acţionează într-o lume definită cu scopul atingerii unui obiectiv. Prin executarea unei căutări a sintagmei agent software într-unul dintre motoarele de căutare cunoscute (Google, Bing, Ask, Yahoo etc), se returnează documentele în care au fost identificate cuvintele introduse în interogare. Dezavantajul motoarelor de căutare actuale este că funcţionează pe bază de string matching - cu alte cuvinte identifică cuvinte specificate în query într-un corpus de documente ţintă, astfel că sunt returnate documentele în care se găseşte cel puţin unul dintre cele două cuvinte din exemplul nostru. Totuşi subiectul acestor documente s-ar putea să nu fie cel de interes pentru utilizator. Prin urmare utilizatorul este nevoit să parcurgă şi să sorteze manual rezultatele pentru a extrage doar acele documente care îl interesează. În schimb, un motor de căutare semantic ar lua în considerare întreaga sintagmă, prin urmare conceptul de agent software şi nu stringul corespondent şi ar returna doar rezultatele care sunt relevate pentru utilizator. Rezultatul unei astfel de interogări semantice ar fi o descriere a conceptului de agent software în termeni de proprietăţi pe care acest concept le are şi eventual o listă de exemple. Putem duce acest raţionament şi mai departe şi să ne imaginăm un motor de căutare semantic care să răspundă la întrebări de genul : Care sunt universităţile din regiune în a căror curiculă sunt incluse cursuri despre agenţi software ?

Arhitectura Web-ului Semantic: Semantic Web Layer Cake

Web-ul Semantic poate fi văzut ca o suită de tehnologii, foarte sugestiv organizate de Tim Berners-Lee într-o piramida cunoscută sub numele de layer cake, ilustrată în Figura 1.

img5_1.jpg

Figura 1. Semantic Web Layer Cake

La baza piramidei găsim standardul Unicode folosit în reprezentarea şi manipularea textului în diferite limbi precum şi standardul de construcţie a URI-urilor, util pentru identificarea resursele publicate pe Web (documente multimedia, pagini Web, bloguri etc.). În prezent, standardul de facto pentru descrierea şi transferul de date pe Web este XML, care însa prezintă o serie de limitări. Printre acestea, putem aminti lipsa unei semantici formale a Schemelor XML, care face greoaie cumunicarea între aplicaţii sau servicii care nu partajează aceeaşi schemă sau aceeaşi interpretare a unei scheme. Din dorinţa de a adăuga un anumit nivel de semantică limbajului XML s-a născut limbajul RDF, un limbaj de descriere a resurselor folosind triplete de tipul , asambalate în structuri asemănătoare grafurilor. Pentru a organiza resursele şi proprietăţile într-o ierarhie de tipuri se foloseşte RDF Schema. Limbajul OWL extinde limbajul RDF(S) introducând o serie de constructori mai avansaţi care permit descrieri mai expresive decât cele posibile folosind triplete RDF(S). OWL permite de asemenea definirea de constrângeri asupra proprietăţilor cum ar fi constrângerile de cardinalitate, restricţiile de valori sau impunerea unor caracteristici predefinite pentru proprietăţi (i.e. tranzitivitate, simetrie etc.). De remarcat este faptul că limbajele RDF(S) şi OWL au la bază teoria logicilor de descriere, ceea ce garantează o interpretare semantică non-ambiguă a declaraţiilor făcute în aceste limbaje. Mai mult, folosind motoarele de inferenţă specifice logicilor de descriere, cunoştinte noi pot fi derivate automat din descrieri RDF(S) sau OWL.

Cunoştintele descrise folosind limbajele RDF(S) şi OWL pot fi interogate folosind limbajul standard SPARQL, foarte asemănător cu SQL. Celelalte layere din Figura 1 nu sunt încă complet standardizate. Ele vizează definirea unor limbaje standard de reguli (i.e. RIF, SWRL, SPIN), foarte utile, de exemplu în definirea de relaţii care nu pot fi descrise folosind constructorii disponibili în OWL, definirea unor sisteme de determinare a nivelului de încredere care se poate asocia cu un triplet RDF (i.e. verifică dacă premisele statement-ului vin din surse de încredere şi ce fel de sistem de inferenţe a fost folosit etc.). Layer-ul de criptografie este de asemenea foarte important pentru a verifica provenienţa statement-urilor RDF(S) şi/sau OWL şi se bazează pe folosirea de semnături digitale.

Reprezentarea şi interogarea datelor în Web-ul Semantic - câteva exemple

În mod tradiţional datele pot fi reprezentate ierarhic într-o structură XML, sau relaţional într-o bază de date. Web-ul Semantic introduce o nouă organizare a datelor sub forma graf-urilor RDF (Resource Description Framework). RDF este un model simplu de descriere a resurselor de pe Web (documente multimedia, bloguri, pagini Web, servicii Web, baze de date, etc) şi a meta-datelor asociate cu acestea din urmă cum ar fi titlul, autorul, data publicării etc. RDF descrie o resursă prin prisma proprietăţilor pe care aceasta le are. Concret, un exemplu simplu de graf RDF(S) este ilustrat în Figura 2.

18120.png

Figura 2. Examplu de graf RDF(S) simplu ce descrie două tipuri de companii între care pot exista relaţii de tipul furnizare de servicii IT. Graful este descris folosind sintaxa grafică (informală) şi sintaxa RDF/XML.

În cazul în care descrierea folosind RDF(S) nu este suficient de expresivă pentru a modela domenii mai complexe, avem la dispoziţie un limbaj de reprezentare a cunoştinţelor pe bază de ontologii numit OWL (Web Ontology Language). Detalii despre ontologii si limbajul OWL se gasesc în secţiunea Semantic Web (http://www.w3.org/standards/semanticweb/) de pe pagina oficială W3C, organismul responsabil de specificarea şi standardizarea acestor limbaje.

Un framework util pentru dezvoltarea de aplicaţii semantice este AllegroGraph, care pune la dispoziţie funcţionalităţi de stocare şi management al tripletelor RDF(S) într-o structură numită triplestore. Interogarea datelor din AllegroGraph se face cu SPARQL - limbaj standard definit de W3C - prin intermediul interfeţei grafice AllegroGraph Web View sau programatic prin intermediul unui API pus la dispoziţie de Franz (http://www.franz.com/agraph/downloads/). Interogările efectuate cu SPARQL sunt similare interogărilor SQL iar rezultatele obţinute sunt nişte sub-grafuri RDF(S) ale grafurilor ţintă. De obicei, informaţiile extrase sunt prezentate sub forma tabelară.

Un exemplu simplu, este query-ul « găseşte toti artiştii născuţi în Austria în secolul al XIX-lea », care se transpune într-o interogare SPARQL astfel:

SELECT *

WHERE {

?person a <http://dbpedia.org/ontology/Artist>;

<http://dbpedia.org/ontology/birthPlace> ?birthPlace.

?birthPlace <http://dbpedia.org/ontology/country> ?country.

?country rdfs:label "Austria"@en.

?person <http://dbpedia.org/property/dateOfBirth> ?dob

FILTER (?dob > "1/1/1800"^^xsd:date && ?dob < "12/31/1899"^^xsd:date)

}

Aceast query poate fi rulat în sparql-end-point-ul oferit de dbpedia (http://dbpedia.org/snorql/), şi afisează ca rezultat o listă de artişti, pentru care se specifică numele, locul, ţara şi data naşterii.

 

Stadiul actual de implementare

În ultimii zece ani, ideea de Web Semantic s-a răspandit tot mai mult, la fel şi adoptarea tehnologiilor de către marii actori de pe piaţa IT. Consorţiul W3C consideră tehnologiile semantice ca fiind tehnologii mature şi în curs de adoptare la scară largă cel puţin în rândul celor care urmăresc evoluţiile tehnologice (early adopters) (vezi Figura 3). De asemenea, analiştii de piaţă sunt foarte optimişti în legatură cu evoluţia tehnologiilor semantice şi adoptarea lor viitoare. De exemplu, un studiu realizat în 2012 pe un set de 12 miliarde de pagini web indexate de Yahoo!Search arată că utilizarea microformatelor RDFa pentru adnotarea paginilor a crescut cu 510% din martie 2009 până în octombrie 2010, de la 0.6% din paginile analizate pana la 3.6% (430 de milioane de pagini din 12 miliarde).

img5_3.jpg

Figura 3. Ciclul de adoptare al tehnologiilor semantice (Octombrie 2009)

Una dintre motivaţiile principale pentru adnotarea şi publicarea datelor/resurselor folosind tehnologiile semantice vine şi din avantajelele oferite de integrarea cu Linked Data Cloud. Linked Data Cloud este o colecţie de date care au fost deja adnotate şi publicate pe Web şi care poate fi exploatată pentru a spori valoarea şi vizibilitatea datelor proprii. Cu alte cuvinte, cu Linked Data se încearcă dărâmarea barierelor de exploatare a silozurile de date dispersate şi izolate. Descriind datele cu ajutorul limbajelor semantice (RDF(S) sau OWL) acestea pot fi exploatate într-o manieră uniformă, pot fi interconectate şi sunt disponibile tuturor. În Figura 4 se pot observa diferitele seturi de date publicate şi interconectate în cadrul grafului Linked Data. În centrul diagramei, ca hub-uri principale se afla DBpedia (baza de date semantice din spatele Wikipediei), GeoNames (o ontologie care descrie locaiile geografice), Freebase etc. Multe dintre aceste date sunt publice şi pot fi foarte uşor exploatate pentru construirea de noi aplicaţii şi servicii.

img5_4.jpg

Figura 4. Linked Data Cloud diagram

Semantic Web Meetup

În paralel cu activitatea de cercetare-dezvoltare, echipa Semantic Web se concentrează şi asupra creării şi menţinerii active a unei comunităţi locale de profesionişti interesaţi de tehnologiile semantice. Prin intermediul grupului de meetup din Cluj (http://www.meetup.com/Cluj-Semantic-WEB/), ajuns la un număr aproximativ de 110 membri cărora li se adaugă cei 70 de membri ai grupului de meetup din Târgu-Mureş (http://www.meetup.com/Targu-Mures-Semantic-Web/) cu care colaborăm îndeaproape, încercăm să menţinem ridicat nivelul de interes şi de conştientizare a comunităţii locale vis-a-vis de ultimele tehnologii semantice apărute pe piaţă. În această direcţie organizăm periodic întâlniri de tip seminar de mediatizare, la care invităm în măsura posibilităţilor cercetători de mare nume în domeniu. Printre aceştia îi putem aminti pe Rada Mihalcea, Constantin Orasan sau Elena Simperl. Grupurile de meetup sunt deschise tuturor celor interesaţi de Semantic Web iar subiectele discutate sunt stabilite împreună cu comunitatea. Prin urmare, dacă vreţi să aflaţi mai multe despre tehnologiile semantice, vă aşteptăm la următoarele evenimente!

NUMĂRUL 149 - Development with AI

Sponsori

  • Accenture
  • BT Code Crafters
  • Accesa
  • Bosch
  • Betfair
  • MHP
  • BoatyardX
  • .msg systems
  • P3 group
  • Ing Hubs
  • Cognizant Softvision
  • Colors in projects