AWS DeepRacer 概念和術語 - AWS DeepRacer

AWS DeepRacer 概念和術語

AWS DeepRacer 以下列概念為基礎並使用下列術語。

AWS DeepRacer 服務

AWS DeepRacer 是一種 AWS Machine Learning 服務,適用於探索專注於自動駕駛賽車的增援學習。AWS DeepRacer 服務支援以下功能:

  1. 在雲端訓練強化學習模型。

  2. 在 AWS DeepRacer 主控台中評估經過訓練的模型。

  3. 如果合格,則向虛擬賽車提交經過訓練的模型,並將其效能發佈到事件排行榜。

  4. 複製訓練模型以繼續訓練,以提升效能。

  5. 下載經過訓練的模型成品以供上傳到 AWS DeepRacer 車輛。

  6. 將車輛放在供自動駕駛的實體賽道上,評估模型在真實世界的效能。

  7. 刪除您不需要的模型,以移除不必要的費用。

AWS DeepRacer

「AWS DeepRacer可指三輛不同的車輛:

  • Virtual Race Car 可以 的形式呈現原始AWS DeepRacer裝置、Evo 裝置,或是參加AWS DeepRacer聯盟 Virtual Circuit 賽車可獲得的各種數位回饋。您也可以變更 Virtual Car 的色彩來自訂它。

  • 原始AWS DeepRacer裝置是實體 18th 比例的模型車。其掛載相機並內建運算模組。運算模組會執行推論,以在軌道上駕駛自身。運算模組和車輛底盤由專用電池供電,分別稱為運算電池和駕駛電池。

  • AWS DeepRacer Evo 裝置是具有選用感應器套件的原始裝置。此套件包含額外的攝影機和 LIDAR (光偵測和範圍),可讓車輛偵測後方和側面的物件。此套件也包含新的 shell。

強化學習

增援學習是一種機器學習方法,其重點在於客服人員的自主判斷,以便透過與環境的互動來達成指定目標。在強化學習中,學習是透過反覆嘗試進行且訓練不需要標記輸入。培訓仰賴於回報假設,也就是藉由在行動順序後最大化未來回報,即可達成所有目標的條件。在強化學習中,設計獎勵函數非常重要。更妥善地打造回報功能,讓代理程式更能判斷要執行何種動作才能達成目標。

對於自動駕駛賽車而言,代理程式就是車輛。該環境包含行駛路線和路況條件。目標是讓車輛在不發生車禍的情況下快速抵達目的地。獎勵是分數,用於鼓勵前往目的地的安全和迅速行駛。危險和沒有效率的駕駛行為會遭到扣分。

若要在訓練過程中鼓勵學習,必須允許學習代理程式偶爾追求不會產生獎勵的動作。這稱為探勘和開發折衷方案。這有助於降低或移除代理程式可能會受到誤導而前往虛假目的地的可能性。

如需更多正式定義,請參閱 Wikipedia 上的 reinforcement learning

強化學習模型

「增援學習模型」是代理程式行為建立三件事的環境:代理程式擁有的狀態、代理程式可以執行的動作,以及執行動作所收到的回報。代理確定其動作的策略稱為政策。政策會將環境狀態當成要採取動作的輸入和輸出。在增援學習中,政策通常以深度神經網路表示。我們將此稱為增援學習模型。每個訓練任務都會產生一個模型。即使訓練任務提早停止,系統仍可以產生模型。模型為不可變,也就是一旦建立就無法再修改和覆寫。

AWS DeepRacer 模擬器

AWS DeepRacer 模擬器是建置在 的 Virtual 環境AWS RoboMaker,用於視覺化訓練和評估AWS DeepRacer模型。

AWS DeepRacer 車輛

請參閱「AWS DeepRacer」。

AWS DeepRacer 汽車

這種類型的AWS DeepRacer車輛是 18th 比例的模型車。

排行榜

排行榜是 AWS DeepRacer 賽車事件中的 AWS DeepRacer 聯盟 車輛效能排行清單。賽車可以是在模擬環境中實現的虛擬事件,或在真實世界環境中實現的實體事件。效能指標視競賽類型而定。其可能是在與指定之賽車賽道一模一樣或類似的賽道上,評估已訓練模型AWS DeepRacer的使用者所提交的圈時間、總時間或平均一圈時間之中速度最快的。

如果車輛連續完成三圈,便有資格在排行榜上排名。前三圈的平均一圈時間會提交至排行榜。

機器學習架構

機器學習架構是用來建置機器學習演算法的軟體程式庫。支援適用於 AWS DeepRacer 的架構,包含 Tensorflow。

政策網路

政策網路是已訓練的神經網路。此政策網路會將影片影像做為輸入,並預測代理程式的下一個動作。根據演算法而定,可能也會評估代理程式的目前狀態值。

最佳化演算法

最佳化演算法是用於訓練模型的演算法。對於受監督的訓練,其會透過將特定策略的損失函數降至最低來更新權重,來最佳化演算法。對於強化學習而言,其會透過將特定獎勵函數的預期未來獎勵最大化,來最佳化演算法。

類神經網路

