Sunteți pe pagina 1din 9

MINISTERUL EDUCAȚIEI AL REPUBLICII MOLDOVA

UNIVERSITATEA TEHNICĂ A MOLDOVEI


DEPARTAMENTUL INFORMATIC ȘI INGINERIA SISTEMELOR

RAPORT
SISTEME BAZATE PE CUNOȘTINȚE
Lucrarea de laborator nr. 2

A efectuat:
st. gr. IA-161 Cosciug Sergiu

A verificat:
dr., conf. univ. Bobicev Victoria

CHIȘINĂU 2018
Tema: Interpretarea semantică a propoziţiilor.

Sarcina:
De efectuat un program în Prolog care execută interpretarea semantică penru
propoziţiile date conform variantei.

Varianta: 7
1. Omul este talentat;
2. Calculatorul ajuta omului in lucru.

Teoria folosită:

1. Noţiuni generale. Problemele, care se rezolvă în cadrul disciplinei


(sursa: Wikipedia) Semantica (din limba greacă: σημαντικός, semantikós =
semnificaţie, înţeles) este o ramură a lingvisticii care studiază sensul cuvintelor şi
propoziţiunilor, având ca scop să clarifice în ce măsură sensul şi semnificaţia noţiunilor
complexe pot fi derivate din simbolurile cele mai simple ale limbajului, sprijinindu-se pe
regulile sintaxei, fără a se identifica însă cu aceasta. Între semantică şi sintaxă există acelaşi
raport ca între fond şi formă. Pentru teoria formală a semnificaţiei în logică şi informatică se
folosesc termenii de "Semantică formală" sau "Semantica limbajului de programare".
(sursa: DEX 98) SEMÁNTICĂ, 1. Ramură a lingvisticii care se ocupă cu studierea
sensurilor cuvintelor şi a evoluţiei acestor sensuri; semasiologie, semantism. 2. (Log.) Teoria
interpretării unui anumit sistem formalizat prin alt sistem formalizat. II. Adj. Care ţine de
semantică (I 1), care se referă la sensurile cuvintelor; semasiologic. – Din fr. sémantique.
Gottlob Frege face deosebirea între:
 Sens (germ.: Sinn sau Bezeichnetes, engl.: sense), care se referă la relaţiile
între semnele, cuvintele şi propoziţiunile specifice unei limbi.
 Semnificaţie (germ.: Bedeutung, engl.: reference), care se referă la relaţia
dintre semne şi lumea existentă.
O preocupare importantă, tradiţională a semanticei o constituie transformarea în
formule logice a exprimărilor naturale într-o anumită limbă, metodă care a fost dezvoltată de
Richard Montague.
Spre deosebire de fonetică, morfologie şi sintaxă, obiectul de studiu al semanticei nu
are un substrat material dat, de aceea este lipsită de posibilitatea unei verificări nemijlocite a
afirmaţiilor teoretice. O semnificaţie nu poate fi oferită direct, ea rezultă de regulă dintr-o
parafrază, la rândul ei compusă din cuvinte, al căror sens necesită mai departe o explicaţie,
ceea ce conduce la un cerc vicios.
Se pot deosebi mai multe domenii de cercetare ale semanticei:
 Semantica lexicală are ca obiect studiul semnificaţiei cuvintelor şi al structurii
interne a vocabularului în întregime.
 Semantica propoziţională cercetează felul în care, din sensul fiecărui cuvânt în
