Moduł oferowany także w ramach programów studiów:
Informacje ogólne:
Nazwa:
Sztuczne sieci neuronowe
Tok studiów:
2018/2019
Kod:
JIS-2-105-AD-s
Wydział:
Fizyki i Informatyki Stosowanej
Poziom studiów:
Studia II stopnia
Specjalność:
Modelowanie i analiza danych
Kierunek:
Informatyka Stosowana
Semestr:
1
Profil kształcenia:
Ogólnoakademicki (A)
Język wykładowy:
Polski
Forma i tryb studiów:
Stacjonarne
Strona www:
 
Osoba odpowiedzialna:
dr hab. inż. Kowalski Piotr Andrzej (pkowal@agh.edu.pl)
Osoby prowadzące:
dr hab. inż. Kowalski Piotr Andrzej (pkowal@agh.edu.pl)
Krótka charakterystyka modułu

Celem zajęć jest zapoznanie studentów z podstawowymi metodami sztucznych sieci neuronowych oraz przykładami ich użycia w rozmaitych zagadnieniach aplikacyjnych.

Opis efektów kształcenia dla modułu zajęć
Kod EKM Student, który zaliczył moduł zajęć wie/umie/potrafi Powiązania z EKK Sposób weryfikacji efektów kształcenia (forma zaliczeń)
Wiedza
M_W001 Student uzyskuje podstawową wiedzę z zakresu budowa i działania biologicznych systemów informatycznych, a w szczególności układu nerwowego, jako pierwowzoru Sztucznych Sieci Neuronowych. IS2A_W01, IS2A_W05 Kolokwium
M_W002 Student uzyskuje pogłębioną wiedzę w zakresie działania i zastosowań Sztucznych Sieci Neuronowych w takich zagadnieniach jak: aproksymacja funkcji wielowymiarowych, klasyfikacja sygnałów, rozpoznawanie obrazów. IS2A_W01 Kolokwium,
Wykonanie projektu
Umiejętności
M_U001 Student potrafi samodzielnie zaprojektować sieć jednowarstwową oraz zaadaptować ją do wybranych zagadnień takich jak: aproksymacji funkcji wielowymiarowych, klasyfikacji sygnałów, rozpoznawania obrazów. IS2A_U02, IS2A_U04 Projekt
M_U002 Student potrafi wykorzystać pakiet Matlab-neuraltoolbox do zaprojektowania wielowarstwowej siei neuronowe o dowolnej strukturze połączeń i z wielokierunkową możliwością przypływu sygnałów oraz umie dokonać podstawowej optymalizacji parametrów i struktury takiej sieci. IS2A_U01, IS2A_U02, IS2A_U04 Kolokwium,
Projekt
Kompetencje społeczne
M_K001 Student potrafi wykorzystać zdobytą wiedzę i dostępne formy pomocy do wykonania określonego projektu z zakresu zaawansowanych metod analizy danych. IS2A_K01 Projekt
M_K002 Student umie ocenić skalę trudności podjętego zadania i wykorzystać posiadaną wiedzę do jego rozwiązania. IS2A_K02 Kolokwium,
Projekt
Matryca efektów kształcenia w odniesieniu do form zajęć
Kod EKM Student, który zaliczył moduł zajęć wie/umie/potrafi Forma zajęć
Wykład
Ćwicz. aud
Ćwicz. lab
Ćw. proj.
Konw.
Zaj. sem.
Zaj. prakt
Zaj. terenowe
Zaj. warsztatowe
Inne
E-learning
Wiedza
M_W001 Student uzyskuje podstawową wiedzę z zakresu budowa i działania biologicznych systemów informatycznych, a w szczególności układu nerwowego, jako pierwowzoru Sztucznych Sieci Neuronowych. + - - - - - - - - - -
M_W002 Student uzyskuje pogłębioną wiedzę w zakresie działania i zastosowań Sztucznych Sieci Neuronowych w takich zagadnieniach jak: aproksymacja funkcji wielowymiarowych, klasyfikacja sygnałów, rozpoznawanie obrazów. + - + - - - - - - - -
Umiejętności
M_U001 Student potrafi samodzielnie zaprojektować sieć jednowarstwową oraz zaadaptować ją do wybranych zagadnień takich jak: aproksymacji funkcji wielowymiarowych, klasyfikacji sygnałów, rozpoznawania obrazów. - - + + - - - - - - -
M_U002 Student potrafi wykorzystać pakiet Matlab-neuraltoolbox do zaprojektowania wielowarstwowej siei neuronowe o dowolnej strukturze połączeń i z wielokierunkową możliwością przypływu sygnałów oraz umie dokonać podstawowej optymalizacji parametrów i struktury takiej sieci. + - + + - - - - - - -
Kompetencje społeczne
M_K001 Student potrafi wykorzystać zdobytą wiedzę i dostępne formy pomocy do wykonania określonego projektu z zakresu zaawansowanych metod analizy danych. - - + + - - - - - - -
M_K002 Student umie ocenić skalę trudności podjętego zadania i wykorzystać posiadaną wiedzę do jego rozwiązania. + - + + - - - - - - -
Treść modułu zajęć (program wykładów i pozostałych zajęć)
Wykład:
  1. Wprowadzenie do przedmiotu.

    Streszczenie zagadnień, jakie będą omawiane na wykładach oraz przerabiane na laboratorium, omówienie warunków zaliczenia przedmiotu.

  2. Pozdsawowe zagadnienia i domeny sztucznej inteligencji.

    Omówienie podstawowych zagadnień sztucznej inteligencji ze szczególnym uwzględnieniem domeny sztucznych sieci neuronowych, pod kątem przetwarzania informacji.

  3. Budowa układu nerwowego w tym mózgu jako pierwowzoru Sztucznych Sieci Neuronowych (SSN)

    Biologiczne zasady działania pojedynczego neuronu oraz całego układu nerwowego wraz z odmienieniem do uproszczonego modelu sztucznego neuronu.

  4. Sztuczny neuron

    Omówienie podstawowych modeli sztucznego neuronu. Matematyczny model komórki neuronowej, liniowe i nieliniowe modele komórek neuronowych. Podstawowe metody uczenia sztucznego neuronu.

  5. Podstawowe elementy SSN

    Matematyczny model jednowarstwowych sieci neuronowych, ich możliwości oraz ograniczenia.

  6. Zaawansowane sieci neuronowe

    Sposoby uczenia sieci neuronowych (z nauczycielem i bez nauczyciela). Omówienie sieci neuronowych typu RBF, FFF. Sprzężenie zwrotne w sieciach neuronowych.

  7. Uczenie SSN z nauczycielem

    Zasady przygotowania zbiorów uczących i testujących do uczenia sieci z nauczycielem. Algorytmy uczenia sieci i ich dynamika uczenia.

  8. Podsumowanie

    Ogólne omówienie sieci samoorganizujących. Praktyczne przykłady zastosowania SSN.

