Point Transformer V3:更簡單、更快、更強!
本文經自動駕駛之心公眾號授權轉載,轉載請聯系出處。
原標題:Point Transformer V3: Simpler, Faster, Stronger
論文鏈接:https://arxiv.org/pdf/2312.10035.pdf
代碼鏈接:https://github.com/Pointcept/PointTransformerV3
作者單位:HKU SH AI Lab MPI PKU MIT
論文思路:
本文無意在注意力機制內尋求創新。相反,它側重于利用規模(scale)的力量,克服點云處理背景下準確性和效率之間現有的權衡。從 3D 大規模表示學習的最新進展中汲取靈感,本文認識到模型性能更多地受到規模的影響,而不是復雜的設計。因此,本文提出了 Point Transformer V3 (PTv3),它優先考慮簡單性和效率,而不是某些機制的準確性,這些機制對 scaling 后的整體性能影響較小,例如用以特定模式組織的點云的高效序列化鄰域映射來替換 KNN 的精確鄰域搜索。這一原理實現了顯著的 scaling,將感受野從 16 點擴展到 1024 點,同時保持高效(與前身 PTv2 相比,處理速度提高了 3 倍,內存效率提高了 10 倍)。PTv3 在涵蓋室內和室外場景的 20 多個下游任務中取得了最先進的結果。通過多數據集聯合訓練的進一步增強,PTv3 將這些結果推向了更高的水平。
網絡設計:
3D 表示學習的最新進展 [85] 通過引入跨多個 3D 數據集的協同訓練方法,在克服點云處理中的數據規模限制方面取得了進展。與該策略相結合,高效的卷積 backbone [12] 有效地彌補了通常與 point cloud transformers [38, 84] 相關的精度差距。然而,由于與稀疏卷積相比,point cloud transformers 的效率存在差距,因此 point cloud transformers 本身尚未完全受益于這種規模優勢。這一發現塑造了本文工作的最初動機:用 scaling principle 的視角重新權衡 point transformers 的設計選擇。本文認為模型性能受規模的影響比受復雜設計的影響更顯著。
因此,本文引入了 Point Transformer V3 (PTv3),它優先考慮簡單性和效率,而不是某些機制的準確性,從而實現 scalability 。這樣的調整對 scaling 后的整體性能影響可以忽略不計。具體來說,PTv3 進行了以下調整以實現卓越的效率和 scalability :
- 受到最近兩項進展 [48, 77] 的啟發,并認識到結構化非結構化點云的 scalability 優勢,PTv3 改變了由 K-Nearest Neighbors (KNN) query 定義的傳統空間鄰近性,占 forward time 的 28%。相反,它探索了點云中根據特定模式組織的序列化鄰域的潛力。
- PTv3 采用專為序列化點云量身定制的簡化方法,取代了更復雜的注意力 patch 交互機制,例如 shift-window(阻礙注意力算子的融合)和鄰域機制(導致高內存消耗)。
- PTv3 消除了對占 forward time 26% 的相對位置編碼的依賴,有利于更簡單的前置稀疏卷積層。
本文認為這些設計是由現有 point cloud transformers 的 scaling principles 和進步驅動的直觀選擇。重要的是,本文強調了認識 scalability 如何影響 backbone 設計的至關重要性,而不是詳細的模塊設計。
這一原則顯著增強了 scalability ,克服了準確性和效率之間的傳統權衡(見圖 1)。與前身相比,PTv3 的推理速度提高了 3.3 倍,內存使用量降低了 10.2 倍。更重要的是,PTv3 利用其固有的 scale 感知范圍的能力,將其感受野從 16 點擴展到 1024 點,同時保持效率。這種 scalability 支撐了其在現實世界感知任務中的卓越性能,其中 PTv3 在室內和室外場景中的 20 多個下游任務中取得了最先進的結果。PTv3 通過多數據集訓練進一步擴大其數據規模 [85],進一步提升了這些結果。本文希望本文的見解能夠激發未來這一方向的研究。
圖 1.Point Transformer V3 (PTv3) 概述。與其前身PTv2[84]相比,本文的PTv3在以下方面表現出優越性:1.性能更強。PTv3 在各種室內和室外 3D 感知任務中均取得了最先進的結果。2.更寬的感受野。受益于簡單性和效率,PTv3 將感受野從 16 點擴展到 1024 點。3、速度更快。PTv3 顯著提高了處理速度,使其適合對延遲敏感的應用程序。4. 降低內存消耗。PTv3 減少了內存使用量,增強了更廣泛情況下的可訪問性。
圖 2. PTv2 各組件的延遲樹形圖。本文對 PTv2 的每個組件的 forward time 比例進行基準測試和可視化。KNN Query 和 RPE 總共占用了 54% 的 forward time 。
圖 3.點云序列化。本文通過三元組可視化展示了四種序列化模式。對于每個三元組,顯示了用于序列化的空間填充曲線(左)、空間填充曲線內的點云序列化變量排序順序(中)以及用于局部注意力的序列化點云的 grouped patches(右)。四種序列化模式的轉換允許注意力機制捕獲各種空間關系和上下文,從而提高模型準確性和泛化能力。
圖 4. Patch grouping。(a) 根據從特定序列化模式導出的順序對點云進行重新排序。(b) 通過借用相鄰 patches 的點來填充點云序列,以確保它可以被指定的 patch size 整除。
圖 5. Patch interaction。(a) Standard patch grouping,具有規則的、非移位的排列;(b) 平移擴張,其中點按規則間隔聚合,產生擴張效果;(c) Shift Patch,采用類似于 shift window 方法的移位機制;(d) Shift Order,其中不同的序列化模式被循環分配給連續的注意力層;(d) Shuffle Order,序列化模式的序列在輸入到注意層之前被隨機化。
圖 6. 整體架構。
實驗結果:
總結:
本文介紹了 Point Transformer V3,它朝著克服點云處理中準確性和效率之間的傳統權衡邁出了一大步。在對 backbone 設計中 scaling principle 的新穎解釋的指導下,本文認為模型性能受規模的影響比受復雜設計的影響更深刻。通過優先考慮效率而不是影響較小的機制的準確性,本文利用規模的力量,從而提高性能。簡而言之,通過使模型更簡單、更快,本文可以使其變得更強大。
引用:
Wu, X., Jiang, L., Wang, P., Liu, Z., Liu, X., Qiao, Y., Ouyang, W., He, T., & Zhao, H. (2023). Point Transformer V3: Simpler, Faster, Stronger. ArXiv. /abs/2312.10035
原文鏈接:https://mp.weixin.qq.com/s/u_kN8bCHO96x9FfS4HQGiA