Uso de hiperparámetros - Amazon Braket

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 hiperparámetros

Puede definir los hiperparámetros que necesita su algoritmo, como la tasa de aprendizaje o el tamaño de los pasos, al crear un trabajo híbrido. Los valores de los hiperparámetros se utilizan normalmente para controlar varios aspectos del algoritmo y, a menudo, se pueden ajustar para optimizar el rendimiento del algoritmo. Para utilizar los hiperparámetros en un trabajo híbrido de Braket, es necesario especificar sus nombres y valores de forma explícita en un diccionario. Tenga en cuenta que los valores deben ser del tipo de datos de cadena. Al buscar el conjunto de valores óptimo, debe especificar los valores de hiperparámetros que desea probar. El primer paso para utilizar los hiperparámetros es configurar y definir los hiperparámetros como un diccionario, como se puede ver en el siguiente código:

#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 }

A continuación, debe pasar los hiperparámetros definidos en el fragmento de código indicado anteriormente para utilizarlos en el algoritmo de su elección con algo parecido a lo siguiente:

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, )

A continuación, los hiperparámetros se cargarían en el script de trabajo híbrido mediante el siguiente código:

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)

Los tutoriales QAOA con Amazon Braket Hybrid Jobs y Quantum machine learning en Amazon Braket Hybrid Jobs ofrecen un par de guías muy útiles para aprender a utilizar los hiperparámetros. PennyLane