Создание нейросетей на Python

Этот курс научит вас созданию нейросетей на Python. Курс рассчитан на начинающих. Вся информация идёт от простого к сложному очень маленькими шажками. При этом глубокое знание математики не требуется, поскольку в курсе вы будете получать эти знания по мере необходимости. Из курса вы узнаете всю необходимую теорию и терминологию, научитесь создавать нейросети самых разных архитектур и обучать их. Также вы создадите собственный фреймворк. Затем вы изучите PyTorch.

Описание

Этот курс научит вас созданию нейросетей на Python. Курс рассчитан на начинающих. Вся информация идёт от простого к сложному очень маленькими шажками. При этом глубокое знание математики не требуется, поскольку в курсе вы будете получать эти знания по мере необходимости. Из курса вы узнаете всю необходимую теорию и терминологию, научитесь создавать нейросети самых разных архитектур и обучать их. Также вы создадите собственный фреймворк. Затем вы изучите PyTorch.

Что нужно знать для успешного прохождения курса?

Многие ошибочно считают, что без глубоких знаний по математике, невозможно научиться создавать нейросети. Однако, можно учиться создавать нейросети, параллельно получая необходимые знания по той же линейной алгебре. Именно по этому принципу и построен курс. Поэтому от вас требуется лишь минимальная компьютерная грамотность: умение создавать файлы, устанавливать программы, извлекать архивы.

Программа курса

Модуль 1. Введение

Список уроков:

  1. Как проходить курс?
  2. Введение в машинное обучение
  3. Установка необходимого ПО

В конце данного модуля у вас уже будет всё готово для создания нейросетей.

Модуль 2. Основы создания нейросетей

Обучение построено очень плавно. От тривиальных вещей до относительно сложных мы будем двигаться очень маленькими шажками. Поэтому понять данный модуль сможет даже гуманитарий.

Список уроков:

  1. Создание простейшей нейросети
  2. Создание нейросети с несколькими входами
  3. Создание нейросети с несколькими выходами
  4. Создание нейросети с несколькими входами и выходами
  5. Добавление скрытого слоя
  6. Библиотека NumPy
  7. Упрощение кода с помощью NumPy
  8. Оценка ошибки
  9. Градиентный спуск
  10. Решение проблемы с расхождением
  11. Градиентный спуск с несколькими входами
  12. Градиентный спуск с несколькими выходами
  13. Градиентный спуск с несколькими входами и несколькими выходами
  14. Обучение на нескольких наборах данных
  15. Создание нейросети, определяющей пол человека по весу и возрасту

После этого модуля вы уже научитесь создавать и обучать свои несложные нейросети.

Модуль 3. Создание сложных нейросетей

Простые нейросети уже могут решать многие задачи. Однако для большинства практических задач нужно научиться создавать нейросети с более сложной архитектурой. В этом модуле вы этому научитесь.

Список уроков:

  1. Скрытые слои и функция ReLu
  2. Обучение со скрытыми слоями
  3. Распознавание рукописных цифр
  4. Улучшение распознавания рукописных цифр
  5. Пакетный градиентный спуск
  6. Функция активации sigmoid
  7. Функция активации tanh
  8. Функция активации softmax

После этого модуля вы научитесь создавать достаточно сложные нейросети. Но и код становится уже большим и тяжёлым для восприятия.

Однако, его можно сильно упростить. Для этого нужно сделать обобщение всех наших знаний с помощью написания собственного фреймворка.

Модуль 4. Создание фреймворка

Специалисты по нейросетям знают, что существует много популярных фреймворков по созданию нейросетей: PyTorch, TensorFlow, Keras, Caffe и многие другие. Но это не WordPress, который можно успешно применять, не понимая, что такое PHP или HTML.

Без понимания фундамента, Вы не сможете грамотно применять эти фреймворки. И наилучший способ разобраться в них – это сделать свой фреймворк. Этим мы и займёмся в этом модуле.

Список уроков:

  1. Тензоры
  2. Добавление автоматической дифференциации
  3. Добавление отрицания
  4. Добавление вычитания
  5. Добавление умножения
  6. Добавление суммирования
  7. Добавление матричного умножения
  8. Добавление нелинейных функций
  9. Создание класса для стохастического градиентного спуска
  10. Первое применение фреймворка
  11. Добавление класса для линейного слоя
  12. Добавление класса для последовательных слоёв
  13. Добавление слоёв для нелинейных функций
  14. Добавления слоя для вычисления ошибки
  15. Добавление softmax

Созданный фреймворк поможет легко и быстро создавать весьма сложные нейросети буквально несколькими строчками кода. Но самое главное не это. Главное, вы будете знать, как любой фреймворк работает изнутри и как его грамотно применять.

Модуль 5. Фреймворк PyTorch

PyTorch – очень мощный и гибкий фреймворк для создания нейросетей. В этом модуле Вы познакомитесь с ним.

Список уроков:

  1. Установка PyTorch
  2. Создание тензоров
  3. Определение и обучение модели
  4. Сохранение и загрузка модели
  5. Создание глубокой нейросети
  6. Заключение

После этого модуля вы сможете применять PyTorch для создания действительно сложных нейросетей. Причём, фреймворк позволит вам это делать легко и быстро.

К курсу идут 3 бонуса, которые дадут вам ещё больше знаний по созданию нейросетей. Каждый из них тянет на отдельный курс. Однако, вы их получите бесплатно при заказе курса «Создание нейросетей на Python».

Бонус 1. Распознавание изображений

Это практический бонус, в котором мы создадим и обучим нейросеть с помощью PyTorch. Нейросеть будет определять, что нарисовано на изображении, и выводить свой прогноз. Данный Бонус познакомит вас ближе с PyTorch и углубит ваши знания. Вы узнаете про обработку изображений, свёрточные слои, слои нормализации, matplotlib и многое другое. Это поможет вам в создании своих нейросетей, связанных с анализом изображений.

Бонус 2. Анализ настроения по тексту отзыва

В этом бонусе вы увидите создание нейросети на PyTorch по технологии NLP (Natural Language Processing). NLP  – это технология машинного обучения для обработки естественного языка. Наша нейросеть будет определять настроение отзыва по его тексту. Она получит текст отзыва, проанализирует и выдаст результат: положительный отзыв или отрицательный. Двигаться мы будем очень маленькими шажками. Вы научитесь подготавливать текст, делать векторизацию слов, работать с рекуррентными нейронными сетями.

После этого Бонуса вы сможете создавать и свои нейросети для обработки текста и его анализа.

Бонус 3. Программирование на Python с Нуля до Гуру

Этот курс состоит из 73 видеоуроков и 12 часов видео. Он научит вас программировать на языке Python, который нужен для создания нейросетей. Курс состоит из 6 разделов, в которых вы с нуля освоите этот язык и сможете создавать самые разные программы для самых разных задач любой сложности. Если вы не знаете Python, то своё обучение надо начать именно с этого курса.

Детали

Автор

Продолжительность

9 часов видео