

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.

# Uso de la formación incremental en AWS Clean Rooms ML
<a name="use-incremental-training"></a>

Requisitos previos: 
+ Y Cuenta de AWS con acceso a AWS Clean Rooms
+ Un modelo formado existente en una colaboración 
+ Un conjunto de datos nuevo o actualizado para el entrenamiento incremental 
+ Permisos adecuados para crear y gestionar modelos de aprendizaje automático en la colaboración
+ Familiaridad con los hiperparámetros y la configuración del modelo existente 

Con el entrenamiento incremental, puede usar los artefactos de un modelo existente y un conjunto de datos actualizado para entrenar un modelo nuevo. La capacitación incremental le ahorra tiempo y recursos.

Utilice la capacitación incremental para:
+ Entrene un modelo nuevo con un conjunto de datos ampliado que tenga un patrón subyacente que no se tuvo en cuenta en el entrenamiento anterior.
+ Entrene varias variantes de un modelo, ya sea con diferentes hiperparámetros o utilizando diferentes conjuntos de datos.

------
#### [ Console ]

**Para ejecutar un trabajo de entrenamiento incremental (consola)**

1. Inicie sesión en [https://console.aws.amazon.com/cleanrooms Consola de administración de AWS](https://console.aws.amazon.com/cleanrooms/home) y abra la AWS Clean Rooms consola.

1. En el panel de navegación izquierdo, elija **Colaboraciones**.

1. En la página de **colaboraciones**, elija la colaboración en la que estén presentes los artefactos modelo que desee utilizar para el entrenamiento incremental.

1. Cuando se abra la colaboración, seleccione la pestaña de **modelos de aprendizaje automático**.

1. En **Modelos de aprendizaje automático personalizados**, en la sección **Modelos entrenados**, selecciona el botón de radio situado junto al modelo entrenado que deseas entrenar de forma incremental.

1. En la página de **descripción general**, en **Versiones**, 

   1. Selecciona el botón de radio situado junto al modelo entrenado que deseas entrenar de forma incremental.

   1. Elige **Tren desde la versión**. 

1. En la página **Crear un modelo entrenado a partir de una versión**, en **Versión de modelo entrenado**, elija la versión.

   La versión del modelo base se selecciona automáticamente. Puede cambiar esta versión si existen otras versiones.

1. Para ver **los detalles del modelo entrenado**, introduzca lo siguiente:

   1. En **Nombre**, introduzca un nombre exclusivo para el modelo de la colaboración.

   1. (Opcional) En **Descripción**, introduzca una descripción del modelo entrenado.

   1. En el **modo de entrada de datos de entrenamiento**, elija una de las siguientes opciones:
      + Seleccione **Archivo** si tiene un conjunto de datos más pequeño que pueda caber en el volumen de almacenamiento de aprendizaje automático y si prefiere el acceso al sistema de archivos tradicional para su guion de entrenamiento.
      + Selecciona **Pipe** para obtener conjuntos de datos de gran tamaño para transmitir datos directamente desde S3 y así evitar tener que descargar todo al disco, lo que puede mejorar la velocidad de entrenamiento y reducir los requisitos de almacenamiento.
      + Seleccione **FastFile**esta opción si desea combinar las ventajas del streaming desde S3 con el acceso al sistema de archivos, especialmente para leer datos de forma secuencial o si utiliza menos archivos para acelerar los tiempos de inicio.

   1. En el **nombre del canal de formación incremental**, introduzca un nombre para el canal de formación incremental 
**nota**  
Si especificas el **nombre del canal de entrenamiento incremental** sin un identificador de versión, el sistema utiliza el modelo base para el entrenamiento incremental. 

1. Para obtener los **detalles del canal de entrada de ML**, haga lo siguiente: 

   1. Para el **canal de entrada ML**, especifique el canal de entrada ML que proporciona datos al algoritmo del modelo. 

      Para añadir otro canal, elija **Añadir otro canal de entrada ML**. Puede añadir hasta 19 canales de entrada ML adicionales. 

   1. En **Nombre del canal**, introduzca el nombre del canal de entrada ML.

   1. Para el **tipo de distribución de datos de Amazon S3**, elija una de las siguientes opciones:
      + Seleccione **Totalmente replicado** para proporcionar a cada instancia de entrenamiento una copia completa de su conjunto de datos. Esto funciona mejor cuando el conjunto de datos es lo suficientemente pequeño como para caber en la memoria o cuando cada instancia necesita acceder a todos los datos.
      + Selecciona **Fragmentado por la clave S3** para dividir el conjunto de datos entre las instancias de entrenamiento en función de las claves S3. Cada instancia recibe aproximadamente 1/n del total de objetos de S3, donde «n» es el número de instancias. Esto funciona mejor para conjuntos de datos grandes que desee procesar en paralelo.
**nota**  
Tenga en cuenta el tamaño del conjunto de datos y los requisitos de formación al seleccionar un tipo de distribución. La **replicación** completa proporciona un acceso completo a los datos, pero requiere más almacenamiento, mientras que la **clave Sharded by S3** permite el procesamiento distribuido de grandes conjuntos de datos.

1. En **Duración máxima del entrenamiento**, elige la cantidad máxima de tiempo que deseas entrenar tu modelo.

1. En el caso de **los hiperparámetros**, especifique los parámetros específicos del algoritmo y sus valores previstos. Los hiperparámetros son específicos del modelo que se está entrenando y se utilizan para ajustar el entrenamiento del modelo.

1. En el caso de **las variables de entorno**, especifique cualquier variable específica del algoritmo y sus valores previstos. Las variables de entorno se configuran en el contenedor de Docker.

1. En el caso del **cifrado**, para usar una personalizada AWS KMS key, selecciona la casilla de verificación **Cifrar el secreto con una clave KMS personalizada**.

1. Para la **configuración de recursos de EC2**, especifique la información sobre los recursos informáticos que se utilizan para el entrenamiento del modelo. 

   1. En **Tipo de instancia**, elija el tipo de instancia que desee ejecutar.

   1. En **Recuento de instancias**, introduzca el número de instancias.

   1. Para **el tamaño del volumen en GB**, introduzca el tamaño del volumen de almacenamiento de ML.

1. Elija **Crear un modelo entrenado a partir de la versión**. 

------
#### [ API ]

Para ejecutar un trabajo de formación incremental (API)

Ejecute el siguiente código con sus parámetros específicos:

```
import boto3 
acr_ml_client= boto3.client('cleanroomsml')
 
acr_ml_client.create_trained_model(
    membershipIdentifier= 'membership_id',
    configuredModelAlgorithmAssociationArn = 'arn:aws:cleanrooms-ml:region:account:membership/membershipIdentifier/configured-model-algorithm-association/identifier',
    name='trained_model_name',
    resourceConfig={
        'instanceType': 'ml.m5.xlarge',
        'volumeSizeInGB': 1
    },
    incrementalTrainingDataChannels=[
        {
            'trainedModelArn': trained_model_arn,
            'channelName': 'channel_name'
        },
    ]
    dataChannels=[
        {
            'mlInputChannelArn': channel_arn_1,
            'channelName': 'channel_name'
        },
        {
            'mlInputChannelArn': channel_arn_2,
            'channelName': 'channel_name'
        }
    ]
)
```

**nota**  
Límite: máximo 20 canales en total (incluidos ambos `dataChannels``incrementalTrainingDataChannels`).

------

**nota**  
Una vez creado el modelo entrenado, no podrá editarlo. Para realizar cambios, elimine el modelo entrenado y cree uno nuevo.