Módulos del lenguaje R
Importante
El soporte técnico de Machine Learning Studio (clásico) finalizará el 31 de agosto de 2024. Se recomienda realizar la transición a Azure Machine Learning antes de esa fecha.
A partir del 1 de diciembre de 2021 no se podrán crear recursos de Machine Learning Studio (clásico). Hasta el 31 de agosto de 2024, puede seguir usando los recursos de Machine Learning Studio (clásico) existentes.
- Consulte la información acerca de traslado de proyectos de aprendizaje automático de ML Studio (clásico) a Azure Machine Learning.
- Más información sobre Azure Machine Learning.
La documentación de ML Studio (clásico) se está retirando y es posible que no se actualice en el futuro.
En este artículo se enumeran los módulos de Machine Learning Studio (clásico) que admiten la ejecución de código R. Estos módulos facilitan la publicación de modelos de R en producción y la experiencia de la comunidad del lenguaje R para resolver problemas reales.
Nota:
Solo se aplica a: Machine Learning Studio (clásico)
Hay módulos para arrastrar y colocar similares en el diseñador de Azure Machine Learning.
En este artículo también se describen algunos requisitos generales para usar R en Machine Language Studio (clásico) y se enumeran los problemas conocidos y las sugerencias.
Lista de módulos
La categoría Módulos de lenguaje R incluye los siguientes módulos:
- Ejecutar script de R: ejecuta un script de R desde Machine Learning experimento.
- Crear modelo de R: crea un modelo de R mediante recursos personalizados.
Requisitos al usar R
Antes de usar el script de R en Machine Learning Studio (clásico), observe los siguientes requisitos:
Si importó datos que usan CSV u otros formatos, no podrá leer los datos directamente en formato CSV desde el código de R. En su lugar, use Convertir en conjunto de datos para preparar los datos, antes de usarlos como entrada en un módulo de R.
Al adjuntar cualquier conjunto de Machine Learning como entrada a un módulo de R, el conjunto de datos se carga automáticamente en el área de trabajo de R como una trama de datos, con el conjunto de datos de nombre de variable.
Sin embargo, puede definir tramas de datos adicionales o cambiar el nombre de la variable de conjunto de datos predeterminada en el script de R.
Los módulos de R se ejecutan en un entorno protegido y aislado dentro del área de trabajo privada. En el área de trabajo, puede crear tramas de datos y variables para usarlas en varios módulos.
Sin embargo, no puede cargar tramas de datos de R desde un área de trabajo diferente ni leer variables creadas en un área de trabajo diferente, incluso si esa área de trabajo está abierta en una sesión de Azure. Además, no puede usar módulos que tengan una dependencia de Java o que requieran acceso directo a la red.
Optimización para tareas de puntuación de R
La implementación de R en el entorno de Machine Learning Studio (clásico) y del área de trabajo incluye dos componentes principales. Un componente coordina la ejecución del script y el otro proporciona acceso a datos de alta velocidad y puntuación. El componente de puntuación está optimizado para mejorar la escalabilidad y el rendimiento.
Por lo tanto, las áreas de trabajo de R en Machine Learning Studio (clásico) también admiten dos tipos de tareas de puntuación, cada una optimizada para requisitos diferentes. Normalmente se usa la puntuación de archivo a archivo al crear un experimento. Normalmente se usa el servicio de respuesta de solicitud (RRS) para una puntuación muy rápida, cuando se realiza la puntuación como parte de un servicio web.
Compatibilidad con versiones y paquetes de R
Machine Learning Studio (clásico) incluye más de 500 de los paquetes de R más populares. Los paquetes de R que puede seleccionar dependen de la versión de R que seleccione para el experimento:
- CRAN R
- Microsoft R Open (MRO 3.2.2 o MRO 3.4.4)
Cada vez que cree un experimento, debe elegir una sola versión de R en la que ejecutarse, para todos los módulos del experimento.
Lista de paquetes por versión
Para obtener una lista de los paquetes que se admiten actualmente en Machine Learning, vea Paquetes de R compatibles con Machine Learning.
También puede agregar el código siguiente a un módulo Ejecutar script R en el experimento y ejecutarlo para obtener un conjunto de datos que contenga versiones y nombres de paquete. Asegúrese de establecer la versión de R en las propiedades del módulo para generar la lista correcta para el entorno previsto.
data.set <- data.frame(installed.packages())
maml.mapOutputPort("data.set")
Importante
Los paquetes que se admiten en Machine Language Studio (clásico) cambian con frecuencia. Si tiene dudas sobre si se admite un paquete de R, use el ejemplo de código de R proporcionado para obtener la lista completa de paquetes en el entorno actual.
Extensión de experimentos mediante el lenguaje R
Hay muchas maneras por las que puede ampliar su experimento mediante el script de R personalizado o agregando paquetes de R. Estas son algunas ideas para empezar:
Use código de R para realizar operaciones matemáticas personalizadas. Por ejemplo, hay paquetes de R para resolver ecuaciones diferenciales, generar números aleatorios o ejecutar simulaciones de Monte Carlo.
Aplicar transformaciones personalizadas para los datos. Por ejemplo, puede usar un paquete de R para realizar la interpolación en datos de serie temporal o realizar análisis lingüísticos.
Trabajar con distintos orígenes de datos. Los módulos de script de R admiten un conjunto adicional de entradas, que pueden incluir archivos de datos, en formato comprimido. Puede usar archivos de datos comprimidos, junto con paquetes de R diseñados para estos orígenes de datos, para aplanar los datos jerárquicos en una tabla de datos planos. También puede usarlos para leer datos de archivos Excel otros formatos de archivo.
Use métricas personalizadas para la evaluación. Por ejemplo, en lugar de usar las funciones proporcionadas en Evaluar, podría importar un paquete de R y, a continuación, aplicar sus métricas.
En el ejemplo siguiente se muestra el proceso general de cómo puede instalar nuevos paquetes y usar código de R personalizado en el experimento.
Dividir columnas mediante R
A veces, los datos requieren una manipulación extensa para extraer características. Supongamos que tiene un archivo de texto que contiene un identificador seguido de valores y notas, todos separados por espacios. O supongamos que el archivo de texto contiene caracteres que no son compatibles con Machine Language Studio (clásico).
Hay varios paquetes de R que proporcionan funciones especializadas para estas tareas. El paquete de biblioteca splitstackshape contiene varias funciones útiles para dividir varias columnas, incluso si cada columna tiene un delimitador diferente.
En el ejemplo siguiente se muestra cómo instalar los paquetes necesarios y dividir columnas. Agregaría este código al módulo Ejecutar 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")
Recursos adicionales
Comience con este tutorial que describe cómo crear un módulo de R personalizado:
En este artículo se analizan en detalle las diferencias entre los dos motores de puntuación y se explica cómo puede elegir un método de puntuación al implementar el experimento como un servicio web:
Este experimento de la Azure AI Gallery muestra cómo puede crear un módulo de R personalizado que realiza el entrenamiento, la puntuación y la evaluación:
En este artículo, publicado en R-Blobanes, se muestra cómo puede crear su propio método de evaluación en Machine Learning:
Más ayuda con R
Este sitio proporciona una lista categorizada de paquetes que puede buscar por palabras clave:
Para ver ejemplos de código de R adicionales y recibir ayuda relacionada con R y sus aplicaciones, consulte estos recursos:
R Project: el sitio oficial para el lenguaje R.
Rseek: un motor de búsqueda de recursos de R.
R-blogs: agregación de blogs en la comunidad de R.
CRAN: el repositorio más grande de paquetes de R.
Quick-R: un buen tutorial de R.
Bioorgor: un gran repositorio de paquetes de R en bioinformática.