co - profs.info.uaic.robusaco/teach/courses/wade/... · locație –fișier, sistem de management...

Post on 06-Feb-2018

218 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

Dezvoltarea aplicațiilor Web

💡modelarea datelor & cunoștințelor

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

“If you haven’t got a word for a concept, you can’t think about it; if you don’t think about it,

you won’t invent a word for it.”

Sapir-Whorf Hypothesis

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

DIKW (Data, Information, Knowledge, Wisdom)adaptare după S. Carpenter, 2008 și J. Liebowitz, 2012

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

Datele trebuie accesate independent de:

locație – fișier, sistem de management al bazelor de datemaniera de reprezentare

formatul de serializareprotocol de transmisie

sistemul de operareaplicațiile ce „consumă” acele date

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

La ce mijloace intelectuale putem recurgepentru a explica lumea în care trăim?

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

exemplu:

<section>

<p><a href="cv.html">CV-ul meu</a></p>

</section>

Eu, autorulacestui marcaj!

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

întrebări

…privitoare la structură:

<a> este parte obligatorie din <p>? Ori altceva?

cv.html este (identifică) o resursă?un obiect?

o clasă de obiecte?un atribut?o relație?

orice altceva?

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

întrebări

…referitoare la vocabular/meta-date:

<a> e similar cu <a> din HTML?autorul marcajului este cel care l-a și publicat?

dacă da, când?sub ce termeni privind drepturile de autor?

ce proprietăți specifice pot fi definite?

formalizat, eventual

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

necesități

Existența unor instrumente intelectualefacilitând înțelegerea lumii (cunoașterea umană)

via descrieri abstracte

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

necesități

Existența unor instrumente intelectualefacilitând înțelegerea lumii (cunoașterea umană)

via descrieri abstracte

modele

Allemang & Hendler (2011) și Daum & Merten (2003)

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model

Modelele utilizate facilitează comunicareaîntre (grupuri de) persoane

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model

Modelele utilizate facilitează comunicareaîntre (grupuri de) persoane

un model poate descrie un context specific într-o manieră ce poate fi înțeleasă de anumite persoane

jargon – e.g., un vocabular de termeni specifici

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model

Modelele utilizate facilitează comunicareaîntre (grupuri de) persoane

colaborare mediată de înțelegerea similarăa unui fenomenpartajarea cunoașterii umane

unul dintre scopurileprimare ale Web-ului

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

factualfapte set of examples set of traces set of statements

conceptualconcepte taxonomies & typologies component systems hybrid conceptual systems

proceduralacțiuni series procedures parallel procedures interactive procedures

prescriptiverestricții definitions, norms & constraints laws & theories decision trees control rules

processes & methodspractici processes methods collaborative systems

o clasificare a modelelor de cunoștințe

(knowledge models)

adaptare după G. Paquette, 2010

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model

Modelele explică un anumit conceptși pot realiza predicții

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model

Modelele explică un anumit conceptși pot realiza predicții

punând în relație un fenomen cu altele (similare)

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model

Modelele explică un anumit conceptși pot realiza predicții

punând în relație un fenomen cu altele (similare)

premisa realizării de interpretări specifice

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model

Modelele mediază puncte de vedere diferite

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model

Modelele mediază puncte de vedere diferite

un model poate oferi mijloacele necesare explorăriidiferențelor dintre conceptualizările unor fapte

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model

Modelele mediază puncte de vedere diferite

un model poate oferi mijloacele necesare explorăriidiferențelor dintre conceptualizările unor fapte

facilitează înțelegerea unui anumit web

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model

Modelele pot reprezenta generalizări convenabileale universului pe care-l modelează

abstractizări

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model

Modelele pot reprezenta generalizări convenabileale universului pe care-l modelează

exemple:modelul utilizatorului în interacțiunea om-calculator

modelul relațional al bazelor de datemodelul de comunicare în rețele de calculatoaremodelul computațional al unui sistem software

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

