文獻閱讀報告 - Social LSTM:Human Trajectory Prediction in Crowded Spaces


概覽

簡述

文獻所提出的模型旨在解決交通中行人的軌跡預測(pedestrian trajectory prediction)問題,特別是在擁擠環境中——人與人交互(interaction)行為常有發生的地方。

文獻構建的數據驅動模型,利用在序列預測上表現突出的LSTM模型以行人為單位進行軌跡預測,同時為了解決多個行人的LSTMs之間無法捕捉行人空間中交互的問題,模型在LSTMs每一步運行之間加入了“Social”池化層,池化層將整合其他行人的隱藏狀態(Hidden State),並作為隱藏狀態一部分傳遞下去,最終形成模型Social LSTM

由於池化層的引入,使得LSTMs間出現動態數據(在模型運行中才能得到)的依賴,模型訓練時需要有多個LSTMs同步並行運行和反向傳播,為了簡化訓練壓力,文獻也提出了O-LSTM模型,該模型可針對每位行人的軌跡進行獨立的訓練。

最后,文獻使用了ETH和UCY兩個公開數據庫數據,從軌跡平均誤差、重點誤差和軌跡非線性區間誤差三個指標衡量多重模型的預測性能,得出Social-LSTMO-LSTM性能整體上優於其他模型的結論。

相關研究

前人對交互環境下的軌跡預測已經提出了多種方法,例如以Social Force為基礎的將行人行動模型之間刻畫吸引力和排斥力的模型,已發展出了相當多的方法,然而文獻中提到這些方法大都受限於兩個方面:

  1. 需要手工構造函數以刻畫交互而不是數據驅動,導致模型的環境適應性差,並且只能較好捕捉簡單的交互情景。
  2. 模型所針對的通常是距離很相近的情景,而沒有考慮更遠距離可能發生的交互。

數據庫

數據源:ETH、UCY

數據格式(經處理和提取以適應此訓練任務)

​ 元數據標簽:time frame(時間片序號)、pedestrian ID(行人標識符)、position x、position y

​ 時間精度:time frame之間間隔均為10的倍數,精度為0.4秒

​ 位置精度:訓練數據中x和y均經過標准化處理,\(0 <= x,y <= 1\) 。源數據中x,y,z精度為米。

橫向評估標准

  1. Average displacement error:即均方誤差(MSE)。\(MSE = \frac{1}{N}{ \sum_{i=1}^n(Y_i - \hat Y_i)^2}\)
  2. Final displacement error:終點平方誤差。\(DSE = (Y_{T_{pred}} - \hat Y_{T_{pred}})^2\)
  3. Average non-linear displacement error:MSE的改良版,誤差計算周期不再是整個周期,而是軌跡有明顯非線性變化的區域,旨在突出Social LSTM對非線性軌跡預測的效果。非線性區域判斷依據是自適應閾值的軌跡二階導數,但並未在源代碼中找到相關實現。

Social LSTM模型簡介

LSTM

LSTM模型被證明為解決序列預測問題的有效方式,由一個LSTM Cell經過多次迭代,每步迭代中都會接受輸入和產生輸出,從而產生序列型輸出。有關RNN及LSTM標准模型本文不再詳細介紹,此處僅說明實際應用時的要點。

  1. 建模方法:一“條”LSTM模型對應一個行人的軌跡序列,所有LSTM模型都共用同一個LSTM Cell
  2. 輸入輸出:不考慮Minibatch的實際訓練方法對數據維度的影響:LSTM Cell每步運行的輸入數據格式為“由[x,y]經embedding后得到的向量”;LSTM Cell每步運行的輸出數據經線性變換后成為\([ \mu_x, \mu_y, \sigma_x, \sigma_y, \rho ]\),之所以不是平面二維的2個數據,是由於原文采用了輸出數據分布為二維高斯分布的假設,5個數據恰對應高斯分布參數。
  3. 池化層引入必要性:由建模方法和輸入輸出可知,在現有LSTMs模型中的LSTM之間完全獨立,運行前中后都沒有數據信息的共享,因此無法表現行人間交互信息。為此,Social LSTM在上圖所示的\(h_1, h_2, h_3, ..., h_t\)上進行改動以達到每“條”LSTM運行一步后都會進行信息共享Social LSTM Cell的隱藏狀態將由池化層經處理整合后得到

Social Tensor

Social Tensor是使得每位行人的LSTM模型進行信息交換的途徑,實質是一個池化層,每個行人\(i\)在每個時間點\(t\)均對應一個Social Tensor-\(H^i_t\),用於記錄在該行人划定的范圍\(Z^i_t\)中,其他行人的信息,並作為行人\(i\)隱藏狀態的一部分,參與其下一步軌跡預測從而起到傳遞行人間交互信息的作用。

量化描述:

Shape : [\(N_0\), \(N_0\), \(D\)](其中\(N_0\)\(Z_i\)區域的進一步等距划分,\(D\)是隱藏狀態 Hidden State的維度大小)

數據組成:每個\(H^i_t\)均由其他LSTM模型的\(h^i_t\)按一定策略加和。首先,只有處在\(Z^t_i\)區域中的行人的LSTM模型的\(h^i_t\)會被累積;其次,\(Z_t^i\)區域存在進一步分區,對於被累積的\(h^i_t\),其會被累加至對應的分區上。

\[H_t^i(m,n,:) = \sum_{j \in N_i } 1_{mn}[x_t^j - x_t^i, y_t^j - y_t^i]h_{t-1}^j \]

其中,\(1_{mn}[...]\)是01函數用於判斷是否處在區域中,\(h_{t-1}^j\)是隱藏狀態,\(N_i\)是相鄰行人。

Occupancy Map Pool

Social Tensor池化的簡化版,使得模型訓練時無需同時處理所有的軌跡,下述公式也可看出Tensor中不再統計隱藏狀態的值,而只統計行人數量。

\[O_t^i(m,n,:) = \sum_{j \in N_i} 1_{mn}[x_t^j - x_t^i, y_t^j - y_t^i] \]

研究拓展方向

  1. 拓展模型至多類別道路對象(行人、自行車、滑板等),在Occupancy Map 中有自己的標簽。
  2. 將場景的靜態圖片作為Social LSTM模型的額外輸入,在描述Person-Person的交互的基礎上,描述Person-Space的交互。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM