Начав программировать на Python, разработчик довольно быстро сталкивается с недостаточной производительностью CPU при просчете моделей машинного / глубокого обучения, особенно в области сверточных нейросетей компьютерного зрения.
Ниже приведена довольно простая инструкция как изначально поставить и сконфигурировать среду Python с использованием графических карт (GPU).
Примечание. Убедитесь, что у вас есть видеокарта NVIDIA! Если она отсутствует, то приведенной инструкцией также можно воспользоваться, установив CPU версию среды Python.
Update 20.11.19: добавлена инструкция для tensorflow 2.0!
Обзор
Новичку в области машинного обучения требуется несколько часов, чтобы понять, как правильно настроить среду Python. Для облегчения этой задачи я решил рассказать как это делаем мы в нашей Лаборатории
Это позволяет в последствие избежать массы ненужных трудностей. Мы начнем с установки Anaconda Navigator, которая даст возможность создавать независимые среды, и это очень удобно . Кроме того, с помощью Anaconda мы можем легко установить совместимые модули Python с помощью очень простых команд. Наконец, мы можем использовать Anaconda, чтобы установить Jupyter или Spyder – удобные графические интерфейсы разработки в среде Python. Если вы будете следовать процедуре, шаг за шагом, как показано ниже, вы установите Tensorflow , Keras и Scikit, адаптированные под просчеты с GPU.
Установка Анаконды
Чтобы начать строить модели машинного обучения (ML) с помощью Python, мы начнем с установки Anaconda Navigator. Anaconda предоставляет эффективный и простой способ установки модулей Python на ваш компьютер.
Загрузите и установите последнюю версию Anaconda Navigator для вашей операционной системы. Мы работаем в среде Windows, поэтому кликнете на tab Windows сверху перед тем как начать загрузку. Мы загружаем версию 3.7.
Продолжите работу с мастером установки, обязательно установите Anaconda Navigator для одного пользователя, как рекомендует установщик. Установка Anaconda для всех пользователей может привести к проблемам. Например, вы не сможете установить какие-либо модули, потому что Anaconda не будет иметь необходимых привилегий.
По окончанию установки основного модуля, необходимо установить утилиту VS. Запустите из меню Windows – Anaconda Navigator и выберите вкладку «Home», она должна быть выбрана по умолчанию. Найдите панель VS code и нажмите кнопку «Установить». Это займет минуту или две .
После установки VS Code вы сможете увидеть кнопку запуска под панелью VS Code.
Установка Keras* и Tensorflow
* В вышедшей недавно версии tensorflow 2.0 Keras перестал быть независимой библиотекой, а стал API внутри tensorflow, что очень логично и сильно упрощает работу с этими двумя пакетами.
Теперь, когда мы установили Anaconda, давайте установим Keras и Tensorflow на нашей машине.
Закройте Anaconda Navigator и запустите Anaconda Prompt. Это проще всего сделать, выполнив поиск в строке поиска Windows, или найдите в меню Windows под вкладкой Anaconda3. Должен открыться следующий терминал. Обратите внимание, что он откроется в базовой среде Anaconda.
Теперь необходимо инсталлировать Python с Keras и Tensorflow. Это может занять несколько минут. Используйте следующую команду:
conda install python=3.8
* Версию языка python определите сами. Мы указали последнюю 3.8, но это зависит от совместимости используемых вами библиотек. В частности, как вы увидите дальше, для tensorflow 2.0 мы советуем установить версию python 3.6.
Дальше создаем новую среду conda под GPU, где мы будем устанавливать модули для построения моделей с использованием графического процессора. Для этого выполните следующую команду:
conda create --name PythonGPU
Примечание. Убедитесь, что у вас есть видеокарта NVIDIA!
Если вы хотите использовать свой основной процессор (CPU) вместо этого, выполните следующую команду:
conda create --name PythonCPU
Примечание. Дальнейшую инструкцию также можно адаптировать под CPU версию, просто заменяя в командах GPU на CPU.
Думаю, понятно, что название среды вы можете придумать свое. Необязательно называть их как принято у нас в ID-lab.
Следуйте инструкциям, отображаемым на терминале. Среда сonda дает пользователю возможность устанавливать очень специфические модули, которые являются независимыми. Лично я обычно создаю две среды. Одну, где я могу строить свои модели, используя основной процессор (CPU), а другую – где я могу строить свои модели, используя графический процессор (GPU). Для получения дополнительной информации о среде conda, я предлагаю вам взглянуть на официальную документацию.
Для активации только что созданной среды conda используйте следующую команду:
activate PythonGPU
или
conda activate PythonGPU
Обратите ваше внимание на изменение командной строки, убедитесь, что вы переключились с базовой среды Python на GPU:
Для деактивации среды в дальнейшем (после завершения установки) используйте:
conda deactivate
Для того, чтобы установить Keras и Tensorflow в версии GPU, выполните следующую команду *:
conda install -c anaconda keras-gpu
* В версии tensorflow 2.0 все поменялось с точностью до наоборот. Теперь правильная команда выглядит так:
conda create -n PythonGPU python=3.6 tensorflow-gpu
На экране вы увидете статус загрузки и установки соответствующих модулей. Как только процесс прекратится, мы можем двигаться дальше.
Теперь ставится пакет tensorflow 2.0, который по умолчанию включает в себя keras. Обратите внимание на рекомендованную версию python для работы с tensorflow 2.0. Пока это 3.6. Мы не рекомендуем ставить python 3.7 и уж тем более 3.8.
Получение Jupyter, Spyder и других пакетов Python для машинного обучения / глубокого обучения
Теперь удобно установить графический интерфейс для программирования в среде Python. Вы всегда можете использовать Vim для написания и редактирования своих скриптов Python, но это не очень удобно. Наиболее распространенными GUI являются Jupyter или Spyder, имеющие набор удобных и полезных функций.
conda install spyder
или
conda install jupyter
Другая необходимая чрезвычайно мощная библиотека – Pandas, которая позволяет легко читать, манипулировать и визуализировать данные.
conda install -c anaconda pandas
Если вы хотите читать файлы Excel с помощью Pandas, выполните также следующие команды:
conda install -c anaconda xlrd
conda install -c anaconda xlwt
Установите библиотеку Seaborn. Seaborn – это удивительная библиотека, которая позволяет вам легко визуализировать ваши данные.
conda install -c anaconda seaborn
Для установки scikit -learn:
conda install -c anaconda scikit-learn
Для работы с изображениями:
conda install pillow
или в случае opencv, разработчик советует использовать следующую команду:
conda install -c conda-forge opencv
Добавление недостающих модулей
К настоящему времени вы должны чувствовать себя комфортно при установке модулей с помощью команды conda. Это несложная и быстрая процедура. Если вам нужен конкретный модуль, просто найти его в Google:
Anaconda LibraryNameYouWant Install
Запуск Jypyter и проверка правильности установки всех модулей
Чтобы запустить Jupyter (или Spider), найдите его в меню Windows в разделе Anaconda. Вы можете теперь использовать GPU версию: Jupyter Notebook (PythonGPU).
Чтобы убедиться, что все установлено правильно, выполните следующие строки кода на консоли python*:
* В случае tensorflow 2.0 загрузка keras выглядит иначе. Возможно либо не загружать keras отдельно, а обращаться к нему как:
tensorflow.keras
или загрузить его как tensorflow API:
from tensorflow import keras
Как видно, все работает! Вы теперь находитесь в среде разработки PythonGPU и можете эффективно просчитывать / обучать весьма затратные модели машинного / глубокого обучения.