Systemy ekspertowe

Dane – losowa grupa prostych faktów i zdarzeń
Informacja – właściwie zagregowane proste fakty w bardziej złożone, kompleksowe fakty
Wiedza – sumaryczny wynik naszych procesów percepcyjnych, tak zorganizowany, aby można było wyciągnąć znaczące wnioski, wiedza = dane + reguły rozsądnego użycia
Mądrość – najczęściej zdefiniowana jako zdrowy rozsądek lub właściwy osąd
Modele w informatyce:
• Semantyczny – wiedza
• Morfologiczny – informacje
• Obliczeniowy – dane
1. Jakość modelu, gęstość inteligencji:
• Dokładność-określa jak dobrze zwrócone przez system wyniki zbliżają się do poprawnej lub najlepszej decyzji.
• Zdolność wyjaśniania-opis procesu osiągania konkluzji, wniosków, decyzji
• Szybkość/wiarygodność czasu reakcji – czas potrzebny do przeprowadzenia przez system pełnej analizy na żądanym poziomie dokładności. Nie uboczną sprawą jest zaufanie, że odpowiedź systemu zostanie na pewno wydana w określonym czasie. Rozminięcie się z wymogami czasowymi może w wielu przypadkach spowodować, że uzyskane wyniki będą bezużyteczne.
2. Wymiary inżynierskie:
• Elastyczność-łatwość modyfikowania relacji między zmiennymi opisującymi, oraz modyfikowania zmiennych i celów systemu
• Skalowalność-możliwość dodania nowych zmiennych do opisu problemu lub zwiększenie zakresu wartości przyjmowanych przez zmienne. Zagwarantowanie tej cechy systemom wspomagania decyzji (DSS) może być bardzo trudnym problemem gdy gwałtownie wzrasta oddziaływanie między zmiennymi i to w sposób nie przewidywalny.
• Zwięzłość-możliwie niewielka objętość kodu wynikowego
• Zdolność umiejscowienia w innych systemach-łatwość sprzężenia systemu z systemami nadrzędnymi lub integracji z infrastrukturą organizacji
• Łatwość użytkowania-stopień łatwości użytkowania systemu przez biznesmenów w codziennej pracy
3. Jakość dostępnych zasobów:
• Tolerancja szumów w danych – stopień odporności systemu, najczęściej w sensie wpływu na dokładność wyników, na szumy w danych elektronicznych
• Tolerancja w danych niepełnych (rzadkich) – stopień odporności systemu na niedokładność danych, lub ich brak.
• Ślad uczenia – wskazuje jak wiele dana organizacja musi przeprowadzić badań i eksperymentów, aby uzyskać doświadczenie niezbędne do stosowania nowej technologii i rozwiązania przy jej pomocy swoich problemów
• Tolerancja złożoności-stopień zależności systemu od oddziaływań między zmiennymi, szczególnie, gdy badany proces jest modelowany przy pomocy wielu odrębnych modułów lub zrębów wiedzy (np. tworzenie długoterminowych prognoz pogody)
4. Ograniczenia logistyczne:
• Niezależność od ekspertów – stopień, do którego system może być zaprojektowany, zbudowany i testowany bez udziału ekspertów ( o ile ekspertyza jest bardzo cenna, to z kolei dostęp do ekspertów wewnątrz jakiejkolwiek organizacji może przerodzić się w logistyczną zmorę)
• Łatwość obliczeniowa – możliwość implementacji systemu bez konieczności zakupu specjalizowanego komputera lub/oraz szczególnie oprogramowania
• Czas opracowania – czas, który organizacja może przeznaczyć na opracowanie, instalację i wdrażanie systemu
Etapy tworzenia hurtowni danych:
• Akwizycja (gromadzenie danych)-może być wspomagane przez takie organizacje jak: Carleton Corp, Electronic Data System Corp, Platinum Technology Inc
• Usprawnianie danych (czyszczenie)
• Tworzenie hurtowni danych
• Hurtownie danych oraz implementacje, Data Mart (małe HD), IBM Corp, Oracle Corp, Sybase Inc
Przetwarzanie danych (zorientowane na interpretację wyników)
• Akwizycja
• Manipulacja: kompresja, eliminacja, ekstrapolacja, interpolacja, redukcja, przeszukiwanie, wygładzanie
• Reprezentacja
• Przechowywanie
Modelowanie-komputerowa (cyfrowa) reprezentacja obiektów
Symulacja-komputerowa (cyfrowa) reprezentacja procesów
Obiekt-domyślny element cechujący się stabilnością cech istotnych dla jego opisu
Proces-domyślny obiekt mający zmienne cechy
Dychotomia modeli:
• Modele analogowe (ciągłe)
• Modele cyfrowe (dyskretne-umożliwiają modelowanie właściwości i zależności jakościowych i/oraz ilościowych.
• Modele abstrakcyjne
• Modele fizyczne
• Modele deterministyczne
• Modele niedeterministyczne
Symulacja zastosowana w rozwiązywaniu problemów wymaga sekwencyjnego zrealizowania następujących kroków:
• Dekompozycja problemu na podproblemy
• Optymalizacja podproblemów
• Kombinacja rozwiązywanych podprocesów
Dychtonomia modeli:
• Algorytm deterministyczny-zawsze gdy algorytm wykonuje jakąś operację jest jedynie jedna następna czynność
• Algorytmy uproszczone:
• Algorytmy rozwiązań przybliżonych (znajdują rozwiązania o których wiadomo że są bliskie rozwiązaniu najlepszemu)
• Algorytmy skuteczności średniego czasu (znajdują rozwiązania w niektórych przypadkach, lecz niekoniecznie muszą zawsze pracować)
Problemy NP-zupełne.
P – zbiór wszystkich problemów, które mogą być rozwiązane przy pomocy deterministycznego algorytmu w czasie wielomianowym
NP-zbiór wszystkich problemów, które mogą być rozwiązane przy pomocy niedeterministycznego algorytmu w czasie wielomianowym
System ekspertowy – jest programem komputerowym, który przetwarza zgromadzoną w nim wiedzę na temat wyspecjalizowanego zagadnienia i rozumuje w celu rozwiązania postawionego problemu, lub podjęcia właściwej decyzji. GPS – General Problem Solver
Systemy interpretacyjne (przewidywanie opisu zjawisk na podstawie interpretacji obserwacji lub sygnałów, np. elucydacja budowy strukturalnej związków chemicznych, objaśnianie elektrokardiogramów)
Systemy predykcyjne – przewidywanie skutków określonych sytuacji lub zjawisk, np. prognozowanie pogody, wartości akcji, trendów zmian kursów walut
Systemy diagnostyczne – wnioskowanie o defektach obiektów na podstawie danych symptometrycznych. Typowe zastosowania dotyczą bardzo rozległego spektrum zadań, np. w medycynie, rolnictwie, mechanice i elektronice
Systemy projektowania – generowanie odpowiedniej konfiguracji obiektów spełniającej zadane wymagania i ograniczenia. Typowe zastosowania obejmują projektowanie układów elektronicznych lub optymalne rozlokowanie maszyn w ograniczonej przestrzeni
Systemy planowania – generowanie sekwencji akcji niezbędnych do osiągnięcia określonego celu. Najczęściej są to systemy planowania ruchów robotników przemysłowych lub planowania drogi.
Systemy monitorowania – badanie zachowania się obiektów w czasie celu zapobiegania anomaliom, które mogą zagrażać niewypełnieniem postawionych zadań. Do typowych obszarów zastosowań należą: kontrola lotów nad lotniskami, monitorowanie stanu kompleksowych obiektów przemysłowych np. rafinerii ropy naftowej, szelfowych wież wiertniczych, elektrowni jądrowych
Systemy usuwające błędy – generowanie porad/akcji zapobiegających defektom obiektów. Typowe zastosowania obejmują kreowanie instrukcji komputerowego wspomagania działań czy pomoc programistom
Systemy naprawcze – generowanie i administrowanie środkami naprawy uszkodzeń obiektów. Typowymi zastosowaniami są awionika i sieci komputerowe
Systemy edukacyjne – diagnozowanie błędów percepcji w nauczaniu studentów i współdziałanie w usuwaniu ich skutków w wybranych dziedzinach studiów
Systemy kontroli i sterowania – zarządzanie zachowaniem się układów/obiektów na podstawie przewidywania wystąpienia określonych sytuacji, planowanie rozwiązań i monitorowanie niezbędnych akcji
Systemy ekspertowe są znamienne tym, że:
• Naśladują sposób rozumowania człowieka podczas rozwiązywania problemów z danej dziedziny wiedzy, odcinając się raczej od symulacji wiedzy jako takiej.
• Prowadzą rozumowanie na prezentacji wiedzy człowieka
• Różnią się od innych programów sztucznej inteligencji: gotowością, szybkością, bezbłędnością działania, zdolności objaśniania linii rozumowania.
Schematy pozyskiwania wiedzy:
• Wywiad – wiedza wąsko-dziedzinowa
• Interakcja (inteligentny program decyzyjny)
• Uczenie na przykładach (ukryte w danych struktury wiedzy)
• Uczenie przez zrozumienie tekstu (program rozumiejący tekst)
Reguły decyzji, drzewo decyzji. Patrząc na regułę decyzji wiemy czego ona dotyczy np. Jeżeli sensor 2 jest +1 to alarm jest włączony, w drzewie wiedza jest ukryta.
Ekspert-może należeć do jednej z następujących kategorii:
• Chce i potrafi
• Jest nie zainteresowany
• Jest niekompetentny (nie potrafi wyjaśnić dlaczego tak a nie inaczej, chociaż to wie)
• Jest wrogi (motywacje ludzkie)
Inżynier wiedzy powinien:
• Mieć doświadczenie w technologii komputerowej
• Być doświadczonym programistą
• Mieć głęboką wiedzę ogólną
• Znać praktyczne podstawy psychologii
• Mieć doświadczenie w zakresie wiedzy dziedzinowej
Ograniczenia systemów eksperckich:
• Ograniczenia architektury przy tworzeniu architektury
• Ograniczenia kompetencji
• Ograniczenia zastosowań
• Ograniczenia filozofii
• Ograniczenia z punktu widzenia metod AI
Inne problemy:
• Zawężona i wąskodziedzinowa wiedza
• Zbyt proste założenia
• Stylizowany język wydawania informacji na zewnątrz
• Stylizowane objaśnianie linii rozumowania
• Niewielkie możliwości strukturalne wyrażania informacji o faktach oraz relacjach
Ocena systemów ekspertowych:
Różnią się one od konwencjonalnych „inteligentnych” programów:
• Sposobem organizacji przetwarzania
• Sposobem zawierania wiedzy
• Metodą realizacji zadań
• Wrażeniem wywieranym na użytkowniku podczas konsultacji
Wyniki generowane przez systemy ekspertowe są dobre, lecz nie dlatego, że system wie więcej od eksperta, ale ponieważ:
• Określony zbiór reguł wnioskowania jest nieustannie stosowany podczas działania systemu
• Ten sam zbiór reguł jest używany zawsze, nawet podczas nietypowych problemów
• Ten sam zbiór reguł jest używany zawsze, bez błędów i bez utraty pamięci.
Efektywność współczesnych s.e. jest wysoka, ale jedynie w rękach dziedzinowych ekspertów.
Narzędzia do budowy s.e.
• Narzędzia do budowy powłoki s.e.
• Narzędzia do generowania s.e.
Systemy ekspertowe różnią się od innych programów sztuczne jinteligencji:
Gotowością do wykonania zadań o wysokim stopniu kompleksowości (tzw. Real-modul-problems)
Szybkością realizacji zadań
Bezbłędnością działania (moduł rozumujący)
Zdolnością objaśniania linii rozumowania
Różnice między s.e. a konwencjonalnymi programami:
• Oddzielają mechanizmy poszukiwania rozwiązań od danych oraz reprezentacji danych
• Łatwo radzą sobie z danymi symbolicznymi (jakościowymi)
• Umożliwiają przetwarzanie niepewnej, lub niekompletnej informacji
• Objaśnia linię rozumowania systemu
• Łatwe dodawanie wiedzy
Obszary zastosowań s.e.
• Rozwiązanie może być wywnioskowane z dostępnych danych
• Dostępne dane mogą być niepewne, lub niekompletne
• Problem można uznać za zbiór podproblemów
Sieci neuronowe
Neurony-tu jako procesory zawierające zarówno elementy pamięci jak i pewne możliwości przetwarzania informacji
Połączenia neuronów-na ogół stosuje się tylko kilka warstw neuronów połączonych w sąsiednich warstwach każdy z każdym. Wynika to z faktu, że sieć sama wybiera z wszystkich dostępnych jej połączeń te, które są naprawdę potrzebne, zerując pozostałe.
Sieć jednowarstwowa-1 warstwa (wejściowa) nie uczestniczy w przetwarzaniu informacji, tylko 1 warstwa podlega uczeniu i pracuje nad rozwiązaniem przedstawionego sieci zadania
Zdolność uczenia sieci. Sieci symulowane (w pamięci komputera) i hardwarowe nie wymagają oprogramowania postawionego zadania (zaleta, gdy brak algorytmu, jest niekompletny, lub często trzeba go modyfikować)
Neurony liniowe y= wi xi
Neurony nieliniowe y=(e) e= wi xi
Podstawowe własności neuronów:
• Neuron otrzymuje wiele sygnałów wejścia i na ich podstawie wyznacza jeden sygnał wyjściowy
• Z każdym sygnałem WE związany jest parametr W (ważność, waga)
• Sygnał WE jest mnożony przez parametr W
• Łączny czas pobudzenia neuronu – suma WE
• WY=sygnał+ew. próg
• Zakłada się, że proces zamiany sygnałów WE zachodzi bezzwłocznie
Inne własności neuronów oraz sieci neuronowych:
• Każdy neuron-pamięć, możliwość przetwarzania
• Program działania, dane, informacje oraz sam proces przetwarzania są całkowicie rozproszone
• Topologia sieci zależy od rodzaju przedstawionego jej zadania
Łączenie neuronów w sieci
• Zwykle każdy z każdym
• Bez jakiejkolwiek konieczności „dopasowywania” struktury sieci do typu rozwiązywanego zadania
• Wystarczająco duża, ale nie za duża
Uczenie liniowych sieci jednowarstwowych
• Jak można uczyć sieć: etap nauki, etap działania
• Warstwy uczenia: nadzorowane, nie nadzorowane
• Zawsze para wartości jest podawana sieci: przykładowy sygnał oraz oczekiwana odpowiedź.
Reguła delty:
Sygnał błędu-porównanie sygnału WY z sygnałem oczekiwanym przez nauczyciela. Oznacza to, że neuron dokonuje modyfikacji swoich współczynników wag i ewentualnego progu stosując dwie reguły:
• Wagi zmieniane są tym silniej im większy błąd
• Wagi są zmieniane z wejściami na których występowały duże wartości sygnałów WE, zmieniane są bardziej niż wagi wejść na których sygnał WE był niewielki.
Stosowanie zmiennych wartości współczynników uczenia:
• Małych na początku
• Większych w środkowej części uczenia
• Ponownie małych
Początek uczenia sieci:
• Początkowe zasiewanie wag (losowe lub nielosowe)
• Początkowe zasiewanie wag współczynników parametryzacji sieci
• Unikać współczynnika 0 (przemnożone przez cokolwiek daje 0)
• Od początku uczenia należy obserwować wykres zmniejszania błędu