pobierz plik referatu

Transkrypt

pobierz plik referatu
Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008
Rozdział 29
w
w
Metody wnioskowania na wiedzy w oparciu o model
obrazowej reprezentacji semantyki zdań języka naturalnego
1 Wstęp
da
.b
w
Streszczenie. W niniejszym rozdziale przedstawiono metody wnioskowania
– generowania odpowiedzi na postawione, w języku naturalnym, pytanie
użytkownika – oparte o model formalny obrazowej reprezentacji semantyki
zdań. Przedstawiono sposoby wnioskowania bezpośredniego i regułowego.
Podano algorytmy realizacji dla obu metod. Realizację obu procesów zilustrowano odpowiednimi przykładami.
pl
s.
Wyrażanie myśli przy użyciu języka jest immanentną cechą człowieka. To między innymi
dzięki zdolności artykułowania dźwięków oraz umiejętności formułowania spójnych wypowiedzi ludzie osiągnęli obecny poziom rozwoju określany mianem cywilizacji. W miarę
rozwijania się cywilizacji ludzie wzbogacali swoją wiedzę o świecie oraz zachodzących
w nim zjawiskach. Przekazywali tę wiedzę, wykorzystując do tego język. Z każdym nowym odkryciem poszerzał się zakres pojęć i form językowych, służący do opisu rzeczywistości. Podstawową przesłanką odkryć i rozwoju było ulepszanie i usprawnianie życia.
Dawało to impuls do rozwoju myśli technicznej i technologii, co doprowadziło, między
innymi do powstania zaawansowanych maszyn cyfrowych. Zadania komputerów, a wcześniej prostszych maszyn liczących są nadal podobne. Wykorzystywane są w przemyśle jako
urządzenia sterujące lub projektowaniu i modelowaniu jako urządzenia symulujące. Pozostał jednak problem komunikacji człowiek-maszyna wynikający z szerokiej dostępności
komputerów, powszechności ich zastosowania oraz wizji możliwości ich wykorzystania.
Niezbędne stało się wyposażenie komputerów w możliwość komunikacji z człowiekiem
i to w formie naturalnej dla człowieka, czyli przy użyciu języka naturalnego1.
Rozpatrywane tu metody wnioskowania stanowią element badań dotyczących przetwarzania języka naturalnego realizowanych w oparciu o model formalny obrazowania semantyki zdań. Prace te mają na celu opracowanie modeli formalnych pozyskiwania wiedzy ze
zdań języka naturalnego i wykorzystania tej wiedzy w procesie wnioskowania w kompute1
tu: za język naturalny przyjęto język angielski
Tomasz Kapłon
Politechnika Wrocławska, Instytut Informatyki, Automatyki i Robotyki, ul. Janiszewskiego 11/17,
50-372 Wrocław, Polska
email:[email protected]
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008
Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008
T. Kapłon
rowym systemie z bazą wiedzy, jak również w systemach automatycznego programowania
lub tłumaczenia maszynowego. Proponowane metody wnioskowania wykorzystują formalizm obrazowania semantyki (nieco zbliżony do teorii Schanka [1]) i stanowią, jako całość,
oryginalne, choć nie tak zaawansowane podejście do reprezentacji wiedzy i przetwarzania
języka naturalnego jak na przykład projekt Cyc, czy też rozwiązania opisywane chociażby
w pracach [2], [3], [4]. w
2 System wnioskowania
da
.b
w
w
System wnioskowania oparty jest na modelu formalnym obrazowej reprezentacji semantyki
zdań języka naturalnego [5]. Realizuje on dwie podstawowe funkcje: gromadzi (akumuluje)
w pamięci wiedzę w postaci obrazów semantycznych i przetwarza tak reprezentowaną
wiedzę w celu udzielenia odpowiedzi na pytania użytkownika. System rozpoczyna swoją
pracę z pusta bazą wiedzy. Założenie to, zostało wprowadzone, aby łatwiejsze było zrozumienie działania systemu. Nie ogranicza ono ogólności rozważań. Praca systemu inicjowana jest pytaniem użytkownika. Oczywiste jest, że w przypadku pustej bazy wiedzy system
nie jest w stanie wygenerować żadnej odpowiedzi. Należy zatem uzupełnić bazę wiedzy.
W tym celu wprowadzane są zdania języka zawierające wiedzę. Zdania te mogą być zbiorem faktów, czyli stanowić wiedzę faktograficzną z danej dziedziny (geografia, historia,
astronomia), jak również opisywać pewne zdarzenia rozgrywające się w czasie dotyczące
pewnej dziedziny, czyli przedstawiać sobą wiedzę epizodyczną.
Proces przetwarzania wiedzy przebiega według następującego schematu, który pokrótce
zostaną przedstawione zostaną w kolejnych podpunktach:
− analiza syntaktyczna (sprawdzenie poprawności gramatycznej zdań) i semantyczna
(nadanie kategorii i cech semantycznych) zdań,
− tworzenie obrazów semantycznych,
− odtwarzanie wiedzy z obrazów – wnioskowanie bezpośrednie,
− wnioskowanie regułowe.
Elementem pominiętym ze względu na jego złożoność, choć niezbędnym w systemie jest
tworzenia nowych reguł wnioskowania na podstawie zgromadzonej wiedzy.
pl
s.
3 Wnioskowanie na obrazowej reprezentacji semantyki
Wnioskowanie jest procesem, w którym na podstawie znanych zdań prawdziwych (przesłanek) potwierdza się prawdziwość znanego zdania (konkluzja), co do którego istniała niepewność jego prawdziwości.
W prezentowanym modelu proces wnioskowania będzie interpretowany tylko jako wyprowadzanie nowego zdania. Nie będzie dokonywana jakakolwiek ocena prawdziwości
odpowiedzi pod względem semantycznym. Ocena prawdziwości istotna jest w przypadku
różnej interpretacji modelu świata, co dotyczy wiedzy ogólnej. Jednak, wiedza z określonej
dziedziny, wprowadzana do bazy wiedzy – taki model został przyjęty – ma jednoznacznie
narzuconą interpretację. Dlatego też zgodnie z definicją wynikania semantycznego stanowiącego, że z formuł φ1, …, φn-1 wynika semantycznie formuła φn wtedy, gdy dla żadnego
modelu nie istnieje taka interpretacja, żeby formuły φ1, …, φn-1 były spełnione, a formuła φn
nie była spełniona przy tej interpretacji modelu, [6], wiedza ta, jest wiedzą wystarczająca
370
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008
Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008
w
do tego, aby wyprowadzić wniosek na podstawie przesłanek, gdyż istnieje założona, jednoznaczna interpretacja modelu świata.
W psychologii wyróżnia się dwa aspekty myślenia. Myślenie problemowe, gdzie procesy myślowe ukierunkowane są na konkretny cel, i otwarte, określane jako marzenia, [6].
Myślenie otwarte, ze względu na brak reguł, według których zachodzi jest niemożliwe do
sformalizowania i wyposażenie w tę umiejętność komputerów. Myślenie problemowe,
dzięki temu, że możliwa jest obserwacja, opis realizacji i powtarzalność jego wykonywania, możliwe jest do opisu za pomocą aparatu formalnego. Prezentowany proces wnioskowania dotyczy myślenia typu problemowego.
Każde wnioskowanie inicjowane jest przez postawienie problemu. Problem zaś przedstawiany jest w formie pytania bądź ciągu pytań. W opisywanym modelu wnioskowania
realizacja wnioskowania polega na rozwiązywaniu problemów o charakterze deklaratywnym. W związku z tym, wnioskowanie inicjowane będzie przez pytanie, w którym zawarta
będzie część odpowiedzi oraz komponent nieznany, którego to pytanie będzie dotyczyć.
Ograniczenie, co do sposobu konstruowania odpowiedzi nie pociąga jednak za sobą kolejnego ograniczenia – równoważności semantycznej odpowiedzi i pytania. Nie musi zachodzić pełna zgodność semantyczna obrazu pytania i odpowiedzi, co było sugerowane w pracy [7]. Kwestia występowania w odpowiedzi komponentów opcjonalnych zaprezentowana
jest w [8] wnioskowanie bezpośrednie z użyciem wzorców akcji. Jest ona rozpatrywana
w aspekcie kontekstu pytania, czyli akcentu stawianego na określony komponent występujący w pytaniu.
Wnioskowanie w rozumieniu prezentowanego modelu polega na poszukiwaniu w bazie
wiedzy faktów zawartych w zdaniach będących przesłankami, które będą potwierdzać lub
negować prawdziwość konkluzji. W trakcie poszukiwania komponentu stanowiącego
przedmiot pytania dokonywane jest precyzowanie zmiennych zawartych w przesłankach,
co w efekcie ma doprowadzić do sprecyzowania komponentu szukanego. Fakt, będący istotą pytania, jako coś potencjalnego, możliwego lecz niepewnego (hipotetycznego), nazywany będzie hipotezą. Hipoteza (poszukiwany komponent) oznaczany jest symbolem X. Opisana metoda określana jest jako wnioskowanie elementarne dokładne wstecz [9].
Wynikiem wnioskowania jest:
− weryfikowanie hipotezy – wskazywanie, że jest ona prawdziwa,
− falsyfikowanie hipotezy – wskazywanie, że jest ona nieprawdziwa.
Założenie dla wnioskowania elementarnego dokładnego wstecz stanowi, że aby można było
weryfikować lub falsyfikować hipotezę musi ona być konkluzją przynajmniej jednej reguły.
W przeciwnym wypadku, jeżeli hipoteza nie jest konkluzją żadnej reguły jest falsyfikowana w sposób trywialny, na mocy założenia skończonego świata, [9].
W prezentowanym podejściu do wnioskowania, założenie o skończoności świata zostaje
pominięte. Przyjęte jest, że niezależnie od tego, czy dana hipoteza jest, czy też nie jest
konkluzją jakiejkolwiek reguły, może ona być weryfikowana lub falsyfikowana. Aby sytuacja taka mogła zaistnieć konieczne jest wprowadzenie do modelu dwóch mechanizmów.
Pierwszy to możliwość prowadzenia dialogu z użytkownikiem, którego celem jest uzupełnienie, istotnej z punktu widzenia wnioskowania, wiedzy oraz mechanizm autonomicznego
tworzenia reguł, według których dokonywane jest wnioskowanie. Reguły te nazywane będą
regułami wnioskowania. Tworzenie nowych reguł przedstawione zostało w [5].
Elementy koncepcji wnioskowania opartego na obrazowej reprezentacji semantyki zdań
oraz na grafowej reprezentacji składni przedstawione zostały w pracach, [7], [10], [11].
Wynikiem tych prac było wyróżnienie metod wnioskowania – bezpośredniego i regułowego.
da
.b
w
w
pl
s.
371
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008
Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008
T. Kapłon
3.1 Metody wnioskowania
w
Wnioskowanie bezpośrednie jest operacją, która nazywana jest również odtwarzaniem wiedzy. Zakłada się, że zdanie będące odpowiedzią, czyli zawierające hipotezę znajduje się
w bazie wiedzy. Wnioskowanie bezpośrednie polega na wyszukaniu w bazie wiedzy
wszystkich obrazów semantycznych równoważnych obrazowi semantycznemu hipotezy
oraz tych obrazów, które zawierają w sobie obraz hipotezy i uzupełnione są komponentami
nieistotnymi z punktu widzenia pytania, czyli takimi, które nie mają wpływu na poprawność odpowiedzi. W procesie generowania odpowiedzi dokonywana jest analiza zdań prowadząca do ustalenia zgodności wszystkich koniecznych komponentów i wskazania jednej
prawidłowej odpowiedzi, (poziom szczegółowości pytania może powodować, że użytkownikowi przedstawiana będzie więcej niż jedna odpowiedź).
Wnioskowanie regułowe wykonywane jest wtedy, gdy w bazie wiedzy nie istnieje obraz
semantyczny równoważny obrazowi pytania, czyli wtedy, gdy po wykonaniu wnioskowania bezpośredniego zbiór zdań będących potencjalnymi odpowiedziami jest pusty. W takich
przypadkach w pamięci reguł wnioskowania poszukiwany jest obraz semantyczny pytania,
który stanowi konkluzję istniejącej reguły – warunkiem koniecznym, lecz niewystarczającym poprawnego wykonania przez komputer wnioskowania regułowego jest równoważność obrazu semantycznego pytania i obrazu konkluzji reguły.
Następnie wykonywane jest wnioskowanie bezpośrednie w celu weryfikacji przesłanek
reguły. Konkluzja uznawana jest za zweryfikowaną, jeżeli hipoteza zostanie sprecyzowana
– określone zostaną wszystkie komponenty semantyczne zawarte w konkluzji. W przypadku, gdy hipoteza zostaje sfalsyfikowana realizowany jest proces tworzenia reguły, na podstawie istniejących reguł, wiedzy zawartej w bazie wiedzy oraz wiedzy uzupełnianej (na
żądanie) przez użytkownika.
Wynikiem realizacji procesu wnioskowania, na który składają się opisane powyżej mechanizmy jest nowa wiedza prezentowana użytkownikowi w formie zdania języka naturalnego, jako odpowiedź na jego pytanie. Odpowiedzi wprowadzane są do bazy wiedzy. Podobnie dzieje się z nowo utworzoną regułą. Jej składnia i obraz semantyczny zapamiętywane są w bazie wiedzy. Przebieg procesu wnioskowania z uwzględnieniem wszystkich mechanizmów wnioskowania przedstawiony został na rys. 1.
da
.b
w
w
pl
s.
372
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008
Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008
TRANSFORMACJA PYTANIA
UŻYTKOWNIKA
WNIOSKOWANIE BEZPOŚREDNIE
w
ODPOWIEDŹ ?
TAK
UDZIELENIE
ODPOWIEDZI
NIE
w
BAZA WIEDZY
WNIOSKOWANIE REGUŁOWE
ODPOWIEDŹ ?
TAK
w
NIE
TWORZENIE NOWEJ REGUŁY
da
.b
REGUŁA ?
TAK
ZAPAMIĘTANIE
NOWEJ REGUŁY
NIE
DIALOG Z UŻYTKOWNIKIEM
Rys. 1. Schemat realizacji procesu wnioskowania z uwzględnieniem wszystkich mechanizmów wnioskowania
pl
s.
3.2 Wnioskowanie bezpośrednie
Zadaniem systemu wnioskującego działającego w oparciu o prezentowany model formalny
wnioskowania, jak również każdy inny system wnioskujący jest wyprowadzanie odpowiedzi, stanowiącej weryfikację lub falsyfikację pewnej hipotezy stawianej w pytaniu. Pytania
zadawane przez użytkownika stanowią element pierwotny procesu wnioskowania – inicjują
ten proces. Komputer, aby udzielić odpowiedzi musi przedstawione pytanie zrozumieć.
Rozumienie pytania nie oznacza tutaj, że system posiada świadomość znaczenia pytania,
lecz jedynie zdolność do jego przetworzenia do postaci pozwalającej na udzielenie odpowiedzi. Udzielenie odpowiedzi wymaga określenia, na podstawie elementów pytania, roli
semantycznej komponentu szukanego. Rola ta determinowana jest przez słowa pytające:
what, where, when, how, why itp. Słowa te określają pojęcia, które należy sprecyzować
w celu znalezienia odpowiedzi. Ograniczają one również kategorie semantyczne poszukiwanego komponentu. W przekształconym pytaniu, komponent szukany oznaczany jest
znakiem X, natomiast w grafie semantycznym przekształconego pytania stanowi wierzchołek reprezentujący cechę semantyczną szukanego komponentu. Przekształcanie pytań na
postać zdań oznajmujących omówione jest szczegółowo w pracach, [12], [13], [14]. Efek373
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008
Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008
T. Kapłon
w
tem działania procedur przekształcających jest wskazanie kategorii semantycznej komponentu szukanego. Natomiast określenie cechy i sprecyzowanie nazwy pojęcia (konkretnego
słowa) realizowane jest w procesie wnioskowania.
Podstawowym sposobem wnioskowania jest wnioskowanie bezpośrednie. Traktowane
jest ono jako proces odtwarzania wiedzy i wykonywane w pierwszej kolejności. Warunkiem koniecznym i dostatecznym prawidłowego odtworzenia wiedzy jest istnienie w bazie
wiedzy obrazu semantycznego zgodnego z obrazem semantycznym przekształconego pytania. Jeżeli wnioskowanie bezpośrednie nie daje pozytywnego efektu, realizowane jest
wnioskowanie regułowe.
Określenie odpowiedzi poprzez wnioskowanie bezpośrednie możliwe jest, jeżeli:
− semantyka przekształconego pytania jest zgodna z semantyką przynajmniej jednego
zdania znajdującego się w bazie wiedzy – zgodność tę określa zgodność obrazów
semantycznych przekształconego pytania i przynajmniej jednego zdania w bazie
wiedzy istniejąca dla istotnych, z punktu widzenia pytania, komponentów,
− składnia grup słów w zdaniu oznajmującym wyprowadzonym z pytania musi być
zgodna ze składnią odpowiadających im grup słów w przynajmniej jednym zdaniu.
Wnioskowanie bezpośrednie przebiega dwuetapowo. Najpierw określany jest zbiór zdań
o semantyce zgodnej z semantyką przekształconego pytania. Następnie, następuje precyzowanie pojęć, czyli porównywanie składni przekształconego pytania i zdań ze zbioru
potencjalnych odpowiedzi.
Poniżej przedstawiony jest przykład wnioskowania bezpośredniego, w którym występuje
pełna zgodność (identyczność) semantyk przekształconego pytania i zdania z bazy wiedzy
stanowiącego odpowiedź. Innym, nieprzedstawionym przypadkiem jest taki, w którym nie
zachodzi pełna zgodność semantyk, jednak z punktu widzenia komponentu szukanego
możliwe jest jego określenie odpowiedzi przy wykorzystaniu zgromadzonych wzorców
akcji. Wnioskowanie realizowane jest wtedy w oparciu o tak zwane wzorce akcji [5].
da
.b
w
w
3.2.1 Przykład wnioskowania bezpośredniego
Do bazy wiedzy wprowadzane jest zdanie:
The tourist came to the restaurant at five.
(S1)
pl
s.
Wykonywana jest analiza syntaktyczna i semantyczna zdania S1. Grupom słów nadawane
są kategorie semantyczne, rdzeniom grup cechy semantyczne, zdaniu semantyka c4.
the tourist → d1 d6 ↔ a4 → AGENT ↔ HUMAN ↔ bn16
came → d21 ↔ a15 → ACTION ↔ MOTION ↔ bv9
to the restaurant → d22 d1 d23 ↔ a16 → LOCATION ↔ PLACE ↔ bn12
at five → d8 d24 ↔ a17 → TIME ↔ HOUR ↔ bn25
s6 = a4 a15 a16 a17 ↔ c4
A’+ = 0( a4 1( z1s6a15 2( z1s6a16 3( z1s6a17 4( z3s6a4 )4 )3 )2 )1 )0
Tworzony jest obraz semantyczny zdania S1, który zapisywany jest w postaci wyrażenia
(3.11) w bazie wiedzy.
HUMAN u1 MOTION u3 PLACE u7 HOUR u0 ↔ c4+
ciąg kategorii semantycznych
bn16 u1, bv9 u3, bn12 u7, bn25 u0 ↔ c4+
B’+ = 0( bn16 1( u1c4+bv9 2( u3c4+bn12 3( u7c4+bn25 4( u0c4+bn16 )4 )3 )2 )1 )0
(3.11)
Relacja pomiędzy reprezentacją zdania i reprezentacją semantyki ma następującą postać:
374
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008
Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008
u1a4, u3a15, u7a16, u0a17 ↔ c4
U’+= 0( u1 1( a4c4u3 2( a15c4u7 3( a16c4u0 4( a17c4u1 )4 )3 )2 )1 )0
(3.12)
cl oznacza semantykę na poziomie słów,
cl* oznacza semantykę na poziomie kategorii semantycznych,
cl+ oznacza semantykę na poziomie cech semantycznych.
Jeżeli użytkownik zada pytanie:
gdzie:
w
Where did come the tourist at five?
(P1)
Pytanie transformowane jest na postać zdania oznajmującego (przekształcone pytanie):
(P1’)
The tourist came to X at five.
w
Dokonywana jest analiza syntaktyczna i semantyczna przekształconego pytania (P1’).
Określana jest jego struktura na poziomie słów 3.13, nadawane są kategorie i cechy semantyczne grupom słów 3.14 oraz tworzony jest obraz semantyczny reprezentowany przez
wyrażenie 3.15.
w
(3.13)
bn16 u1, bv9 u3, b* u7, bn25 u0 ↔ c**
(3.14)
B+(c*) = 0( bn16 1( u1c*bv9 2( u3c*b* 3( u7c*bn25 4( u0c*bn16 )4 )3 )2 )1 )0
(3.15)
da
.b
s* = a4 a15 a* a17 ↔ c*
Ciąg (3.16) reprezentujący odpowiedź poszukiwany jest w wyrażeniu (3.11)
B’+ = 0( bn16 1( u1c4+bv9 2( u3c4+bn12 3( u7c4+bn25 4( u0c4+bn16 )4 )3 )2 )1 )0
gdzie zostaje znaleziony (zaznaczone powyżej pogrubioną czcionką) w postaci ciągu:
bn16 u1, bv9 u3, bn12 u7, bn25 u0 ↔ c4+
(3.16)
Wyróżniony zostaje ciąg symboli u,
u1 u3 u7 u0 ↔ c4+
który, wraz z odpowiadająca mu semantyką c4+ odszukiwany jest w wyrażeniu 3.12 w celu
odtworzenia grup słów i sprecyzowania cechy semantycznej komponentu szukanego.
pl
s.
U’+= 0( u1 1( a4c4u3 2( a15c4u7 3( a16c4u0 4( a17c4u1 )4 )3 )2 )1 )0
W wyrażeniu 3.17 odszukany zostaje ciąg, 3.18
u1a4 u3a15 u7a16 u0a17 ↔ c4
(3.17)
Otrzymujemy związek pomiędzy reprezentacją semantyki i składnią zdania, 3.18.
u1, u3, u7, u0 → a4, a15, a16, a17
(3.18)
Sprecyzowany zostaje szukany komponent X – LOCATION ↔ a16
Z wyrażenia D’+ odtwarzane są ciągi symboli dj kodujące słowo (słowa) uzupełniające
odpowiedź: a16 ↔ d22 d23
Na podstawie słownika /D określane są słowa d22, d1 i d23
d22 – to (d1 – the)
d23 – restaurant
Uzupełniana jest odpowiedź – w miejsce symbolu X wprowadzane są słowa to restaurant.
Komputer udziela odpowiedzi w postaci zdania 3.19
375
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008
Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008
T. Kapłon
The tourist came to the restaurant at five.
(3.19)
w
Wnioskowanie bezpośrednie jest najszybszym sposobem na uzyskanie odpowiedzi na
zadane pytanie. Niemniej jednak, nie każda możliwa konstrukcja syntaktyczna i semantyczna wprowadzana jest do bazy w postaci odrębnego zdania. W niektórych przypadkach
możliwe jest wyodrębnienie odpowiedzi przy wykorzystaniu wnioskowania z wykorzystaniem wzorców akcji. Nie jest to jednak możliwe w każdym przypadku, ponieważ wiedza
potrzebna do udzielenia odpowiedzi może być uwikłana w wielu zdaniach.
Istotą inteligentnego przetwarzania wiedzy jest umiejętność udzielenia odpowiedzi na
dowolnie, w sensie semantycznym, postawione pytanie o posiadaną wiedzę, nie zaś wprowadzenie do bazy wiedzy wszystkich możliwych konstrukcji zdań i jedynie ich odtwarzanie. Jest to możliwe wtedy, gdy komputer posiada umiejętność kojarzenia faktów i tworzenia reguł, które pozwolą mu na wyciąganie wniosków z wiedzy uwikłanej w zdaniach.
W przypadku, kiedy reguła bądź reguły są znane – istnieją w bazie wiedzy – możliwe jest
wykonanie wnioskowania regułowego.
w
w
3.3 Wnioskowanie regułowe
da
.b
Definicja 3.1: Wnioskowanie regułowe to wnioskowanie z wykorzystaniem istniejących
w bazie wiedzy reguł wnioskowania, które wykonywane są w przypadku, w którym wnioskowanie bezpośrednie nie daje pozytywnego rezultatu w postaci odpowiedzi na postawione przez użytkownika pytanie.
pl
s.
Wnioskowanie regułowe realizowane jest w następujący sposób:
− wyszukanie w bazie wiedzy reguły, której konkluzja posiada taki sam obraz semantyczny jak przekształcone na postać zdania oznajmującego, pytanie użytkownika.
− wyszukaniu zdań o obrazach semantycznych identycznych z obrazami zdań warunkowych reguły.
− określeniu na ich podstawie cechy semantycznej symbolu ai i tworzących go symboli
dj, komponentu szukanego X,
Warunkiem koniecznym wykonania wnioskowania regułowego jest istnienie w bazie wiedzy reguły o semantyce zgodnej z semantyką pytania.
Poniżej zaprezentowany zostanie algorytm wnioskowania regułowego.
3.3.1 Algorytm wnioskowania regułowego
Poniższy algorytm opisuje sposób wnioskowania regułowego z możliwymi wariantami
realizacji tego procesu:
− istnienia większej niż jedna, liczby reguł o obrazie semantycznym konkluzji zgodnym z obrazem pytania,
− istnienia zagnieżdżenia reguł wnioskowania,
− konieczności utworzenia nowej reguły wnioskowania.
KROK 1 określenie kategorii semantycznej komponentu X.
KROK 2 uzupełnienie ciągu symboli uk konkluzji o symbol reprezentujący komponent X.
KROK 3 na podstawie semantyki cl* konkluzji reguły, wyszukanie w wyrażeniu R’+
właściwej reguły ze sprawdzeniem poniższych warunków:
376
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008
Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008
− jeżeli liczba konkluzji o semantyce zgodnej z semantyką pytania jest większa niż
jedna, określana jest semantyka reguły na poziomie cech semantycznych w celu wyróżnienia właściwej,
− jeżeli wystąpi podobna zgodność semantyk na poziomie cech, określana jest również
semantyka na poziomie słów,
− jeżeli brak reguły, tworzona jest nową.
w
KROK 4 zamieniane są kategorie semantyczne reguły na odpowiednie cechy.
w
w
KROK 5 jeżeli w regule występują komponenty nieokreślone przez cechy semantyczne
wtedy:
− wyszukiwane są w wyrażeniu A’+ zdania si, które mają co najmniej dwa wspólne
symbole ai z konkluzją,
− określane są semantyki tych zdań na poziomie słów (cl),
− wyszukiwane są w tablicy /C+ pary symboli cl+ i bk odpowiadających semantykom cl,
− z wyrażenia B’+ wyodrębniane są ciągi bkuk dla wyszukanych par symboli,
− otrzymane ciągi porównywane są z ciągami reguły, w których należy uzupełnić brakujące cechy semantyczne i następuje powrót do KROK4,
jeżeli wszystkie kategorie semantyczne zostały przetransformowane na odpowiednie cechy
wykonuje KROK 6;
da
.b
jeżeli nie ma możliwości dokonania transformacji komputer wykonuje wnioskowanie regułowe dla zdania warunkowego, którego kategorii nie można przetransformować;
jeżeli wszystkie komponenty w zdaniach warunkowych reguły zostały określone przez
cechy semantyczne i w zdaniach tych nie występuje komponent znajdujący się w konkluzji
wtedy wykonywana jest reguła dla zdań warunkowych, określana jest odpowiedź, następuje
zapisanie jej w bazie wiedzy i ponownie wykonanie wnioskowania regułowego dla postawionego pytania;
KROK 6 odszukanie w wyrażeniu U’+ term reprezentujący komponent szukany X.
KROK 7 odtworzenie wiedzy w postaci zdania języka naturalnego.
pl
s.
Działanie algorytmu zilustrowane zostanie przykładem w oparciu o istniejącą regułę wnioskowania dla jednej z klas reguł. Więcej o klasach reguł w [5].
3.3.2 Wnioskowanie z regułą dziedziczenia
Wnioskowanie z użyciem klasy reguł dziedziczenia pokazane zostanie na przykładzie zdań
z innej dziedziny niż zdania, na podstawie których reguła została utworzona.
Rozważmy następujące zdania wprowadzane do bazy wiedzy:
A car left from a garage.
The garage is placed in the Woolworth Center.
S2
S3
Wykonywana jest analiza syntaktyczna i semantyczna wprowadzanych zdań. Przebieg analiz opisany jest np. w [5]. Poniżej przedstawione zostaną efekty analiz.
Struktura zdania S2 i wyrażenie ją reprezentujące mają postać:
s2 = a14 a15 a16 ↔ c6
A+(s2) = 0( a14 1( z1s2a15 2( z1s2a16 3( z3s2a14 )3 )2 )1 )0 = A’+
(3.20)
377
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008
Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008
T. Kapłon
Obraz semantyczny zdania S2 ma postać:
OBJECT u12 ACTION u3 LOCATION u0 ↔ c1*
(3.21)
w
Nadane rdzeniom grup słów cechy semantyczne i ich symbole to:
a car → ARTEFACT→ bn3
left → MOTION → bv9
garage → ROOM → bn27
Ciąg symboli bkuk opisujący strukturę zdania na poziomie cech semantycznych:
bn3u3, bv9u3, bn27u0 ↔ c6+
Wyrażenie reprezentujące ten ciąg ma postać:
w
B+(c6+) = 0(bn3 1( u12c6+bv9 2( u3c6+bn27 3( u0 c6+bn3 )3 )2 )1 )0 = B’+
(3.22)
Relacja pomiędzy reprezentacją zdania S2 i jego semantyką określona jest następująco:
u12a14, u3a15, u0a16 ↔ c6
w
i reprezentowana jest przez wyrażenie:
U+(c6) = 0(u12 1( a14c6u3 2( a15c6u0 3( a16c6u12 )3 )2 )1 )0 = U’+
(3.23)
da
.b
Podobnie dla zdania S3 określona zostaje:
struktura zdania i jej reprezentacja:
s32 = a16 a17 a18 ↔ c7
A+(s32) = 0( a16 1( z1s3a17 2( z1s3a18 3( z3s3a16 )3 )2 )1 )0
(3.24)
A’+ = 0(a14 1(z1s2a15 2(z1s2a16 3( z3s2a14, z1s3a17 4( z1s3a18 5( z3s3a16 )5 )4 )3 )2 )1 )0
(3.25)
Tworzony jest obraz semantyczny i odpowiednie wyrażenia reprezentujące strukturę semantyczną zdania S3:
LOCATION1 u14 ACTION u3 LOCATION2 u0 ↔ c2*
bn27u14, bv11u3, bn12u0 ↔ c7+
pl
s.
placed → STATIVE → bv11
Woolworth Center → PLACE → bn12
(3.26)
B+(c7+) = 0( bn27 1( u14c7+bv11 2( u3c7+bn12 3( u0c7*bn27 )3 )2 )1 )0
(3.27)
B’+ = 0(bn3 1(u12c6+bv9 2(u3c6+bn27 3(u0 c6+bn3, u14c7+bv11 4(u3c7+bn12 5(u0c7*bn27…
(3.28)
Relacja pomiędzy reprezentacją zdania i jego semantyką opisana jest odpowiednimi ciągami symboli i wyrażeniami:
u14a16, u3a17, u0a18 ↔ c7
U+(c7+) = 0(u14 1( a16c7u3 2( a17c7u0 3( a18c7u14 )3 )2 )1 )0
(3.29)
U’+ = 0(u12 1( a14c6u3 2( a17c7u0, a15c6u0 3( a16c6u12 )3, u0 3( a18c7u14 4(a16c7u3…
(3.30)
Jeżeli użytkownik zada następujące pytanie:
378
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008
Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008
Did the car left from Woolworth Center?
(P2)
Pytanie przekształcone zostanie na postać zdania oznajmującego:
The car left from X.
(P’2)
Określona zostanie struktura przekształconego pytania:
w
s* = a14 a15 a*
i wykonany zostaje proces wnioskowania regułowego według zaprezentowanego.
w
KROK 1
Dla słowa pytającego typu do/does kategoria komponentu szukanego X jest zgodna z atrybutem pytania, który w tym przypadku ma kategorię semantyczną LOCATION. Stąd,
w pytaniu P2 kategoria semantyczna komponentu X określona zostaje jako LOCATION.
KROK 2
Przekształcone pytanie opisane zostaje następującym ciągiem kategorii semantycznych.
w
OBJECT u12 ACTION u3 LOCATION u0 ↔ c1*
(3.31)
Semantyka zdania na poziomie kategorii semantycznych została określona na podstawie
ciągu symboli uk, podobnie jak w przypadku wprowadzania nowego zdania.
da
.b
bn3u12 bv9u3 bn*u0 ↔ c*+
(3.32)
Cecha semantyczna bn* określona została w procesie transformacji pytania: bn12 – PLACE.
Ciąg 3.32 przyjmuje zatem następującą postać:
bn3u12 bv9u3 bn12u0 ↔ c*+
(3.33)
Wyekstrahowany z 3.33, ciąg bn3 bv9 bn12 wyszukiwany jest w wyrażeniu 3.28 w celu określenia semantyki c*+ pytania na poziomie cech semantycznych. Ponieważ ciąg taki nie zostaje znaleziony nieznana semantyka c*+ określona zostaje jako nowa, oznaczona c8+.
Reguła r1
if
and
then
pl
s.
KROK 3
Semantyka konkluzji c1* odszukiwana jest w wyrażeniu R’+ w celu określenia reguły,
której konkluzja jest zgodna, co do obrazu semantycznego z obrazem pytania. W wyrażeniu
(3.34) odszukany zostaje term składający się z symbolu semantyki konkluzji na poziomie
kategorii semantycznych c1*, symbolu oznaczającego konkluzję reguły z4 ≡ then, (z5 ≡ if, z2
≡ and), i symbolu reguły r1. Następnie, w wyrażeniu odszukiwane są wszystkie termy
zawierające symbol r1. W ten sposób znajduje się właściwą, aktualnie potrzebną w procesie
wnioskowania regułę r1.
(3.35)
c1*
OBJECT1 u12 ACTION1 u3 LOCATION1 u0 ↔
LOCATION1 u14 ACTION2 u3 LOCATION2 u0 ↔ c2*
OBJECT1 u12 ACTION1 u3 LOCATION2 u0 ↔ c1*
KROK 4
Reguła r1 transformowana jest na ciągi cech semantycznych – w pierwszej kolejności realizowana jest zamiana cech w konkluzji, a następnie w przesłankach reguły. Reguła przyjmuje postać:
Reguła r1
(3.36)
379
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008
Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008
T. Kapłon
if
and
then
bn3u12 bv9u3 LOCATION1 u0
LOCATION1 u14 ACTION2 u3 bn12u0
bn3u12 bv9u3 bn12u0
(3.36a)
(3.36b)
w
KROK 5
Ponieważ w regule pozostają komponenty nieokreślone przez cechy semantyczne: LOCATION1 i ACTION2, następuje ich określenia na podstawie posiadanej wiedzy wg kolejnych kroków:
− wyszukanie w wyrażeniu 3.25 zdań, w których występują przynajmniej dwa symbole
ai zgodne ze znajdującymi się w pytaniu.
znajdujące się w pytaniu
s* = a14 a15 a* ↔ c*
s2 = a14 a15 a16 ↔ c6
odszukane zdanie, (zgodne symbole a14 i a15).
− określenie semantyki zdania s2 na poziomie słów.
s2 ↔ c6
− w tablicy /C+ wyszukanie semantyki c6 i odpowiadająca jej semantyka na poziomie
cech semantycznych c6+
w
w
Tablica /C+
{ c6, … }
c6+
bn16
da
.b
− wyodrębnienie, na podstawie semantyki c6+, z wyrażenia (3.28) ciąg
bn3u3, bv9u3, bn27u0 ↔ c6+
(3.37)
− porównanie ciągu 3.37 z ciągami zawartymi w regule: 3.36a i 3.36b.
Z porównania powyższych ciągów wynika, że LOCATION1 jest reprezentowana przez
symbol bn27. Reguła ma teraz postać:
Reguła r1
if
and
then
(3.38)
bn3u12 bv9u3 bn27u0
bn27 u14 ACTION2 u3 bn12u0
bn3u12 bv9u3 bn12u0
pl
s.
Podobnie określona zostaje cecha semantyczna komponentu ACTION2 = bv11.
W tym momencie określone są wszystkie cechy semantyczne komponentów reguły r1.
Przyjmuje ona następująca postać.
Reguła r1
if
and
then
bn3u12 bv9u3 bn27u0
bn27 u14 bv11u3 bn12u0
bn3u12 bv9u3 bn12u0
(3.39)
KROK 6
Następuje określenie komponentu X. Jest on reprezentowany przez term bn12u0. Term taki
występuje w drugim zdaniu warunkowym. Stąd, dla u0 z termu bn12u0 i zdania S3 ↔ c7, następuje skok do wyrażenia 3.30, z którego wyodrębniany jest symbol a18.
U’+ = 0(u12 1( a14c6u3 2( a17c7u0, a15c6u0 3( a16c6u12 )3, u0 3( a18c7u14 4(a16c7u3…
(3.40)
Symbol a18 znajdowany jest w tablicy /A i na podstawie zawartego tam symbolu dj oznaczającego pierwsze słowo w grupie a18, ze słownika /D odczytywana jest zawartość grupy:
380
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008
Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008
a18 ↔ d20 d21 : Woolworth Center
KROK 7
Odpowiedź prezentowana jest w postaci zdania:
The car left from the Woolworth Center.
Proces wnioskowania regułowego został wykonany prawidłowo.
w
4 Podsumowanie
da
.b
w
w
Przedstawione rozważania poświęcone zostały formalnym metodom wnioskowania w oparciu o model reprezentacji semantyki zdań języka naturalnego. Formalizm obrazowania semantyki przedstawiony został między innymi w pracy [5]. W niniejszym rozdziale przedstawiono algorytmy wnioskowania bezpośredniego i regułowego, które zilustrowano prostymi przykładami. Pewna banalność przykładów nie umniejsza jakości i wartości prezentowanych rozwiązań, pozwala natomiast na wyjaśnienie działania mechanizmu wnioskowania. Podstawową zaletą takiego sposobu reprezentacji wiedzy (obrazy semantyczne) i bazującego na niej sposobu wnioskowania jest niezależność od języka przekazu, ponieważ proces wnioskowania odbywa się na elementach warstwy głębokiej – obrazach semantycznych. Kolejną zaletą jest uniwersalność reguł wnioskowania. Pozwalają one na ich użycie
do wnioskowania na wiedzy z różnych dziedzin przy użyciu tych samych reguł. Niestety
oparcie wnioskowania jedynie o obrazy semantyczne tworzące reguły obarczone jest wadą
ich wieloznaczności, co rozwiązywane jest przez zmniejszanie ogólności poziomu znaczenia – wnioskowanie na poziomie cech semantycznych a nawet słów – w zależności od potrzeb. W rozważaniach pominięto kwestie dotyczące kontekstu i intencji wypowiedzi, modalności języka, przenośni i porównań czy nieprecyzyjnych sformułowań ponieważ zdecydowanie wychodzi to poza zakres tematyczny artykułu. Elementem uzupełniającym powyższe metody jest algorytm tworzenia nowych reguł wnioskowania w oparciu o zawartość bazy wiedzy – zarówno faktów jak i istniejących już reguł, który ze względu na zbyt dużą
objętość należy przedstawić oddzielnie.
1.
2.
3.
4.
5.
6.
7.
pl
s.
Literatura
Schank R. C., Conceptual Inforamtion Processing, North-Holland Publishing Company, Amsterdam, 1975.
Forbus K. D., Riesbeck C., Birnbaum L., Livingston K., Sharma A., Ureel L. Integrating Natural
Language, Knowledge Representation and Reasoning, and Analogical Processing to Learn by
Reading, Proceedings of AAAI-07: Twenty-Second Conference on Artificial Intelligence, Vancouver, BC, 2007.
Amir, E. and McIlraith, S., Partition-Based Logical Reasoning for First-Order and Propositional
Theories, Artificial Intelligence 162 (1-2), pp. 49-88, 2005.
de Koning, K., Bredeweg, B., Breuker, J., and Wielinga, B., Model-based reasoning about
learner behaviour. Artificial Intelligence 117, 173-229, 2000.
Kapłon T.: Model formalny obrazowej reprezentacji semantyki zdań języka naturalnego do
wnioskowania przez komputer (praca doktorska), Wrocław 2004.
Maruszewski T.: Psychologia poznawcza, Polskie Towarzystwo Semiotyczne, Warszawa, 1996.
Kapłon T.: Łaszuk M.: Natural language sentencs semantics representation and inferences in
evolvable hardware based knowledge base, W: Proceedings of the International Conference
CSMCT 2000, vol. II, strony 27 – 37, Kaluga, Russia, 2000. LASER ACADEMY.
381
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008
Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008
T. Kapłon
8.
9.
10.
11.
w
Kapłon T.: Przetwarzanie języka naturalnego, praca zbiorowa pod redakcją J. Kazimierczaka,
WKiŁ, 2005.
A. Niederliński, Regułowe systemy ekspertowe, Wydawnictwo pracowni komputerowej Jacka
Skalmierskiego, Gliwice, 2000.
Kazimierczak J.: A representation of knowledge expressed in natural language and the inference
making, W: B. Verma et al., (red.), Proceedings of the 2nd IEEE International Conference on Intelligent Processing Systems – IEEE ICIPS’98, strony 285 – 289, Gold Coast, Australia, 1998.
Kazimierczak J.: Computer reasoning with representation of the semantics of natural language
sentences, Proceedings of the 10th International Conference on System-Modeling-Control, Zakopane, Poland, 2001.
Banasiak D., Mierzwa J., Sterna A.: Wnioskowanie na reprezentacji zdań języka naturalnego
przy zastosowaniu kategorii semantycznych, Raport PRE No 22/98, Instytut Cybernetyki Technicznej Politechniki Wrocławskiej, Wrocław, 1996.
Kapłon T: Wnioskowanie przez komputer na symbolicznej reprezentacji wiedzy wyrażonej
w języku naturalnym inicjowane pytaniem o przyczynę, Raport PRE No 57/98, Instytut Cybernetyki Technicznej Politechniki Wrocławskiej, Wrocław, 1998.
Kazimierczak J.: Representation of semantics of natural language sentences for the computer
reasoning, Raport PRE No 28/99, Instytut Cybernetyki Technicznej Politechniki Wrocławskiej,
Wrocław, 1999.
12.
w
13.
14.
da
.b
w
pl
s.
382
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008

Podobne dokumenty