Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Reprezentacja wiedzy
1. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Sztuczna Inteligencja i Systemy Ekspertowe
Reprezentacja wiedzy
Aleksander Pohl
http://apohllo.pl/dydaktyka/ai
Wy˙ sza Szkoła Zarzadzania i Bankowo´ ci
z ˛ s
31 marca 2009
Aleksander Pohl WSZiB
Reprezentacja wiedzy
2. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Plan prezentacji
Wprowadzenie
Reguły z wiarygodno´ cia
s˛
Sieci Bayesa
Postscriptum
Aleksander Pohl WSZiB
Reprezentacja wiedzy
3. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Plan prezentacji
Wprowadzenie
Reguły z wiarygodno´ cia
s˛
Sieci Bayesa
Postscriptum
Aleksander Pohl WSZiB
Reprezentacja wiedzy
4. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Systemy regułowe
Mechanizm rozumowania (inferencji)
◮
Baza faktów
◮
Baza reguł
◮
Aleksander Pohl WSZiB
Reprezentacja wiedzy
5. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Alternatywne modele logiczne
Logiki wielowarto´ ciowe
s
◮
dyskretne
◮
ciagłe
˛
◮
Logiki niemonotoniczne – nowe fakty maja wpływ na
˛
◮
s´
warto´ c logiczna wcze´ niejszych faktów
˛ s
ptaki lataja˛
◮
pingwin jest ptakiem, ale nie lata
◮
Aleksander Pohl WSZiB
Reprezentacja wiedzy
6. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Logiki Modalne
3p ⇔ ¬2¬p
◮
„it is possible that Jones was murdered if and only if it is
◮
not necessary that Jones was not murdered”
Aleksander Pohl WSZiB
Reprezentacja wiedzy
7. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Reguły ze stopniem wiarygodno´ ci
s
s´
Wiarygodno´ c – współczynnik z przedziału [0,1]
◮
0 – zdarzenie niemo˙ liwe
z
◮
1 – zdarzenie pewne
◮
Wady: „płytkie” opisywanie stanu wiedzy
◮
Aleksander Pohl WSZiB
Reprezentacja wiedzy
8. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Reprezentacje proceduralne
Wprowadzenie klasycznych procedur do modelu AI
◮
Procedury stosowane wybiórczo (tylko do osiagniecia
˛˛
◮
okre´ lonego celu)
s
Odniesienie do konkretnych struktur
◮
s´
Wada: konieczno´ c sformułowania „a priori” rozwiazania
˛
◮
Aleksander Pohl WSZiB
Reprezentacja wiedzy
9. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Reprezentacje przez sieci semantyczne
´
Wynik badan nad pamiecia i sieciami skojarzeniowymi
˛˛
◮
Graf skierowany – wezły stanowia pojecia, łuki – relacje
˛ ˛ ˛
◮
semantyczne (is_a, have_a)
Zastosowania: mechanizmy rozumienia jezyka
˛
◮
naturalnego, taksonomie itp.
Wady: rozumowanie wzdłu˙ relacji znacznie ograniczone
z
◮
do dziedziczenia własno´ ci – model obiektowy stanowi
s
udoskonalenie
Aleksander Pohl WSZiB
Reprezentacja wiedzy
10. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Sie´ semantyczna
c
bird(a_kind_of, animal).
◮
bird(moving_method, fly).
◮
bird(active_at, daylight).
◮
albatross(a_kind_of, bird).
◮
albatross(colour, black_and_white).
◮
albatross(size, 115).
◮
Aleksander Pohl WSZiB
Reprezentacja wiedzy
11. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Ramki i scenariusze
Reprezentacje przez struktury
frames (Minsky 1974 – rozpoznawanie obrazu)
◮
składaja sie z pól („slots”) i procedur
˛˛
◮
podstawa budowy jezyków obiektowych
˛
◮
Reprezentacje przez scenariusze
scripts (R. Schank 1977 – jezyk naturalny)
˛
◮
´
ciag zdarzen charakterystycznych, dynamiczny opis
˛
◮
przedmiotu
Aleksander Pohl WSZiB
Reprezentacja wiedzy
12. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Ramki – przykład
isa(bird, animal).
◮
moving_method(bird,fly).
◮
moving_method(kiwi,walk).
◮
moving_method(X,Method):-
◮
isa(X,Super), moving_method(Super,Method).
Aleksander Pohl WSZiB
Reprezentacja wiedzy
13. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Reprezentacja obiektowa
Reprezentacje przez obiekty
◮
dziedziczenie wła´ ciwo´ ci
s s
◮
komunikacja przy pomocy przekazywania komunikatów
◮
Zalety:
◮
strukturalizacja opisu
◮
wyczerpujacy zestaw atrybutów
˛
◮
powiazanie aspektu deklaratywnego z proceduralnym
˛
◮
hierarchizacja opisu
◮
Aleksander Pohl WSZiB
Reprezentacja wiedzy
14. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Dziedziczenie w Prologu
fact(Fact) :- Fact, !.
◮
fact(Fact) :-
◮
Fact=..[ Rel, Arg1, Arg2],
isa(Arg1,SuperArg),
SuperFact=..[Rel, SuperArg, Arg2],
fact(SuperFact).
Aleksander Pohl WSZiB
Reprezentacja wiedzy
15. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Plan prezentacji
Wprowadzenie
Reguły z wiarygodno´ cia
s˛
Sieci Bayesa
Postscriptum
Aleksander Pohl WSZiB
Reprezentacja wiedzy
16. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Reguły
Teza → c (wiarygodno´ c)
s´
◮
if Teza then Wniosek → c
◮
c(P1 and P2) = min(c(P1),c(P2))
◮
c(P1 or P2) = max(c(P1),c(P2))
◮
If P1 then P2 → c
◮
c(P2)=c(P1)*c
Aleksander Pohl WSZiB
Reprezentacja wiedzy
17. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Implementacja (1)
op(800, fx, if).
◮
op(700, xfx, then).
◮
op(300, xfy, or).
◮
op(200, xfy, and).
◮
certainty( P, Cert) :- given( P, Cert).
◮
certainty(Cond1 and Cond2, Cert) :-
◮
certainty( Cond1, Cert1),
certainty( Cond2, Cert2),
min( Cert1, Cert2, Cert).
Aleksander Pohl WSZiB
Reprezentacja wiedzy
18. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Implementacja (2)
certainty( Cond1 or Cond2, Cert) :-
◮
certainty( Cond1, Cert1),
certainty( Cond2, Cert2),
max( Cert1, Cert2, Cert).
certainty( P, Cert) :-
◮
if Cond then P : C1,
certainty( Cond, C2),
Cert is C1 * C2.
Aleksander Pohl WSZiB
Reprezentacja wiedzy
19. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Przykład (1)
if kitchen_dry and hall_wet
◮
then leak_in_bathroom : 1.
if hall_wet and bathroom_dry
◮
then problem_in_kitchen : 0.9.
if window_closed or no_rain
◮
then no_water_from_outside : 1.
if problem_in_kitchen and
◮
no_water_from_outside
then leak_in_kitchen : 1.
Aleksander Pohl WSZiB
Reprezentacja wiedzy
20. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Przykład (2)
given(window_closed, 0).
◮
given(hall_wet, 1).
◮
given(bathroom_dry, 1).
◮
given(no_rain, 0.8).
◮
given(kitchen_dry, 0).
◮
?- certainty(leak_in_kitchen, C).
◮
C=0.8
◮
Aleksander Pohl WSZiB
Reprezentacja wiedzy
21. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Wady
c(a)=0.5, c(b)=0 ale c(a or b)= 0.5
◮
´
Nie uwzglednia niezale˙ no´ ci zdarzen.
˛ zs
◮
Ludzcy eksperci nie my´ la w kategoriach
s˛
◮
´
prawdopodobienstw matematycznych.
´
Szacowanie prawdopodobienstwa wymaga wiedzy a priori,
◮
bad´ uproszczenia modelu.
˛z
Aleksander Pohl WSZiB
Reprezentacja wiedzy
22. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Plan prezentacji
Wprowadzenie
Reguły z wiarygodno´ cia
s˛
Sieci Bayesa
Postscriptum
Aleksander Pohl WSZiB
Reprezentacja wiedzy
23. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Sieci Bayesa (belief networks, Bayesian networks)
´
Stan swiata okre´ lony jest za pomoca wektora zmiennych,
s ˛
◮
np.
pada deszcz – prawda
◮
´ ´
swieci słonce – fałsz
◮
wieje wiatr – prawda
◮
[T , F , T ]
◮
Bez straty ogólno´ ci dalej bedziemy rozwa˙ a´ zmienne
s ˛ zc
◮
boolowskie
Zmienne boolowskie – „zdarzenia”
◮
Aleksander Pohl WSZiB
Reprezentacja wiedzy
24. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
´
Prawdopodobienstwo
Obserwator nie musi zna´ stanu faktycznego (zdarzenie
c
◮
s´
zaszło, bad´ nie) – wystarczy jedynie znajomo´ c
˛z
´
prawdopodobienstwa jego wystapienia
˛
p(X ) – prawdopodobienstwo, ze zaszło X
´ ˙
◮
p(X |Y ) – prawdopodobienstwo, ze zaszło X pod
´ ˙
◮
˙
warunkiem ze zaszło Y
p(A|B) = p(A ∩ B)/p(B)
◮
Aleksander Pohl WSZiB
Reprezentacja wiedzy
25. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Redukcja przestrzeni stanów
problem: 2n − 1 liczba prawdopodobienstw do okre´ lenia
´ s
◮
´
wniosek: musimy korzysta´ z niezale˙ no´ ci zdarzen
c zs
◮
´
reprezentacja w postaci sieci zdarzen – połaczenia
˛
◮
odpowiadaja zwiazkom przyczynowo-skutkowym
˛ ˛
Aleksander Pohl WSZiB
Reprezentacja wiedzy
26. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Przykład (1)
włamanie oraz błyskawica moga wzbudzi´ czujk˛
˛ c e
◮
czujka mo˙ e wzbudzi´ alarm oraz telefon
z c
◮
Aleksander Pohl WSZiB
Reprezentacja wiedzy
27. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Przykład (2)
Wniosek: Błyskawica, Włamanie sa niezale˙ ne.
˛ z
◮
˛˙
Ale wiedzac ze alarm sie właczył – przestaja by´
˛ ˛ ˛c
◮
niezale˙ ne.
z
˙ ´
je˙ eli wiemy, ze jest burza, to prawdopodobienstwo zaj´ cia
z s
◮
włamania pod warunkiem właczenia sie alarmu jest
˛ ˛
˙ ´
mniejsze, ni˙ je´ li wiemy, ze dzien jest słoneczny
zs
´ z´ z
Okre´ lamy prawdopodobienstwa wzdłu˙ scie˙ ek, do
s
◮
których nale˙ a fakty zale˙ ne
z˛ z
´z
Y jest potomkiem X je´ li istnieje scie˙ ka z X do Y
s
◮
´
Do obliczania prawdopodobienstwa wystarczy
◮
rozpatrywanie potomków i przodków
Aleksander Pohl WSZiB
Reprezentacja wiedzy
28. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
´
Prawdopodobienstwa a priori i warunkowe
Dla wezłów bez przyczyny („root causes”) podane sa
˛ ˛
◮
´
prawdopodobienstwa a priori
Dla wezłów pozostałych podajemy je w postaci
˛
◮
p(X |rodziceX ) – prawdopodobienstwo warunkowe
´
´
Prawdopodobienstwa warunkowe dla wezła potomnego
˛
◮
musz˛ obejmowa´ wszelkie kombinacje stanów rodziców
e c
Aleksander Pohl WSZiB
Reprezentacja wiedzy
29. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Przykład (3)
p(włamanie) = 0.001
◮
p(błyskawica) = 0.02
◮
p(czujka| włamanie i błyskawica) = 0.9
◮
p(czujka| włamanie i not(błyskawica)) = 0.9
◮
p(czujka| not(włamanie) i błyskawica) = 0.1
◮
p(czujka| not(włamanie) i not(błyskawica)) = 0.001
◮
p(alarm|czujka) = 0.95
◮
p(alarm|not(czujka)) = 0.001
◮
p(telefon|czujka) = 0.9
◮
p(telefon|not(czujka)) = 0.0
◮
Aleksander Pohl WSZiB
Reprezentacja wiedzy
30. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Zale˙ no´ ci (1)
zs
´
Prawdopodobienstwo koniunkcji
◮
p(X ∧ Y |Cond ) = p(X |Cond ) ∗ p(Y |X ∧ Cond )
prob([], _, 1) :- !.
◮
prob([X | Xs], Cond, P) :- !,
◮
prob(X, Cond, Px), prob(Xs, [X | Cond],
PRest),
P is Px * PRest.
´
Prawdopodobienstwo zdarzenia pewnego
◮
p(X |Y ∧ . . . ∧ X ∧ . . .) = 1
prob(X, Cond, 1) :-
◮
member(X, Cond), !.
Aleksander Pohl WSZiB
Reprezentacja wiedzy
31. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Zale˙ no´ ci (2)
zs
´
Prawdopodobienstwo zdarzenia niemo˙ liwego
z
◮
p(X |Y ∧ . . . ∧ ¬X ∧ . . .) = 0
prob(X, Cond, 0) :-
◮
member(not X, Cond), !.
´
Prawdopodobienstwo negacji
◮
p(¬X |Cond ) = 1 − p(X |Cond )
prob(not X, Cond, P) :- !,
◮
prob(X, Cond, P0), P is 1 - P0.
Aleksander Pohl WSZiB
Reprezentacja wiedzy
32. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Zale˙ no´ ci (3)
zs
Warunek z potomkiem
◮
Cond0 = Y ∧ Cond gdzie Y jest potomkiem X
p(X |Cond ) ∗ p(Y |X ∧ Cond )
p(X |Cond0) =
p(Y |Cond )
prob(X, Cond0, P) :-
◮
delete(Y, Cond0, Cond),
predecessor(X, Y), !,
prob(X, Cond, Px),
prob(Y, [X | Cond], PyGivenX),
prob(Y, Cond, Py),
P is Px * PyGivenX / Py.
Aleksander Pohl WSZiB
Reprezentacja wiedzy
33. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Zale˙ no´ ci (4)
zs
Je´ li Cond nie zawiera potomków X
s
◮ X nie ma rodziców:
p(X |Cond ) = p(X )
prob(X, Cond, P) :-
◮
p(X, P), !.
X ma rodziców S:
◮
p(X |Cond ) = p(X |S)p(S |Cond )
rodzice:S
prob(X, Cond, P) :- !,
◮
findall((CONDi,Pi), p(X,CONDi,Pi), CPlist),
sum_probs(CPlist, Cond, P).
Aleksander Pohl WSZiB
Reprezentacja wiedzy
34. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Implementacja (1)
sum_probs([], _, 0).
◮
sum_probs([ (COND1,P1) | CondsProbs], COND,
◮
P) :-
prob(COND1, COND, PC1),
sum_probs(CondsProbs, COND, PRest),
P is P1 * PC1 + PRest.
predecessor(X, not Y) :- !,
◮
predecessor(X, Y).
predecessor(X, Y) :- parent(X, Y).
◮
predecessor(X, Z) :- parent(X, Y),
◮
predecessor(Y, Z).
Aleksander Pohl WSZiB
Reprezentacja wiedzy
35. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Implementacja (2)
member(X, [X | _]).
◮
member(X, [_ | L]) :- member(X, L).
◮
delete(X, [X | L], L).
◮
delete(X, [Y | L], [Y | L2]) :-
◮
delete(X, L, L2).
Aleksander Pohl WSZiB
Reprezentacja wiedzy
36. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Przykład (1)
parent(burglary, sensor).
◮
parent(lightning, sensor).
◮
parent(sensor, alarm).
◮
parent(sensor, call).
◮
Aleksander Pohl WSZiB
Reprezentacja wiedzy
37. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Przykład (2)
p(sensor, [not burglary, not lightning],
◮
0.001).
p(alarm, [sensor], 0.95).
◮
p(alarm, [not sensor], 0.001).
◮
p(call, [sensor], 0.9).
◮
p(call, [not sensor], 0.0).
◮
?- p(burglary, [alarm], X).
◮
X = 0.182741
Aleksander Pohl WSZiB
Reprezentacja wiedzy
38. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Naiwny klasyfikator bayesowski (1)
´ ˙
Prawdopodobienstwo ze i-te słowo wystepuje
˛
◮
w dokumencie typu C:
p(wi |C)
´
Prawdopodobienstwo wystapienia dokumentu D
˛
◮
w klasie C:
n
p(D|C) = p(wi |C)
i=1
Aleksander Pohl WSZiB
Reprezentacja wiedzy
39. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Naiwny klasyfikator bayesowski (2)
˙
Załó˙ my ze mamy dwie klasy spam (S) i nie-spam:
z
◮
n
p(D|S) = p(wi |S)
i=1
n
p(D|¬S) = p(wi |¬S)
i=1
Z twierdzenia Bayesa:
◮
n
p(S)
p(S|D) = p(wi |S)
p(D)
i=1
n
p(¬S)
p(¬S|D) = p(wi |¬S)
p(D)
i=1
Aleksander Pohl WSZiB
Reprezentacja wiedzy
40. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Naiwny klasyfikator bayesowski (3)
Dzielac jedno przez drugie:
˛
◮
n
i=1 p(wi |S)
p(S|D) p(S)
k= = n
p(¬S|D) p(¬S) i=1 p(wi |¬S)
dla k > 1 – spam
◮
Aleksander Pohl WSZiB
Reprezentacja wiedzy
41. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Plan prezentacji
Wprowadzenie
Reguły z wiarygodno´ cia
s˛
Sieci Bayesa
Postscriptum
Aleksander Pohl WSZiB
Reprezentacja wiedzy
42. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Materiały zródłowe
´
L.Sterling, E.Shapiro - „The Art Of Prolog”
◮
Ivan Bratko - „Prolog – Programming For Artificial
◮
Intelligence”
Slajdy zostały przygotowane za zgoda˛
◮
dr. Michała Korzyckiego na podstawie jego wykładu.
Aleksander Pohl WSZiB
Reprezentacja wiedzy
43. Wprowadzenie Reguły z wiarygodno´ cia
s˛ Sieci Bayesa Postscriptum
Dziekuje!
˛ ˛
Aleksander Pohl WSZiB
Reprezentacja wiedzy