Systemy ekspertowe Wykład 8 1
SYSTEMY HYBRYDOWE 2
Definicja (przykładowa) Przez (inteligentny) system hybrydowy rozumiemy system ze sztuczną inteligencją zdolny do rozwiązywania złożonych problemów, który wykorzystuje w tym celu różne techniki informatyczne w zakresie reprezentowania i przetwarzania informacji, 3
Klasy systemów hybrydowych systemy ekspertowe z różnymi sposobami reprezentacji wiedzy, systemy ze sztuczną inteligencją wykorzystujące konwencjonalne metody i techniki informatyczne, systemy wykorzystujące dla rozwiązania problemu różne metody i techniki sztucznej inteligencji, kombinacje poprzednich przypadków. 4
Geneza Każda z technik przetwarzania informacji ma swoje silne i słabe strony. W konsekwencji tego faktu, pewne złożone problemy mogą być trudne do rozwiązania z wykorzystaniem jednej tylko techniki, co bezpośrednio prowadzi do rozwiązań hybrydowych. Można wymienić następujące czynniki motywujące do rozwiązań hybrydowych: wzmocnienie słabych stron danej techniki przez zastosowanie innej techniki, wielość zadań wypełnianych przez aplikację wymaga zastosowania różnych technik, potrzeba emulacji różnych technik w ramach jednej architektury 5
Wymienione czynniki są podstawą do następującej klasyfikacji systemów hybrydowych: 1.systemy hybrydowe z zastąpieniem funkcji (ang. function-replacing hybrids), 2.systemy hybrydowe z komunikującymi się komponentami (ang. intercommunicating hybrids), 3.polimorficzne systemy hybrydowe. 6
Systemy hybrydowe z zastąpieniem funkcji Systemy, w których jedna z podstawowych funkcji jest zastąpiona przez inną technikę z zakresu sztucznej inteligencji. Zastępowana funkcja jest tu na ogół tą, która stanowi słabość całej techniki. W przypadku sieci neuronowych rozumianych jako technika przetwarzania informacji i rozwiązywania problemów, przykładem może być zmiana wag systemu. 7
Systemy hybrydowe z komunikującymi się komponentami Stosują one różne techniki sztucznej inteligencji w celu rozwiązania określonych podproblemów bardziej złożonego problemu. Odpowiednie komponenty systemu, odpowiedzialne za rozwiązanie podproblemów, komunikują się ze sobą, wymieniając informacje i realizując wyodrębnione funkcje. 8
Polimorficzne systemy hybrydowe Jedna technika przetwarzania używana jest na różne sposoby ( polimorficznie zmieniając kształt) umożliwiając osiągnięcie funkcjonalności różnych technik sztucznej inteligencji. Motywacją do rozwoju tej klasy systemów hybrydowych może być konieczność osiągnięcia wielofunkcjonalności w ramach jednej techniki, np. z braku możliwości zastosowania innych, jawnie wyodrębnionych technik. 9
Modele integracji systemów wg. Medskera) Integracja łączenie, komunikacja hybrydowych (wg 1. Osobne aplikacje (ang. stand-alone), 2. Modele transformacyjne, 3. Modele o słabej integracji, 4. Modele o silnej integracji, 5. Modele w pełni zintegrowane. 10
1 model integracji: osobne aplikacje (1/3) Elementy systemu hybrydowego stanowią niezależne komponenty. Istotną cechą tego wariantu jest brak komunikacji pomiędzy składowymi w procesie rozwiązywania problemu. Wariant ten stanowi w pewnym sensie antytezę systemu hybrydowego, ale w praktyce występuje dość często. Cele stosowania: porównanie zdolności do rozwiązywania problemów przez obie aplikacje, implementacja jednej techniki po zbudowaniu aplikacji opartej o inną, pozwala na walidację tej pierwszej, wykorzystanie dwóch modeli równolegle umożliwia wstępną ocenę integracji. 11
1 model integracji: osobne aplikacje (2/3) Przykładem może być zastosowanie tego modelu w dziedzinie wspomagania decyzji kredytowych, gdzie ten sam problem jest jednocześnie rozwiązywany zarówno przez dwie różne techniki (np. system ekspertowy oraz sieć neuronową). Zgodność rozwiązań generowanych przez obydwa systemy wzmacnia zaufanie do konkluzji. Brak zgodności rozwiązań wiąże się z koniecznością wyboru jednego z proponowanych przez te systemy rozwiązań. Wystąpienie takiej sytuacji może być podstawą do weryfikacji bazy wiedzy systemu ekspertowego, ewentualnego douczenia sieci neuronowej i podobnych modyfikacji systemów. Sytuacja taka jest analogiczna do sytuacji braku zgodności pomiędzy propozycją decyzji kredytowej systemu ekspertowego pracującego w banku a przekonaniem urzędnika kredytowego na ten temat. 12
1 model integracji: osobne aplikacje (3/3) Zalety tego modelu: prostota i łatwość implementacji, wynikająca z braku interfejsu do wymiany informacji pomiędzy poszczególnymi komponentami. możliwość połączenia zalet obu technologii takich jak np. : dostępność do wyjaśnień konkluzji oraz jawność wiedzy w systemach ekspertowych oraz zdolność do uogólnień i przybliżeń sieci neuronowych, itp. Wady: uniemożliwia on pełne wykorzystanie wszystkich walorów tkwiących w obu systemach. podwojeniu ulegają koszty utrzymywania aplikacji opartej o ten model. rozwiązania tego typu nie mieszczą się w głównym nurcie zainteresowań systemami hybrydowymi (nie jest to system hybrydowy sensu stricto). 13
Model 2 - Transformacyjny W modelu transformacyjnym zakłada się budowę aplikacji w oparciu o jedną technikę np. sieć neuronową, a następnie - w trakcie rozwoju aplikacji - zastąpienie tej techniki inną, np. przez system ekspertowy. Brak współpracy (integracji) pomiędzy obydwoma systemami. Wyraźną słabością tego podejścia jest brak możliwości automatyzacji przekształceń aplikacji, co gorsza - brak wyraźnych wskazówek co do tego jak ten proces realizować. 14
3. Modele o słabej integracji (1/2) Modele o słabej integracji są pierwszą klasą rozwiązań zasługujących na miano systemów hybrydowych. Zakłada się tu bowiem częściową współpracę obu komponentów systemu hybrydowego. Wymiana informacji pomiędzy poszczególnymi komponentami odbywa się przez pliki. Komponent 1 pliki Komponent 2 15
3. Modele o słabej integracji (2/2) Wyróżniono kilka wariantów tego modelu: preprocesory, koprocesory, postprocesory. Zalety: łatwy do zaimplementowania możliwość zbudowania aplikacji z użyciem komponentów będących w szczególności systemami różnych producentów. Wady: natura wymiany informacji przez pliki ogranicza zakres możliwych zastosowań, wydłużony czas przekazywania informacji, brak wzajemnego dostępu do informacji przechowywanych przez poszczególne komponenty, może wystąpić redundancja (powtarzanie się) gromadzonych informacji. 16
4. Silnie zintegrowane systemy hybrydowe Wymieniają dane bezpośrednio za pomocą wspólnych struktur danych przechowywanych w pamięci. Zalety: szybka wymiana informacji dostęp do informacji przechowywanych przez poszczególne komponenty Wady: większa trudność implementacji stworzenie wspólnego sterowania (np. architektura tablicowa) 17
5. Model w pełni zintegrowany Komponenty dzielą zarówno struktury danych jak i reprezentację wiedzy. Komunikacja jest osiągana dzięki dualnej naturze (np. symbolicznej i neuronowej) tych struktur. Zalety: Jedność danych i reprezentacji Wady: Operowanie na tych samych strukturach danych i reprezentacji wiedzy może się wiązać z koniecznością adaptacji komponentów (kompromisy) Wysoka złożoność i w konsekwencji koszty utrzymywania. 18
Aplikacje hybrydowe typu System Ekspertowy + Sieć Neuronowa Uzasadnieniem dla budowy tego typu systemów na gruncie sztucznej inteligencji mogą być następujące przesłanki: nie zawsze możliwe jest pozyskanie reguł heurystycznych dla baz wiedzy systemu ekspertowego, istnieją natomiast dane mogące służyć do budowy sieci neuronowej; nie zawsze istnieje odpowiedni zbiór danych mogący być podstawą do uczenia sieci neuronowej, istnieje natomiast możliwość zbudowania bazy wiedzy (np. gdy dysponujemy jawnym modelem); rozwiązywany problem ma naturę złożoną, a do rozwiązania każdego z podproblemów bardziej efektywna lub korzystna wydaje się inna technologia przetwarzania wiedzy; w przypadku gdy różne metody mogą być użyte do rozwiązania tego samego problemu, niektóre cechy jednej z nich odgrywają decydującą rolę (np. może to być zdolność systemów ekspertowych do wyjaśnień oraz kodyfikacji wiedzy). 19
Struktura aplikacji hybrydowej (SE + SN) w systemie PC Shell [Michalik] Tworzenie aplikacji hybrydowej: 1.Stworzenie za pomocą systemu Neuronix aplikacji neuronowych (SN 1,, SN m ), dla wybranych podproblemów. 2.Opracowanie baz wiedzy (w formie źródeł wiedzy) SE 1,,SE n. 3.Integracja opracowanych w poprzednich etapach źródeł wiedzy na poziomie języka reprezentacji wiedzy systemu PC-Shell. 20
21
NEURONOWE SYSTEMY EKSPERTOWE 22
Geneza Explanation-based learning (uczenie się na podstawie wyjaśnień) i empirical learning (uczenie się na podstawie przykładów) są dwiema, w dużym stopniu uzupełniającymi się metodami machine learning. Oba te podejścia posiadają wady, przez co nie mogą być uniwersalną metodą uczenia się. Jedną ze słabszych stron systemów ekspertowych (przykład explanation-based learning) jest pozyskiwanie wiedzy. Zdolność do wyjaśnień jest jednym z najsilniejszych aspektów systemów ekspertowych. Sieci neuronowe (przykład empirical learning) natomiast gromadzą wiedzę z dostępnych przykładów. Z kolei najsłabszą częścią sieci neuronowych jest brak zdolności do objaśniania. Naukowcy spróbowali więc połączyć oba rodzaje systemów, tworząc hybrydowy neuronowy system ekspertowy, który zdolny jest rozwiązać oba powyższe problemy - uczyć się na podstawie przykładów i dawać objaśnienia. Stąd, system skutecznie łączący oba podejścia do uczenia się może być efektywniejszy niż którekolwiek podejście z osobna. 23
KBANN (Knowledge-Based Artificial Neural Networks) 24
Konwersja sieci neuronowej na reguły Konwersja sieci na reguły jest ostatnim etapem algorytmu KBANN. Wytrenowana ANN nie dostarcza wyjaśnień, w jaki sposób zostało otrzymane rozwiązanie. Z wyników uczenia nie są w stanie korzystać ludzie, ani też nie mogą być one wykorzystane w podobnego typu problemach. Rozwiązuje to ekstrakcja symbolicznych reguł z sieci neuronowej. Czyni ona wyuczoną przez siec informację bardziej przystępną dla człowieka. Co więcej, dzięki niej zmodyfikowane reguły mogą być wykorzystane jako część innej wiedzy w pokrewnych problemach. Rozróżniamy dwa podejścia do ekstrakcji reguł z wyuczonej sieci neuronowej: Lokalne podejście polega na dekompozycji wielowarstwowej sieci na zbiór sieci jednowarstwowych, (zmniejsza się koszt obliczeniowy). Sieć wielowarstwowa jest dekomponowana na zbiór prostych perceptronów. Reguły są ekstrahowane dla każdego elementu składowego, a następnie są łączone, aby opisać sieć wielowarstwową. Globalne podejście to ekstrakcja zbioru globalnych reguł, charakteryzującego wyjście bezpośrednio w zależności od zmiennych wejściowych. W przestrzeni przeszukiwania reguł każdy węzeł reprezentuje możliwą przesłankę. 25