ハイパーパラメータの使用方法
ハイブリッドジョブを作成するときに、学習率やステップサイズなど、アルゴリズムに必要なハイパーパラメータを定義できます。ハイパーパラメータ値は通常、アルゴリズムのさまざまな側面を制御するために使用され、多くの場合、アルゴリズムのパフォーマンスを最適化するために調整できます。Braket ハイブリッドジョブでハイパーパラメータを使用するには、ハイパーパラメータの名前と値をディクショナリとして明示的に指定する必要があります。最適な値のセットを検索するときにテストするハイパーパラメーター値を指定してください。ハイパーパラメータを使用するための最初のステップは、ハイパーパラメータをディクショナリとして設定して定義することです。このステップは、次のコードで確認できます。
from braket.devices import Devices device_arn = Devices.Amazon.SV1 hyperparameters = {"shots": 1_000}
次に、上記のコードスニペットで定義されているハイパーパラメータを、選択したアルゴリズムに渡して使用されるようにします。次のコード例を実行するには、ハイパーパラメータファイルと同じパスに「src」という名前のディレクトリを作成します。「src」ディレクトリ内に、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)
ハイブリッドジョブスクリプト内からハイパーパラメータにアクセスするには、notebook_runner.pyload_jobs_hyperparams() 関数を参照してください。ハイブリッドジョブスクリプトの外部からハイパーパラメータにアクセスするには、次のコードを実行します。
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)
ハイパーパラメータの使用方法の詳細については、「QAOA with Amazon Braket Hybrid Jobs and PennyLane