摘要: 一個 AI 能預判人類的移動路徑不驚訝,但還能準確知道人類「要做什麼」,這可就驚為天人了。李飛飛大神發表「會預言的 AI」,這訓練模組是怎麼建構的?
道路千萬條,你走哪一條? AI 知道。
不僅知道,還能預測出你要幹什麼。
這種全面「窺視未來」的能力,出自李飛飛團隊的最新研究。
我們來(假裝)看一段街頭影片。
一個人,從車後繞過來 ……
畫面定格,引來保安終極三問:他是誰?要去哪?幹什麼?
當然是繼續走向車門旁邊,伸手開門。
AI 回答正確。
提高一點難度,多拍幾個人試試:
李飛飛團隊的新 AI 還是能答對。系好安全帶,開車上路。
李飛飛的 AI 增加預言強度、範圍、甚至包含「人類行動」
這項研究,由卡內基梅隆大學(CMU)、Google AI 和史丹佛大學共同完成。
他們運用一個端到端的多任務學習系統,從畫面中識別人類行為和 TA 與周圍環境的互動情況,然後根據這些信息,預測出這名行人未來的路徑和行為。
無論是預知的範圍還是準確率,都比以往的研究更強。
在此之前,「窺視未來」的研究也不少,不過都只是預測人接下來的行走路徑,無法預測他們幹什麼。
比如 2018 年李飛飛夫婦團隊發表在 CVPR 上的 Social GAN,代表了當時最先進的水平,卻也只能預測「要去哪兒」。
而這項最新的研究,不僅預測了人的路徑,還預測出了這些人的活動。
論文中說,這是首次同時預測人未來路徑和活動的研究。
如果你仔細觀察上圖的藍色預測軌跡,還會發現:新研究的軌跡預測能力也比以前更強了。
當然,這些是主觀定性的感受,放到定量的分析中,它對路徑預測的誤差平均下來也是最小的。
上圖是各種算法在五個場景人物路徑預測數據上的表現。
為了充分證明模型的性能,分成了兩類,一是對單一模型結果的比較(Single Model),一是比較 20 個模型輸出結果最優情況(20 Outputs)。
這五個場景來自兩個公開的數據集。
一是 ETH 數據集,包括 ETH(大學外部)和 HOTEL(公共汽車站),二是 UCY 數據集,包括 UNIV(大學)、ZARA1(購物街)和 ZARA2(購物街)。
圖表中的數據,表示人物接下來路徑中 12 個點的預測誤差,「/」左側數據代表平均位移誤差,右側數據代表最終位移誤差,數據越小越好。
各個場景平均來看(AVG),這項最新研究單一模型的平均誤差比其他模型要少 0.2,最終誤差少 0.4。20 個模型輸出結果最優情況中,平均誤差和最終誤差也都少了 0.1 左右。
一個算法,既能預測軌跡,又能預測行為,誤差還比其他方法低。那麼問題來了 ——
李飛飛如何讓 AI 擁有預言超能力?
預測運動軌跡這件事,和預測行為本來就是相輔相成的。
人類走路是以特定目的為導向,瞭解一個人的目的,有助於推測他要去哪。
既然要同步預測運動軌跡和行為,就不能像以往那些研究一樣,把人簡化成一個點了。
這個神經網路,總共包含 4 部分:
人物行為模塊、人物交互模塊、軌跡生成器、活動預測
其中前兩個模塊是圖像識別的部分,分別負責識別場景中每個人的動作和相互關係。
獲得的信息交給 LSTM 編碼器,壓縮成一個「視覺特徵張量」Q,交給剩下兩部分生成軌跡和活動的預測結果。
另外,活動預測模塊還能對活動即將發生的位置進行預測,彌補軌跡生成器的誤差。
這四個模塊的功能和工作原理,具體來說是這樣的:
1、人物行為模塊
這個模塊負責對場景中每個人的圖像信息進行編碼,除了標記人的軌跡點以外,還要對身體活動進行建模。
為了對人在場景中的變化進行建模,這裡用一個預訓練的帶有「RoAlign」的物體檢測模型,來提取每個人邊界框的固定尺寸 CNN 特徵。
除了場景以外,人物行為模塊還需要獲取肢體活動的信息,本文使用了一個 MSCOCO 數據集上訓練的檢測模型,來提取人體關鍵點信息。
以上兩個部分分別輸入 LSTM 編碼器,獲得場景和肢體動作的特徵表示。
2、人物交互模塊
這個模塊負責查看人與周圍環境的交互,包含人與場景、人與對象的交互。
其中人與場景的交互是為了對人附近的場景進行編碼。
首先使用預訓練的場景分割模型導出每一幀的像素級場景語義分類,劃分出場景中的道路、人行道等部分。
然後選取適當的尺寸大小來確定模型需要識別的環境區域。例如把數值設定為 3,表示選取人周圍 3×3 大小的範圍作為觀察區域。
將以上不同時刻獲取的信息輸入 LSTM 編碼器,最終獲得了人與場景關係的特徵。
與前人的研究不同,「人與對象的交互」模塊可以對場景中所有對象與人的幾何關係和類型進行建模,並根據幾何距離來計算人與其他對象的關係,而不僅僅只關注與周圍近鄰的關係。
但是人的軌跡更容易受到近距離物體或人的影響,文中使用對數函數作為權重,來反映不同距離人或物體對軌跡的影響。實際效果也證明瞭這種編碼方式是有效的。
下一步,將某個時刻的幾何特徵和對象類型特徵嵌入到多維向量中,並將嵌入的特徵饋送到 LSTM 編碼器中。
由人與其他人、汽車之間的距離,可以獲得人與物體的關係特徵;由人是靠近人行道還是草地,可以判定人物場景特徵。
將這些信息提供給模型,讓它能學習到人類的活動方式。比如一個人在人行道上比在草地上走得更頻繁,並且會傾向於避免撞到汽車。
3、軌跡生成器
上面兩個模塊提取的 4 種特徵,包括場景、肢體動作、人與場景和人與對象關係等信息,由單獨的 LSTM 編碼器壓縮成視覺特徵張量 Q。
接下來使用 LSTM 解碼器直接解碼,在實際平面坐標上預測未來的軌跡。
這項研究用了一種焦點注意力的機制。它起初源於多模態推理,用於多張圖片的視覺問答。其關鍵之處是將多個特徵投射到相關空間中,在這個空間中,辨別特徵更容易被這種注意力機制捕獲。
焦點注意力對不同特徵的關係進行建模,並把它們匯總到一個低維向量中。
4、活動預測
活動預測模塊有兩個任務,確定活動發生的地點和活動的類型。
相應地,它包含兩個部分,曼哈頓網格的活動位置預測和活動標籤預測。
活動標籤預測的作用是猜出畫面中的人最後的目的是什麼,預測未來某個瞬間的活動。活動標籤在某一時刻並不限於一種,比如一個人可以同時走路和攜帶物品。
而活動位置預測的功能,是為軌跡生成器糾錯。
軌跡生成器有個缺點,預測位置的誤差會隨著時間累計而增大,最終目的地會偏離實際位置。
為了克服這個缺點,就有了「活動位置預測」這項輔助任務。它確定人的最終目的地,以彌補軌跡生成器和活動標籤預測之間的偏差。包括位置分類和位置回歸兩個任務。
位置分類的目的是預測最終位置坐標所在的網格塊。位置回歸的目標是預測網格塊中心(圖中的藍點)與最終位置坐標(紅色箭頭的末端)的偏差。
添加回歸任務的原因是,它能提供比網格區域更精確的位置。
但這 AI 只能預言人類 30 種行為模式
雖然模型設計中,考慮的非常周到,但面對現實情況時,仍舊會出現種種失敗案例:
左邊,預測人物要打開後備箱,但實際上是他只是站著。
右邊,預測任務將會向右前方前進,提著一些東西,但實際上他一直騎行,並向左前方拐彎,全然不顧前方即將到來的車輛。
從這些情況來看,模型應對一些場景還有些吃力。
此外,這個 AI 目前僅適用於美國國家標準局提供預定義的 30 個人類活動,例如關門、開門、關後備箱、開後備箱、提東西、打招呼、推、拉、騎自行車、跑、步行等等。
研究道路千萬條,這是第一條。
隨著研究的成熟,在自動化社會中,人類這一最不穩定的變量也就將會在控制之中。
未來,自動駕駛的汽車,可能再也不用擔心橫衝直撞的行人了,機器人也會與人類「和諧相處」了,畢竟人類想要幹什麼,系統都了如指掌。
如果你對這個領域感興趣,還請收好這篇論文的傳送門:(點這)
轉貼自: TechOrange
留下你的回應
以訪客張貼回應