

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Création d'un canal d'entrée ML dans AWS Clean Rooms ML
<a name="create-ml-input-channel"></a>

**Prérequis : **
+ Et Compte AWS avec accès à AWS Clean Rooms
+ Une collaboration configurée dans l' AWS Clean Rooms endroit où vous souhaitez créer le canal d'entrée ML
+ Autorisations permettant d'interroger des données et de créer des canaux d'entrée ML dans le cadre de la collaboration. 
+ (Facultatif) Un algorithme de modèle existant à associer au canal d'entrée ML, ou des autorisations pour en créer un nouveau
+ (Facultatif) Tables avec des règles d'analyse qui peuvent être exécutées pour le modèle que vous avez spécifié. 
+ (Facultatif) Modèle de requête ou d'analyse SQL existant à utiliser pour générer le jeu de données
+ (Facultatif) Un rôle de service existant avec les autorisations appropriées, ou des autorisations pour créer un nouveau rôle de service
+ (Facultatif) Une AWS KMS clé personnalisée si vous souhaitez utiliser votre propre clé de chiffrement
+ Autorisations appropriées pour créer et gérer des modèles de machine learning dans le cadre de la collaboration

Un *canal d'entrée ML* est un ensemble de données créé à partir d'une requête de données spécifique. Les membres capables d'interroger des données peuvent préparer leurs données pour l'entraînement et l'inférence en créant un canal d'entrée ML. La création d'un canal d'entrée ML permet d'utiliser ces données dans différents modèles d'entraînement au sein d'une même collaboration. Vous devez créer des canaux d'entrée ML distincts pour l'entraînement et l'inférence.

Pour créer un canal d'entrée ML, vous devez spécifier la requête SQL utilisée pour interroger les données d'entrée et créer le canal d'entrée ML. Les résultats de cette requête ne sont jamais partagés avec aucun membre et restent dans les limites de Clean Rooms ML. Le nom de ressource Amazon (ARN) de référence est utilisé dans les étapes suivantes pour entraîner un modèle ou exécuter une inférence.

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

**Pour créer un canal d'entrée ML (console)**

1. Connectez-vous à la AWS Clean Rooms console AWS Management Console et ouvrez-la à l'adresse [https://console.aws.amazon.com/cleanrooms](https://console.aws.amazon.com/cleanrooms/home).

1. Dans le volet de navigation de gauche, sélectionnez **Collaborations**.

1. Sur la page **Collaborations**, choisissez la collaboration dans laquelle vous souhaitez créer un canal d'entrée ML.

1. Une fois la collaboration ouverte, choisissez l'onglet **Modèles ML**.

1. Sous **Modèles ML personnalisés**, dans la section **Canaux d'entrée ML**, choisissez **Créer un canal d'entrée ML**.

1. Sur la page **Créer un canal d'entrée ML****, pour les détails du canal d'entrée ML**, procédez comme suit : 

   1. Dans **Nom**, entrez un nom unique pour votre chaîne.

   1. (Facultatif) **Dans Description**, entrez une description de votre chaîne.

   1. Pour **Algorithme de modèle associé**, sélectionnez l'algorithme à utiliser.

      Choisissez **Associer un algorithme de modèle** pour en ajouter un nouveau.

1. Pour **Dataset**, choisissez une méthode pour générer le jeu de données d'entraînement :
   + Choisissez **SQL query** pour utiliser les résultats d'une requête SQL comme ensemble de données d'apprentissage. 

     Si vous avez choisi **SQL query**, saisissez votre requête dans le champ de **requête SQL**.

     (Facultatif) Pour importer une requête que vous avez utilisée récemment, choisissez **Importer à partir de requêtes récentes**. 
   + Choisissez le **modèle d'analyse** pour utiliser les résultats d'un modèle d'analyse comme jeu de données d'apprentissage.
