AWS DeepRacer 개념 및 용어 - AWS DeepRacer

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

AWS DeepRacer 개념 및 용어

AWS 다음 개념을 DeepRacer 기반으로 하며 다음과 같은 용어를 사용합니다.

AWS DeepRacer 서비스

DeepRacer AWS는 자율 경주에 중점을 둔 강화 학습을 탐색하기 위한 AWS 기계 학습 서비스입니다. AWS DeepRacer 서비스는 다음 기능을 지원합니다.

  1. 클라우드에서 강화 학습 모델을 훈련합니다.

  2. AWS DeepRacer 콘솔에서 학습된 모델을 평가하십시오.

  3. 훈련된 모델을 가상 레이스에 제출하고, 적합한 경우 성능을 이벤트의 리더보드에 게시합니다.

  4. 트레이닝된 모델을 복제하여 트레이닝을 계속하여 성능을 개선하세요.

  5. 학습된 모델 아티팩트를 다운로드하여 AWS DeepRacer 차량에 업로드하십시오.

  6. 차량을 자율 주행을 위한 물리적 트랙에 배치하고 모델의 실제 성능을 평가합니다.

  7. 필요하지 않은 모델을 삭제하여 불필요한 요금이 부과되지 않도록 합니다.

AWS DeepRacer

“AWS DeepRacer “는 세 가지 다른 차량을 가리킬 수 있습니다.

  • 가상 경주용 자동차는 오리지널 AWS DeepRacer 디바이스, Evo 디바이스 또는 AWS DeepRacer League 가상 서킷 레이스에 참가하여 획득할 수 있는 다양한 디지털 보상의 형태를 취할 수 있습니다. 색상을 변경하여 가상 자동차를 사용자 정의할 수도 있습니다.

  • 원래 AWS DeepRacer 디바이스는 실제 1/18 스케일 모델 차량입니다. 이 차량에는 카메라와 온보드 컴퓨팅 모듈이 장착되어 있습니다. 컴퓨팅 모듈은 트랙을 따라 스스로 주행하기 위해 추론을 실행합니다. 컴퓨팅 모듈과 차량 섀시는 각각 컴퓨팅 배터리와 드라이브 배터리라고 하는 전용 배터리로 구동됩니다.

  • AWS DeepRacer Evo 디바이스는 옵션 센서 키트가 포함된 오리지널 디바이스입니다. 이 키트에는 추가 카메라와 LIDAR (빛 감지 및 거리 측정) 가 포함되어 있어 차량이 후방 및 측면에 있는 물체를 감지할 수 있습니다. 키트에는 새 셸도 포함되어 있습니다.

강화 학습

강화 학습은 환경과의 상호 작용을 통해 지정된 목표를 달성하기 위해 에이전트의 자율적 의사 결정에 초점을 맞추는 기계 학습 방법입니다. 강화 학습에서는 시행착오를 통해 학습합니다. 훈련에는 레이블이 지정된 입력이 필요하지 않지만, 훈련은 보상 가설에 의존합니다. 보상 가설은 행동 순서 이후 future 보상을 최대화함으로써 모든 목표를 달성할 수 있다고 가정합니다. 강화 학습에서는 보상 함수 설계가 중요합니다. 보상 함수를 더 잘 만들면 에이전트가 더 나은 결정을 내릴 수 있습니다.

자율 레이싱의 경우 에이전트는 차량입니다. 환경에는 이동 경로와 교통 조건이 포함됩니다. 목표는 차량이 사고 없이 신속하게 목표 지점에 도착하는 것입니다. 보상은 목표 지점까지 안전하고 빠른 주행을 촉진하기 위해 사용되는 점수입니다. 위험하거나 비생산적인 주행에는 벌점이 부과됩니다.

훈련 중 학습을 장려하기 위해 학습 중인 에이전트는 경우에 따라 보상이 제공되지 않을 수도 있는 작업을 추구하도록 허용해야 합니다. 이를 탐색과 활용의 상충 관계라고 합니다. 이는 에이전트가 잘못된 목표 지점으로 잘못 안내될 가능성을 줄이거나 없애줍니다.

