Doktoriseminar: tanel: erinevus redaktsioonide vahel
Resümee puudub |
Resümee puudub |
||
| (ei näidata sama kasutaja 6 vahepealset redaktsiooni) | |||
| 1. rida: | 1. rida: | ||
== Materjale ja infot 4 detsembri seminariks == | |||
NB! | |||
* [http://www.oracle.com/technology/tech/semantic_technologies/index.html Oracle semantic tech] | |||
* [http://www.monetdb.nl/projects/monetdb/Development/Research/Articles/ Monet db artiklid] | |||
* c-store column oriented database: | |||
** http://db.lcs.mit.edu/projects/cstore/ | |||
** http://www.mit.edu/~dna/vldb.pdf | |||
* [http://www.softwareag.com/Corporate/products/wm/tamino/default.asp Tamino xml database] | |||
Qcon 2008 Konverents: | |||
* [http://qconsf.com/sf2008/tracks/show_track.jsp?trackOID=170 trackind] ja [http://qconsf.com/sf2008/tracks/show_track.jsp?trackOID=170 baasinduse track] | |||
Baasivõrdlused: [[Media:53180082.pdf]] | |||
== Tagging, folksonoomiad, loogika ja reeglipõhine kasutamine == | |||
=== Linke läbitöötamiseks === | |||
NB! Otsi samadel teemadel ise asju juurde (mh google scholar), vali häid ideid ja mõtle juurde! | |||
http://scot-project.org, konkreetsemalt http://scot-project.org/scot/index.html (Kalle) | |||
http://www.w3.org/TR/skos-primer/ (Andres) | |||
http://www.semanticdesktop.org/ontologies/2007/08/15/nao/ ja http://www.lambda.ee/index.php/Pilt:Integrfolksonomiesfulltext.pdf (Enar) | |||
http://scot-project.org/pubs/Kim_TagOnt.pdf ja (viidatud http://scot-project.org lehelt) ja http://www.lambda.ee/index.php/Pilt:Folksonomiesmemnet2007.pdf (Andri) | |||
http://adammathes.com/academic/computer-mediated-communication/folksonomies.pdf ja http://www.lambda.ee/index.php/Pilt:Semanticsfolksonomies.pdf (Madis) | |||
== Märkmeid: ideid, viiteid ettevalmistamiseks 30 oktoobriks. == | |||
=== meeldetuletus === | |||
Reeglikeel: klassikalise loogika alus: selge semantika. | |||
RDF, OWL, "erireeglikeeled", SQL (osaliselt) loogikas esitatavad. | |||
subject,predicate,object | |||
type | |||
UrI:Jaan, age, 18 : age(URI:Jaan,18). tegelikult holds(URI:Jaan,age,18) | |||
age(X,Y), >(Y,70) => reallyold(X). | |||
Uri:Jaan, rdf:type, person: person(URi:Jaan). tegelikult holds(URI:Jaan,type,person) | |||
age, valuetype, numeric: valuetype(age,numeric). | |||
eesmärk: age(X,Y) => numeric(Y). | |||
valuetype(P,Z) => (P(X,Y) => Z(Y)). | |||
holds(P,valuetype,Z) => (holds(X,P,Y) => holds(Y,type,Z)) | |||
SQL: | |||
Person table, fields id,name,age,sex | |||
Job table, fields, id personid (ref person id), jobname, salary | |||
select person.name, job.jobname from person,job where | |||
person.id=job.personid and salary>1000 | |||
Person(I,N,A,S) & Job(I,I,J,S) & >(S,1000) => answer(N,J). | |||
Person(I,N,A,S) & Job(I,P,J,S) & >(S,1000) & =(I,P) => answer(N,J). | |||
=== Stsenaariumid === | |||
1. Databaaside mergimine. Employee(timestamp,..,age,..) panna teise kokku koos | |||
Client(,,personcode,...). | |||
Esimesest by(timestamp,age) = ... | |||
Person(,,birthyear,....). | |||
Employee,age: vanus | |||
Client: personcode: vanus | |||
Person:vanus: birthyear | |||
2. Restoranide soovitamine. | |||
Restoranide webpage: nimed, aadressid (,....) | |||
Blogid, soovitussaidid vms: nimi, inimeste tagid | |||
(national:2,hiina:5,tore:10,jama:2,...) | |||
holds(uri:wuli,address,"narva mnt 27") | |||
holds(uri:wuli,type,national) | |||
- usaldusvaarsuse number vaite kohta | |||
[uri:12] holds(uri:wuli,type,hiina) 5? | |||
holds([uri:12],usaldusvaarsus,0.2) | |||
- usaldusvaarsuse number vaite sees | |||
holdswn(uri:wuli,type,hiina,0.2) | |||
holds(uri:wuli,type,tore) 10? | |||
holds(uri:wuli,type,jama) 2? | |||
3. Proge, mis annab automaatselt teada huvitavatest juhtumistest. | |||
Lähisugulane sõidab huvitavasse riiki ja teeb pilte, tahaks näha. | |||
venna blogi, kuhu paneb pilte (UUED reisid ainult) | |||
pildiga seotud otse (pildifailist): kuupäev | |||
blogisissekande: brasiilia, reis | |||
oma brauseris lingi bookmarki, brauseris tag vend | |||
veebipage sõnastikuga: vend: lähisugulane,nimisõna,meessoost, | |||
holds(X,vend,Y) => holds(X,lahisugulane,Y). | |||
holds(X,vend,Y) => holds(Y,type,meessoost) | |||
holds(vend,type,nimisona). | |||
info, mis sorti või headuses restoran: inimeste tagidest | |||
fotod: pildi tagid (aeg) | |||
=== Usaldusvaarsus ja selle kasutamine === | |||
- Yks sait ja seal loeme kokku tage | |||
- Brauseri bookmargid (isiklikud) | |||
Isiklikest saab teha koondsaidi ja seal statistikat | |||
Voiks tekkida mehhanism inimeste endi usaldusvaarsuse hindamiseks: | |||
kokkukoondamisel kasutame inimese oma usaldusvaarsuse koefitsienti | |||
Inimeste usaldusvaarsus ei ole globaalne: | |||
- igayks saaks ise oelda teiste inimeste isiklikku usaldusvaarsust | |||
Kompromissvariant: | |||
- tagi numbri statistikal ei ole inimeste isiklikku usaldusvaarsust | |||
- oma brauseri bookmargi tagid, need on minu jaoks eriti usaldusvaarsed | |||
=== usaldusvaarsuse numbri kasutamisest === | |||
- iga fakti kohta saaks hoida numbrit: usaldusvaarsust | |||
(modaalsed loogikad, toenaosusloogika, fuzzy loogika, ....) | |||
- kindlad reeglid & faktid: usaldusvaarsus alati 1 | |||
kasutada? | |||
fakt A, uv 0.5 P(0.5,..,...,) selle asemel P(,...,..):0.5 | |||
fakt B, uv 0.9 P(0.9,...,...) selle asemel P(,...,..):0.9 | |||
reegel A & B =>[0.9] C, | |||
jareldame C, uv: 0.4 | |||
yldine tahelepanek: sygava jarelduse korral (palju samme) uv kogu aeg vaheneb. | |||
uv: 0.001 | |||
eesmark: produtseerida jareldusi, sorteerida uv jargi, kuvada | |||
kohe filter: alla 0.6 ei taha yldse. | |||
Probleem: usaldusvaarsus muutub!!!! | |||
Tana: holds(uri:wuli,type,good):0.7 | |||
Homme: holds(uri:wuli,type,good):0.6 | |||
yle 0.7: super | |||
alla 0.7: -super | |||
vanade enam mitte kehtivate asjade retractimine voimalik, aga kole toomahukas | |||
vaja oleks hoida usaldusvaarsuse juures tema aega! | |||
Tana: holds(uri:wuli,type,good):0.7,15-10-2007,inimeste modifikaatorid? | |||
Homme: holds(uri:wuli,type,good):0.6,20-7-2008 | |||
tore automaatne efekt: vanad infod muutuvad ebaoluliseks | |||
=== tagi info nö standardne loogikapõhine esitamine === | |||
näiteks: | |||
pildiga seotud otse (pildifailist): kuupäev | |||
blogisissekande: brasiilia, reis | |||
URI:bs [brasiilia,reis] | |||
holds(URI:bs,connected,brasiilia). | |||
holds(URI:bs,connected,reis). | |||
Kuidas connected predikaati kasutada? | |||
Voibolla vaja moelda, kuidas connected eri kohtadest tapsemaks muut? | |||
holds(X,connected,Y) & holds(Y,type,kohanimi) => holds(X,location,Y) [0.95] | |||
holds(URI:bs,connected_mybrowser,brasiilia). | |||
holds(URI:bs,connected_blogsitex,reis). | |||
... | |||
Source??? | |||
holds(URI:bs,connected,brasiilia):uv,timestamp,source,.... | |||
holds(URI:bs,connected,reis):.... | |||
Viimane redaktsioon: 27. november 2008, kell 13:14
Materjale ja infot 4 detsembri seminariks
- Oracle semantic tech
- Monet db artiklid
- c-store column oriented database:
Qcon 2008 Konverents:
Baasivõrdlused: Media:53180082.pdf
Tagging, folksonoomiad, loogika ja reeglipõhine kasutamine
Linke läbitöötamiseks
NB! Otsi samadel teemadel ise asju juurde (mh google scholar), vali häid ideid ja mõtle juurde!
http://scot-project.org, konkreetsemalt http://scot-project.org/scot/index.html (Kalle)
http://www.w3.org/TR/skos-primer/ (Andres)
http://www.semanticdesktop.org/ontologies/2007/08/15/nao/ ja http://www.lambda.ee/index.php/Pilt:Integrfolksonomiesfulltext.pdf (Enar)
http://scot-project.org/pubs/Kim_TagOnt.pdf ja (viidatud http://scot-project.org lehelt) ja http://www.lambda.ee/index.php/Pilt:Folksonomiesmemnet2007.pdf (Andri)
http://adammathes.com/academic/computer-mediated-communication/folksonomies.pdf ja http://www.lambda.ee/index.php/Pilt:Semanticsfolksonomies.pdf (Madis)
Märkmeid: ideid, viiteid ettevalmistamiseks 30 oktoobriks.
meeldetuletus
Reeglikeel: klassikalise loogika alus: selge semantika.
RDF, OWL, "erireeglikeeled", SQL (osaliselt) loogikas esitatavad.
subject,predicate,object
type
UrI:Jaan, age, 18 : age(URI:Jaan,18). tegelikult holds(URI:Jaan,age,18)
age(X,Y), >(Y,70) => reallyold(X).
Uri:Jaan, rdf:type, person: person(URi:Jaan). tegelikult holds(URI:Jaan,type,person)
age, valuetype, numeric: valuetype(age,numeric).
eesmärk: age(X,Y) => numeric(Y).
valuetype(P,Z) => (P(X,Y) => Z(Y)).
holds(P,valuetype,Z) => (holds(X,P,Y) => holds(Y,type,Z))
SQL:
Person table, fields id,name,age,sex
Job table, fields, id personid (ref person id), jobname, salary
select person.name, job.jobname from person,job where
person.id=job.personid and salary>1000
Person(I,N,A,S) & Job(I,I,J,S) & >(S,1000) => answer(N,J).
Person(I,N,A,S) & Job(I,P,J,S) & >(S,1000) & =(I,P) => answer(N,J).
Stsenaariumid
1. Databaaside mergimine. Employee(timestamp,..,age,..) panna teise kokku koos
Client(,,personcode,...).
Esimesest by(timestamp,age) = ...
Person(,,birthyear,....).
Employee,age: vanus
Client: personcode: vanus
Person:vanus: birthyear
2. Restoranide soovitamine.
Restoranide webpage: nimed, aadressid (,....)
Blogid, soovitussaidid vms: nimi, inimeste tagid
(national:2,hiina:5,tore:10,jama:2,...)
holds(uri:wuli,address,"narva mnt 27")
holds(uri:wuli,type,national)
- usaldusvaarsuse number vaite kohta
[uri:12] holds(uri:wuli,type,hiina) 5?
holds([uri:12],usaldusvaarsus,0.2)
- usaldusvaarsuse number vaite sees
holdswn(uri:wuli,type,hiina,0.2)
holds(uri:wuli,type,tore) 10?
holds(uri:wuli,type,jama) 2?
3. Proge, mis annab automaatselt teada huvitavatest juhtumistest.
Lähisugulane sõidab huvitavasse riiki ja teeb pilte, tahaks näha.
venna blogi, kuhu paneb pilte (UUED reisid ainult)
pildiga seotud otse (pildifailist): kuupäev
blogisissekande: brasiilia, reis
oma brauseris lingi bookmarki, brauseris tag vend
veebipage sõnastikuga: vend: lähisugulane,nimisõna,meessoost,
holds(X,vend,Y) => holds(X,lahisugulane,Y).
holds(X,vend,Y) => holds(Y,type,meessoost)
holds(vend,type,nimisona).
info, mis sorti või headuses restoran: inimeste tagidest
fotod: pildi tagid (aeg)
Usaldusvaarsus ja selle kasutamine
- Yks sait ja seal loeme kokku tage
- Brauseri bookmargid (isiklikud)
Isiklikest saab teha koondsaidi ja seal statistikat
Voiks tekkida mehhanism inimeste endi usaldusvaarsuse hindamiseks:
kokkukoondamisel kasutame inimese oma usaldusvaarsuse koefitsienti
Inimeste usaldusvaarsus ei ole globaalne:
- igayks saaks ise oelda teiste inimeste isiklikku usaldusvaarsust
Kompromissvariant:
- tagi numbri statistikal ei ole inimeste isiklikku usaldusvaarsust
- oma brauseri bookmargi tagid, need on minu jaoks eriti usaldusvaarsed
usaldusvaarsuse numbri kasutamisest
- iga fakti kohta saaks hoida numbrit: usaldusvaarsust
(modaalsed loogikad, toenaosusloogika, fuzzy loogika, ....)
- kindlad reeglid & faktid: usaldusvaarsus alati 1
kasutada?
fakt A, uv 0.5 P(0.5,..,...,) selle asemel P(,...,..):0.5
fakt B, uv 0.9 P(0.9,...,...) selle asemel P(,...,..):0.9
reegel A & B =>[0.9] C,
jareldame C, uv: 0.4
yldine tahelepanek: sygava jarelduse korral (palju samme) uv kogu aeg vaheneb.
uv: 0.001
eesmark: produtseerida jareldusi, sorteerida uv jargi, kuvada
kohe filter: alla 0.6 ei taha yldse.
Probleem: usaldusvaarsus muutub!!!!
Tana: holds(uri:wuli,type,good):0.7
Homme: holds(uri:wuli,type,good):0.6
yle 0.7: super
alla 0.7: -super
vanade enam mitte kehtivate asjade retractimine voimalik, aga kole toomahukas
vaja oleks hoida usaldusvaarsuse juures tema aega!
Tana: holds(uri:wuli,type,good):0.7,15-10-2007,inimeste modifikaatorid?
Homme: holds(uri:wuli,type,good):0.6,20-7-2008
tore automaatne efekt: vanad infod muutuvad ebaoluliseks
tagi info nö standardne loogikapõhine esitamine
näiteks:
pildiga seotud otse (pildifailist): kuupäev
blogisissekande: brasiilia, reis
URI:bs [brasiilia,reis]
holds(URI:bs,connected,brasiilia).
holds(URI:bs,connected,reis).
Kuidas connected predikaati kasutada?
Voibolla vaja moelda, kuidas connected eri kohtadest tapsemaks muut?
holds(X,connected,Y) & holds(Y,type,kohanimi) => holds(X,location,Y) [0.95]
holds(URI:bs,connected_mybrowser,brasiilia).
holds(URI:bs,connected_blogsitex,reis).
...
Source???
holds(URI:bs,connected,brasiilia):uv,timestamp,source,....
holds(URI:bs,connected,reis):....