Перейти до вмісту
Система сертифікації ІТ-дисциплін
Система сертифікації ІТ-дисциплін
  • Головна
  • Для ІТ-спеціалістів
  • Для викладачів
  • Силабуси
  • Пілот проєкту
  • Приєднатись до Kharkiv IT Cluster

Штучні нейронні мережі

Home / / Штучні нейронні мережі

Розробники та рецензенти

Заклад вищої освіти:

Компанія-рецензент 1:

Компанія-рецензент 2:

Валідація:

Опис зображення
Розробник навчальної програми:

Паржин Юрій Володимирович — д.т.н, професор, завідувач кафедри «Інформатики та інтелектуальної власності інституту комп'ютерних наук та інформаційних технологій» Національного технічного університету «Харківський політехнічний інститут».

Базова інформація

Шифр та назва спеціальності:
122 - Комп'ютерні науки
Назва освітньо-наукової програми
Комп'ютерні науки
Назва дисципліни
Штучні нейронні мережі
Вид дисципліни
Основна
Блок дисципліни
AI, ML
Кількість студентів
Курс/Семестр
6

Загальна інформація про дисципліну

Анотація
В дисципліні розглядається побудова та практичне використання штучних нейронних мереж (ШНМ) з градієнтними методами навчання (навчанням з "вчителем"): багатошаровий перцептрон, згорткова ШНМ, рекурентні ШНМ; побудова та практичне використання ШНМ з самонавчанням (навчанням без "вчителя"): мережі Кохонена, автоенкодери, а також інші моделі ШНМ та підходи до їх навчання: обмежені машини Больцмана, машини опорних векторів, ШНМ на основі RBF, нейроморфні моделі ШНМ, навчання з підкріпленням. Цикл практичних занять та лабораторних робіт побудовано з використанням мови Pyton та її бібліотек, фреймворків TensorFlow та Keras.
Анотація
Дисципліна має метою вивчення теорії та практики побудови програмних моделей штучних нейронних мереж різноманітної архітектури та їх навчання із застосуванням алгоритмів і методів, що відображають сучасні парадигми навчання, для вирішення практичних задач аналізу інформації на основі використання мови програмування Python та її бібліотек.
Анотація
Лекції, лабораторні роботи, практичні заняття, самостійна робота. Підсумковий контроль – залік
Розподіл часу
Загальний обсяг (кредитів): 18; Лекції (занять): 10; Лабораторні (занять): 4; Практичні (занять): 55; Самостійна робота (годин): 0
Попередні дисципліни
Математичний аналіз, Дискретна математика, Алгоритми і структури даних, Теорія ймовірностей, Математична статистика, Основи програмування, Методи та засоби обчислювальної математики, Методи та засоби аналізу даних.
Матеріально-технічне та програмне забезпечення дисципліни
Комп'ютери: процесор Intel Core i5 або аналогічний, оперативна пам'ять 4 гб, будь-яка відеокарта з обсягом відеопам'яті 1 гб; Операційна система Windows 10, версія мови Python вище 3.0, поступ до Internet.
Структура дисципліни
  • Тема 1 – Принципи побудови та навчання штучних нейронних мереж
