Основы нейросетей. Теория и практика [Codeby Academy] [Артур Сапрыкин]
Что вы изучите в рамках курса?
Вы получите теоретические знания и практический опыт в создании, обучении и применении нейронных сетей, включая их применение в различных областях Data Science
Глубокое понимание нейросетей.
Вы углубите понимание принципов работы нейронных сетей, что позволит вам лучше ориентироваться в этой области.
Практические навыки
Разработка собственных нейронных сетей на практике укрепит ваши технические навыки и способность решать сложные задачи
Решение сложных задач
Вы получите навыки применения продвинутых архитектур нейронных сетей для решения комплексных задач в Data Science.
Применение в Data Science
Понимание и использование продвинутых архитектур нейронных сетей откроет новые возможности в различных областях Data Science.
Также обучение IT-сотрудников на нашем курсе выгодно для владельцев бизнеса, ведь это поможет:
Курс будет полезен начинающим и опытным разработчикам, аналитикам данных и руководителям IT-проектов , желающим освоить или углубить знания в области нейронных сетей и машинного обучения
Преподаватель курса: Артур Сапрыкин
Продолжительность курса: 16 недель
Цена: 34990р.
Что вы изучите в рамках курса?
Вы получите теоретические знания и практический опыт в создании, обучении и применении нейронных сетей, включая их применение в различных областях Data Science
- Изучите теоретические основы и научитесь создавать нейронные сети, решая практические задачи
- Познакомитесь с типичными проблемами при обучении сетей и способами их решения
- Узнайте о сложных архитектурах нейронных сетей и их применении в Data Science
Глубокое понимание нейросетей.
Вы углубите понимание принципов работы нейронных сетей, что позволит вам лучше ориентироваться в этой области.
Практические навыки
Разработка собственных нейронных сетей на практике укрепит ваши технические навыки и способность решать сложные задачи
Решение сложных задач
Вы получите навыки применения продвинутых архитектур нейронных сетей для решения комплексных задач в Data Science.
Применение в Data Science
Понимание и использование продвинутых архитектур нейронных сетей откроет новые возможности в различных областях Data Science.
Также обучение IT-сотрудников на нашем курсе выгодно для владельцев бизнеса, ведь это поможет:
- Развитие навыков в области нейронных сетей способствует внедрению новых технологий в бизнес-процессы
- Специалисты, владеющие передовыми технологиями, дают компании конкурентное преимущество в быстро меняющемся цифровом мире
Курс будет полезен начинающим и опытным разработчикам, аналитикам данных и руководителям IT-проектов , желающим освоить или углубить знания в области нейронных сетей и машинного обучения
Преподаватель курса: Артур Сапрыкин
Продолжительность курса: 16 недель
Неделя 1: «Введение»
Цели занятий: Узнать основные понятия о том, что такое нейронные сети. В каких
случаях их применяют, и какие требования к ученикам.
Урок 1. Введение
Цели занятий: Узнать, что такое прямое распространение в нейронной сети. Какая
теория стоит за прямым распространением. Начнём создание своего класса на языке
программирования Python для реализации нейронной сети с прямым
распространением.
Урок 3. Прямое распространение. Теория.
Неделя 3: «Обратное распространение. Теория»
Цели занятий: Узнать, каким же образом нейронные сети обучаются, что за теория стоит
за всем этим.
Урок 5. Обратное распространение. Теория 1
Цели занятий: Закрепить полученные знания практикой, дополнив разработанный класс
методом обратного распространения
Урок 7. Обратное распространение. Практика 1
1. Реализация процесса обратного распространения (без произвольных функций
активации).
Урок 8. Обратное распространение. Практика 2
Цели занятий: Узнать основной функционал библиотеки Keras, её назначение. Практика
работы с библиотекой.
Урок 9. Основы Keras
Урок 10. Описание элементов Keras
Цели занятий: Изучить ряд особенностей при инициализации весов. Узнать, что такое
переобучение, и как регуляризация помогает в решении этой проблемы.
Урок 11. Кросс-энтропия
Цели занятий: Дополнить разработанный класс для обучения нейронной сети методами
инициализации весов, регуляризации и кросс-энтропии. Какие ещё функции активации
существуют, и для чего они.
Урок 13. Практикум по доработке нейронной сети.
Неделя 8: «Сложности обучения нейронных сетей»
Цели занятий: Узнаете, что мешает благополучному обучению нейронных сетей, и как
это можно исправить. Переносимость и дообучение нейросетевых моделей на другие
задачи
Урок 15. Сложности обучения нейронной сети
Цели занятий: Узнаете особенности архитектуры сверточных нейронных сетей, их
сходства с полносвязными сетями. Увидите примеры применения.
Урок 17. Сверточные нейронные сети. Теория 1
Урок 18. Сверточные нейронные сети. Теория 2
Цели занятий: Обучим свою сверточную нейронную сеть для работы с изображениями.
Примените предобученную нейронную сеть для решения локальных задач
классификации изображений.
Урок 19. Практика обучения сверточной сети. Часть 1
Цели занятий: Узнаете, как обрабатывать последовательности с помощью реккурентных
нейронных сетей и какие их виды есть. Отработать на практике и закрепить знания о
реккурентных сетях.
Урок 21. Реккурентные сети
Цели занятий: Узнать, что такое временные ряды, и как они связанны с нейронными
сетями. Попрактикуетесь в построении комбинации реккурентных сетей и полносвязных
для задачи классификации текста.
Урок 23. Практикум временных рядов
Урок 24. Классификация текстов
Цели занятий: Узнать более сложные архитектуры, и какие преимущества они несут.
Практическая работа в обучении seq2seq-модели для восстановления единого формата
данных.
Урок 25. Сложные архитектуры нейронных сетей
1. Практика обучения модели восстановления единого формата текста.
Неделя 14: «Продвинутые решения в мире нейронных сетей. Часть 1»
Цели занятий: Узнать, как работают трансформеры. Те самые архитектуры, которые
лежат в основе GPT-моделей и многих других.
Урок 27. Трансформеры
Неделя 15: «Продвинутые решения в мире нейронных сетей. Часть 2»
Цели занятий: Узнаете про генеративно-состязательные сети, и их популярная сфера
применения. Познакомитесь со Stable Diffusion. С подходом, который осуществил
прорыв в генерации изображений.
Урок 29. Генеративно-состязательные модели (GAN). Stable Diffusion.
Цели занятий: Проверить полученные знания и оценить учащихся
Урок 31. Итог
Цели занятий: Узнать основные понятия о том, что такое нейронные сети. В каких
случаях их применяют, и какие требования к ученикам.
Урок 1. Введение
- Что такое нейронные сети?
- Какие задачи решают с помощью нейронных сетей?
- Что необходимо знать, чтобы понимать принципы работы нейронных сетей?
- Абстрактное деление на типы слоёв в любой нейронной сети
- Особенности входных и выходных слоёв
- Простейшая архитектура с одним нейроном
- Вычислительный процесс на одном нейроне
- Что такое функция активации
Цели занятий: Узнать, что такое прямое распространение в нейронной сети. Какая
теория стоит за прямым распространением. Начнём создание своего класса на языке
программирования Python для реализации нейронной сети с прямым
распространением.
Урок 3. Прямое распространение. Теория.
- Полносвязная нейронная сеть.
- Чем отличается «глубокое обучение» от просто «обучения»
- Прямое распространение. Что происходит от слоя к слою. Формулы расчётов
- Зачем разрабатывать то, что уже и так реализовано в библиотеках?
- Написание класса на Python для нейронной сети
- Реализация процесса прямого распространения (без произвольных функций
Неделя 3: «Обратное распространение. Теория»
Цели занятий: Узнать, каким же образом нейронные сети обучаются, что за теория стоит
за всем этим.
Урок 5. Обратное распространение. Теория 1
- Функция потерь
- Градиентный спуск
- Что такое обратное распространение?
- Теория обратного распространения
- Алгоритм обратного распространения
Цели занятий: Закрепить полученные знания практикой, дополнив разработанный класс
методом обратного распространения
Урок 7. Обратное распространение. Практика 1
1. Реализация процесса обратного распространения (без произвольных функций
активации).
Урок 8. Обратное распространение. Практика 2
- Реализация метода стохастического градиентного спуска
- Практическое применение разработанной нейронной сети
Цели занятий: Узнать основной функционал библиотеки Keras, её назначение. Практика
работы с библиотекой.
Урок 9. Основы Keras
- Основные известные библиотеки для создания нейронных сетей
- Keras, как обёртка над более низкоуровневыми библиотеками. Для чего она?
- Построение первой архитектуры нейронной сети на Keras. Аналогия с
Урок 10. Описание элементов Keras
- Элементы Keras
- Особенности применения элементов, что на что влияет
Цели занятий: Изучить ряд особенностей при инициализации весов. Узнать, что такое
переобучение, и как регуляризация помогает в решении этой проблемы.
Урок 11. Кросс-энтропия
- Сходимость, в зависимости от начальных значений весов
- Кросс-энтропия. Значение кросс-энтропии
- Обучение на нескольких выходах. Функция софтмакс.
- Что такое переобучение модели?
- Формула регуляризации. Её роль и особенности.
Цели занятий: Дополнить разработанный класс для обучения нейронной сети методами
инициализации весов, регуляризации и кросс-энтропии. Какие ещё функции активации
существуют, и для чего они.
Урок 13. Практикум по доработке нейронной сети.
- Создание классов для функций потерь
- Разработка методов инициализации весов
- Реализация регуляризации
- Проверка работы нейронной сети
- Основные виды функций активации
- Как они применяются в моделях
- Для чего нужно такое разнообразие и в как часто их необходимо применять в
Неделя 8: «Сложности обучения нейронных сетей»
Цели занятий: Узнаете, что мешает благополучному обучению нейронных сетей, и как
это можно исправить. Переносимость и дообучение нейросетевых моделей на другие
задачи
Урок 15. Сложности обучения нейронной сети
- Затухающий градиент
- Что вызывает затухание градиента?
- Взрывающийся градиент
- Способы исправления
- Что такое переносимость моделей?
- Какие преимущества этого свойства у нейронных сетей
- Где это применяется, и каким образом это можно сделать?
- Практический пример применения переносимости моделей.
Цели занятий: Узнаете особенности архитектуры сверточных нейронных сетей, их
сходства с полносвязными сетями. Увидите примеры применения.
Урок 17. Сверточные нейронные сети. Теория 1
- Линейные фильтры в обработке изображений
- Что из себя представляют сверточные нейронные сети.
- Что происходит внутри? Смысл применения сверточных нейронных сетей в
Урок 18. Сверточные нейронные сети. Теория 2
- Операция свертки.
- Pooling и их виды.
- Dropout. Как метод борьбы с переобучением.
- Готовые архитектуры, их применимость для решения локальных задач
- Применение сверточных нейронных сетей в анализе текстов
Цели занятий: Обучим свою сверточную нейронную сеть для работы с изображениями.
Примените предобученную нейронную сеть для решения локальных задач
классификации изображений.
Урок 19. Практика обучения сверточной сети. Часть 1
- Обучение на CPU и на GPU в Keras.
- Работа с датасетом изображений
- Построение архитектуры в Keras
- Обучение модели. Валидация результатов
- Обучение на CPU и на GPU в Pytorch
- Работа с датасетом изображений
- Применение готовых архитектур для работы с изображениями
- Построение архитектуры в Pytorch
- Обучение модели. Валидация результатов
Цели занятий: Узнаете, как обрабатывать последовательности с помощью реккурентных
нейронных сетей и какие их виды есть. Отработать на практике и закрепить знания о
реккурентных сетях.
Урок 21. Реккурентные сети
- Общая архитектура реккурентных сетей.
- Особенности применения, преимущества и недостатки
- Развитие реккурентных сетей в LSTM и GRU
- Более детальное знакомство с PyTorch
- Построение модели генерации имён с помощью реккурентных нейронных сетей
Цели занятий: Узнать, что такое временные ряды, и как они связанны с нейронными
сетями. Попрактикуетесь в построении комбинации реккурентных сетей и полносвязных
для задачи классификации текста.
Урок 23. Практикум временных рядов
- Знакомство с временными рядами. Что это и где мы их видели?
- Построение модели прогнозирования значений временного ряда с помощью
Урок 24. Классификация текстов
- Работа с данных
- Построение модели классификации текстов в PyTorch.
- Обучение модели. Валидация результатов.
Цели занятий: Узнать более сложные архитектуры, и какие преимущества они несут.
Практическая работа в обучении seq2seq-модели для восстановления единого формата
данных.
Урок 25. Сложные архитектуры нейронных сетей
- Автоэнкодеры и декодеры
- Seq2seq модели. Особенности применения на примере машинного перевода.
1. Практика обучения модели восстановления единого формата текста.
Неделя 14: «Продвинутые решения в мире нейронных сетей. Часть 1»
Цели занятий: Узнать, как работают трансформеры. Те самые архитектуры, которые
лежат в основе GPT-моделей и многих других.
Урок 27. Трансформеры
- Трансформеры, как ядро современных языковых нейросетевых моделей.
- Механизм Self-attention. Принцип работы.
- Какие известные модели содержат в себе трансформеры и что они нам дали?
- Практический пример применения BERT для локальных задач по работе с
Неделя 15: «Продвинутые решения в мире нейронных сетей. Часть 2»
Цели занятий: Узнаете про генеративно-состязательные сети, и их популярная сфера
применения. Познакомитесь со Stable Diffusion. С подходом, который осуществил
прорыв в генерации изображений.
Урок 29. Генеративно-состязательные модели (GAN). Stable Diffusion.
- Что такое GAN, и где они проявили себя?
- Общий принцип их работы и обучения подобных моделей
- Как устроен Stable Diffusion. Подход, осуществи
- Построение модели GAN.
- Обучение на нескольких итерациях, предварительная оценка результатов.
Цели занятий: Проверить полученные знания и оценить учащихся
Урок 31. Итог
- Итоговая практическая работа
- Экзамен по теоретической части
- Результаты
- Ориентирование в дальнейшем развитии
https://neuronet.codeby.school/