![]() | Кафедра радіотехнічних систем |
Рівень вищої освіти | Другий (магістерський) |
Галузь знань | 17 - Електроніка та телекомунікації |
Спеціальність | 172 - Телекомунікації та радіотехніка |
Освітня програма | 172Мп РКС - Радіотехнічні комп'ютеризовані системи (ЄДЕБО id: 49258)172Мн РКС - Радіотехнічні комп'ютеризовані системи (ЄДЕБО id: 49259)172Мн РЕІ - Радіоелектронна інженерія (ЄДЕБО id: 53272)172Мн РЕІ+ - Радіоелектронна інженерія (ЄДЕБО id: 57919)172Мп РТКС+ - Радіотехнічні комп'ютеризовані системи (ЄДЕБО id: 57922)G5Мп РТС - Радіотехнічні системи (ЄДЕБО id: ) |
Статус дисципліни | Нормативна |
Форма здобуття вищої освіти | Очна |
Рік підготовки, семестр | 1 курс, осінній семестр |
Обсяг дисципліни | 4 кред. (Лекц. 36 год, Практ. год, Лаб. 18 год, СРС. 66 год ) |
Семестровий контроль/контрольні заходи | Залік |
Розклад занять | https://rozklad.kpi.ua |
Мова викладання | Українська |
Інформація про керівника курсу / викладачів | Лекц.: Могильний С. Б., Лаб.: Могильний С. Б., СРС.: Могильний С. Б. |
Розміщення курсу | http://iot.kpi.ua/lms/course/view.php?id=6 |
1.1. Опис навчальної дисципліни
Навчальна дисципліна складається з двох розділів:
1.2. Мета навчальної дисципліни
Метою навчальної дисципліни є підготовка фахівця, який має базові компетенції з вибору алгоритмів машинного навчання, особливостей їх застосування: навчання та перевірки ефективності роботи, формування теоретичних та практичних знань у галузі машинного навчання
Метою навчальної дисципліни є формування у студентів компетентностей:
1.3. Предмет вивчення дисципліни
Предмет навчальної дисципліни – сукупність математичних та програмних рішень для задач аналізу даних, вибору алгоритмів машинного навчання, тренування та перевірки ефективності роботи алгоритмів для технологій, які використовують великі дані.
1.4. Програмні результати навчання
ПРН 18 | Вміти формалізувати постановки прикладних завдань аналізу даних, застосовувати на практиці алгоритми машинного навчання; обґрунтувати застосування того чи іншого алгоритму машинного навчання для вирішення конкретного завдання, оцінювати точність та ефективність отриманих рішень. Володіти навичками практичного розв'язання задач аналізу великих даних, програмно реалізовувати алгоритми машинного навчання. |
Перелік дисциплін або знань та умінь, |
Перелік дисциплін, |
Дисципліна вивчається на основі предметів цифрових технологій та програмування: «Інформатика», «Вбудовані системи» |
|
Розділ 1. Основи машинного навчання: галузі застосування, алгоритми
Тема 1. Вступ: завдання, класифікація алгоритмів машинного навчання.
Тема 2. Регресія.
Тема 3. Штучні нейронні мережі.
Тема 4. Дерева рішень.
Тема 5. Алгоритм AdaBoost.
Тема 6. Автоенкодери.
Тема 7. Кластеризація і класифікація.
Розділ 2. Використання мови програмування Python та фреймворку TensorFlow для реалізації алгоритмів машинного навчання
Тема 8. Фреймворк TensorFlow.
Тема 9. Реалізація штучної нейронної мережі на Python.
Тема 10. Згорткові нейронні мережі.
Тема 11. Рекурентні нейронні мережі.
Тема 12. Реалізація машинного навчання на мікрокомп’ютерах.
Базова література:
Додаткова література:
Інформаційні ресурси Інтернету:
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.
Тема 9.
Лекція 14. Штучна нейронна мережа з одним входом і одним виходом.
Лекція 15. Штучна нейронна мережа з довільною кількістю входів.
Тема 10. Лекція 16. Згорткові нейронні мережі: алгоритми та програмна реалізація.
Тема 11. Лекція 17. Рекурентні нейронні мережі.
Тема 12.
Лекція 18. API для розпізнавання об’єктів з Raspberry Pi та TensorFlow.
Модульна контрольна робота (тести при дистанційному навчанні):
1. За темами 1-6
Підготовка до заліку
Залік
5.2. Методика опанування
Лекції
Розділ 1. Основи машинного навчання: галузі застосування, алгоритми
Лекція 1. Огляд завдань, які вирішуються алгоритмами машинного навчання, та класифікація алгоритмів машинного навчання
Зміст лекції:
Лекція 2. Лінійна регресія
Зміст лекції:
Лекція 3. Програмна реалізація алгоритму лінійної регресії
Зміст лекції:
Лекція 4. Логістична регресія
Зміст лекції:
Лекція 5. Підготовка даних для машинного навчання.
Зміст лекції:
Лекція 6. Структура нейрона та нейронної мережі
Зміст лекції:
Лекція 7. Структура дерев рішень, приклади реалізації
Зміст лекції:
Лекція 8. Математичне обґрунтування алгоритму AdaBoost
Зміст лекції:
Лекція 9. Алгоритм автоенкодера
Зміст лекції:
Лекція 10. Алгоритми кластеризації та з програмною реалізацією алгоритму k-means
Зміст лекції:
Розділ 2. Використання мови програмування Python та фреймворку TensorFlow для реалізації алгоритмів машинного навчання
Лекція 11. Встановлення TensorFlow на Windows
Зміст лекції:
Лекція 12. Основи TensorFlow
Зміст лекції:
Лекція 13. Використання блокнота Jupyter
Зміст лекції:
Лекція 14. Штучна нейронна мережа з одним входом і одним виходом
Зміст лекції:
Лекція 15. Штучна нейронна мережа з довільною кількістю входів
Зміст лекції:
Лекція 16. Згорткові нейронні мережі: алгоритми та програмна реалізація
Зміст лекції:
Лекція 17. Рекурентні нейронні мережі
Зміст лекції:
Лекція 18. API для розпізнавання об’єктів з Raspberry Pi та TensorFlow
Зміст лекції:
Лабораторні роботи
Лабораторна робота 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, тому можливе коригування кількості виконаних робіт.
До самостійної роботи студентів включається підготовка до аудиторних занять шляхом опанування матеріалів лекцій, вивчення базової, додаткової літератури, виконання лабораторних робіт.
Розділ 1. Основи машинного навчання: галузі застосування, алгоритми
Теми 1 - 7.
СРС підготовки до модульної контрольної роботи.
Розділ 2. Використання мови програмування Python та фреймворку TensorFlow для реалізації алгоритмів машинного навчання
Тема 8. Фреймворк TensorFlow.
СРС до Лабораторних робіт 1 - 4.
Тема 9. Реалізація штучної нейронної мережі на Python.
СРС до Лабораторної роботи 5 - 6.
Тема 10. Згорткові нейронні мережі.
СРС до Лабораторної роботи 7.
Тема 11. Рекурентні нейронні мережі.
СРС до Лабораторної роботи 8.
Тема 12. Реалізація машинного навчання на мікрокомп’ютерах.
СРС до Лабораторної роботи 9.
Виконання розрахункової роботи.
Підготовка до заліку.
Форми роботи
Лекції проводяться з використанням наочних засобів представлення матеріалу та з використанням методичних матеріалів, доступ до яких наявний у здобувачів вищої освіти. Студенти отримують всі матеріали через навчальну платформу Moodle, e-mail, кампус. Для спілкування та консультацій використовується telegram-група.
Студенти мають можливість отримати знання з окремих тем та розділів навчальної дисципліни на навчальних курсах платформи Coursera (https://www.coursera.org), Prometheus (https://prometheus.org.ua) та ін., у якості змішаного чи додаткового навчання згідно Положення про визнання в КПІ ім. Ігоря Сікорського результатів навчання, набутих у неформальній/інформальній освіті (https://osvita.kpi.ua/node/179).
Здобувачі вищої освіти залучаються до обговорення лекційного матеріалу та задають питання, щодо його сутності.
При виконанні лабораторних робіт застосовуються форми індивідуальної та колективної роботи (командна робота, парна робота) для реалізації завдань викладача на набуття навичок самостійної практичної роботи.
Під час вивчення курсу застосовуються стратегії активного і колективного навчання, які визначаються наступними методами і технологіями:
Правила відвідування занять
Заняття можуть проводитись в навчальних аудиторіях згідно розкладу. Також заняття можуть проводитись дистанційно в асинхронному режимі з використанням навчальної платформи Moodle з однозначною ідентифікацією здобувача вищої освіти. Проведення занять онлайн повинне бути передбачене відповідним наказом по КПІ ім. Ігоря Сікорського.
За наявності поважних причин здобувач вищої освіти повинен завчасно (за 1 день) повідомити викладача про причини можливого пропуску контрольного заходу. Всі контрольні заходи (тести) в дистанційному режимі проводяться синхронно (одночасно для всіх студентів).
Якщо завчасно повідомити не вдалось, здобувач вищої освіти протягом одного тижня має зв'язатись з викладачем для погодження форми і порядку усунення заборгованості.
Якщо аудиторне заняття випадає на неробочий день (святковий, пам'ятний тощо), то матеріал такого заняття частково переходить в категорію «Самостійна робота здобувачів вищої освіти», а частково додається до наступного заняття.
Правила призначення заохочувальних та штрафних балів
Заохочувальні бали:
+10 балів – студенту автору статті (доповіді на конференції) за тематикою курсу (тільки за умови подання комплекту матеріалів).
Сума всіх заохочувальних балів не може перевищувати 10 балів.
Штрафні бали:
-1 бал за затримку завантаження протоколу ЛР (понад 3 дні) та відсутність без поважних причин на лабораторній роботі.
Політика щодо академічної доброчесності
Політика та принципи академічної доброчесності визначені у розділі 3 Кодексу честі Національного технічного університету України «Київський політехнічний інститут імені Ігоря Сікорського». Детальніше: https://kpi.ua/code
Норми етичної поведінки
Норми етичної поведінки студентів і працівників визначені у розділі 2 Кодексу честі Національного технічного університету України «Київський політехнічний інститут імені Ігоря Сікорського». Детальніше: https://kpi.ua/code
ОЦІНЮВАННЯ ТА КОНТРОЛЬНІ ЗАХОДИ
Види контролю
Вид контролю |
Спосіб контролю |
---|---|
Поточний контроль |
Частина 1. Перевірка підготовки до лабораторних робіт (експрес-опитування, тестування) Частина 2. Перевірка виконання лабораторних робіт (протоколів) відповідно до розкладу занять, модульна контрольна роботи, розрахункова робота |
Календарний контроль |
Проводиться двічі на семестр як моніторинг поточного стану виконання вимог силабусу |
Семестровий контроль |
Залік |
Рейтингова система оцінювання результатів навчання
Головна частина рейтингу студента формується через активну участь у лабораторних роботах, отримання результатів модульної контрольної роботи (тестів) та виконанні розрахункової роботи.
Модульну контрольну роботу та залікову контрольну роботу проводить лектор - викладач кафедри радіотехнічних систем.
1) Поточний контроль
Проводяться експрес-опитування за темою заняття, виконання тестових завдань, обговорення правових кейсів, підготовка проєктів документів
У випадку відсутності студента на лабораторній роботі, необхідно відпрацювати пропущене заняття. Виконання всіх лабораторних робіт є умовою отримання позитивної оцінки за результатами навчання.
1. Залікова контрольна робота являє собою тест, який може бути оцінений від 0 до 30 балів.
Тест проводиться на платформі дистанційного навчання Moodle і питання можуть бути різної форми, які можна реалізувати в Moodle.
2. Лабораторні роботи
Ваговий бал – 5
За виконання лабораторної роботи (2 год.):
Максимальна кількість балів за 9 лабораторних робіт: 45 балів.
3. Модульний контроль (МКР) – у вигляді трьох тестів.
Правильно і повністю виконані всі завдання тесту – 5 бали, тобто, тобто максимальна кількість балів за МКР дорівнює 15 балів
4. Розрахункова робота (РР).
Правильно і повністю виконані всі завдання – 10 балів.
Штрафні та заохочувальні бали за (сума як штрафних, так і заохочувальних балів не має перевищувати (4 бали):
Загальний рейтинговий бал дисципліни:
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 | Незадовільно |
Не виконані умови допуску | Не допущено |
Дистанційний курс навчальної дисципліни - 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 )