modelele facilitează structurarea unor „lucruri” de interes dintr-un domeniu (web) complex

ce intervine în dezvoltarea unei aplicații

com

ple

xita

te (

pri

vin

d s

tru

ctu

ra)

gradul de generalitate a modelării cunoștințelor domeniului

ontologie

lexicon

taxonomie(clasificare)

vocabular(nomenclatură)

folksonomie

du

(Kat

rin

Wel

ler,

20

10

)

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

cod

up

ă (K

atri

nW

elle

r, 2

01

0)

sisteme tradiționale de organizare

a cunoștințelor

Web social

Web semantic

modelele facilitează structurarea unor „lucruri” de interes dintr-un domeniu (web) complex

ce intervine în dezvoltarea unei aplicații

com

ple

xita

te (

pri

vin

d s

tru

ctu

ra)

gradul de generalitate a modelării cunoștințelor domeniului

ontologie

lexicon

taxonomie(clasificare)

vocabular(nomenclatură)

folksonomie

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model

Semantica = atașarea un formalism– ce explică „semnificația” unui concept –

la o construcție sintactică

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model

Semantica = atașarea un formalism– ce explică „semnificația” unui concept –

la o construcție sintactică

exemplu: semantica limbajelor de programaree.g., specificată via axiome logice ori algebre

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model

Semantica = atașarea un formalism– ce explică „semnificația” unui concept –

la o construcție sintactică

în cazul limbajului natural, se referă la modalitatea de a înțelege o apariție a unei construcții (litere și/sau sunete)

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model

Oamenii/mașinile trebuie să utilizezeîn același mod cunoștințele

partajarea aceleași conceptualizări a informațieiîn cadrul unei comunități ori a unui web

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model

Necesitatea exprimarii (in)formalea semanticii – meaning

relația (relation) dintre concepte„pătrat” în relație cu „dreptunghi”

constrângerea/restricția (constraint)„dreptunghi” constrâns la „pătrat”

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model

Necesitatea existențeiunui vocabular comun (familiar)

elementele sintactice – cuvintele, marcatorii etc. –au același înțeles atât pentru transmițător,

cât și pentru destinatar

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model

Necesitatea existențeiunui set comun de constrângeri

exprimate formal, de dorit

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model

Necesitatea existențeiunui cadru conceptual prevalent

ce poate specifica relații între (clase de) informații

înțelegerea nu va fi influențată de cunoștințele inițiale nespecificate

(unspecified background knowledge)

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model

Implicitul nu poate fi citit/procesat

de către software

„moartea proces biologic”(posibilă interpretare realizată de un algoritm, folosind cunoștințele expuse de o enciclopedie)

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model

Informațiile de background – deseori, implicit cunoscute de scriitorul/cititorul uman –

nu sunt accesibile pentru mașină(Brewster, 2003)

exemple: articolele științifice, beletristica

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: entitate

Modelele comunicative umane se bazează pe limba

(maternă) și implică percepția relațiilor dintre entități

constatări (observations)

persoane, locuri, documente, calendare, resurse multimedia,…

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: entitate

Entitate = „lucru” identificabil în mod distinct

pe baza unei semnificații (denotation)

și a unui conținut (connotation)

Kingsley Idehen, 2014

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: entitate

Identificarea unei entități se realizează

via un identificator – eventual, specificat de un standard

exemplificări uzuale: cod de bare, QR, UUID, URI

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: entitate

Descrierea unei entități e mijlocită de relații

(entity relationships) reprezentate într-o formă

reutilizabilă prin intermediul conținutului unui document

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: entitate

Descrierea unei entități e mijlocită de relații

(entity relationships) reprezentate într-o formă

reutilizabilă prin intermediul conținutului unui document

reprezentările relațiilor dintre entități

se bazează pe notații asociate unui limbaj specific

exemple: diagrame ER (Entity-Relation), tabele,

microdate HTML5, triple RDF

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: entitate

Specificarea descrierii unei entități date se realizează

prin intermediul unor propoziții (sentences)

