<source id="8ti10"></source>
  • <video id="8ti10"></video>
  • <source id="8ti10"></source>

        <u id="8ti10"><video id="8ti10"></video></u>
      1. 申請試用
        登錄
        核心技術
        以原創技術體系為根基,SenseCore商湯AI大裝置為核心基座,布局多領域、多方向前沿研究,
        快速打通AI在各個垂直場景中的應用,向行業賦能。

        商湯提出行為識別的時間交錯網絡

        2020-05-13

        AAAI: https://arxiv.org/abs/2001.06499
        Solution: https://arxiv.org/abs/2003.05837
        Github: https://github.com/Sense-X/X-Temporal

        本文主要介紹三個部分:
        ? 一個高效的SOTA視頻特征提取網絡TIN,發表于AAAI2020
        ? ICCV19 MMIT多標簽視頻理解競賽冠軍方案,基于TIN和SlowFast
        ? 一個基于PyTorch,包含大量視頻理解SOTA模型的代碼庫X-Temporal

        本文將介紹一種用于行為識別的時間交錯網絡(TIN temporal interlacing network)。該網絡想較當前SOTA的基礎上,在實現6倍加速的同時,還多個評測數據集上獲得了4%的提升。同時該方法作為主力方法,在2019年的ICCV Multi Moments In Time challenge中取得了冠軍(Leaderboard)。我們還release了一個基于PyTorch的開源動作識別代碼庫X-Temporal,希望可以進一步推動動作識別社區的發展。

         

        作者信息

        本文工作由港中文MMLab、清華大學與商湯研究院X-Lab聯合出品,具體內容如下:

        5ec1c06215475.jpg

        簡介

        行為識別,是計算機視覺領域長期關注的問題,在視頻理解、行為檢測、手勢識別等領域都有著廣泛的應用。領域內之前的的工作主要集中在使用卷積神經網絡和各種時序模型(例如光流法,循環神經網絡和3D卷積)相結合的方式學習時空特征。然而由于這些框架需要交替地學習時間和空間特征,使得它們需要消耗大量的計算資源和時間成本。能穩定提高模型性能的光流法需要用到的光流信息抽取非常耗時,幾乎不可能用于實時計算。由此,我們自然而然的產生了一個疑問:那就是我們能否將時間信息嵌入到空間信息中,以便可以一次同時聯合學習兩個域中的信息。

        5ec1c089142c2.jpg

        本文提出了一個簡單而強大的模塊-時序交錯網絡(Temporal Interlace Network)來嘗試解決這個問題。TIN不學習時間特征,而是通過交錯過去到未來以及未來到過去的空間特征來融合時-空信息。一個可微分的子模塊可以計算出交錯時的特征在時序維度上的偏移量,同時可以依據偏移量來將特征重新進行交錯排列,使每組特征在時間維度上位移不同的距離。從而用便捷快速的特征位移操作替代了3D卷積來實現相鄰幀的信息交換。這使網絡的參數量和計算量遠低于普通3D卷積網絡,使網絡整體變得相當輕量化。在文中我們也從理論上證明了可學習的時序交錯模塊本質上等同于受約束的時序卷積網絡。

         

        算法詳情

        時序交錯網絡的框架如圖二所示,該框架主要由偏移預測網絡,權重預測網絡和可微時序移動模塊組成。其整體將作為一個模塊插入到Resnet的卷積層之前。對于整個輸入的Feature Map,我們先將其3/4的channel對應的特征固定住,再將余下1/4的特征沿著channel維度分為4組,每組會應用不同的偏移量。

        5ec1c10fa182a.jpg

        其中偏移預測網絡主要負責預測出其中兩組沿著T維度的偏移量,然后剩下兩組的偏移量是前兩組的相反值。這樣我們可以保證信息在時序維度上的流動是對稱的,更有利于后續特征的融合。權重網絡主要負責預測融合后時序維度上特征的權重。如果原始輸入是8幀,該網絡便會為每組輸出8個值分別代表每一幀的權重然后會直接用此值來加權融合過后每一幀的feature。我們也同時發現位于兩端的幀所預測的權重大多會比較低,這里我們的猜想是兩端的幀的特征在沿著時序移動時由于一邊沒有其他幀會損失掉一部分,因此導致了網絡給他們一個較低的權重來彌補信息損失帶來的影響。

        可微時序移動模塊的框架如圖三所示,它可以將各組按channel維度切分出來的特征沿著時間維度移動任意個單位。其實現方式主要是通過一維線性差值實現的。其中我們還采用了時序擴展技術,以保證偏移之后位于視頻之外的特征不為空。舉個例子,原本位于T=0的特征在向前偏移0.5個單位后便位于T=-0.5的位置,該位置理論上是不存在特征的,但我們通過假設T=-1位置的特征全為0使位于-0.5的位置取到了特征,也即Feature(T=-0.5) = ?(Feature(T=-1) + Feature(T=0))。

        5ec1c17fde40f.jpg

        實驗

        表一對比了在Something-Something v1 數據集上TIN與其他主流模型的性能。在測試性能時每個視頻均只采用1 Crop進行測試,且分辨率和訓練時保持一致。

        5ec1c1eabcc01.jpg

        可視化結果

        圖五將網絡學習得到offset和weight進行了可視化分析

         

        。從offset的可視化結果我們可以發現在淺層網絡中的偏移量非常小,在網絡逐漸變深的過程中學習到的偏移量才逐漸變大。我們認為淺層的神經網絡主要學習2D空間特征,在較深的網絡中才開始逐漸學習時序維度特征,這和之前3D卷積網絡中得到的結論是類似的。

        5ec1c20a2190c.jpg

        基于TIN的ICCV MMIT比賽方案

        在ICCV19 MMIT多標簽視頻理解競賽中,我們將TIN與SlowFast算法進行融合,取得了ICCV multi-moments in time challenge競賽的冠軍成績。ICCV MMIT多標簽視頻理解比賽旨在對3s短視頻中內的動作進行理解。其包含超過100萬段視頻,并標記了超過200萬個 動作標簽,是目前最大規模的視頻理解挑戰。巨大的數量與類別,對計算機算法提出了嚴苛的要求。

        我們對2D與3D方法均進行了廣泛的嘗試。3D方法以SlowFast網絡及其變種為主,包括單純的slow分支,時域密集的fast分支,以及原版的SlowFast。結果下表所示,時域密集的fast分支(32*2)取得了最高的單模型成績。我們還發現,測試階段的多尺度以及密集采樣可以大幅提高算法性能。

        5ec1c25c51b60.jpg2D方法以我們的方法TIN,我們也嘗試了TSN, TSM等方法,結果如下表所示,TIN大幅的提高了動作識別的準確度,在將TIN與3D方法進行融合后,我們在驗證集上取得了67.22mAP的成績,在測試集上取得了60.77mAP的成績,名列第一(Leaderboard)。

        5ec1c27cd1f2e.jpg

        X-Temporal代碼庫介紹

        在上述算法和競賽的準備過程中,遇到的一個困難是缺乏一個基于PyTorch并廣泛支持眾多SOTA方案且具有高效訓練能力的視頻理解代碼庫。為此,我們開發了X-Temporal repo。其具有以下特征:

        1. 支持數據集廣泛,并可處理多分類數據集。包括UCF101, Hmdb51, Jester, Kinetics-600, Kinetics-700, Moments in Time , Multi Moments in Time, Something v1, Something v2等。
        2. 同時支持處理原視頻在線抽幀和抽幀后的圖片作為輸入,支持多種解碼方案。
        3. 提供了最新最全的通用視頻分類主流方法的實現,包括2D方法 ( TSN, TSM, TIN ) 和3D方法( SlowFast, ResNet-3D, R(2+1)D ), 并在多個數據集取得了SOTA的性能(包含我們在ICCV19 MMIT競賽第一名的所有model)。
        4. 模塊化設計使易于添加新的2D或者3D模型。
        5. 對部分模型編寫了CUDA Operator,大幅提高了其性能。
        6. 我們后續會提供基于該庫的Model Zoo,方便用戶進行Pretrain等操作。
        代碼庫現已開源:https://github.com/Sense-X/X-Temporal

        <source id="8ti10"></source>
      2. <video id="8ti10"></video>
      3. <source id="8ti10"></source>

            <u id="8ti10"><video id="8ti10"></video></u>
          1. 动漫人物打扑克视频