[dl輪読会] deepnav: learning to navigate large cities

Post on 22-Jan-2018

377 Views

Category:

Technology

6 Downloads

Preview:

Click to see full reader

TRANSCRIPT

DEEP LEARNING JP

[DL Papers]

DeepNav: Learning to Navigate Large Cities (CVPR2017)

Masashi Yokota, Nakayama Lab

http://deeplearning.jp/

書誌情報

• Authers: Samarth Brahmbhatt, James Hays

• Conference: CVPR 2017

• 選定理由:不動産系(BtoB)で起業しているので都市構造を学習するという視点がすごい好きだった。

2

3

コンビニがどこに多くあるか知っていますか?

概要

• コンビニどこにある?

–主要幹線道路

–学校、オフィス周辺

–バス停

–駅

4

なんで??

人が多いから!!

5

名古屋駅の最寄りのUFJへの行き方はわかりますか?

概要

• 名古屋出身の自分でも分からない….でも、ググらなくても、なんとなく探すことは可能!

–人通りの多いところへ行ってみる

–大通りへ行ってみる

• 上記の事ができるのは、なんとなく銀行がどこにありそうか予測できるから。

– この論文で習得したい事!

6

構造物の建設場所には、ある程度規則性がある。この規則性が分かるようになれば、初めての場所でもどこに何があるのか予測できるはず。

何が嬉しい?

• 地理

– GPSの届かない場所でのナビゲーション

• 僻地、地下道、電波の届きにくい高層ビル群 etc

• 屋内

–家庭内ロボット

• 部屋の配置傾向を知っていれば再学習無し(or少ないデータでの再学習)で運用可能。– 風呂場の近くにはトイレがあるetc

7

この論文において解くタスク

• Street Viewで取得した複数の都市データで都市構造を学習–全てのデータ点で5種類の目的地(銀行、学校etc)の場所を学習

• 目的地までの距離はどれくらいか

• どの方向に何があるのか

• 見ず知らずの場所で指定された目的地へ行けるかテスト–評価値

• 目的地までの到達成功率

• 目的地まで到達する最小ステップ数

8

データセット

1. Google Map Street Viewから道の画像データを収集– 各交差点に対して東西南北の画像を取得

2. 選んだ画像データからグラフを作成(最短距離のAnnotationを作るため)

3. 目的地(学校、銀行、マクドナルド、教会、ガソリンスタンド)の場所を取得

4. 各写真の位置から目的地までの距離で取得。

9

10

提案手法

提案手法

• 距離ベース

– DeepNav-distance

• 与えられた画像の位置から、最寄りのスポットまでの距離を予測

• 方向ベース

– DeepNav-direction

• 与えられた画像の位置から、最寄りのスポットの方角を予測

– DeepNav-pair

• 画像のペアが与えられて、目的地に行くのにどちらへ行けばよいのかを予測

11

12

提案手法DeepNav-distance

DeepNav-distance

13

• 東西南北のそれぞれの方向へ進んだ時の目的地までの距離を予測。

• 各目的地までのMSEを最小化するように学習

• (テスト時)距離が最も小さくなる方向へ進む。

ガソリンスタンドへ行きたい。どっちへ進めば良い?

DeepNav-distance

14

• 東西南北のそれぞれの方向へ進んだ時の目的地までの距離を予測。

• 各目的地までのMSEを最小化するように学習

• (テスト時)距離が最も小さくなる方向へ進む。

ガソリンスタンドへ行きたい。どっちへ進めば良い?

90m

340m

510m

290m

DeepNav-distance

15

入力画像の方向に対して進んだ時、各目的地との距離を予測。学習時は予測値と実際の距離のMSEを最小化する。

16

提案手法DeepNav-direction

DeepNav-direction

17

左 右

ガソリンスタンドへ行きたい。どっちの方向へ行けば良い?

1. 入力画像(1枚)に対して、前

後左右どちらへ行けば目的地へ到着できるのかを予測。

2. 各目的地に対してどちらに行けばよいか予測する。

3. 学習時は各目的地に対して、通常の分類問題を最小化する。

DeepNav-direction

18

入力画像に対して、前後左右どちらへ行けば目的地へ到着できるのかを予測。学習時は通常の分類問題を最小化する。

DeepNav-direction Annotation

• データ作成時に作ったグラフを用いる。

• 各ノードに対してA*探索アルゴリズムを使って最短経路を計算

