На сегодняшний день темы Machine Learning и Data Analysis (Машинное обучение и Анализ данных) являются самыми горячими и обсуждаемыми. Каждый крупный игрок на рынке информационных технологий старается каким-либо образом “отметиться” в этой области, что радует нас – разработчиков и исследователей. Одним из таких новых инструментов порадовала Microsoft, выпустив Visual Studio Tools for AI.
Что такое Visual Studio Tools for AI?
Visual Studio Tools for AI – это расширение для среды разработки Visual Studio, которое позволяет создавать, тестировать и развертывать Deep Learning и AI проекты. Ключевой особенностью данного инструмента является интеграция с сервисом машинного обучения Azure Machine Learning, но его также можно использовать и локально, что мы и попробуем сделать. Для работы с Visual Studio Tools for AI вам понадобится Visual Studio 2017. Если вы используете версию 2015, то нужно будет скачивать расширение, совместимое с данной средой разработки.
Установка Visual Studio Tools for AI
Для начала установим данное расширение. Это можно сделать двумя способами: первый – это скачать расширение на свой компьютер и установить локально. Второй – установить через менеджер расширений, встроенный в Visual Studio. Для этого запустите Visual Studio, и выберете на панели меню Tools -> Get Extensions and Updates…
В открывшемся окне найдите через строку поиска нужное нам расширение.
Настройка окружения для работы с Visual Studio Tools for AI
Установить Visual Studio Tools for AI – это только полдела. Нужно еще настроить окружение, которое позволит полноценно работать. Окружение – это необходимые библиотеки и интерпретатор языка программирования Python. Так уже сложилось, что Python стал фактически стандартом де-факто в области машинного обучения и анализа данных, поэтому без него никуда
Если хотите углубиться в тематику Python, то мы предлагаем ознакомиться с книгой “Python. Уроки” и ее онлайн версией на нашем сайте.
Еще одна важная деталь: для того, чтобы комфортно работать со всем предлагаемым набором инструментов (о этом ниже) необходимо наличие мощной видеокарты с поддержкой CUDA. Настроить окружение для работы можно, используя предоставляемый Microsoft специальный инструмент, либо вручную. Мы рассмотрим оба варианта.
Предварительная подготовка
Независимо от того, какой способ установки вы выберете, необходимо будет установить следующий набор компонент.
git
Система контроля версий git, позволит вам скачивать нужные библиотеки напрямую из репозиториев (мест хранения). Про установку можете прочитать здесь.
GPU Driver
Установите последнюю версию драйверов для видеокарты. Предполагается, что у вас адаптер от NVidea, поддерживающий CUDA. Драйвера можно найти здесь .
CUDA
CUDA – эта платформа, которая позволяет использовать ресурсы видеокарты для решения вычислительных задач. На момент написания статьи последняя версия CUDA – 8.0, скачать ее можно вот от сюда . После установки убедитесь, что в переменной окружения %PATH% прописан путь до бинарных файлов CUDA, по умолчанию в Windows они устанавливаются в папку “C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin“. Вот официальная страница CUDA, если вдруг вы захотите почитать о ней побольше.
cuDNN
После установки CUDA, скачайте и установите cuDNN (CUDA Deep Neural Network library) – библиотеку примитивов для работы с глубокими нейронными сетями, использующую ресурсы видеокарты. Скачать cuDNN можно здесь. Также как и с CUDA убедитесь, что путь до бинарных файлов cuDNN добавлен в переменную окружения %PATH% и, если вы пользуетесь Windows, скопируйте cudnn64_6.dll в папку “C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin“.
Python
Для работы с Visual Studio Tools for AI вам необходим интерпретатор языка Python версии 3.5 (версия 3.6 тоже должна быть совместима, но мы не пробовали). Python можно скачать с официального сайта. При установке не забудьте поставить галочку “Add Python 3.5 to PATH”.
После установки Python обновите менеджер pip.
> python -m pip install -U pip
Настройка Python в Visual Studio
Для настройки Python в Visual Studio для начала убедитесь, что он установлен. Для этого зайдите в Visual Studio Installer.
Нажмите на кнопку “Изменить” в выпадающем списке “Добавить” для установленной Visual Studio. В появившемся окне выберете “Разработка на Python”.
После установки вам необходимо будет установить интерпретатор Python, который будет использоваться по умолчанию в Visual Studio. Для этого зайдите через панель меню в настройки Tools > Python > Python Environments, в появившемся окне выберете Python 3.5 (64 bit) и нажмите на Make this the default environment for new projects. На этом заканчивается этап установки обязательных компонент для работы с Visual Studio Tools for AI, остальные элементы можно установить автоматически, воспользовавшись инструментом от Microsoft, либо сделать это вручную. Для начала рассмотрим первый вариант.
Установка необходимых библиотек в автоматическом режиме
Для того, чтобы воспользоваться данным инструментом необходимо предварительно:
- Установить драйвера для видеокарты с поддержкой CUDA (данную технологию поддерживают только карты от NVidia), саму CUDA и библиотеку cuDNN для работы с Deep Neural Network (Глубокими нейронными сетями).
- Установить интерпретатор Python версии 3.5 или 3.6.
Эти шаги были нами выполнены в рамках раздела “Предварительная подготовка” (см. выше).
После этого откройте командное окно и выполните следующие команды:
git clone https://github.com/Microsoft/samples-for-ai.git cd samples-for-ai cd installer
Если у вас операционная система Windows, то выполните:
python.exe install.py
Если Linux, то:
python3 install.py
Установка необходимых библиотек в ручном режиме
Ниже представлен список библиотек, которые нужно будет установить в ручном режиме.
Numpy
Numpy – библиотека языка Python, предоставляющая функции для работы с многомерными массивами.
pip3 install -U numpy
Scipy
Scipy – библиотека языка Python, базирующаяся на numpy, предназначена для проведения научных и инженерных расчетов.
pip3 install -U scipy
Microsoft Cognitive Toolkit (CNTK)
Microsoft Cognitive Toolkit – инструмент от Microsoft для работы с глубокими нейронными сетями. В зависимости от того, используете ли вы видеокарту для ускорения вычислений, необходимо установить нужную версию данной библиотеки.
В операционной системе Windows:
– с поддержкой GPU:
pip3 install https://cntk.ai/PythonWheel/GPU/cntk-2.3.1-cp35-cp35m-win_amd64.whl
– без поддержки GPU:
pip3 install https://cntk.ai/PythonWheel/CPU-Only/cntk-2.3.1-cp35-cp35m-win_amd64.whl
В операционной системе Linux:
– с поддержкой GPU:
pip3 install https://cntk.ai/PythonWheel/GPU/cntk-2.3.1-cp35-cp35m-linux_x86_64.whl
– без поддержки GPU:
pip3 install https://cntk.ai/PythonWheel/CPU-Only/cntk-2.3.1-cp35-cp35m-linux_x86_64.whl
TensorFlow
TensorFlow – библиотека для численных вычислений, использующая графы потоков данных (data flow graphs), разработанная компанией Google.
Установка версии библиотеки, использующую GPU:
pip3 install tensorflow-gpu==1.4.0
не использующую GPU:
pip3 install tensorflow==1.4.0
Caffe2
Caffe2 – легковесный, модульный и масштабируемый framework для deep learning. Информацию по установке данного компонента можно найти на официальном сайте продукта.
MXNet
MXNet – deep learning библиотека, разрабатываемая в рамках Apache.
Установка версии с поддержкой GPU:
pip3 install mxnet-cu80==1.0.0
без поддержки GPU:
pip3 install mxnet==1.0.0
Keras
Keras – библиотека, предоставляющая высокоуровневый API для работы с нейронными сетями. В качестве backgroud’а Keras может использовать TensorFlow, CNTK, Theano.
pip3 install Keras
Theano
Theano – библиотека для языка Python, предоставляющая инструменты для проведения быстрых математических вычислений с многомерными массивами.
pip3 install Theano
PyTorch
PyTorch – framework для работы с тензорами и динамическими нейронными сетями в Python.
Установка под Windows
К сожалению, у PyTorch нет готового дистрибутива под Windows, и поэтому приготовления для установки данной библиотека нам придется сделать самим.
- Первое, что нужно сделать это скачать PyTorch пакет из Anaconda. О том, что такое Anaconda и как ее установить и использовать можете прочитать здесь.
- Распакуйте скачанную библиотеку в папку, например “D:\pytorch“.
- Добавьте в переменную окружения %PYTHONPATH% следующий путь: “D:\pytorch\Lib\site-packages“, либо скопируйте содержимое папки “D:\pytorch\Lib\site-packages” в папку “Lib\site-packages” Python интерпретатора.
Установка под Linux
Для установки под Linux можете воспользоваться следующей командой.
pip3 install torchvision
Chainer
Chainer – framework для работы с нейронными сетями. Для вычислений использует CUDA, поддерживает архитектуры различных нейронных сетей.
Для начала установите cupy для поддержки CUDA.
pip3 install cupy
После этого уже можно устанавливать сам Chainer.
pip3 install chainer
На этом мы закончим вопрос установки и настройки Visual Studio Tools for AI. Следующая статья будет посвящена запуску тестового проекта с использованием данного инструмента.
Статья написана по материалам c официального github репозитория Visual Studio Tools for AI.