В этом пошаговом руководстве рассматриваются настройки BIOS, установка ОС Ubuntu, программного обеспечения для ускорения графического процессора, Python, пакет машинного обучения и глубокого обучения, а также создание виртуальных сред.
Если вы новичок в машинном обучении, работаете с ним ежедневно или даже создаете специализированные компьютеры для машинного обучения, хорошая рабочая система имеет важное значение. Однако настройка среды может занять много времени и нервов (из личного опыта).
Чтобы сделать его еще более сложным, существует множество способов настройки вашей среды и множество программ, которые необходимо включить. В прошлом году я установил бесчисленное количество сред машинного обучения на разных компьютерах и с различными конфигурациями. Я обнаружил, что просматриваю множество веб-сайтов и читаю разные руководства по всем отдельным частям процесса. Поэтому я решил объединить основные шаги по созданию среды машинного обучения и записал их в этом посте. Вы можете включить множество дополнительных опций, однако эта настройка проста и надежна.
Мы переходим от первого запуска нового компьютера к рабочей среде на этом же компьютере за 5 шагов. Кроме того, в этой настройке системы добавлены усовершенствования графического процессора, которые вы определенно захотите использовать при работе с большими моделями машинного обучения. Шаги следующие:
- Настройка BIOS компьютера
- Установите операционную систему Ubuntu
- Установите программное обеспечение для ускорения графического процессора (CUDA и cuDNN)
- Создайте виртуальную среду и установите Python
- Установить пакеты машинного обучения
Если вы еще не перешли на Linux / Ubuntu или, возможно, даже не слышали об этом, это руководство для вас! Ubuntu - мощная и удобная операционная система для машинного обучения, и работать с терминалом / командной строкой не так сложно, как может показаться. Я надеюсь показать в этом руководстве, что на самом деле это довольно просто.
Начнем!
1. Настройки BIOS
BIOS - это базовая система ввода-вывода вашего компьютера. BIOS инициализирует и тестирует компоненты оборудования системы и загружает операционную систему или загрузчик, если операционная система не установлена. Это система, которую вы видите, когда запускаете (новый) компьютер в первый раз, а операционная система (ОС) еще не установлена.
Если у вас установлена ОС, вы можете войти в BIOS, нажав одну из клавиш BIOS при запуске компьютера до загрузки ОС. Обычно это клавиша ESC или одна из клавиш F1-F12.
Вот так выглядит мой BIOS Home…
Перемещаясь по BIOS, вы можете видеть подробную информацию о вашей системе и изменять настройки. Например, характеристики подключенного оборудования.
1.1. Отключить безопасную загрузку
Чтобы иметь возможность установить и запустить Ubuntu в вашей системе, вам необходимо отключить безопасную загрузку и установить Тип ОС (тип операционной системы) на 'Другая ОС '. Расположение этого меню настроек в BIOS может отличаться. Однако убедитесь, что он позволяет запускать Linux. Вот как я настроил это в своем BIOS:
2. Операционная система: Ubuntu
2.1. Почему Ubuntu?
Для этой настройки я использую Ubuntu в качестве операционной системы (ОС). Ubuntu - один из самых популярных и поддерживаемых дистрибутивов Linux. Существуют различные причины использовать Linux, как указано в этом вопросе на Quora. Прочтите в этом вопросе Quora, почему следует использовать Ubuntu вместо других дистрибутивов Linux.
Для меня наиболее важными причинами перехода на Linux вместо Windows или Mac являются скорость ОС и простое и мощное использование командной строки и репозиториев, которые очень упрощают настройку и обслуживание вашей системы машинного обучения. Я предпочитаю использовать Ubuntu из-за его большого сообщества и поддержки.
2.2. Создайте загрузочный USB
Установить ОС на ваш компьютер можно с помощью загрузочного USB-накопителя, который вы вставляете в USB-порт и получаете к нему доступ при запуске компьютера. Вам понадобится USB-накопитель на 2 ГБ или больше.
Создадим загрузочный USB. Перейдите в раздел загрузок на официальном сайте Ubuntu и загрузите ISO-файл Ubuntu. Вы хотите выбрать версию LTS (Life Time Support). На момент написания этой статьи у меня была последняя версия - Ubuntu 16.04 LTS.
Загрузите файл и следуйте инструкциям по созданию загрузочного USB-накопителя, содержащего этот файл. В зависимости от операционной системы, которую вы используете в настоящее время, следуйте руководству Windows или MAC. Если вы каким-то образом уже пользуетесь Ubuntu, воспользуйтесь этим руководством.
2.3. Установить Ubuntu
Теперь, когда у нас есть загрузочный USB-накопитель, пора вставить его в USB-порт и запустить вашу систему. Для некоторых систем загрузочный диск распознается автоматически. На других вам сначала нужно войти в BIOS. Войдите в BIOS и щелкните только что вставленный диск, чтобы начать установку.
Переход к загрузочному диску вручную в BIOS может выглядеть так, как показано на изображении ниже. Дважды щелкните диск, чтобы начать установку.
Ubuntu дает вам возможность сначала попробовать запустить его с USB. Поиграйте, чтобы убедиться, что все работает нормально, а затем установите Ubuntu в своей системе.
Следуйте инструкциям в меню установки или просмотрите официальное руководство по установке Ubuntu. Это руководство очень ясное, поэтому я не буду повторять здесь все отдельные шаги. Если вы впервые работаете с Ubuntu, вы можете в основном придерживаться параметров по умолчанию, предложенных установщиком. Более того, сообщество сделало несколько отличных руководств и сообщений с подробными объяснениями всех опций. Все это можно найти в Интернете с помощью гугла;)
Совет. Ubuntu также позволяет зашифровать вашу систему и домашнюю папку для большей безопасности.
После установки перезагрузите компьютер, поскольку будет предложено завершить установку. При запуске вам будет предложено удалить установочный носитель (ваш usb). Удалите этот USB-накопитель и войдите в Ubuntu с паролем, который вы выбрали во время установки.
2.4. Проверить установку
В системах Linux действия легко выполняются с помощью Терминала. Это то же самое, что и терминал Mac. В Windows это называется Командная строка или Командная строка.
Откройте новый терминал через меню навигации или воспользуйтесь горячими клавишами:
CTRL + ALT + T
Введите в терминале следующую команду, чтобы проверить установленную версию Ubuntu:
lsb_release -a
И введите команду ниже, чтобы увидеть подробную информацию о дистрибутиве Linux:
uname -a
Результат должен выглядеть примерно так:
3. Установите программное обеспечение для ускорения графического процессора.
Ряд инструментов машинного обучения использует программное обеспечение с ускорением на графическом процессоре для обучения и запуска моделей. В частности, для глубокого обучения используются графические процессоры из-за их более высокой вычислительной мощности по сравнению с процессорами, что сокращает ценное время обучения моделей. Более подробное объяснение NVIDIA можно прочитать здесь.
На момент написания этой статьи самым популярным программным обеспечением для ускорения графического процессора для ML / DL было CUDA в сочетании с cuDNN, разработанное NVIDIA. Сначала мы установим CUDA. После этого cuDNN, который на самом деле просто вопрос добавления некоторых файлов в каталог CUDA.
3.1. Предпосылки
Подробное описание предварительных условий для установки CUDA можно найти в Официальном руководстве по установке CUDA для Linux. Основные этапы:
Убедитесь, что у вас есть графический процессор с поддержкой CUDA, введя в терминал следующие команды:
lspci | grep -i nvidia
Убедитесь, что у вас есть поддерживаемая версия Linux.
uname -m && cat /etc/*release
Убедитесь, что в системе установлен GCC.
gcc --version
Установите заголовки ядра и пакеты разработки (вам нужно ввести свой пароль для этой команды, так как вы должны выполнить ее как пользователь root с помощью sudo).
sudo apt-get install linux-headers-$(uname -r)
В целом в вашем терминале результат должен выглядеть примерно так:
3.2. Установите последние версии драйверов NVIDIA
Чтобы иметь возможность запускать программное обеспечение с ускорением на GPU, необходимо установить последние версии драйверов NVIDIA. Предполагая, что на вашем компьютере установлен графический процессор NVIDIA, что в настоящее время является нормой для машинного обучения.
Зайдите на официальный сайт NVIDIA и выберите характеристики своего графического процессора. В этой системе у меня GeForce GTX 1060, поэтому выбор для меня следующий:
Здесь не нужно загружать драйверы. Просто запомните номер версии. Последние версии драйверов можно легко установить из командной строки.
Откройте свой терминал и установите последнюю версию драйвера nvidia. Введите требуемый номер версии. Необязательно указывать цифры после цифр, нужная версия будет найдена автоматически.
sudo apt-get install nvidia-<version number>
Затем обновите Advanced Packaging Tool (apt) и перезагрузите систему, чтобы все заработало.
sudo apt-get update sudo reboot -h now
Проверьте, установлены ли последние версии драйверов. Результат должен выглядеть примерно так, как на экране ниже.
nvidia-smi
Или используйте графический интерфейс и найдите на своих компьютерах программу «Дополнительные драйверы» и выберите правильный драйвер.
3.3. Загрузите и установите CUDA
Перейдите на официальную страницу загрузки CUDA и выберите характеристики вашей системы. Загрузите deb (локальные) файлы базового установщика и доступные исправления.
Убедитесь, что вы загрузили версию CUDA, совместимую с пакетами ML, которые вы будете использовать позже. На момент написания этого поста последней версией CUDA является 9.1, однако, например, Tensorflow - популярный пакет ML, который мы устанавливаем позже - поддерживает только CUDA до версии 9.0. (Я покажу, как установить Tensorflow и другие пакеты в следующей главе).
В своем терминале перейдите в папку, в которой вы сохранили файлы deb. Вероятно, это папка загрузок или указанная вами папка.
1. Проверьте загрузки, используя их контрольные суммы. Проверьте загрузку, сравнив контрольную сумму md5 файла с суммами, указанными по адресу: http://developer.nvidia.com/cuda-downloads/checksums.
md5sum <file>
2. Теперь установите репозитории и CUDA. Сначала установите метадату репозитория базового установщика с его файлом .deb с помощью следующей команды:
sudo dpkg -i cuda-repo-<distro>_<version>_<architecture>.deb
Совет: используйте кнопку TAB
для автозаполнения при вводе текста в терминале!
3. Установите открытый ключ GPG CUDA:
sudo apt-key add /var/cuda-rep-<version>/<key mentioned in the documentation>
4. Обновите кеш репозитория APT:
sudo apt-get update
5. Установите CUDA:
sudo apt-get install cuda
6. Включите /usr/local/cuda-<version>/bin
в PATH
:
export PATH=/usr/local/cuda-<version>/bin${PATH:+:${PATH}}
7. Установите патчи по порядку. Для каждого патча выполните следующие действия:
sudo dpkg -i cuda-repo-<package_details> sudo apt-get update sudo apt-get upgrade cuda
8. Проверьте установленную версию CUDA, запустив в своем терминале:
cat /usr/local/cuda/version.txt
Вы можете прочитать официальную документацию по установке CUDA для получения дополнительной информации.
3.4. Скачайте и установите cuDNN
Перейдите на домашнюю страницу NVIDIA cuDNN. Войдите в свою учетную запись или создайте новую, если у вас ее еще нет. Затем щелкните раздел загрузки и выберите правильную версию cuDNN. cuDNN должен соответствовать вашей установленной версии CUDA и обратить внимание на последнюю версию, совместимую с пакетами ML, которые вы планируете установить позже! Ознакомьтесь с их руководствами по установке и необходимой документацией. (Поверьте мне, если есть какие-либо проблемы с совместимостью, вы хотите узнать их как можно скорее, а не в конце процесса.)
Загрузите библиотеку cuDNN для Linux. Перейдите в каталог, в котором вы сохранили файл Tar, и разархивируйте пакет.
tar -xzvf cudnn-<version>-linux-x64-v7.tgz
Затем скопируйте следующие файлы в свой каталог CUDA:
sudo cp cuda/include/cudnn.h /usr/local/cuda/include sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64 sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
Дополнительную информацию можно найти в официальном руководстве cuDNN.
Теперь перезагрузите вашу систему, используя sudo reboot -h now
.
Поздравляю! Вы выполнили самую сложную часть установки основных компонентов вашей системы машинного обучения.
4. Создайте виртуальную среду.
Виртуальные среды позволяют вам создавать отдельные системы в вашей системе, откуда вы можете устанавливать и запускать пакеты. Установка пакетов в виртуальных средах вместо вашей собственной / корневой системы позволяет вам работать с разными версиями пакетов без конфликтов. Выполните следующие шаги, чтобы создать виртуальную среду для Python. (Я использую Python3 в качестве языка программирования в этой настройке, поскольку в настоящее время это самый популярный язык для ML)
- Установите pip и виртуальную среду
sudo apt-get install python3-pip python3-dev python-virtualenv
2. Создайте новую виртуальную среду с именем «venv» и укажите версию Python, которую вы хотите использовать в ней. Вы можете выбрать любое имя для виртуальной среды.
virtualenv -p python3.5 venv
3. Активируйте виртуальную среду.
source venv/bin/activate
Теперь вы в виртуальной среде. Текущая среда отображается в вашем терминале в скобках.
(venv) me@pc:~$:
5. Вы можете деактивировать venv, набрав deactivate
и нажав ENTER
.
В следующей главе мы установим несколько популярных пакетов машинного обучения и глубокого обучения в виртуальной среде.
5. Установите пакеты машинного обучения и глубокого обучения.
Войдите в свою виртуальную среду и проверьте установленные пакеты с помощью pip list --format=columns
command. Вы можете видеть, что ряд пакетов пришел вместе с установкой.
PIP - это система управления пакетами, используемая для установки программных пакетов, написанных на Python, и управления ими.
Давайте установим несколько часто используемых пакетов Python с помощью pip. Pip делает этот процесс действительно гладким и легким. Pip также напрямую определяет правильную версию Python для ваших пакетов. - Убедитесь, что вы находитесь в своей виртуальной среде!
pip install numpy pip install scipy pip install pandas pip install matplotlib
Проверьте установленные пакеты в виртуальном окружении с помощью pip list --format=columns
. Как вы видите в списке, некоторые пакеты содержат дополнительные пакеты. Это связано с тем, что большинство пакетов построено на других пакетах и, следовательно, для работы необходимо также импортировать свои базовые пакеты.
Пришло время установить несколько популярных пакетов машинного обучения и глубокого обучения.
- Установите Scikit-learn
pip install scikit-learn
2. Установите Tensorflow. Теперь мы можем установить расширенную версию GPU, учитывая шаги, которые мы предприняли в предыдущих главах. Если у вас возникли проблемы с установкой Tensorflow, вы можете прочитать официальное руководство по установке virtualenv в Ubuntu здесь.
pip3 install --upgrade tensorflow-gpu
3. Установите Керас.
pip install keras
Вау, это было действительно просто! Никаких скачиваний и перетаскивания файлов ..
Используя вышеуказанные методы, вы можете создавать другие виртуальные среды и устанавливать пакеты ML. Если пакет еще не имеет опции установки pip, следуйте инструкциям в документации. Вот несколько интересных пакетов машинного обучения: PyTorch, XGBoost, LightGBM и CatBoost.
Вот и все! Если вы выполнили действия, описанные в этом руководстве, поздравляем! Вы полностью настроили среду машинного обучения в Ubuntu с ускорением графического процессора на своем компьютере.
Я надеюсь, что это было полезно для вас, и удачи в вашем пути к машинному обучению! Если у вас есть какие-либо вопросы по комментариям, не стесняйтесь комментировать ниже. Я постараюсь на них ответить. Также не стесняйтесь делиться этой историей.