WykÅad 3: Sieci Bayesa
WykÅad 3: Sieci Bayesa
WykÅad 3: Sieci Bayesa
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Agnieszka Nowak – Brzezińska
Klasyfikacja Bayesowska jest klasyfikacją statystyczną.<br />
Pozwala przewidzieć prawdopodobieństwo przynależności<br />
obiektu do klasy. Opiera się na twierdzeniu <strong>Bayesa</strong>.<br />
<br />
Twierdzenia <strong>Bayesa</strong> pokazuje, w jaki sposób obliczyć<br />
prawdopodobieństwo warunkowe P(H|X), jeśli znane są<br />
prawdopodobieństwa: warunkowe P(X|H) oraz<br />
bezwarunkowe P(H) i P(X).<br />
<br />
Prawdopodobieństwa: P(X|H), P(H) oraz P(X) mogą być<br />
bezpośrednio wyliczone z danych zgromadzonych w<br />
treningowym zbiorze danych (w bazie danych).
Każdy obiekt traktowany jest jako wektor X (krotka) wartości<br />
atrybutów A 1 , ..., A n : X = (x1, x2, ..., xn).<br />
Niech C 1 , ..., C m będą klasami, do których może należeć X,<br />
<br />
P(C|X) niech oznacza prawdopodobieństwo przynależności X<br />
(ściślej: obiektów o właściwości X) do klasy C.<br />
<br />
W klasyfikacji <strong>Bayesa</strong> przypisujemy X do tej klasy, do której<br />
prawdopodobieństwo warunkowe przynależności X jest<br />
największe.<br />
<br />
X jest więc przypisany do C i , jeśli P(C i |X) ≥ P(C k |X), dla<br />
każdego k, 1 ≤ k ≤ m, k ≠ i.
1. W klasyfikacji <strong>Bayesa</strong> maksymalizujemy:<br />
2. Ponieważ P(X) jest stałe, więc wystarczy maksymalizować<br />
Iloczyn P(X|C i )P(C i ).<br />
3. Ponadto przyjmujemy: P(C i ) = s i / s,<br />
gdzie s oznacza liczbę obiektów w zbiorze treningowym,<br />
a s i oznacza liczbę obiektów w klasie C i .<br />
4. Dla X = (x 1 , x 2 , ..., x n ), wartość P(X|C i ) obliczamy jako<br />
iloczyn: P(X|C i ) = P(x 1 |C i )*P(x 2 |C i )* ... *P(x n |C i ),<br />
przy czym: P(x k |C i ) = s ik / s i ,<br />
gdzie s ik oznacza liczbę obiektów klasy C i , dla których wartość<br />
atrybutu A k jest równa x k , a s i oznacza liczbę wszystkich<br />
obiektów klasy Ci w zadanym zbiorze treningowym.
Klasyfikacja bayesowska, to metoda budowy systemu ekspertowego, w<br />
której wiedza przedstawiona jest á priori z warunkowymi<br />
prawdopodobieństwami, a wnioskowanie polega na liczeniu<br />
następnych prawdopodobieństw.<br />
Mechanizm wnioskowania wykorzystujący twierdzenie <strong>Bayesa</strong> polega<br />
na obliczaniu prawdopodobieństwa każdego możliwego wyniku, gdy<br />
znany jest dany konkretny przypadek.
Wadą tej metody jest fakt, że wymaga ona znajomości<br />
dokładnych wartości lub rozkładów prawdopodobieństw<br />
pojawienia się parametrów zjawiska, czyli problemu będącego<br />
przedmiotem rozważań.<br />
Innym problemem jest to, że należy dokonać pewnych<br />
nierealistycznych założeń – na przykład w klasyfikacji<br />
bayesowskiej wymagane wyniki, np. rozpoznawania, musza<br />
się wzajemnie wykluczać. Niestety w wielu przypadkach mogą<br />
występować liczne podobne wyniki (np. w diagnostyce:<br />
pacjent może mieć wiele chorób).<br />
Innym założeniem, co prawda niewymaganym przez<br />
twierdzenie <strong>Bayesa</strong>, ale wymuszonym przez praktykę, jest<br />
statystyczna niezależność cechy problemu .
Koncepcja sieci <strong>Bayesa</strong> wynika wprost z koncepcji<br />
prawdopodobieństwa warunkowego.<br />
Jak się okazuje w rzeczywistym świecie jest wiele sytuacji w których<br />
wystąpienie jakiegoś zdarzenia ściśle zależy od innego zdarzenia.<br />
Zastosowanie sieci <strong>Bayesa</strong><br />
pozwala na uniknięcie obliczeń o dużej złożoności – obliczenie<br />
jednego prawdopodobieństwa a posteriori łączy się z uprzednim<br />
obliczeniem wykorzystywanych prawdopodobieństw.<br />
<strong>Sieci</strong> <strong>Bayesa</strong> służą do przedstawiania niepewności wiedzy.<br />
Niepewność wiedzy używanej zawartej w systemach ekspertowych<br />
może mieć wiele czynników:<br />
<br />
<br />
<br />
<br />
niepewność ekspertów dotycząca ich wiedzy<br />
niepewność tkwiąca w modelowanej dziedzinie<br />
niepewność inżyniera próbującego przetłumaczyć wiedzę<br />
niepewność wynikła z dokładności dostępnej wiedzy
<strong>Sieci</strong> <strong>Bayesa</strong> używają teorii prawdopodobieństwa do<br />
określenia niepewności przez jawne reprezentowanie<br />
warunkowych zależności pomiędzy różnymi częściami<br />
wiedzy.<br />
Pozwala to na intuicyjną graficzną wizualizację wiedzy<br />
zawierającą wzajemne oddziaływania pomiędzy różnymi<br />
źródłami niepewności.<br />
<strong>Sieci</strong> <strong>Bayesa</strong> są stosowane w diagnostyce, w rozumowaniu<br />
przebiegającym od efektów do przyczyn i odwrotnym.<br />
W systemach ekspertowych sieci <strong>Bayesa</strong> znalazły<br />
zastosowanie w medycynie (systemy doradcze, które<br />
rozpoznają chorobę na podstawie podawanych objawów).
Wejście:<br />
• Rozważana populacja obiektów (klientów) opisana jest za pomocą<br />
czterech atrybutów: Wiek, Dochód, Studia, OcenaKred.<br />
• Interesuje nas przynależność obiektów do jednej z dwóch klas:<br />
klienci kupujący komputery (o etykiecie TAK) i klienci nie kupujący<br />
komputerów (o etykiecie NIE).<br />
• Z bazy danych wybrano zbiór treningowy.<br />
• Obiekt X o nieznanej przynależności klasowej ma postać:<br />
X = (Wiek = „
Klasyfikowany obiekt:<br />
X = (Wiek = „
Ze zbioru treningowego obliczamy:<br />
P(Wiek=„
Stąd:<br />
P(X|C 1 ) = 0.222*0.444*0.667*0.667 = 0.044<br />
P(X|C 1 )P(C 1 ) = 0.044*0.643 = 0.028<br />
P(X|C 2 ) = 0.600*0.400*0.200*0.400 = 0.019<br />
P(X|C 2 )P(C 2 ) = 0.019*0.357 = 0.007<br />
X – został zaklasyfikowany do C 1 .
Thomas Bayes (ur. ok. 1702 w Londynie — zm. 17 kwietnia<br />
1761) brytyjski matematyk i duchowny prezbiteriański, znany<br />
ze sformułowania opublikowanego pośmiertnie twierdzenia<br />
<strong>Bayesa</strong>, które to zapoczątkowało dział statystyki.
(od nazwiska Thomasa <strong>Bayesa</strong>) to twierdzenie teorii<br />
prawdopodobieństwa, wiążące prawdopodobieństwa<br />
warunkowe zdarzeń.<br />
Na przykład, jeśli jest zdarzeniem "u pacjenta występuje<br />
wysoka gorączka", i jest zdarzeniem "pacjent ma grypę",<br />
twierdzenie <strong>Bayesa</strong> pozwala przeliczyć znany odsetek<br />
gorączkujących wśród chorych na grypę i znane odsetki<br />
gorączkujących i chorych na grypę w całej populacji, na<br />
prawdopodobieństwo, że ktoś jest chory na grypę, gdy wiemy<br />
że ma wysoką gorączkę.<br />
Twierdzenie stanowi podstawę teoretyczną sieci<br />
bayesowskich, stosowanych w eksploracji danych.
Jeśli A i B są prostymi zdarzeniami w przestrzeni prób, to<br />
prawdopodobieństwo warunkowe P(A/B) będzie określone<br />
jako:<br />
P(<br />
A|<br />
B)<br />
<br />
P(<br />
A<br />
B)<br />
P(<br />
B)<br />
liczba wyników<br />
<br />
liczba<br />
Również P(B/A) = P(AB)/P(A).<br />
zarówno<br />
wyników<br />
w<br />
w<br />
A jak<br />
B<br />
Przekształcając ten wzór, otrzymujemy wzór na przecięcie<br />
zdarzeń P(AB) = P(B/A)P(A) i po podstawieniu mamy:<br />
P(<br />
B / A)<br />
P(<br />
A)<br />
P(<br />
A|<br />
B)<br />
<br />
P(<br />
B)<br />
Co jest tezą twierdzenia <strong>Bayesa</strong> dla prostych zdarzeń.<br />
i<br />
B
Sieć bayesowska to acykliczny (nie zawierający cykli) graf<br />
skierowany, w którym:<br />
węzły reprezentują zmienne losowe (np. temperaturę jakiegoś<br />
źródła, stan pacjenta, cechę obiektu itp.)<br />
łuki (skierowane) reprezentują zależność typu „ zmienna X ma<br />
bezpośredni wpływ na zmienna Y”,<br />
każdy węzeł X ma stowarzyszona z nim tablice<br />
prawdopodobieństw warunkowych określających wpływ<br />
wywierany na X przez jego poprzedników (rodziców) w grafie,<br />
Zmienne reprezentowane przez węzły przyjmują wartości<br />
dyskretne (np.: TAK, NIE).
<strong>Sieci</strong>ą <strong>Bayesa</strong> nazywamy skierowany graf acykliczny o<br />
wierzchołkach reprezentujących zmienne losowe i<br />
łukach określających zależności.<br />
Istnienie łuku pomiędzy dwoma wierzchołkami oznacza<br />
istnienie bezpośredniej zależności przyczynowo<br />
skutkowej pomiędzy odpowiadającymi im zmiennymi.<br />
Siła tej zależności określona jest przez tablice<br />
prawdopodobieństw warunkowych.
a<br />
E<br />
b<br />
d<br />
c<br />
G<br />
F<br />
<br />
<br />
<br />
<br />
gdzie a, b, c, d to obserwacje, E, F, G to hipotezy<br />
Aby zdefiniować graf zwykle podaje się zbiór jego wierzchołków<br />
oraz zbiór jego krawędzi.<br />
Każdy wierzchołek reprezentuje obserwację lub hipotezę, każda<br />
krawędź jest określona w ten sposób, że podaje się dla niej<br />
informacje o wierzchołkach które dana krawędź łączy, oraz<br />
ewentualnie dla grafów skierowanych informację o kierunku<br />
krawędzi.<br />
Załóżmy, że G będzie grafem określonym zbiorem wierzchołków<br />
N i krawędzi E.<br />
Załóżmy, również że dany jest zbiór prawdopodobieństw<br />
warunkowych CP. Elementami tego zbiory są<br />
prawdopodobieństwa opisujące poszczególne krawędzie grafu
Pod pojęciem sieci Bayesowskiej rozumieć będziemy trójkę:<br />
B = { N, E, CP }<br />
gdzie dwójka {N,E} jest zorientowanym grafem acyklicznym<br />
zbudowanym na podstawie zadanych prawdopodobieństw<br />
warunkowych zawartych w zbiorze CP.<br />
N – (ang. Nodes) węzły w grafie odpowiadające zbiorom<br />
obserwacji i hipotez<br />
E – (ang. edges) krawędzie odzwierciedlające kierunek<br />
wnioskowania<br />
Każdy wierzchołek w sieci przechowuje rozkład P(X i | (i) ) gdzie X (i) jest zbiorem<br />
wierzchołków odpowiadających (i) – poprzednikom (rodzicom) wierzchołka (i).
Prawdopodobieństwo wystąpienia anginy w przypadku objawów takich jak<br />
ból gardła i gorączka jest wysokie i wynosić może 0.8. Jednak wystąpienie<br />
gorączki i bólu głowy może świadczyć o grypie, co jest hipoteza<br />
prawdopodobna na 0.6. W przypadku gdy pacjent cierpiący na grypę nie<br />
wyleczył się całkowicie może dojść do zapalenia oskrzeli z<br />
prawdopodobieństwem 0.4. Zapalenie oskrzeli może spowodować ból gardła<br />
z prawdopodobieństwem 0.3.<br />
Hipotezy:<br />
A – Angina<br />
D-grypa<br />
O-Zapalenie oskrzeli<br />
b<br />
g<br />
0.8<br />
A<br />
0.3<br />
Objawy:<br />
b-ból gardła<br />
g-Gorączka<br />
c-ból głowy<br />
c<br />
0.6<br />
D<br />
e<br />
0.4<br />
O<br />
e-brak całkowitego wyleczenia<br />
CP = {P(A|b,g)=0.8; P(D|g,c)=0.6; P(O|D,e)=0.4;P(b|O)=0.3}
Rozkład prawdopodobieństw zapisuje się jako:<br />
P(<br />
x<br />
n<br />
,..., x ) P(<br />
x X )<br />
1 n<br />
i ( i)<br />
i1<br />
W grafie wierzchołki są etykietowane nazwami<br />
atrybutów. Przy każdym wierzchołku występuje tabela<br />
prawdopodobieństw warunkowych pomiędzy danym<br />
wierzchołkiem i jego rodzicami.
Węzeł A jest rodzicem lub poprzednikiem wierzchołka X, a<br />
wierzchołek X jest potomkiem lub następnikiem węzła<br />
A, jeżeli istnieje bezpośrednia krawędź z wierzchołka A<br />
do X.<br />
p(<br />
X<br />
m<br />
1<br />
x1,<br />
X<br />
2<br />
x2,...,<br />
X<br />
m<br />
xm)<br />
p(<br />
X<br />
i<br />
xi<br />
|<br />
rodzice(<br />
X i ))<br />
i1<br />
A więc prawdopodobieństwo pojawienia się wierzchołka<br />
potomnego zależy tylko od jego rodziców !
zdefiniowanie zmiennych,<br />
zdefiniowanie połączeń pomiędzy zmiennymi,<br />
określenie prawdopodobieństw warunkowych i ”a priori”<br />
(łac. z założenia)<br />
wprowadzenie danych do sieci,<br />
uaktualnienie sieci,<br />
wyznaczenie prawdopodobieństw ”a posteriori” ( łac. z<br />
następstwa)<br />
Sieć bayesowska koduje informacje o określonej dziedzinie za pomocą<br />
wykresu, którego wierzchołki wyrażają zmienne losowe, a krawędzie<br />
obrazują probabilistyczne zależności między nimi.
<strong>Sieci</strong> te mają wiele zastosowań m.in. w Sztucznej inteligencji,<br />
medycynie (w diagnozowaniu), w genetyce, statystyce, w ekonomii.<br />
O popularności SB zadecydowało to, że są dla nich wydajne metody<br />
wnioskowania. Możliwe jest proste wnioskowanie o zależności<br />
względnej i bezwzględnej badanych atrybutów.<br />
Niezależność może tak zmodularyzować naszą wiedzę, że wystarczy<br />
zbadanie tylko części informacji istotnej dla danego zapytania,<br />
zamiast potrzeby eksploracji całej wiedzy.<br />
<strong>Sieci</strong> Bayesowskie mogą być ponadto rekonstruowane, nawet jeśli<br />
tylko część właściwości warunkowej niezależności zmiennych jest<br />
znana. Inną cechą SB jest to, że taką sieć można utworzyć mając<br />
niepełne dane na temat zależności warunkowej atrybutów.
Przykład: jakie są szanse zdania ustnego egzaminu u prof. X, który jest<br />
kibicem Wisły i nie lubi deszczu ?<br />
Z - zaliczony egzamin<br />
N - dobre przygotowanie<br />
H - dobry humor egzaminatora<br />
A - awans Wisły do Ligi Mistrzów<br />
D - deszcz<br />
Łączny rozkład prawdopodobieństwa:<br />
P(Z, N, H, A ,D)<br />
wyznaczony przez 2 5 wartości (32 wartości)
Prawdopodobieństwo dobrego humoru, jeżeli Wisła<br />
awansowała: P(H=trueA=true):<br />
P(<br />
H<br />
|<br />
A)<br />
<br />
P(<br />
H,<br />
A)<br />
P(<br />
A)<br />
obliczymy z łącznego rozkładu P(Z, N, H, A ,D), na podstawie<br />
prawdopodobieństw brzegowych:<br />
P(<br />
H,<br />
A)<br />
<br />
<br />
Z , N , D<br />
P(<br />
Z,<br />
N,<br />
H,<br />
A,<br />
D)<br />
8 sumowań<br />
P(<br />
A)<br />
<br />
<br />
Z , N , H , D<br />
P(<br />
Z,<br />
N,<br />
H,<br />
A,<br />
D)<br />
16 sumowań
P(A)<br />
0.20<br />
P(D)<br />
0.30<br />
P(N)<br />
0.20 A D P(H)<br />
T 0.95<br />
T<br />
F 0.99<br />
T 0.05<br />
F<br />
F 0.15<br />
P(Z|H,D) = P(Z|H)<br />
N H P(Z)<br />
T 0.90<br />
T<br />
F 0.55<br />
T 0.45<br />
F<br />
F 0.05
Musimy pamiętać mniej wartości: w naszym przypadku 11 zamiast<br />
31 (ogólnie n2 k , n-liczba wierzchołków, k - maksymalna liczba<br />
rodziców; zamiast 2 n -1 wszystkich wartości w rozkładzie pełnym)<br />
Naturalne modelowanie: łatwiej oszacować prawd. warunkowe<br />
bezpośrednich zależności niż koniunkcji wszystkich możliwych<br />
zdarzeń<br />
Dowolny kierunek wnioskowania<br />
Czytelna reprezentacja wiedzy<br />
Łatwa modyfikacja
Reguła łańcuchowa: z def. P(X 1 ,X 2 )=P(X 1 |X 2 )P(X 2 )<br />
<br />
P( X ,..., X<br />
n)<br />
P(<br />
X<br />
i<br />
| X<br />
i1,...,<br />
X<br />
1 n<br />
i<br />
Numerując wierzchołki grafu tak aby indeks każdej zmiennej<br />
był mniejszy niż indeks przypisany jego przodkom oraz<br />
korzystając z warunkowej niezależności otrzymujemy:<br />
)<br />
P( Xi<br />
| X<br />
i1,...,<br />
X<br />
n)<br />
P(<br />
Xi<br />
| Parents ( Xi))<br />
<br />
Model zupełny<br />
P(<br />
X1,...,<br />
X<br />
n)<br />
P(<br />
X<br />
i<br />
i<br />
|<br />
Parents ( X<br />
i<br />
))
P(Z,N,H,A,D) = P(Z|N,H) P(N) P(H|A,D) P(A) P(D)<br />
Jaka jest szansa zaliczenia dla nieprzygotowanego studenta, gdy pada,<br />
Wisła odpadła i egzaminator jest w złym humorze ?<br />
P(Z N H A D) = 0.05 0.8 0.05 0.8 .30 = 0.0048<br />
P(A)<br />
0.20<br />
P(D)<br />
0.30<br />
P(N)<br />
0.20<br />
N H P(Z)<br />
T 0.90<br />
T<br />
F 0.55<br />
T 0.45<br />
F<br />
F 0.05<br />
A D P(H)<br />
T 0.95<br />
T<br />
F 0.99<br />
T 0.05<br />
F<br />
F 0.15
Prawdopodobieństwo Zaliczenia 74%
Egzamin zaliczony, jakie były tego przyczyny ?<br />
Wzrost P(A) z 20% do 40%, przy spadku P(D) - wykluczanie
Jeśli się przygotowaliśmy, to jaka jest szansa na zaliczenie ?<br />
Spadek P(Z) z 26% do 17%
... ale dodatkowo, Wisła awansowała i świeci słońce !<br />
Wzrost P(Z) z 17% do 45%.<br />
Podchodzić ?
Dodajemy wierzchołki decyzyjne (Podejście) oraz użyteczności<br />
(Stypendium) i możemy mierzyć wpływ ilościowy decyzji (Podchodzić, Nie<br />
Podchodzić)<br />
Podej Zalicz Styp<br />
true<br />
false<br />
true<br />
true<br />
7000<br />
5000<br />
false<br />
false<br />
2500<br />
5000
Czy warto iść gdy jesteśmy nieprzygotowani, świeci słońce i Wisła awansowała ?
A – pogoda<br />
(słonecznie/pochmurno/deszczowo/wietrznie)<br />
B – czas wolny (tak/nie)<br />
X – humor (bardzo dobry/dobry/nietęgi)<br />
C – zajęcie na zewnątrz (spacer/basen/rower)<br />
D – zajęcie w domu(komputer/książka/gotowanie)<br />
A<br />
X<br />
B<br />
C<br />
D
If A=a1 and B=b1 then X=x1 with 30%<br />
If A=a1 and B=b1 then X=x2 with 30%<br />
If A=a1 and B=b1 then X=x2 with 40%<br />
If A=a1 and B=b2 then X=x1 with 20%<br />
If A=a1 and B=b2 then X=x2 with 40%<br />
If A=a1 and B=b2 then X=x2 with 40%<br />
If A=a2 and B=b1 then X=x1 with 10%<br />
If A=a2 and B=b1 then X=x2 with 30%<br />
If A=a2 and B=b1 then X=x2 with 60%<br />
If A=a2 and B=b2 then X=x1 with 5%<br />
If A=a2 and B=b2 then X=x2 with 35%<br />
If A=a2 and B=b2 then X=x2 with 60%<br />
If A=a3 and B=b1 then X=x1 with 40%<br />
If A=a3 and B=b1 then X=x2 with 40%<br />
If A=a3 and B=b1 then X=x2 with 20%<br />
P(X|A,B) x1 x2 x3<br />
a1b1 0.3 0.3 0.4<br />
a1b2 0.2 0.4 0.4<br />
a2b1 0.1 0.3 0.6<br />
a2b2 0.05 0.35 0.6<br />
a3b1 0.4 0.4 0.2<br />
a3b2 0.2 0.5 0.3<br />
a4b1 0.6 0.35 0.05<br />
a4b2 0.3 0.4 0.3<br />
If A=a3 and B=b2 then X=x1 with 20%<br />
If A=a3 and B=b2 then X=x2 with 50%<br />
If A=a3 and B=b2 then X=x2 with 30%<br />
If A=a4 and B=b1 then X=x1 with 60%<br />
If A=a4 and B=b1 then X=x2 with 35%<br />
If A=a4 and B=b1 then X=x2 with 5%<br />
If A=a4 and B=b2 then X=x1 with 30%<br />
If A=a4 and B=b2 then X=x2 with 40%<br />
If A=a4 and B=b2 then X=x2 with 30%
A<br />
a1 0.25<br />
a2 0.25<br />
a3 0.25<br />
a4 0.25<br />
P(X|A,B) x1 x2 x3<br />
a1b1 0.3 0.3 0.4<br />
a1b2 0.2 0.4 0.4<br />
a2b1 0.1 0.3 0.6<br />
a2b2 0.0<br />
5<br />
0.35 0.6<br />
a3b1 0.4 0.4 0.2<br />
a3b2 0.2 0.5 0.3<br />
a4b1 0.6 0.35 0.05<br />
a4b2 0.3 0.4 0.3<br />
B<br />
b1 0.4<br />
b2 0.6<br />
P(C|X) c1 c2 c3<br />
X1 0.1 0.2 0.7<br />
X2 0.2 0.6 0.2<br />
X3 0.5 0.4 0.1<br />
P(DX) d1 d2 d3<br />
X1 0.1 0.3 0.6<br />
X2 0.7 0.2 0.1<br />
X3 0.3 0.4 0.3
A<br />
B<br />
a1 0.25<br />
a2 0.25<br />
a3 0.25<br />
a4 0.25<br />
P(C|X) c1 c2 c3<br />
X1 0.1 0.2 0.7<br />
X2 0.2 0.6 0.2<br />
X3 0.5 0.4 0.1<br />
P(X|A,B) X1 x2 x3<br />
a1b1 0.3 0.3 0.4<br />
a1b2 0.2 0.4 0.4<br />
a2b1 0.1 0.3 0.6<br />
a2b2 0.05 0.35 0.6<br />
a3b1 0.4 0.4 0.2<br />
a3b2 0.2 0.5 0.3<br />
a4b1 0.6 0.35 0.05<br />
a4b2 0.3 0.4 0.3<br />
b1 0.4<br />
b2 0.6<br />
P(DX) d1 d2 d3<br />
X1 0.1 0.3 0.6<br />
X2 0.7 0.2 0.1<br />
X3 0.3 0.4 0.3<br />
p(<br />
A a<br />
p(<br />
A a<br />
p(<br />
A a<br />
p(<br />
A a<br />
4<br />
4<br />
4<br />
4<br />
, B b<br />
2<br />
, C<br />
) p(<br />
B b<br />
, B b<br />
2<br />
, C<br />
) p(<br />
B b<br />
, X<br />
, X<br />
0.25*0.6*0.05*0.5*0.4 0.0015<br />
2<br />
2<br />
c , D d<br />
1<br />
) p(<br />
X x<br />
1<br />
3<br />
c , D d<br />
) p(<br />
X x<br />
3<br />
2<br />
2<br />
<br />
| A a<br />
<br />
| A a<br />
4<br />
4<br />
x<br />
3<br />
3<br />
)<br />
B <br />
x<br />
)<br />
<br />
<br />
B <br />
b<br />
b<br />
2<br />
2<br />
) p(<br />
C<br />
) p(<br />
C<br />
<br />
<br />
c<br />
c<br />
1<br />
1<br />
|<br />
|<br />
X<br />
X<br />
<br />
<br />
x<br />
x<br />
3<br />
3<br />
) p(<br />
D<br />
) p(<br />
D<br />
<br />
<br />
d<br />
d<br />
2<br />
2<br />
|<br />
|<br />
X<br />
X<br />
<br />
<br />
x<br />
x<br />
3<br />
3<br />
)<br />
)
A<br />
a1 0.25<br />
a2 0.25<br />
a3 0.25<br />
a4 0.25<br />
P(X|A,B) X1 x2 x3<br />
a1b1 0.3 0.3 0.4<br />
a1b2 0.2 0.4 0.4<br />
a2b1 0.1 0.3 0.6<br />
a2b2 0.05 0.35 0.6<br />
a3b1 0.4 0.4 0.2<br />
a3b2 0.2 0.5 0.3<br />
a4b1 0.6 0.35 0.05<br />
a4b2 0.3 0.4 0.3<br />
B<br />
b1 0.4<br />
b2 0.6<br />
p(<br />
X x1<br />
| A a1<br />
B b1<br />
)* p(<br />
A a1)*<br />
p(<br />
B b1<br />
)<br />
0.3*(0.25*0.4) 0.3*0.1 0.03
A<br />
B<br />
a1 0.25<br />
a2 0.25<br />
a3 0.25<br />
a4 0.25<br />
P(C|X) c1 c2 c3<br />
X1 0.1 0.2 0.7<br />
X2 0.2 0.6 0.2<br />
X3 0.5 0.4 0.1<br />
P(X|A,B) X1 x2 x3<br />
a1b1 0.3 0.3 0.4<br />
a1b2 0.2 0.4 0.4<br />
a2b1 0.1 0.3 0.6<br />
a2b2 0.05 0.35 0.6<br />
a3b1 0.4 0.4 0.2<br />
a3b2 0.2 0.5 0.3<br />
a4b1 0.6 0.35 0.05<br />
a4b2 0.3 0.4 0.3<br />
b1 0.4<br />
b2 0.6<br />
P(DX) d1 d2 d3<br />
X1 0.1 0.3 0.6<br />
X2 0.7 0.2 0.1<br />
X3 0.3 0.4 0.3<br />
p(<br />
X <br />
p(<br />
X x<br />
p(<br />
X x<br />
p(<br />
X x<br />
p(<br />
X x<br />
x ) p(<br />
X x<br />
1<br />
1<br />
1<br />
1<br />
1<br />
|<br />
|<br />
|<br />
|<br />
A a<br />
A a<br />
A a<br />
A a<br />
1<br />
2<br />
3<br />
4<br />
1<br />
B b<br />
| A a<br />
2<br />
B b<br />
B b<br />
B b<br />
2<br />
2<br />
2<br />
1<br />
B b<br />
) p(<br />
A a<br />
1<br />
) p(<br />
A a<br />
) p(<br />
A a<br />
) p(<br />
A a<br />
2<br />
3<br />
4<br />
1<br />
) p(<br />
A a<br />
B b<br />
2<br />
B b<br />
B b<br />
2<br />
2<br />
B b<br />
2<br />
) <br />
| A a<br />
| A a<br />
| A a<br />
) p(<br />
A a<br />
) p(<br />
A a<br />
) p(<br />
A a<br />
0.3*0.1<br />
0.2*0.15 0.1*0.1<br />
0.05*0.15 0.4*0.1<br />
0.2*0.15 0.6*0.1<br />
0.3*0.15 0.2525<br />
1<br />
B b<br />
1<br />
) p(<br />
X x<br />
) <br />
1<br />
) p(<br />
X x<br />
) p(<br />
X x<br />
1<br />
1<br />
2<br />
3<br />
4<br />
B b<br />
1<br />
B b<br />
B b<br />
1<br />
1<br />
2<br />
3<br />
4<br />
B b<br />
1<br />
B b<br />
B b<br />
) <br />
1<br />
1<br />
) <br />
)
Jakie są szanse zdania ustnego egzaminu u prof. X, który<br />
jest kibicem Wisły i nie lubi deszczu?<br />
Wynik egzaminu zależy od:<br />
dobrego przygotowania studenta<br />
dobrego humor egzaminatora<br />
awansu Wisły do Ligi Mistrzów<br />
Deszczu – by nie padał !!!
Jak prawdopodobne jest zdanie egzaminu gdy humor egzaminatora i<br />
przygotowanie studenta jest pewne w skali „pół na pół” ?
Jak prawdopodobne jest zdanie egzaminu gdy humor egzaminatora i<br />
przygotowanie studenta jest pewne przynajmniej w 70 % ?
Jak prawdopodobne jest zdanie egzaminu gdy humor egzaminatora<br />
jest dobry ale przygotowanie studenta niestety fatalne ! ?
SMILE Zestaw klas C++ implementujących różne modele decyzyjne w oparciu o analizę<br />
probabilistyczną. Wśród nich sieci <strong>Bayesa</strong>, modele równań strukturalnych. SMILE<br />
doskonałe sprawdzi się w roli engine'u dla różnego rodzaju aplikacji, których celem jest<br />
tworzenia graficznej reprezentacji model probabilistycznego. Biblioteka została<br />
zaprojektowana w ten sposób, iż może być wykorzystana w kodzie C poprzez wywołania<br />
funkcji. Co więcej, istnieje również wersja przeznaczona dla platformy .NET.<br />
Platforma: Macintosh, Linux, Solaris, Windows<br />
Licencja: Decision Systems Laboratory, University of Pittsburgh License<br />
http://www.sis.pitt.edu/~genie/smile/smile.htm<br />
GeNIe 2 GeNIe stanowi komplementarny element dla SMILE. Jest graficzną nakładką dla tej<br />
biblioteki. Z uwagi na to, że twórcy SMILE rozwijali również GeNIe, można być pewnym<br />
bezproblemowej współpracy. Za sprawą wbudowanego edytora modeli GeNIe pozwala na<br />
swobodną modyfikację modeli probabilistycznych. Możliwa jest także wymiana danych z<br />
innymi aplikacjami (Excel).<br />
Platforma: Windows<br />
Licencja: Decision Systems Laboratory, University of Pittsburgh License<br />
http://www.sis.pitt.edu/~genie/genie/genie.htm
Przedstawione na grafie zależności są modelowane przez przedstawione liczbowo<br />
prawdopodobieństwo wyrażające siłę, z jaką oddziałują na siebie zmienne.<br />
Prawdopodobieństwo jest kodowane w tabelach dołączanych do każdego węzła i<br />
indeksowanych przez węzły nadrzędne. Górne wiersze tabeli przedstawiają wszystkie<br />
kombinacje stanów zmiennych nadrzędnych.
Węzły bez poprzedników są opisane głównymi prawdopodobieństwami. Węzeł<br />
„Success” będzie opisany przez rozkład prawdopodobieństw tylko jego dwóch<br />
wyników możliwych: Success i Failure.<br />
Węzeł „Forecast” będzie natomiast opisany przez rozkład prawdopodobieństw<br />
wyjściowych wartości (Good, Moderate, Poor) uwarunkowanych dodatkowo<br />
przez ich poprzedniki (węzeł Success, i wyjściowe wartości Success i Failure).
Sieć <strong>Bayesa</strong>
Rozważmy osobę, która spędza sporo czasu przy komputerze, w wolnych chwilach gra na komputerze oraz<br />
przegląda Internet. Mało czasu poświęca na sport czy spotkania z przyjaciółmi. W szkole nie ma problemów z<br />
przedmiotami ścisłymi typu matematyka czy fizyka, jednak ma pewne problemy z przedmiotami<br />
humanistycznymi. Osoba lubi majsterkować ze sprzętem<br />
Węzeł Odpowiedź Komentarz<br />
zdolności techniczne tak Typowy gracz jest zainteresowany nowinkami<br />
technologicznymi, zdobywa różnego rodzaju<br />
gadżety i potrafi je obsługiwać. Dodatkowo, gry<br />
uczą logicznego myślenia.<br />
twórczość nie Brak poczucia estetyki i twórczego myślenia.<br />
zdolności werbalne nie Mogą być problemy z wysłowieniem się poza<br />
wirtualnym światem, dosyć ograniczone<br />
słownictwo.<br />
zdolności liczbowe tak Zamiłowanie do matematyki, fizyki.<br />
praca z ludźmi nie Trudności w poznawaniu nowych ludzi. Rzadkie<br />
spotkania z przyjaciółmi wskazują na<br />
zamkniętość osoby.<br />
polityka nie Brak zainteresowania bieżącymi wydarzeniami<br />
społecznymi i gospodarczymi.<br />
status społeczny wysoki Oczekiwanie wysokiego statusu społecznego.<br />
zarobki wysokie Oczekiwanie wysokich zarobków.<br />
kontakt z ludźmi brak Oczekiwanie braku częstego kontaktu z ludźmi<br />
w pracy – praca indywidualna.
Rozważmy osobę, która spędza sporo czasu przy komputerze, w wolnych chwilach gra na komputerze oraz przegląda Internet.<br />
Mało czasu poświęca na sport czy spotkania z przyjaciółmi. W szkole nie ma problemów z przedmiotami ścisłymi typu<br />
matematyka czy fizyka, jednak ma pewne problemy z przedmiotami humanistycznymi. Osoba lubi majsterkować ze sprzętem
Otrzymane wyniki (kolor fioletowy na diagramie):<br />
◦ Warstwa kierunki studiów:<br />
• Kierunki techniczne: otrzymały najwyższy wynik (pole żaden uzyskało tylko 5%).<br />
Osoba nie mająca problemów z przedmiotami ścisłymi ma predyspozycje do<br />
kierunków technicznych. W ramach tego typu kierunków widać niewielką przewagę<br />
kierunku informatyka (50%) nad kierunkiem budownictwo (45%).<br />
• Kierunki ekonomiczne: również przystępny wynik (pole żaden uzyskało 33%). Brak<br />
problemów z matematyką osoby, wpłynął na dosyć wysoki wynik dla kierunku<br />
finanse (48%) oraz niższy dla kierunku marketing (20%). Sumowanie się wyników<br />
do 101% jest spowodowane zapewne błędem programu GeNIe.<br />
• Kierunki społeczne i artystyczne: otrzymano 100% i 96% dla pola żaden. Osoba,<br />
która rzadko spotyka się z przyjaciółmi, czy ma problemy z przedmiotami<br />
humanistycznymi powinna unikać tych kierunków.
◦ Warstwa praca zawodowa, stanowisko:<br />
• Praca inżynierska: Wysoki wynik dla kierunków technicznych w poprzedniej<br />
warstwie wpłynął na dosyć wysoki wynik dla zawodów, które wymagają tytułu<br />
inżyniera (85%).<br />
Branża rozrywkowa: Niski wynik spowodowany unikaniem kontaktów z ludźmi przez<br />
typowego gracza<br />
• Stanowisko kierownicze: Dosyć wysoki wynik (80%) wynika z predyspozycji osoby<br />
do kierunków technicznych oraz ekonomicznych.<br />
• Marketing: Tutaj również unikanie kontaktów z ludźmi zaniżyło wynik (11%), mimo<br />
dosyć dobrych wyników kierunków ekonomicznych.<br />
• Finanse: Dosyć wysoki wynik (63%) spowodowany zdolnościami technicznymi oraz<br />
liczbowymi typowego gracza.<br />
◦ Warstwa różne cechy i aspekty pracy:<br />
• Kariera zawodowa: Dobre wyniki dla pracy jako inżynier oraz w finansach w<br />
poprzedniej warstwie, spowodowały wysoki wynik dla stabilności kariery<br />
zawodowej typowego gracza (87%).
<strong>Sieci</strong> bayesowskie - efektywne narzędzie w zagadnieniach<br />
systemów eksperckich oraz sztucznej inteligencji<br />
<br />
<br />
<br />
<br />
Szerokie zastosowania: NASA-AutoClass, Microsoft-Office<br />
Assistant, w przemyśle - www.hugin.com, medycyna,<br />
sądownictwo, itd.<br />
<strong>Sieci</strong> <strong>Bayesa</strong> stanowią naturalną reprezentację niezależności<br />
warunkowej (indukowanej przyczynowo).<br />
Topologia sieci i tablice prawdopodobieństwa warunkowego<br />
(CPT) pozwalają na zwartą reprezentację rozkładu łącznego<br />
prawdopodobieństwa.<br />
<strong>Sieci</strong> <strong>Bayesa</strong> są szczególnie przydane i łatwe do zastosowania<br />
w systemach ekspertowych.
Naiwny klasyfikator bayesowski jest prostym probabilistycznym<br />
klasyfikatorem.<br />
Zakłada się wzajemną niezależność zmiennych niezależnych (tu<br />
naiwność)<br />
Bardziej opisowe może być określenie- „model cech niezależnych”.<br />
Model prawdopodobieństwa można wyprowadzić korzystając z<br />
twierdzenia <strong>Bayesa</strong>.<br />
W zależności od rodzaju dokładności modelu prawdopodobieństwa,<br />
naiwne klasyfikatory bayesowskie można „uczyć” bardzo skutecznie<br />
w trybie uczenia z nadzorem.
Jeśli wiemy, że kulek czerwonych jest 2 razy mniej niż zielonych (bo<br />
czerwonych jest 20 a zielonych 40) to prawdopodobieństwo tego, że<br />
kolejna (nowa) kulka będzie koloru zielonego jest dwa razy większe niż<br />
tego, że kulka będzie czerwona.<br />
Dlatego możemy napisać, że znane z góry prawdopodobieństwa:
Jeśli więc czerwonych jest 20 a zielonych 40, to razem wszystkich jest 60. Więc<br />
Więc teraz gdy mamy do czynienia z nową kulką ( na rysunku – biała):
To spróbujmy ustalić jaka ona będzie. Dokonujemy po prostu klasyfikacji kulki do jednej<br />
z dwóch klas: zielonych bądź czerwonych.<br />
Jeśli weźmiemy pod uwagę sąsiedztwo białej kulki takie jak zaznaczono, a więc do 4<br />
najbliższych sąsiadów, to widzimy, że wśród nich są 3 kulka czerwone i 1 zielona.<br />
<br />
Obliczamy liczbę kulek w sąsiedztwie należących do danej klasy : zielonych bądź<br />
czerwonych z wzorów:<br />
W naszym przypadku, jest dziwnie, bo akurat w sąsiedztwie kulki X jest więcej kulek czerwonych niż zielonych,<br />
mimo, iż kulek zielonych jest ogólnie 2 razy więcej niż czerwonych. Dlatego zapiszemy, że
Dlatego ostatecznie powiemy, że<br />
Prawdopodobieństwo że kulka X jest zielona = prawdopodobieństwo kulki<br />
zielonej * prawdopodobieństwo, że kulka X jest zielona w swoim sąsiedztwie<br />
=<br />
Prawdopodobieństwo że kulka X jest czerwona = prawdopodobieństwo kulki<br />
czerwonej * prawdopodobieństwo, że kulka X jest czerwona w swoim sąsiedztwie =<br />
Ostatecznie klasyfikujemy nową kulkę X do klasy kulek czerwonych, ponieważ ta klasa dostarcza nam<br />
większego prawdopodobieństwa posteriori.
Tylko dla cech jakościowych<br />
Tylko dla dużych zbiorów danych
Aby obliczyć P(diabetes=1) należy zliczyć liczbę<br />
obserwacji dla których spełniony jest warunek<br />
„diabetes=1”. Jest ich dokładnie 9 z 20 wszystkich.<br />
Podobnie, aby obliczyć P(diabetes=0) należy zliczyć<br />
liczbę obserwacji dla których spełniony jest warunek<br />
„diabetes=0”. Jest ich dokładnie 11 z 20 wszystkich.
Zakładając, że zmienne niezależne faktycznie są niezależne, wyliczenie<br />
P(X|diabetes=1) wymaga obliczenia prawdopodobieństwa warunkowego<br />
wszystkich wartości dla X:<br />
Np. obliczenie P(BP=high|diabetes=1) wymaga znów obliczenia P(BP=high) i<br />
P(diabetes=1) co jest odpowiednio równe 4 i 9 zatem prawdopodobieństwo<br />
to wynosi 4/9:
Zatem:<br />
Mając już prawdopodobieństwa P(X|diabetes=1) i P(diabetes=1)<br />
można wyznaczyć iloczyn tych prawdopodobieństw:
Teraz podobnie zrobimy w przypadku P(X|diabetes=0)
Możemy więc wyznaczyć P(X|diabetes=0):<br />
Ostatecznie iloczyn prawdopodobieństw jest wyznaczany:<br />
Jakoże P(X|diabeltes=1)P(diabetes=1) jest większe niż<br />
P(X|diabetes=0)P(diabetes=0) nowa obserwacja będzie zaklasyfikowana do<br />
klasy diabetes=1.<br />
Prawdopodobieństwo ostateczne że jeśli obiekt ma opis taki jak X będzie z<br />
klasy diabetes=1 jest równe:
Jakie będzie prawdopodobieństwo klasyfikacji<br />
do klasy „diabetes=1” gdy mamy następujące<br />
przypadki:<br />
X:BP=Average ; weight=above average; FH= yes; age=50+<br />
X:BP=low ; weight=average; FH= no; age=50+<br />
X:BP=high ; weight=average; FH= yes; age=50+
– jeden z algorytmów regresji nieparametrycznej używanych w<br />
statystyce do prognozowania wartości pewnej zmiennej losowej.<br />
Może również być używany do klasyfikacji.<br />
-<br />
Założenia<br />
• Dany jest zbiór uczący zawierający obserwacje z których każda<br />
ma przypisany wektor zmiennych objaśniających oraz wartość<br />
zmiennej objaśnianej Y.<br />
• Dana jest obserwacja C z przypisanym wektorem zmiennych<br />
objaśniających dla której chcemy prognozować wartość<br />
zmiennej objaśnianej Y.
Wyznaczanie odległości obiektów: odległość<br />
euklidesowa
Obiekty są analizowane w ten sposób , że oblicza się odległości bądź podobieństwa między<br />
nimi. Istnieją różne miary podobieństwa czy odległości. Powinny być one wybierane<br />
konkretnie dla typu danych analizowanych: inne są bowiem miary typowo dla danych<br />
binarnych, inne dla danych nominalnych a inne dla danych numerycznych.<br />
Nazwa<br />
Wzór<br />
gdzie: x,y - to<br />
wektory wartości<br />
cech<br />
porównywanych<br />
obiektów w<br />
przestrzeni p-<br />
wymiarowej, gdzie<br />
odpowiednio<br />
wektory wartości<br />
to: oraz .<br />
odległość euklidesowa<br />
odległość kątowa<br />
współczynnik korelacji<br />
liniowej Pearsona<br />
Miara Gowera
Oblicz odległość punktu A o współrzędnych (2,3) do punktu B o<br />
współrzędnych (7,8).<br />
9<br />
8<br />
7<br />
6<br />
5<br />
4<br />
3<br />
2<br />
1<br />
0<br />
0 2 4 6 8<br />
A<br />
B<br />
D (A,B) = pierwiastek ((7-2) 2 + (8-3) 2 ) = pierwiastek (25 + 25) =<br />
pierwiastek (50) = 7.07
9<br />
8<br />
B<br />
7<br />
6<br />
5<br />
4<br />
3<br />
A<br />
A<br />
B<br />
C<br />
2<br />
1<br />
C<br />
0<br />
0 1 2 3 4 5 6 7 8<br />
<br />
<br />
Mając dane punkty:<br />
A(2,3), B(7,8) oraz C(5,1) oblicz odległości między punktami:<br />
D (A,B) = pierwiastek ((7-2) 2 + (8-3) 2 ) = pierwiastek (25 + 25) = pierwiastek (50) = 7.07<br />
D (A,C) = pierwiastek ((5-2) 2 + (3-1) 2 ) = pierwiastek (9 + 4) = pierwiastek (13) = 3.60<br />
D (B,C) = pierwiastek ((7-5) 2 + (3-8) 2 ) = pierwiastek (4 + 25) = pierwiastek (29) = 5.38
1. porównanie wartości zmiennych objaśniających dla obserwacji C z<br />
wartościami tych zmiennych dla każdej obserwacji w zbiorze uczącym.<br />
2. wybór k (ustalona z góry liczba) najbliższych do C obserwacji ze zbioru<br />
uczącego.<br />
3. Uśrednienie wartości zmiennej objaśnianej dla wybranych obserwacji,<br />
w wyniku czego uzyskujemy prognozę.<br />
Przez "najbliższą obserwację" mamy na myśli, taką obserwację, której odległość do analizowanej przez<br />
nas obserwacji jest możliwie najmniejsza.
Najbliższy dla naszego obiektu „buźka” jest obiekt<br />
Więc przypiszemy nowemu obiektowi klasę:
Mimo, że najbliższy dla naszego obiektu „buźka” jest obiekt<br />
Metodą głosowania ustalimy, że skoro mamy wziąć pod uwagę 5 najbliższych<br />
sąsiadów tego obiektu, a widać, że 1 z nich ma klasę:<br />
Zaś 4 pozostałe klasę:<br />
To przypiszemy nowemu obiektowi klasę:
Obiekt klasyfikowany podany<br />
jako ostatni : a = 3, b = 6<br />
Teraz obliczmy odległości<br />
poszczególnych obiektów od<br />
wskazanego. Dla<br />
uproszczenia obliczeń<br />
posłużymy sie wzorem:
Znajdujemy więc k najbliższych sąsiadów. Załóżmy, że szukamy 9 najbliższych<br />
sąsiadów. Wyróżnimy ich kolorem zielonym.<br />
Sprawdzamy, które z tych 9 najbliższych sąsiadów są z klasy „+” a które z klasy „-” ?<br />
By to zrobić musimy znaleźć k najbliższych sąsiadów (funkcja Excela o nazwie MIN.K)
Wyobraźmy sobie, że nie mamy 2 zmiennych opisujących każdy obiekt, ale tych<br />
zmiennych jest np. 5: {v1,v2,v3,v4,v5} i że obiekty opisane tymi zmiennymi to 3<br />
punkty: A, B i C:<br />
V1 V2 V3 V4 V5<br />
A 0.7 0.8 0.4 0.5 0.2<br />
B 0.6 0.8 0.5 0.4 0.2<br />
C 0.8 0.9 0.7 0.8 0.9<br />
Policzmy teraz odległość między punktami:<br />
D (A,B) = pierwiastek ((0.7-0.6) 2 + (0.8-0.8) 2 + (0.4-0.3) 2 + (0.5-0.4) 2 + (0.2-0.2) 2 ) = pierwiastek<br />
(0.01 + 0.01 + 0.01) = pierwiastek (0.03) = 0.17<br />
D (A,C) = pierwiastek ((0.7-0.8) 2 + (0.8-0.9) 2 + (0.4-0.7) 2 + (0.5-0.8) 2 + (0.2-0.9) 2 ) = pierwiastek<br />
(0.01 + 0.01 + 0.09 + 0.09 + 0.49) = pierwiastek (0.69) = 0.83<br />
D (B,C) = pierwiastek ((0.6-0.8) 2 + (0.8-0.9) 2 + (0.5-0.7) 2 + (0.4-0.8) 2 + (0.2-0.9) 2 ) = pierwiastek<br />
(0.04 + 0.01 + 0.04+0.16 + 0.49) = pierwiastek (0.74) = 0.86<br />
Szukamy najmniejszej odległości, bo jeśli te dwa punkty są najbliżej siebie, dla których mamy<br />
najmniejszą odległości ! A więc najmniejsza odległość jest między punktami A i B !
Schemat algorytmu:<br />
Poszukaj obiektu najbliższego w stosunku do obiektu klasyfikowanego.<br />
Określenie klasy decyzyjnej na podstawie obiektu najbliższego.<br />
Cechy algorytmu:<br />
Bardziej odporny na szumy - w poprzednim algorytmie obiekt najbliższy<br />
klasyfikowanemu może być zniekształcony - tak samo zostanie zaklasyfikowany<br />
nowy obiekt.<br />
Konieczność ustalenia liczby najbliższych sąsiadów.<br />
Wyznaczenie miary podobieństwa wśród obiektów (wiele miar podobieństwa).<br />
Dobór parametru k - liczby sąsiadów:<br />
Jeśli k jest małe, algorytm nie jest odporny na szumy – jakość klasyfikacji jest<br />
niska. Jeśli k jest duże, czas działania algorytmu rośnie - większa złożoność<br />
obliczeniowa. Należy wybrać k, które daje najwyższą wartość klasyfikacji.