보다 자세한 공식적인 정의는 Wikipedia에서 강화 학습을 참조하십시오.

강화 학습 모델

강화 학습 모델은 에이전트가 행동하는 환경으로, 에이전트의 상태, 에이전트가 취할 수 있는 조치, 조치를 취함으로써 받는 보상이라는 세 가지를 설정합니다. 에이전트가 조치를 결정하는 전략을 정책이라고 합니다. 정책은 환경 상태를 입력으로 사용하여 수행할 작업을 출력합니다. 강화 학습에서는 정책이 심층 신경망으로 표현되는 경우가 많습니다. 이를 강화 학습 모델이라고 합니다. 훈련 작업마다 모델이 하나씩 생성됩니다. 훈련 작업이 조기에 중지되는 경우에도 모델을 생성할 수 있습니다. 모델은 변경이 불가능합니다. 즉, 생성한 뒤에는 수정 및 덮어 쓸 수 없습니다.

AWS DeepRacer 시뮬레이터

AWS DeepRacer 시뮬레이터는 AWS DeepRacer 모델 교육 및 평가를 시각화하기 RoboMaker 위해 AWS에 구축된 가상 환경입니다.

AWS DeepRacer 차량

AWS 참조하십시오 DeepRacer.

AWS DeepRacer 자동차

이 유형의 AWS DeepRacer 차량은 1/18 스케일 모델 차량입니다.

리더보드

순위표는 AWS DeepRacer 리그 레이싱 이벤트의 AWS DeepRacer 차량 성능 순위 목록입니다. 여기에서 레이싱이란 시뮬레이션 환경에서 실행하는 가상 이벤트이거나 실제 환경에서 실행하는 물리적 이벤트일 수 있습니다. 퍼포먼스 메트릭은 레이스 유형에 따라 다릅니다. 주어진 레이스 트랙과 동일하거나 유사한 트랙에서 훈련된 모델을 평가한 AWS DeepRacer 사용자가 제출한 가장 빠른 랩 타임, 총 시간 또는 평균 랩 타임일 수 있습니다.

차량이 연속해서 3바퀴를 완주하면 리더보드에 순위가 매겨집니다. 첫 연속 3바퀴의 평균 랩 타임이 리더보드에 제출됩니다.

기계 학습 프레임워크

기계 학습 프레임워크는 기계 학습 알고리즘을 구축하는 데 사용되는 소프트웨어 라이브러리입니다. AWS에서 지원되는 DeepRacer 프레임워크에는 텐서플로우가 포함됩니다.

정책 네트워크

정책 네트워크는 훈련된 신경망으로, 비디오 이미지를 입력으로 사용하여 에이전트의 다음 작업을 예측합니다. 알고리즘에 따라 에이전트의 현재 상태 값을 평가할 수도 있습니다.

최적화 알고리즘

최적화 알고리즘은 모델을 훈련시키는 데 사용되는 알고리즘입니다. 지도식 훈련의 경우 이 알고리즘은 가중치 업데이트를 위한 특정 전략을 사용하여 손실 함수를 최소화함으로써 최적화됩니다. 강화 학습의 경우에는 특정 보상 함수를 사용하여 미래의 보상 기대치를 극대화함으로써 최적화됩니다.

신경망

신경망 (인공 신경망이라고도 함) 은 생물학적 시스템을 기반으로 정보 모델을 구축하는 데 사용되는 연결된 장치 또는 노드의 모음입니다. 각 노드를 인공 뉴런이라고 하며 입력 (자극) 을 받고 입력 신호가 충분히 강하면 활성화되고 (활성화) 입력과 활성화에 기반한 출력을 생성한다는 점에서 생물학적 뉴런을 모방합니다. 신경망은 기계 학습에서 널리 사용됩니다. 인공 신경망은 어떤 함수든지 범용 근사의 역할을 할 수 있기 때문입니다. 기계가 학습하도록 가르치는 것은 주어진 입력과 출력에 대한 최적의 함수 근사값을 찾는 일이 됩니다. 심층 강화 학습에서는 신경망이 정책을 의미하여 종종 정책망이라고도 불립니다. 정책 네트워크를 훈련시키는 것은 현재 정책을 기반으로 경험을 생성한 다음 새로 생성된 경험으로 정책 네트워크를 최적화하는 단계를 반복하는 것과 같습니다. 이러한 프로세스는 일정한 성능 지표가 필요한 기준으로 충족할 때까지 계속 됩니다.