Вступ до штучних нейронних мереж (ШНМ). Основні визначення, історія виникнення та розвитку, моделі нейрона та їх класифікація, типи активаційних функцій та їх призначення, недоліки формальної моделі нейрона. Практичне заняття №1 "Дослідження моделі нейрона з використанням програми — нейросимулятору". Завдання: 1. Шляхом підбору синаптичних ваг та порогу чутливості математичного нейрона змусити його моделювати логічні функції "І", "АБО" та інші; 2. Навчити одношаровий перцептрон здійснювати класифікацію парних та непарних цифр: 3. Створити навчальну вибірку букв українського алфавіту та навчити одношаровий перцептрон їх розпізнаванню. Методичні матеріали: керівництво до практичного заняття. Основи побудови та навчання ШНМ. Класифікація ШНМ, задачі, що вирішуються з використанням ШНМ, основні парадигми навчання ШНМ, архітектура і навчання елементарного перцептрона, його недоліки.Практичне заняття №2 "Використання елементарного перцептрона для вирішення задач класифікації з використанням програми-нейросимулятору". Завдання: 1. Шляхом підбору параметрів навчання перцептрона (кількість нейронів у прихованому шарі, вид активаційної функції, швидкість навчання та кількість епох навчання) здійснити моделювання різних логічних функцій. 2. Шляхом підбору параметрів входу мережі та її структури, навчити перцептрон здійснювати класифікацію медичних діагнозів. 3. За допомогою програми-нейросимулятору створити та навчати нейронну мережу, що вирішує одну з наданих задач (наприклад): детектор брехні, антиспамер, система діагностики складних технічних пристроїв, діагностика здоров'я людини та інші. Методичні матеріали: керівництво до практичного заняття. Вирішення задачі класифікації з використанням ШНМ. Задача класифікації, підхід, заснований на даних; метод найближчого сусіда та метод k-найближчих сусідів (k-nearest neighbors algorithm, k-NN); Евклідова відстань, гіперпараметри, лінійна класифікація, інтерпретація лінійного класифікатору та проблеми, що виникають. Функції втрат та оптимізація. Градієнтні методи навчання. Функція втрат та приклади її роботи; проблема перенавчання, регулярізація, оптимізація та її стратегії. Поняття градієнту, стохастичний градієнтний спуск; обчислювальні графи, роль зміщення, швидкість та момент навчання.Практичне заняття №3 "Ознайомлення з бібліотеками Python та фреймворками TensorFlow та Keras для побудови та навчання ШНМ". Вибір та інсталяція бібліотек та фреймворків, принципи їхньої побудови, основні функції та інструменти для побудови та навчання ШНМ. Алгоритм зворотного розповсюдження помилки (Backpropagation). Структура алгоритму, реалізація алгоритму в багатошарових ШНМ, проблеми реалізації в глибоких ШНМ. Багатошарові ШНМ прямого розповсюдження. Архітектура та підхід до навчання. Архітектура багатошарових ШНМ, активаційні функції, підготовка даних, ініціалізація ваг, пакетна нормалізація, оптимізація гіперпараметрів.Лабораторна робота №1 "Побудова та навчання багатошарового перцептрона на мові Python з використанням бібліотек". Завдання: 1. Побудувати програмну модель нейрона з вибраною активаційною функцією; 2. Підготувати набір даних та провести навчання моделі нейрона; 3. Створити багатошаровий перцептрон, використовуючи алгоритм зворотного розповсюдження помилки, навчити ШНМ здійснювати класифікацію зображень бібліотеки MNIST; 4. Зміною гіперпараметрів домогтися мінімізації помилки розпізнавання; 5. Зробити висновки. Методичні матеріали: керівництво до лабораторної роботи. Методи покращення навчання багатошарових ШНМ. Проблема локальних мінімумів, покращення оптимізації гіперпараметрів, пришвидшений градієнт Нестерова, метод AdaGrad, метод RMSProp, метод Adam. Оптимізація другого порядку, ансамблеві методи, вибір швидкості навчання, Dropout, доповнення даних, передача навчання.
  • Тема 2 - Згорткові та рекурентні нейронні мережі
