• Nie Znaleziono Wyników

Systemy eksperowe

N/A
N/A
Protected

Academic year: 2021

Share "Systemy eksperowe"

Copied!
59
0
0

Pełen tekst

(1)

Systemy eksperowe

Agnieszka Nowak – Brzezińska Wykład I

(2)

Zakres materiału:

• Metody wnioskowania w regułowych bazach wiedzy

• PC-Shell jako narzędzie do budowy szkieletowych systemów ekspertowych (Sprawozdanie z własnej bazy wiedzy)

• Zbiory przybliżone: podstawowe pojęcia, usuwanie

niespójności z tablic decyzyjnych, generowanie reduktu i rdzenia tablicy decyzyjnej, generowanie reguł minimalnych.

(kolokwium nr 1)

• Rachunek zdań I i II rzędu. Rachunek predykatów. (kolokwium nr 2) + Prolog.

• Rachunek perceptów.

• Reprezentacja wiedzy niepewnej. (kolokwium nr 1)

• Sieci semantyczne i Ramy jako alternatywna do regułowej reprezentacja wiedzy.

(3)

Przebieg egzaminu:

• Egzamin ma formę pisemną i ustną. Składać się będzie zarówno z części praktycznej

(rozwiązywanie zadań) jak i teoretycznej (wiadomości z wykładów).

(4)

Architektura SE

(5)

Pojęcia z dziedziny systemów ekspertowych

• Inżynieria wiedzy - dziedzina sztucznej inteligencji zajmująca się projektowaniem i realizacją systemów ekspertowych.

• Inżynier wiedzy – projektant SE, osoba łącząca wiedzę na temat technik budowy SE z umiejętnością pozyskiwania i formalizacji wiedzy eksperckiej.

• Akwizycja wiedzy – proces pozyskiwania wiedzy niezbędnej do realizacji systemu ekspertowego.

• Na proces składają się: rozpoznanie problemu, wywiady z ekspertem, oraz reprezentacja wiedzy eksperta. Akwizycja kończy się w momencie zapisania wiedzy eksperta w bazie wiedzy SE.

(6)

Właściwości systemów ekspertowych:

• Są narzędziem kodyfikacji wiedzy;

• Mają zdolność rozwiązywania problemów specjalistycznych, w których dużą rolę odgrywa doświadczenie a wiedza ekspercka jest dobrem rzadkim i kosztownym;

• Zwiększają dostępność ekspertyzy;

• Zapewniają możliwość prowadzenia jednolitej polityki przez centralę firm mających wiele oddziałów;

• Poziom ekspertyzy jest stabilny – jej jakość nie zależy od warunków zewnętrznych i czasu pracy systemu;

• Jawna reprezentacja wiedzy w postaci zrozumiałej dla użytkownika końcowego;

• Zdolność do objaśniania znalezionych przez system rozwiązań;

• Możliwość przyrostowej budowy i pielęgnacji bazy wiedzy.

(7)

Przyczyny tworzenia systemu ekspertowego (uogólnione):

• tylko jeden (lub bardzo niewielu) specjalista posiada niezbędną wiedzę, co grozi jej utratą;

• ekspertyza jest wymagana często lub jest niezbędna w wielu miejscach;

• ekspertyza jest niezbędna w miejscach

niedostępnych dla człowieka lub szkodliwych dla zdrowia.

(8)

Wnioskowanie

(9)

Typy wnioskowania

• Wnioskowanie w przód (data driven)

• Wnioskowanie wstecz (goal driven)

• Wnioskowanie mieszane

(10)

Sterowanie wnioskowaniem

(11)
(12)

Mechanizm wnioskowanie w przód

(13)

Mechanizm wnioskowanie w przód

(14)

Idea wnioskowania wstecz

(15)

Algorytm wnioskowania wstecz

(16)

Mechanizm wnioskowania wstecz dla

hipotezy „v”

(17)
(18)
(19)

Idea wnioskowania mieszanego

(20)

Dodatkowo…

• WnioskowanieR.pdf

(21)

Prezentacja algorytmy RETE

(22)

Przykład dla regułowej bazy wiedzy z 9 regułami:

Fakty: a1 , b1, d4 R1: a1 & b1 -> c1 R2: a1 & b2 -> c2 R3: a1 & b3 -> c1 R4: b3 & d3 -> e1 R5: b3 & d2 -> e1 R6: b3 -> e2

