Поделиться через


Справочник. Виртуальная машина Ubuntu (Linux) для обработки и анализа данных

В этом документе представлен список доступных средств в Виртуальная машина для обработки и анализа данных Ubuntu (DSVM).

Библиотеки глубокого обучения

PyTorch

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

H2O

H2O — это быстрая распределенная платформа, работающая в памяти, для машинного обучения и прогнозной аналитики. Пакет Python установлен в корневой среде и в средах Anaconda для Python 3.5 (py35). Также установлен пакет R.

Чтобы открыть H2O из командной строки, выполните команду java -jar /dsvm/tools/h2o/current/h2o.jar. Можно настроить различные доступныепараметры командной строки. Перейдите к веб-интерфейсу Flow, чтобы http://localhost:54321 приступить к работе. JupyterHub предлагает примеры записных книжек.

TensorFlow

TensorFlow — это библиотека глубокого обучения Google. Она является библиотекой программного обеспечения с открытым исходным кодом для числовых вычислений с применением графиков потоков данных. Если на компьютере есть встроенный GPU, он может использовать этот GPU для ускорения глубокого обучения. TensorFlow доступна в среде conda py38_tensorflow.

Python

В Виртуальная машина для обработки и анализа данных (DSVM) есть несколько предварительно установленных сред Python с Python версии 3.8 или Python версии 3.6. Запустите conda env list в окне терминала, чтобы просмотреть полный список установленных сред.

Jupyter

DSVM также поставляется с Jupyter, средой совместного использования кода и анализа кода. Jupyter устанавливается на DSVM в следующих вариантах:

  • Jupyter Lab
  • Портативный компьютер Jupyter
  • Центр Jupyter

Чтобы запустить Jupyter Lab, откройте Jupyter в меню приложения или щелкните значок рабочего стола. Вы также можете запустить jupyter lab из командной строки, чтобы открыть Jupyter Lab.

Чтобы открыть записную книжку Jupyter, откройте командную строку и выполните команду jupyter notebook.

Чтобы открыть Jupyter Hub, откройте https://< DNS-имя или IP-адрес>:8000/ в браузере. Необходимо указать локальное имя пользователя и пароль Linux.

Примечание.

Вы можете игнорировать предупреждения о сертификатах.

Примечание.

Для образов Ubuntu брандмауэр порт 8000 по умолчанию открывается при подготовке виртуальной машины.

Изолированный экземпляр Apache Spark

Автономный экземпляр Apache Spark предварительно установлен на виртуальной машине DSVM Linux, чтобы помочь вам локально разрабатывать приложения Spark перед тестированием и развертыванием этих приложений в больших кластерах.

Программы PySpark можно выполнять через ядро Jupyter. При запуске Jupyter нажмите кнопку "Создать ". Список доступных ядер должен стать видимым. Вы можете создавать приложения Spark с помощью языка Python, если выбрано ядро Spark — Python . Вы также можете использовать интегрированную среду разработки Python, например VS. Код или PyCharm — для сборки программы Spark.

В этом автономном экземпляре стек Spark выполняется в вызывающей клиентской программе. Эта функция упрощает устранение неполадок по сравнению с разработкой в кластере Spark.

Интегрированные среды разработки и редакторы

У вас есть несколько редакторов кода, включая VS. Код, PyCharm, IntelliJ, vi/Vim или Emacs.

VS.Code, PyCharm и IntelliJ являются графическими редакторами. Чтобы использовать их, нужно войти в графический рабочий стол. На рабочем столе и в меню приложений есть значки для запуска этих редакторов.

Vim и Emacs — это текстовые редакторы. В Emacs пакет надстройки ESS упрощает работу с R в редакторе Emacs. Дополнительные сведения см. на веб-сайте ESS.

Базы данных

Графический клиент SQL

SQuirrel SQL, графический клиент SQL, может подключаться к различным базам данных, например Microsoft SQL Server или MySQL, и запускать запросы SQL. Самый быстрый способ открыть SQuirrel SQL — использовать меню приложения из графического сеанса рабочего стола (например, через клиент X2Go).

Перед первоначальным использованием настройте драйверы и псевдонимы базы данных. Драйверы JDBC можно найти по адресу /usr/share/java/jdbcdrivers.

Дополнительные сведения см. в ресурсе SQuirrel SQL .

Программы командной строки для доступа к Microsoft SQL Server