Згорткова нейронна мережа (CNN). Історія створення CNN та досягнення, загальний підхід до побудови архітектури CNN, операція згортки. Архітектура мережі LeNet5, шар згортки, шар підвибірки (пулінгу), повнозв'язний шар, шар активації. Згорткова нейронна мережа. Побудова та навчання. Побудова мережі, навчання мережі, переваги та недоліки CNN, залишкові мережі ResNet, приклади CNN та їх застосування, використання мережі U-NET для сегментації зображень.Лабораторна робота №2 "Побудова та навчання згорткової нейронної мережі на мові Python з використанням бібліотек". Завдання: 1. Визначити та запрограмувати операції згортки, активаційної функції, функції втрат; 2.Створити шари згортки, пулінгу, активації та повнозв'язний шар; 3. Запрограмувати алгоритм зворотного розповсюдження помилки; 4. Побудувати згорткову ШНМ, провести її навчання та тестування з використанням бібліотеки MNIST або FashionMNIST; 5. Зробити висновки. Методичні матеріали: керівництво до лабораторної роботи. Рекурентні нейронні мережі (RNN). Архітектура і навчання. Історія створення, мережі Хопфілда, Хемінга, Елмана; загальна ідея побудови сучасних RNN, обчислювальні графи, архітектура RNN, двоспрямовані RNN, навчання RNN: метод зворотного розповсюдження помилки у часі. Двоспрямована асоціативна пам'ять (мережа Коско). Постановка задачі, архітектура, навчання, практичне використання. Рекурентні нейронні мережі. LSTM та GRU. Довга короткочасна пам'ять (long short-term memory, LSTM), приклади RNN та LSTM, керований рекурентний блок (Gated Recurrent Unit, GRU), концепція уваги, застосування RNN.Лабораторна робота №3 "Побудова та навчання рекурентної ШНМ на мові Python з використанням бібліотек". Завдання: 1. Розробити архітектуру ШНМ для вирішення обраної задачі (наприклад: класифікації недовгих регресних, зростаючих або періодичних послідовностей чисел; класифікації фраз технічного або ліричного тексту; класифікації страв або коктейлів за короткими рецептами або іншої задачі); 2. Підготувати набір навчаючої та тестової вибірки; 3. Запрограмувати фази прямого розповсюдження сигналів та зворотного розповсюдження помилки у часі; 4. Провести навчання та тестування створеної ШНМ. 5. Зробити висновки. Методичні матеріали: керівництво до лабораторної роботи.
  • Тема 3 - Навчання без вчителя та огляд інших сучасних ШНМ
