ПРОГРАМНІ ЗАСОБИ ПРОЄКТУВАННЯ ТА РЕАЛІЗАЦІЇ НЕЙРОМЕРЕЖЕВИХ СИСТЕМ

Робоча програма навчальної дисципліни (Силабус)

Реквізити навчальної дисципліни

Рівень вищої освіти Перший (бакалаврський)
Галузь знань 12 Інформаційні технології
Спеціальність 126 Інформаційні системи та технології
Освітня програма Інтегровані інформаційні системи
Статус дисципліни Навчальна дисципліна професійної та практичної підготовки (за вибором студентів)
Форма навчання очна(денна)/заочна/дистанційна
Рік підготовки, семестр 3 курс, осінній семестр
Обсяг дисципліни 105 годин (36 годин – Лекції, 18 годин – Лабораторні, 51 годин – СРС)
Семестровий контроль/ контрольні заходи Залік/залікова робота
Розклад занять http://rozklad.kpi.ua
Мова викладання Українська
Інформація про
керівника курсу / викладачів

Лектор: старший викладач Шимкович Володимир Миколайович,

v.shymkovych@kpi.ua,

Telegram: @volodymyr_shymkovych

Лабораторні: старший викладач Шимкович Володимир Миколайович,

v.shymkovych@kpi.ua,

Telegram: @volodymyr_shymkovych

Розміщення курсу https://campus.kpi.ua

Програма навчальної дисципліни

Опис навчальної дисципліни, її мета, предмет вивчання та результати навчання

Опис дисципліни. При вивченні даної дисципліни, студенти вивчать теоретичні основи нейронних мереж та отримають початковий досвід в розробці програмного забезпечення,що реалізує нейромережеві технології. На лабораторних заняттях отримають початковий досвід створення програмних систем на основі нейронних мереж. Проведуть розробку та дослідження нейромережевих систем різного призначення за допомогою мові програмування Payton та бібліотек TensorFlow і Keras. В курсі передбачений контроль якості отриманих знань у вигляді експрес завдань за допомогою програмних пакетів контрольних та модульних контрольних робіт.

Предмет навчальної дисципліни: основні поняття нейромережевих систем, введення в нейронні мережі, топології та види нейронних мереж, згорткові нейронні мережі, програмні засоби реалізації та дослідження нейромережевих систем на Payton та бібліотек TensorFlow і Keras.

Міждисциплінарні зв’язки. Дисципліна Програмні засоби проектування та
реалізації нейромережевих систем базується на дисциплінах: Програмування – 1. Основи програмування; Програмування – 2. Структури даних та алгоритми; Технології розроблення програмного забезпечення.

  • Мета навчальної дисципліни. Підготовка висококваліфікованих фахівців, які володіють основними поняттями нейромережевої теорії, термінами нейромережевих систем, структурою та властивостями нейромережевих систем, методами навчання нейромережевих систем, базами даних для навчання нейромережевих систем, етапами проектування програмних нейромережевих систем, програмними засобів реалізації нейромережевих систем, способів підвищення ефективності програмних нейромережевих систем

Основні завдання навчальної дисципліни

Знання:

  • структура та властивості нейромережевих систем;

  • методи навчання нейромережевих систем;

  • бази даних для навчання нейромережевих систем;

  • ролі та місця нейромережевих систем в інформаційно-технологічному середовищі їх використання;

  • етапів проектування програмних нейромережевих систем;

  • програмних засобів реалізації нейромережевих систем;

  • способів підвищення ефективності програмних нейромережевих систем;

Уміння:

  • застосувати метод зворотного розповсюдження помилки для навчання нейронних мереж;

  • застосовуйте процедури адаптивної швидкості навчання, такі як AdaGrad, RMSprop та Adam до зворотного розповсюдження для навчання нейронних мереж;

  • застосовувати основні будівельні блоки програмного пакету Theano;

  • програмно реалізовувати нейронну мережу в Theano;

  • застосовувати основні будівельні блоки TensorFlow;

  • програмно реалізовувати нейронну мережу в TensorFlow

  • програмно реалізовувати нейронну мережу, яка добре працює на наборі даних MNIST;

  • застосовувати регуляризацію відсіву в Theano та TensorFlow;

  • застосовувати нормалізацію пакетів у Theano та Tensorflow;

  • програмно реалізовувати мережу за допомогою Keras

  • програмно реалізовувати нейронну мережу за допомогою PyTorch

  • програмно реалізовувати нейронну мережу, використовуючи CNTK

  • програмно реалізовувати нейронну мережу за допомогою MXNet.