Пакет драйвера ODBC для SQL Server также включает два средства командной строки:

  • bcp: средство bcp массово копирует данные между экземпляром Microsoft SQL Server и файлом данных в указанном пользователем формате. С помощью средства bcp можно выполнять импорт большого количества новых строк в таблицы SQL Server или экспорт данных из таблиц в файлы данных. Для импорта данных в таблицу следует использовать файл форматирования, созданный для этой таблицы. Необходимо понять структуру таблицы и типы данных, допустимые для его столбцов.

Дополнительные сведения см. в разделе "Подключение с помощью bcp".

  • sqlcmd: вы можете ввести инструкции Transact-SQL с помощью средства sqlcmd. Также системные процедуры и файлы скриптов можно вводить в командной строке. Это средство использует ODBC для выполнения пакетов Transact-SQL.

    Дополнительные сведения см. в разделе "Подключение с помощью sqlcmd".

    Примечание.

    Существуют некоторые различия в этом инструменте между версиями платформы Linux и Windows. Дополнительные сведения см. в документации.

Библиотеки для доступа к базам данных

Библиотеки R и Python доступны для доступа к базе данных:

  • В R можно использовать пакеты DPlyr RODBC для запроса или выполнения инструкций SQL на сервере базы данных.
  • В Python библиотека pyodbc предоставляет доступ к базе данных с ODBC в качестве базового слоя.

Средства Azure

Эти средства Azure устанавливаются на виртуальной машине:

  • Azure CLI: этот интерфейс командной строки позволяет создавать ресурсы Azure и управлять ими с помощью команд оболочки. Чтобы открыть средства Azure, введите azure help. Дополнительные сведения см. на странице документации по Azure CLI.

  • служба хранилища Azure Explorer: служба хранилища Azure Explorer — это графическое средство, которое можно использовать для просмотра объектов, хранящихся в учетной записи хранения Azure, а также для отправки и скачивания данных в большие двоичные объекты Azure и из него. Для доступа к обозревателю хранилищ воспользуйтесь значком рабочего стола. Вы также можете открыть его из запроса оболочки, если ввести StorageExplorer. Для этого необходимо выполнить вход в клиенте X2Go или настроить перенаправление X11.

  • Библиотеки Azure. Это некоторые из предустановленных библиотек:

    • Python: Python предлагает библиотеки , связанные с Azure, azureml, pydocumentdb и pyodbc Azure. Первые три библиотеки позволяют обращаться к службам хранилища Azure, Машинному обучению Azure и Azure Cosmos DB (база данных NoSQL в Azure). Четвертая библиотека pyodbc (вместе с драйвером Microsoft ODBC для SQL Server) обеспечивает доступ к SQL Server, База данных SQL Azure и Azure Synapse Analytics из Python через интерфейс ODBC. Введите список pip, чтобы просмотреть все перечисленные библиотеки. Не забудьте выполнить эту команду в средах Python 2.7 и 3.5.
    • R: Машинное обучение Azure и RODBC — это библиотеки, связанные с Azure, в R.
    • Java: каталог /dsvm/sdk/AzureSDKJava содержит список библиотек Java Azure, которые можно найти в каталоге /dsvm/sdk/AzureSDKJava на виртуальной машине. Основные библиотеки — это API-интерфейсы для службы хранилища Azure и API-интерфейсы для управления Azure, драйверы Azure Cosmos DB и драйверы JDBC для SQL Server.

Машинное обучение Azure

Полностью управляемая Машинное обучение Azure облачная служба позволяет создавать, развертывать и совместно использовать решения прогнозной аналитики. Вы можете создавать эксперименты и модели в Студия машинного обучения Azure. Посетите Машинное обучение Microsoft Azure, чтобы получить доступ к нему из веб-браузера на Виртуальная машина для обработки и анализа данных.

После входа в Студию машинного обучения Azure вы увидите холст для экспериментов, на котором можно создать логическую блок-схему алгоритмов машинного обучения. У вас также есть доступ к записной книжке Jupyter, размещенной на Машинное обучение Azure. Эта записная книжка может легко работать с экспериментами в Студия машинного обучения Azure.

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

Можно также создавать модели в R или Python на виртуальной машине, а затем развертывать их в рабочей среде в Машинном обучении Azure. Мы установили библиотеки в R (AzureML) и Python (azureml), чтобы включить эту функцию.

Примечание.

Мы написали эти инструкции для Виртуальная машина для обработки и анализа данных версии Windows. Однако инструкции охватывают Машинное обучение Azure развертывания модели на виртуальной машине Linux.

Инструменты машинного обучения

