DQN(Deep Q-Network)を復習する
2019.07.23
DQN(Deep Q-Network)は2017年くらいに大きく注目された。
最近「Jetson Nano」を使ったAIロボットカー「JetBot」のハンズオンセミナーの記事をよく目にする。
またAWS Summit 2019にてAWSのブースでも「Jetson Nano」を使った展示があった。DQNを復習する。
ゲームでの事例が多いが、車の自動運転とか、ロボットの自動化などに利用できる。
DQNのサンプルでよくあるものをkerasで実装してみた。
障害物のY座標が最下段の場合、エージェント(操作対象)と衝突判定をする。
・当たっていなければ報酬「+1」
・当たっていたら報酬「-1」
という条件で学習させる。
学習時間は1,000エポックで15分程度。
■状態を表す行列の例(8 * 8)
「1.0」がエージェント、「0.5」が障害物を表す。
■学習結果をmatplotlibで描画。きちんと避け続けている。
■pygameで描画
画像認識、回帰予測などAIと呼ばれる分野ではあるが、こういったDQNをつかった強化学習が一番AIっぽい感じがするし、わかりやすい。
なにより楽しい。
最新記事
- APIサービスをどう作るか
- C++による組込みプログラミング
- CUDAでGPUプログラミング
- BERTでチャットボット
- 脆弱性チェックツール
- Flutterでデスクトップアプリ
- MMPoseを使って姿勢推定(骨格検知)
- Laravel Livewire3を使ってみる
- Lineミニアプリ
- RustとPHPのパフォーマンス比較
- ボクシングをモーションキャプチャー
- Virtualbox上のUbuntuにDocker環境を作れ・・・
- AWSでのIPv6対応
- AWSのRDSでブルー/グリーンデプロイ
- 20年ぶりにCOBOL
- フィッシングメールのソースを見る
- GCPのVertex AIの注意点
- Azure AZ-900 に合格
- 数年ぶりにRubyを触る
- Godotはunityの代わりになるのか?