Przejdź do treści
coden

Systemy neuro-rozmyte (ANFIS): reguły rozmyte, które uczą się z danych

System rozmyty Sugeno jako pięciowarstwowa sieć, uczenie hybrydowe metodą najmniejszych kwadratów i gradientem, uczenie funkcji z zaszumionych danych, dobór liczby reguł i przeuczenie, czytelność nauczonych reguł i związek z sieciami RBF.

13 minut Matěj Žalmánek 2026-10-15

Seria Podstawy AI Część 37 z 52
  1. Mapa sztucznej inteligencji: co jest czym i jak to do siebie pasuje
  2. Krótka historia sztucznej inteligencji: od Turinga do modeli językowych
  3. Dane, model, trening, inferencja: podstawowe pojęcia na jednym przykładzie
  4. Jak czytać zapis matematyczny: symbole, indeksy, sumy i kwantyfikatory
  5. Zbiory i relacje: klocki, z których składają się definicje w AI
  6. Funkcje i odwzorowania: dlaczego każdy model AI jest funkcją
  7. Logika i dowody: reguły, według których rozumuje AI
  8. Grafy i drzewa: struktura, na której opierają się przeszukiwanie i sieci neuronowe
  9. Algebra liniowa dla uczenia maszynowego: wektory, macierze i dlaczego AI głównie mnoży
  10. Pochodne, gradient i reguła łańcuchowa: jak model ustala, w którą stronę się uczyć
  11. Spadek gradientu: jak uczy się model
  12. Czym jest prawdopodobieństwo: od rzutu kostką do aksjomatów Kołmogorowa
  13. Prawdopodobieństwo warunkowe i twierdzenie Bayesa: jak zmienić ocenę, gdy dowiesz się czegoś nowego
  14. Zmienna losowa i dystrybuanta: jedna funkcja, która mówi o rozkładzie wszystko
  15. Funkcja gęstości i funkcja prawdopodobieństwa: dlaczego zmienna ciągła ma w punkcie prawdopodobieństwo zero
  16. Wartość oczekiwana, wariancja i kowariancja: gdzie leży rozkład, jak jest szeroki i co z czym się wiąże
  17. Przegląd rozkładów prawdopodobieństwa: Bernoulliego, dwumianowy, Poissona, jednostajny, normalny i wykładniczy
  18. Prawo wielkich liczb i centralne twierdzenie graniczne: dlaczego średnie zachowują się tak przewidywalnie
  19. Statystyka i estymacja parametrów: największa wiarygodność, MAP i przedziały ufności
  20. Teoria informacji: entropia, entropia krzyżowa i dywergencja KL — skąd się biorą funkcje straty
  21. Przeszukiwanie przestrzeni stanów: BFS, DFS, UCS i A* z animacjami
  22. Gry i przeciwnik: minimax, przycinanie alfa-beta i Monte Carlo tree search
  23. Spełnianie ograniczeń: backtracking, propagacja ograniczeń i AC-3 na sudoku i mapie czeskich krajów
  24. Logika i systemy z bazą wiedzy: wnioskowanie w przód i wstecz, rezolucja i systemy ekspertowe
  25. Planowanie: STRIPS, świat klocków, heurystyki z relaksacji i planowanie w agentach AI
  26. Przeszukiwanie lokalne i symulowane wyżarzanie: komiwojażer przez czeskie miasta wojewódzkie
  27. Algorytmy genetyczne: populacja, krzyżowanie, mutacja i selekcja na plecaku na wycieczkę
  28. Strategie ewolucyjne i programowanie genetyczne: od reguły jednej piątej do prawa Keplera
  29. Optymalizacja kolonią mrówek: jak ślad feromonowy znajduje krótką drogę
  30. Optymalizacja rojem cząstek: bezwładność, własne doświadczenie i doświadczenie roju
  31. Neuroewolucja: ewolucja wag i kształtu sieci neuronowych oraz algorytm NEAT
  32. Zbiory rozmyte i funkcje przynależności: jak zapisać „trochę ciepło”
  33. Logika rozmyta a prawdopodobieństwo: dlaczego „trochę ciepło” nie znaczy „prawdopodobnie ciepło”
  34. Logika rozmyta: t-normy, implikacje i reguły JEŻELI–TO
  35. Sterowanie rozmyte: Mamdani i Sugeno od wentylatora po wahadło na wózku
  36. Klasteryzacja rozmyta: algorytm fuzzy c-means i punkty między skupieniami
  37. Systemy neuro-rozmyte (ANFIS): reguły rozmyte, które uczą się z danych
  38. Łańcuchy Markowa: macierz przejścia, rozkład stacjonarny i PageRank
  39. Ukryte modele Markowa: algorytm Viterbiego i nieuczciwe kasyno
  40. Sieci bayesowskie: dlaczego trawa jest mokra i co z tego wynika dla zraszacza
  41. Filtr Kalmana: jak z niedokładnych pomiarów oszacować, gdzie jest samochód i jak szybko jedzie
  42. Rodzaje uczenia maszynowego: nadzorowane, nienadzorowane, półnadzorowane i inne
  43. Prompty, kontekst i RAG: jak dać modelowi właściwe informacje
  44. Wariacyjne autoenkodery (VAE): nowe obrazki z ciągłej przestrzeni latentnej
  45. Generatywne sieci przeciwstawne (GAN): fałszerz kontra detektyw
  46. Modele dyfuzyjne: jak z czystego szumu powstaje obraz
  47. Procesy decyzyjne Markowa: stany, akcje, nagrody i równania Bellmana
  48. Q-learning i DQN: uczenie się wartości akcji od tabeli po sieć neuronową
  49. Policy gradient i PPO: uczenie się bezpośrednio polityki
  50. Jak działa agent AI: model językowy w pętli z narzędziami
  51. Programowanie z agentami AI: zadanie, testy i kontrola
  52. Ocena i bezpieczeństwo systemów AI: jak mierzyć i jak pilnować

