Сверточные нейронные сети для компьютерного зрения [0.1] Введение и установка

Эта статья открывает цикл статей, основанных на переводе лекций и практических заданий курса CS231n Convolutional Neural Networks for Visual Recognition Стэнфордовского университета, этот курс является вводным в использование сверточных нейронных сетей для задач компьютерного зрения. В первой части рассмотрены вопросы структуры курса и подготовки рабочей среды. В рамках перевода некоторые термины не будут переводится в силу редкости русскоязычных ресурсов и повсеместного использования оригинальных названий. Кроме того, статьи не являются точным переводом и могут быть дополнены авторами. 

Отдельная просьба к читателям: при наличии вопросов, задавайте их в сообщениях сообщества в VK.

О курсе

Требования к читателю

  • Знание Python, знакомство с C / C ++. Основная часть материалов курса будет рассматриваться в контестве использования языка Python (и библиотеки NumPy), но некоторые из библиотек глубокого обучения, которые будут рассматриваться в курсе, написаны на C ++. Стоит отметить, что большой опыт программирования, но на другом языке (например, C/C++/Matlab/Javascript), вы, вероятно, сможете освоить Python в процессе изучения прочего материала.
  • Знание линейной алгебры и основ математического анализа. В рамках курса вам придется работать с производными и понимать матричные, векторные операции и обозначения. 
  • Базовые знания теории вероятности и статистики. В рамках курса вам придется столкнуться с основами теории вероятности, гауссовых распределений, среднего значения, стандартного отклонения и т. д.
  • Базовые знания машинного обучения. В курсе используются функции потерь, производные и оптимизации с градиентным спуском.

Структура курса

Курс состоит из 3-х модулей: 0. подготовка, 1. нейронные сети и 2. сверточные нейронные сети. Примем следующий способ нумерации статей в их названиях: [M.A] Название статьи, где M — номер модуля, A — номер статьи. Так, например, название этой статьи “[0.1] Введение и подготовка”.

Курс имеет следующее содержание:

Установка

Вы можете работать над задачами одним из двух предлагаемых способов: локально на своей собственной машине или на виртуальной машине в Google Cloud.

Удаленная работа на Google Cloud 

Замечание: если вы хотите работать в Google Cloud после выполнения изложенных здесь инструкций, вы можете пропустить раздел Работа локально.

Для работы над задачами этого курса вы можете использовать Google Cloud. Этот способ рекомендуется тех, кто испытывает проблемы с установкой окружения, или если вы хотите использовать больше ресурсов CPU/GPU чем доступно на вашем устройстве. Инструкция по настройке доступна здесь. Стоит заметить, что использование облачных ресурсов таким способом не является полностью бесплатным и может привести к значительным затратам.

Удаленная работа с использованием Google Colaboratory

Такой вариант работы не предполагается в оригинальном курсе, однако Google предлагает бесплатную платформу для исследователей, не требующую никаких дополнительных регистраций для работы в среде, схожей с Jupyter Notebook. Для работы с ней достаточно загрузить файл блокнота на Google Drive и открыть его с помощью Google Colab.

Работа на локальной машине

Установка Анаконды: Если вы решили работать локально, мы рекомендуем использовать бесплатный дистрибутив Anaconda Python, который предлагает простое решение проблемы зависимостей пакетов. Пожалуйста, убедитесь что вы загрузили версию Python 3, которая на текущий момент устанавливает Python 3.7. Мы больше не поддерживаем Python 2. 

Виртуальное окружение Anaconda: После установки Anaconda, имеет смысл создать виртуальное окружение для этого курса. Если вы решили не использовать виртуальное окружение, то убедитесь, что все зависимости воздействующие на код установлены глобально на вашей машине. Для настройки виртуального окружения выполните следующие команды (в терминале): 

Чтобы создать окружение с именем cs231n.

Затем, чтобы активировать и войти в окружение, выполните

Для выхода, вы можете просто закрыть окно или выполнить

Заметьте что каждый раз когда вы хотите поработать над задачами курса, вы должны выполнять source activate cs231n (изменяя имя текущего виртуального окружения).

На этой странице представлены более детальные инструкции по управлению виртуальным окружением с помощью Anaconda. 

Виртуальное окружение Python: Альтернативно можно использовать виртуальное окружение Pytnon. Чтобы его настроить, выполните следующие команды:

Добавить комментарий