Systemy rozmyte

Download Report

Transcript Systemy rozmyte

Inteligencja Obliczeniowa
Systemy rozmyte.
Wykład 18
Włodzisław Duch
Uniwersytet Mikołaja Kopernika
Co było
• Zbiory rozmyte
• Funkcje rozmyte
• Relacje rozmyte
Co będzie
•
•
•
•
•
Wnioskowanie rozmyte
Uczenie się reguł rozmytych
Rozmywanie danych wejściowych
Rozmyta klasteryzacja
Zastosowania
Reguły rozmyte
Wiedzę potoczną można często zapisać w naturalny
sposób za pomocą reguł rozmytych.
Jeśli zm. lingw-1 = term-1 i zm. lingw-2 = term-2
to
zm. lingw-3 = term-3
Jeśli Temperatura = zimno i cena ogrzewania = niska
to
grzanie = mocno
Co oznacza reguła rozmyta:
Jeśli x jest A to y jest B ?
Interpretacja
Jeśli x jest A to y jest B: korelacja lub implikacja.
y
y
B
B
x
x
A
A
A=>B  not A or B
~
R  A  B  A  B    A ( x )   B ( y )|( x, y )
Rozmyta implikacja
Jeśli korelacja to wystarczy T-norma T(A,B).
P=>Q ma wiele realizacji, np.P  Q  P  Q lub
P  Q  ( P  Q )  P
Pojedyncza reguła
Jeśli x jest A to y jest B.
Fakt: x jest A’, konkluzja: y jest B’
A’ A
B
w
X
A’
x is A’
Y
B’
X
y is B’
Łatwo uogólnić dla wielu warunków:
Jeśli x jest A i y jest B to z jest C
Y
Reguły FMR i FIR
FMR, Fuzzy Mapping Rules.
Zależność funkcjonalna, rozmyte grafy, aproksymacja.
Model rozmyty: zbiór reguł FMR.
FIR, Fuzzy Implication Rules.
logika implikacji pomiędzy rozmytymi stwierdzeniami.
Obydwa typy reguł:
rozmyte relacje pomiędzy przesłankami a konkluzją,
jeśli przesłanki spełnione to podobnie działają.
Składają przesłanki, ale mogą stosować różne
operatory, jest różna semantyka.
Rozmyta aproksymacja
 Systemy rozmyte F: n  p używają m reguł by
odwzorować wektor x na wyjście F(x), wektorowe lub
skalarne.
Model singletonowy:
Ri: IF x jest Ai TO y jest bi
Implikacje
Mamdani
 AB  x, y    A  x    B  y   min   A  x  ,  B  y  
Larsen
 A B  x, y    A  x   B  y 
Łukasiewicz
 AB  x, y   min 1,1   A  x    B  y  
Zadeh
 A B  x, y   max  min   A  x  ,  B  y   ,1   A  x  