Пререквізити та постреквізити дисципліни (місце в структурно-логічній схемі навчання за відповідною освітньою програмою)

Пререквізити: вміти користуватися комп’ютером на рівні адміністратора, вміти працювати з віртуальними машинами (створювати, налаштовувати, модифікувати), базові знання в області нейронних мереж, вміти програмувати мовою Payton.

Постреквізити: проектування та реалізація програмних засобів з використанням нейромережевих додатків.

Після проходження дисципліни студенти зможуть застосувати метод зворотного розповсюдження помилки для навчання нейронних мереж, застосовуйте процедури адаптивної швидкості навчання, такі як AdaGrad, RMSprop та Adam до зворотного розповсюдження для навчання нейронних мереж, застосовувати основні будівельні блоки програмного пакету Theano, програмно реалізовувати нейронну мережу в Theano, застосовувати основні будівельні блоки TensorFlow, програмно реалізовувати нейронну мережу в TensorFlow, програмно реалізовувати нейронну мережу, яка добре працює на наборі даних MNIST, застосовувати регуляризацію відсіву в Theano та TensorFlow, застосовувати нормалізацію пакетів у Theano та Tensorflow, програмно реалізовувати мережу за допомогою Keras, програмно реалізовувати нейронну мережу за допомогою PyTorch, програмно реалізовувати нейронну мережу, використовуючи CNTK, програмно реалізовувати нейронну мережу за допомогою MXNet..

Зміст навчальної дисципліни

1. Огляд основних концепцій. Набір даних MNIST та встановлення лінійного еталону.

2. Градієнтний спуск: повний, пакетний, стохастичний. Реалізація градієнтного спуску в коді;

3. Імпульс та швидкість адаптивного навчання: використання імпульсу для прискорення навчання; імпульс Нестерова; імпульс у коді; змінні та адаптивні темпи навчання; постійна швидкість навчання проти RMSP код у коді; оптимізація Адама; адам у коді; вікно пропозицій;

4. Вибір гіперпараметра. Оптимізація гіперпараметрів: перехресна перевірка, пошук сітки та випадковий пошук; вибірка логарифмічно; пошук сітки в коді; зміна пошуку сітки; випадковий пошук у коді.

5. Вступ до ініціалізації ваг, зникаючі та вибухові градієнти, локальні проти глобальних мінімумів.

6. Основи Theano: змінні, функції, вирази, оптимізація; побудова нейронної мережі в Theano; перспективи роботи з Theano;

7. Основи TensorFlow: змінні, функції, вирази, оптимізація; побудова нейронної мережі в TensorFlow;

8. Прискорення програмного продукту за допомогою графічного процесора. Налаштування графічного процесора на веб-сервісах Amazon, встановлення бібліотек глибокого навчання з прискореним графічним процесором NVIDIA на домашньому комп’ютері. Чи можна використовувати великі дані для прискорення зворотного розповсюдження? Як покращити ваші навички Theano та Tensorflow;

9. Розпізнавання обличчя. Вступ до проекту розпізнавання обличчя, опис проблеми розпізнавання обличчя. ШНМ на основі класу в Theano. ШНМ на основі класу в TensorFlow. Зміст проекту щодо розпізнавання обличчя.

10. Сучасні методи регуляризації. Регуляризація відсіву, інтуїція відсіву, ін’єкція шуму.

11. Нормалізація партії. Експоненціально згладжені середні показники. Теорія нормалізації партії. Тензор потоку нормалізації партії. Theano нормалізації партії; Перспектива шуму.

12. Основи Keras. Keras у коді, функціональний API Keras. Як легко перетворити Keras у код Tensorflow 2.0.

13. Основи PyTorch. Випадання PyTorch; Норма партії PyTorch.

14. PyTorch, CNTK та MXNet

15. Глибоке навчання. Яка різниця між "нейронними мережами" та "глибоким навчанням"?

16. Вибір швидкості навчання та покарання за регуляризацію вручну.

17. Як встановити Numpy, Scipy, Matplotlib, Pandas, IPython, Theano та TensorFlow

Лекційні заняття

Розділ 1. Загальні положення

Розділ 2. Нейронні мережі та їх властивості. Введення

Розділ 3. Методи навчання нейронних мереж та набори даних для навчання

Розділ 4. Введення в програмні пакети реалізації ШНМ.

Розділ 5. Основи Theano

Розділ 6. Основи TensorFlow