Навчання без вчителя. Загальний підхід. Визначення навчання без вчителя, кластеризація, постановка задачі, цілі кластеризації, типи кластерних структур, якість кластеризації; Методы кластеризації, алгоритм k-means, функції відстані, візуалізація кластерної структури; практичні задачі, що вирішуються з навчанням без вчителя; навчання з частковим залученням вчителя.Лабораторна робота №4 "Побудова та навчання рекурентної ШНМ на мові Python з використанням бібліотек". Завдання: 1. На основі наданих прикладів, вивчити та створити програмні моделі найбільш популярних методів навчання без вчителя для кластеризації даних: методу k-середніх (k-means), методу ієрархічної кластеризації, методу t-SNE, методу кластеризації на основі щільності DBSCAN. 2. Для складення прогнозів використовується набір даних "Іриси Фішера". 3. Результати кластеризації за кожним методом візуалізуються. 4. Зробити висновки. Методичні матеріали: керівництво до лабораторної роботи. Мережі Кохонена та автокодувальники (автоенкодери). Правило Хебба, нейронна мережа Хебба, конкурентне навчання, нейронні мережі Кохонена, мережа, що сама навчається, її архітектура та алгоритм навчання; мапи, що самі організовуються (SOM); застосування мереж Кохонена. Призначення та основна архітектура автокодувальників, їх типи та задачі, що вирішуються; схеми функціонування, алгоритм навчання, приклади реалізації та застосування. Обмежена машина Больцмана. Марковські випадкові поля та машина Больцмана; обмежена машина Больцмана (restricted Boltzmann machine, RBM), архітектура, алгоритм навчання, попереднє навчання ШНМ з використанням RBM, застосування RBM, асоціативна пам'ять на основі RBM Нейронні мережі на основі RBF. Радіально-базисні функції (RBF): математичні основи, теорема Ковера, типи RBF, архітектура та мереж RBF, застосування мереж RBF: вирішення задачі XOR, мережа, що апроксимує, класифікатор. Машина опорних векторів (SVM). SVM в задачах класифікації: постановка та формальний опис задачі; поняття оптимальної гіперплощини, що розділює; вибірка, що лінійно розділює, та лінійно не розділює; ядра та простори, що спрямляють; алгоритми налаштування; машини опорних векторів в задачах регресії; Навчання з підкріпленням. Нейроморфні моделі ШНМ. Постановка задачі навчання з підкріпленням; алгоритми навчання з підкріпленням, задача про багаторукого бандита (The multi-armed bandit problem), Q-learning, метод policy gradient, алгоритм асинхронного актора-критика та його реалізації на основі ШНМ; нейроморфний підхід до моделювання ШНМ, імпульсні мережі, детекторна ШНМ Технологій глибинного навчання та архітектури сучасних глибоких ШНМ. Визначення глибинного навчання (ГН), історія розвитку та сучасний стан, відмінність ГН від звичайного машинного навчання, переваги ГН, складність впровадження технології ГН, приклади використання ГН, популярні алгоритми та архітектурні рішення мереж ГН, спеціальні методи ГН, бібліотеки Python та найбільш популярні фреймворки для ГН, Online – прикладення з використанням ГН. Генеративно-змагальна мережа (GAN), глибокі машини Больцмана, глибокі мережі довіри, ансамблеві методи, огляд нових архітектур глибоких ШНМ.
Теми та завдання для самостійної роботи
  1. Застосування інструментів TensorFlow та Keras для побудови та навчання багатошарового перцептрона. Завдання: створюється програмна реалізація ШНМ, яка розглянута в лабораторній роботі №1, із застосування TensorFlow та Keras
  2. Застосування інструментів TensorFlow та Keras для побудови та навчання згорткової ШНМ. Завдання: створюється програмна реалізація ШНМ, яка розглянута в лабораторній роботі №2, із застосування TensorFlow та Keras
  3. Застосування інструментів TensorFlow та Keras для побудови та навчання рекурентної ШНМ. Завдання: створюється програмна реалізація ШНМ, яка розглянута в лабораторній роботі №3, із застосування TensorFlow та Keras
  4. Побудова нейронної мережі Кохонена на мові Python з використанням бібліотек. Завдання: створюється програмна реалізація мережі Кохонена для вирішення задачі кластеризації.
  5. Побудова та навчання автоенкодерів на мові Python з використанням бібліотек. Завдання: створюється програмна реалізація автоенкодеру заданого типу.