Виртуальная машина поставляется с предварительно скомпилированные средства машинного обучения и алгоритмы, все предварительно установленные локально. Например:

  • Vowpal Wabbit: быстрый алгоритм онлайн-обучения

  • xgboost: это средство предоставляет оптимизированные, увеличенные алгоритмы дерева

  • Rattle: графическое средство на основе R для простого изучения и моделирования данных

  • Python— в Anaconda Python алгоритмы машинного обучения содержатся в разных библиотеках, например Scikit-learn. Вы можете установить другие библиотеки с pip install помощью команды.

  • LightGBM: быстрая распределенная, высокопроизводительная платформа повышения градиента на основе алгоритмов дерева принятия решений

  • R: расширенная библиотека функций машинного обучения доступна для библиотек R. Предустановленные библиотеки включают lm, glm, randomForest и rpart. Вы можете установить другие библиотеки с помощью этой команды:

    install.packages(<lib name>)
    

Дополнительные сведения о первых трех средствах машинного обучения в списке.

Vowpal Wabbit

Vowpal Wabbit — это система машинного обучения

  • active
  • allreduce
  • Хэширования
  • интерактивное обучение
  • learning2search
  • подключенный
  • Сокращения

Методы.

Используйте следующие команды, чтобы запустить средство в базовом примере:

cp -r /dsvm/tools/VowpalWabbit/demo vwdemo
cd vwdemo
vw house_dataset

Этот каталог предлагает другие, более крупные демонстрации. Дополнительные сведения о Vowpal Wabbit см. в этом разделе GitHub и вики-сайте Vowpal Wabbit.

XGBoost

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

Библиотека xgboost предоставляется как ресурс командной строки, так и библиотеку R. Чтобы использовать эту библиотеку в R, можно ввести R в оболочке, чтобы запустить интерактивный сеанс R и загрузить библиотеку.

В этом простом примере показано выполнение xgboost в запросе R:

library(xgboost)

data(agaricus.train, package='xgboost')
data(agaricus.test, package='xgboost')
train <- agaricus.train
test <- agaricus.test
bst <- xgboost(data = train$data, label = train$label, max.depth = 2,
                eta = 1, nthread = 2, nround = 2, objective = "binary:logistic")
pred <- predict(bst, test$data)

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

cp -r /dsvm/tools/xgboost/demo/binary_classification/ xgboostdemo
cd xgboostdemo
xgboost mushroom.conf

Дополнительные сведения о xgboost см. на странице документации xgboost и репозитории GitHub.

Rattle

Rattle ( R A Analytical Tool To L Lзаработать Easily) использует исследование и моделирование данных на основе графического интерфейса. Он

  • представляет статистические и визуальные сводки данных
  • преобразует данные, которые можно легко моделировать
  • создает неуправляемые и защищенные модели из данных
  • представляет производительность моделей графически
  • оценка новых наборов данных

Он также создает код R, который реплицирует операции Rattle в пользовательском интерфейсе. Этот код можно запустить непосредственно в R или использовать его в качестве отправной точки для дальнейшего анализа.

Чтобы запустить Rattle, необходимо работать в сеансе входа в графический рабочий стол. Чтобы открыть среду R, введите R в терминале. В командной строке R введите следующую команду:

library(rattle)
rattle()

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

Примечание.

Если у вас нет разрешений на установку пакета в системном каталоге (по умолчанию), вы можете заметить запрос на установку пакетов в личную библиотеку. Ответ y , если вы столкнулись с этими запросами.

  1. Нажмите кнопку Выполнить.
  2. Откроется диалоговое окно с запросом на использование примера набора данных о погоде. Выберите "Да" , чтобы загрузить пример
  3. Выберите вкладку "Модель"
  4. Выберите "Выполнить" , чтобы создать дерево принятия решений
  5. Выберите "Рисование", чтобы отобразить дерево принятия решений
  6. Выберите параметр "Лес" и выберите "Выполнить", чтобы создать случайный лес
  7. Выберите вкладку "Оценка"
  8. Выберите параметр "Риск" и выберите "Выполнить", чтобы отобразить два диаграммы производительности риска (накопительный)
  9. Выберите вкладку "Журнал", чтобы отобразить созданный код R для предыдущих операций
    • Из-за ошибки в текущем выпуске Rattle необходимо вставить # символ перед экспортом этого журнала в тексте журнала .
  10. Нажмите кнопку "Экспорт", чтобы сохранить файл скрипта R с именем weather_script. R, в домашнюю папку

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

Следующие шаги

Для получения дополнительных вопросов рекомендуется создать запрос в службу поддержки