Розділ 7. Основи Keras

Лабораторні заняття

1. Аналіз предметної області.

2. Побудова структурної схеми нейромережевої системи.

3. Побудова моделі даних для навчання нейронної мережі.

4. Реалізація ШНМ за допомогою спеціалізованих програмних пакетів.

5. Реалізація навчання ШНМ за допомогою спеціалізованих програмних пакетів.

6. Розробка програмного продукту з використанням навченої ШНМ.

7. Підготовка звіту по розробленій нейромережевій програмній системі.

Навчальні матеріали та ресурси

Базова література

  1. Терехов В.А. Нейросетевые системы управления: Учеб.пособие для вузов. – М: Высшая школа. 2002. -183с.

  2. Саймон Хайкин. Нейронные сети. Полный курс. – М.: Вильямс, 2006. – 1104с.

  3. Сигеру Омату. Нейроуправление и его приложения. – М.: ИПРЖР, 2000. – 272с.

  4. Рутковская Д., Пилиньский М., Рутковский Л. Нейронные сети, генетические алгоритмы и нечеткие системы: Пер. с польск. И.Д. Рудинского. – М.: Горячая линия – Телеком, 2007. – 452 с.

Deep Learning with TensorFlow 2 and Keras: Regression, ConvNets, GANs, RNNs, NLP, and more with TensorFlow 2 and the Keras API, 2nd Edition Paperback – December 27, 2019. by. Antonio Gulli (Author)

Допоміжна література

  1. Кравец П.И., Шимкович В.Н. Метод оптимизации весовых коэффициентов нейронных сетей с помощью генетического алгоритма при реализации на программируемых логических интегральных схемах / Международный научно-технический журнал «Электронное моделирование». – 2013. – 35, №3. – С. 65-75.

  2. Li, Zewen & Yang, Wenjie & Peng, Shouheng & Liu, Fan. (2020). A Survey of Convolutional Neural Networks: Analysis, Applications, and Prospects.

  3. Chen, Xiaoxue & Jin, Lianwen & Zhu, Yuanzhi & Luo, Canjie & Wang, Tianwei. (2020). Text Recognition in the Wild: A Survey.

  4. Yang YX, Wen C, Xie K, Wen FQ, Sheng GQ, Tang XG. Face Recognition Using the SR-CNN Model. Sensors (Basel). 2018;18(12):4237. Published 2018 Dec 3. doi:10.3390/s18124237

  5. Kocić J, Jovičić N, Drndarević V. An End-to-End Deep Neural Network for Autonomous Driving Designed for Embedded Automotive Platforms. Sensors. 2019; 19(9):2064.

    1. Kumar, S. Verma and H. Mangla, "A Survey of Deep Learning Techniques in Speech Recognition," 2018 International Conference on Advances in Computing, Communication Control and Networking (ICACCCN), Greater Noida (UP), India, 2018, pp. 179-185, doi: 10.1109/ICACCCN.2018.8748399.
  6. Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N. Gomez, Łukasz Kaiser, Illia Polosukhin Attention is All you Need. Part of Advances in Neural Information Processing Systems 30 (NIPS 2017)

  7. ThierryBouwmans, SajidJaved, Soon KiJung. Deep neural network concepts for background subtraction:A systematic review and comparative evaluation. Neural Networks. Volume 117, September 2019, Pages 8-66

Навчальний контент

Методика опанування навчальної дисципліни (освітнього компонента)

Лекційні заняття

№ з/п Назва теми лекції та перелік основних питань
(перелік дидактичних засобів, посилання на літературу та завдання на СРС)
1

Тема 1.1. Структура та зміст курсу. РСО.

Тема 1.2. Загальні поняття дисципліни. Типи штучних нейронних мереж.

Лекція 1. Вступ. Загальні поняття. Штучний нейрон. Типи штучних нейронних мереж.

Структура дисципліни «Програмні засоби проектування та реалізації нейромережевих систем», РСО. Загальні поняття галузі штучних нейронних мереж. Властивості ШНМ. Структура та принцип дії штучного нейрона. Типи штучних нейронних мереж.

Література: [2, Гл.1], [3, Гл.1]

Завдання на СРС. Рекурентні нейронні мережі – загальні поняття, види, моделі.

2

Тема 1.3. Огляд основних концепцій.

Тема 2.1. Набір даних MNIST.

Лекція 2. Огляд основних концепцій. Набір даних MNIST та встановлення лінійного еталону.

