Вы пока не разбираетесь, почему ReLU лучше сигмоиды, чем отличается Rprop от RMSprop, зачем нормализировать сигналы и что такое skip connection? Зачем нейронной сети нужен граф, и какую он совершил ошибку, что она распространяется обратно? У вас есть проект с компьютерным зрением или, может быть, делаете межгалактического робота для борьбы с грязными тарелками, и хотите, чтобы он мог сам решать, отмывать или и так сойдет?

Мы запускаем открытый курс «Нейронные сети и компьютерное зрение», который адресован тем, кто в этой области делает первые шаги. Сильные стороны курса:

  • авторы курса знают, о чем говорят: это инженеры московского Центра искусственного интеллекта Samsung, Михаил Романов и Игорь Слинько;
  • есть как теория с задачками, так и практика на PyTorch
  • приступаем к практике сразу после освоения минимальных теоретических знаний.
  • лучшие студенты будут приглашены на собеседование в Samsung Research Russia!



Этот курс открылся 1 июня – первый в серии бесплатных онлайн-курсов от Samsung на платформе Stepik. Сделан выбор именно российской платформы, чтобы предоставить больше возможностей для русскоязычной аудитории. Курсы преимущественно будут посвящены области Machine Learning (ML). Выбор неслучаен: в мае 2018 года в Москве открылся Центр искусственного интеллекта Samsung, где работают такие научные звезды ML, как Виктор Лемпицкий (самый цитируемый ученый России в категории Computer Science), Дмитрий Ветров, Антон Конушин и многие другие.

Итак, за 6 недель видеолекций и практических заданий, занимаясь по 3-5 часов в неделю, вы сумеете разобраться, как решать базовые задачи машинного зрения, а также приобретете необходимую теоретическую подготовку для дальнейшего самостоятельного изучения области.

Предполагается два режима прохождения курса: базовый и продвинутый. В первом случае достаточно смотреть лекции, отвечать на вопросы по лекциям и решать семинары. Во втором случае потребуется решить теоретические задачи, в которых нужно будет применить достаточно обширные знания из математики 1-2 курсов технического университета.

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

Преподаватели курса


Михаил Романов

Выпускник МФТИ. Закончил Школу анализа данных Яндекса. Получил степень PhD в Technical University of Denmark.

Сотрудник московского Центра ИИ Samsung. Михаил занимается задачами машинного зрения для роботов и любит преподавать. У него есть много идей и тем для дальнейших курсов. Один из выпускников AI Bootcamp 2018 в выходной анкете на вопрос оценить Михаила в 5-балльной шкале как преподавателя, написал: «жаль, что нет оценки шесть!».


Игорь Слинько

Выпускник МФТИ. Закончил Школу анализа данных Яндекса. Сотрудник московского Центра ИИ Samsung. Игорь также занимается задачами машинного зрения для роботов, преподает Machine Learning в Высшей школе экономики. В прошлом и в этом году он лектор-волонтер мастерской «Deep Learning» социально-образовательного проекта Летняя школа.


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


Нейронная сеть:

  1. Математическая модель нейрона
  2. Булевы операции в виде нейронов
  3. От нейрона к нейронной сети
  4. Семинар: Базовая работа в PyTorch

Строим первую нейронную сеть:

  1. Восстановление зависимости нейронной сетью
  2. Компоненты нейронной сети
  3. Теоретические задачи: Восстановление зависимостей
  4. Алгоритм настройки нейронной сети
  5. Теоретические задачи: Графы вычислений и BackProp

Задачи, решаемые при помощи нейронных сетей:

  1. Бинарная классификация? Бинарная кросс-энтропия!
  2. Многоклассовая классификация? Софтмакс!
  3. Локализация, детекция, super-resolution
  4. Теоретические задачи: Функции потерь
  5. Семинар: Строим первую нейронную сеть
  6. Семинар: Классификация в PyTorch

Методы оптимизации:

  1. Самый обычный градиентный спуск
  2. Модификации градиентного спуска
  3. Теоретические задачи: Понимаем SGD с momentum
  4. Семинар: Реализация градиентного спуска средствами PyTorch
  5. Семинар: Классификация рукописных чисел полносвязной сетью

Свёрточные неройнные сети:

  1. Свёртка, каскад свёрток
  2. История архитектур: LeNet (1998)
  3. История архитектур: AlexNet (2012) и VGG (2014)
  4. История архитектур: GoogLeNet и ResNet (2015)
  5. Семинар: Распознавание рукописных чисел свёрточной нейросетью