神經網路 (也稱為人工神經網路) 是一組連接的單位或節點,用於根據生物系統建置資訊模型。每個節點稱為人工神經元並模擬生物神經元,因為其接收輸入 (微積分),如果輸入訊號穩定 (活動) 並製造出依輸入和發射述詞的輸出,則會變成作用中。廣泛用於機器學習,因為人工類神經網路可以提供近似於任何函數的一般用途。教導機器學習會成為尋找指定輸入和輸出的最佳函數近似值。在深度強化學習中,類神經網路代表政策,且通常稱為政策網路。訓練政策網路數量可反覆執行涉及以目前政策為基礎而衍生體驗的步驟,接著再根據新建立的體驗將政策網路最佳化。此程序一直持續,直到某些效能指標滿足必要的條件。

超參數

超參數是演算法相依變數,可控制神經網路訓練的效能。超參數範例是控制每個步驟有多少新體驗計入學習的學習率。學習率愈大,訓練速度愈快,但可能會使訓練模型品質愈低。超參數來自經驗,每個訓練都需要系統化調校。

AWS DeepRacer 賽道

軌道是 AWS DeepRacer 車輛駕駛的路徑或賽道。賽道可以存在於模擬環境或真實世界的實體環境中。您可將模擬環境用於在虛擬賽道上訓練 AWS DeepRacer 模型。AWS DeepRacer 主控台可提供虛擬賽道。您可以使用真實世界環境來在實體賽道上執行 AWS DeepRacer 車輛。AWS DeepRacer 聯盟 提供讓活動參與者參加競賽的實體賽道。若希望能在任何其他情況下駕駛您的 AWS DeepRacer 車輛,您必須建立自己的實體賽道。若要進一步了解如何建立自己的賽道,請查看 Build Your Physical Track (建立實體賽道)。

獎勵函數

回報函數是學習模型中的演算法,可告知代理程式執行的動作是否導致:

  • 應該予以強化的良好結果。

  • 中性結果。

  • 不應該鼓勵的不良結果。

獎勵函數是強化學習的重要元件。其可透過給予特定動作優於其他動作的獎勵,以決定代理程式會學習的行為。使用者使用 Python 來提供獎勵函數。這個獎勵函數由最佳化演算法用來訓練強化學習模型。

體驗回合

體驗回合是 期間,代理程式會從指定的起點執行 ,直到完成賽道或出軌,從環境中收集體驗做為訓練資料。不同的回合可以有不同的長度。這也稱為「集」或「體驗生成」集

重複體驗

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

重複政策

重複政策 (也稱為重複政策更新) 是任意數量的隨機取樣訓練資料傳遞,在梯度上升期間更新政策神經網路權數。更新權數的單一訓練資料傳遞,也稱為 epoch。

訓練工作

訓練任務是一種工作負載,可訓練增援學習模型並建立訓練模型成品來執行推論。每個訓練工作都有兩個子程序:

  1. 啟動代理程式以遵循目前的政策。代理程式在多種回合下探索環境,並建立訓練資料。產生資料本身就是一個重複的過程。

  2. 套用新的訓練資料來計算新的政策梯度。更新網路權重並繼續訓練。重複步驟 1,直到符合停止條件。

每項訓練任務都會產生經過訓練的模型,並將模型成品輸出到指定的資料存放區。

評估工作

評估任務是測試模型效能的工作負載。效能會在訓練工作完成後,透過指定指標進行測量。標準的 AWS DeepRacer 效能指標是代理程式跑完一圈賽道的駕駛時間。另一個指標則是完成圈數的百分比。

賽事術語

AWS DeepRacer 競賽事件使用下列概念和術語。

聯盟/競賽

在AWS DeepRacer聯盟事件的環境中,聯盟競爭術語與競爭結構有關。AWS 贊助 AWS DeepRacer 聯盟,也就是說我們擁有、設計和執行該聯盟。競賽有開始和結束日期。

賽季

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

Virtual Circuit

Virtual Circuit 是指在 AWS DeepRacer 主控台中發生的網路賽車。

事件

如 規則所定義,賽事是一個AWS DeepRacer聯盟賽事,您可以參加賽車。 賽事有開始和結束日期。Virtual Circuit 事件通常持續一個月。一個賽季可以有許多賽事,而一些規則 —(例如我們如何為參加賽事的人排名、選擇誰獲勝,以及之後—發生的事情) 可能會改變。

賽車類型

在 Virtual Circuit 中,Open Division 賽車手可以在計時賽 (TT) 賽車,而 Pro Division 賽車手可以在 物件迴避 (OA) 或正面交鋒 (H2H) 賽車中賽車。 每種賽車類型也可以指定圈數、車手的排名方式等。

聯盟部門

AWS DeepRacer 聯盟的 Virtual Circuit 每月排行榜會分割為兩個以技能為基礎的部門:Pro 和 Open。每個部門都提供自己的賽車形式和機會,以維持高度的整體競爭。

開放分區

所有賽車手都在 Open Division 開始其機器學習旅程。Open Division 賽車手以限時競賽形式參加競賽,並收到每月參與數位回饋。

Pro 除法

Pro Division 適用於獲得上個月前 10% 限時競賽結果的參賽者。Pro Division 的賽車手可獲得更高的回報,可在每月的 complete 中,獲得 AWS re: Invent Collage Cup 的合格座位。Pro Division 賽車手以複雜的競賽格式參加競賽,例如正面交鋒或物件消失競賽,這類競賽需要立體攝影機或 LiDAR 感應器組態。