Utilisation d'hyperparamètres - Amazon Braket

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.

Utilisation d'hyperparamètres

Vous pouvez définir les hyperparamètres nécessaires à votre algorithme, tels que le taux d'apprentissage ou la taille des étapes, lorsque vous créez une tâche hybride. Les valeurs des hyperparamètres sont généralement utilisées pour contrôler différents aspects de l'algorithme et peuvent souvent être ajustées pour optimiser les performances de l'algorithme. Pour utiliser des hyperparamètres dans une tâche hybride Braket, vous devez spécifier leurs noms et leurs valeurs de manière explicite sous forme de dictionnaire. Notez que les valeurs doivent être du type chaîne de données. Vous spécifiez les valeurs d'hyperparamètres que vous souhaitez tester lorsque vous recherchez le jeu de valeurs optimal. La première étape de l'utilisation des hyperparamètres consiste à configurer et à définir les hyperparamètres sous forme de dictionnaire, comme le montre le code suivant :

#defining the number of qubits used n_qubits = 8 #defining the number of layers used n_layers = 10 #defining the number of iterations used for your optimization algorithm n_iterations = 10 hyperparams = { "n_qubits": n_qubits, "n_layers": n_layers, "n_iterations": n_iterations }

Vous devez ensuite transmettre les hyperparamètres définis dans l'extrait de code ci-dessus à utiliser dans l'algorithme de votre choix avec quelque chose qui ressemble à ce qui suit :

import time from braket.aws import AwsQuantumJob #Name your job so that it can be later identified job_name = f"qcbm-gaussian-training-{n_qubits}-{n_layers}-" + str(int(time.time())) job = AwsQuantumJob.create( #Run this hybrid job on the SV1 simulator device="arn:aws:braket:::device/quantum-simulator/amazon/sv1", #The directory or single file containing the code to run. source_module="qcbm", #The main script or function the job will run. entry_point="qcbm.qcbm_job:main", #Set the job_name job_name=job_name, #Set the hyperparameters hyperparameters=hyperparams, #Define the file that contains the input data input_data="data.npy", # or input_data=s3_path # wait_until_complete=False, )
Note

Pour en savoir plus sur les données d'entrée, consultez la section Entrées.

Les hyperparamètres seraient ensuite chargés dans le script de tâche hybride à l'aide du code suivant :

import json import os #Load the Hybrid Job hyperparameters hp_file = os.environ["AMZN_BRAKET_HP_FILE"] with open(hp_file, "r") as f: hyperparams = json.load(f)
Note

Pour plus d'informations sur la façon de transmettre des informations telles que les données d'entrée et l'ARN du périphérique au script de tâche hybride, consultez cette page github.

Quelques guides très utiles pour apprendre à utiliser les hyperparamètres sont fournis dans les didacticiels « QAOAwith Amazon Braket Hybrid Jobs » PennyLane et « Quantum machine learning in Amazon Braket Hybrid Jobs ».