• その最短経路をannotationとする。

19

20

提案手法DeepNav-pair

DeepNav-pair

21

ガソリンスタンドへ行くには、どっちへ行けば良い?

IDEA: 複数の方向を見て学習した方が効率が良いはず。

学習時に各画像に対してスコアを計算し、正しい方向の画像のスコアが高くなるように学習する。

DeepNav-pair

22

ガソリンスタンドへ行くには、どっちへ行けば良い?

IDEA: 複数の方向を見て学習した方が効率が良いはず。

学習時に各画像に対してスコアを計算し、正しい方向の画像のスコアが高くなるように学習する。

Score 20 50

DeepNav-pair

23

画像ペアが与えられ、目的地へ到達するのに上の画像に行けば良い場合は0、

下の画像へ行けば良い場合は1として分類問題として学習させる。どちらも違う場合はXとして学習時には無視する。

DeepNav-pair テスト時

24

ガソリンスタンドへ行きたい。どっちへ進めば良い?

55

20

18

47

モデルのブランチを1つにして目的地のスコアを出力。各方向のスコアを比較し最も大きいスコアの方向へ進む。

モデルScore

DeepNav-pair Annotation

25

• 各ノードに対してA*探索アルゴリズムを使って最短経路を計算する。

• 最短距離のパス中の各ノードにおいて2方向を選び、ラベルを付ける。– 1つ目の画像の方向が最短経路ならラベル0

– 2つ目の画像の方向が最短経路ならラベル1

– どれも違うならラベルX

• これを最短経路を構成している全てのノードに対して行う。

損失関数(DeepNav-direction, -pair)

26

ほとんどの学習データは、現在地から目的地まで距離がある。現在地から目的地への距離(最短ステップ数)が遠い程、影響は小くし、近いほど影響は大きくするべき。→ li(目的地までのステップ数)を考慮することで重みを付ける。

Lg: Geometrically Weighted LossN: バッチサイズλ: Geometric Weighting Factor(=0.9)Li: i番目のロスli: 目的地までの最短ステップ数

27

実験

実験

• データセット– 学習データ

• 6都市(Atlanta, Boston, Chicago, Houston, Los Angeles, Philadelphia)

– テストデータ(平均ds[m]だけ離れた位置から各都市10回試行)• 4都市(Dallas, New York, Phoenix, San Francisco)

• 目的地– 銀行– 教会– ガソリンスタンド– 高校– マクドナルド

• 評価値– 目的地までの到達率– 目的地までの到達に必要なステップ数の期待値

28

評価値

• 成功率

–目的地まで75m以内の位置に到達できれば成功。

– 1000回移動しても、目的地に到着できなければ失敗。

• 目的地へ到達するためのステップ数の期待値

29

s: 成功率L: 成功時の平均ステップ数Lmax: 最大ステップ数(=1000)

結果 1/8

30

テストデータにおける到達ステップ数の期待値

結果 2/8

31

サンフランシスコの銀行へ行く場合の各ノードのConfidence。青点が銀行の位置、オレンジ線がconfidenceの強さ。

DeepNav-pairは目的地周辺のconfidenceがはっきりと高くなっている。

結果 3/8

32

サンフランシスコのマクドナルドが近くにあると判定している時の画像(上カラム)近くにマクドナルドが無いと判定している画像(下カラム)

結果 4/8

33

サンフランシスコのガソリンスタンドが近くにあると判定している時の画像(上カラム)近くにガソリンスタンドが無いと判定している画像(下カラム)

結果 5/8

34

ニューヨークにおいて教会が目的地の場合の移動の軌跡青:スタート地点、緑:教会の位置

結果 6/8

35

結果 7/8

36

結果 8/8

37

全体的にDeepNav-directionが良い感じ。

まとめ

• データセットは、API使い全自動で取得

• 手法

–距離ベース

• DeepNav-distance

–方向ベース

• DeepNav-direction → 最も良かった

• DeepNav-pair

• random walkと先行研究よりかは良い結果が出てる。

38

感想

• 正直、ナビゲーション感は少ない

• 都市構造の傾向を理解するというアイディアは面白い

–道案内よりも街に何が足りないのかを判定するとかの方が面白そう。(ex. 機械に都市計画させる etc)

• 都市構造を学習させるなら時系列にして学習させた方が良さそう。

– LSTMとかで過去の情報も保持しておくとか。

39

top related