R7: d4 -> f1

R8: d4 & g1 -> f1 R9: a1 -> d4

(23)

Przykład dla regułowej bazy wiedzy z 9 regułami:

Fakty: a1 , b1, d4 R1: a1 & b1 -> c1 R2: a1 & b2 -> c2 R3: a1 & b3 -> c1 R4: b3 & d3 -> e1 R5: b3 & d2 -> e1 R6: b3 -> e2

R7: d4 -> f1

R8: d4 & g1 -> f1 R9: a1 -> d4

Fakty: a1 , b1, d4 R1: a1 & b1 -> c1 R2: a1 & b2 -> c2 R3: a1 & b3 -> c1 R4: b3 & d3 -> e1 R5: b3 & d2 -> e1 R6: b3 -> e2

R7: d4-> f1

R8: d4& g1 -> f1 R9: a1 -> d4

Czyli teoretycznie dla takich faktów jak a1, b1 i d4 można

uaktywnić reguły:

r1,r7 i r9.

(24)

Algorytm RETE (1974 r.)

1. Graf budujemy tak, że od korzenia (root) prowadzimy tyle węzłów ile mamy atrybutów w częściach warunkowych reguł: „a”,”b”,”d”,”g”

2. Następnie od każdego węzła „atrybut” prowadzimy węzły z wartościami

atrybutów z przesłanek reguł…np. od „a” prowadzimy węzeł „1” (czy „a1”) ale od b już prowadzimy „1”,”2” i „3” bo w regułach mamy przesłanki typu b1,b2,b3

3. Gdy jakaś reguła ma więcej niż jedną przesłankę prowadzimy węzeł łączący wartości atrybutów tworzące przesłanki np. a1 & b1

4. Węzły końcowe (terminalne) stanowi numer porządkowy (ID) reguły.

(25)

1

a1 and b1

r1

2

a1 and b2

r2

a1 and b3

d

3

r3

b3 and d3

g

3

r4

d4 and g1

4 1

r7

r6

2 r8

b3 and d2

r5 r9

1 a

b

root

(26)

1

a1 and b1

r1

2

a1 and b2

r2

a1 and b3

d

3

r3

b3 and d3

g

3

r4

d4 and g1

4 1

r7

r6

2 r8

b3 and d2

r5 r9

1 a

b

root

Końcowy Graf RETE

korzeń atrybut

Wartość atrybutu (przesłanka reguły, jedna lub więcej. To tzw. Węzły typu alfa, beta)

Węzeł terminalny – ID reguły

(27)

Pojawia się fakt: a1 …więc zapalamy węzły z a1

Reguła r9 zostaje dodana do „conflict set” i bierzemy kolejne fakty…

1

a1 and b1

r1

2

a1 and b2

r2

a1 and b3

d

3

r3

b3 and d3

g

3

r4

d4 and g1

4 1

r7

r6

2 r8

b3 and d2

r5 r9

1 a

b

root

r9 Conflict set

(28)

Conflict set

1

a1 and b1

r1

2

a1 and b2

r2

a1 and b3

d

3

r3

b3 and d3

g

3

r4

d4 and g1

4 1

r7

r6

2 r8

b3 and d2

r5 r9

1 a

b Pojawia się fakt: b1 …więc zapalamy węzły z b1 root

Reguła r1 zostaje dodana do „conflict set” i bierzemy kolejne fakty…

r9 r1

(29)

Conflict set

1

a1 and b1

r1

2

a1 and b2

r2

a1 and b3

d

3

r3

b3 and d3

g

3

r4

d4 and g1

4 1

r7

r6

2 r8

b3 and d2

r5 r9

1 a

b Pojawia się fakt: d4 …więc zapalamy węzły z d4 root

Reguła r7 zostaje dodana do „conflict set” i kończymy bo nie ma więcej faktów…Inne reguły nie były niepotrzebnie analizowane r9

r1 r7

(30)

Algorytm RETE krok po kroku

1. Tworzymy graf skierowany (acykliczny) gdzie węzłami są elementy tworzące części

przesłankowe reguł a liśćmi są numery porządkowe reguł.

2. Następnie dopasowujemy fakty do węzłów w grafie i te reguły, które mogą być uaktywnione zapisujemy w tzw. CONFLICT SET w formie stosu.

3. W zależności od wybranej strategii LIFO/FIFO uaktywniamy reguły.

(31)

Wnioskowanie…dla strategii LIFO

