340 likes | 490 Views
Wstep do AI 1. Wprowadzenie do AI. Witold Kosiński wkos@ukw.edu.pl. Podejmowanie decyzji. Zagadnienia określane wspólną nazwą „sztuczna inteligencja” (AI), np.: sterowanie urządzeniami i pojazdami podejmowanie decyzji gospodarczych i finansowych diagnozy medyczne
E N D
Wstep do AI1. Wprowadzenie do AI Witold Kosiński wkos@ukw.edu.pl
Podejmowanie decyzji • Zagadnienia określane wspólną nazwą „sztuczna inteligencja” (AI), np.: • sterowanie urządzeniami i pojazdami • podejmowanie decyzji gospodarczych i finansowych • diagnozy medyczne • rozumienie języka naturalnego (np. tłumaczenia) • analiza obrazu i dźwięku
ZAGADNIENIA AI • Stworzenie maszyn o inteligencji dorównującej (przewyższającej) ludzką. • Stworzenie maszyn (algorytmów) przejawiających tylko wąski aspekt inteligencji (grających w szachy, rozpoznających obrazy, czy tworzących streszczenia tekstu).
Pewne definicje inteligencji z 1921, Journal of Educational Psychology • “The ability to carry on abstract thinking” (L. M. Terman) • “Having learned or ability to learn to adjust oneself to the environment” (S. S. Colvin) • “The ability to adapt oneself adequately to relatively new situations in life” (R. Pintner) • “A biological mechanism by which the effects of a complexity of stimuli are brought together and given a somewhat unified effect in behavior” (J. Peterson) • “The capacity to acquire capacity” (W. Woodrow) • “The capacity to learn or to profit by experience” (W. F. Dearborn)
SZTUCZNA INTELIGENCJA(ARTIFICIAL INTELLIGENCE) • Nauka o maszynach realizujących zadania, które wymagają inteligencji wówczas, gdy są wykonywane przez człowieka. Wiele różnych, często sprzecznych definicji.
SZTUCZNA INTELIGENCJA(ARTIFICIAL INTELLIGENCE) • Maszyna jest inteligentna, jeżeli znajdujący się w drugim pomieszczeniu obserwator nie zdoła odróżnić jej odpowiedzi od odpowiedzi człowieka. Test Turinga
SZTUCZNA INTELIGENCJA(ARTIFICIAL INTELLIGENCE) • Nauka o tym, w jakich inteligentnych czynnościach człowieka można obyć się bez inteligencji. • Dział informatyki, którego przedmiotem jest badanie reguł rządzących inteligentnymi zachowaniami człowieka, tworzenie modeli formalnych tych zachowań i - w rezultacie - programów komputerowych symulujących te zachowania.
SZTUCZNA INTELIGENCJAA INTELIGENCJA OBLICZENIOWA Dział informatyki zajmujący się problemami: • trudnymi do modelowania i rozwiązywania w sposób ścisły, analityczny, • niealgorytmizowalnymi, • obliczalnymi, ale nieefektywnie, • algorytmizowalne, ale wymagają użycia innych niż klasyczne metod .
INTELIGENCJA OBLICZENIOWA Metody rozwiązywania takich trudnych problemów dostarcza rozwijany przez matematyków i informatyków nowy kierunek badań zwany inteligencją obliczeniową. Jej rozwój datuje się od lat 60-tych ubiegłego wieku.
Własności charakteryzujące inteligencję ludzką • 1.Adaptacja • 2.Korzystanie z doświadczenia • 3.Korzystanie z wiedzy • 4.Wyciąganie wniosków • 5.Abstrakcyjne myślenie • 6.Poczucie humoru • 7.Samoświadomość • 8. Zdolność planowania • 9.Zdolność przewidywania • 10. Selekcja informacji • 11.Zdolność komunikacji • 12.Uczenie się • 13.Dokonywanie wyboru • Może być ciekawe wybrać te własności, które są wspólne z inteligencją maszynową - sztuczną.
HISTORIA AI - SZACHY • ok. 1948 – pierwsze programy szachowe • 1951 – A. Turing: Nikt nie jest w stanie ułożyć programu lepszego od własnego poziomu gry. • 1967 – pierwsze zwycięstwo komputera nad „profesjonalnym” szachistą podczas turnieju • 1977 – pierwsze zwycięstwo nad mistrzem klasy międzynarodowej (jedna partia w symultanie) • 1997 – Deep Blue wygrywa pełny mecz z Kasparowem (specjalny superkomputer 418-procesorowy; wynik 3,5:2,5) • 2003 – Deep Junior remisuje z Kasparowem mecz na warunkach przez niego określonych (8 zwykłych procesorów Intela 1,6 GHz; wynik 3:3)
CO OKAZAŁO SIĘ TRUDNE,A CO ŁATWE Łatwe: zadania, do których wystarcza moc obliczeniowa (proste gry, np. warcaby) lub zapamiętanie wielu przykładów. Trudne: np. analiza języka naturalnego, bardziej skomplikowane gry (go), analiza obrazu.
Wykorzystywane techniki i modele • Sieci neuronowe • Wnioskowanie, indukcja reguł • Algorytmy ewolucyjne • Systemy wieloagentowe (współpraca ) • Automaty komórkowe • Metody przeszukiwania możliwych rozwiązań i ich optymalizacji...
Przykład zagadnienia praktycznego • Znaleźć, odczytać i zapamiętać numer rejestracyjny samochodu na podstawie zdjęcia:
Usunięcie zbędnych szczegółów Lokalizacja napisów Odczytywanie tablic rejestracyjnych (1) Oryginalne zdjęcie
Lokalizacja znaków Rozpoznawanie znaków: - znajdowanie istotnych cech liczbowych - klasyfikacja na podstawie cech (systemy uczące się) Odczytywanie tablic rejestracyjnych (2) Wyselekcjonowany obszar
Rozpoznawanie twarzy(nauka) > classifier < not Marks > classifier < Marks > classifier < not Marks > classifier < Marks > classifier < not Marks > classifier < not Marks
Rozpoznawanie twarzy > Classifier > Marks UWAGA: TEN OBRAZ NIE NALEŻAŁ DO PRÓBKI TRENINGOWEJ!!!
Narzędzia AI • ANN- artificial neural networks • Genetic and evolutionary algorithms (genetic=binary chromosomes) • Fuzzy logic, fuzzy sets, fuzzy controllers • Decision trees (drzewa decyzyjne) • Celullar automata (automaty komórkowe) • Rough sets (zbiory przybliżone), Pawlak’s sets
Tools of AI, cont. • Wymienione narzędzia mogą się znaleźć jako elementy większych systemów informacyjnych (tzw. Inteligentnych systemów informacyjnych) zwanych systemami doradczymi czy systemami eksperckim (ekspertowymi) decision-supporting systems
LITERATURA • Rutkowski L., Metody i techniki sztucznej inteligencji, Wydawnictwo Naukowe PWN Warszawa 2005. • Rutkowska D., Piliński M. i Rutkowski L., Sieci neuronowe, algorytmy genetyczne i systemy rozmyte, PWN, Warszawa 1997. • Piegat A., Modelowanie i sterowanie rozmyte. Akademicka Oficyna Wydawnicza EXIT Warszawa 1999. • Tadeusiewicz R., , Elementarne wprowadzenie do techniki sieci neuronowych z przykładowymi programami, Akademicka Oficyna Wydawnicza PLJ Warszawa 1998. • Michalewicz Michalewicz, Algorytmy genetyczne + struktury danych = programy ewolucyjne, Wydawnictwa Naukowo-Techniczne, 1996 • Korbicz J., Obuchowski A., Uciński D., Sztuczne sieci neuronowe. Podstawy i zastosowania. Akademicka Oficyna Wydawnicza PLJ, Warszawa, 1994. • Osowski Stanisław, Sieci neuronowe w ujęciu algorytmicznym, Wydawnictwa Naukowo-Techniczne, Warszawa, 1996 • Żurada Jacek, Barski Mariusz , Jędruch Wojciech, Sztuczne sieci neuronowe, Wydawnictwo Naukowe PWN, Warszawa, 1996.
PROGRAM WYKŁADU • Sieci neuronowe: przegląd struktur oraz zastosowań, metody uczenia, propagacja wsteczna błędu • Logika rozmyta i liczby rozmyte • Problemy optymalizacji i przeszukiwania, klasyfikacja danych • Algorytmy genetyczne: operatory, zastosowania do optymalizacji • Automaty i systemy komórkowe i mrówkowe • Metody hybrydowe
KRYTERIA ZALICZANIA • Ćwiczenia: • Punkty z rozwiązanych zadań/ ew.colloquia. • Co najmniej jeden projekt programistyczny • Inne, ustalone przez prowadzących zajęcia • Wykład: • Dwa colloquia (nieobowiązkowe) • Egzamin pisemny, jeden termin poprawkowy, trzeba mieć wcześniej zaliczone ćwiczenia • Ocena co najmniej na 4.0 z ćwiczeń i zaliczone w punktach colloquia na wykładzie zwalniają z egzaminu (można mieć zaproponowaną ocenę) • Brak możliwości „warunkowego” pisania egz.
Sztuczne sieci neuronowe Geneza: Naśladowanie działania naturalnych neuronów Cel historyczny: osiągnięcie zdolności uogólniania (aproksymacji) i uczenia się, właściwej mózgowi ludzkiemu.
Perceptron (Rosenblatt 1958) • Wejście • n stanów wejściowych x1,...,xn • stany mogą być cyfrowe lub analogowe • Wyjście • 0 lub 1 • Parametry perceptronu • n wag połączeń w1,...,wn • wartość progowa Uwaga: pod pojęciem “perceptronu” rozumie się też czasem sieć połączonych jednostek (neuronów).
Perceptron • Zasada działania • Do każdego i-tego wejścia przypisana jest waga wi • Dla danych stanów wejściowych x1,...,xn liczymy sumę ważoną: • Jeżeli s, to ustawiamy wyjście y = 1, zaś w przeciwnym przypadku ustawiamy y = 0
Analogia z neuronem naturalnym x1 x2 xn w1 w2 wn y
Jak opisać perceptron • Perceptron opisuje jednoznacznie zbiór wag w1,...,wn oraz wartość progowa • Wartości x1,...,xn to zmienne pojawiające się na wejściu do modelu perceptronu • Funkcja aktywacji:
x1 x2 x1 x2 0 0 0 0 1 0 x1 x1 1 1 = 2 = 1 x1AND x2 x1OR x2 1 0 0 1 1 x2 x2 1 1 1 x1 x2 x1 x2 0 0 0 0 1 1 1 0 1 1 1 1 Co potrafi perceptron
y=1 x2 w1x1 + w2x2 - = 0 x1 Co potrafi perceptron • Równanie perceptronu można potraktować jako równanie prostej (ogólnie: hiperpłaszczyzny w przestrzeni n-wymiarowej). • Punkty leżące nad ową prostą klasyfikujemy jako 1, zaś pozostałe jako 0.
AND OR XOR Czego perceptron nie potrafi • Pojedynczy perceptron nie potrafi odróżniać zbiorów nieseparowalnych liniowo, np. funkcji XOR. • Odkrycie tych ograniczeń (1969) na wiele lat zahamowało rozwój sieci neuronowych.
Zadanie perceptronu • Zadaniem pojedynczego perceptronu jest jedynie: • przetwarzanie jednostkowych informacji • podejmowanie prostych decyzji • przekazywanie wyników sąsiadom • Dopiero w połączeniu z innymi węzłami uzyskuje się zdolność podejmowania złożonych decyzji