Огляд основних концепцій побудови нейромережевих систем. Огляд та аналіз бази даних MNIST, аналіз результатів навчання на цій базі різних типів ШНМ.

Література: [1, Гл.1], [3, Гл.1]

Завдання на СРС. Бази Iris, CIFAR-10, ImageNet, ADE20K, Coco, Fashion-MNIST, Boston housing – детальний розгляд, порівняльний аналіз застосування в різних системах

3

Тема 2.2. Імпульс та швидкість адаптивного навчання.

Лекція 3. Імпульс та швидкість адаптивного навчання.

Імпульс та швидкість адаптивного навчання: використання імпульсу для прискорення навчання; імпульс Нестерова; імпульс у коді; змінні та адаптивні темпи навчання; постійна швидкість навчання проти RMSP код у коді;

Література: [1, Гл.1.1.2; Гл.3], [3, Гл.1]

Завдання на СРС. Оптимізація Адама, адам у коді, вікно пропозицій.

4

Тема 3.1. Вибір гіперпараметра

Лекція 4. Вибір гіперпараметра та оптимізація гіперпараметрів

Вибір гіперпараметра. Оптимізація гіперпараметрів: перехресна перевірка, пошук сітки та випадковий пошук; вибірка логарифмічно; пошук сітки в коді; зміна пошуку сітки; випадковий пошук у коді.

Література: [1, Гл.5], [3, Гл.6]

5

Тема 3.2. Навчання нейронних мереж.

Лекція 5. Методи навчання ШНМ.

Вступ до ініціалізації ваг, зникаючі та вибухові градієнти, локальні проти глобальних мінімумів.

Література: [1, Гл.14], [3, Гл.6;Гл.9], [6, Гл.2]

Завдання для СРС. Порівняння програмних реалізацій методів навчання і їх швидкості.

6

Тема 3.3. Основи Theano

Лекція 6. Основи Theano.

Основи Theano: змінні, функції, вирази, оптимізація; побудова нейронної мережі в Theano; перспективи роботи з Theano;

Література: [1, Гл.5;Гл.6], [3, Гл.10], [6, Гл.3;Гл.4]

Завдання для СРС. Огляд та аналіз побудованих нейромережевих систем в програмному пакеті Theano.

7

Тема 3.4. Основи TensorFlow.

Лекція 7. Основи TensorFlow.

Основи TensorFlow: змінні, функції, вирази, оптимізація; побудова нейронної мережі в TensorFlow;

Література: [1, Гл.12], [2, Л.6], [3, Гл.9]

Завдання для СРС. Огляд та аналіз побудованих нейромережевих систем в програмному пакеті TensorFlow.

8

Тема 4.1. Реалізація нейромережевих систем на паралельних обчислювальних системах.

Лекція 8. Реалізація нейромережевих систем на паралельних обчислювальних системах.

Прискорення програмного продукту за допомогою графічного процесора. Налаштування графічного процесора на веб-сервісах Amazon, встановлення бібліотек глибокого навчання з прискореним графічним процесором NVIDIA на домашньому комп’ютері. Чи можна використовувати великі дані для прискорення зворотного розповсюдження?

Література: [1, Гл.1;Гл.4], [2, Гл.4;Гл.5]

Завдання для СРС. Прискорення роботи пакетів Theano та Tensorflow на GPU;

9

Тема 4.2. Розпізнавання обличчя.

Лекція 9. Розпізнавання обличчя.

Вступ до проекту розпізнавання обличчя, опис проблеми розпізнавання обличчя. ШНМ на основі класу в Theano. ШНМ на основі класу в TensorFlow. Зміст проекту щодо розпізнавання обличчя.

Завдання для СРС. Огляд та аналіз програмних нейромережевих проектів по реалізації систем розпізнавання облич.

10

Тема 5.1. Сучасні методи регуляризації

Лекція 10. Сучасні методи регуляризації.

Сучасні методи регуляризації. Регуляризація відсіву, інтуїція відсіву, ін’єкція шуму.

Література: [7, Гл.2]

11

Тема 5.2. Нормалізація партії.

Лекція 11. Нормалізація партії.

Експоненціально згладжені середні показники. Теорія нормалізації партії. Тензор потоку нормалізації партії. Theano та TensorFlow нормалізації партії; Література: [7, Гл.4]

Завдання для СРС. Самостійно опанувати матеріали по перспективах шуму.

12

Тема 5.3. Основи Keras.

Лекція 12. Основи Keras.

Основи Keras. Keras у коді, функціональний API Keras. Як легко перетворити Keras у код Tensorflow 2.0.

