하이퍼파라미터 사용 - Amazon Braket

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

하이퍼파라미터 사용

하이브리드 작업을 생성할 때 학습률이나 단계 크기 등 알고리즘에 필요한 하이퍼파라미터를 정의할 수 있습니다. 하이퍼파라미터 값은 일반적으로 알고리즘의 다양한 측면을 제어하는 데 사용되며, 알고리즘의 성능을 최적화하도록 조정할 수도 있습니다. Braket 하이브리드 작업에서 하이퍼파라미터를 사용하려면 하이퍼파라미터의 이름과 값을 사전으로 명시적으로 지정해야 합니다. 단, 값은 문자열 데이터 유형이어야 합니다. 최적의 값 세트를 검색할 때 테스트하려는 하이퍼파라미터 값을 지정합니다. 하이퍼파라미터를 사용하는 첫 번째 단계는 하이퍼파라미터를 딕셔너리로 설정하고 정의하는 것입니다. 이 내용은 다음 코드에서 확인할 수 있습니다.

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

그런 다음 선택한 알고리즘에서 사용할 수 있도록 위에 제공된 코드 스니펫에 정의된 하이퍼파라미터를 다음과 같은 형식으로 전달합니다.

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

그러면 하이퍼파라미터가 다음 코드를 사용하여 하이브리드 작업 스크립트에 로드됩니다.

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)

하이퍼파라미터 사용 방법을 배우는 데 매우 유용한 몇 가지 가이드는 Amazon Braket Hybrid Jobs PennyLane 및 Amazon Braket Hybrid Jobs의 Quantum 기계 학습 사용 자습서에 나와 있습니다. QAOA