și a unor afirmații (statements)

acestea sunt stocate – fizic și/sau electronic

(fișiere, pagini Web,…) – și transmise via formate de date

(textuale și/sau binare), de dorit deschise

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model

Observație:

lăsând oamenii să interpreteze semnificația unui model,

putem asista la proliferarea confuziei – vezi legislația

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model

Modelele comune folosite de oameni

au – în general – un caracter informal

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model

Modelele comune folosite de oameni

au – în general – un caracter informal

semnificația termenilor utilizați nu poate fi unic definită

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model

Modelele comune folosite de oameni

au – în general – un caracter informal

semnificația termenilor utilizați nu poate fi unic definită

exemplu: „explicarea” unor resurse recurgând exclusiv

la termeni de conținut (tag-uri) stabiliți de utilizator

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

diverse conotații pentru a desemna (categorii de) fotografii oferite de Flickr

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

Cum pot fi adnotate manual resursele Web?

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

puncte de vedere

adnotarea automată a resurselor Web via modele formale

(abordare academică – full semantics)

versus

abordări pragmatice pe baza tehnologiile Web actuale

(punct de vedere al industriei – simple/vertical semantics)

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Tag-urile definite de utilizator reprezintăclasificări ad-hoc realizate de oameni,

partajate în cadrul unei comunități

context: social bookmarking

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging – definiții

Bookmark

referință creată manual

ce vizează o resursă de interes

e.g., imagine, documentație, însemnare, multimedia,…

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging – definiții

Tag

(meta)dată simplă – termen arbitrar ales –

asociată extern unui obiect (unei resurse)

cu scopul de a identifica, sorta, agrega, regăsi etc.

acea resursă

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging – definiții

Aplicație de bookmarking

aplicație Web facilitând descoperirea de

conținuturi și persoane – resurse – de interes

pe baza tag-urilor partajate + bookmark-urilor existente

S. Braun, Social Semantic Bookmarking (2008)www.slideshare.net/vzach/social-semantic-bookmarking-pakm-presentation

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Folksonomy = folk + taxonomy

“…is the result of personal free tagging of pagesand objects for one’s own retrieval”

Thomas Vander Wal, 2007

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Uzual, tagging-ul are loc într-un mediu social

legat de procesele cognitive

relevă echivalentul digital al „cărărilor dezirabile” – desire lines (Merholz, 2004)

landscaping concept used on campus for creating walk ways through the grass

www.cs.colorado.edu/~kena/classes/7818/f06/lectures/folksonomy.pdf

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Obiectde

interes

Asocierimentalemultiple

(concepte)

tt

tt

tagging

tagging-ul reprezintă o modalitate particulară de adnotarea resurselor electronice – digital content annotation

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model mental

reprezentare(în limba maternă)

reprezentaresimbolică (grafică)

reprezentare(în altă limbă)

reprezentare reprezentare

reprezentare

interpretare

interpretare

interpretare

“Apple”

pomme [FR]mela [IT]リンゴ [JP]măr [RO]

adaptare după Gilbert Paquette (2010)

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Tipuri de tag-uri (conform Sinha):

descriptioncategorization

opinionaction

relationinsider reference

spam

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Tagging-ul are un caracter subiectiv

bazat pe limitele tag-urilor lingvistice(i.e. vocabularul manipulat de un individ)

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Feedback-ul propriu + feedback-ul social

Rashmi Sinha, 2006

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

tag-urile personale sunt mai memorabiledecât cele (strict) semantice – i.e. predefinite

https://github.com/topics

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Fiecare persoana este expertăîn propriul vocabular (set de termeni de conținut)

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

RT @ontoligent Folksonomy is meta-data.

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Tagging-ul poate depinde și de context(comunitatea de utilizatori)

design ≡ “visual design”versus

design ≡ “software design”

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Problema lipsei preciziei – după (Happel et al., 2008)

jargon

plural – “inițiativă” versus “inițiative” [RO]

abrevieri – “SAX” versus “saxofon”