Pełny program serii Gotowe: 52 z 83 tematów

Czego się dowiesz
  • Jak zapisać system rozmyty Sugeno jako sieć i które jego parametry się uczą.
  • Dlaczego uczenie hybrydowe (najmniejsze kwadraty plus gradient) wyprzedza czysty spadek gradientu.
  • Dlaczego dokładanie reguł grozi przeuczeniem i co zostaje z czytelności nauczonych reguł.

Warto wiedzieć wcześniej: Sterowanie rozmyte: Mamdani i Sugeno od wentylatora po wahadło na wózku, Spadek gradientu: jak uczy się model

Regulatory rozmyte z poprzednich części miały jedną słabość: reguły i funkcje przynależności ktoś musiał wymyślić. Gdy doświadczony operator istnieje, to zaleta. Gdy nie — albo gdy system ma odwzorować zmierzone dane — to problem. Sieci neuronowe mają odwrotną naturę: nauczą się czegokolwiek z danych, ale tego, czego się nauczyły, nikt nie odczyta. W 1993 roku Jyh-Shing Roger Jang połączył jedno z drugim w systemie ANFIS (Adaptive Neuro-Fuzzy Inference System): system rozmyty Sugeno zapisany jako sieć, której parametry uczą się z danych. Tą częścią kończy się moduł o logice rozmytej.

Nawiązuje do części Sterowanie rozmyte: Mamdani i Sugeno i Spadek gradientu.

1. System rozmyty jako sieć

Weźmy system Sugeno pierwszego rzędu z jednym wejściem i czterema regułami „JEŻELI x jest Ai, TO y = pix + ri”. Każdy krok jego obliczeń jest warstwą sieci:

x A1 w N f1 A2 w N f2 A3 w N f3 A4 w N f4 ∑ y 1. przynależność μ_A(x) c, σ 2. siła w_i — 3. normalizacja w_i / ∑ w — 4. następnik w̄ (p x + r) p, r 5. suma ∑ —
ANFIS z jednym wejściem i czterema regułami; na pomarańczowo warstwy z uczonymi parametrami
Definicja — ANFIS (Jang, 1993)
  1. Przynależność: μi(x) = exp(−(x − ci)2 / 2σi2) — funkcja gaussowska o środku ci i szerokości σi.
  2. Siła reguły: wi = iloczyn przynależności przesłanki (przy jednym wejściu tylko μi(x)).
  3. Normalizacja: w̄i = wi / ∑j wj.
  4. Następnik: w̄i · (pix + ri).
  5. Suma: y = ∑i w̄i (pix + ri).

