- Nazwa przedmiotu:
- Sieci neuronowe
- Koordynator przedmiotu:
- prof. dr hab. inż. Bohdan Macukow
- Status przedmiotu:
- Obowiązkowy
- Poziom kształcenia:
- Studia II stopnia
- Program:
- Informatyka i Systemy Informacyjne
- Grupa przedmiotów:
- Wspólne
- Kod przedmiotu:
- Semestr nominalny:
- 2 / rok ak. 2018/2019
- Liczba punktów ECTS:
- 6
- Liczba godzin pracy studenta związanych z osiągnięciem efektów uczenia się:
- 1)	godziny kontaktowe 75h, w tym: 
a)	obecność na wykładach - 30h, 
b)	obecność na zajęciach w laboratorium - 45h
2)	przygotowanie do zajęć laboratoryjnych - 30h
3)	zapoznanie się ze wskazaną literaturą - 15h
4)	napisanie programu, uruchomienie, weryfikacja (poza laboratorium) - 30h
5)	przygotowanie raportu - 10h
6)	przygotowanie do egzaminu i obecność na egzaminie - 10h
Razem nakład pracy studenta 170h = 6p. ECTS
- Liczba punktów ECTS na zajęciach wymagających bezpośredniego udziału nauczycieli akademickich:
- a)	obecność na wykładach - 30h, 
b)	obecność na zajęciach w laboratorium - 45h
Razem: 30 + 45 = 75h., co odpowiada 3 punktom ECTS.
- Język prowadzenia zajęć:
- polski
- Liczba punktów ECTS, którą student uzyskuje w ramach zajęć o charakterze praktycznym:
- a)	obecność na zajęciach w laboratorium - 45h
b)	przygotowanie do zajęć laboratoryjnych - 30h
c)	napisanie programu, uruchomienie, weryfikacja (poza laboratorium) - 30h
Razem: 45 + 30 + 30 = 105h., co odpowiada 4 punktom ECTS.
- Formy zajęć i ich wymiar w semestrze:
- 
            
                - Wykład45h
- Ćwiczenia0h
- Laboratorium0h
- Projekt30h
- Lekcje komputerowe0h
 
- Wymagania wstępne:
- Programowanie
- Limit liczby studentów:
- brak limitu
- Cel przedmiotu:
- Po ukończeniu kursu studenci posiadają wiedzę o podstawach budowy i zasadach działania układu nerwowego oraz komórki nerwowej. Poznają podstawowe modele sztucznych sieci neuronowych i różnych procedur uczących ze szczególnym uwzględnieniem algorytmu wstecznej propagacji. Potrafią samodzielnie tworzyć modele komputerowe sieci do realizacji określonych zadań poprzez dobór architektury i metody uczenia.
- Treści kształcenia:
- Wykład:     Wiadomości wstępne rys historyczny badań biocybernetycznych; porównanie funkcjonalne i strukturalne komputerów klasycznych i neurokomputerów, budowa i organizacja systemu nerwowego; komórka nerwowa jej budowa i własności, przekazywanie impulsów w systemie nerwowym; budowa i czynności ośrodkowego układu nerwowego. Komórka nerwowa i jej modele; model Mc Cullocha- Pittsa, sieci modelujące operacje (and, or, torowanie...); symbolika Mc Cullocha.  Sieci neuronowe, sieć łańcuchowa i dwu-wymiarowa, połączenia typu hamowanie i pobudzanie oboczne; perceptron Rosenblatta, omówienie algorytmu uczenia; Reguła Delta. Dowód zbieżności procedury uczącej percptronu; model Adaline, opis i dowód zbieżności procedury uczącej. Sieć jako klasyfikator, problem XOR, Tw. Kołmogorowa i wynikające z tego wnioski. Model propagacji wstecznej; sieć Kohonena. Miary odległości; Model Hopfielda, Hopfield a modele fizyczne (szkło spinowe), funkcja energetyczna, zapis i odczyt w sieci, model binarny i ciągły, opis algorytmu, warunki zbieżności, przykłady. Model Hamminga, przykłady; teoria rezonansu adaptacyjnego – model Grossberga/Carpenter (ART), algorytm i przykłady. Model pamięci skojarzeniowej; sieci operacji logicznych. Zastosowanie sieci neuronowych do rozwiązywania zadań algebry macierzowej. Sieci neuronowe do zadań kompresji. Sieci neuronowe komórkowe. Zasady budowy pamięci skojarzeniowych (reguła Hebba, uczenie niehebbowskie, uczenie anty-hebbowskie, reguły perceptronowe, pamięci dwu- i wielokierunkowe). Zastosowanie sieci Hopfielda do rozwiązywania problemów optymalizacyjnych (interpretacja modelu w postaci układu elektrycznego, reprezentacja rozwiązywanego problemu kombinatorycznego, postać funkcji energii sieci, metody doboru współczynników, zalety i ograniczenia, modyfikacje deterministyczne, chaotyczne i stochastyczne, maszyna Boltzmanna, zastosowania akademickie oraz przykłady zastosowań praktycznych). Zastosowanie sieci samoorganizujących się do rozwiązywania problemów optymalizacyjnych (sieć Kohonena, metoda siatki elastycznej). Modyfikacje reguły propagacji wstecznej (momentum, reguła delta-bar-delta, Silva i Alameida, przybliżenie drugich pochodnych). Metody uczenia przyrostowego (motywacja, przykładowe algorytmy). Dobór optymalnej architektury sieci (przeuczenie, zdolność generalizacji, oszacowania liczby neuronów w warstwie ukrytej sieci jednokierunkowej, metody obcinania). Algorytmy konstrukcyjne (kaskadowa korelacja, metody modularne). Systemy hybrydowe neuro-fuzzy i neuro-genetyczne (podstawy teoretyczne, zastosowania praktyczne). Zastosowania sieci neuronowych w zagadnieniach ekonomicznych, finansowych i medycznych.
Laboratorium:   Tematyka zajęć obejmuje stworzenie modelu sieci neuronowej dla wybranego zagadnienia z zakresu: zastosowań w ekonomii, klasyfikacji, Support Vector Machine, klasyfikacji przy pomocy sieci radialnych, modelu Kohonena, gdy Othello i innych.
 