cuvinte compuse – “opensource” versus “open-source”

erori de redactare – “elephant” versus “elefant” [EN]

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Problema lipsei preciziei – după (Happel et al., 2008)

polisemie

semnificații multiple ale aceluiași tag

exemplificare:

“pasta” – as dish, “pasta” – as ingredient

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Problema lipsei preciziei – după (Happel et al., 2008)

omonimie

tag-uri care au înțelesuri multiple neînrudite

exemple: “book” [EN], „toc” [RO]

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Problema lipsei preciziei – după (Happel et al., 2008)

multilingvism

tag-uri cu semnificații diferite, în funcție de limbă

exemple:

„paste” – substantiv [RO] vs. “paste” – verb [EN]

“the” – articol hotărât [EN], “the” (« thé ») – substantiv [FR]

„bulgari” vs. „bulgari” („bulgări”) vs. „Bulgari” [RO]

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Problema lipsei preciziei – după (Happel et al., 2008)

sinonimie

același concept este referit prin termeni diferiți

exemplu: „design” versus „proiectare”

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Problema lipsei preciziei – după (Happel et al., 2008)

nepotriviri la nivel abstract

lipsa relațiilor (semantice) dintre tag-urila diverse niveluri de abstractizare

datorată intențiilor sau expertizei utilizatorilor

exemplificări: „băutură” vs. „vin” vs. „Merlot” vs. „Merlot de Murfatlar”

„scriere” vs. „literatură” vs. „beletristică” vs. „nuvelă”

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Setul de tag-uri asociate resurselor Web de interesare caracter dinamic

modelul de clasificare bazat pe tagging nu este rigid(uzual, poate evolua)

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Sistemele bazate pe tagging oferă suport pentruorganizarea informală a unui volum semnificativ

de informații eterogene existente pe Web

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Sistemele bazate pe tagging oferă suport pentruorganizarea informală a unui volum semnificativ

de informații eterogene existente pe Web

organizarea este informală,deoarece interpretarea tag-urilor necesită

aportul utilizatorilor într-un context dat

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Problema asigurării interoperabilității

“interoperability with tagging systems”

(Peter Mika, 2006)

consistență

identificare viabilă

partajarea încrederii

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

musicbrainz.org/search?query=classical&type=tag&method=indexed

versus medium.com/tag/classical versus websta.me/tag/classical

???

???

???

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Problema privind tag spam-ul

rezolvări actuale:

manuale (bazate pe factorul uman), algoritmice, mixte

detalii în articolul N. Spirin, J. Han, “Survey on Web Spam Detection: Principles and Algorithms”, SIGKDD Explorations 13 (2), 2011

http://kdd.org/exploration_files/V13-02-08-Spirin.pdf

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Problema privind tag spam-ul

detection-based methods

prevention-based methods

demotion-based methods

de studiat și P. Heymann, G. Koutrika, H. Garcia-Molina,“Fighting Spam on Social Websites: A Survey of Approaches

and Future Challenges”, IEEE Internet Computing, 11 (6), 2007http://ilpubs.stanford.edu:8090/818/

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Interacțiuni într-un sistem de social tagging:salvare + asociere de tag-uri (tagging)

re-detectare (refinding)

clicking, pivoting, exploring

căutare – a propriilor tag-uri ori a altora(în cadrul grupului de interes sau în general)

descoperire – eventual, întâmplătoare

interacțiune în cadrul grupului social

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Determinarea importanței

cine determină „tăria” semnificației tag-urilor:aplicația, proprietarul sitului sau utilizatorul?

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Determinarea importanței

extragerea celor mai „semnificative” tag-uri (entități) prin tehnici de prelucrare a limbajului natural

diverse soluții – uzual, doar pentru limba engleză:AlchemyAPI, Bitext API, BracketPy, MeaningCloud,

OpenAmplify, OpenCalais, Semantria API

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

model conceptual(specificat de un web)

via linked data

extragere de entități via AlchemyLanguageoferit de IBM Watson

