Condividi tramite


Moduli del linguaggio R

Importante

Il supporto dello studio di Azure Machine Learning (versione classica) terminerà il 31 agosto 2024. È consigliabile passare ad Azure Machine Learning entro tale data.

A partire dal 1° dicembre 2021 non sarà possibile creare nuove risorse dello studio di Azure Machine Learning (versione classica). Fino al 31 agosto 2024 sarà possibile continuare a usare le risorse dello studio di Azure Machine Learning (versione classica).

La documentazione relativa allo studio di Machine Learning (versione classica) è in fase di ritiro e potrebbe non essere aggiornata in futuro.

Questo articolo elenca i moduli in Machine Learning Studio (versione classica) che supportano l'esecuzione di codice R. Questi moduli semplificano la pubblicazione di modelli R nell'ambiente di produzione e l'uso dell'esperienza della community del linguaggio R per risolvere i problemi reali.

Nota

Si applica a: Machine Learning Studio (versione classica)

Nella finestra di progettazione sono disponibili moduli simili Azure Machine Learning trascinamento della selezione.

Questo articolo descrive anche alcuni requisiti generali per l'uso di R in Machine Language Studio (versione classica) ed elenca i problemi noti e i suggerimenti.

Elenco dei moduli

La categoria Moduli del linguaggio R include i moduli seguenti:

Requisiti quando si usa R

Prima di usare lo script R in Machine Learning Studio (versione classica), osservare i requisiti seguenti:

  • Se sono stati importati dati che utilizzano CSV o altri formati, non è possibile leggere i dati direttamente in formato CSV dal codice R. Usare invece Converti in set di dati per preparare i dati, prima di usarli come input per un modulo R.

  • Quando si collega un Machine Learning di dati come input a un modulo R, il set di dati viene caricato automaticamente nell'area di lavoro R come frame di dati, con il set di dati del nome della variabile.

    È tuttavia possibile definire frame di dati aggiuntivi o modificare il nome della variabile del set di dati predefinita all'interno dello script R.

  • I moduli R vengono eseguiti in un ambiente protetto e isolato all'interno dell'area di lavoro privata. All'interno dell'area di lavoro è possibile creare frame di dati e variabili da usare con più moduli.

    Tuttavia, non è possibile caricare frame di dati R da un'area di lavoro diversa o leggere le variabili create in un'area di lavoro diversa, anche se tale area di lavoro è aperta in una sessione di Azure. Inoltre, non è possibile usare moduli con una dipendenza Java o che richiedono l'accesso diretto alla rete.

Ottimizzazione per le attività di assegnazione dei punteggi R

L'implementazione di R in Machine Learning Studio (versione classica) e nell'ambiente dell'area di lavoro include due componenti principali. Un componente coordina l'esecuzione dello script e l'altro fornisce accesso ai dati ad alta velocità e assegnazione dei punteggi. Il componente di assegnazione dei punteggi è ottimizzato per migliorare scalabilità e prestazioni.

Di conseguenza, le aree di lavoro R in Machine Learning Studio (versione classica) supportano anche due tipi di attività di assegnazione dei punteggi, ognuna ottimizzata per requisiti diversi. L'assegnazione dei punteggi viene in genere utilizzata file per file quando si compila un esperimento. In genere si usa il servizio di risposta alle richieste (RRS) per l'assegnazione di punteggi molto veloce, quando si esegue l'assegnazione dei punteggi come parte di un servizio Web.

Supporto del pacchetto e della versione R

Machine Learning Studio (versione classica) include oltre 500 dei pacchetti R più diffusi. I pacchetti R tra cui è possibile selezionare dipendono dalla versione di R selezionata per l'esperimento:

  • CRAN R
  • Microsoft R Open (MRO 3.2.2 o MRO 3.4.4)

Ogni volta che si crea un esperimento, è necessario scegliere una singola versione di R in cui eseguire, per tutti i moduli dell'esperimento.

Elenco di pacchetti per versione

Per un elenco dei pacchetti attualmente supportati in Machine Learning, vedere Pacchetti R supportati da Machine Learning.

È anche possibile aggiungere il codice seguente a un modulo Execute R Script nell'esperimento ed eseguirlo per ottenere un set di dati contenente i nomi e le versioni dei pacchetti. Assicurarsi di impostare la versione di R nelle proprietà del modulo per generare l'elenco corretto per l'ambiente previsto.

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

Importante

I pacchetti supportati in Machine Language Studio (versione classica) cambiano di frequente. In caso di dubbi sul supporto di un pacchetto R, usare l'esempio di codice R fornito per ottenere l'elenco completo dei pacchetti nell'ambiente corrente.

Estendere gli esperimenti usando il linguaggio R

Sono disponibili diversi modi per estendere l'esperimento usando uno script R personalizzato o aggiungendo pacchetti R. Ecco alcune idee per iniziare:

  • Usare il codice R per eseguire operazioni matematiche personalizzate. Sono ad esempio disponibili pacchetti R per la risoluzione di equazioni differenziali, la generazione di numeri casuali o l'esecuzione di simulazioni Monte Carlo.

  • Applicare trasformazioni personalizzate per i dati. Ad esempio, è possibile usare un pacchetto R per eseguire l'interpolazione sui dati delle serie tempo reale o per eseguire l'analisi linguistica.

  • Usare origini dati diverse. I moduli di script R supportano un set aggiuntivo di input, che possono includere file di dati, in formato compresso. È possibile usare file di dati compressi, insieme a pacchetti R progettati per tali origini dati, per appiattire i dati gerarchici in una tabella dati flat. È anche possibile usarli per leggere i dati da Excel e da altri formati di file.

  • Usare metriche personalizzate per la valutazione. Ad esempio, anziché usare le funzioni fornite in Evaluate, è possibile importare un pacchetto R e quindi applicarne le metriche.

L'esempio seguente illustra il processo generale per l'installazione di nuovi pacchetti e l'uso di codice R personalizzato nell'esperimento.

Dividere le colonne usando R

Per estrarre le funzioni a volte è necessaria una manipolazione estesa dei dati. Si supponga di avere un file di testo che contiene un ID seguito da valori e note, tutti separati da spazi. Oppure si supponga che il file di testo contenga caratteri non supportati da Machine Language Studio (versione classica).

Sono disponibili diversi pacchetti R che forniscono funzioni specializzate per tali attività. Il pacchetto della libreria splitstackshape contiene diverse funzioni utili per la suddivisione di più colonne, anche se ogni colonna ha un delimitatore diverso.

Nell'esempio seguente viene illustrato come installare i pacchetti necessari e suddividere le colonne. È necessario aggiungere questo codice al modulo Execute R Script (Esegui script 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")  

Risorse aggiuntive

Iniziare con questa esercitazione che descrive come compilare un modulo R personalizzato:

Questo articolo illustra in dettaglio le differenze tra i due motori di assegnazione dei punteggi e spiega come scegliere un metodo di assegnazione dei punteggi quando si distribuisce l'esperimento come servizio Web:

Questo esperimento nel Azure AI Gallery illustra come creare un modulo R personalizzato che esegue il training, l'assegnazione dei punteggi e la valutazione:

Questo articolo, pubblicato in R-Blobs, illustra come è possibile creare un metodo di valutazione personalizzato in Machine Learning:

Altre informazioni su R

Questo sito fornisce un elenco suddiviso in categorie di pacchetti in cui è possibile eseguire ricerche in base alle parole chiave:

Per altri esempi di codice R e per assistenza su R e le relative applicazioni, vedere le seguenti risorse:

Vedi anche