Этот пост представляет собой действительно базовое руководство по настройке компьютера для машинного обучения. Я решил сделать это, когда мне снова пришлось установить все инструменты, чтобы начать играть с машинным обучением на недавно перезагруженном компьютере. Это может быть полезно, если вы собираетесь делать первые шаги или если вы пришли из других областей, кроме технологий.

После запуска платформы Apple Core ML в июне прошлого года многие разработчики iOS стали больше интересоваться машинным обучением. Если вы один из них, этот урок может стать для вас отличным первым шагом!

Инструменты, которые вам понадобятся, могут различаться в зависимости от того, какие задачи вы будете выполнять. Тем не менее, инструменты, которые я решил перечислить здесь, в значительной степени являются тем, что вам, скорее всего, придется установить рано или поздно, поэтому я обещаю, что вы не потеряете (все) свое время. Это также может сделать вас более уверенным в том, что вы начнете искать и устанавливать другие инструменты позже.

На протяжении всего урока я буду использовать Macbook с macOS High Sierra. Все должно работать аналогично на любом компьютере с ОС на базе Unix.

Разминка 🏋🏻

Прежде чем мы начнем устанавливать инструменты, нам нужен хороший маленький друг, который поможет нам с установкой. Он называется pip и является менеджером пакетов для Python (кстати, я предполагаю, что Python уже установлен на вашем компьютере, если нет, отметьте это). Вы можете получить pip, просто сохранив этот файл и запустив его в своем терминале с помощью следующей команды:

sudo python get-pip.py

Окружающая среда 🌳

Чтобы организовать наши инструменты и их соответствующие версии, мы должны использовать виртуальные среды. Возможно, вы сначала не заметите важности этого, но, поверьте мне, отказ от них может стоить вам довольно много времени позже - и, возможно, даже нескольких часов крепкого сна.

Я использую virtualenv, чтобы изолировать свое окружение. Чтобы установить его, выполните следующую команду:

sudo pip install virtualenv

Чтобы упростить использование различных сред, я использую virtualenvwrapper, который, как следует из названия, представляет собой простую оболочку для virtualenv. Вы можете установить его командой:

sudo pip install virtualenvwrapper

Не волнуйтесь, если вы столкнетесь со следующей ошибкой:

Все, что вам нужно сделать, это выполнить следующую команду (которая сообщает pip игнорировать установленные шесть):

sudo pip install virtualenvwrapper --ignore-installed six

Чтобы лучше организовать создаваемые окружения, нужно еще кое-что сделать с virtualenvwrapper:

export WORKON_HOME=~/Envs

mkdir -p $WORKON_HOME

source /usr/local/bin/virtualenvwrapper.sh

Это создаст каталог Envs, в котором будут храниться все наши env и все, что с ними связано.

Теперь, когда мы все настроены, мы можем создать наш первый env с помощью команды:

mkvirtualenv ml

Если все работает нормально, перед командной строкой появится (ml). Если вы хотите «покинуть» только что созданный env, вы можете запустить deactivate. Когда вы захотите вернуться к нему: workon ml.

Конечно, если вы хотите создать свой env с другим именем, все, что вам нужно сделать, это заменить ml именем, которое вы хотите использовать.

Инструменты 🛠

Мы установим следующие инструменты:

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

Юпитер

Jupyter позволяет редактировать и запускать код Python в браузере, систематизировать документацию вместе с кодом, а также упрощает создание некоторых материалов, которые можно представить.

pip install jupyter

Numpy

Numpy - это библиотека Python для научных вычислений. Это более чем необходимо для любой работы в области машинного обучения или науки о данных.

pip install numpy

Scikit-Learn

Scikit-learn - это инструмент для интеллектуального анализа и анализа данных. Это действительно может очень помочь.

pip install scikit-learn

Матплотлиб

Нанесение данных на график имеет решающее значение, независимо от того, хотите ли вы получить первое представление о задаче, над которой работаете, или когда вам нужно показать кому-то анализ. Matplotlib - это инструмент для работы.

pip install matplotlib

Tensorflow

Если вас интересует глубокое обучение, у вас может не быть выбора, кроме как использовать тензорный поток. Это библиотека для численных вычислений, которая широко используется для построения нейронных сетей.

pip install tensorflow

Керас

Опять же, если вы увлекаетесь глубоким обучением, Керас может иметь огромное значение. У него потрясающий API для построения и обучения моделей, получения данных и прогнозирования. В качестве бэкэнда он использует тензорный поток или теано - в нашем случае мы будем использовать тензорный поток.

pip install keras

Все готово! 🚀

Вот это да. Было установлено много pip! Хорошие новости: теперь у вас есть все необходимое, чтобы погрузиться в удивительный мир машинного обучения.

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

Для разработчиков iOS: в следующих сообщениях я покажу, как создать модель для конкретной задачи, а затем интегрировать ее в приложение iOS с помощью coremltools и Xcode 9.

Спасибо за чтение!

Если у вас есть какие-либо комментарии или предложения, или если я где-то напортачил, дайте мне знать в комментариях. Это было бы очень признательно!

Вы всегда можете найти меня здесь.

Увидимся! 😎