Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
20190615_DeepRacerClub_at_Okayama
Search
貞松政史
June 15, 2019
Technology
640
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
20190615_DeepRacerClub_at_Okayama
20190615 DeepRacer同好会オフライン勉強会第三回@岡山
貞松政史
June 15, 2019
More Decks by 貞松政史
See All by 貞松政史
Amazon Forecast亡き今、我々がマネージドサービスに頼らず時系列予測を実行する方法
sadynitro
0
1.5k
今日のハイライトをシステマティックに
sadynitro
1
95
はじめてのレコメンド〜Amazon Personalizeを使った推薦システム超超超入門〜
sadynitro
2
2.8k
予知保全利用を目指した外観検査AIの開発 〜画像処理AIを用いた外観画像に対する異常検知〜
sadynitro
0
1.4k
20230904_GoogleCloudNext23_Recap_AI_ML
sadynitro
0
1k
Foundation Model全盛時代を生きるAI/MLエンジニアの生存戦略
sadynitro
0
1.1k
Amazon SageMakerが存在しない世界線 のAWS上で実現する機械学習基盤
sadynitro
0
330
Amazon SageMakerが存在しない世界線のAWS上で実現する機械学習基盤
sadynitro
0
2.2k
みんな大好き強化学習
sadynitro
0
1.4k
Other Decks in Technology
See All in Technology
Eight Engineering Unit 紹介資料
sansan33
PRO
3
8.1k
研究開発部の紹介 / Sansan R&D Profile
sansan33
PRO
4
24k
Master Dataグループ紹介資料
sansan33
PRO
1
4.8k
認知負荷をGemini で溶かす — GKE 基盤「Orbit」における AI エージェントの実践
sansantech
PRO
1
250
修正PRを食べてレビュースキルが賢くなる:Claude Codeによる自己改善サイクル
yuyaumetsu
4
1.2k
侵入は突然に 〜 IoTマルウェアと悪用される家庭の機器 ~ / When Intrusion Strikes: IoT Malware and the Abuse of Home Devices
nttcom
0
1.5k
MIRU 2026 チュートリアル
keisuke198619
0
810
20260608_Codexの可能性_ノンプログラマー向け_大城追記
doradora09
PRO
0
760
QAタスクをスキル化したいときに考えること
aomoriringo
0
180
Issue設計から始める仕様駆動開発 / 20260731 Mizuki Hirata
shift_evolve
PRO
1
130
え?フロントエンドエンジニアの ワイがインフラも!?
puku0x
0
270
トヨタ⽣産⽅式(TPS)⼊⾨
recruitengineers
PRO
1
400
Featured
See All Featured
How to build a perfect <img>
jonoalderson
1
5.8k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
950
Embracing the Ebb and Flow
colly
88
5.1k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
350
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
460
Building Applications with DynamoDB
mza
96
7.2k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
480
Skip the Path - Find Your Career Trail
mkilby
1
180
Producing Creativity
orderedlist
PRO
348
40k
My Coaching Mixtape
mlcsv
0
190
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Transcript
Deep Racer League Virtual Circuit Vol.1 - London Loop Highlight
クラスメソッド株式会社 データインテグレーション部 2019.6.15 DeepRacer同好会 第三回オフライン勉強会@岡⼭ 貞松 政史 1
2 本⽇のハッシュタグ #AWSDeepRacerJP
3 ⾃⼰紹介 貞松 政史 (サダマツ マサシ) @sady_nitro データインテグレーション部 (DI部) 開発チーム
岡⼭オフィス勤務 データ分析基盤開発 某コーヒー関連 SageMaker Lambda ⽒名 所属 近況 好きなAWS サービス
4 本セッションから得てほしいこと DeepRacer 楽しい︕
5 本セッションから得てほしいこと l Deep Racer Virtual Circuitの概要 l Virtual Circuitの実際の⼤会の流れ
l Virtual Circuitに対するアプローチ 今後の⼤会に取り組む為の⼿がかり
6 本セッションで話さないこと 強化学習の⼿法(アルゴリズム)についての詳細 DeepRacerの実機に関する内容
7 お品書き DeepRacer League Virtual Circuitの概要 DeepRacerコンソールの操作フロー London Loop ⼤会のハイライト
London Loopに対するアプローチ 今後の⼤会に向けて 1 2 3 4 5
8 DeepRacer League Virtual Circuit の概要
9 DeepRacer League Virtual Circuit
10 DeepRacer League Virtual Circuitの概要 • re:Invent 2019開催⽉まで、毎⽉開催 • DeepRacerコンソール上で学習したモデルを
そのままデプロイしてレースに参加 • 上位10名にはDeepRacerの実機を進呈 • 優勝者はre:Invent 2019に招待 (イベント参加費、交通・宿泊費をAWSが負担)
11 DeepRacerコンソールの 操作フロー
12 DeepRacerコンソール
13 DeepRacerに対する強化学習の環境 State (状態) DeepRacerのカメラ画像 Action (⾏動) 状態に対するエージェント (DeepRacer)の動作 Reward
(報酬) 報酬関数で設定した動作の 結果に対する報酬値
14 DeepRacerコンソールを⽤いた開発の流れ 必要なAWSリソースを作成 学習モデルを作成・学習実⾏ 学習済みモデルの評価・デプロイ
15 必要なリソースを作成 ※ S3やVPCの課⾦も発⽣しているので注意︕
16 モデルを学習 モデル名・概要⼊⼒ 学習対象のコース選択 ⾏動パターンの設定 報酬関数の実装 ハイパーパラメータの設定 学習時間の設定
17 トレーニングの実⾏ 時間毎の累積報酬 DeepRacerのカメラ画像 (シミュレーター)
18 学習済みモデルを評価 学習済みモデルで3〜5回トライアルを⾏う ⁻ Time : 1回のトライアルでかかった時間 ⁻ Trial result
: 100%ならコース1周完⾛
19 DeepRacerのAction設定⽅法 l ハンドルの操作⾓ l スピード(m/s) →最⼤値と⾏動数(刻み幅) で設定
20 設定されたAction ハンドルの操作⾓とスピー ドの掛け合わせで⾏動パ ターンが設定される
21 Actionを設定する上での注意点 ⾏動パターンを増やし過ぎると学習に時間が掛かる 学習ジョブのClone時は元のActionを変更できない コースの特性に合わせて設定が必要 報酬関数の設計とトータルで考える必要がある
22 報酬関数を作成する エージェント(DeepRacer) から得られる情報を元に ⾏動に対する報酬を設定する https://docs.aws.amazon.com/ja_jp/ deepracer/latest/developerguide/de epracer-reward-function-input.html
23 報酬関数の例 パターン1 センターラインに沿って⾛⾏させる
24 報酬関数の例 パターン2 早いスピードで⾛⾏させる ※Action設定でスピードのパターンが1種類のみの場合は無意味
25 報酬関数の例 パターン3 急ハンドルやジグザグ⾛⾏を抑制する
26 参考ブログエントリー その1 https://dev.classmethod.jp/cloud/aws/aws-deepracer-virtual-circuit-join/
27 参考ブログエントリー その2 https://dev.classmethod.jp/machine-learning/aws-deepracer-pattern-of- reward-function/
28 London Loopのハイライト
29 London Loop London Loop
30 序盤 センターライン寄せと ジグザグハンドル抑制の 報酬関数を組み合わせ 暫定6位に︕
31 これ、いけるのでは︕︖
32 中盤 残り10⽇あたりで急に全体のタイムが伸び始める (この時点で30位ぐらいまで落ちる)
33 (予想した)限界タイムに近づいている…
34 終盤 そして最終〆切間近…
35 終盤
36 ︕︕︕
37 結果惨敗 orz(46位)
38 総評 • 12秒台に⼊ってからタイムが伸び悩む • ⼯夫次第で12秒前半はいけたかも • 終盤に⼀度RoboMakerのアップデートにより DeepRacerコンソールが利⽤不能に (正確にはROSのアップデートによるもの)
• 再度コンソールが利⽤可能になってから急激に トップタイムが伸びた(…)
39 London Loopに対するアプローチ
40 コースの特徴を捉える センターラインに沿うと上⼿く いきそう キツめのカーブがいくつかある (スピードの調整が必要︖) re:Invent 2018
41 コースの特徴を捉える London Loop センターラインにびったり沿う と無駄が多そう 緩いカーブの連続で構成されて いる(速いスピードを維持する のが良さそう︖)
42 前半のアプローチ • とはいえちゃんと⾛りきれないと意味がない (デプロイしても記録なしになる) • センターラインに沿うような報酬の与え⽅ • 緩いカーブが多いので、出来るだけ直線的に ⾛らせたい
• 急ハンドルを抑制するような報酬の与え⽅ • あとは速いスピードを維持するためにスピードは早 めの⼀種類のみ(最初は4m/s→結局5m/sに)
43 前半のアプローチ
44 これで序盤6位に︕
45 後半のアプローチ • フルスロットル(5m/s)でただ1周⾛り切れるだけ ではタイムが伸びない • 出来るだけロスのない⾛りが必要 • CloudWatch Logを読み解く
• 1周するのに◦秒、◦step掛かる • △秒で⾛るには、△Step以下で⾛りきる必要がある • progressとstepを使ってなんとかできないか
46 後半のアプローチ
47 これでさらにタイムが短縮︕
48 でも最終的に惨敗 orz
49 実際にモデルの学習を繰り返してわかったこと London loopをひたすら回した結果 • センターラインにびったり張り付いても速くない • 意外とフルスロットルでいける • 報酬関数は複雑なほど良いわけでは無い
• 最終的にカリッカリにタイム短縮を狙うなら stepsやprogressの考慮が必要…︖ • さらにカリッカリにチューニングする場合はハイ パーパラメータの調整も⼊ってきそう
50 今後の⼤会に向けて
51 現在開催中のVirtual Circuit Kumo Torakku ⻑いホームストレートと連続低速コーナー より複雑な学習モデルが必要 speed設定が0.8〜8.0m/sに(以前は0.5〜5.0m/s)
52 傾向と対策 • 軽く学習回してみた感じ、流⽯にフルスロットル ⼀本では曲がりきれない • スピードのパターンが増える • 低速コーナーと⻑いストレートの両⽅対応しないと タイムが伸びない
• ステアリングのパターンを減らして、スピードに関 する報酬を調整すると少しマシになった より多くの試⾏錯誤が必要
53 DeepRacerはお⾦が掛かる ぶっちゃけた話
54 必要なもの • 情報 • うまくいったパターン • うまくいかなかったパターン • 設計とレース結果以外の情報(ログの解析など)
• 強化学習の知識 • (とはいえ)資⾦ • 所属企業の⽀援 • AWS利⽤料⾦以外で掛かる⾦銭⾯について (実機とかコースとか)
55 協⼒が必要 個⼈で戦うには限界がある オープンな情報と競り合いから より良い結果が⽣まれる ⽇本⼈からDeepRacer Leagueの 世界チャンピオンを︕
56 まとめ
57 まとめ DeepRacer League Virtual Circuitの概要 DeepRacerコンソールの操作フロー London Loopのハイライト London
Loopに対するアプローチ 今後の⼤会に向けて協⼒が必要
58 DeepRacer 難しい…
59 でも DeepRacer 楽しい︕
None