- Metody oceny:
- Do zaliczenia przedmiotu wymagane jest zdanie egzaminu (waga 50%) oraz zaliczenie części praktycznej. studenci w kilkuosobowych zespołach przygotowują własny model na wybrany temat wraz z przygotowaniem odpowiednich materiałów (waga 50%).
- Egzamin:
- tak
- Literatura:
- 1.	J.Hertz, A.Krogh, R.G.Palmer, Wstęp do teorii obliczeń neuronowych, WNT, 1993,
2.	S.Osowski, Sieci neuronowe, Ofic.Wyd.Pol.Warsz., Warszawa, 1994,
3.	T. Kacprzak, K. Ślot Sieci neuronowe komórkowe, PWN 1995
4.	T.Masters, Sieci neuronowe w praktyce, WNT 1996,
5.	J.Zurada, M.Barski, W.Jędruch, Sztuczne sieci neuronowe, PWN 1996.
6.	S.Osowski, Sieci neuronowe w ujęciu algorytmicznym, WNT 1996,
7.	D. Rutkowska, M. Piliński, L. Rutkowski Sieci neuronowe, algorytmy genetyczne i systemy rozmyte, PWN 1997
8.	S. Osowski, Sieci neuronowe do przetwarzania informacji,  OW PW Warszawa 2000
9.	J. Mańdziuk Sieci neuronowe typu Hopfielda, teoria i przykłady zastosowań, AOW EXIT, Warszawa 2000
10.	B. Borowik Pamięci asocjacyjne, Mikom 2002
11.	R. A. Kosiński Sztuczne sieci neuronowe, WNT 2002
12.	http://www.mini.pw.edu.pl/~macukow/pl/dydaktyka.html
 
- Witryna www przedmiotu:
- mini.pw.edu.pl/~macukow/
- Uwagi:
Efekty uczenia się
    Profil ogólnoakademicki - wiedza
                    - Charakterystyka W01
- zna teoretyczne podstawy działania i modelowania elementów neuropodobnych oraz budowy sieciowych struktur neuronowych
 Weryfikacja: egz. – część pisemna ew. część ustna
 Powiązane charakterystyki kierunkowe: 
                        SI_W09, SI_W11
 Powiązane charakterystyki obszarowe:
Profil ogólnoakademicki - umiejętności
                    - Charakterystyka U01
- potrafi przeanalizować zadany układ sieciowy, stworzyć opis jego funkcjonalności, przeprowadzić dowód poprawności działania
 Weryfikacja: egz. - cz. pisemna projekt
 Powiązane charakterystyki kierunkowe: 
                        SI_U06, SI_U15
 Powiązane charakterystyki obszarowe:
- Charakterystyka U02
- potrafi zaprojektować układ rozwiązujący określony problem posiadający praktyczne znaczenie (np. z obszaru finansów czy klasyfikacji danych)
 Weryfikacja: egz. - cz. pisemna projekt
 Powiązane charakterystyki kierunkowe: 
                        SI_U09, SI_U15
 Powiązane charakterystyki obszarowe:
- Charakterystyka U03
- potrafi wybrać właściwe narzędzia programistyczne do zamodelowania układu sieciowego o zadanych parametrach
 Weryfikacja: zaliczenie projektu
 Powiązane charakterystyki kierunkowe: 
                        SI_U09
 Powiązane charakterystyki obszarowe:
- Charakterystyka U04
- posiada umiejętność korzystania ze źródeł literaturowych oraz zasobów internetowych dotyczących rozwiązywanego zadania 
 Weryfikacja: zaliczenie projektu
 Powiązane charakterystyki kierunkowe: 
                        SI_U01
 Powiązane charakterystyki obszarowe:
Profil ogólnoakademicki - kompetencje społeczne
                    - Charakterystyka K01
- potrafi pracować indywidualnie i w zespole
 Weryfikacja: zaliczenie projektu
 Powiązane charakterystyki kierunkowe: 
                        SI_K04
 Powiązane charakterystyki obszarowe: