Amazon Web Services ブログ

AWS DeepRacer League Virtual Circuit がオープンしました &#8211 – 自分のモデルのトレーニングを今すぐ始めましょう!



AWS DeepRacer は、相当量のオンボードハードウェアおよびソフトウェアを搭載した 1/18 スケールの 4 輪駆動車です。re:Invent 2018 から始めて AWS Global Summit を続けると、DeepRacer を実際に体験することができます。これらのイベントでは、強化学習を使ってモデルをトレーニングしてから、それをトラックの周りで競争させることができます。各サミットで最速のレーサーとそのラップタイムは、リーダーボードに示されます。

新しい DeepRacer League Virtual Circuit
本日、AWS DeepRacer League Virtual Circuit を発売します。強化学習モデルをオンラインで構築、トレーニング、および評価し、素晴らしい賞品を獲得するためにオンラインで競争できます。これらはすべて DeepRacer コンソールから快適に行うことができます。

世界中の有名なレーストラックからインスピレーションを得て、新しいトラックを毎月追加します。そのため自分のモデルを洗練し、スキルセットを広げることができます。毎月リーダーボードのトップレーサーは AWS re:Invent 2019 への費用支払いパッケージを獲得し、ノックアウト方式で行われる DeepRacer リーグに参加して、チャンピオンカップへの出場権を獲得するチャンスがあります!

新しい DeepRacer コンソール
現在 DeepRacer コンソール米国東部 (バージニア北部) リージョンで利用できます。これを使用して、強化学習の実践的な経験を実際に積みながら、DeepRacer モデルを構築およびトレーニングし、仮想サーキットで競争することができます。実践的な DeepRacer のワークショップで使用されている DeepRacer Lab の手順に従って、コンソールを開いて [はじめに] をクリックするところから始めます。

コンソールからモデルトレーニングプロセスの概要の説明があった後、モデルのトレーニングと評価に必要な AWS リソースの作成を求められます。情報を確認して、[リソースの作成] をクリックして先に進みます。

リソースは数分で作成されます (作成している間、強化学習についてもっと学ぶために [RL の学習] をクリックできます)。[モデルの作成] をクリックして先に進みます。

自分のモデルの名前と説明を入力します。

次にトラックを選びます (仮想リーグの期間を通してさらに多くのトラックが現れます)。

自分のモデルのためにアクション空間を定義します。これは自分のモデルが実行できる一連の個別のアクションです。オプションの数を増やす値を選択すると、一般的に自分のモデルの質が向上しますが、トレーニング時間がさらにかかります。

次に、モデルの報酬関数を定義します。この関数は、トレーニングプロセス全体を通して車両の現在の状態を評価し、モデルがどの程度うまく機能しているかを示す報酬値を返します (より高い報酬はより良いパフォーマンスを意味します)。3 つの事前定義済みモデル (報酬関数の例をクリックすると利用できます) の 1 つをそのまま使用することも、カスタマイズすることも、最初から構築することもできます。はじめに、報酬関数サンプルのジグザグの阻止 を使用して、ジグザグの動作にペナルティを課します。

報酬関数は Python 3 で書かれており、車の位置と状態を説明し、トラックに関する情報を提供するパラメータ (track_widthdistance_from_centerall_wheels_on_track 他多数) にアクセスできます。

全体的なトレーニングパフォーマンスに影響を与えるハイパーパラメータのセットも制御します。私はこれらのどれも理解していないので (ここでは正直に言います)、デフォルト設定をすべて受け入れます。

ハイパーパラメータについてさらに学習するには、「ハイパーパラメータを体系的に調整する」をご覧ください。

最後に、自分のトレーニングジョブの期限を指定して、[トレーニングの開始] をクリックします。通常、単純なモデルは 90~120 分で収束しますが、これは最大速度と報酬関数に大きく依存します。

トレーニングジョブが初期化され (これには約 6 分かかります)、コンソールで進行状況を追跡できます。

トレーニングジョブでは AWS RoboMaker を使用しているため、RoboMaker コンソールからも監視できます。たとえば、Gazebo ウィンドウを開いて自分の車を見て、次のようにトレーニングプロセスをリアルタイムで見ることができます。

注意点として、 (Gazebo を直接操作して) トレーニング環境を変更すると、トレーニングの実行に悪影響を及ぼす可能性があります。ほとんどの場合、トレーニングは役に立たなくなります。

トレーニングが進むにつれて、車がトラックにとどまる方法を学習している場合、次のように報酬グラフは右肩上がりになります (Amazon でよくそう言います)。

グラフが平らになったり急に減少してそこに留まっている場合、報酬案数は望ましい動作に報酬を与えていないか、他の設定が邪魔をしています。しかし、忍耐は美徳であり、トップに昇りつめる過程で時折後退することもあるでしょう。トレーニングが完了したら、新しいモデルが完成して保存されるまで少し時間がかかります。次に、モデルをシミュレーションで実行して評価する番です。これを行うには、[評価の開始] をクリックします。

利用可能などのトラックでもモデルを評価できます。1 つのトラックをトレーニング用に使用し、別のトラックを評価用に使用することは、モデルが一般的なもので、1 トラックだけで動作するようにはめ込みすぎていないようにするための良い方法です。けれども、手始めにトレーニングとテストで同じトラックを使用するのは良い方法です。以下、それを行います。楕円形トラックと 3 つのトライアルを選択し、[評価の開始] をクリックします

上記のように、RoboMaker シミュレーターが起動します。評価には 1 時間の費用がかかります。シミュレーションが完了すると、結果 (ラップタイム) が表示されます。

この時点で、自分のモデルを別のトラックで評価し、一度下がってモデルを改良して再度評価するか、または今月の仮想サーキットトラックにモデルを提出して DeepRacer リーグに参加できます。これを行うには、[仮想レースへの提出] をクリックし、レーサー名を入力してモデルを選択し、利用規約に同意して [モデルの提出] をクリックします。

提出した後、モデルはシーズン前のトラックで評価され、ラップタイムを使って仮想サーキットのリーダーボードにランクされます。

理解しておくべきこと
AWS DeepRacer と AWS DeepRacer League について知っておくべきことがいくつかあります。

AWS ResourcesAmazon SageMaker を使用してモデルをトレーニングした後、Amazon Simple Storage Service (S3)に保存します。AWS RoboMaker は、トレーニングと評価に使用される仮想トラック環境を提供します。AWS CloudFormation スタックを使用して、サブネット、ルーティングテーブル、Elastic IP アドレス、そして NAT ゲートウェイを備えた Amazon Virtual Private Cloud を作成します。

コスト – DeepRacer コンソールは無料で使用できます。最初のモデルのトレーニングを開始するとすぐに、SageMaker と RoboMaker のサービスクレジットが提供され、これらのサービスで 10 時間の無料トレーニングが受けられます。クレジットは月末に適用され、 AWS 無料利用枠の一部として 30 日間有効です。DeepRacer アーキテクチャは、利用状況に応じて課金する NAT ゲートウェイを使用します。アカウントは自動的にこの請求を相殺するためのサービスクレジットを受け取り、アカウントでプラスマイナスゼロと表示されます。

DeepRacer Cars – 今すぐ DeepRacer のレーシングカーを予約注文できます! 米国内の住所への配達は 2019 年 7 月に開始されます。

Jeff;