Література: [7, Гл.2;3]

Завдання для СРС. Огляд та аналіз побудованих нейромережевих систем в програмному пакеті Keras.

13

Тема 6.1. Основи PyTorch.

Лекція 13. Основи PyTorch.

Випадання PyTorch; Норма партії PyTorch.

Література: [1, Гл.9], [2, Л.9], [3, Гл.10], [7, Гл.11]

Завдання для СРС. Огляд та наліз програмних продуктів реалізації нейромережевих систем CNTK та MXNet

14

Тема 6.3. Глибокі нейронні мережі

Лекція 14. Глибокі нейронні мережі та їх навчання

Огляд та аналіз глибоких нейронних мереж. Методів їх навчання та програмних додатків з застосуванням глибоких нейронних мереж.

Література: [1, Гл.4], [2, Л.13]

Завдання для СРС. Різниця між "нейронними мережами" та "глибоким навчанням"?

15

Лекція 15. Модульна контрольна робота

На контрольну роботу виноситься увесь попередній матеріал.

Завдання включають теоретичну частину, тестове питання та практичну частини.

Завдання для СРС. Повторити матеріал 1-14 лекцій.

16

Тема 7.1. Вибір швидкості навчання та покарання за регуляризацію вручну.

Лекція 16. Вибір швидкості навчання

Вибір швидкості навчання та покарання за регуляризацію вручну.

Література: [7, Гл.10]

Завдання для СРС. Методи навчання нейронних мереж

17

Тема 7.2. Мережі трансформери

Лекція 17. Мережі трансформери

Мережі трансформери. Структура нейронних мереж трансформерів, їх сфера застосування, набори даних. Огляд та аналіз програмних застосунків з мережами трансформерами.

Література: [7, Гл.10], [8]

Завдання для СРС. Механізм уваги для виявлення глобальних залежностей між вхідними даними і вихідними даними

18

Тема 7.3. Робота з програмними додатками

Лекція 18. Робота з програмними додатками.

Як встановити Numpy, Scipy, Matplotlib, Pandas, IPython, Theano та TensorFlow.

Література: [7, Гл.8]

Завдання для СРС. Самостійно потренуватись та опанувати функції програмних додатків проектування та реалізації нейронних мереж

**
**

Лабораторні заняття

Назва лабораторної роботи Кількість ауд. годин
1

Лабораторна робота 1. Аналіз предметної області.

Необхідно проаналізувати, знайти відповідний матеріал для заданої теми предметної області. Результатом проведеної роботи повинні бути опис предметної області мінімум на п’ять сторінок А4.

Література: [3, Гл.2]

4
2

Лабораторна робота 2. Побудова структурної схеми нейромережевої системи.

За отриманими даними з лабораторної роботи №1 необхідно побудувати структурну схему нейромережевої системи.

Література: [3, Гл.2]

2
3

Лабораторна робота 3. Побудова моделі даних для навчання нейронної мережі.

Створення бази навчальних даних для нейронної мережі. Виявлення інформативних ознак. Початкова обробка даних і їх підготовка для реалізації програмного навчання нейромережі.

Література: [3, Гл.6]

2
4

Лабораторна робота 4. Реалізація ШНМ за допомогою спеціалізованих програмних пакетів.

Реалізація нейронної мережі за допомогою програмних пакетів Theano, TensorFlow та Keras.

Література: [7]

2
5

Лабораторна робота 5. Реалізація навчання ШНМ за допомогою спеціалізованих програмних пакетів.

Реалізувати програмно алгоритм навчання використовуючи зібрані дані в лабораторній №3 навчити реалізовану в лабораторній роботі №4.

Література: [7], [8]

2
6

Лабораторна робота 6. Розробка програмного продукту з використанням навченої ШНМ..

Розробити програмний продукт за структурною схемою в лабораторній №2 з використанням навченої нейронної мережі

Література: [7]

4
7

Лабораторна робота 7. Підготовка звіту по лабораторному проекту.

Підготовка звіту по лабораторному проекту, в який має ввійти аналіз предметної галузі застосування програмних систем з нейронними мережами, структурна схема та її опис нейромережевої системи, що проектується в лабораторному практикумі. Код програми з описом та коментарями, скріншоти роботи розробленої програми.

2

Самостійна робота студента/аспіранта

№ з/п

