Algoritmo de bosque de corte aleatorio (RCF) - Amazon SageMaker

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Algoritmo de bosque de corte aleatorio (RCF)

Amazon SageMaker Random Cut Forest (RCF) es un algoritmo no supervisado para detectar puntos de datos anómalos dentro de un conjunto de datos. Son observaciones que difieren de los datos bien estructurados y con patrones. Se pueden mostrar anomalías como picos inesperados en los datos de serie temporal, cortes en la periodicidad o puntos de datos inclasificables. Son fáciles de detectar. Cuando se visualizan en un gráfico, se suelen distinguir fácilmente de los datos "normales". La inclusión de estas anomalías en un conjunto de datos puede aumentar notablemente la complejidad de una tarea de machine learning, ya que los datos "normales" pueden describirse con frecuencia con un modelo sencillo.

Con cada punto de datos, RCF asocia una puntuación de anomalías. Los valores de puntuación bajos indican que el punto de datos se considera "normal". Los valores elevados indican la presencia de una anomalía en los datos. Las definiciones de "bajo" y "alto" dependen de la aplicación, pero la práctica habitual sugiere que las puntuaciones que superan tres desvíos estándar de la puntuación media se consideran anómalas.

Aunque existen muchas aplicaciones de algoritmos de detección de anomalías en datos de serie temporal de una dimensión, como análisis de volumen de tráfico o detección de picos de volumen, RCF se ha creado para trabajar con entradas dimensionales arbitrarias. Amazon SageMaker RCF se adapta bien en cuanto a la cantidad de características, el tamaño del conjunto de datos y la cantidad de instancias.

Interfaz de entrada/salida para el algoritmo RCF

Amazon SageMaker Random Cut Forest es compatible con los canales test de datos train y. El canal de prueba opcional se utiliza para calcular la exactitud, la precisión, la rellamada y las métricas de puntuación F1 en los datos etiquetados. Los tipos de contenido de datos de prueba y capacitación pueden tener los formatos application/x-recordio-protobuf o text/csv. Para los datos de prueba, cuando se usa el formato de texto/csv, el contenido debe especificarse como text/csv;label_size=1, donde la primera columna de cada fila representa la etiqueta de anomalía: "1" para el punto de datos anómalo y "0" para un punto de datos normal. Puede usar el modo de archivo o el modo de canalización para capacitar modelos RCF con datos con formato recordIO-wrapped-protobuf o CSV.

El canal de entrenamiento solo admite S3DataDistributionType=ShardedByS3Key y el canal de prueba solo es compatible con S3DataDistributionType=FullyReplicated. El siguiente ejemplo especifica el tipo de distribución S3 para el canal de tren mediante el SDK de Amazon SageMaker Python.

nota

Se cambió el nombre del sagemaker.inputs.s3_input método a sagemaker.inputs.TrainingInput en SageMaker Python SDK v2.

import sagemaker # specify Random Cut Forest training job information and hyperparameters rcf = sagemaker.estimator.Estimator(...) # explicitly specify "ShardedByS3Key" distribution type train_data = sagemaker.inputs.TrainingInput( s3_data=s3_training_data_location, content_type='text/csv;label_size=0', distribution='ShardedByS3Key') # run the training job on input data stored in S3 rcf.fit({'train': train_data})

Para evitar errores comunes relacionados con las funciones de ejecución, asegúrese de tener las funciones de ejecución necesarias, AmazonSageMakerFullAccess y AmazonEC2ContainerRegistryFullAccess. Para evitar errores comunes relacionados con la inexistencia de la imagen o con permisos incorrectos, asegúrese de que la imagen ECR no supere el espacio en disco asignado a la instancia de entrenamiento. Para evitarlo, ejecute el trabajo de entrenamiento en una instancia que tenga suficiente espacio en disco. Además, si la imagen de ECR proviene del repositorio de Elastic Container Service (ECS) de una AWS cuenta diferente y no estableces los permisos del repositorio para conceder el acceso, se producirá un error. Para obtener más información sobre la configuración de políticas de repositorios, consulte los permisos de repositorio ECR.

Consulte S3DataSource para obtener más información sobre la personalización de los atributos de origen de datos de S3. Por último, para aprovechar la capacitación de varias instancias, se deben particionar los datos de capacitación en el mismo número de archivos que las instancias.

Para la inferencia, RCF admite los tipos de contenido de datos de entrada application/x-recordio-protobuf, text/csv y application/json. Para obtener más información, consulte la documentación de Formatos de datos comunes para algoritmos integrados. La inferencia de RCF devuelve la salida con formato application/x-recordio-protobuf o application/json. Los registros de estos datos de salida contienen las puntuaciones de anomalías correspondientes para cada punto de datos de entrada. Para obtener más información, consulte Formatos de datos comunes: Inferencia.

Para obtener más información sobre los formatos de archivo de entrada y salida, consulte Formatos de respuesta de RCF para inferencia y Cuadernos de ejemplo de RCF.

Recomendaciones de instancias para el algoritmo RCF

Para la capacitación, recomendamos las familias de instancias ml.m4, ml.c4 y ml.c5. Para la inferencia, recomendamos el uso de un tipo de instancia ml.c5.xl en particular para disfrutar del máximo desempeño, así como de costos reducidos por hora de uso. Aunque el algoritmo podría ejecutarse técnicamente en tipos de instancia de GPU, no aprovecha el hardware de GPU.

Cuadernos de ejemplo de RCF

Para ver un ejemplo de cómo entrenar un modelo RCF y realizar inferencias con él, consulte el cuaderno Introducción a los bosques talados al SageMaker azar. Para obtener instrucciones sobre cómo crear instancias del cuaderno de Jupyter y acceder a ellas en las que puede ejecutar el ejemplo, consulte. SageMaker Instancias de Amazon SageMaker Notebook Una vez que haya creado una instancia de bloc de notas y la haya abierto, seleccione la pestaña SageMaker Ejemplos para ver una lista de todos los SageMaker ejemplos. Para abrir un cuaderno, haga clic en la pestaña Usar y seleccione Crear copia.

Para ver una entrada de blog sobre el uso del algoritmo RCF, consulte Uso del algoritmo integrado Amazon SageMaker Random Cut Forest para la detección de anomalías.