Kleen-Dienes, Goguen, Sharp, ograniczonej sumy, probabilistyczna ...
Relacje można wyprowadzić z logiki wielowartościowej Łukasiewicza.
Baza reguł
Ogrzewanie
Cena
mróz
Temperatura
zimno
chłodno
tanio
mocno
mocno
średnio
średnio
mocno
średnio
słabo
drogo
średnio
słabo
wcale
IF Temperatura=mróz i Cena-ogrzewania=tanio THEN Grzać=mocno
IF Temperatura=chłodno i Cena-ogrzewania=drogo THEN Grzać=wcale
1. Rozmywanie
Fuzzyfikacja, rozmywanie: od pomiarów do f. przynależności:
Określ stopnie przynależności zmiennych lingwistycznych
do każdego ze zbiorów rozmytych:
Temperatura: T=15 C
1
chłodno(T)=0.5
1
0.5
0
15C
Cena-ciepła: p=48zł/MBtu
t
0.3
0
tanio(p)=0.3
48zł/MBtu
p
IF Temperatura=chłodno i Cena-ciepła=tanio ...
2. Łączenie termów
Oblicz stopień spełnienia reguły dla wszystkich przesłanek łącząc
ze sobą termy za pomocą rozmytego AND, np. operatora MIN.
1
chłodno(t)=0.5
0.5
0
15 C
1
tanio(p)=0.
3
0.3
t 0
48zł/MBtu
IF Temperatura=chłodno
i
p
Cena-ciepła=tanio ...
A(X) = A1(X1)  A2(X2)  AN(XN) dla reguły RA
całe(X) = min{chłodno(t), tanio(p)} = min{0.5,0.3} = 0.3
3. Wnioskowanie
Oblicz stopień prawdziwości konkluzji: zastosuj wartość
przynależności przesłanek do konkluzji reguły używając Tnorm: MIN lub iloczynu.
high(h)
konkluzja(h)
1
... przesł=0.3
0
h
THEN Grzać=mocno
1
... przesł =0.3
0
Wnioskowanie MIN
konkl=min{przesł, mocno}
mocno(h) konkl(h)
h
Wnioskowanie •
konkl. = przesł • mocno
4. Agregacja
Dokonaj agregacji wszystkich przesłanek reguł używając
operatora MAX by obliczyć sumę.
THEN Grzać=mocno
THEN Grzać=średnio
THEN Grzać=słabo
1
0
h
5. Wyostrzanie
Oblicz ostrą wartość lub decyzję używając np. metody
środka ciężkości “Center of Gravity” (COG)
1
konkl(h)
0
73
COG
h
Dla zbiorów dyskretnych „centrum singletonów”, dla ciągłych:
h = Si i • Ai • ci
Si i • Ai
i = stopień przynależności do zbioru i
Ai = powierzchnia zbioru i
ci = środek ciężkości zbioru i.
Schemat rozmytego systemu
Rozmywanie
Wnioskowanie
Wyostrzanie
baza reguł
if temp=mróz
mróz zimno ciepło then zawór=otwarty
mróz =0.7 0.7
0.7
if temp=zimno
then zawór=półotwarty
0.2
Zmierzona
temperatura
t
zimno =0.2
if temp=ciepło
then zawór=zamknięty
otw pół
zamk
0.2
v
Wyjście określające
położenie zaworu
hot =0.0
Reguły Takagi-Sugeno
Reguły Mamdani: wynikiem jest zbiór rozmyty B
IF X1 = A1 i X2 =A2 … Xn = An Then Y = B
Reguły TS: wynikiem jest funkcja f(xi)
IF X1 = A1 i X2 = A2 …. Xn = An Then Y=f(x1,x2,..xn)
Zwykle w regułach TS są to liniowe funkcje
(aproksymacja f. sklejanymi liniowymi):
IF X1 = A1 i X2 = A2…Xn = An Then Y=a0 + a1x1 … +anxn
Rozmyty system w Matlabie
1. If (temperature is cold) and (oilprice is normal) then (heating is high) (1)
rulelist=[
2. If (temperature is cold) and1(oilprice
is expensive)
then (heating is medium) (1)
1 3 1
1
1 (oilprice
2 3 1is 1cheap) then
3. If (temperature is warm) and
first(heating
inputis high) (1)
1 (oilprice
3 2 1is 1normal) then
4. If (temperature is warm) and
(heating
is medium) (1)
second
input
2 1 3 1 1
output
5. If (temperature is cold) and (oilprice is cheap) then
(heating is high) (1)
2 2 2 1 1
rule
weight
6. If (temperature is warm) and
then
(heating is low) (1)
2 (oilprice
3 1 1is 1expensive)
1 2 is1cheap)
1 thenoperator
7. If (temperature is hot) and 3
(oilprice
(heating is medium) (1)
2 3 is1normal)
1
(1=AND,
8. If (temperature is hot) and 3
(oilprice
then
(heating is 2=OR)
low) (1)
3 3 3 1 1];
9. If (temperature is hot) and (oilprice is expensive) then (heating is low) (1)
fis=addrule(fis,rulelist);
showrule(fis)
gensurf(fis);
Surfview(fis);
Fuzzy Inference System (FIS)
IF szybkość jest niska to hamowanie = 2
IF szybkość jest średnia to hamowanie = 4* szybkość
IF szybkość jest wysoka to hamowanie = 8* szybkość
FP
średnia
niska
wysoka
.8
.3
.1
2
R1: w1 = .3; r1 = 2
R2: w2 = .8; r2 = 4*2
R3: w3 = .1; r3 = 8*2
Szybkość
Hamowanie = S(wi*ri) /
= 7.12
Sw i
FIS Sugeno 1-go rzędu
• Reguły
IF X jest A1 i Y jest B1 to Z = p1*x + q1*y + r1
IF X jest A2 i Y jest B2 to Z = p2*x + q2*y + r2
• Rozmyte wnioskowanie
A1
B1
w1
X
A2
x=3
Y
B2
X
z1 =
p1*x+q1*y+r1
y=2
w2
Y
P
z2 =
p2*x+q2*y+r2
z=
w1*z1+w2*z2
w1+w2
Indukcja reguł rozmytych
Parametry adaptacyjne w regułach rozmytych:
• Liczba reguł.
• Liczba termów dla każdego atrybutu.
• Położenie f. przynależności (FP).
• Kształt FP dla każdego atrybutu.
• Postać konkluzji.
• Wybór operatorów.
• Indukcja: konstruktywna lub adaptacja.
Dzielenie przestrzeni cech
Siatka
Indywidualne funkcje
Siatki
• Zalety: najprostsze podejście
• Regularna siatka: przypisz do każdego obszaru średnią
wartość wszystkich przykładów, które do niego należą.
• Nieregularna siatka: podziel siatkę w miejscu
największego błędu na mniejsze (dodaj FP).
• Metoda mieszana: zacznij od regularnej siatki,
przeprowadź adaptację parametrów.
• Wady: Nk obszarów dla k wymiarów i N funkcji!
Często słaba aproksymacja.
• Propozycja Combsa: linearyzacja, tyle samo klas co
zbiorów dla każdej z cech.
Indywidualne FP
• Zalety: dokładniejsze, lepsza aproksymacja,
mniej funkcji.
• Systemy neurorozmyte - równoważne sieci RBF z
funkcjami Gaussowskimi lub sieci FSM z trójkątnymi,
trapezami, bicentralnymi, zmodyfikowane sieci MLP.
• Systemy oparte na drzewach decyzji.
• Systemy indukcji reguł z danych w rozmytej wersji.
• Wady: trudniejsze w realizacji? Ekstrakcja
reguł nie jest prosta.
Dostrajanie zbiorów reguł.
• Jak poprawić dany zbiór reguł?
• Użyj metod minimalizacji by zoptymalizować
parametry reguł rozmytych: zwykle metod
niegradientowych; najczęściej stosowane są
algorytmy genetyczne.
• Zamień reguły na sieć neuronową, naucz sieć i
dokonaj ponownej ekstrakcji.
• Stosuj metody heurystyczne do lokalnej adaptacji
parametrów poszczególnych reguł.
• Logika rozmyta - dobra do modelowania wiedzy ale ...
• Jak wyglądają granice decyzji systemów wnioskowania
rozmytego? Czy warto rozmywać/wyostrzać?
• Czy nie ma lepszych metod sklejania do aproksymacji?
ANFIS
• Wnioskowanie
B1
A1
A2
B2
w1
w2
z1 =
p1*x+q1*y+r1
z2 =
p2*x+q2*y+r2
z=
w1*z1+w2*z2
w1+w2
y
x
• ANFIS (Adaptive Neuro-Fuzzy Inference System)
A1
x
A2
B1
y
B2
P
w1
P
w1*z1
S Swi*zi
w2*z2
w2
S
Sw i
/
z
ANFIS z 4 regułami
• Podział p. wejściowej
y
A2
A1
B2
x
B2
B1
B1
y
A1
A2
• ANFIS (Adaptive Neuro-Fuzzy Inference System)
x
y
A1
P
A2
P
B1
P
B2
P
w1
w1*z1
S Swi*zi
w4
Sw i
w4*z4
S
/
z
x
ANFIS: identyfikacja param.
• Hybrydowe metody trenowania: BP + LMS
nieliniowe
parametry
x
y
A1
P
A2
P
B1
P
B2
P
Param. FP
(nieliniowe)
Współczynniki
(liniowe)
liniowe
parametry
w1
w1*z1
S Swi*zi
Sw i
w4*z4
w4
S
wprzód
wstecz
stałe
gradientowe
LMS
stałe
/
z
Zastosowania
Wszystko fuzzy, szczególnie w Japonii od 1987!
Kontrolery rozmyte: jak się przewraca to pchaj!
W pralkach, opiekaczach, kamerach (autofokus),
klimatyzacji, samochodach (hamulce, wtryski),
automatyce przemysłowej, sterowaniu robotów ...
Języki AI, np. FuzzyCLIPS.
FuzzyJESS (Expert System Shell z Sandia National Lab.)
Fuzzy Java Toolkit ...
Fuzzyfikacja sieci neuronowych: systemy neurrozmyte i rozmytoneuronowe.
Koniec wykładu 18
Dobranoc !