www.ibm.com/watson/developer/

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Determinarea „zgomotului”

detecția și eliminarea tag-urilor inutile:dezambiguizare, facilități de căutare, spelling etc.

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Instagram: tag-uri populare22 octombrie 2017

conform http://websta.me/

#love #instagood #photooftheday

#fashion #beautiful #happy #tbt #cute

#like4like #followme #picoftheday

#follow #me #selfie #summer

???

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

semantici stabilite

de utilizatori

?

a se vizita tagdef.com și hashtags.org

tagging în contextul microblog-urilorhashtag analytics

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Problema vizualizării tag-urilor

adoptarea diverselor tehnici de vizualizare

e.g., tag clouds, clustering, semantic zoom

O. Kaser, D. Lemire, “Tag-Cloud Drawing: Algorithms for Cloud Visualization”, WWW2007 Workshop on Tagging and Metadata

for Social Information Organization, 2007 – http://slidesha.re/cpkPLi

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Problema vizualizării tag-urilor

instrumente utile:

ngtagcloud – www.npmjs.com/package/ngtagcloud

TagCrowd – tagcrowd.com

WordCloud – github.com/jasondavies/d3-cloud

WordCloud2 – timdream.org/wordcloud2.js/

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Problema monitorizării dinamicii șianalizei evoluției tag-urilor

detalii în J. Lehmann et al., “Dynamical Classes of Collective Attention in Twitter”, WWW2012 Conference, ACM Press, 2012

www2012.wwwconference.org/proceedings/proceedings/p251.pdf

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Problema clasificării resurselor (Sinha, 2006)

clasificările populare (folksonomies) sunt plate, spre deosebire de taxonomii – ierarhii de concepte

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Sistemele de tagging reprezintă oamenii care participă în cadrul acestora

puncte de vedere și perspective posibil limitate

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Pot apărea conflicte:

tag-urile folosite de experți diferă de cele ale novicilor

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Pot apărea conflicte:

grupurile de interes sunt mai focalizateîn ceea ce privește clasificarea mai bună a resurselor

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Pot apărea conflicte:

dificultăți în detectarea unui punct de vedere minoritar

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging – exemple de utilizare

social bookmarking: Evernote, Pocket

(micro-)blogging: Medium, Tumblr, Twitter, WordPress

multimedia: 500px, Flickr, Last.fm, Scribd, Vimeo

știri: Digg, Feedly, Reddit

e-business: Amazon, Lulu

știință: CiteULike, Connotea, myExperiment

sisteme de operare (fișiere): macOS, Windows

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Remarci:

“In essence tag systems mirror the PageRank structure of Google’s system, but make the internal structures

browsable and viewable directly.”Lee Iverson

FolkRank (A. Hotho et al., 2006)www.kde.cs.uni-kassel.de/stumme/papers/2006/hotho2006folkrank.pdf

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Necesitatea existenței adnotărilor semantice(semantic annotation) a resurselor Web

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: tagging

Necesitatea existenței adnotărilor semantice(semantic annotation) a resurselor Web

utilizarea unui termen descrispe baza unui model de specificare a cunoștințelor

e.g., relația sa cu alți termeni, indiferent de limba utilizată

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

studiu de caz: determinarea și prezicerea stării de spirit via tag-uri

asociate resurselor muzicale (aici: Last.fm)

P. Saari, T. Eerola, “Semantic Computing of Moods Based on Tags

in Social Media of Music”, IEEE Transactions on Knowledge and Data,

2014 – arxiv.org/pdf/1308.1817.pdf

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

Putem recurge la modele formale?

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: formalizare

Explicarea și prezicerea unui fenomen necesitămodele având un grad mai mare de formalism

decât comunicarea umană

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: formalizare

Explicarea și prezicerea unui fenomen necesitămodele având un grad mai mare de formalism

decât comunicarea umană

explicarea unui fenomen îl pune în legăturăcu anumite „principii de bază” (first principles)

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: formalizare