Назва теми, що виноситься на самостійне опрацювання Кількість годин СРС
1 Рекурентні нейронні мережі – загальні поняття, види, моделі. 2
2 Бази Iris, CIFAR-10, ImageNet, ADE20K, Coco, Fashion-MNIST, Boston housing – детальний розгляд, порівняльний аналіз застосування в різних системах 2
3 Створення бази навчальних даних для нейронної мережі. 4
4 Порівняння програмних реалізацій методів навчання і їх швидкості. 4
5 Огляд та аналіз побудованих нейромережевих систем в програмному пакеті Theano. 2
6 Огляд та аналіз побудованих нейромережевих систем в програмному пакеті TensorFlow. 2
7 Прискорення роботи пакетів Theano та Tensorflow на GPU 4
8 Огляд та аналіз програмних нейромережевих проектів по реалізації систем розпізнавання облич. 4
9 Самостійно опанувати матеріали по перспективах шуму. 4
10 Огляд та аналіз побудованих нейромережевих систем в програмному пакеті Keras. 4
11 Огляд та наліз програмних продуктів реалізації нейромережевих систем CNTK та MXNet 8
12 Різниця між "нейронними мережами" та "глибоким навчанням"? 2
13 Методи навчання нейронних мереж 4
14 Механізм уваги для виявлення глобальних залежностей між вхідними даними і вихідними даними 4
15 Самостійно потренуватись та опанувати функції програмних додатків проектування та реалізації нейронних мереж 2
16 Підготовка до заліку по всьому матеріалу модуля. 10

Політика та контроль

Політика навчальної дисципліни (освітнього компонента)

Система вимог, які ставляться перед студентом:

  • відвідування лекційних та лабораторних занять є обов’язковою складовою вивчення матеріалу;

  • на лекції викладач користується власним презентаційним матеріалом; використовує гугл-диск для викладання матеріалу поточної лекції, додаткових ресурсів, лабораторних робіт та інше; викладач відкриває доступ до певної директорії гугл-диска для скидання електронних лабораторних звітів та відповідей на МКР;

  • на лекції заборонено відволікати викладача від викладання матеріалу, усі питання, уточнення та ін. студенти задають в кінці лекції у відведений для цього час;

  • лабораторні роботи захищаються у два етапи – перший етап: студенти виконують завдання на допуск до захисту лабораторної роботи; другий етап – захист лабораторної роботи. Бали за лабораторну роботу враховуються лише за наявності електронного звіту;

  • модульні контрольні роботи пишуться на лекційних заняттях без застосування допоміжних засобів (мобільні телефони, планшети та ін.); результат пересилається у файлі до відповідної директорії гугл-диску;

  • заохочувальні бали виставляються за: активну участь на лекціях; участь у факультетських та інститутських олімпіадах з навчальних дисциплін, участь у конкурсах робіт, підготовка оглядів наукових праць; презентацій по одній із тем СРС дисципліни тощо. Кількість заохочуваних балів на більше 10;

  • штрафні бали виставляються за: невчасну здачу лабораторної роботи. Кількість штрафних балів не більше 10.

Види контролю та рейтингова система оцінювання результатів навчання (РСО)

Рейтинг студента з дисципліни складається з балів, що він отримує за:

  1. виконання та захист 7 лабораторних робіт;

  2. виконання модульньної контрольної робіти (МКР);

  3. заохочувальні та штрафні бали.

Система рейтингових балів та критерії оцінювання

Лабораторні роботи:

«відмінно», повна відповідь на питання під час захисту (не менш ніж 90% потрібної інформації) та оформлений належним чином електронний протокол до лабораторної роботи – 10 балів;

«добре», достатньо повна відповідь на питання під час захисту (не менш ніж 75% потрібної інформації) та оформлений належним чином електронний протокол до лабораторної роботи – 9/7 бали;

«задовільно», неповна відповідь на питання під час захисту (не менш ніж 60% потрібної інформації), незначні помилки та оформлений належним чином електронний протокол до лабораторної роботи – 6/5 бал;

«незадовільно», незадовільна відповідь та/або не оформлений належним чином електронний протокол до лабораторної роботи – 0 балів.

За кожне заняття запізнення з поданням лабораторної роботи до захисту від встановленого терміну оцінка знижується на 1 бал.

Модульні контрольні роботи:

«відмінно», повна відповідь (не менш ніж 90% потрібної інформації) – 10 балів;

«добре», достатньо повна відповідь (не менш ніж 75% потрібної інформації), або повна відповідь з незначними помилками – 7-9 балів;

«задовільно», неповна відповідь (але не менш ніж 60% потрібної інформації) та незначні помилки – 1-6 бали;