Parametry przesłanek to ci, σi; parametry następników to pi, ri.

Mówiąc prościej

To dokładnie regulator Sugeno z poprzedniej części, tylko narysowany jako sieć. Każda reguła ma „obszar działania” (gaussowski pagórek) i w nim liniową prognozę. Wyjście jest średnią ważoną prognoz według tego, jak bardzo wejście leży w obszarze której reguły. Cały system jest różniczkowalny, więc można go uczyć tak samo jak sieć neuronową.

y = ∑i wi / ∑j wj · (pix + ri)

y
wyjście całego systemu dla wejścia x — to, co porównujemy z danymi i czym mierzy się błąd
∑i
suma po wszystkich regułach — każda coś wnosi, żadna nie jest „wybierana”; dlatego wyjście jest gładkie i da się je różniczkować
wi / ∑j wj
znormalizowana siła w̄i — dzielenie przez sumę sprawia, że wagi sumują się do 1, więc wyjście jest ważoną średnią następników i nie zależy od tego, jak wysokie są pagórki
pix + ri
liniowy następnik reguły — lokalna prosta, która opisuje funkcję w obszarze reguły; prosta zamiast stałej pozwala przy niewielu regułach śledzić także nachylenie
Wyjście jest średnią lokalnych prostych, ważoną tym, jak bardzo wejście należy do obszaru której reguły.

μi(x) = exp( − (x − ci)2 / 2σi2 )

μi(x)
stopień przynależności z [0, 1] — jak bardzo x jest „około ci”; eksponenta liczby ujemnej leży zawsze między 0 a 1, a w środku wynosi dokładnie 1
(x − ci)2
kwadrat odległości od środka — przynależność maleje w obie strony jednakowo i jest gładka także w środku (z wartością bezwzględną miałaby tam ostrze i pochodna by nie istniała)
2σi2
szerokość pagórka — odległość mierzy się w jednostkach σi, więc w odległości σi od środka przynależność wynosi zawsze e−1/2 ≈ 0,61; uczenie σi zmienia to, jak daleko reguła „sięga”
Przykład — przejście w przód w punkcie x = 3

Weźmy system po zerowej epoce uczenia (zob. niżej): środki c = 0, 2, 4, 6, wszystkie szerokości σ = 1 i następniki z najmniejszych kwadratów. Dla x = 3 odległości od środków wynoszą 3, 1, 1, 3, a zatem

  1. przynależność i siła: w = (e−4,5; e−0,5; e−0,5; e−4,5) = (0,0111; 0,6065; 0,6065; 0,0111);
  2. normalizacja: suma wynosi 1,2353, więc w̄ = (0,0090; 0,4910; 0,4910; 0,0090);
  3. następniki: proste pix + ri z nauczonymi współczynnikami (9,54x + 0,01; 9,34x − 17,38; 8,56x − 36,61; 2,60x − 18,90) mają w punkcie 3 wartości (28,63; 10,66; −10,94; −11,09) — współczynniki są zaokrąglone, wartości policzone z dokładnych;
  4. suma: y = 0,2574 + 5,2329 − 5,3698 − 0,0997 ≈ 0,021.

Prawdziwa wartość to sin(3) = sin(32/3) ≈ 0,141. Zauważ, że wyjście powstaje przez odjęcie dwóch dużych, prawie równych wkładów — wrócimy do tego przy czytelności.

2. Uczenie hybrydowe

Chcemy zminimalizować błąd średniokwadratowy na danych treningowych. Dałoby się to zrobić w całości spadkiem gradientu. Jang zauważył jednak, że wyjście jest w parametrach następników liniowe.

Definicja — błąd średniokwadratowy i RMSE

Dla danych (x1, y1), …, (xN, yN) i wyjścia modelu ŷ(x) błąd średniokwadratowy to E = (1/N) ∑k (ŷ(xk) − yk)2, a RMSE (root mean square error) to jego pierwiastek √E. Minimalizowanie jednego lub drugiego to to samo; RMSE podaje się jednak dlatego, że ma jednostki wyjścia. Wszystkie błędy w tej części to RMSE.