Explicarea și prezicerea unui fenomen necesitămodele având un grad mai mare de formalism

decât comunicarea umană

aceste principii (axiome, reguli) nu depind de o anumităinterpretare particulară umanăobiectivitate

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: formalizare

Formalismele – uzual, exprimate matematic –oferă suport pentru realizarea predicțiilor

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: formalizare

Formalismele – uzual, exprimate matematic –oferă suport pentru realizarea predicțiilor

utile în diverse contexteprecum e-business-ul

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: formalizare

Formalismele – uzual, exprimate matematic –oferă suport pentru realizarea predicțiilor

exemplu (în cazul unui joc electronic): explicarea – și prezicerea – traiectoriei unui obiect

via un model formal implicând concepteca forță, gravitație, viteză, masă descrise matematic

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: formalizare

Formalismul ne ajută să evaluăm

când un anumit model e aplicabil

formalismul (matematic) permite ca evaluarea

să fie independentă de factorii umani

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: formalizare

Formalismul ne ajută să evaluăm

când un anumit model e aplicabil

putem explica anumite aspecte ale Web-ului,

recurgând la diferite modele formale

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: exemple

Modelul diagramelor entitate-relațieEntity-Relation Model – E/R (Chen, 1976)

Semantic Object Modeling – SOM (Kroenke, 1995)Unified Modeling Language – UML (OMG, 1997)

Higher Order Entity Relationship Model (Thalheim, 2000)Asset-Oriented Model – AOM (Daum & Merten, 2003)

utilizare tipică: specificarea schemelor de baze de date

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: exemplePosibile modele de date facilitate de un cadru conceptual:

Data (What) Activities (How)

Objectives/Scope(Planner’s View)

List of thingsimportant to the enterprise

List of functions the enterpriseperforms

Enterprise Model(Leadership’s View)

Language,divergentdata model

Business processmodel

Model of FundamentalConcepts (Architect’s View)

ConvergentE/R model

Essential data flow diagram

Technology Model(Data Designer’s View)

Databasedesign

System design,program structure

Detailed Representation(Builder’s View)

Physical storagedesign

Detailed programdesign

David C. Hay, Data Model Patterns, Morgan Kaufmann, 2006

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model de acces la date: yql

Yahoo! Query Language

abstractizează accesul la surse de date eterogenece pot fi obținute via servicii Web

developer.yahoo.com/yql/

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model de acces la date: yql

Permite – pe baza unui limbaj similar SQL –interogarea, filtrarea, combinarea datelor la nivel de Web

(suport pentru realizarea de mash-up-uri)

facilitează atașarea la aplicația Web dezvoltatăa surselor de date de interes:

fluxuri de știri, informații cartografice, resurse multimedia etc.

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model de acces la date: yql

Adoptă o sintaxă SQLshow, desc, select, use, insert, update, delete

surse de date publice Yahoo! (built-in tables) sau oferite de terți (community tables) – e.g., Amazon,

Apple, arXiv, Deviant Art, Europarliament, GitHub, Last.fm, PayPal, Spotify, Steam, Tumblr, Yelp,…

răspunsul la o interogare ≡ rânduri (rows) de date

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

creații muzicaleoferite de iTunes

select * from apple.itunes

where term='Eclipse' and

media='music';

URL-ul corespunzător cererii

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model de acces la date: graphql

Graph Query Language

“a query language for APIs and a runtime for fulfilling those queries with your existing data”

graphql.org

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model de acces la date: graphql

Graph Query Language

declarativ

inspirat de JSON

strict (strong-typed)

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model de acces la date: graphql

Graph Query Language

sunt permise interogări (queries) – operații de citire –și actualizări (mutations) – operații de alterare a datelor

se oferă suport pentru a anticipa ce date vor fi întoarse + structura acestora

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model de acces la date: graphql

Graph Query Language

răspunsul oferit include doar datele ce au fost solicitateîmbunătățirea performanței la nivel de client

rezolvarea problemelor vizând over/under fetching(preluare a mai multor sau prea puține date)