«незадовільно», незадовільна відповідь (неправильний розв’язок задачі), потребує обов’язкового повторного написання в кінці семестру – 0 балів.

Заохочувальні бали

– за виконання творчих робіт з кредитного модуля (наприклад, участь у факультетських та інститутських олімпіадах з навчальних дисциплін, участь у конкурсах робіт, підготовка оглядів наукових праць тощо); за активну роботу на лекції (питання, доповнення, зауваження за темою лекції, коли лектор пропонує студентам задати свої питання) 1-2 бали, але в сумі не більше 10;

– презентації по СРС – від 1 до 5 балів.

Міжсесійна атестація

За результатами навчальної роботи за перші 7 тижнів максимально можлива кількість балів – 20 балів (2 лабораторні). На першій атестації (8-й тиждень) студент отримує «зараховано», якщо його поточний рейтинг не менший ніж 10 балів.

За результатами 13 тижнів навчання максимально можлива кількість балів – 70 балів (4 лабораторні, МКР). На другій атестації (14-й тиждень) студент отримує «зараховано», якщо його поточний рейтинг не менший ніж 40 балів.

Максимальна сума вагових балів контрольних заходів протягом семестру складає:

RD = 7*rлаб+rмкр=7*10+30 (rз - rш)=100 + (rз - rш),

де rлаб – бал за лабораторну роботу (0…10);

rмкр – бал за написання МКР (0…30);

rз – заохочувальні бали за активну участь на лекціях, презентації, участь в олімпіадах, конкурсі роботи, наукові роботи за тематикою дисципліни (0…10);

rзш – штрафні бали.

Залік:

Умовою отримання заліку є зарахування всіх лабораторних робіт, написання модульних контрольних робіт та стартовий рейтинг не менше 42 бали.

На заліку студенти виконують письмову контрольну роботу. Кожен білет містить три теоретичних запитання (завдання). Перелік теоретичних питань наведений у додатку 1. Кожне запитання (завдання) оцінюється у 15 балів.

Система оцінювання питань:

«відмінно», повна відповідь, не менше 90% потрібної інформації, що виконана згідно з вимогами до рівня «умінь», (повне, безпомилкове розв’язування завдання) – 14-15 балів;

«добре», достатньо повна відповідь, не менше 75% потрібної інформації, що виконана згідно з вимогами до рівня «умінь або є незначні неточності (повне розв’язування завдання з незначними неточностями) – 10-14 балів;

«задовільно», неповна відповідь, не менше 60% потрібної інформації, що виконана згідно з вимогами до «стереотипного» рівня та деякі помилки (завдання виконане з певними недоліками) – 7-9 бали;

«незадовільно», відповідь не відповідає умовам до «задовільно» – 0-6 балів.

Сума балів за залікову контрольну роботу переводиться до залікової оцінки згідно з таблицею:

Таблиця 1. Переведення рейтингових балів до оцінок за університетською шкалою

Кількість балів Оцінка
100-95 Відмінно
94-85 Дуже добре
84-75 Добре
74-65 Задовільно
64-60 Достатньо
Менше 60 Незадовільно

Є не зараховані лабораторні роботи або

не зарахована модульна контрольна робота

Не допущено

Додаткова інформація з дисципліни (освітнього компонента)

  • перелік теоретичних питань, які виносяться на семестровий контроль наведено в Додатку 1;

  • на початку семестру викладач аналізує існуючі курси по тематиці дисципліни та пропонує пройти відповідні безкоштовні курси студентам. Після отриманням студентом сертифікату проходження дистанційних чи онлайн курсів за відповідною тематикою, викладач закриває відповідну частину курсу (лабораторні чи лекції) за попередньою домовленістю з групою.

Робочу програму навчальної дисципліни (Силабус):

Складено старший викладач, Шимкович Володимир Миколайович

Ухвалено кафедрою АУТС (протокол № 1 від 27.08.2020 р.)

Погоджено Методичною комісією факультету[1] (протокол № 1 від 02.09.2020 р.)

Додаток 1

Перелік теоретичних питань на залік по першій частині курсу

1. Властивості штучних нейронних мереж.

2. Структура та опис штучного нейрона.

3. Функції активації штучного нейрона.

4. Види штучних нейронних мереж

5. Нейронна мережа прямого розповсюдження, її архітектура та властивості.

6. Рекурентні нейронні мережі їх структура, функції активації та властивості.