**Avertissement**  
La génération de données synthétiques empêche de déduire des attributs individuels, que des individus spécifiques soient présents dans l'ensemble de données d'origine ou que des attributs d'apprentissage de ces individus soient présents. Cependant, cela n'empêche pas les valeurs littérales de l'ensemble de données d'origine, y compris les informations personnelles identifiables (PII), d'apparaître dans l'ensemble de données synthétique.  
Nous recommandons d'éviter dans le jeu de données d'entrée les valeurs associées à une seule personne concernée, car elles peuvent permettre de réidentifier une personne concernée. Par exemple, si un seul utilisateur vit dans un code postal, la présence de ce code postal dans le jeu de données synthétique confirmera que cet utilisateur figurait dans le jeu de données d'origine. Des techniques telles que la troncation de valeurs de haute précision ou le remplacement de catalogues peu courants par *d'autres* peuvent être utilisées pour atténuer ce risque. Ces transformations peuvent faire partie de la requête utilisée pour créer le canal d'entrée ML.

   1. Si aucune table n'est associée, choisissez **Associer une table** pour ajouter des tables avec une règle d'analyse pouvant être exécutée pour le modèle spécifié. 

   1. Choisissez le **type de travailleur** à utiliser lors de la création de ce canal de données. Le type de travailleur par défaut est **CR.1X**. Spécifiez le **nombre de travailleurs** à utiliser. Le numéro de travailleur par défaut est **16**. Pour définir les **propriétés de Spark** :

      1. Développez les **propriétés Spark**.

      1. Choisissez **Ajouter des propriétés Spark**.

      1. Dans la boîte de dialogue **des propriétés de Spark**, choisissez un **nom de propriété** dans la liste déroulante et entrez une **valeur**.

      Les tableaux suivants fournissent une définition pour chaque propriété.

      Pour plus d'informations sur les propriétés de Spark, consultez la section [Propriétés de Spark](https://spark.apache.org/docs/latest/configuration.html#spark-properties) dans la documentation d'Apache Spark. 
**Note**  
Vous pouvez configurer un maximum de 50 propriétés Spark. La valeur de chaque propriété peut comporter jusqu'à 500 caractères.    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/clean-rooms/latest/userguide/create-ml-input-channel.html)    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/clean-rooms/latest/userguide/create-ml-input-channel.html)

   1. Pour **Conservation des données en jours**, entrez le nombre de jours pendant lesquels les données sont conservées.

   1. Pour **le format des résultats,** choisissez **CSV** ou **Parquet** comme format de données que le canal d'entrée ML doit utiliser.

1. Pour l'**accès au service**, choisissez le **nom du rôle de service existant** qui sera utilisé pour accéder à cette table ou choisissez **Créer et utiliser un nouveau rôle de service**. 

1. Pour le **chiffrement**, choisissez le **secret de chiffrement avec une clé KMS personnalisée** pour spécifier votre propre clé KMS et les informations associées. Sinon, Clean Rooms ML gérera le chiffrement.

1. (Facultatif) Pour **Compute payer**, sélectionnez le membre de la collaboration qui prend en charge les coûts de calcul des requêtes.
**Note**  
S'il n'existe qu'un seul payeur candidat pour le calcul des requêtes dans le cadre de la collaboration, c'est ce payeur par défaut.

1. (Facultatif) Pour le **payeur de génération de données synthétiques**, sélectionnez le membre de la collaboration qui prend en charge les coûts de génération de données synthétiques.
**Note**  
Cette option apparaît lorsque le canal d'entrée ML utilise un modèle d'analyse configuré pour la sortie de données synthétiques. S'il n'y a qu'un seul payeur candidat à la génération de données synthétiques dans le cadre de la collaboration, c'est ce payeur par défaut.

1. Choisissez **Create ML input channel**. 

   La création du canal d'entrée ML prendra quelques minutes. Vous pouvez voir une liste des canaux d'entrée ML dans l'onglet **Modèles ML**.

**Note**  
Une fois le canal d'entrée ML créé, vous ne pouvez pas le modifier.

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

Pour créer un canal d'entrée ML (API)

Exécutez le code suivant avec vos paramètres spécifiques : 

```
import boto3 
acr_client = boto3.client('cleanroomsml')

acr_client.create_ml_input_channel(
    name="{{ml_input_channel_name}}",
    membershipIdentifier='{{membership_id}}',
    configuredModelAlgorithmAssociations=[{{configured_model_algorithm_association_arn}}],
    retentionInDays={{1}},
    inputChannel={
        "dataSource": {
            "protectedQueryInputParameters": {
                "sqlParameters": {
                    "queryString": "select * from {{table}}",
                    "computeConfiguration": {
                        "worker": {
                            "type": "{{CR.1X}}",
                            "number": {{16}},
                            "properties": {
                                "spark": {
                                    "{{spark configuration key}}": "{{spark configuration value}}",
                                }
                            }   
                        }
                    },
                    "resultFormat": "{{PARQUET}}"
                }
            }
        },
        "roleArn": "arn:aws:iam::{{111122223333}}:role/{{role_name}}"
    }
)
channel_arn = resp['{{ML Input Channel ARN}}']
```

------