Ćwiczenia laboratoryjne:
  1. zaawansowane sieci neuronowe

    Efekty kształcenia:

    • student potrafi stworzyć sieci neuronowe o dowolnej strukturze (w tym sieci rekurencyjne) oraz zastosować je do wybranych zadań nauki i techniki

  2. Implementacja podstawowoej komórki neuronowej

    Efekty kształcenia:

    • student potrafi stworzyć układ neuronu, wraz z użyciem podstawowych algorytmów uczenia
    • student potrafi wykorzystać stworzoną strukturę w podstawowych zagadnieniach analizy danych

  3. Zajęcia przygotowawcze

    Efekty kształcenia:

    • student potrafi stworzyć prostą aplikację w środowisku obliczeniowym,

  4. przygotowanie i zastosowanie jednowarstwowej perceptronowej sieci neuronowej do klasyfikacji obrazów i praktyczne jej wykorzystanie

    Efekty kształcenia:

    • student potrafi stworzyć jednowarstwową sieć perceptronową,
    • student potrafi przygotować zbiór uczący i testujący oraz zastosować prosty algorytm delta do uczenia sieci perceptronowej
    • student potrafi zastosować tą sieć np. do klasyfikacji „obrazów”.

  5. przygotowanie i zastosowanie jednowarstwowej liniowej sieci neuronowej do aproksymacji funkcji wielowymiarowej i praktyczne jej wykorzystanie

    Efekty kształcenia:

    • student potrafi stworzyć jednowarstwową sieć liniową,
    • student potrafi przygotować zbiór uczący i testujący oraz zastosować prosty algorytm delta do uczenia jednowarstwowej sieci liniowej,
    • student potrafi zastosować tą sieć do przetwarzania aproksymacji funkcji wielowymiarowej.

  6. zastosowanie wielowarstwowej sieci neuronowej do zgadanień medycznych

    Efekty kształcenia:

    • student potrafi stworzyć wielowarstwową sieć neuronową, z jednokierunkowym przepływem sygnału, przy użyciu pakietu Matlab-neuraltoolbox,
    • student potrafi przygotować zbiór uczący i testujący oraz zastosować metodę wstecznej propagacji błędu do uczenia wielowarstwowych sieci neuronowych,
    • student potrafi zastosować różne algorytmy uczenia do metody wstecznej propagacji błędu.

  7. testowanie jakości działanie wielowarstwowych sieci neuronowych o dowolnej strukturze połączeń

    Efekty kształcenia:

    • student potrafi stworzyć wielowarstwowe sieci neuronowe o dowolnej strukturze połączeń i z wielokierunkową możliwością przypływu sygnałów,
    • student potrafi przetestować działanie takich sieci i zna podstawowe kryteria optymalizacji parametrów i struktury takich sieci.

