Установка Tensorflow
О технологиях

Установка Tensorflow

4126
7 минут

Захотелось нам на днях копнуть глубже в сторону Machine и Deep Learning. Поэтому в ближайшее время в блоге будет какое-то количество статей, посвященных этой теме.

А начнем мы с вами с того, что подготовим рабочее окружение, в котором будем проводить все наши эксперименты! В этой статье речь пойдет об установке:

  • TensorFlow
  • Pandas
  • Jupyter
  • matplotlib
  • scikit-learn

Установку всего необходимого можно проводить у себя на рабочей станции в виртуальной машине, а также в Google Cloud или AWS. Преимущество последних в том, что они предоставляют виртуальные машины с GPU, что существенно ускорит обработку больших объемов данных и вычислений. Пока что нам это не нужно, поэтому можно смело обойтись локальной виртуальной машиной. Итак, поехали!


Установка Jupyter

Итак, как я уже писал в статье «Jupyter Notebook — прототипирование облачной автоматизации на Python», использовать Jupyter Notebook-и в процессе разработки очень удобно, т.к. каждый блок кода можно повторить в произвольном порядке столько раз, сколько нужно. Более того, всегда есть возможность наглядно посмотреть на типы данных или построить нужный график для визуализации вычислений или зависимостей между обрабатываемыми объектами.

Установка Jupyter очень проста, делать мы это будем в CentOS 7


sudo yum -y install python-pip
sudo yum -y groupinstall 'Development Tools'
sudo pip install virtualenv

sudo pip install jupyter

cd ~/
mkdir analysis # директория для хранения Notebook-ов

После того, как установка закончится, необходимо настроить на постоянный запуск Jupyter сервер. Для этого вам необходимо сгенерировать хеш пароля для доступа к серверу. Это особенно актуально, если вы устанавливаете Jupyter в виртуальной машине в облаке Google или Amazon. Для этого выполните:

python

Далее необходимо сгенерировать сам пароль:

from notebook.auth import passwd
passwd()

Введите нужный вам пароль и сохраните строку вида ’sha1:’ куда-нибудь в текстовый файл.

Далее сгенерируем конфигурационный файл для Jupyter сервера:

jupyter notebook --generate-config

Вывод команды покажет вам, куда именно записался конфигурационный файл по-умолчанию. Отредактируйте его, изменив следующие опции:

c.NotebookApp.password = 'sha1:'
c.NotebookApp.port = 8888
c.NotebookApp.ip = '*'
c.NotebookApp.open_browser = False

Далее, необходимо прописать старт Jupyter в качестве сервиса. Создайте файл /etc/systemd/system/multi-user.target.wants/jupyter.service следующего содержания:

[Unit]
Description=Jupyter Notebook

[Service]
Type=simple
PIDFile=/run/jupyter.pid
ExecStart=/usr/bin/jupyter notebook --config=/home/centos/.jupyter/jupyter_notebook_config.py
User=centos
Group=centos
WorkingDirectory=/home/centos/analysis
Restart=always
RestartSec=10
#KillMode=mixed

[Install]
WantedBy=multi-user.target

Убедитесь, что в строчке, начинающейся с ExecStart, указан правильный путь до Jupyter и правильный путь до сгенерированного вами конфигурационного файла, в качестве пользователя и группы прописаны пользователь и группа, с которыми вы получаете доступ к виртуальной машине, а в качестве рабочей директории (WorkingDirectory) указана существующая директория, в которой будут храниться ваши Notebook-и.

Обновите конфигурацию systemd

systemctl daemon-reload

Запустите Jupyter:

systemctl status jupyter

Проверьте, что запуск прошел успешно, выполнив команду:

systemctl status jupyter

Подключитесь к серверу Jupyter, используя IP-адрес вашей виртуальной машины, порт 8888 и сгенерированный вами пароль.

Установка Tensorflow

Установка TensorFlow выполняется чуть более просто, чем Jupyter. Процесс установки буквально на все случаи жизни описан в официальной документации. Но все, что вам нужно сделать прямо сейчас, это выполнить команды

sudo pip install tensorflow # установка без поддержки GPU
sudo pip install tensorflow-gpu # если вам нужна поддержка GPU

После этого у вас будет возможность проверить работу TensorFlow, написав в NoteBook-е простенький сценарий:


import tensorflow as tf
hello = tf.constant('Hello, TensorFlow!')
sess = tf.Session()
print(sess.run(hello))

Выполнив который вы увидите в качестве вывода Hello, TensorFlow!.

Установка Pandas

Установка Pandas, который вероятнее всего потребуется вам в процессе экспериментов, выполняется как обычно:

sudo pip install pandas

Установка Matplotlib

И наконец осталось установить Matplotlib:


sudo pip install matplotlib

Установка Scikit-Learn

Еще одним жизненно-необходимым компонентом, который необходимо иметь обязательно, является scikit-learn. Доставим его так же, как и остальные зависимости:


sudo pip install scikit-learn
19 июня 2023
Облачные стражи: сервисы на защите ваших веб-ресурсов

Если в инфополе стали меньше говорить о кибератаках на бизнес, это не значит, что их число действительно сократилось. К сожалению, оно продолжает расти.

Первыми под удар злоумышленников попадают веб-ресурсы – корпоративные порталы с ценными данными клиентов и сотрудников, сайты e-com. На онлайн-митапе рассказали, как их защитить с помощью облачных сервисов WAF и Anti-DDoS/Antibot, и обсудили практический кейс компании «РДЛ-Телеком».

5 минут
638
31 марта 2023
Из тени в свет: обсуждаем и показываем облачные альтернативы зарубежному ПО

Предлагаем вашему вниманию расшифровку и запись митапа.

Сегодня суровая реальность многих компаний — программная инфраструктура и прикладные сервисы на решениях западных вендоров, которые уходят с рынка.

Что делать? Мигрировать на российские аналоги или продукты, в основе которых развитые разработки open source. В КРОК Облачные сервисы накопили солидный опыт таких проектов.

1 минута
864
13 февраля 2023
Замена игрока: выбираем альтернативу зарубежному системному ПО (взгляд облачного провайдера)

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

Предлагаем вашему вниманию запись и расшифровку митапа.

2 минуты
1378
12 января 2023
Российский Kubernetes, какой он? Знакомьтесь, платформа Deckhouse

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

3 минуты
2703
10 января 2023
Заоблачные возможности: как облачные сервисы используются в бизнесе
В 2022 году облачные сервисы стали одним из наиболее стремительно развивающихся направлений в ИТ. Рост рынка облачных вычислений постоянно ускоряется: в 2020 году его подтолкнула пандемия, а в 2022 - курс на миграцию на отечественные решения.
4 минуты
827
scrollup