parte rezultă unităţi sintactice mari (fraze) cu semnificaţie proprie.
Scurt Istoric Deşi cercetarea semnificaţiei expresiilor verbale are o lungă tradiţie în
filozofie, semantica (denumită înainte şi Semasiologie) s-a dezvoltat ca ramură de sine
stătătoare a lingvisticei abia în secolul al XX-lea. Termenul de "semantică", deja introdus în
literatura de specialitate de către Michel Bréal în 1883, a fost folosit în înţelesul actual
începând cu lucrările lui Charles William Morris. În cadrul semanticei, el a cercetat în
special relaţiile dintre semnele verbale şi ceea ce este înţeles prin ele, deosebind-o de
sintaxă, care studiază relaţiile semnelor între ele, şi de Pragmatică, care se ocupă cu studiul
relaţiilor dintre semne şi utilizatorul lor. Lingvistica structuralistă a preluat această
diferenţiere şi a dezvoltat mai departe studiul semnificaţiei simbolurilor verbale. În cadrul
semanticei, studiul semnificaţiei cuvintelor se numeşte Semasiologie.
Semantica este o ramură a lingvisticii al cărei obiect de studiu este sensul. Semantica
ca o ramură există şi în alte discipline: filozofie, logică, psihologie. Semantica lingvistică
reprezintă nivelul la care limbajul realizează contactul cu lumea reală. Modul în care poate
fi descris înţelesul enunţurilor aparţinînd limbajului natural, a rămas pentru o lungă perioadă
de timp relativ neclar. Studiul semanticii capătă o amploare mai mare după 1970, atunci
cînd, pe de o parte, apare necesitatea practică în aşa fel de reprezentare, iar pe de altă parte, o
serie de “instrumente” adecvate sunt furnizate în special de către logica matematică şi teoria
mulţimilor.
În cadrul cursului dat se va studia semantica computaţională care face parte din
lingvistica computaţională.
Nu există un consens general asupra a ce înseamnă lingvistica computaţională. Există
o plajă largă în definirea acestui domeniu, începînd cu definiţia foarte generală dată de
WordNet: "utilizarea calculatorului în cercetarea lingvistică" şi definiţia ACL: "modelarea
limbajului natural din perspectivă computaţională", pînă la definiţia dată prin enumerarea
domeniilor acestor. Sensul conceptului de lingvistică computaţională este foarte apropiat de
(şi uneori confundat cu) ingineria limbajului şi prelucrarea limbajului natural.
Totuşi, se remarcă o trăsătură comună a acestor încercări de clarificare, şi anume
faptul că se consideră că lingvistica computaţională reprezintă un domeniu interdisciplinar în
care se îmbină metode ale ştiinţei calculatoarelor (uneori restrîns la domeniul inteligenţei
artificiale) în cercetarea şi aplicaţia lingvistică. De asemenea, există interferenţe cu
psihologia cognitivă şi cu logica matematică.
Domeniile lingvisticii computaţionale, în care este nevoie de reprezentare formală a
sensului:
- traducerea automată (machine translation);
- sisteme de dialog (dialogue programs);
- sisteme de răspuns la întrebări (question-answering systems );
- căutarea informaţiei (search engine, information retrieval);
- extragerea informaţiei (information extraction);
- crearea adnotărilor (summarization);
În ceea ce priveşte analiza limbajului, reamintim faptul că există diferite niveluri la
care aceasta se realizează. Analiza semantică se ocupă de sensurile cuvintelor şi de modul
în care aceste sensuri se combină pentru a forma înţelesul unei întregi fraze. Acesta este
studiul sensului independent de context, adică a sensului pe care o frază îl are indiferent de
contextul în care ea este folosită.
Aşadar, putem identifica următoarele niveluri de analiză a sensului:
- sensul cuvântului ( uneori se vorbeşte de semantica morfemelor, cum ar fi
prefixele sau sufixele);
- sensul propoziţiei în afara contextului;
- sensul propoziţiei în context (analiza discursului);
Primele două puncte se cercetează în cadrul semanticii, iar ultimele aparţin
pragmaticii.
Trebuie de subliniat distincţia fundamentală dintre sens şi referire. De exemplu, în
propoziţia
”Rectorul a participat la adunarea facultăţii”
cuvîntul rectorul înseamnă “persoana care conduce o instituţie de învăţămînt superior”,
dar se referă la o persoană concretă – Ion Bostan. În mod evident rectorul s-ar putea referi şi
la altcineva. Sensul unui cuvînt rămîne însă neschimbat şi determină o clasă de obiecte din
lumea reală la care poate referi cuvîntul respectiv.
Altă problemă abordată în cadrul semanticii este analiza sensului cuvîntului. Este
bine cunoscut faptul că multe cuvinte sunt ambigue, adică au mai multe înţelesuri. Într-un
context particular cititorul trebuie să aleagă sensul adecvat al unui cuvînt, proces numit
dezambiguizare. În timp ce oamenii rezolvă cel mai adesea problemele legate de
dezambiguizare cu relativă uşurinţă, tehnicile computaţionale aferente nu sunt încă suficient
de calitative.
Propoziţii întregi pot fi, de asemenea, ambigue, fie din cauza că cuvintele care intră în
alcătuirea lor sunt ambigue, fie deoarece propoziţia are mai multe structuri sintactice
posibile. Un exemplu celebru de acest tip îl constituie propoziţia
L-am văzut pe băiatul acela cu telescopul. (I saw the boy with the telescope)
în care cu telescopul se referă fie la băiatul acela, fie la văzut, comunicînd sau băiat care a
fost văzut, sau cum am reuşit să îl vedem.

2. Metode şi limbaje de reprezentare a sensului clauzei.