Ćwiczenia projektowe:
Projekt

Zajęcia projektowe w zakresie rozszerzającym umiejętności zdobyte na laboratorium i wykładzie.

Nakład pracy studenta (bilans punktów ECTS)
Forma aktywności studenta Obciążenie studenta
Sumaryczne obciążenie pracą studenta 120 godz
Punkty ECTS za moduł 4 ECTS
Udział w wykładach 30 godz
Udział w ćwiczeniach laboratoryjnych 30 godz
Samodzielne studiowanie tematyki zajęć 10 godz
Przygotowanie do zajęć 35 godz
Udział w ćwiczeniach projektowych 15 godz
Pozostałe informacje
Sposób obliczania oceny końcowej:

W ramach laboratorium komputerowego studenci wykonują w semestrze około czterech projektów, które są oceniane. Wiedza uzyskana na wykładach sprawdzana jest poprzez przeprowadzanie kolokwiów.

Ocena końcowa z modułu obliczana jest, jako średnia ważona z: średniej oceny z projektów wykonywanych na laboratorium wraz z ocenami z kolokwiów (60%) oraz oceny z projektu (40%).

Wymagania wstępne i dodatkowe:

Ćwiczenia laboratoryjne wymagają umiejętności pisania programów skryptowych. Ćwiczenia te realizowane są z zastosowaniem pakietu MATLAB. Realizację ćwiczeń laboratoryjnych znacznie ułatwia podstawowa znajomość tego pakietu lub jego odpowiednika OCTAVA.

Zalecana literatura i pomoce naukowe:
  • Duch W., Korbacz J., Rutkowski L., Tadeusiewicz R., Sieci Neuronowe (Biocybernetyka I Inżynieria
    Biomedyczna 2000 Tom 6.) Akademicka Oficyna Wydawnicza EXIT
  • Korbicz J., Obuchowicz A., Uciski D. Sztuczne Sieci Neuronowe Podstawy i Zastosowania, Akademicka
    Oficyna Wydawnicza PLJ, Warszawa 1994.
  • Osowski S.: Sieci neuronowe w ujęciu algorytmicznym, WNT, Warszawa 1996.
  • Tadeusiewicz R.: Sieci neuronowe, Akademicka Oficyna Wydawnicza RM, Warszawa 1993
  • Tadeusiewicz R.: Elementarne wprowadzenie do techniki sieci neuronowych z przykładowymi programami,
    Akademicka Oficyna Wydawnicza PLJ, Warszawa 1999.
