AWS DeepRacer 솔루션 워크플로 - AWS DeepRacer

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

AWS DeepRacer 솔루션 워크플로

AWS DeepRacer 모델을 훈련할 때는 다음과 같은 일반 작업이 수반됩니다.

  1. AWS DeepRacer 서비스가 가상 트랙, 차량의 의미하는 에이전트, 그리고 배경으로 시뮬레이션을 초기화합니다. 에이전트는 정책 신경망을 구체화합니다. 구체화된 정책 신경망은 PPO 알고리즘에서 정의하는 하이퍼파라미터를 사용해 튜닝도 가능합니다.

  2. 에이전트가 임의의 상태(전방 카메라에서 촬영되는 이미지)에 따라 (지정된 조향 각도와 속도로) 행동합니다.

  3. 시뮬레이션 환경은 에이전트 행동에 따라 에이전트의 위치를 업데이트한 후 보상과 업데이트된 카메라 이미지를 반환합니다. 상태, 행동, 보상 및 새로운 상태의 형식으로 수집되는 경험은 신경망을 주기적으로 업데이트하는 데 사용됩니다. 이렇게 업데이트된 신경망 모델을 사용해 경험이 추가로 생성됩니다.

  4. 시뮬레이션 트랙을 따라 에이전트의 1인칭 시점으로 훈련 진행 상황을 모니터링할 수 있습니다. 또한 에피소드당 보상, 손실 함수 값, 정책 엔트로피 같은 지표도 표시할 수 있습니다. 훈련 진행에 따른 CPU 또는 메모리 사용량도 표시됩니다. 그 밖에도 로그가 분석 및 디버깅을 목적으로 자세하게 기록됩니다.

  5. AWS DeepRacer 서비스는 신경망 모델을 영구 스토리지에 주기적으로 저장합니다.

  6. 훈련은 시간 제한을 기준으로 중지됩니다.

  7. 시뮬레이터에서 훈련된 모델을 평가할 수 있습니다. 평가를 원한다면 선택한 트랙에서 선택한 주행 횟수만큼 타임 트라이얼(time trial: 일정한 거리를 개별적으로 주행해 걸린 시간으로 승부를 겨루는 방식)을 할 수 있도록 훈련된 모델을 제출하십시오.

모델 훈련과 평가를 성공적으로 마쳤으면 이제 물리적 에이전트(AWS DeepRacer 차량)에 업로드할 수 있습니다. 업로드 프로세스는 다음과 같은 단계로 구성됩니다.

  1. 훈련된 모델을 영구 스토리지(Amazon S3 버킷)에서 다운로드합니다.

  2. 차량의 디바이스 제어 콘솔을 사용해 훈련된 모델을 디바이스에 업로드합니다. 콘솔에서 시뮬레이션 행동 공간을 물리적 행동 공간에 매핑할 수 있도록 차량을 보정합니다. 그 밖에 콘솔에서 조절 패리티를 확인하거나, 전방 카메라 피드를 확인하거나, 모델을 추론 엔진에 탑재하거나, 실제 트랙에서 주행하는 차량을 지켜볼 수 있습니다.

    차량의 디바이스 제어 콘솔은 차량의 컴퓨팅 모듈에 호스팅되는 웹 서버입니다. 따라서 Wi-Fi 네트워크가 연결되어 있으면 컴퓨터나 모바일 디바이스의 웹 브라우저를 사용해 차량 IP 주소에서 콘솔에 액세스할 수 있습니다.

  3. 다양한 조명과 배터리 레벨, 그리고 표면 질감 및 색상에서 차량을 주행하면서 실험합니다.

    물리적 환경의 디바이스 성능은 모델 제약 또는 부족한 훈련으로 인해 시뮬레이션 환경의 성능과 다를 수 있습니다. 이러한 현상을 sim2real 성능 차이라고 합니다. 성능 차이를 줄이려면 시뮬레이션 환경과 실제 환경의 성능 차이 단원을 참조하십시오.