Проєкт
Рекомендовані джерела інформації та навчальні матеріали
  1. Хайкин С. Нейронные сети: полный курс, 2-е издание: Пер.с англ. –М.: Изд. дом "Вильямс", 2019. – 1104 с.
  2. Тимощук П.В. Штучні нейронні мережі. Навчальний посібник. Львів: Видавництво Львівської Політехніки, 2011. - 444с.
  3. Руденко О.Г., Бодянський Є.В. Штучні нейронні мережі: Навчальний посібник. Харків: ТОВ «Компанія СМІТ», 2006. - 404 с.
  4. Гафаров Ф.М., Галимянов А.Ф. Искусственные нейронные сети и их приложения. Учебное пособие. Казань: Изд-во Казанского университета, 2018, - 121 с.
  5. Ростовцев В.С. Искусственные нейронные сети: учебник. Изд-во "Лань". 2021. – 216 с.
  6. Аггарвал Ч. Нейронные сети и глубокое обучение: учебный курс. Изд-во "Диалектика-Вильямс". 2020. – 752 с
  7. Рашид Т. Создаем нейронную сеть. Изд-во "Вильямс". 2020. – 272 с.
  8. Бринк Х., Ричардс Д., Феверолф М. Машинное обучение. - СПб.: Изд-во "Питер", 201 7. -336 с.
  9. Плас Дж. В. Python для сложных задач: наука о данных и машинное обучение. — СПб.: Изд-во "Питер", 2018. — 576 с.
  10. Гудфеллоу Я., Бенджио И., Курвилль А. Глубокое обучение / пер. с анг. А. А. Слинкина. – 2-е изд., испр. – М.: ДМК Пресс, 2018. – 652 с
  11. Шолле Ф. Глубокое обучение на Python. — СПб.: Питер, 2018. — 400 с.
  12. Шакла Н. Машинное обучение и TeпsorFlow. - СПб.: Питер, 2019. - 336 с.
  13. Жерон О. Прикладное машинное обучение с помощью Scikit-Learn и TensorFlow: концепции, инструменты и техники для создания интеллектуальных систем. Пер. с англ. - СпБ.: ООО "Альфа-книга': 2018. - 688 с.
  14. Джулли А., Пал С. Библиотека Keras – инструмент глубокого обучения. Реализация нейронных сетей с помощью библиотек Theano и TensorFlow./ пер. с англ. Слинкин А.А. – М.: ДМК Пресс, 2018. – 294 с.
  15. Уоссерман Ф. Нейрокомпьютерная техника. Теория и практика. М: 2006. 184 с.
  16. Осовский С. Нейронные сети для обработки информации /Пер. с польского И.Д. Рудинского. – М.: Финансы и статистика, 2002. – 344 с
  17. Каллан Р. Нейронные сети. Краткий справочник. Изд-во "Диалектика". 2018. – 288 с.
Контрольні заходи
Тема 1 За результатами захисту практичних завдань та лабораторних робіт Тема 2 За результатами захисту лабораторних робіт Тема 3 За результатами захисту лабораторних робіт ІДЗ, РГЗ тощо За результатами виконання завдань для самостійної роботи Залік  За результатами співбесіди
Результати навчання
Використовувати знання закономірностей випадкових явищ, їх властивостей та операцій над ними, моделей випадкових процесів та сучасних програмних середовищ для розв’язування задач статистичної обробки даних і побудови прогнозних моделей. Використовувати методи обчислювального інтелекту, машинного навчання, нейромережевої обробки даних для розв’язання задач розпізнавання, прогнозування, класифікації, ідентифікації об’єктів керування тощо. Розробляти програмні моделі предметних середовищ, вибирати парадигму програмування з позицій зручності та якості застосування для реалізації методів та алгоритмів розв’язання задач в галузі комп’ютерних наук. Застосовувати методи та алгоритми обчислювального інтелекту та інтелектуального аналізу даних в задачах класифікації, прогнозування, кластерного аналізу, пошуку асоціативних правил з використанням програмних інструментів підтримки багатовимірного аналізу даних на основі технологій DataMining, TextMining.

Зв'язок з ринком праці

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

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

Бали нараховуються за наступним співвідношенням: - лабораторні роботи: 50% семестрової оцінки - практичні заняття: 10% семестрової оцінки; - опрацювання лекційного матеріалу: 10% семестрової оцінки;

Залишити відповідь Скасувати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *

Недавні записи

  • Організаційна зустріч 23.06.2025
  • Старт нового сезону сертифікації — 2025

Останні коментарі

  1. polina до Криптографія та стеганографія
  2. olena до Організаційна зустріч 23.06.2025
  3. admin до Технології розробки мобільних додатків

Категорії

  • Записи

Сторінки

  • Головна
  • Для викладачів
  • Для ІТ-спеціалістів
  • Інструкція для викладача
  • Пілот проєкту
  • Приєднатись до Kharkiv IT Cluster
  • Силабуси

Архіви

  • Організаційна зустріч 23.06.2025
  • Старт нового сезону сертифікації — 2025

Календар

Квітень 2026
Пн Вт Ср Чт Пт Сб Нд
 12345
6789101112
13141516171819
20212223242526
27282930  
« Чер    

Тема WordPress Project Management від Misbah WP | Працює на WordPress