Publikacje naukowe osób prowadzących zajęcia związane z tematyką modułu:
  • P. A. Kowalski and M. Kusy. “Sensitivity Analysis for Probabilistic Neural Network
    Structure Reduction”. IEEE Transactions on Neural Networks and Learning Systems
    (2017). doi: 10.1109/TNNLS.2017.2688482.
  • P. A. Kowalski and P. Kulczycki. “Interval probabilistic neural network”. Neural Computing
    and Applications vol. 28. no. 4 (2017), pp. 817–834. doi: 10.1007/s00521-015
    -2109-3.
  • P. A. Kowalski and S. Łukasik. “Training neural networks with krill herd algorithm”.
    Neural Processing Letters vol. 44. no. 1 (2016), pp. 5–17. doi: 10.1007/s11063-015-
    9463-0.
  • M. Kusy and P. A. Kowalski. “Weighted Probabilistic Neural Network”. Information
    Sciences (2017).
Informacje dodatkowe:

Zasady zaliczania zajęć:
– ćwiczenia laboratoryjne są obowiązkowe
– podstawowym terminem uzyskania zaliczenia jest koniec zajęć w danym semestrze.
– Student może przystąpić do poprawkowego zaliczania w wybranej przez prowadzącego formie.
– każda nieobecność Studenta musi zostać usprawiedliwiona (zgodnie z Regulaminem Studiów AGH)
– Student który opuścił więcej niż dwa zajęcia i jego cząstkowe wyniki w nauce były negatywne może
zostać pozbawiony, przez prowadzącego zajęcia, możliwości poprawkowego zaliczania zajęć.
– tygodniowe opóźnienie oddania sprawozdania lub projektu skutkuje obligatoryjnym obniżeniem oceny za tą pracę o całą stopień za każdy tydzień zwłoki.

Sposób i tryb wyrównania zaległości powstałych wskutek nieobecności studenta na zajęciach:

- ćwiczenia laboratoryjne: nieobecność na zajęciach wymaga od studenta samodzielnego opanowania przerabianego na tych zajęciach materiału i jego zaliczenia w formie i terminie wyznaczonym przez prowadzącego zajęcia - obecność na wykładzie: zgodnie z Regulaminem Studiów AGH - nieobecność na zajęciach wykładowych nie upoważnia Studenta do nieznajomości omawianej tematyki na pozostałych formach zajęć.

Sztuczne sieci neuronowe są strukturami wzorowanymi na budowie i działaniu biologicznych systemów nerwowych. Rzeczywiste układy nerwowe można traktować jako bardzo złożone układy informatyczne, gdzie wszystkie operacje mają charakter procesów biologiczno-chemiczno-fizycznych. Operacje te można podzielić na: rejestrację i przesyłanie sygnału, zapamiętywanie i analizę uzyskanych informacji oraz w końcowym etapie odpowiedź układu. Wysoko rozwinięte układy nerwowe są układami silnie dynamicznymi, gdzie odpowiedź układu zależy nie tylko od rejestrowanych sygnałów, ale w dużym stopniu od aktualnego stanu pamięci. Również struktura układu nerwowego ulega ciągłym zmianom poprzez obumieranie komórek nerwowych oraz powstawanie nowych połączeń między komórkami nerwowymi. Pod koniec lat pięćdziesiątych i w latach sześćdziesiątych pojawiły się pierwsze prace teoretyczne jak i praktyczne, mające na celu matematyczne opracowanie modeli sieci neuronowych i ich praktyczne zastosowanie. Ze względu na teoretyczne ograniczenia możliwości zastosowań sieci jednowarstwowych oraz braku skutecznego algorytmu uczenia sieci wielowarstwowych, nastąpiła stagnacja tej dziedziny badań na ponad 20 lat. Opracowanie, w latach osiemdziesiątych, metody wstecznej propagacji błędu, pozwalającej na uczenie sieci wielowarstwowych, spowodowało istotny przełom w rozwoju badań i zastosowań sztucznych sieci neuronowych. Dodatkowo sprzyjającą sytuacją był silny rozwój technologii komputerowych, jaki nastąpił w tym okresie. Obecnie sztuczne sieci neuronowe odgrywają istotną rolę w dziedzinie analizy i przetwarzania danych oraz modelowania układów rzeczywistych.