Uso de hiperparámetros
Puede definir los hiperparámetros que necesita su algoritmo, como la tasa de aprendizaje o el tamaño del paso, al crear un trabajo híbrido. Los valores de los hiperparámetros se utilizan normalmente para controlar diversos aspectos del algoritmo y, a menudo, pueden ajustarse 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. Especifique los valores de los hiperparámetros que se van a probar al buscar el conjunto de valores óptimo. 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.
from braket.devices import Devices device_arn = Devices.Amazon.SV1 hyperparameters = {"shots": 1_000}
A continuación, pase los hiperparámetros definidos en el fragmento de código indicado anteriormente para utilizarlos en el algoritmo que elija. Para ejecutar el siguiente ejemplo de código, cree un directorio denominado «src» en la misma ruta que el archivo de hiperparámetros. Dentro del directorio «src», añada los archivos de código 0_Getting_started_papermill.ipynb
import time from braket.aws import AwsQuantumJob job = AwsQuantumJob.create( device=device_arn, source_module="src", entry_point="src.notebook_runner:run_notebook", input_data="src/0_Getting_started_papermill.ipynb", hyperparameters=hyperparameters, job_name=f"papermill-job-demo-{int(time.time())}", ) # Print job to record the ARN print(job)
Para acceder a sus hiperparámetros desde dentro de su script de trabajo híbrido, consulte la función load_jobs_hyperparams() en el archivo de python notebook_runner.py
from braket.aws import AwsQuantumJob # Get the job using the ARN job_arn = "arn:aws:braket:us-east-1:111122223333:job/5eabb790-d3ff-47cc-98ed-b4025e9e296f" # Replace with your job ARN job = AwsQuantumJob(arn=job_arn) # Access the hyperparameters job_metadata = job.metadata() hyperparameters = job_metadata.get("hyperParameters", {}) print(hyperparameters)
Para obtener más información sobre cómo usar los hiperparámetros, consulte los tutoriales QAOA con trabajos híbridos de Amazon Braket y PennyLane