philsturgeon.uk/api/2017/01/24/graphql-vs-rest-overview/

nordicapis.com/is-graphql-the-end-of-rest-style-apis/

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model de acces la date: graphql

GraphQL ca alternativă la dezvoltarea de servicii via paradigma REST

GraphQL REST

entitate resursă resursă

format JSONorice Media Type (MIME)frecvent: JSON

protocolHTTP – uzual, adoptă convențiiproprii

independent de protocol(uzual, HTTP)

cine decide ce date vor fi întoarse

clientul serverul

puncte terminale (endpoints)

un singur punct terminal pentru a oferi date conexe, dacă au fost specificate relații între ele

puncte terminale multiple (independente)

tipuri de date strong (tipuri declarate explicit)weak (verificarea tipurilor de date nu e obligatorie)

relație client-server fat client—fat server thin client—fat server

documentare autodescriptiv (self-describing)necesită terțe soluții (e.g., OpenAPI Specification)

viziunelimbaj de interogare, specificație, colecție de instrumente

stil arhitectural

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model de acces la date: graphql

Aspecte de considerat de către implementatori:

probleme de securitate – e.g., autentificare, autorizare, refuz al serviciilor

suportul pentru caching trebuie oferit explicit

managementul versiunilor

blog.pusher.com/rest-versus-graphql/

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model de acces la date: graphql

Instrumente pentru dezvoltatori:

implementare de referință pentru server (Node.js)GraphQL.js – graphql.org/graphql-js/

biblioteci disponibile pentru C, Go, Java, .NET, PHP, Python, Ruby, Swift, Typescript,… – graphql.org/code/

resurse de interes: github.com/chentsulin/awesome-graphql

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model de acces la date: graphql

Instrumente pentru dezvoltatori:

de experimentat și Apollo – www.apollodata.com

suport la nivel de client (e.g., React, Vue) + server

pentru aplicații bazate pe React, a se folosi Relay (Modern) – facebook.github.io/relay/

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model de acces la date: graphql

interogare interactivă cu GraphQL a API-ului vizând „Războiul Stelelor” – graphql.org/swapi-graphql/

schemarezultateinterogare

variabilă(parametru)

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model de acces la date: graphql

exemple de interogări via GraphQL ale unor API-uri publice (e.g., Giphy, Hacker News, Reddit): www.graphqlhub.com

în acest caz, Twitter

# primele 33 de mesaje (+meta-date vizând utilizatorii care le-au expus){twitter {

search(q: "Web application development", count: 33, result_type: mixed) {

user {screen_namenamefollowers_count

}textcreated_at

}}

}

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model de acces la date: graphql

testarea interactivă a API-ul GitHubimplementat via GraphQL

developer.github.com/v4/

conceptul Repository

(depozit de cod-sursă)și proprietățile aferente

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model de acces la dateServicii Web

model de calcul

Ofertantde servicii de

telefonie mobilă

mash-up-uri la nivelde dispozitiv mobil

model de implementaremodel de interacțiune

model de acces la date – scenariu

adaptare după Tom Croucher

model de comunicare

model al fluxului

de date

⚙⚙

⚙⚙

GraphQLYQL

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: puncte de vedere

Web-ul având un caracter multidisciplinar,modelele utilizate pot fi diferite

reprezentarea unei varietăți de opinii(posibil, contradictorii)

care nu pot fi reconciliate la nivel global

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model

Necesitate:

o infrastructură oferind suport atât pentru

AAA (Anyone can say Anything about Any topic),

cât și pentru a media puncte de vedere diferite

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model

Necesitate:

o infrastructură oferind suport atât pentru

AAA (Anyone can say Anything about Any topic),

cât și pentru a media puncte de vedere diferite

partajarea + concilierea modelelor (in)formale utilizate

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: expresivitate

Fiecare model oferă un anumit nivel de expresivitate

exemplu: expresivități diferite ale modelelorde specificare a unei molecule de apă

H2O H—O—HH H