7. Радіально-базистні нейронні мережі їх структура, функції активації та властивості.

8. Нейронна мережа Парцептрон. Структура, функції активації та властивості.

9. Набір даних для навчання нейронних мереж MNIST та встановлення лінійного еталону.

10. Бази Iris, CIFAR-10, ImageNet, ADE20K,– детальний розгляд, порівняльний аналіз застосування в різних системах.

11. Coco, Fashion-MNIST, Boston housing – детальний розгляд, порівняльний аналіз застосування в різних системах.

12. Принцип створення навчальних баз даних для нейронних мереж. Вибір інформативних ознак.

13. Імпульс та швидкість адаптивного навчання: використання імпульсу для прискорення навчання.

14. Імпульс Нестерова; імпульс у коді; змінні та адаптивні темпи навчання.

15. Постійна швидкість навчання проти RMSP код у коді.

16. Оптимізація Адама, адам у коді, вікно пропозицій.

18. Вибір гіперпараметра.

19. Оптимізація гіперпараметрів: перехресна перевірка, пошук сітки та випадковий пошук, вибірка логарифмічно, пошук сітки в коді, зміна пошуку сітки, випадковий пошук у коді.

20. Загальна характеристика Методів навчання ШНМ.

21. Зникаючі та вибухові градієнти в методах навчання ШНМ.

22. Локальні проти глобальних мінімумів в методах навчання ШНМ.

23. Порівняння програмних реалізацій методів навчання і їх швидкості.

24. Основи Theano: змінні, функції, вирази, оптимізація.

25. побудова нейронної мережі в Theano.

26. Огляд та аналіз побудованих нейромережевих систем в програмному пакеті Theano.

27. Основи TensorFlow: змінні, функції, вирази, оптимізація.

28. Побудова нейронної мережі в TensorFlow.

29. Огляд та аналіз побудованих нейромережевих систем в програмному пакеті TensorFlow.

28. Реалізація нейромережевих систем на паралельних обчислювальних системах.

29. Прискорення програмного продукту за допомогою графічного процесора.

30. Чи можна використовувати великі дані для прискорення зворотного розповсюдження?

31. Прискорення роботи пакетів Theano та Tensorflow на GPU.

32. Опис проблеми розпізнавання обличчя.

33. ШНМ на основі класу в Theano.

34. ШНМ на основі класу в TensorFlow.

35. Зміст проекту щодо розпізнавання обличчя.

36. Огляд та аналіз програмних нейромережевих проектів по реалізації систем розпізнавання облич.

37. Сучасні методи регуляризації..

38. Регуляризація відсіву, інтуїція відсіву, ін’єкція шуму.

39. Теорія нормалізації партії.

40. Експоненціально згладжені середні показники.

41. Тензор потоку нормалізації партії.

42. Theano та TensorFlow нормалізації партії.

43. Основи Keras.

44. Keras у коді, функціональний API Keras.

45. Як легко перетворити Keras у код Tensorflow 2.0.

46. Огляд та аналіз побудованих нейромережевих систем в програмному пакеті Keras.

47. Основи PyTorch.

48. Випадання PyTorch;

49. Норма партії PyTorch.

50. Огляд та наліз програмних продуктів реалізації нейромережевих систем CNTK

51. Огляд та наліз програмних продуктів реалізації нейромережевих систем MXNet

52. Види глибоких нейронних мереж.

53. Відмінності глибокого навчання та ШНМ.

54. Згорткові нейронні мережі, їх архітектура, принцип дії, властивості.

55. Глибокі ймовірнісні нейронні мережі, їх архітектура, принцип дії, властивості.

56. Глибокі нечіткі нейронні мережі, їх архітектура, принцип дії, властивості.

57. Генеративні змагальні мережі, їх архітектура, принцип дії, властивості.

58. Мережі глибокого автоматичного кодування, їх архітектура, принцип дії, властивості.

59. Глибокі згорткові нейронні мережі.

60. Паралелізація обчислень при реалізації згорткових нейронних мереж.

61. Методи навчання глибоких нейронних мереж їх загальна характеристика.

62. Вибір швидкості навчання при програмній реалізації.

63. Покарання за регуляризацію вручну швидкості.

64. Структура нейронних мереж трансформерів

65. Сфера застосування нейронних мереж трансформерів

66. Огляд та аналіз програмних застосунків з мережами трансформерами

67. Механізм уваги для виявлення глобальних залежностей між вхідними даними і вихідними даними

[1] Методичною радою університету – для загальноуніверситетських дисциплін.