하이퍼파라미터

하이퍼파라미터는 신경망 훈련의 성능을 제어하는 알고리즘 종속 변수입니다. 하이퍼파라미터의 예로는 각 단계에서 학습에 포함되는 새로운 경험의 수를 제어하는 학습률이 있습니다. 학습률이 높을수록 훈련 속도는 빨라지지만 학습된 모델의 품질은 낮아질 수 있습니다. 하이퍼파라미터는 실증적이지만 각 훈련마다 체계적인 튜닝이 필요합니다.

AWS DeepRacer 트랙

트랙은 AWS DeepRacer 차량이 주행하는 경로 또는 코스입니다. 트랙은 시뮬레이션된 환경이나 실제 물리적 환경에 존재할 수 있습니다. 가상 트랙에서 AWS DeepRacer 모델을 교육하기 위해 시뮬레이션된 환경을 사용합니다. AWS DeepRacer 콘솔에서는 가상 트랙을 사용할 수 있습니다. 실제 트랙에서 AWS DeepRacer 차량을 운행하려면 실제 환경을 사용합니다. AWS DeepRacer League는 이벤트 참가자가 경쟁할 수 있는 물리적 트랙을 제공합니다. 다른 상황에서 AWS DeepRacer 차량을 운행하려면 직접 물리적 트랙을 만들어야 합니다. 자신만의 트랙을 만드는 방법에 대해 자세히 알아보려면 피지컬 트랙 만들기를 참조하십시오.

보상 함수

보상 함수는 수행된 작업이 다음과 같은 결과를 초래했는지 여부를 에이전트에게 알려주는 학습 모델 내의 알고리즘입니다.

  • 강화해야 하는 좋은 결과

  • 보통 결과

  • 권장되지 않는 안 좋은 결과

보상 함수는 강화 학습의 핵심 부분으로, 다른 작업보다 특정 작업에 대해 인센티브를 제공해 에이전트가 학습할 동작을 결정합니다. 사용자는 Python을 사용하여 보상 함수를 제공합니다. 최적화 알고리즘에서는 이 보상 함수를 사용하여 강화 학습 모델을 훈련합니다.

경험 에피소드

경험 에피소드는 에이전트가 주어진 출발점부터 트랙을 완료하거나 트랙을 벗어나는 방향으로 달리면서 환경에서 훈련 데이터로 경험을 수집하는 기간입니다. 에피소드에 따라 길이가 달라질 수 있습니다. 이를 에피소드 또는 경험을 창출하는 에피소드라고도 합니다.

경험 반복

경험 반복 (경험 생성 반복이라고도 함) 은 정책 네트워크 가중치 업데이트를 수행하는 각 정책 반복 간의 연속적인 경험 집합입니다. 각 경험 반복의 마지막에서 수집된 에피소드가 경험 다시 재생 또는 버퍼에 추가됩니다. 크기는 훈련을 위한 하이퍼파라미터 중 하나에서 설정할 수 있습니다. 신경망은 임의의 경험 샘플을 사용하여 업데이트됩니다.

정책 반복

정책 반복 (정책 업데이트 반복이라고도 함) 은 그래디언트 상승 중에 정책 신경망 가중치를 업데이트하기 위해 무작위로 샘플링된 훈련 데이터를 여러 번 통과하는 것입니다. 훈련 데이터를 한 번 통과하여 가중치를 업데이트하는 것을 에포크 (epoch) 라고도 합니다.

훈련 작업

