Amazon Web Services ブログ

DeepRacer リーグ @ AWS Summit Tokyo に向けて準備を始めましょう

みなさん、こんにちは。アマゾン ウェブ サービス、プロダクトマーケティング

エバンジェリストの亀田です。

今日は、現在お申込み受付中のAWS Summit Tokyo で開催される DeepRacerリーグについて最新情報をお届けしていきます。

DeepRacer リーグ

DeepRacer リーグは、機械学習のマネージドサービスであるAmazon SageMaker を強化学習に対応させたAmazon SageMaker RL、そして知能ロボット工学アプリケーションを大規模かつ簡単に開発、テスト、デプロイできるサービスである、AWS RoboMaker を組み合わせて実現されるDeepRacerという1/18スケールの完全自走型レーシングカーを用いて競いあうレースです。

DeepRacer リーグは2種類存在しています。一つが世界中で20以上のAWS Summitで開催される実機を利用したレースです。AWS Summit Tokyoでも3日間毎日開催されており予約なしで現地で登録を行いレースに参加できます。その際実機は、レースの公平性を期すためAWS側が準備したものに、トレーニング済みのアルゴリズムをインストールしレースに挑んでいただきます。待ち時間はありますが、何度でも参加できます。また、アルゴリズムのトレーニングなどが難しい方は、あらかじめプリセットされたデフォルトのアルゴリズムを使いレースをカジュアルに楽しむこともできます。そしてAWS Summit Tokyoでは、強化学習の基礎とDeepRacerを走らせるモデルをトレーニングする手法を学べるWorkshopも開催します。3日間のレースを通して上位10名にはDeepRacerの実機をプレゼントします。そして優勝者には、12月2日から9日の間米国ネバダ州ラスベガスで開催されるre:Invent 2019へ招待させていただき、そこで決勝戦を戦っていただきます。なんと、re:Invent2019への渡航費、宿泊費、チケットなどがAWS側により負担されます。

もう一つのDeepRacerリーグは、Virtualレースです。先日バージニア北部リージョンで、DeepRacer Virtualリーグが開幕しました。AWSのマネージメントコンソールから、DeepRacerを選択すると「DeepRacer Virtual Circuit」が選べるようになっています。現在 London Loopが開催中です。

そしてここからがとても大事なところです。

実機を使ったDeepRacerリーグとVirtualレースは、同じ学習済みモデルを使うことができます。つまり、AWS Summit TokyoでDeepRacerリーグに参加してみたい方は、今からマネージメントコンソールで強化学習を使ったモデルを使い、そして実際に試すことができます。

これにより、本番のDeepRacerリーグでよりよいタイムが出せるようになるかも知れませんね。もちろん先に書いた通り、プリセットされたモデルでレースを楽しむこともできます。でも、良いタイムを出すためにはやはりトレーニング済のモデルを使った方がいいので、是非挑戦してみてください。

そしてDeepRacerリーグとVirtualレースではマシン操作におけるアクセル制御の仕組みが異なりますので、両方参加してももちろん楽しめるようになっています。

強化学習とは?

折角なので強化学習というものの基礎を纏めましょう。

端的には、機械学習のモデルは、以下の3つのいずれかの方法で学習されています。

教師あり学習:ラベル付きのデータセット(サンプルと答えを含む)を使って学習を実行します。徐々にモデルは学習し、正しいラベルを予測をするようになります。回帰と分類などが、教師あり学習の例として挙げられます。

教師なし学習: ラベルのないデータセット(サンプルのみを含む)を使って学習を実行します。ここでは、モデルはデータ中のパターンを徐々に学習します。データのクラスタリングなどが、教師なし学習の例として挙げられます。

強化学習: これは上の2種類の学習とは大きく異なります。コンピューター上で主役となるエージェントが、環境(多くの場合、シミュレータ)と相互作用し、行動に応じて正または負の報酬を得ます。報酬とは行動がどれぐらい良いのかを表す数値で、報酬を計算する関数はユーザによって定義されます。報酬を最大化するような強化学習を行うことで、エージェントは最適な意思決定の戦略を学ぶことができます。

DeepRacerであれば、スピードと、タイヤの左・右、というスロットルとステアリングそれぞれの挙動と、
実機が走っているコースの状態との組み合わせの中で、なるべく正の報酬を得るモデルをシミュレーションを繰り返しながら作成します。報酬は、コースをはみ出ない、センターラインの近くを走行している、等が正の報酬として設定されます。これは実際の自動運転開発においても着目されている技術の一つです。

シンプルに言うと教師あり学習と教師なし学習は、それなりの量のデータさえあればAmazon SageMakerを使うことで機械学習基盤を構築し推論を行う結果を出力してみることができます。しかし強化学習の場合、学習環境と相互作用するエージェントのモデルや実環境、そしてそれを再現するシミュレータ、等準備すべき部分が多くあります。これが一般的に強化学習がその他の学習に比べて、学ぶことが難しいとされる理由の一つです。

DeepRacerは自動運転を実現させるための、実機、コース、それらをシミュレーションするシミュレータを学習キットとしてパッケージ化し、皆さんが簡単に強化学習に触れていただけるようにした、学習キットになるのです。そしてそのシミュレーション環境は、皆さんが別のサービス用途にもご利用いただけるように、汎用のサービスとしても提供されています。それがAWS RoboMakerです。DeepRacerもシミュレーション環境はRoboMakerを使用しています。

AWS RoboMaker

AWS RoboMakerが東京リージョンに対応しました。

AWS RoboMaker は、知能ロボット工学アプリケーションを大規模かつ簡単に開発、テスト、デプロイできるサービスです。RoboMaker は、最も普及しているオープンソースのロボット工学ソフトウェアフレームワークである Robot Operating System (ROS) を、クラウドサービスへの接続性によって拡張します

ロボットのOSを開発する際に、いきなりロボットの実機そのものを作る必要はなく、シミュレーターの中でシミュレーションを繰り返し、OSやOSが利用するモデルを作ることができます。物理的なハードウェアにデプロイする前に、シミュレーションを使用してロボット工学アプリケーションをテストおよび微調整することができます。また、室内、小売店、競走場などといった構築済みの仮想 3D 世界を提供しているため、これらをシミュレータにダウンロードしたり変更を加えたり使用したりすれば、迅速かつ簡単に開始可能です。

DeepRacerではこのようにRoboMakerを用いて仮想のDeepRacerコース環境を作成しシミューレションを繰り返しながらアルゴリズムを作成していきます。

SageMaker RLから複数のシミュレーション環境を同時に呼び出し学習効率を向上させることも可能です。

 

ここにそのサンプルスクリプトがありますので是非試してみてください。

それでは、みなさん、AWS Summit Tokyoでお会いしましょう!

 

– エバンジェリスト 亀田