

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 什么是 AWS DeepRacer？
<a name="what-is-deepracer"></a>

AWS DeepRacer 是一款完全自主的 1/18 比例赛车，由[强化学习](deepracer-basic-concept.md#term-rl)驱动。它包括以下组件：
+ AWS DeepRacer 控制台：一项 [AWS Mac](https://aws.amazon.com/machine-learning/) hine Learning 服务，用于在三维模拟自动驾驶环境中[训练和评估强化学习模型](create-deepracer-project.md)。
+ AWS DeepRacer 车辆：一辆 1/18 比例的遥控车，能够在[经过训练的 AWS 自动驾驶 DeepRacer 模型上进行推理](operate-deepracer-vehicle.md)。
+ AWS Le DeepRacer ague：世界上第一个全球性自动驾驶赛车联赛。争夺奖品、荣耀和晋级冠军杯机会的赛事。有关更多信息，请参阅[条款和条件](https://aws.amazon.com/deepracer/league/)。

 

**Topics**
+ [AWS DeepRacer 控制台](#what-is-deepracer-service-console)
+ [AWS DeepRacer 车辆](#what-is-deepracer-model-vehicle)
+ [AWS DeepRacer 联赛](#what-is-deepracer-racing-series)
+ [使用 AW DeepRacer S 探索强化学习](deepracer-is-a-learning-environment-for-reinforcement-learning.md)
+ [AWS 的 DeepRacer 概念和术语](deepracer-basic-concept.md)

## AWS DeepRacer 控制台
<a name="what-is-deepracer-service-console"></a>

AWS DeepRacer 控制台是一个用于与 AWS DeepRacer 服务进行交互的图形用户界面。您可以使用控制台在 AWS DeepRacer 模拟器中训练强化学习模型和评估模型性能。在控制台中，您还可以下载经过训练的模型，将其部署到您的 AWS DeepRacer 车辆上，以便在物理环境中实现自动驾驶。

总而言之，AWS DeepRacer 控制台支持以下功能：
+ 创建训练作业以通过指定的奖励函数、优化算法、环境和超参数来训练强化学习模型。
+ 选择模拟轨道进行训练，并使用 SageMaker AI 评估模型。
+ 克隆训练后的模型，以通过优化超参数来改进训练，从而优化车辆性能。
+ 下载经过训练的模型以部署到您的 AWS DeepRacer 车辆上，这样它就可以在物理环境中行驶。
+ 将您的模型提交到虚拟竞赛，并将其性能与虚拟排行榜中的其他模型进行比较并获得排名。



当您使用 AWS DeepRacer 服务控制台时，您需要根据训练或评估和存储模型的使用量付费。

为了帮助您入门，AWS DeepRacer 为首次使用 AWS 的 DeepRacer 用户提供了[免费套餐](https://aws.amazon.com/free/)。这段时间足以训练和调整您的第一个模型并进入 AWS 联 DeepRacer 赛。提交模型参加任何 AWS League 虚拟 DeepRacer 赛事均不收取任何费用。

有关定价的详细信息，请参阅 [AWS DeepRacer 服务详情页面](https://aws.amazon.com/deepracer/pricing/)。

## AWS DeepRacer 车辆
<a name="what-is-deepracer-model-vehicle"></a>

AWS DeepRacer 车辆是一种支持 Wi-Fi 的实体车辆，可以使用强化学习模型在物理轨道上自行行驶。
+ 您可以手动控制车辆，或部署车辆模型以实现自动驾驶。
+ 自主模式在车辆的计算模块上运行推理。推理使用从安装在前面的摄像机中捕获的图像。
+ 车辆可通过 Wi-Fi 连接下载软件。用户也可以通过该连接使用计算机或移动设备访问设备控制台以操作车辆。

## AWS DeepRacer 联赛
<a name="what-is-deepracer-racing-series"></a>

 AWS DeepRacer 联盟是 AWS 的重要组成部分 DeepRacer。AWS DeepRacer 联盟旨在促进社区和竞争。

通过 AWS Le DeepRacer ague，您可以在实体或虚拟赛车比赛中将自己的机器学习技能与其他 AWS DeepRacer 开发人员进行比较。您不仅有机会获得奖品和成就，还可以衡量您的强化学习模型。您可以与其他参与者竞争，互相学习，互相激励。如果您因在 AWS Le DeepRacer ague 中的表现而赢得成就，则可以在社交媒体上与您的社区分享成就。有关更多信息，请参阅[条款和条件](https://aws.amazon.com/deepracer/league/)。

[参加比赛或学习如何在联赛中训练模型。](https://console.aws.amazon.com/deepracer)

# 使用 AW DeepRacer S 探索强化学习
<a name="deepracer-is-a-learning-environment-for-reinforcement-learning"></a>

强化学习（特别是深度强化学习）已被证明可有效解决一系列自主决策问题。它在金融交易、数据中心冷却、车队物流和自动驾驶赛车等领域都有应用。

强化学习有可能解决现实问题。但是，由于强化学习的技术范围和深度非常广泛，因此，它具有陡峭的学习曲线。在真实试验中，您需要构建一个物理代理（例如，一辆自动驾驶赛车）。它还要求您保护物理环境（例如，赛道或公路）。环境可能是成本高昂的、危险的和耗时的。这些要求不仅仅是理解强化学习。

为了帮助缩短学习曲线，AWS DeepRacer 通过三种方式简化了学习过程：
+ 在训练和评估强化学习模型时提供 step-by-step指导。该指南包括预定义的环境、状态、操作和可自定义的奖励函数。
+ 提供模拟器来模拟虚拟[代理](deepracer-basic-concept.md#term-model-vehicle)和虚拟环境之间的交互。
+ 使用 AWS DeepRacer 车辆作为物理代理。使用车辆在物理环境中评估训练后的模型。这与真实的使用案例非常相似。



如果您是一位经验丰富的机器学习从业者，那么您会发现 AWS DeepRacer 是一个在虚拟和物理环境中为自动驾驶赛车构建强化学习模型的好机会。总而言之，使用 AWS DeepRacer 通过以下步骤为自动驾驶赛车创建强化学习模型：

1. 为自动驾驶比赛训练自定义的强化学习模型。使用与 A SageMaker I 集成的 AWS DeepRacer 控制台执行此操作。

1. 使用 AWS DeepRacer 模拟器评估模型并在虚拟环境中测试自动驾驶赛车。

1. 将经过训练的模型部署到 AWS DeepRacer 模型车辆上，以便在物理环境中测试自动驾驶赛车。



# AWS 的 DeepRacer 概念和术语
<a name="deepracer-basic-concept"></a>

 AWS DeepRacer 建立在以下概念之上，并使用以下术语。

**AWS DeepRacer 服务**  <a name="term-deepracer-service"></a>
AWS DeepRacer 是一项 AWS Machine Learning 服务，用于探索以自动驾驶赛车为重点的强化学习。AWS DeepRacer 服务支持以下功能：  

1. 在云端训练强化学习模型。

1. 在 AWS DeepRacer 控制台中评估经过训练的模型。

1. 提交训练后的模型用于虚拟比赛，并在符合要求时，将成绩发布到相关活动的排行榜。

1. 克隆经过训练的模型以继续训练从而提高性能。

1. 下载经过训练的模型工件以上传到 AWS DeepRacer 车辆。

1. 将车辆放置在物理赛道上进行自动驾驶，并评估模型的真实性能。

1. 移除不需要的模型，减少不必要的费用。

**AWS DeepRacer**  <a name="term-deepracer"></a>
“AWS DeepRacer” 可以指三种不同的车辆：  
+ **虚拟赛车**可以采用原始 AWS DeepRacer 设备、Evo 设备或通过参加 AWS DeepRacer 联赛虚拟巡回赛可获得的各种数字奖励。您还可以通过更改虚拟赛车的颜色对其进行个性化改装。
+ **最初的 AWS DeepRacer 设备**是一辆 1/18 比例的实体模型车。它有一台车载摄像机和一个板载计算模块。计算模块运行推理从而沿着轨道行驶。计算模块和车辆底盘由分别称为计算电池和驱动电池的专用电池供电。
+ **AWS DeepRacer Evo 设备**是带有可选传感器套件的原始设备。该套件含有一个额外的摄像机和 LIDAR（光线探测和测距），让汽车能够探测自身后方和侧面的物体。该套件还包括一个新外壳。

**强化学习**  <a name="term-rl"></a>
强化学习是一种机器学习方法，此方法专注于由代理进行自主决策，以通过与环境的交互实现指定的目标。在强化学习中，学习是通过反复的试验和错误来实现的，训练不需要带标签的输入。训练依赖于*奖励假设*，该假设认定通过最大化操作序列后的未来奖励便可实现所有目标。在强化学习中，设计奖励函数至关重要。精心设计的奖励函数可以让代理做出更好的决策。  
对于自动驾驶赛车，代理是一个车辆。环境包括行驶路线和交通状况。其目标是使车辆快速到达目的地而不发生事故。使用积分来奖励安全快速地行驶至目的地的行为。对于危险和破坏性的驾驶通过扣分进行惩罚。  
要在训练过程中鼓励学习，必须允许学习代理有时执行可能不会产生奖励的操作。这被称为勘探和开发权衡。它有助于减小或消除代理可能误入错误目的地的可能性。  
有关更正式的定义，请参阅 Wikipedia 上的[强化学习](https://en.wikipedia.org/wiki/Reinforcement_learning)。

**强化学习模型**  <a name="term-rl-model"></a>
强化学习模型是一种代理操作环境，它建立三个内容：代理拥有的状态、代理可以采取的操作以及通过采取操作获得的奖励。代理用来确定其操作的战略称为*策略*。策略将环境状态作为输入，并输出要执行的操作。在强化学习中，策略通常由深度神经网络表示。我们将其称为强化学习模型。每个训练作业均会生成一个模型。即使提前停止训练作业，也可以生成模型。模型是不可变的，这意味着它在创建后不能被修改和覆盖。

**AWS DeepRacer 模拟器**  <a name="term-simulator"></a>
AWS DeepRacer 模拟器是一个虚拟环境，用于可视化训练和评估 AWS DeepRacer 模型。

**AWS DeepRacer 车辆**  <a name="term-model-vehicle"></a>
参见 [AWS DeepRacer](#term-deepracer)。

**AWS DeepRacer 汽车**  <a name="term-deepracer-car"></a>
这种类型的 [AWS DeepRacer 车辆](#term-model-vehicle)是 1/18 比例的模型车。

**排行榜**  <a name="term-leaderboard"></a>
*排行榜*是 AWS DeepRacer 联赛赛车赛事中 AWS DeepRacer 车辆表现的排名列表。比赛可以是在模拟环境中举行的虚拟活动，或者是在真实环境中举行的实地活动。性能指标取决于比赛类型。它可以是 AWS DeepRacer 用户提交的最快圈速、总时间或平均单圈时间，这些用户在与比赛给定赛道相同或相似的赛道上评估了训练过的模型。  
如果一辆赛车连续跑完三圈，那么就有资格进入排行榜。最先完成的连续三圈的平均单圈时间将提交到排行榜。

**机器学习框架**  <a name="term-frameworks"></a>
机器学习框架是用于构建机器学习算法的软件库。AWS 支持的框架 DeepRacer 包括 Tensorflow。

**策略网络**  <a name="term-policy-network"></a>
策略网络是指训练后的神经网络。策略网络采用视频图像作为输入并预测代理的下一个操作。根据此算法，它还可以评估代理的当前状态的值。

** 优化算法**  <a name="term-optimization-algorithm"></a>
优化算法是用于训练模型的算法。对于监管训练，该算法使用特殊策略更新权重来最小化损失函数，从而实现优化。对于强化学习，该算法使用特殊奖励函数来最大化预期未来奖励，从而实现优化。

**神经网络**  
神经网络（也称为*人工神经网络*）是连接的单元或节点的集合，用于构建基于生物系统的信息模型。每个节点称为一个*人工神经元*，这是对生物神经元的模仿，因为它接收输入（刺激），如果输入信号足够强（激活）则转为活动状态，并生成根据输入和激活预测的输出。它广泛用于机器学习，因为人工神经网络可以作为任何函数的通用近似值。教机器学习变成了为给定输入和输出找到最佳函数近似值。在深度强化学习中，神经网络代表策略，通常被称为策略网络。训练策略网络等同于迭代步骤，在这些步骤中，根据当前策略生成经验，然后利用新生成的经验优化策略网络。该过程一直持续到某些性能指标满足要求的标准为止。

** 超参数**  <a name="term-hyperparameters"></a>
超参数是控制神经网络训练性能的算法相关变量。超参数的一个示例是学习速率，用于控制在学习的每一部中纳入多少新经验。更高的学习速率产生更快的训练，但是可能会使得训练后的模型质量偏低。超参数是经验性的，需要针对每次训练进行系统化调整。

**AWS DeepRacer 追踪**  <a name="term-track"></a>
赛道是 AWS DeepRacer 车辆行驶的路径或路线。赛道可以存在于模拟环境中，也可以存在于现实世界的物理环境中。您可以使用模拟环境在虚拟赛道上训练 AWS DeepRacer 模型。AWS DeepRacer 控制台提供虚拟轨道。您使用真实环境在物理轨道上运行 AWS DeepRacer 车辆。AWS Le DeepRacer ague 为赛事参与者提供实体赛道。如果您想在任何其他情况下运行 AWS DeepRacer 车辆，则必须创建自己的物理轨道。要详细了解如何修建自己的赛道，请参阅[修建物理赛道](deepracer-build-your-track.md)。

** 奖励函数**  <a name="term-reward-function"></a>
奖励函数是学习模型中的一种算法，告知代理执行的操作是否产生以下结果：  
+ 一个应该得到加强的好结果。
+ 一个中立的结果。
+ 一个应劝阻的糟糕结果。
奖励函数是强化学习的关键部分。它通过激励特定操作而不是其他操作来确定代理学习的行为。用户使用 Python 提供奖励函数。优化算法使用此奖励函数来训练强化学习模型。

**经验情节**  <a name="term-episode"></a>
经验情节是一段时间，代理在这段时间中，通过从指定起点开始行驶完成赛道或者偏离赛道，从环境收集经验作为训练数据。不同的情节可以有不同的长度。这也被称为*情节*或*经验生成情节*。

**经验迭代**  
经验迭代（也称为*经验生成迭代*），是每次策略迭代（（执行对策略网络权重的更新））之间一系列连续的经验。在每次经验迭代结束时，收集的情节将添加到经验回放或缓冲中。其大小可以在训练的超参数之一中设置。使用经验的随机样本更新神经网络。

**策略迭代**  
策略迭代（也称为*策略更新迭代*），是在梯度上升期间任意次遍历随机采样的训练数据，以更新策略神经网络权重。对训练数据的单次遍历以更新权重的过程称为一个*纪元*。

**训练作业**  <a name="term-training-job"></a>
训练作业是一种工作负载，可训练学习强化模型并创建要在其上运行推理的训练后的模型构件。每个训练作业都有两个子流程：  

1. 启动代理以遵循当前策略。代理在多个[*情节*](#term-episode)中探索环境并创建训练数据。此数据生成本身是一个迭代过程。

1. 应用新的训练数据来计算新的策略梯度。更新网络权重并继续训练。重复步骤 1，直至满足预先说明的停止条件。
每个训练作业会生成一个训练模型，并将模型构件输出到指定的数据存储。

**评估作业**  <a name="term-evaluation-job"></a>
评估作业是测试模型性能的工作负载。训练作业完成后，通过给定的指标来衡量性能。AWS 的标准 DeepRacer 性能指标是代理在赛道上完成一圈所需的行驶时间。另一个指标是完成一圈所占的百分比。

## 赛车赛事术语
<a name="racing-event-terminology"></a>

AWS DeepRacer 赛事使用以下概念和术语。

**联赛/比赛**  
在 AWS League DeepRacer 赛事中，“*联赛*” 和 “*竞*赛” 这两个术语与比赛结构有关。 AWS 赞助 AWS Le DeepRacer ague，这意味着我们拥有、设计和运营它。比赛有开始日期和结束日期。

**赛季**  
比赛可以在随后的几年中重复举行。我们称之为不同的赛季（例如，2019 赛季或 2020 赛季）。规则可能因赛季而改变，但通常在一个赛季内保持一致。AWS DeepRacer 联赛的条款和条件可能因赛季而异。

**虚拟巡回赛**  
虚拟巡回赛是指在 AWS DeepRacer 联赛赛季 AWS 期间在 AWS DeepRacer 控制台上举办的赞助比赛。

**事件**  
根据规则的定义，赛事是指您可以参加比赛的 AWS Le DeepRacer ague 赛事。赛事有开始日期和结束日期。虚拟巡回赛通常持续一个月。一个赛季中可能有许多赛事，有些规则（例如我们如何对参赛者进行排名、选择谁获胜以及之后的事项）可能会发生变化。

**比赛类型**  
 所有赛车手都可以参加计时赛（TT）、物体避避（OA）或 head-to-bot（H2B）比赛。每种比赛类型都会规定圈数以及赛车手的排名方式。

**全国赛季排名**  
全国赛季排名是指赛车手在其所在国家与其他赛车手的排行榜排名。所有赛车手都可以在每月的虚拟比赛中与所在国家的其他赛车手竞争。

**地区赛季排名**  
地区赛季排名是指赛车手在其所在地区与其他赛车手的排行榜排名。

**世界锦标赛**  
AWS DeepRacer 联盟的虚拟巡回赛月度排行榜按国家和地区划分。每个地区的顶级赛车手将有机会在 re: Invent 获得参加世界锦标赛的 AWS 资格。有关更多信息，请参阅[条款和条件](https://aws.amazon.com/deepracer/league/)。