Inteligencja Obliczeniowa
Wstęp
Wykład 1
Włodzisław Duch
Katedra Informatyki Stosowanej,
Uniwersytet Mikołaja Kopernika
http://www.phys.uni.torun.pl/~duch
Informatyka:
definicja Association for Computing Machinery The systematic study of algorithmic processes that describe and transform information: their theory, analysis, design, efficiency, implementation, and application …
Denning, et al. 1988
Co z zagadnieniami, dla których nie ma efektywnych algorytmów? Lub żadnych algorytmów?
Inteligencja obliczeniowa
Computational Intel igence (CI)
Zajmuje się rozwiązywaniem problemów, które nie są efektywnie algorytmizowalne.
Nie ma efektywnego algorytmu?
• Drobna zmiana może wymagać całkiem innego programu!
• Nie można przewidzieć wszystkich zmian.
Rozwiązanie wymaga inteligencji; jeśli szukamy rozwiązania za pomocą obliczeń to jest to „inteligencja obliczeniowa”.
Problemy efektywnie niealgorytmizowalne Teoria złożoności obliczeniowej, problemy NP-trudne Liczba kroków algorytmu dla złożonych sytuacji rośnie w sposób szybszy niż jakikolwiek wielomian liczby elementów (złożoności specyfikacji problemu).
Przykład: problem komiwojażera.
Dla 100 miejsc mamy 100!=10158 możliwości.
Problemy praktyczne: gry planszowe, układanie planu, upakowanie towarów.
Przykłady:
•
rozumienie sensu zdań,
•
rozpoznawanie twarzy i obrazów,
•
rozpoznawanie mowy i sygnałów, percepcja,
•
rozpoznawanie pisma ręcznego,
•
sterowanie robotem, nieliniowymi układami,
•
diagnostyka medyczna, planowanie terapi ,
•
rozwiązywanie nietypowych problemów,
•
działania twórcze.
Wiele problemów nie ma natury dyskretnej.
Kognitywistyka:
CI: percepcja i sterowanie: zachowania sensomotoryczne; AI: wyższe czynności poznawcze: logika, język, rozumowanie, rozwiązywanie problemów.
AI to część CI posługująca się symboliczną reprezentacją wiedzy, zajmuje się rozumowaniem, tworzeniem
systemów ekspertowych.
CI: automatyzacja procesów akwizycji wiedzy.
CI-AI: niewielkie nakrywanie, trochę systemów hybrydowych.
Kilka problemów do rozwiązania których potrzebne są metody inteligencji obliczeniowej:
•
Klasyfikacja struktur:
rozpoznawanie obrazów, mowy, pisma, struktur
chemicznych, zachowań człowieka lub maszyny, stanu zdrowia, sensu wyrazów i zdań …
•
Odkrywanie wiedzy w bazach danych, zrozumienie struktury danych, konstrukcja wyjaśniających teori .
•
Selekcja cech - na co warto zwrócić uwagę, co jest niepotrzebne; redukcja wymiarowości problemu.
•
Inteligentne szukanie z uwzględnieniem semantyki pytania – szukarki, Information Retrieval (IR).
•
Inteligentne wspomaganie decyzji: diagnozy
medyczne, decyzje menedżerskie.
•
Gry strategiczne: uczenie się na własnych i cudzych błędach.
•
Kontrola: jakości produktów, ostrości obrazu kamery, dostrojenia aparatury.
•
Sterowanie: samochodu, urządzeń technicznych, fabryk, społeczeństwa ...
•
Planowanie: budowa autostrad, wieżowców,
optymalizacja działań i organizacji, planów działania.
•
Optymalne spełnianie ograniczeń, optymalizacja wielokryterialna, dopełnianie brakującej wiedzy.
•
Detekcja regularności, analiza interesujących skupień, samoorganizacja, uczenie spontaniczne, geny, białka.
•
Separacja sygnałów z wielu źródeł: oczyszczanie obrazów z szumów, oddzielanie artefaktów, separacja sygnałów akustycznych, sygnałów.
•
Prognozowanie: wskaźników ekonomicznych, pogody, plam na Słońcu, decyzji zakupu, intencji człowieka.
•
Askrypcja danych: łączenie informacji z kilku źródeł.
•
Wizualizacja informacji ukrytej w bazach danych.
•
Zrozumienie umysłu: doświadczeń psychologicznych, sposobu rozumowania i kategoryzacji, poruszania się i planowania, procesów uczenia.
•
CI czerpie inspiracje z różnych źródeł, w tym z:
•
Neurobiologii: jak robią to mózgi?
Sieci neuronowe – duża dziedzina, sieci wszelkich rodzajów, modele hierarchiczne, samoorganizujące.
Część bliska neurobiologii – computational cognitive neurosciences, szczegółowe modele neuronów.
Część bliska statystyki i rozpoznawania wzorców (pattern recognition).
Część pośrednia: CMAC (Cerebellar Model Arithmetic Computer); SDM (Sparse Distributed Memory) ...
•
Psychologi : jak robią to umysły?
Modele koneksjonistyczne: sieci i rozproszone przetwarzanie równoległe, ale węzły nie działają jak neurony – sieci Bayesowskie, modele graficzne, uczenie się przez porcjowanie, mechanizmy uwagi.
•
Biologi : algorytmy ewolucyjne, genetyczne, rojowe, mrówkowe.
•
Medycyny: działanie układu immunologicznego.
•
Logiki: uwzględnianie informacji niepewnej, logika rozmyta (fuzzy), przybliżona (rough), teoria
wiarygodności Dempstera-Shafera (posybilistyczna), logika wielowartościowa.
•
Z uczenia maszynowego: szukanie reguł
symbolicznych, automatyczna akwizycja wiedzy.
Metody oparte na ocenie podobieństwa do sąsiadów, np. NNC (Nearest Neighbor Classifiers), k-NN
Metody oparte na śladach pamięci (memory-based methods, memory-based reasoning), szukania
interesujących prototypów.
•
Statystyki: statystyka wielowymiarowa, klasyfikatory Bayesowskie, sieci probabilistyczne, klasteryzacja, kwantyzacja wektorowa.
•
Teori wnioskowania: podejmowanie decyzji, metody probabilistyczne, ocena ryzyka, drzewa decyzji.
•
Teori informacji: maksymalizacji entropi , wartości oczekiwanych, informacji wzajemnej ...
•
Matematyki stosowanej: teoria optymalizacji,
estymacji, badań operacyjnych, taksonomia
numeryczna, teoria aproksymacji, regresji wielu zmiennych, falek ...
•
Metod wizualizacji wielowymiarowych danych.
•
Informatyki: współbieżne systemy programowania.
•
Fizyki: fizyka statystyczna, metody Monte Carlo, stopniowe studzenie, funkcje potencjalne, układy dynamiczne, teoria chaosu, synergetyka.
•
Nauk technicznych: teori sterowania, automatyki, robotyki.
Sieci
Algorytmy
neuronowe
Pattern
ewolucyjne
Recognition
Computational
Wizuali-
Intel igence
zacja
Logika
Data + Knowledge
rozmyta
Artificial Intel igence
Statystyka
wielowymiarowa
AI,
ES
Uczenie
Metody
maszynowe
probabilistyki
•
AI: test Turinga, maszyna nieodróżnialna od człowieka przy zdalnej konwersacji.
Wymaga nie tylko zdolności lingwistycznych, ale i budowania modeli umysłowych, szerokiej wiedzy o świecie, zrozumienia stanów emocjonalnych ...
•
CI: sztuczny szczur?
Przetrwanie autonomicznego organizmu we wrogim środowisku, wymaga percepcji, kontroli, pamięci skojarzeniowej, planowania, antycypacji …
•
Cecha wielu systemów CI:
rozwiązywanie zadań na podstawie przykładów.
•
Systemy adaptujące: zmieniają wewnętrzną strukturę dostosowując się do sytuacji (np. mózgi,
społeczeństwa).
Adaptacja to cecha inteligencji.
•
Systemy adaptujące się są zwykle nieliniowe, często rozproszone, składające się z wielu elementów oddziaływujących w trudny do przewidzenia sposób.
•
3 podstawowe rodzaje takich układów:
uczące się pod nadzorem, z krytykiem i samodzielnie, bez nadzoru.
Uczenie bez nadzoru
Unsupervised
learning
Znajdź interesujące struktury w danych.
Uczenie spontaniczne, odkrywanie ciekawych struktur w przestrzeni danych, korelacja zachowań systemu ze zmianą tych struktur – dominuje w okresie niemowlęcym (również budowa teorii).
Uczenie z nadzorem
Supervised
learning.
Zadaj pytanie – pokaż opis obiektu (wektor własności), porównaj odpowiedź z pożądaną.
Uczenie nadzorowane przez nauczyciela – szkolne.
Zmiana parametrów wewnętrznych – adaptacja, w przyszłości trzeba robić jak najmniej błędów.
Celem nie jest uczenie „na pamięć”, lecz generalizacja.
Uczenie z krytykiem
Reinforcement
learning.
Optymalizacja zysków na dłuższą metę.
Np. gry z przeciwnikiem, krytyką jest przegrana lub wygrana na końcu partii.
Uczenie z krytykiem lub z „wzmocnieniem”
pożądanych zachowań po dłuższym okresie.
Uczenie dojrzałe (nabieranie „mądrości”).
Co dalej?
✔ Sieci bez wag
✔ Perceptrony proste
✔ Perceptrony wielowarstwowe
✔ Inne proste modele
binarne
✔ Sieci Hopfielda
✔ Sieci Hebbowskie i
modele mózgu
Dobranoc ?