RMSE = √( (1/N) ∑k (ŷ(xk) − yk)2 )

ŷ(xk)
prognoza systemu w k-tym punkcie — jedyne miejsce, którym do błędu wchodzą parametry c, σ, p, r
− yk, potem do kwadratu
odchylenie od zmierzonej wartości, podniesione do kwadratu — znak nie gra roli, duże błędy ważą więcej niż małe, a kwadrat da się gładko różniczkować (a dla następników pozwala na dokładne rozwiązanie metodą najmniejszych kwadratów)
(1/N) ∑k
średnia po punktach — błąd na 40 punktach treningowych i na 121 testowych jest wtedy porównywalny
Pierwiastek na końcu przywraca błędowi jednostki y: RMSE 0,1 znaczy „zwykle o 0,1 obok”.
Algorytm — uczenie hybrydowe

Przy ustalonych przesłankach y(x) = ∑i (w̄ix) pi + w̄i ri jest liniową funkcją parametrów następników. W każdej epoce zatem:

  1. w przód: policz w̄i dla wszystkich danych i znajdź parametry następników dokładnie metodą najmniejszych kwadratów;
  2. wstecz: z tak znalezionymi następnikami wykonaj krok spadku gradientu dla środków ci i szerokości σi.
Mówiąc prościej

Tam, gdzie zadanie da się rozwiązać dokładnie, rozwiąż je dokładnie; gradient zostaw tylko dla tego, czego dokładnie rozwiązać się nie da. Regresja liniowa z części o statystyce znajduje najlepszą prostą jednym obliczeniem — a tutaj znajduje naraz najlepsze liniowe następniki wszystkich reguł. Gradient potem już tylko przesuwa i poszerza pagórki funkcji przynależności.

Definicja — najmniejsze kwadraty dla następników

Przy ustalonych ci, σi wartości w̄i(xk) są zwykłymi liczbami. Ułóżmy parametry następników w wektor θ = (p1, r1, …, pn, rn) i dla każdego punktu zbudujmy wiersz

ak = (w̄1xk, w̄1, …, w̄nxk, w̄n), tak że ŷ(xk) = ak · θ.

Wiersze tworzą macierz A (N × 2n), a błąd to ‖Aθ − y‖2/N. Jego minimum spełnia równania normalne ATA θ = ATy — układ 2n równań liniowych. Dla 4 reguł i 40 punktów A jest macierzą 40 × 8, a układ ma 8 równań. Nasze obliczenie dodaje do przekątnej ATA jeszcze 10−6 (mały człon grzbietowy), aby układ był rozwiązywalny także przy prawie zależnych kolumnach, i rozwiązuje go eliminacją Gaussa.

Twierdzenie — gradient względem środka i szerokości

Oznaczmy gi = pix + ri i W = ∑j wj. Z ŷ = ∑j wjgj / W wynika z pochodnej ilorazu ∂ŷ/∂wi = (gi − ŷ)/W. Pochodne gaussowskiego pagórka to ∂wi/∂ci = wi(x − ci)/σi2 i ∂wi/∂σi = wi(x − ci)2/σi3. Z reguły łańcuchowej

∂E/∂ci = (2/N) ∑k (ŷ − yk) (gi − ŷ) w̄i (xk − ci)/σi2,

∂E/∂σi = (2/N) ∑k (ŷ − yk) (gi − ŷ) w̄i (xk − ci)2/σi3,

gdzie ŷ, gi i w̄i bierze się w punkcie xk.

∂E/∂ci = (2/N) ∑k (ŷ − yk) (gi − ŷ) w̄i (xk − ci)/σi2