Pentru sintaxă a fost introdusă noţiunea de categorie sintactică şi modalităţile de a
combina categoriile de bază pentru a forma structuri mai ample. Aceeaşi strategie poate fi
aplicată în cazul semanticii. Pentru a dezvolta o teorie a interpretării semantice este nevoie
mai întîi de format un model structural, ca în cazul sintaxei. S-ar putea lua ca unitate
semantică de bază cuvântul sau morfemul, dar această abordare eşuează din cauza
ambiguităţii cuvintelor. Pentru a observa dificultatea problemei este de ajuns de a deschide
oricare dicţionar şi de a număra sensurile cuvintelor prezentate. Problema ambiguităţii
cuvintelor va fi discutată mai târziu. Acum, simplificând situaţia, presupunem că cuvintele
în exemplele noastre au numai un sens. În afară de aceasta, diferite sensuri pot fi organizate
într-o mulţime de clase. Organizarea aceasta este numită ontologie. Asemenea clasificări ale
obiectelor suscită de mult timp interes şi ele se regăsesc, de exemplu, în scrierile lui
Aristotel. Clasele majore sugerate de acesta au fost substanţa (obiectele fizice), cantitatea
(numerele), calitatea (roşu, rotund), relaţia, locul, timpul, poziţia, starea, acţiunea şi
sentimentul. Acestei liste îi pot fi adăugate alte clase.
Există diverse teorii ale sensului, care iau în consideraţie aspecte diferite ale acestuia.
Semantica, cum s-a menţionat deja, se ocupă de sensul independent de context. La acest
nivel este produsă aşa-numită forma logică, care poate fi obţinută direct din structura
sintactică a propoziţiei. Forma logică codifică sensurile posibile ale cuvintelor şi identifică
legăturile semantice dintre cuvinte şi grupurile sintactice ale propoziţiei. Apare, prin urmare,
necesitatea dezvoltării unui limbaj formal în care să fie posibilă specificarea sensului fără a
face referiri la însuşi limbajul natural.
Aşadar, reprezentarea sensului independent de context este numită formă logică.
Operaţia care asociază unei propoziţii forma sa logică este numită interpretarea semantică.
Pentru a descrie sensul diverselor elemente ale limbajului natural este necesară o
modalitate precisă de a descrie informaţia pe care acestea o conţin. Instrumentele folosite în
acest scop sunt furnizate în special de logica şi de teoria mulţimilor, acestea fiind utile la
reprezentarea expresiilor limbajului natural într-o formă logică.
Limbajul de reprezentare a sensului trebuie sa răspundă următoarelor cerinţe:
- sa fie neambiguu (expresia în acest limbaj trebuie sa aibă numai un sens);
- sa fie comparabil (informaţia trebuie sa fie prezentată în aşa mod, ca să poată
fi comparată cu alte cunoştinţe, prezentate în sistem);
- sa reprezinte toată informaţia, pe care o conţine propoziţia;
- sa reprezinte diferite propoziţii cu acelaşi sens în aceeaşi structură semantică .
Chiar şi în condiţiile existenţei unui asemenea limbaj, definirea noţiunii de sens al
unei întregi fraze rămâne însă o sarcină dificilă. O abordare diferită şi promiţătoare în ceea
ce priveşte statutul limbajului formei logice este cea dezvoltată în lingvistica ultimelor
decenii, abordare care foloseşte noţiunea de situaţie ca mulţime particulară de circumstanţe
ale lumii înconjurătoare şi care a generat o întreagă teorie lingvistică, numită semantica
situaţiilor. Din punct de vedere formal, o situaţie poate fi privită ca reprezentînd o mulţime
de obiecte şi de relaţii între aceste obiecte.
Mersul lucrării:
Codul sursă creat:
s1(L1):- prep(L1,Semprep,L2),
np(L1,L5,L2,_Semsubj), np(L2,Ls,L3,Semnoun).
vp(L2,_L4, _L3,Semverb,Semadj),
append([' Theme: '], L5, L6), vp(L1,[Semverb|_],L2,Semverb,_):-
append([Semverb], [Semadj], L8), vi(L1,Semverb,L2).
append(L8, L6, L10), vp(L1,Lsem,L3,Semverb,Semnoun):-
printlist(L10),!. vt(L1,Semverb,L2),
s2(L1):- np(L2,Ls,L3,Semnoun),
np(L1, L5, L2, _), append(['Benificiar: '],Ls,Lsem).
vp(L2, L4, L3, semajuta, _),
np(L3, L9, _,_), printlist([]).
append([' Agent: '],L5,L6), printlist([X|List]) :-
append(L6,L4,L7), write(X), write(' '),
append(L7, L9, L11), printlist(List).
append([semajuta],L11,L8),
printlist(L8),!. %Omul este talentat.
%Calculatorul ajuta omului în lucru.
np(L1,[Semnoun,Semadj|_],L3,Semnoun):-
n(L1,Semnoun,L2), n(['omul'|R],semomul,R).
adj(L2,Semadj,L3). n(['omului'|R],semomului,R).
np(L1,[Semnoun|_],L2,Semnoun):- n(['lucru'|R],semlucru,R).
n(L1,Semnoun,L2). n(['calculatorul'|R],semcalculatorul,R).
np(L1, Lk, L3,Semnoun):- vt(['ajuta'|R],semajuta,R).
pp(L1, Ls, L3,_,Semnoun), vi(['este'|R],semeste,R).
append([' Theme: '],Ls, Lk). adj(['talentat'|R],semtalentat,R).
prep(['in'|R],semin,R).
pp(L1,Ls,L3,Semprep,Semnoun):-
Rezultatele obținute:

1. Omul este talentat 


Analiza propozitiei: s1([omul, este, talentat])
Rezultatul obținut:

2. Calculatorul ajuta omului in lucru


Analiza propozitiei: s2([calculatorul, ajuta, omului, in, lucru])
Rezultatul obținut:
Concluzii:
Pe parcursul acestei lucrări de laborator am creat un program în SWI Prolog care
execută interpretarea semantică penru propoziţiile ”Omul este talentat” și ”Calculatorul
ajuta omului in lucru”.

S-ar putea să vă placă și