훈련 작업은 강화 학습 모델을 훈련시키고 추론을 실행할 학습된 모델 아티팩트를 생성하는 워크로드입니다. 각 훈련 작업에는 두 개의 하위 프로세스가 있습니다.

  1. 에이전트를 시작하고 현재 정책을 따릅니다. 에이전트가 다양한 에피소드에서 환경을 탐색하고 훈련 데이터를 생성합니다. 이러한 데이터 생성이 반복 프로세스입니다.

  2. 새로운 훈련 데이터를 적용하여 새 정책 경사를 컴퓨팅합니다. 네트워크 가중치를 업데이트하고 계속 훈련합니다. 중지 조건이 충족될 때까지 1단계를 반복합니다.

각 훈련 작업마다 훈련된 모델을 생성하여 모델 아티팩트를 지정된 데이터 스토어로 출력합니다.

평가 작업

평가 작업은 모델의 성능을 테스트하는 워크로드입니다. 훈련 작업이 완료되면 지정된 지표에 따라 성능이 측정됩니다. 표준 AWS DeepRacer 성능 지표는 에이전트가 트랙에서 한 랩을 완주하는 데 걸리는 운전 시간입니다. 다른 지표는 완주한 랩의 비율입니다.

레이싱 이벤트 용어

AWS DeepRacer 레이싱 이벤트는 다음과 같은 개념과 용어를 사용합니다.

리그/대회

AWS DeepRacer League 이벤트에서 리그대회라는 용어는 경쟁 구조와 관련이 있습니다. AWS는 AWS DeepRacer League를 후원합니다. 즉, AWS League를 소유하고 설계하고 실행합니다. 대회에는 시작 날짜와 종료 날짜가 있습니다.

시즌

대회는 몇 년간 반복해서 열릴 수 있습니다. 이를 시즌(예: 2019 시즌 또는 2020 시즌)이라고 부릅니다. 규칙은 시즌에 따라 변경될 수 있지만 일반적으로 한 시즌 동안은 일관되게 유지됩니다. AWS DeepRacer League의 이용 약관은 시즌마다 다를 수 있습니다.

버추얼 서킷

가상 서킷은 AWS DeepRacer 콘솔에서 열리는 온라인 레이스를 말합니다.

이벤트

규칙에 정의된 대로 이벤트는 레이스에 참가할 수 있는 AWS DeepRacer League 이벤트입니다. 이벤트에는 시작 날짜와 종료 날짜가 있습니다. 가상 서킷 이벤트는 일반적으로 한 달 동안 진행됩니다. 한 시즌에는 많은 이벤트가 있을 수 있으며, 이벤트에 참가하는 사람들의 순위를 매기는 방법, 우승자 선택, 이후 진행 상황 등 일부 규칙은 변경될 수 있습니다.

레이스 유형

버추얼 서킷에서 오픈 디비전 레이서는 타임 트라이얼 (TT) 레이스에 참가할 수 있고 프로 디비전 레이서는 OA (객체 회피) 또는 head-to-bot (H2B) 레이스에서 레이스를 할 수 있습니다. 각 레이스 유형에는 랩 수, 레이서 랭킹 방법 등도 지정할 수 있습니다.

리그 디비전

AWS DeepRacer League의 가상 서킷 월간 순위표는 두 개의 기술 기반 디비전인 프로와 오픈으로 구분됩니다. 각 디비전은 자체 레이싱 형식과 상품 기회를 제공하여 전반적인 경쟁력을 높은 수준으로 유지합니다.

Open Division

모든 레이서들은 오픈 디비전에서 머신 러닝 여정을 시작합니다. 오픈 디비전 레이서들은 타임 트라이얼 형식으로 경쟁하며 참가에 대한 월간 디지털 보상을 받습니다.

프로 디비전

프로 디비전은 전월 타임 트라이얼 상위 10% 의 성적을 거둔 레이서를 대상으로 합니다. 프로 디비전의 레이서들은 더 큰 보상을 받고 매년 열리는 AWS re:Invent 챔피언십 컵의 출전권을 놓고 월간 피날레에서 경쟁할 수 있습니다. 프로 디비전 레이서는 스테레오 카메라 head-to-bot 또는 LiDAR 센서 구성이 필요한 물체 회피 레이스와 같은 복잡한 레이싱 형식에서 경쟁합니다.