∂E/∂ci
jak zmieni się błąd, gdy przesuniemy środek i-tego pagórka — krok uczenia idzie przeciw temu znakowi
ŷ − yk
błąd w punkcie — tam, gdzie system trafia, punkt niczego nie chce i do gradientu nic nie wnosi
gi − ŷ
czym następnik reguły różni się od całkowitego wyjścia — dodanie regule wagi ciągnie wyjście ku jej następnikowi; gdy następnik mówi to samo co całość, przesuwanie pagórka nie ma sensu
w̄i
udział reguły w wyjściu — punkty daleko od pagórka, gdzie reguła prawie nie ma głosu, prawie nie wpływają na jej środek
(xk − ci)/σi2
kierunek przesunięcia — punkt na prawo od środka ciągnie pagórek w prawo, na lewo w lewo; w samym środku pagórek jest płaski i przesunięcie niczego nie zmienia
Dla szerokości wzór jest taki sam, tylko ostatni człon to (xk − ci)2/σi3: odległe punkty chcą pagórek poszerzyć albo zwęzić, kierunek nie ma znaczenia.

Całe uczenie z przykładu poniżej w pseudokodzie (krok η = 0,1, 300 epok):

c = środki równomiernie na [0, 6]    # dla 4 reguł 0, 2, 4, 6
σ = połowa odstępu środków           # dla 4 reguł 1
for epocha in 0 … 300:
    # w przód: warstwy 1–3, potem następniki dokładnie najmniejszymi kwadratami
    wn[k][i] = w̄_i(x_k)  dla wszystkich punktów k i reguł i
    A = wiersze (wn[k][1]·x_k, wn[k][1], …, wn[k][n]·x_k, wn[k][n])
    p, r = rozwiąż (AᵀA + 10⁻⁶·I)·θ = Aᵀy
    if epocha == 300: break
    # wstecz: krok gradientu według wzorów powyżej
    gc, gσ = ∂E/∂c, ∂E/∂σ
    c = c − η·gc
    σ = max(0,05; σ − η·gσ)  # pagórek nie może zniknąć

3. ANFIS uczy się funkcji

Zadanie: z 40 zaszumionych próbek (szum o odchyleniu standardowym 0,1) nauczyć się funkcji y = sin(x2/3) na przedziale [0, 6]. Funkcja w prawo faluje coraz szybciej, więc cztery reguły rozmieszczone równomiernie nie są idealne. Błąd mierzymy także na 121 punktach bez szumu spoza danych treningowych:

−101 01 0123456 epoka 0 · błąd na teście 0,394 epoka 25 · błąd na teście 0,367 epoka 100 · błąd na teście 0,202 epoka 300 · błąd na teście 0,173 wejście x (bez jednostki) wyjście y (bez jednostki) przynależność μ (0–1)
Uczenie ANFIS z czterema regułami: u góry wyjście, na dole funkcje przynależności

Już w zerowej epoce — tylko z najmniejszymi kwadratami dla następników i równomiernymi pagórkami — błąd na teście wynosi 0,394, a na danych treningowych 0,198. Potem zaczynają się uczyć przesłanki. Po 100 epokach błąd na teście wynosi 0,202, a po 300 epokach 0,173. Na danych treningowych spada do 0,107 — poniżej poziomu szumu w danych (0,114); rozsądnie lepiej się nie da. Środki pagórków przesunęły się przy tym tylko nieznacznie; główna zmiana dotyczy szerokości — ostatnia reguła po prawej, gdzie funkcja faluje najszybciej, zwęziła się z 1 do 0,64.

Definicja — poziom szumu w danych

Punkty treningowe to yk = f(xk) + εk, gdzie f(x) = sin(x2/3), a εk to niezależne losowe odchylenia z rozkładu normalnego o odchyleniu standardowym 0,1. Poziom szumu to RMSE, jakie na danych treningowych miałaby sama prawdziwa funkcja: √((1/40) ∑k εk2) = 0,114. Jest nieco większy niż 0,1 tylko przypadkiem — w naszych 40 wylosowanych odchyleniach.

Model, który na danych treningowych ma błąd mniejszy niż poziom szumu (0,107 < 0,114), zaczyna już kopiować także losowe odchylenia. Przy tak małej różnicy to jeszcze nie szkodzi — błąd na teście dalej spada — ale to pierwsze ostrzeżenie, do którego wrócimy przy liczbie reguł.

00,20,40,6 0100200300 epoka (liczba przejść przez dane) błąd na teście (RMSE)
Błąd na teście: uczenie hybrydowe kontra czysty gradient hybrydowe tylko gradient przerywaną linią szum w danych