Регуляризация, нормализация, метод максимального правдоподобия:

  1. Регуляризация и нейронные сети
  2. Нормализация данных
  3. Семинар: Решаем задачу классификации на датасете CIFAR
  4. Метод максимального правдоподобия
  5. Семинар: Transfer learning на примере соревнования на Kaggle

Требования к студентам


Курс рассчитан на слушателей, которые делают первые шаги в области машинного обучения. Что нужно от вас?

  1. Иметь базовые знания в области математической статистики.
  2. Быть готовым программировать на Python.
  3. Если вы хотите пройти курс на сложном уровне, то понадобится неплохое знание математического анализа, линейной алгебры, теории вероятностей и статистики.

Вызов принят? Тогда приступайте к курсу!

Комментарии (15)


  1. inno
    05.06.2019 13:13

    Распознавание рукописных чисел свёрточной нейросетью

    это и все из "в задачах компьютерного зрения" — только классификация?


    1. iot-academy_ru Автор
      05.06.2019 15:56

      В третьей лекции мы объясняем, из чего состоят современные задачи, намного сложнее многоклассовой классификации.

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


  1. RegisterWindowClassExA
    05.06.2019 16:52
    +1

    Спасибо за ссылку, мне понравилось — минимум воды, преподаватели не тянут время, чтобы ролик получился подлиннее, оптимальный баланс между понятностью и интенсивностью. ИМХО.
    Жалко только что этапы выходят раз в неделю.
    И платформа хорошая для создания уроков. В общем, спасибо большое за курс и за ссылку на него! :)


  1. Kordamon
    05.06.2019 19:09

    Обычно в описании курса указывается, на какой срок рассчитан этот курс (исходя из предположения 3-5 часов в неделю, например). Можно уточнить этот вопрос?


    1. RegisterWindowClassExA
      05.06.2019 19:39
      +1

      Я сегодня проходил курс, если я правильно понял, то: этапы курса выходят раз в неделю (в субботу в 00 часов 00 минут). Т.е. первый этап вышел 1-го июня, 2-й выйдет 8-го июня, ну и так далее, последний этап открывается 6-го июля. Там были какие-то отметки, когда дедлайн на прохождение этапа, но я не запомнил, сам этап я уже прошел, и они скрылись. Когда зарегистрируетесь — все увидите.
      Т.е. если будете идти по графику, то закончите к 14 июля :) Раньше нельзя (я хотел поднапрячся и за день весь курс пройти).


      1. Kordamon
        05.06.2019 19:50

        Спасибо!
        Хм, внезапно, это позволит мне воткнуть этот курс между другими запланированными. Интересно :)


        1. RegisterWindowClassExA
          05.06.2019 20:12

          Между какими? Поделитесь ссылками? :)


          1. Kordamon
            05.06.2019 20:22

            — Вот этот мне отлично зашел, чтобы разгрызть многопоточное программирование на Питоне (ну и вообще понять, как там работают классы): www.coursera.org/learn/diving-in-python/home/welcome
            — Вот этот отлично походит для Кэггла: www.coursera.org/learn/competitive-data-science/home/welcome

            Еще могу порекомендовать две специализации:
            — Вот этот для тех, кто хочет написать в CV «MS Certified Data Sienеist» :) academy.microsoft.com/en-us/professional-program/tracks/data-science
            — А вот эта дает очень удобный баланс из теории и практики: www.coursera.org/specializations/machine-learning-data-analysis
            — Есть еще курс от ВШЭ, но там слишком суровый матан для меня :)


            1. Kordamon
              05.06.2019 20:23

              ага, нашел как открыть ссылки…


    1. iot-academy_ru Автор
      06.06.2019 11:59

      В курсе указано предположительное время (3-5 часов в неделю, 6 недель), а ещё, что интересно, Stepik подсчитывает фактическое время прохождения курса. У нас пока нет статистики, так как курс только открылся для пользователей, но уже через пару недель сможем назвать более реальные цифры.


  1. Plesser
    06.06.2019 09:41

    Судя по программе курса, это базовый курс.
    Будет ли продолжение этого курса с описанием более продвинутых задач?


    1. iot-academy_ru Автор
      06.06.2019 11:56

      Михаил и Игорь заявляют о готовности и желании сделать продвинутый курс, значит в той или иной форме он обязательно появится!


      1. Plesser
        06.06.2019 12:06

        Это прекрасная новость!


  1. PageDown
    06.06.2019 13:01

    Будет ли курс доступен после июля?


    1. iot-academy_ru Автор
      06.06.2019 13:01

      Конечно, будет!