Utilizzo degli iperparametri - Amazon Braket

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Utilizzo degli iperparametri

È possibile definire gli iperparametri necessari all'algoritmo, come il tasso di apprendimento o la dimensione dei passi, quando si crea un lavoro ibrido. I valori degli iperparametri vengono in genere utilizzati per controllare vari aspetti dell'algoritmo e spesso possono essere regolati per ottimizzare le prestazioni dell'algoritmo. Per utilizzare gli iperparametri in un processo ibrido Braket, è necessario specificarne i nomi e i valori in modo esplicito come dizionario. Nota che i valori devono essere del tipo di dati stringa. Specificate i valori degli iperparametri che desiderate testare durante la ricerca del set di valori ottimale. Il primo passaggio per utilizzare gli iperparametri consiste nell'impostare e definire gli iperparametri come dizionario, come illustrato nel codice seguente:

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

Dovreste quindi passare gli iperparametri definiti nel frammento di codice sopra riportato, da utilizzare nell'algoritmo di vostra scelta, con qualcosa di simile al seguente:

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

Gli iperparametri verrebbero quindi caricati nello script di lavoro ibrido utilizzando il seguente codice:

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)

Un paio di guide molto utili per imparare a usare gli iperparametri sono fornite dai tutorial QAOAcon Amazon Braket Hybrid Jobs PennyLane e Quantum machine learning in Amazon Braket Hybrid Jobs.