

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 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 （光源偵測和範圍），可讓車輛偵測自身後方和側面的物件。套件也包含新的 shell。

**強化學習**  <a name="term-rl"></a>
強化學習是一種機器學習方法，專注於代理程式的自動決策，以便透過與 環境的互動來實現指定的目標。在強化學習中，學習是透過反覆嘗試進行且訓練不需要標記輸入。訓練依賴於*獎勵假設*，該假設透過最大化動作序列之後的未來獎勵來實現所有目標。在強化學習中，設計獎勵函數非常重要。更精準的獎勵函數可讓代理程式做出更好的決策。  
對於自動駕駛賽車而言，代理程式就是車輛。該環境包含行駛路線和路況條件。目標是讓車輛在不發生車禍的情況下快速抵達目的地。獎勵是分數，用於鼓勵前往目的地的安全和迅速行駛。危險和沒有效率的駕駛行為會遭到扣分。  
若要在訓練過程中鼓勵學習，必須允許學習代理程式偶爾追求不會產生獎勵的動作。這稱為探勘和開發折衷方案。這有助於降低或移除代理程式可能會受到誤導而前往虛假目的地的可能性。  
如需更多正式定義，請參閱 Wikipedia 上的 [reinforcement learning](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 DeepRacer 聯盟提供實體軌跡，讓活動參與者競爭。如果您想要在任何其他情況下執行 AWS DeepRacer 車輛，則必須建立自己的實體軌道。若要進一步了解如何建置自己的賽道，請參閱[建置您的實體賽道](deepracer-build-your-track.md)。

** 獎勵函數**  <a name="term-reward-function"></a>
獎勵函數是學習模型中的演算法，可告知代理程式所執行的動作是否會導致：  
+ 應該予以強化的良好結果。
+ 中性結果。
+ 不應該鼓勵的不良結果。
獎勵函數是強化學習的重要元件。其可透過給予特定動作優於其他動作的獎勵，以決定代理程式會學習的行為。使用者使用 Python 來提供獎勵函數。這個獎勵函數由最佳化演算法用來訓練強化學習模型。

**體驗回合**  <a name="term-episode"></a>
體驗集是代理程式從指定的起點執行到完成賽道或離開賽道，以從環境收集訓練資料的期間。不同的回合可以有不同的長度。這也稱為*片段*或*產生經驗的片段*。

**重複體驗**  
體驗反覆運算 （也稱為*產生經驗反覆運算*) 是執行政策網路權重更新的每個政策反覆運算之間的一組連續體驗。在每次體驗重複結束時，收集到的回合會新增到體驗重新執行或緩衝。您可以在其中一個超參數中設定大小以進行訓練。並使用體驗的隨機樣本來更新類神經網路。

**重複政策**  
政策反覆運算 （也稱為*政策更新反覆運算*) 是任意數量的傳遞，透過隨機抽樣的訓練資料，在梯度上升期間更新政策神經網路權重。單一傳遞訓練資料以更新權重也稱為 *epoch*。

**訓練工作**  <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 DeepRacer 聯盟事件中，*聯盟*和*競爭*一詞與競爭結構相關。 AWS 贊助 AWS DeepRacer 聯盟，這表示我們擁有它、設計它並執行它。競賽有開始和結束日期。

**賽季**  
競賽可以在後續幾年重複。我們稱這些不同的賽季 (例如 2019 年或 2020 年賽季)。規則可能會隨賽季變化，但通常在賽季內保持一致。AWS DeepRacer 聯盟的條款和條件可能隨季節而異。

**虛擬電路**  
虛擬賽道是指在 AWS DeepRacer 聯盟賽季期間，由 AWS DeepRacer 主控台 AWS 贊助的競賽。

**事件**  
如規則所定義，事件是您可以參加競賽的 AWS DeepRacer 聯盟。賽事有開始和結束日期。虛擬電路事件通常持續一個月。一個季節中可能有許多事件，而且有些規則 - 例如，我們如何對參與事件的人員進行排名、選擇誰獲勝，以及之後發生什麼情況 - 可能會變更。

**賽車類型**  
 所有競賽者都可以在時間試驗 (TT)、物件迴避 (OA) 或head-to-bot(H2B) 競賽中競賽。每個競賽類型都會指定圈數，以及競賽者的排名方式。

**國家賽季站姿**  
國家賽季排名是指競賽者在其國家中其他競賽者的排行榜排名。所有競賽者都可以在每月虛擬競賽中與國家的其他競賽者競爭。

**區域季節站立**  
區域賽季排名是指競賽者在其區域中其他競賽者的排行榜排名。

**世界冠軍**  
AWS DeepRacer 聯盟的虛擬賽道每月排行榜會除以國家和區域。每個區域的最佳競賽者將有機會參加 AWS re：Invent 世界冠軍賽。如需詳細資訊，請參閱 [條款與條件](https://aws.amazon.com/deepracer/league/)。