Czysty spadek gradientu dla wszystkich parametrów zaczyna od zerowych następników i uczy się znacznie wolniej: po 300 epokach ma błąd na teście 0,387 i nawet po 3 000 epokach (0,188) nie dogania uczenia hybrydowego po 300. Większy krok uczenia w dodatku szybko prowadzi do rozbieżności. Podzielenie zadania na część liniową i nieliniową się opłaca.

4. Ile reguł?

Liczba reguł2346812
Błąd na danych treningowych0,5100,1810,1070,0980,0890,085
Błąd na teście0,5900,1770,1730,1720,5660,319

Wraz z przybywaniem reguł błąd na danych treningowych ciągle spada. Na teście jednak od ośmiu reguł gwałtownie rośnie — system zaczął uczyć się szumu: przy 40 punktach i 32 parametrach (8 reguł × 4) ma dość swobody, by między punktami treningowymi dziko oscylować. To jest przeuczenie, to samo zjawisko co przy zbyt wygiętej regresji wielomianowej. Rozsądna liczba reguł leży tutaj między trzema a sześcioma.

Przykład — ile parametrów ma ANFIS

Przy jednym wejściu każda reguła ma dwa parametry przesłanki (ci, σi) i dwa parametry następnika (pi, ri), razem 4n. Na 40 punktów treningowych:

  • 4 reguły: 16 parametrów, z czego 8 liniowych — na każdy parametr liniowy przypada 5 punktów;
  • 8 reguł: 32 parametry, z czego 16 liniowych — 2,5 punktu na parametr liniowy, więc najmniejsze kwadraty mają dość swobody, by dopasować się także do szumu;
  • 12 reguł: 48 parametrów — więcej, niż jest punktów. Najmniejsze kwadraty wyznaczają wprawdzie „tylko” 24 następniki z 40 równań, ale kolejne 24 parametry przesłanek mogą przesunąć i zwęzić pagórki dokładnie tam, gdzie szum akurat odskoczył.

Przydatna reguła kciuka: punktów powinno być co najmniej kilka razy więcej niż parametrów, które się z nich szacuje.

5. Co da się odczytać

Obietnicą systemów neuro-rozmytych jest to, że nauczony model pozostanie czytelny. Przesłanki są czytelne: cztery reguły „około 0”, „około 2,2”, „około 4” i „około 6,2”. Następniki jednak nie. Reguła „JEŻELI x jest około 2,2, TO y = 10,06 x − 13,83” przewidywałaby w swoim środku 8,25, podczas gdy prawdziwa wartość to 1,0. Poszczególne reguły nawzajem się równoważą — pagórki mocno się nakładają, a wyjście ma sens dopiero jako całość.

Przykład — jak reguły się równoważą w punkcie x = 2,195

Nauczony środek drugiej reguły to c2 = 2,195. Tam druga reguła ma pełną przynależność (w2 = 1), ale sąsiednie nie zerową: w = (0,140; 1; 0,331; 0,000), suma 1,471, więc

Reguła1234
waga w̄i0,0950,6800,2250,000
następnik gi12,648,25−25,64−31,68
wkład w̄igi1,2035,609−5,7690,000

Suma wynosi y = 1,203 + 5,609 − 5,769 = 1,043, prawdziwa wartość sin(2,1952/3) = 0,999. Wyjście jest dobre, ale powstaje jako różnica dwóch wkładów około ±5,7: druga reguła „przestrzeliwuje” w górę, a trzecia ściąga ją w dół. Żadna z reguł sama w sobie nie mówi, ile wynosi y.

Interpretowalność nie jest więc za darmo. Utrzymać ją pomagają ograniczenia: mniejsze nakładanie się funkcji przynależności, regularyzacja następników albo Sugeno zerowego rzędu ze stałymi następnikami. Płaci się za to dokładnością. To ta sama równowaga co wszędzie w uczeniu maszynowym — między tym, co model potrafi, a tym, co potrafimy o nim powiedzieć.