r9 r1 r7

r9 r1

r7

d4 c1

f1 NOWE FAKTY…

a1 b1 d4 f1 c1 d4

Kierunek generowania faktów

(32)

Wnioskowanie…dla strategii FIFO

r9 r1 r7

r7 r1

r9

f1 c1

d4 NOWE FAKTY…

a1 b1 d4 d4 c1 f1

Kierunek generowania faktów

(33)

Wnioskowanie…dla strategii FIFO

r9 r1 r7

r7 r1

r9

c1 f1 NOWE FAKTY… d4

Kierunek generowania faktów

Wnioskowanie…dla strategii LIFO

r9 r1 r7

r7 r1 r9

f1 c1 d4

NOWE FAKTY…

Kierunek generowania faktów

(34)

Pseudokod algorytmu RETE

Procedure RETE() {

Graph := CreateGraphRETE(R);

ConflictSet:= MatchingRules(K,Graph);

newFacts:=ActiveAgenda(ConflictSet,strategy);

return newFacts;

}

R- reguły K- fakty

CreateGraphRETE – generuje graf z warunkowych części reguł.

MatchingRules(K,Graph) – dopasuje fakty do węzłów w grafie i zapisuje do ConflictSet te reguły które można uaktywnić!

ActiveAgenda – zgodnie z wybraną strategią Lifo albo Fifo uaktywnia reguły z ConflictSet i wyprowadza nowe fakty.

(35)

Metody realizacji systemów ekspertowych w środowisku systemu PC-Shell

Właściwości:

• są narzędziem kodyfikacji wiedzy eksperckiej,

• mają zdolność rozwiązywania problemów specjalistycznych, w których duża rolę odgrywa doświadczenie a wiedza ekspercka jest dobrem rzadkim i kosztownym.

• zwiększają dostępność ekspertyzy,

• zapewniają możliwość prowadzenia jednolitej polityki przez centralę firm mających wiele oddziałów,

• poziom ekspertyzy jest stabilny - jej jakość nie zależy od warunków zewnętrznych i czasu pracy systemu,

• jawna reprezentacja wiedzy w postaci zrozumiałej dla użytkownika końcowego,

• zdolność do objaśniania znalezionych przez system rozwiązań,

• możliwość przyrostowej budowy i pielęgnacji bazy wiedzy.

(36)

Zastosowania

• analiza ryzyka,

• ocena wniosków kredytowych, uczestników przetargów,

• monitorowanie, diagnostyka, predykcja,

• wspomaganie procesów diagnostycznych,

• analiza i interpretacja danych,

• instruktaż, dydaktyka, szkolenia.

(37)

Tworzenie systemu ekspertowego

(38)

Ogólna charakterystyka szkieletowego systemu ekspertowego PC-Shell

PC–Shell jest podstawowym elementem pakietu sztucznej inteligencji Sphinx®

• PC–Shell jest dziedzinowo niezależnym narzędziem do budowy systemów ekspertowych, posiada właściwości hybrydowe, wykorzystuje elementy architektury tablicowej;

• wykorzystuje różne metody reprezentacji wiedzy:

1. deklaratywna w postaci reguł i faktów, 2. wiedza rozproszona w sieci neuronowej,

3. imperatywna w formie programu algorytmicznego,

4. faktograficzna w formie tekstów, grafiki, dźwięku, sekwencji wideo;

• system zapewnia wyjaśnienia:

1. jak (ang. how), 2. dlaczego (ang. why), 3. co to jest (ang. what is), 4. metafory (ang. metaphor), 5. opisu faktów;

• wykorzystywane jest wnioskowanie wstecz (z nawrotami),

• bazy wiedzy mogą być parametryzowane,

• system ma możliwość bezpośredniego pozyskiwania informacji z baz danych (ODBC), wykorzystuje mechanizm DDE,

• system PC–Shell współpracuje z innymi elementami pakietu – systemem Neuronix przeznaczonym do tworzenia sieci neuronowych, systemem CAKE przeznaczonym do wspomagania pracy

inżyniera wiedzy oraz realizującym funkcje systemu dbMaker, zarządzającego bazami wyjaśnień.

(39)

Architektura SE

(40)

Struktura BW

(41)

Blok deklaracji źródeł wiedzy

(42)

Wykłady z PC-Shella

http://zsi.tech.us.edu.pl/~nowak/zaocznese/tworzenieBW.pdf

