Модули языка R

Важно!

Поддержка Студии машинного обучения (классической) будет прекращена 31 августа 2024 г. До этой даты рекомендуется перейти на Машинное обучение Azure.

Начиная с 1 декабря 2021 года вы не сможете создавать новые ресурсы Студии машинного обучения (классической). Существующие ресурсы Студии машинного обучения (классическая версия) можно будет использовать до 31 августа 2024 г.

Поддержка документации по ML Studio (классической) прекращается, а сама документация может не обновляться в будущем.

в этой статье перечислены модули в Машинное обучение Studio (классическая модель), которые поддерживают выполнение кода R. Эти модули упрощают публикацию моделей R в рабочей среде и используют интерфейс сообщества языка R для решения реальных проблем.

Примечание

применимо к: только Машинное обучение Studio (классическая модель)

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

В этой статье также описаны некоторые общие требования для использования R в машинном языке (классическая модель) и перечислены известные проблемы и советы.

Список модулей

В категорию " языковые модули R " входят следующие модули:

Требования при использовании R

прежде чем использовать скрипт R в Машинное обучение Studio (классическая модель), обратите внимание на следующие требования.

  • Если вы импортировали данные, использующие CSV-файлы или другие форматы, вы не сможете считывать данные непосредственно в формате CSV из кода R. Вместо этого используйте Convert to DataSet , чтобы подготовить данные, прежде чем использовать их в качестве входных данных для модуля R.

  • при присоединении любого Машинное обучение набора данных в качестве входных данных для модуля r набор данных автоматически загружается в рабочую область R как кадр данных с именем переменной dataset.

    Однако можно определить дополнительные кадры данных или изменить имя переменной набора данных по умолчанию в скрипте R.

  • Модули R выполняются в защищенной и изолированной среде в частной рабочей области. В рабочей области можно создать блоки данных и переменные для использования несколькими модулями.

    Однако вы не можете загружать кадры данных R из другой рабочей области или считывать переменные, созданные в другой рабочей области, даже если эта Рабочая область открыта в сеансе Azure. Кроме того, нельзя использовать модули, имеющие зависимость Java или требующие прямого доступа к сети.

Оптимизация для задач оценки R

реализация R в среде Машинное обучение Studio (классическая модель) и рабочей области содержит два основных компонента. Один компонент координирует выполнение сценария, а другой обеспечивает высокоскоростной доступ к данным и их оценку. Компонент оценки оптимизирован для повышения масштабируемости и производительности.

таким образом, рабочие области R в Машинное обучение Studio (классическая модель) также поддерживают два вида задач оценки, оптимизированных для различных требований. При создании эксперимента обычно используется оценка в зависимости от файла. Служба ответов на запросы (RR) обычно используется для очень быстрой оценки, если вы используете оценку как часть веб-службы.

Поддержка пакетов и версий R

Машинное обучение Studio (классическая модель) включает более 500 наиболее популярных пакетов R. Пакеты R, которые можно выбрать, зависят от версии R, выбранной для эксперимента.

  • CRAN R
  • Microsoft R Open (MRO 3.2.2 или MRO 3.4.4)

При создании эксперимента необходимо выбрать одну версию R для выполнения на всех модулях в эксперименте.

Список пакетов на версию

список пакетов, которые в настоящее время поддерживаются в Машинное обучение, см. в разделе пакеты R, поддерживаемые Машинное обучение.

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

data.set <- data.frame(installed.packages())
maml.mapOutputPort("data.set")

Важно!

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

Расширение экспериментов с помощью языка R

Эксперимент можно расширить множеством способов с помощью пользовательского R-сценария или путем добавления пакетов R. Вот несколько идей, которые помогут вам приступить к работе:

  • Используйте код R для выполнения пользовательских математических операций. Например, существуют пакеты R для решения дифференциальных уравнений, получения случайных чисел или моделирования по методу Монте-Карло.

  • Применение пользовательских преобразований для данных. Например, пакет R можно использовать для выполнения интерполяции по данным временных рядов или для выполнения лингвистического анализа.

  • Работа с различными источниками данных. Модули R Script поддерживают дополнительный набор входных данных, которые могут содержать файлы с данными в формате ZIP. Вы можете использовать ZIP-файлы данных вместе с пакетами R, предназначенными для таких источников данных, чтобы свести иерархические данные в плоскую таблицу данных. их также можно использовать для чтения данных из Excel и других форматов файлов.

  • Используйте пользовательские метрики для оценки. Например, вместо использования функций, представленных в оценке, можно импортировать пакет R, а затем применить его метрики.

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

Разбиение столбцов с помощью R

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

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

В следующем примере показано, как установить необходимые пакеты и разделить столбцы. Этот код следует добавить в модуль выполнить сценарий R .

#install dependent packages  
install.packages("src/concat.split.multiple/data.table_1.9.2.zip", lib=".", repos = NULL, verbose = TRUE)  
(success.data.table <- library("data.table", lib.loc = ".", logical.return = TRUE, verbose = TRUE))  
  
install.packages("src/concat.split.multiple/plyr_1.8.1.zip", lib=".", repos = NULL, verbose = TRUE)  
(success.plyr <- library("plyr", lib.loc = ".", logical.return = TRUE, verbose = TRUE))  
  
install.packages("src/concat.split.multiple/Rcpp_0.11.2.zip", lib=".", repos = NULL, verbose = TRUE)  
(success.Rcpp <- library("Rcpp", lib.loc = ".", logical.return = TRUE, verbose = TRUE))  
  
install.packages("src/concat.split.multiple/reshape2_1.4.zip", lib=".", repos = NULL, verbose = TRUE)  
(success.reshape2 <- library("reshape2", lib.loc = ".", logical.return = TRUE, verbose = TRUE))  
  
#install actual packages  
install.packages("src/concat.split.multiple/splitstackshape_1.2.0.zip", lib=".", repos = NULL, verbose = TRUE)  
(success.splitstackshape <- library("splitstackshape", lib.loc = ".", logical.return = TRUE, verbose = TRUE))  
  
#Load installed library  
library(splitstackshape)  
  
#Use library method to split & concat  
data <- concat.split.multiple(maml.mapInputPort(1), c("TermsAcceptedUserClientIPAddress", "EmailAddress"), c(".", "@"))  
  
#Print column names to console  
colnames(data)  
  
#Redirect data to output port  
maml.mapOutputPort("data")  

Дополнительные ресурсы

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

В этой статье подробно рассматриваются различия между двумя ядрами оценки и объясняется, как можно выбрать метод оценки при развертывании эксперимента в качестве веб-службы:

В этом эксперименте в Коллекция решений ИИ Azure показано, как можно создать пользовательский модуль R, который выполняет обучающие вычисления, оценки и оценку.

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

Дополнительная справка по R

На этом сайте представлен список пакетов, которые можно искать по ключевым словам:

Дополнительные примеры кода R, а также указания по работе с R и его применению см. в следующих ресурсах:

См. также раздел