Кафедра радіотехнічних систем

[RE-160] Машинне навчання в радіотехнічних комп'ютеризованих системах

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

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

Рівень вищої освітиДругий (магістерський)
Галузь знань17 - Електроніка та телекомунікації
Спеціальність172 - Телекомунікації та радіотехніка
Освітня програма172Мп РКС - Радіотехнічні комп'ютеризовані системи (ЄДЕБО id: 49258)172Мн РКС - Радіотехнічні комп'ютеризовані системи (ЄДЕБО id: 49259)172Мн РЕІ - Радіоелектронна інженерія (ЄДЕБО id: 53272)172Мн РЕІ+ - Радіоелектронна інженерія (ЄДЕБО id: 57919)172Мп РКС+ - Радіотехнічні комп'ютеризовані системи (ЄДЕБО id: 57922)
Статус дисципліниНормативна
Форма здобуття вищої освітиОчна
Рік підготовки, семестр1 курс, осінній семестр
Обсяг дисципліни4 кред. (Лекц. 36 год, Практ. год, Лаб. 18 год, СРС. 66 год )
Семестровий контроль/контрольні заходиЗалік
Розклад занятьhttps://rozklad.kpi.ua
Мова викладанняУкраїнська
Інформація про керівника курсу / викладачів Лекц.: Могильний С. Б.,
Лаб.: Могильний С. Б.,
СРС.: Могильний С. Б.
Розміщення курсуhttp://iot.kpi.ua/lms/course/view.php?id=6

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

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

1.1. Опис навчальної дисципліни

Навчальна дисципліна складається з двох розділів:

  • Розділ 1. «Основи машинного навчання: алгоритми, галузі застосування».
  • Розділ 2. «Використання мови програмування Python та фреймворку TensorFlow для реалізації алгоритмів машинного навчання» .

1.2. Мета навчальної дисципліни

Метою навчальної дисципліни є підготовка фахівця, який має базові компетенції з вибору алгоритмів машинного навчання, особливостей їх застосування: навчання та перевірки ефективності роботи, формування теоретичних та практичних знань у галузі машинного навчання

Метою навчальної дисципліни є формування у студентів компетентностей:

  • ФК5. Здатність використовувати інформаційні технології, методи інтелектуалізації та візуалізації, штучного інтелекту для дослідження та аналізу процесів в радіотехнічних системах.
  • ФК7. Здатність демонструвати та застосовувати на практиці знання методів моделювання динамічних систем, оцінки ефективності радіотехнічних систем.
  • ФК16. Здатність виконувати розробку радіотехнічних систем на основі технологій машинного навчання, аналізувати та обґрунтовувати підходи до використання машинного навчання в радіотехнічних комп’ютеризованих системах.
  • ФК17. Здатність вибирати ефективні алгоритми побудови підсистем машинного навчання, розраховувати та проєктувати їх на сучасному програмному забезпеченні.

1.3. Предмет вивчення дисципліни

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

1.4. Програмні результати навчання

ПРН 18 Вміти формалізувати постановки прикладних завдань аналізу даних, застосовувати на практиці алгоритми машинного навчання; обґрунтувати застосування того чи іншого алгоритму машинного навчання для вирішення конкретного завдання, оцінювати точність та ефективність отриманих рішень.
Володіти навичками практичного розв'язання задач аналізу великих даних, програмно реалізовувати алгоритми машинного навчання.

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

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

Перелік дисциплін,
які базуються на результатах навчання з даної дисципліни

Дисципліна вивчається на основі предметів цифрових технологій та програмування: «Інформатика», «Вбудовані системи»

  • Наукова робота за темою магістерської дисертації
  • Практика

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

Розділ 1. Основи машинного навчання: галузі застосування, алгоритми

Тема 1. Вступ: завдання, класифікація алгоритмів машинного навчання.

Тема 2. Регресія.

Тема 3. Штучні нейронні мережі.

Тема 4. Дерева рішень.

Тема 5. Алгоритм AdaBoost.

Тема 6. Автоенкодери.

Тема 7. Кластеризація і класифікація.

Розділ 2. Використання мови програмування Python та фреймворку TensorFlow для реалізації алгоритмів машинного навчання

