フェンリルからAWS Jr. Championsに2名選出!若手エンジニアにインタビューしました Vol. 2 | フェンリル
AWS Jr. Championsとは日本最大級のAWSクラウドのラーニングカンファレンスであるAWS Summit。同Summitで開催されたAWSパートナー向けセッション内で、AWSパートナ...
https://www.wantedly.com/companies/fenrir/post_articles/509397
クラウド事業推進部の三﨑です。昨年9月から11月にかけて、AWS Jr. Champions内でのDeepRacerの大会である「DeepRacer Jr. Champions Cup」に参加しました。
私は本大会でDeepRacerを初めて触りました。そこで、DeepRacerの概要とDeepRacer Jr. Champions Cupについてご紹介します。
<AWS Jr. Championsについてのインタビュー記事はこちら>
AWS DeepRacerは、楽しみながら機械学習について学べるサービスです。利用者が学習モデルである、仮想の自動運転モデルに学習パラメータやプログラミングで報酬関数を設定することで、仮想空間上でモデルを走らせます。モデルを速く走らせるよう試行錯誤する中で、適切な学習パラメータと報酬関数を見つけます。それにより機械学習の知見を深められます。
DeepRacer Jr. Champions Cupとは、その名の通りAWS Jr. Champions内でのDeepRacerの大会です。Jr. Champions Cupには予選と決勝があり、予選タイムの上位5名が決勝に進めます。
DeepRacer Jr. Champions Cupに参加した理由は、DeepRacerを学ぶ近道だと考えたからです。Jr. Champions内でタイムを競うため、より速く走れる学習パラメータと報酬関数を実装する必要があります。それを考える過程が、私にとってDeepRacerや、ひいては機械学習に関する知見を深められると考えました。
予選は10月初旬に開催されました。予選の当日中であれば何回でもタイムの計測ができます。そのため、日付が変わるまで全力でコースを走りました。
そのかいあってか、予選では滑り込みで5位になり無事決勝への切符を手にしました(記録上は6位ですが、同率4位が2人いたので繰り上がって5位になりました)。
予選の走行時の様子です。
予選の戦略は以下の通りです。
上記の戦略がハマった結果、5位になることができました。しかし、1位の走行と比較すると、まだまだコースの位置取りや速度を改善する必要がありました。そのため、決勝に向けて再度学習パラメータと報酬関数を調整しました。
決勝は11月下旬に開催されました。決勝の形式は、予選とは異なり、リアルタイムで1度だけレースが行われます。そのため、1回のチャレンジに全てを賭けます。さらに、決勝では走行中にモデルの速度を0.5倍から1.5倍まで自身で変更できたため、細かい速度調整が可能でした。
決勝の結果、5人中2位になることができ、DeepRacerの経験が浅くても上位に入れたのでうれしかったです。
決勝の戦略は以下の通りです。
コースアウトをしないようにスピードを調整しましたが、最高タイムでも1回はコースアウトしてしまいました。決勝のコースはかなり急なコーナーが多く、それでも2位に入れてラッキーでした。
初めてDeepRacerを触って、とても楽しかったです。自分がカスタマイズしたモデルがコース上を速いスピードで走るのを見ていると、試行錯誤の成果が発揮されていると感じました。さらに調整を重ねようという気持ちになりました。
また、他の方が作成したモデルの走りを見ていると、自分とは違う戦略でモデルを走らせていることが分かり、大きな学びになりました。
今後は、DeepRacerの世界大会であるAWS DeepRacer Championship Cupへの出場を目指したいです。そのためにはまず、月次で開催される大会で上位に入賞することが必要です。まずはそこから始めたいと思います。
最後に、2022年のアドベントカレンダーやFenrir Engineers Blog でもAWSに関する記事を執筆しています。こちらもぜひ、ご覧ください。