6. ANFIS a sieci neuronowe

  • Pokrewieństwo z sieciami RBF. Jang i Sun w 1993 roku pokazali, że sieci z radialnymi funkcjami bazowymi i systemy rozmyte Sugeno zerowego rzędu są przy łagodnych warunkach tym samym, tylko inaczej interpretowanym.
  • Przekleństwo wymiarowości. Przy n wejściach i k termach na wejście siatka reguł ma kn reguł — dla 10 wejść i 3 termów ponad 59 tysięcy. Dlatego ANFIS stosuje się przy niewielu wejściach albo z regułami wybranymi przez klasteryzację (na przykład fuzzy c-means z poprzedniej części).
  • Zastosowania. Prognozy szeregów czasowych (klasycznym testem jest chaotyczny szereg Mackeya–Glassa), modelowanie i sterowanie układami, dla których mamy zmierzone dane, ale mało teorii.
  • Dziś. Głębokie sieci dawno przejęły zadania z wieloma wejściami. Idea „uczalne, ale czytelne” żyje jednak dalej w wyjaśnialnej AI — a warstwy rozmyte czasem dodaje się także do głębokich sieci tam, gdzie wyjście trzeba wyjaśnić regułami.
Definicja — sieć z radialnymi funkcjami bazowymi (RBF)

Znormalizowana sieć RBF z n neuronami ukrytymi oblicza

y(x) = ∑i vi φ(‖x − ci‖) / ∑j φ(‖x − cj‖),

gdzie φ jest malejącą funkcją odległości od środka ci (zwykle gaussowską), a vi to wagi wyjściowe. System Sugeno zerowego rzędu z gaussowskimi przynależnościami i iloczynem jako „i zarazem” to y = ∑i w̄i ri — po podstawieniu wi = φ(‖x − ci‖) i vi = ri dokładnie ten sam wzór. W uproszczeniu: reguła = neuron, funkcja przynależności = funkcja bazowa, następnik = waga wyjściowa. (Jang i Sun, 1993, wymieniają warunki dokładnie: ta sama liczba reguł i neuronów, stałe następniki, gaussowskie przynależności, w obrębie jednej reguły o tej samej szerokości, iloczyn jako „i zarazem” i ten sam sposób składania wyjścia — średnia ważona albo suma ważona.)

Przykład — przekleństwo wymiarowości w liczbach

Przy n wejściach i k termach na każde wejście pełna siatka ma kn reguł. Następnik Sugeno pierwszego rzędu y = p1x1 + … + pnxn + r ma n + 1 parametrów, więc parametrów liniowych jest kn(n + 1). Parametrów przesłanek jest tylko 2kn — każde wejście ma swoich k pagórków, wspólnych dla wszystkich reguł.

Dla n = 10 i k = 3: 310 = 59 049 reguł, 59 049 · 11 = 649 539 parametrów następników i 2 · 3 · 10 = 60 parametrów przesłanek. Najmniejsze kwadraty rozwiązywałyby układ z 649 539 niewiadomymi — a danych potrzeba by jeszcze znacznie więcej.

7. Podsumowanie

  • ANFIS to system rozmyty Sugeno zapisany jako pięciowarstwowa sieć: przynależność, siła, normalizacja, następnik, suma.
  • Uczenie hybrydowe znajduje liniowe następniki dokładnie najmniejszymi kwadratami, a środki i szerokości funkcji przynależności dostraja gradientem.
  • Na funkcji sin(x2/3) uczenie przesłanek obniżyło błąd na teście z 0,394 do 0,173; czysty gradient potrzebował dziesięć razy więcej epok, by osiągnąć gorszy wynik.
  • Zbyt wiele reguł prowadzi do przeuczenia — od ośmiu reguł błąd na teście gwałtownie rośnie.
  • Przesłanki pozostają czytelne, ale następniki nawzajem się równoważą; interpretowalności trzeba pilnować.

Tą częścią kończy się moduł o logice rozmytej: od słowa „ciepło” przez logikę i regulatory aż po system, który sam uczy się reguł. Chcesz to wypróbować na własnej skórze? Poproś agenta AI, żeby nauczył ANFIS zużycia energii elektrycznej w zależności od temperatury na publicznych danych — a potem sprawdź, które reguły mają sens.

Masz inne zdanie? Napisz na support@coden-app.com.

Agent na twoim komputerze, sterowany z telefonu