

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.

# Realizar análisis avanzados mediante Amazon Redshift ML
<a name="perform-advanced-analytics-using-amazon-redshift-ml"></a>

*Po Hong y Chyanna Antonio, Amazon Web Services*

## Resumen
<a name="perform-advanced-analytics-using-amazon-redshift-ml-summary"></a>

En la nube de Amazon Web Services (AWS), puede utilizar el machine learning de Amazon Redshift (Amazon Redshift ML) para realizar análisis de ML de los datos almacenados en un clúster de Amazon Redshift o en Amazon Simple Storage Service (Amazon S3). Amazon Redshift ML admite el aprendizaje supervisado, que se suele utilizar para análisis avanzados. Los casos de uso de Amazon Redshift ML incluyen la previsión de ingresos, la detección de fraudes con tarjetas de crédito y las predicciones del valor de por vida del cliente (CLV) o la pérdida de clientes.

Amazon Redshift ML facilita a los usuarios de bases de datos crear, entrenar e implementar modelos de machine learning mediante comandos SQL estándar. Amazon Redshift ML utiliza Amazon SageMaker Autopilot para entrenar y ajustar automáticamente los mejores modelos de aprendizaje automático para su clasificación o regresión en función de sus datos, sin perder el control y la visibilidad.

Todas las interacciones entre Amazon Redshift, Amazon S3 y Amazon SageMaker se resumen y automatizan. Una vez entrenado e implementado el modelo de ML, pasa a estar disponible como [función definida por el usuario](https://docs.aws.amazon.com/redshift/latest/dg/user-defined-functions.html) (UDF) en Amazon Redshift y se puede usar en consultas de SQL.  

Este patrón complementa el tutorial [Crear, entrenar e implementar modelos de aprendizaje automático en Amazon Redshift mediante SQL con Amazon Redshift ML](https://aws.amazon.com/blogs/big-data/create-train-and-deploy-machine-learning-models-in-amazon-redshift-using-sql-with-amazon-redshift-ml/) del blog de AWS, y [el tutorial Crear, entrenar e implementar un modelo de aprendizaje automático con SageMaker Amazon](https://aws.amazon.com/getting-started/hands-on/build-train-deploy-machine-learning-model-sagemaker/) del Centro de recursos de [introducción](https://aws.amazon.com/getting-started/).

## Requisitos previos y limitaciones
<a name="perform-advanced-analytics-using-amazon-redshift-ml-prereqs"></a>

**Requisitos previos **
+ Una cuenta de AWS activa
+ Datos existentes en una tabla de Amazon Redshift

**Habilidades**
+ Familiaridad con los términos y conceptos que utiliza Amazon Redshift ML, incluidos *machine learning*, *entrenamiento* y *predicción.*. Para obtener más información, consulte [Training ML models](https://docs.aws.amazon.com/machine-learning/latest/dg/training-ml-models.html) (Entrenar modelos de machine learning) en la documentación de Amazon Machine Learning (Amazon ML).
+ Experiencia en la configuración de usuarios, la administración de acceso y la sintaxis SQL estándar de Amazon Redshift. Para obtener más información, consulte [Introducción a Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/gsg/getting-started.html) en la documentación de Amazon Redshift.
+ Conocimiento y experiencia en Amazon S3 y AWS Identity and Access Management (IAM). 
+ La experiencia en ejecución de comandos de la interfaz de la línea de comandos de AWS (AWS CLI) también es beneficiosa, pero no obligatoria. 

**Limitaciones**
+ El clúster de Amazon Redshift y el bucket de Amazon S3 deben estar en la misma región de AWS.
+ El enfoque de este patrón solo admite modelos de aprendizaje supervisado, como la regresión, la clasificación binaria y la clasificación multiclase. 

## Arquitectura
<a name="perform-advanced-analytics-using-amazon-redshift-ml-architecture"></a>

![\[El flujo de trabajo muestra cómo funciona Amazon Redshift ML SageMaker para crear, entrenar e implementar un modelo de aprendizaje automático.\]](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/images/pattern-img/3b6a5f49-c647-45f4-940e-b623f989326a/images/36cc39fe-c1f3-4d68-b89e-e636156001a6.png)


En los siguientes pasos se explica cómo funciona Amazon Redshift ML SageMaker para crear, entrenar e implementar un modelo de aprendizaje automático: 

1. Amazon Redshift exporta los datos de entrenamiento a un bucket de S3.

1. SageMaker El piloto automático preprocesa automáticamente los datos de entrenamiento.

1. Una vez invocada la `CREATE MODEL` declaración, Amazon Redshift ML la utiliza SageMaker para la formación.

1. SageMaker Autopilot busca y recomienda el algoritmo de aprendizaje automático y los hiperparámetros óptimos que optimizan las métricas de evaluación.

1. Amazon Redshift ML registra el modelo de ML de salida como una función SQL en el clúster de Amazon Redshift.

1. La función del modelo ML se puede utilizar en una instrucción SQL. 

**Pila de tecnología**
+ Amazon Redshift
+ SageMaker
+ Amazon S3

## Tools (Herramientas)
<a name="perform-advanced-analytics-using-amazon-redshift-ml-tools"></a>
+ [Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/dg/welcome.html): Amazon Redshift es un servicio de almacenamiento de datos completamente administrado, de nivel empresarial y de escala de petabytes.
+ [Amazon Redshift ML](https://docs.aws.amazon.com/redshift/latest/dg/machine_learning.html): Amazon Redshift machine learning (Amazon Redshift ML) es un servicio robusto basado en la nube que facilita el uso de la tecnología de machine learning a los analistas y científicos de datos con cualquier nivel de habilidades.
+ [Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html): Amazon Simple Storage Service (Amazon S3) es un servicio de almacenamiento para Internet. 
+ [Amazon SageMaker](https://docs.aws.amazon.com/sagemaker/latest/dg/whatis.html): SageMaker es un servicio de aprendizaje automático totalmente gestionado. 
+ [Amazon SageMaker Autopilot](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-automate-model-development.html): el SageMaker piloto automático es un conjunto de funciones que automatiza las tareas clave de un proceso de aprendizaje automático (AutoML).

 

**Código**

Puede crear un modelo de ML supervisado en Amazon Redshift mediante el siguiente código:

```
"CREATE MODEL customer_churn_auto_model
FROM (SELECT state,
             account_length,
             area_code,
             total_charge/account_length AS average_daily_spend, 
             cust_serv_calls/account_length AS average_daily_cases,
             churn 
      FROM customer_activity
      WHERE  record_date < '2020-01-01' 
     )
TARGET churn
FUNCTION ml_fn_customer_churn_auto
IAM_ROLE 'arn:aws:iam::XXXXXXXXXXXX:role/Redshift-ML'
SETTINGS (
  S3_BUCKET 'your-bucket'
);")
```

**nota**  
Nota: El estado de `SELECT` puede hacer referencia a las tablas normales de Amazon Redshift, a las tablas externas de Amazon Redshift Spectrum o a ambas.

## Epics
<a name="perform-advanced-analytics-using-amazon-redshift-ml-epics"></a>

### Preparación de un conjunto de datos para entrenamiento y prueba
<a name="prepare-a-training-and-test-dataset"></a>


| Tarea | Descripción | Habilidades requeridas | 
| --- | --- | --- | 
| Prepare un conjunto de datos para entrenamiento y prueba. | Inicie sesión en la consola de administración de AWS y abra la SageMaker consola de Amazon. Siga las instrucciones del tutorial [Build, train, and deploy a machine learning model](https://aws.amazon.com/getting-started/hands-on/build-train-deploy-machine-learning-model-sagemaker/) (Crear, entrenar e implementar un modelo de machine learning) para crear un archivo.csv o Apache Parquet con una columna de etiquetas (*entrenamiento supervisado*) y sin encabezado. Se recomienda mezclar el conjunto de datos sin procesar y dividirlo en un conjunto de entrenamiento para entrenar el modelo (70 por ciento) y un conjunto de prueba para evaluar el rendimiento del modelo (30 por ciento). | Científico de datos | 

### Preparación y configuración de la pila de tecnología
<a name="prepare-and-configure-the-technology-stack"></a>


| Tarea | Descripción | Habilidades requeridas | 
| --- | --- | --- | 
| Cree y configure un clúster de Amazon Redshift. | En la consola de Amazon Redshift, cree un clúster de acuerdo con sus requisitos. Para obtener más información, consulte [Create a cluster](https://docs.aws.amazon.com/redshift/latest/dg/tutorial-loading-data-launch-cluster.html) (Crear un clúster) en la documentación de Amazon Redshift.  Los nuevos clústeres de Amazon Redshift deben crearse con la pista de mantenimiento `SQL_PREVIEW`. Para obtener más información acerca de las pistas de de previsualización, consulte [Choosing cluster maintenance tracks](https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#rs-mgmt-maintenance-tracks) (Seleccionar pistas de mantenimiento del clúster) en la documentación de Amazon Redshift. | Administrador de base de datos, arquitecto de la nube | 
| Cree un bucket de S3 para almacenar los datos de entrenamiento y los artefactos del modelo. | En la consola de Amazon S3, cree un bucket de S3 para los datos de entrenamiento y prueba. Para obtener más información acerca de la creación de un bucket de S3, consulte [Creación de un bucket de S3](https://docs.aws.amazon.com/quickstarts/latest/s3backup/step-1-create-bucket.html) en Inicios rápidos de AWS. Asegúrese de que el clúster de Amazon Redshift y el bucket de Amazon S3 se encuentren en la misma región.  | Administrador de base de datos, arquitecto de la nube | 
| Cree y asocie una política de IAM al clúster de Amazon Redshift. | Cree una política de IAM para permitir que el clúster de Amazon Redshift SageMaker acceda a Amazon S3. Para las instrucciones y los pasos a seguir, consulte [Cluster setup for using Amazon Redshift ML](https://docs.aws.amazon.com/redshift/latest/dg/cluster-setup.html) (Configuración del clúster para usar Amazon Redshift ML) en la documentación de Amazon Redshift. | Administrador de base de datos, arquitecto de la nube | 
| Permita que los usuarios y grupos de Amazon Redshift accedan a esquemas y tablas. | Otorgue permisos para permitir que los usuarios y grupos de Amazon Redshift accedan a tablas y esquemas internos y externos. Para ver los pasos e instrucciones, consulte [Managing permissions and ownership](https://docs.aws.amazon.com/redshift/latest/dg/permissions-ownership.html) (Administrar los permisos y la propiedad) en la documentación de Amazon Redshift. | Administrador de base de datos | 

### Creación y entrenamiento del modelo de ML en Amazon Redshift
<a name="create-and-train-the-ml-model-in-amazon-redshift"></a>


| Tarea | Descripción | Habilidades requeridas | 
| --- | --- | --- | 
| Cree y entrene el modelo de ML en Amazon Redshift. | Cree y entrene el modelo de ML en Amazon Redshift ML. Para obtener más información, consulte la instrucción `CREATE MODEL` en la documentación de Amazon Redshift. | Desarrollador, científico de datos | 

### Cómo realizar inferencias y predicciones por lotes en Amazon Redshift
<a name="perform-batch-inference-and-prediction-in-amazon-redshift"></a>


| Tarea | Descripción | Habilidades requeridas | 
| --- | --- | --- | 
| Realice una inferencia mediante la función del modelo de ML generado. | Para obtener más información sobre cómo realizar inferencias mediante la función del modelo de ML generado, consulte [Prediction](https://docs.aws.amazon.com/redshift/latest/dg/prediction.html) (Predicción) en la documentación de Amazon Redshift. | Científico de datos, usuario de inteligencia empresarial | 

## Recursos relacionados
<a name="perform-advanced-analytics-using-amazon-redshift-ml-resources"></a>

**Preparación de un conjunto de datos para entrenamiento y prueba**
+ [Creación, formación e implementación de un modelo de aprendizaje automático con Amazon SageMaker](https://aws.amazon.com/getting-started/hands-on/build-train-deploy-machine-learning-model-sagemaker/)

 

**Preparación y configuración de la pila de tecnología**
+ [Creación de un clúster de Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/dg/tutorial-loading-data-launch-cluster.html)
+ [Choosing Amazon Redshift cluster maintenance tracks ](https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#rs-mgmt-maintenance-tracks)(Seleccionar las pistas de mantenimiento de clústeres de Amazon Redshift)
+ [Creating an S3 bucket](https://docs.aws.amazon.com/quickstarts/latest/s3backup/step-1-create-bucket.html) (Crear un bucket de S3)
+ [Setting up an Amazon Redshift cluster for using Amazon Redshift ML](https://docs.aws.amazon.com/redshift/latest/dg/cluster-setup.html) (Configurar un clúster de Amazon Redshift para utilizar Amazon Redshift ML)
+ [Managing permissions and ownership in Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/dg/permissions-ownership.html) (Administrar permisos y propiedad en Amazon Redshift)

 

**Creación y entrenamiento del modelo de ML en Amazon Redshift**
+ [CREATE MODEL statement in Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/dg/r_CREATE_MODEL.html#r_simple_create_model) (La instrucción CREATE MODEL en Amazon Redshift) 

 

**Cómo realizar inferencias y predicciones por lotes en Amazon Redshift)**
+ [Prediction in Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/dg/prediction.html) (Predicción en Amazon Redshift) 

 

**Otros recursos**
+ [Getting started with Amazon Redshift ML](https://docs.aws.amazon.com/redshift/latest/dg/geting-started-machine-learning.html) (Introducción a Amazon Redshift ML)
+ [Creating, training, and deploying ML models in Amazon Redshift using SQL with Amazon Redshift ML](https://aws.amazon.com/blogs/big-data/create-train-and-deploy-machine-learning-models-in-amazon-redshift-using-sql-with-amazon-redshift-ml/) (Crear, entrenar e implementar modelos de ML en Amazon Redshift mediante SQL con Amazon Redshift ML)
+ [Amazon Redshift partners](https://aws.amazon.com/redshift/partners/?partner-solutions-cards.sort-by=item.additionalFields.partnerNameLower&partner-solutions-cards.sort-order=aschttps://aws.amazon.com/redshift/partners/?partner-solutions-cards.sort-by=item.additionalFields.partnerNameLower&partner-solutions-cards.sort-order=asc) (Socios de Amazon Redshift.)
+ [AWS machine learning competency partners](https://aws.amazon.com/machine-learning/partner-solutions/?partner-solutions-cards.sort-by=item.additionalFields.partnerNameLower&partner-solutions-cards.sort-order=asc) (Socios con competencias en machine learning de AWS)