Тема 8. Фреймворк TensorFlow.

Тема 9. Реалізація штучної нейронної мережі на Python.

Тема 10. Згорткові нейронні мережі.

Тема 11. Рекурентні нейронні мережі.

Тема 12. Реалізація машинного навчання на мікрокомп’ютерах.

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

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

  1. Могильний С.Б. Машинне навчання з використанням мікрокомп’ютерів: навч.-метод. посіб. \ за ред. О.В.Лісового та ін. – К., 2019. – 224 с. (Електронна версія http://isearch.kiev.ua/uk/book/1955-machine-learning-using-microcomputers)
  2. Могильний С.Б. Машинне навчання в радіотехнічних комп’ютеризованих системах: Лабораторний практикум [Електронний ресурс]: навч. посіб. для студ. спеціальності 172 «Електронні комунікації та радіотехніка» / С.Б.Могильний; КПІ ім. Ігоря Сікорського. – Електронні текстові дані (1 файл: 3,26 Мбайт). – Київ: КПІ ім. Ігоря Сікорського, 2023. – 175 с. – Назва з екрана. https://ela.kpi.ua/handle/123456789/57240
  3. Машинне навчання: комп’ютерний практикум з дисципліни «Машинне навчання» [Електронний ресурс]: навч. посіб. для студ. спеціальності 121 «Інженерія програмного забезпечення» /Л.М. Олещенко; КПІ ім. Ігоря Сікорського. – Київ: КПІ ім. Ігоря Сікорського, 2022. – 92 с.
  4. Кононова К. Ю. Машинне навчання: методи та моделі: підручник для бакалаврів, магістрів та докторів філософії спеціальності 051 «Економіка» / К. Ю. Кононова. – Харків: ХНУ імені В. Н. Каразіна, 2020. – 301 с.
  5. Т. М. Басюк, В. В. Литвин, Л. М. Захарія, Н. Е. Кунанець. Машинне навчання: Навчальний посібник. - Львів: Видавництво «Новий Світ - 2000», 2019. ‒ 315 с.

Додаткова література:

  1. Tensorboard Tutorial: Graph Visualization with Example [Електронний ресурс]: — Режим доступу: https://www.guru99.com/tensorboard-tutorial.html  — Назва з екрана.
  2. Cheat Sheets for AI, Neural Networks, Machine Learning, Deep Learning & Big Data [Електронний ресурс]: Stefan Kojouharov — Режим доступу: https://becominghuman.ai/cheat-sheets-for-ai-neural-networks-machine-learning-deep-learning-big-data-678c51b4b463  — Назва з екрана.
  3. What is TensorFlow? Introduction, Architecture & Example [Електронний ресурс]: — Режим доступу: https://www.guru99.com/what-is-tensorflow.html  — Назва з екрана.
  4. How to Download and Install TensorFLow Windows and Mac [Електронний ресурс]: — Режим доступу: https://www.guru99.com/download-install-tensorflow.html  — Назва з екрана.
  5. Anaconda Distribution [Електронний ресурс]: — Режим доступу: https://www.anaconda.com/download/  — Назва з екрана.
  6. Jupyter Notebook Tutorial: How to use with AWS [Електронний ресурс]: — Режим доступу: https://www.guru99.com/jupyter-notebook-tutorial.html  — Назва з екрана.
  7. Installing Machine Learning Software TensorFlow on Raspberry Pi [Електронний ресурс]: Rishabh Jain — Режим доступу: https://circuitdigest.com/microcontroller-projects/intalling-machine-learning-software-tensorflow-on-raspberry-pi  — Назва з екрана.
  8. Tensorflow - 2.0 [Електронний ресурс]: — Режим доступу: https://github.com/lhelontra/tensorflow-on-arm/releases  — Назва з екрана.
  9. TensorFlow Basics: Tensor, Shape, Type, Graph, Sessions & Operators [Електронний ресурс]: — Режим доступу: https://www.guru99.com/tensor-tensorflow.html  — Назва з екрана.
  10. Python Pandas Tutorial: Dataframe, Date Range, Slice [Електронний ресурс]: — Режим доступу: https://www.guru99.com/python-pandas-tutorial.html  — Назва з екрана.
  11. Linear Regression with TensorFlow [Examples] [Електронний ресурс]: — Режим доступу: https://www.guru99.com/linear-regression-tensorflow.html  — Назва з екрана.
  12. Linear Classifier in TensorFlow: Binary Classification Example. [Електронний ресурс]: — Режим доступу: https://www.guru99.com/linear-classifier-tensorflow.html  — Назва з екрана.
  13. TensorFlow Image Classification: CNN (Convolutional Neural Network). [Електронний ресурс]: — Режим доступу: https://www.guru99.com/convnet-tensorflow-image-classification.html  — Назва з екрана.

 

Інформаційні ресурси Інтернету:

  1. Сайт Академії Mikrotik https://mikrotik.kpi.ua/index.php/courses-list/category-raspberry  https://mikrotik.kpi.ua/index.php/courses-list/ml
  2. Персональний сайт викладача: - http://isearch.kiev.ua/
  3. Сайт дистанційного навчання на платформі Moodle Академії Mikrotik: - http://iot.kpi.ua/lms/
  4. Платформа дистанційного навчання «Сікорський»: - https://www.sikorsky-distance.org

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

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

5.1. Розподіл занять за темами

Розділ 1. Основи машинного навчання: галузі застосування, алгоритми

Тема 1.

Лекція 1. Огляд завдань, які вирішуються алгоритмами машинного навчання, та класифікація алгоритмів машинного навчання.

Тема 2.

Лекція 2. Лінійна регресія.

Лекція 3. Програмна реалізація алгоритму лінійної регресії.

Лекція 4. Логістична регресія.

Лекція 5. Підготовка даних для машинного навчання.

Тема 3.

Лекція 6. Структура нейрона та нейронної мережі.

Тема 4.

Лекція 7. Структура дерев рішень, приклади реалізації.

Тема 5.

Лекція 8. Математичне обґрунтування алгоритму AdaBoost.

Тема 6.

Лекція 9. Алгоритм автоенкодера.

Тема 7.

Лекція 10. Алгоритми кластеризації та з програмною реалізацією алгоритму k-means.

Розділ 2. Використання мови програмування Python та фреймворку TensorFlow для реалізації алгоритмів машинного навчання

Тема 8.               

Лекція 11. Встановлення TensorFlow на Windows.

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

Лекція 13. Використання блокнота Jupyter.

  • Лабораторна робота 1. Встановлення TensorFlow на Windows та використання блокнота Jupyter.
  • Лабораторна робота 2. Використання бібліотеки Pandas Python для роботи з даними.
  • Лабораторна робота 3. Бібліотека NumPy.
  • Лабораторна робота 4. Реалізація лінійної регресії на Python.

Тема 9.               

Лекція 14. Штучна нейронна мережа з одним входом і одним виходом.

Лекція 15. Штучна нейронна мережа з довільною кількістю входів.

  • Лабораторна робота 5. Побудова штучної нейронної мережі з TensorFlow.
  • Лабораторна робота 6. Початок роботи з Keras, Deep Learning і Python.

Тема 10. Лекція 16. Згорткові нейронні мережі: алгоритми та програмна реалізація.

  •  Лабораторна робота 7. Навчання згорткової нейронної мережі з Keras.

Тема 11. Лекція 17. Рекурентні нейронні мережі.

  • Лабораторна робота 8. Класифікатор зображень з використанням алгоритму k-NN.

Тема 12.

Лекція 18. API для розпізнавання об’єктів з Raspberry Pi та TensorFlow.

  • Лабораторна робота 9. Ввикористання мікрокомп’ютера Raspberry Pi для машинного навчання.

Модульна контрольна робота (тести при дистанційному навчанні):

1. За темами 1-6

Підготовка до заліку

Залік

5.2. Методика опанування

Лекції

Розділ 1. Основи машинного навчання: галузі застосування, алгоритми

Лекція 1. Огляд завдань, які вирішуються алгоритмами машинного навчання, та класифікація алгоритмів машинного навчання

Зміст лекції:

  1. Основні тренди року в галузі штучного інтелекту та машинного навчання.
  2. Огляд завдань, які вирішуються алгоритмами машинного навчання.
  3. Завдання класифікації, відновлення регресії, ранжування, кластеризації, пошуку асоціацій.
  4. Класифікація алгоритмів машинного навчання

Лекція 2. Лінійна регресія

Зміст лекції:

  1. Алгоритм лінійної регресії.
  2. Структура та процедура.
  3. Результати з Excel.

Лекція 3. Програмна реалізація алгоритму лінійної регресії

Зміст лекції:

  1. Машинне навчання за допомогою scikit-learn.
  2. Приклад прогнозування за допомого лінійної регресії.
  3. Врахування інтерактивних ефектів.
  4. Врахування нелінійних зв’язків за допомогою поліноміальної регресії.
  5. Регуляризація.
  6. Зменшення дисперсії за допомогою регуляризації.
  7. Зменшення кількості ознак за допомогою Lasso-регресії.

Лекція 4. Логістична регресія

Зміст лекції:

  1. Визначення логістичної моделі.
  2. Цільова функція логістичної регресії.
  3. Регуляризація логістичної регресії.

Лекція 5. Підготовка даних для машинного навчання.

Зміст лекції:

  1. Попереднє оброблення даних.
  2. Нормалізація.
  3. Стандартизація.
  4. Бінаризація.

Лекція 6. Структура нейрона та нейронної мережі

Зміст лекції:

  1. Структура нейрона.
  2. Структура нейронної мережі.
  3. Функції активації.
  4. Поняття про глибоке навчання.
  5. Навчання нейронної мережі за допомогою алгоритму зворотного розповсюдження помилки.

Лекція 7. Структура дерев рішень, приклади реалізації

Зміст лекції:

  1. Приклади дерева рішень.
  2. Навчання дерева рішень.
  3. Алгоритми побудови дерева рішень.
  4. Алгоритм Random Forest.
  5. Бустинг та бегінг.

Лекція 8. Математичне обґрунтування алгоритму AdaBoost

Зміст лекції:

  1. Опис алгоритму AdaBoost.
  2. Математичне обґрунтування алгоритму.
  3. Каскад класифікаторів.
  4. Програмна реалізація алгоритму AdaBoost.

Лекція 9. Алгоритм автоенкодера

Зміст лекції:

  1. Типи архітектури та області застосування.
  2. Багатошаровий автоенкодер.
  3. Згорткові автоенкодери.

Лекція 10. Алгоритми кластеризації та з програмною реалізацією алгоритму k-means

Зміст лекції:

  1. Огляд наявних алгоритмів класифікації та кластеризації.
  2. Алгоритм k-means.
  3. Програмна реалізація алгоритму k-means.

Розділ 2. Використання мови програмування Python та фреймворку TensorFlow для реалізації алгоритмів машинного навчання

Лекція 11. Встановлення TensorFlow на Windows

Зміст лекції:

  1. Варіанти встановлення TensorFlow на Windows: Anaconda, Docker, віртуальне середовище.
  2. Встановлення Anaconda.
  3. Активізація Anaconda.
  4. Перевірка правильного встановлення Anaconda і TensorFlow.

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

Зміст лекції:

  1. Поняття тензора, представлення тензора, типи тензорів.
  2. Створення тензора n-розмірності.
  3. Форма тензора, типи даних.
  4. Найчастіше використовувані операції з тензорами.
  5. Сесія TensorFlow, основні компоненти.
  6. Граф для виконання функції.

Лекція 13. Використання блокнота Jupyter

Зміст лекції:

  1. Jupyter з основним середовищем conda.
  2. Робота з окремими комірками.
  3. Збереження середовища Jupyter.

Лекція 14. Штучна нейронна мережа з одним входом і одним виходом

Зміст лекції:

  1. Математична та графічна форми нейрона.
  2. Сума добутків та вибір функції активації.
  3. Мережева архітектура.
  4. Математичні розрахунки для проходу вперед та зворотного проходу.
  5. Правило ланцюга.
  6. Реалізація на Python.
  7. Навчання мережі та перевірка ефективності

Лекція 15. Штучна нейронна мережа з довільною кількістю входів

Зміст лекції:

  1. Математичні розрахунки.
  2. Реалізація на Python.
  3. Навчання та тестування.

Лекція 16. Згорткові нейронні мережі: алгоритми та програмна реалізація

Зміст лекції:

  1. Реалізація структури згорткової нейронної мережі з Keras.
  2. Фільтри для різних шарів мережі.
  3. Поділ даних на навчальну та тестову вибірки.
  4. Навчання CNN.
  5. Оцінка ефективності CNN.

Лекція 17. Рекурентні нейронні мережі

Зміст лекції:

  1. Повнорекурентна мережа.
  2. Мережа Хопфілда.
  3. Мережі Елмана та Джордана.
  4. Довга короткочасна пам'ять (LSTM).
  5. Тренування мережі.

Лекція 18. API для розпізнавання об’єктів з Raspberry Pi та TensorFlow

Зміст лекції:

  1. Огляд вбудованих систем для реалізації машинного навчання.
  2. Встановлення TensorFlow на Raspberry Pi.
  3. Встановлення OpenCV.
  4. Задача виявлення об’єктів.

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

Лабораторна робота 1. Встановлення TensorFlow на Windows та використання блокнота Jupyter

Теоретична частина

Використовується матеріал Лекції 11 та ресурсу Інтернет для СРС.

Практична частина під час роботи в аудиторії

Встановлення та початкові налаштування фреймворку TensorFlow від Google. Ознайомлення з основними можливостями фреймворку. Запуск основних команд Python в блокноті Jupyter.

Оформлення протоколу і його збереження у відповідній папці завдання на платформі Moodle.

Практична частина для самостійної роботи

Завдання та контрольні питання для самоперевірки викладені на інформаційному ресурсі Інтернету для СРС: http://iot.kpi.ua/lms/

Лабораторна робота 2. Використання бібліотеки Pandas Python для роботи з даними

Теоретична частина

Використовується матеріал Лекції 12 та ресурсу Інтернет для СРС.

Практична частина під час роботи в аудиторії

Налаштування бібліотеки Pandas, основні команди. Створення кадра даних та серії. Перевірка даних. Фрагментація даних. Конкатенція. Видалення дублікатів. Імпорт даних CSV.

Оформлення протоколу і його збереження у відповідній папці завдання на платформі Moodle.

Завдання для самостійної роботи

Завдання та контрольні питання для самоперевірки викладені на інформаційному ресурсі Інтернету для СРС: http://iot.kpi.ua/lms/

Лабораторна робота 3. Бібліотека NumPy

Теоретична частина

Використовується матеріал Лекції 13 та ресурсу Інтернет для СРС.

Практична частина під час роботи в аудиторії

Базові функції бібліотеки NumPy. Створення масивів. Створення спеціальних масивів. Доступ до елементів. Математичні операції. Копіювання та організація. Читання даних з файлу.

Оформлення протоколу і його збереження у відповідній папці завдання на платформі Moodle.

Завдання для самостійної роботи

Завдання та контрольні питання для самоперевірки викладені на інформаційному ресурсі Інтернету для СРС: http://iot.kpi.ua/lms/

Лабораторна робота 4. Реалізація лінійної регресії на Python

Теоретична частина

Використовується матеріал Лекції 14 та ресурсу Інтернет для СРС.

Практична частина під час роботи в аудиторії

Послідовність реалізації простої моделі лінійної регресії. Програмування моделі лінійної регресії з використанням Python.

Оформлення протоколу і його збереження у відповідній папці завдання на платформі Moodle.

Завдання для самостійної роботи

Завдання та контрольні питання для самоперевірки викладені на інформаційному ресурсі Інтернету для СРС: http://iot.kpi.ua/lms/

Лабораторна робота 5. Побудова штучної нейронної мережі з TensorFlow

Теоретична частина

Використовується матеріал Лекції 15 та ресурсу Інтернет для СРС.

Практична частина під час роботи в аудиторії

Вибір алгоритму для реалізації. Завантаження даних. Дослідження даних. Візуалізація даних. Вилучення ознак та масштабування зображень. Моделювання нейронної мережі (створення структури шар за шаром). Запуск нейронної мережі для навчання. Оцінка створеної нейронної мережі.

Оформлення протоколу і його збереження у відповідній папці завдання на платформі Moodle.

Завдання для самостійної роботи

Завдання та контрольні питання для самоперевірки викладені на інформаційному ресурсі Інтернету для СРС: http://iot.kpi.ua/lms/

Лабораторна робота 6. Початок роботи з Keras, Deep Learning і Python

Теоретична частина

Використовується матеріал Лекції 15 та ресурсу Інтернет для СРС.

Практична частина під час роботи в аудиторії

Структура проєкту. Набір даних. Встановлення Keras. Завантаження даних. Створення навчальної та тестової вибірок. Визначення архітектури моделі Keras. Компіляція моделі. Навчання моделі. Оцінка моделі. Розпізнавання зображень за допомогою навченої моделі.

Оформлення протоколу і його збереження у відповідній папці завдання на платформі Moodle.

Завдання для самостійної роботи

Завдання та контрольні питання для самоперевірки викладені на інформаційному ресурсі Інтернету для СРС: http://iot.kpi.ua/lms/

Лабораторна робота 7. Навчання згорткової нейронної мережі з Keras

Теоретична частина

Використовується матеріал Лекції 16 та ресурсу Інтернет для СРС.

Практична частина під час роботи в аудиторії

Вибір та визначення архітектури моделі Keras (побудова шарів). Завантаження даних, поділ їх на навчальну та тестову вибірки. Навчання та оцінювання реалізованої моделі. Розпізнавання зображень за допомогою навченої моделі. Порівняння з результатами попередньої лабораторної роботи.

Оформлення протоколу і його збереження у відповідній папці завдання на платформі Moodle.

Завдання для самостійної роботи

Завдання та контрольні питання для самоперевірки викладені на інформаційному ресурсі Інтернету для СРС: http://iot.kpi.ua/lms/

Лабораторна робота 8. Класифікатор зображень з використанням алгоритму k-NN

Теоретична частина

Використовується матеріал Лекції 16 та ресурсу Інтернет для СРС.

Практична частина під час роботи в аудиторії

Робота з наборами зображень. Представлення набору даних «Animals». Початкова інформація для глибокого навчання. Створення завантажувача зображень. Реалізація класифікатора k-найближчих сусідів. Гіперпараметри k-NN. Результати роботи k-NN, переваги та недоліки реалізації.

Оформлення протоколу і його збереження у відповідній папці завдання на платформі Moodle.

Завдання для самостійної роботи

Завдання та контрольні питання для самоперевірки викладені на інформаційному ресурсі Інтернету для СРС: http://iot.kpi.ua/lms/

Лабораторна робота 9. Використання мікрокомп’ютера Raspberry Pi для машинного навчання

Теоретична частина

Використовується матеріал Лекції 18 та ресурсу Інтернет для СРС.

Практична частина під час роботи в аудиторії

Використання Movidius Neural Compute Stick 2 від Intel на Raspberry Pi 4. Встановлення та налаштування програмного забезпечення. Запуск моделі машинного навчання з використанням С++. Запуск машинного навчання в Python для інструментарію Intel OpenVINO з підтримкою NumPy та OpenCV.

Оформлення протоколу і його збереження у відповідній папці завдання на платформі Moodle.

Завдання для самостійної роботи

Завдання та контрольні питання для самоперевірки викладені на інформаційному ресурсі Інтернету для СРС: http://iot.kpi.ua/lms/

Примітка: Тривалість виконання лабораторних робіт 2 год., але цей час для лабораторних робіт 5 – 9 суттєво залежить від обсягу вхідних даних та продуктивності використовуваного CPU, тому можливе коригування кількості  виконаних робіт.

6. Самостійна робота студента

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

Розділ 1. Основи машинного навчання: галузі застосування, алгоритми

Теми 1 - 7.

СРС підготовки до модульної контрольної роботи.

Розділ 2. Використання мови програмування Python та фреймворку TensorFlow для реалізації алгоритмів машинного навчання

Тема 8. Фреймворк TensorFlow.

СРС до Лабораторних робіт 1 - 4.

Тема 9. Реалізація штучної нейронної мережі на Python.

СРС до Лабораторної роботи 5 - 6.

Тема 10. Згорткові нейронні мережі.

СРС до Лабораторної роботи 7.

Тема 11. Рекурентні нейронні мережі.

СРС до Лабораторної роботи 8.

Тема 12. Реалізація машинного навчання на мікрокомпютерах.

СРС до Лабораторної роботи 9.

Виконання розрахункової роботи.

Підготовка до заліку.

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

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

Форми роботи

Лекції проводяться з використанням наочних засобів представлення матеріалу та з використанням методичних матеріалів, доступ до яких наявний у здобувачів вищої освіти. Студенти отримують всі матеріали через навчальну платформу Moodle, e-mail, кампус. Для спілкування та консультацій використовується telegram-група.

Студенти мають можливість отримати знання з окремих тем та розділів навчальної дисципліни на навчальних курсах платформи Coursera (https://www.coursera.org), Prometheus (https://prometheus.org.ua) та ін., у якості змішаного чи додаткового навчання згідно Положення про визнання в КПІ ім. Ігоря Сікорського результатів навчання, набутих у неформальній/інформальній освіті (https://osvita.kpi.ua/node/179).

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

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

Під час вивчення курсу застосовуються стратегії активного і колективного навчання, які визначаються наступними методами і технологіями:

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

Правила відвідування занять

Заняття можуть проводитись в навчальних аудиторіях згідно розкладу. Також заняття можуть проводитись дистанційно в асинхронному режимі з використанням навчальної платформи Moodle з однозначною ідентифікацією здобувача вищої освіти. Проведення занять онлайн повинне бути передбачене відповідним наказом по КПІ ім. Ігоря Сікорського.

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

Якщо завчасно повідомити не вдалось, здобувач вищої освіти протягом одного тижня має зв'язатись з викладачем для погодження форми і порядку усунення заборгованості.

Якщо аудиторне заняття випадає на неробочий день (святковий, пам'ятний тощо), то матеріал такого заняття частково переходить в категорію «Самостійна робота здобувачів вищої освіти», а частково додається до наступного заняття.

Правила призначення заохочувальних та штрафних балів

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

+10 балів – студенту автору статті (доповіді на конференції) за тематикою курсу (тільки за умови подання комплекту матеріалів).

Сума всіх заохочувальних балів не може перевищувати 10 балів.

Штрафні бали:

-1 бал за затримку завантаження протоколу ЛР (понад 3 дні) та відсутність без поважних причин на лабораторній роботі.

Політика щодо академічної доброчесності

Політика та принципи академічної доброчесності визначені у розділі 3 Кодексу честі Національного технічного університету України «Київський політехнічний інститут імені Ігоря Сікорського». Детальніше: https://kpi.ua/code

Норми етичної поведінки

Норми етичної поведінки студентів і працівників визначені у розділі 2 Кодексу честі Національного технічного університету України «Київський політехнічний інститут імені Ігоря Сікорського». Детальніше: https://kpi.ua/code

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

ОЦІНЮВАННЯ ТА КОНТРОЛЬНІ ЗАХОДИ

Види контролю

Вид контролю

Спосіб контролю

Поточний контроль

Частина 1. Перевірка підготовки до лабораторних робіт (експрес-опитування, тестування)

Частина 2. Перевірка виконання лабораторних робіт (протоколів) відповідно до розкладу занять, модульна контрольна роботи, розрахункова робота

Календарний контроль

Проводиться двічі на семестр як моніторинг поточного стану виконання вимог силабусу

Семестровий контроль

Залік

 

Рейтингова система оцінювання результатів навчання

Головна частина рейтингу студента формується через активну участь у лабораторних роботах, отримання результатів модульної контрольної роботи (тестів) та виконанні розрахункової роботи.

Модульну контрольну роботу та залікову контрольну роботу проводить лектор - викладач кафедри радіотехнічних систем.

1) Поточний контроль

Проводяться експрес-опитування за темою заняття, виконання тестових завдань, обговорення правових кейсів, підготовка проєктів документів

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

1. Залікова контрольна робота являє собою тест, який може бути оцінений від 0 до 30 балів.

Тест проводиться на платформі дистанційного навчання Moodle і питання можуть бути різної форми, які можна реалізувати в Moodle.

2. Лабораторні роботи

Ваговий бал – 5

За виконання лабораторної роботи (2 год.):

  • завдання виконано повністю і самостійно     5;
  • завдання виконано не повністю або за допомогою викладача  1–4;
  • завдання практично не виконане      0.

Максимальна кількість балів за 9 лабораторних робіт: 45 балів.

3. Модульний контроль (МКР) – у вигляді трьох тестів.

Правильно і повністю виконані всі завдання тесту – 5 бали, тобто, тобто максимальна кількість балів за МКР дорівнює 15 балів

4. Розрахункова робота (РР).

Правильно і повністю виконані всі завдання – 10 балів.

Штрафні та заохочувальні бали за (сума як штрафних, так і заохочувальних балів не має перевищувати  (4 бали):

  • відсутність на лабораторному занятті без поважних причин  –1
  • участь у модернізації, супроводженні та адмініструванні дисципліни, виконання завдань з удосконалення методичних та дидактичних  матеріалів з дисципліни  +1…+2

Загальний рейтинговий бал дисципліни:

RΣ =  RЛР + RМКР + RРР  =100 балів

де RЛР – рейтингові бали за виконання лабораторних робіт №1…№9;

RМКР – рейтингові бали за модульну контрольну роботу (тести);

RРР – рейтингові бали за розрахункову роботу.

RЗКР – рейтинговий бал за залікову контрольну роботу з дисципліни (від 0 до 100 балів);

Після виконання залікової контрольної роботи здобувач отримує рейтингову оцінку здисципліни , що є більшою з оцінок, що отримані за результатами залікової контрольної роботи RЗКР або за рейтингом RΣ(п.3.14 ПОЛОЖЕННЯ про систему оцінювання результатів навчанняв КПІ ім. Ігоря Сікорського).

Остаточний рейтинг не може перевищувати 100 балів.

2) Календарний контроль

Здійснюється двічі на семестр як моніторинг поточного стану виконання вимог силабусу

Критерій

Перший

Другий

Термін

8-й тиждень

14-й тиждень

Умови отримання

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

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

Дистанційний курс навчальної дисципліни - http://iot.kpi.ua/lms/course/view.php?id=6

Перелік питань для підготовки до заліку

1. Основні поняття машинного навчання. Галузі застосування. Приклади прикладних задач.

2. Лінійні методи класифікації та регресії: функціонали якості, методи налаштування, особливості застосування.

3. Метрики якості алгоритмів регресії та класифікації.

4. Оцінювання якості алгоритмів. Відкладена вибірка, її недоліки.

5. Дерева рішень. Методи побудови дерев, їх регуляризація.

6. Випадковий ліс, його особливості.

7. Градієнтний бустинг, його особливості при використанні дерев як базових алгоритмів.

8. Метод опорних векторів. Вирішення задачі регресії за допомогою SVM.

9. Кластеризація. Алгоритм K-Means.

10. Нейронні мережі: перцептрон. Види функцій активації. Навчання одного перцептрону.

11. Навчання мережі: градієнтний спуск. Зворотне поширення градієнта на графі обчислень.

12. Регуляризація у нейронних мережах.

13. Рекурентні мережі: базові архітектури, LSTM.

14. Згорткові мережі: архітектури, методи навчання, додатки.

15. Глибокі мережі обробки текстів: рекурсивні нейронні мережі, мережі з пам'яттю.

Опис матеріально-технічного та інформаційного забезпечення дисципліни

- 10 макетів Raspberry Pi 3 B+ та макет з використанням Raspberry Pi 3 (4ГБ RAM) та модуля Movidius Neural Compute Stick 2 від  Intel.

- Книга "Машинне навчання з використанням мікрокомп'ютерів", доступна електронна версія за посиланням

http://isearch.kiev.ua/uk/book/1955-machine-learning-using-microcomputers

 




Робочу програму навчальної дисципліни (силабус):
Складено Могильний С. Б.;
Ухвалено кафедрою РТС (протокол № 06/23 від 22.06. 2023 р. )
Погоджено методичною комісією факультету/ННІ (протокол № 06-2023 від 29.06.2023 )