http://zsi.tech.us.edu.pl/~nowak/zaocznese/Sphinx.pdf

(43)

Drools

(44)

Jess

(45)

Wnioskowanie w Jess/Drools

(46)

Wnioskowanie c.d.

(47)

Tworzenie BW

(48)

Przykładowa BW

(49)

BW w Jess

(50)

WinJess – przykładowe narzędzie JESS

(51)

BW w PC-Shell

(52)

PC-Shell

(53)

Podsumowanie

(54)

Laboratorium nr 1

• Wnioskowanie w regułowych bazach wiedzy.

Wykonanie ćwiczeń 1-6.

(55)

Przykład1

Dana jest baza wiedzy :

• R1: Jeżeli„a” i „b” i „c” to „d”

• R2: Jeżeli„a” i „b” to „g”

• R3: Jeżeli„b” i „c” to „e”

• R4: Jeżeli„a” i „c” to „f”

• R5: Jeżeli„e” i „b” i „c” to „f”

Dane sa fakty : „a”, „b”, „c”.

Wyprowadź całą możliwą wiedzę z systemu.

(56)

Przykład2

Dana jest baza wiedzy :

• R1: Jeżeli „a” i „b” i „c” to „d”

• R2: Jeżeli „a” i „d” to „g”

• R3: Jeżeli „a” i „f” to „b”

• R4: Jeżeli „b” i „g” to „f”

• R5: Jeżeli„a” i „e” to „f”

• R6: Jeżeli„e” i „f” to „a”

• R7: Jeżeli „a” i „b” to „c” Dane są fakty : „a” i „e”.

Udowodnić hipotezę „g”.

(57)

Ćwiczenie 3

• Dana jest baza wiedzy:

• R1: Jeżeli „b” i „d” to „f”

• R2: Jeżeli „a” to „b”

• R3: Jeżeli„e” i „f” to „g”

• R4: Jeżeli „b” i „c” to „e”

• Fakty: „a”, „c” i „d”. Szukane „b”

(58)

Ćwiczenie 4

• Dana jest baza wiedzy:

• R1: Jeżeli „j” i „k” to „l”

• R2: Jeżeli „j” to „n”

• R3: Jeżeli „n” i „m” to „o”

• R4: Jeżeli „n” i „l” to „m”

• Fakty: „j”, „k”, „l”, „p”. Szukane „p”.

(59)

Ćwiczenie 5

• Dana jest baza wiedzy:

• R1: Jeżeli „l” i „m” to „n”

• R2: Jeżeli „j” to „o”

• R3: Jeżeli „j” i „k” to „m”

• R4: Jeżeli „n” i „o” to „p”

• Fakty: „j”, „k”, „l”. Szukane „p”.

Cytaty

Powiązane dokumenty

już ogólnego podsumowania wizyty Jana Pawła II w formie analizy głosów, jakie podczas jej trwania pojawiły się zwłaszcza w środowiskach robotniczych i akty- wu partyjnego na

Wprowadzanie do języka muzycznego elementów typowych dla stylu muzyki rozrywkowej stało się dla omawianych kompozytorów — jak stwierdza Maria Peryt — tym, czym folklor był

Przy pierwszym spotkaniu w Fatimie, 13 maja, Maryja pyta dzie- ci wprost: Czy chcecie ofiarować się Bogu, aby znosić wszystkie cierpie- nia, które On wam ześle jako zadośćuczynienie

• Akwizycja wiedzy – proces pozyskiwania wiedzy niezbędnej do realizacji systemu ekspertowego.. • Na proces składają się: rozpoznanie problemu, wywiady z ekspertem,

Most studies that rely on aircraft flight data (historical or real-time), require knowledge on the flight phase of each aircraft at a given time. [3, 4, 5, 6, 7] However, when

Przywodzi na m yśl tradycyjne przeciwstaw ienie liryce pośredniej (liryce roli i maski), co przy po­ wszechnym dziś stosow aniu pojęć podmiotu lirycznego i

Jej twórca wzorował się jednak nie na obrazie z dawnej kolekcji Karola Lanckorońskiego czy na podobnych mu malowidłach a na słynnych mantuańskich płótnach Mantegni z około

Akwizycja wiedzy – proces pozyskiwania wiedzy niezbędnej do realizacji systemu ekspertowego.. Na proces składają się: rozpoznanie problemu, wywiady z ekspertem, oraz