O

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: expresivitate

Modele cu niveluri de expresivitate și sintaxe diferite

rețea semantică (semantic network)

asociere de subiecte (topic map)

diagramă UML – Unified Modeling Language

graf conceptual (conceptual graph/structure)

graf RDF – Resource Description Framework

logica de ordin I (FOL – first-order logic)

adaptare după Sean Bechhofer

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: expresivitate

semantic network

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: expresivitate

topic map

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: expresivitate

UML (class) diagram

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: expresivitate

conceptual graph

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: expresivitate

RDF graph

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: expresivitate

Every programmer likes the Web.(x) programmer (x) likes (x, Web)

You can fool some of the people all of the time.(x) (t) (person (x) time (t)) canFool (x, t)

Tux is not human.¬ human (Tux)

first-order logic

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

model: expresivitate

Limbajele de modelare conceptuală a resurselorîn contextul Web-ului semantic

au grade diferite de expresivitate

RDFRDFS (RDF Schema)SKOSOWL

detalii în cursurile viitoare

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

„noul” Web

În contextul Web-ului, scopul principal estemodelarea unei arii (domeniu) de cunoaștere

concepte primare – entități ori „lucruri” ale domeniului

relații între concepte

atribute/proprietăți (nume + valori) ale conceptelor

reguli de asociere privind concepte, relații, atribute

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

componente (servicii) tipice ale unei aplicații aliniate

problematicilor Web-ului semantic

Kingsley Idehen, Understanding Data (2014)

www.slideshare.net/kidehen/understanding-29894555

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

„noul” Web – componente de bază

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

„noul” Web

Faze privind evoluția:

1. infrastructura de bază (HTTP, RDF, OWL)

finalizată

www.w3.org/2013/data/

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

„noul” Web

Faze privind evoluția:

2. formularea necesitățilorde promovare + implementare

identificarea grupurilor de lucru relevanteatragerea comunităților de interes

(științe ale vieții, GIS – Geographical Information Systems, ofertanți de bunuri digitale, guverne etc.)

+ intersecția Web-ului semantic cu alte tehnologii

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

viziunea stratificată privitoare la Semantic Web(Tim Berners-Lee)

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

„noul” Web

Semantic Web (Web of Data)

actualele „cărămizi” ale Web-ului semantic oferă

modalități de modelare conceptuală a resurselor

pentru a permite efectuarea de raționamente automate

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

„noul” Web

Constituirea unei științe a Web-ului(Science of the Web) – Berners-Lee et al., 2006

Web science = combinație între științe analitice(e.g., biologia) și cele sintetice (computer science)

caracter inerent inter-disciplinar

www.webscience.org

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

„noul” Web

“Web science is about more than modeling the current Web. It is about engineering

new infrastructure protocols and understanding the society that uses them,

and it is about the creation of beneficial new systems.”

Tim Berners-Lee et al., Science, 313, august 2006

www.webscience.org/2016/08/26/creating-a-science-of-the-web-10th-anniversary/

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

„concluzii”

“Creating an online digital ecosystem in which knowledge, logic and presentation can all evolve in a globe-spanning, self-organizing, peer to peer

system of Web servers which is also the software substrate for

an emergent global collective intelligence.”

Shawn Murphy

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

„concluzii”

It’s not the wires – it’s the computers

It’s not the computers – it’s the documents

It’s not the documents – it’s the things

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

„concluzii”

“The last level of abstraction isthe Web of real things,

built on top of the Web of documents, which is in turn built on the network of computers.”

Tim Berners-Lee

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

rezumat

💡modelarea cunoștințelor – de la tagging la Web science

Dr.

Sab

in B

ura

ga

profs.in

fo.uaic.ro/~busa

co

episodul viitor: modelul de date RDF

Firebug Firefoxextinde

Mozilla

produsDeproduce

Deschis

areStatut

areStatut

Hadoop

Organizație

este Apacheproduce

este

Sabinutilizează

Persoană

este

Lucene

top related