Source-linked AI summary

Point Transformer

Nico Engel, Vasileios Belagiannis, Klaus Dietmayer

arXiv:2011.00931v2cs.CV

TL;DR

순서가 없는 point set에는 입력 순서에 의존하지 않으면서 point 간 관계를 보존하는 표현이 필요하다. Point Transformer는 학습된 point selection과 local-global multi-head attention을 결합해 92.8% classification accuracy를 달성했으며, attention-based methods를 능가하고 state-of-the-art methods와 대등한 성능을 보인다.

  • 문제

    Standard Transformer attention은 순서에 의존하므로, 기하학적 관계와 shape information을 보존하는 permutation-invariant point-set representation이 필요하다.

  • 방법

    Point Transformer는 multi-head attention, SortNet을 통한 학습된 Top-K point selection, 그리고 local feature와 global shape context를 연결하는 local-global attention을 사용한다.

  • 결과

    92.8% classification accuracy는 보고된 shape-classification benchmark에서 attention-based methods를 능가하고 state-of-the-art methods와 대등하다.

  • 시사점 및 한계

    이 model은 shape classification과 part segmentation을 위해 sorted, permutation-invariant feature lists를 생성하며, local geometry와 global point-cloud structure를 연결한다.

  • 시사점 및 한계

    Multi-head attention은 입력 point 수에 대해 quadratic complexity, O(N^2 · d_m)를 갖는다.

Abstract

from arXiv · show

In this work, we present Point Transformer, a deep neural network that operates directly on unordered and unstructured point sets. We design Point Transformer to extract local and global features and relate both representations by introducing the local-global attention mechanism, which aims to capture spatial point relations and shape information. For that purpose, we propose SortNet, as part of the Point Transformer, which induces input permutation invariance by selecting points based on a learned score. The output of Point Transformer is a sorted and permutation invariant feature list that can directly be incorporated into common computer vision applications. We evaluate our approach on standard classification and part segmentation benchmarks to demonstrate competitive results compared to the prior work. Code is publicly available at: https://github.com/engelnico/point-transformer

I. 서론

Point Transformer는 set pooling을 attention 기반의 permutation-invariant 표현으로 대체해 순서가 없고 동적이며 비구조적인 point set 처리의 어려움을 해결한다. SortNet 모듈은 학습된 score로 중요한 point를 선택하고, local-global attention은 computer vision task를 위해 기하 정보와 shape 정보를 연결한다.

  • I. 서론: 이 방법은 point set의 세 가지 핵심 어려움인 permutation invariance, 동적 cardinality, 강건한 처리가 필요한 비구조적 입력을 대상으로 한다.Point set을 voxel grid나 렌더링된 view로 변환하면 shape 정보가 손실될 수 있으며, 고정 길이 latent pooling은 입력 cardinality를 충분히 반영하지 못할 수 있다.
  • I. 서론: Local-global attention은 local feature와 global feature를 연결해 point set의 기하학적 의존성과 객체 shape 정보를 포착한다.이렇게 얻은 표현은 일반적인 computer vision application에 사용하도록 설계되었다.
  • I. 서론: Point Transformer는 multi-head attention을 사용해 순서가 없고 비구조적인 point set에 직접 작동한다.이 architecture는 기존 set pooling과 관련된 고정 크기 병목을 피하면서 permutation-invariant 표현을 보존하도록 설계되었다.
  • I. 서론: SortNet은 학습된 score에 따라 중요한 point를 선택해 permutation invariance를 유도하고, set pooling을 대체하는 정렬된 subset을 생성한다.이러한 top-k 선택은 local geometric relation과 spatial relation을 인코딩한다.
  • I. 서론: Point Transformer는 두 가지 표준 benchmark에서 평가되며, competitive results를 달성한다.서론에서는 이 평가를 기존 set pooling에 대한 제안된 attention 기반 대안의 검증으로 제시한다.

II. 관련 연구 · A. 점 집합 처리

이 절에서는 불규칙하고 순서가 없는 3D 점 집합을 처리하는 voxel 기반, view 기반, 직접 점 집합 처리, point convolution 방법을 살펴본다. 또한 PointNet의 permutation invariance와 전역 표현을 강조하는 한편, local structure와 relation을 잃는다는 한계를 지적한다.

  • II. 관련 연구: 관련 연구 논의에서는 본 연구와 관련된 3D 점 처리 방법을 살펴본다.
  • A. 점 집합 처리: Point cloud는 불규칙하고 순서가 없으며 크기가 가변적이므로, 기존 방법은 3D CNN 처리를 위해 이를 voxel grid와 같은 순서가 있는 표현으로 변환한다.
  • A. 점 집합 처리: View 기반 방법은 point cloud를 전통적인 CNN을 위한 구조화된 2D image로 렌더링하고 [12],, multi-view 방법은 여러 각도를 사용해 viewpoint occlusion에 대응한다 [11], [12],,.
  • A. 점 집합 처리: PointNet [13]은 3D 점 집합을 직접 처리하고 입력 permutation invariance를 달성해, 구조화된 표현으로 변환할 필요를 없앤다.
  • A. 점 집합 처리: PointNet은 각 점에 shared-weight MLP를 적용하고 max pooling과 같은 symmetric pooling을 사용해 전역 permutation-invariant feature representation을 생성한다.
  • A. 점 집합 처리: max pooling은 local structure와 relation을 파괴하므로, PointNet은 많은 state-of-the-art 방법의 표준을 확립했음에도 local information을 인코딩할 수 없다 [1],.
  • A. 점 집합 처리: Point-cloud convolution 연구는 불규칙한 3D 점 집합을 위한 연산을 정의하며, 여기에는 KPConv, SpiderCNN, PointCNN 이 포함되고 다양한 task에서 state-of-the-art performance를 달성한다.

B. 어텐션 · III. 기초

이 절은 자연어 처리에서 point-cloud 네트워크에 이르기까지 attention의 발전을 추적하며, permutation-invariant set 처리와 visual task를 위한 point relation 및 shape information의 활용을 강조한다. Point-cloud 처리를 입력 permutation에 불변인 set function으로 정식화한다.

  • B. 어텐션: Attention은 자연어 처리, [33]에서 시작되었으며, 순차적 encoder-decoder RNN은 서로 먼 입력 간 dependency를 모델링하는 데 어려움을 겪었다.Bahdanau et al. 은 전체 입력 sequence를 고려하여 이러한 한계를 해결하기 위해 attention을 도입했다.
  • B. 어텐션: Attention 기반 네트워크는 point를 sequence로 취급하는 방식으로 point cloud에 맞게 조정되었으며, machine translation과 point-cloud processing에서 뛰어난 성능을 달성했다.이 절은 이러한 조정을 sequence data에서 unordered point set으로 attention 기반 modeling을 전이하는 방법으로 설명한다.
  • B. 어텐션: Vinyals et al. 은 attention을 사용해 unordered set을 처리하고 네트워크가 숫자를 정렬할 수 있음을 보였지만, 일반적인 set만 다루었다.반면 본 접근법은 shape와 geometry information을 포함하는 서로 다른 point-cloud task를 대상으로 한다.
  • B. 어텐션: ShapeContextNet 은 trainable self-attention을 통해 shape-context selection과 feature aggregation을 결합하지만, 여전히 irregularity에 민감한 수동 선택 kernel에 의존한다.계층적 shape-context operation은 convolutional building block으로 작동하고, self-attention은 수동적인 parameter tuning을 줄인다.
  • B. 어텐션: Point2Sequence 은 LSTM 기반 attention module로 local feature를 추출하고 set pooling을 통해 global vector를 구성하지만, sequence-to-sequence 설계는 multi-head attention 보다 계산적으로 더 복잡하다.또한 max pooling을 사용하므로 이 논문에서 논의하는 방법과 구별된다.
  • B. 어텐션: Tao et al. 은 rotation-invariant point-cloud representation과 함께 multi-head attention을 사용하는 반면, SortNet을 포함한 Point Transformer는 attention을 사용해 point를 선택한다.그들의 접근법은 rotation invariance와 global max pooling에 초점을 두며, 여기서 인용한 대조점은 attention 기반 point selection이다.
  • III. 기초: Point set에서 attention은 중요한 point에 집중하며, 원하는 set function f: P → R^O는 unordered input P를 입력 permutation에 불변인 output으로 매핑한다.point는 laser scan과 같은 object를 나타내므로 서로 의존적인 것으로 취급된다.
  • III. 기초: 핵심 목표는 attention을 사용해 object classification과 segmentation을 포함한 visual task를 위한 point 간 relation과 shape information을 포착하는 것이다.입력은 P = {p_i ∈ R^D, i = 1, . . . , N}으로 정의된다.

A. 어텐션 · B. 트랜스포머

어텐션은 입력 간 중요도 가중 관계를 계산하며, 트랜스포머 아키텍처는 멀티헤드 projection과 encoder-decoder 처리를 통해 이 메커니즘을 확장한다. 그러나 출력이 입력 순서에 의존하므로 순서가 없는 point set에 직접 사용할 수 없으며, 이는 Point Transformer의 도입 동기가 된다.

  • A. 어텐션: 어텐션은 query-key 쌍별 점수를 계산하고 이를 사용해 value에 가중치를 부여함으로써 query, key, value를 출력으로 mapping한다.따라서 어텐션 출력은 가중합이며, 더 높은 점수의 관계에 더 큰 가중치가 부여된다.
  • A. 어텐션: Scaled dot-product attention은 QK^T/√d_k에 softmax를 적용해 입력 point 간 관계 가중화를 안정화한다.결과 점수로 value V에 가중치를 부여해 point 관계를 포착한다.
  • B. 트랜스포머: 트랜스포머는 encoder-decoder stack과 multi-head attention으로 어텐션을 확장하며, Point Transformer 아키텍처의 기반을 형성한다.각 head는 concatenation과 output projection에 앞서 별도의 projection subspace에서 관계를 학습한다.
  • B. 트랜스포머: Multi-head attention은 query, key, value를 h개의 subspace로 독립적으로 projection하고, 병렬로 어텐션을 적용한 뒤 결과를 concatenation하고 projection한다.Head 차원은 d_k = d_v = d_m/h로 축소해 전통적 어텐션과 유사한 computational complexity를 유지한다.
  • B. 트랜스포머: 트랜스포머 encoder와 decoder layer는 multi-head attention을 pointwise feed-forward layer, residual connection, layer normalization과 결합한다.여러 어텐션 layer를 순차적으로 구성해 higher-order dependency를 포착할 수 있다.
  • B. 트랜스포머: 어텐션 출력은 입력 feature의 순서를 따르므로 Transformer와 multi-head attention은 permutation invariant가 아니며 순서가 없는 point data를 직접 처리할 수 없다.이 한계가 순서가 없는 point set을 위한 새로운 Point Transformer 아키텍처의 동기를 제공한다.
  • B. 트랜스포머: Point processing에서 self-attention은 순서가 없는 point set의 latent feature에 대해 작동하며, cross-attention은 해당 feature를 두 번째 projected set과 연관시킨다.두 representation은 latent dimension d_m을 사용하며, cross-attention은 N × d_m 출력을 생성한다.

IV. POINT TRANSFORMER

Point Transformer는 SortNet을 통해 permutation invariance를 달성하고 cross multi-head attention을 사용해 local 및 global feature를 연결하는 point set용 multihead-attention network다. 아키텍처는 정렬된 local feature, global point-set feature, task-specific classification 또는 part-segmentation head를 결합한다.

  • 아키텍처: Point Transformer는 cross multi-head attention을 통해 local 및 global point-set feature를 연결하면서 SortNet으로 permutation invariance를 유지한다.SortNet은 local feature를 선택하고 정렬해 network가 순서가 없는 point set을 처리할 수 있도록 한다.
  • 아키텍처: 아키텍처는 세 가지 구성 요소로 이루어진다: 정렬된 local feature set을 위한 SortNet, global feature 생성, local-global attention.이 구성 요소들은 각각 network의 local branch, global branch, feature-relation mechanism에 해당한다.
  • 아키텍처: 두 개의 독립적인 브랜치는 SortNet을 통해 local feature를 생성하고 whole-point-set extraction network를 통해 global feature를 생성한다.이후 아키텍처는 이러한 representation을 연결하고 task에 따라 classification 또는 part-segmentation head를 적용한다.
  • 입력 표현: network는 D-dimensional point로 구성된 point set을 입력으로 받으며, xyz 좌표에는 일반적으로 D = 3을 사용하고 optional intensity 또는 normal feature를 추가할 수 있다.예를 들어 lidar intensity를 추가하면 D = 4이고 point normal을 포함하면 D = 6이다.

A. SORTNET

SortNet은 공간 관계와 고차 관계가 풍부한 latent representation에서 point score를 학습해 permutation-invariant local feature를 생성한다. 높은 score의 point를 선택하고 정렬하며, neighborhood feature를 집계하고, 여러 subspace별 SortNet을 결합해 고정 크기의 정렬된 feature set을 구성한다.

  • SortNet: SortNet은 각 input point에 대해 학습 가능한 score를 사용해 서로 다른 subspace에서 permutation-invariant local feature를 생성한다.self multi-head attention 이후 score를 계산하며, row-wise feed-forward network가 각 feature를 scalar로 축소한다.
  • SortNet: self multi-head attention layer는 score를 생성하기 전에 latent point feature 간의 공간 관계와 고차 관계를 포착한다.attention layer를 통해 공간 관계가 반영된 scalar score를 얻는다.
  • SortNet: SortNet은 score가 가장 높은 K ≤ N개의 input point를 선택하고 score에 따라 정렬한 뒤, Euclidean radius r 내의 neighboring point를 그룹화해 local feature를 인코딩한다.ball-query search가 각 선택된 point 주변의 point를 집계해 선택된 set의 local feature를 생성한다.
  • SortNet: 선택된 point, score, grouped local feature를 결합해 local characteristic을 인코딩하면서 score 계산을 optimization에 통합한다.이를 통해 선택된 point에 대한 local feature vector를 생성한다.
  • SortNet: M개의 개별 SortNet이 서로 다른 subspace를 처리하고, 이들의 concatenated output이 고정 크기의 정렬된 local feature set을 구성한다.선택된 set이 정렬되어 있으므로 결과 local feature set도 정렬된다.

B. 전역 특징 생성

전역 브랜치는 다중 스케일 그룹화와 furthest point sampling으로 입력 point cloud를 축소한 다음, 이웃 특징을 전역 표현으로 집계한다.

  • B. 전역 특징 생성: 전역 브랜치는 Qi et al.의 [7] set abstraction 다중 스케일 그룹화 레이어를 사용하고, furthest point sampling을 통해 N개 점을 N′ < N개로 서브샘플링하며, 차원이 d_m인 이웃 특징을 집계한다.이러한 축소는 계산 시간과 메모리를 절약하면서 전역 표현을 생성하기 위한 것이다.

C. 로컬-글로벌 어텐션

Point Transformer는 self- 및 cross-multi-head attention을 통해 로컬 및 글로벌 point-cloud feature를 연결하여 로컬 문맥과 전체 형상을 포착한다. 선택된 각 로컬 feature에 대해 글로벌 feature를 scoring함으로써 set pooling 없이 point cloud 전체의 구조를 보존한다.

  • C. 로컬-글로벌 어텐션: 로컬-글로벌 어텐션은 로컬 및 글로벌 feature set 내부에서 self multi-head attention을 적용한 뒤, 모든 글로벌 feature를 모든 로컬 feature와 비교해 scoring하여 문맥과 형상을 연결한다.이 메커니즘은 로컬 feature F_L과 글로벌 feature F_G를 사용하며, self-attention 단계 다음에 cross-attention A_cross가 이어진다.
  • C. 로컬-글로벌 어텐션: 최종 행별 feed-forward layer는 feature dimension을 d′_m < d_m으로 줄여 계산 복잡도를 낮춘다.그 결과 생성되는 로컬-글로벌 어텐션 매핑의 output dimension은 d′_m이다.
  • C. 로컬-글로벌 어텐션: SortNet이 선택한 로컬 feature에 대해 글로벌 feature를 scoring하면 로컬 특성을 유지하면서 point cloud 전체에 대한 정보를 보존할 수 있으며, shape representation을 set-pooling으로 축소하는 과정을 피할 수 있다.로컬 feature는 input의 부분집합 F_L ⊆ P를 이루며, 로컬-글로벌 어텐션 output에는 underlying shape과 로컬 정보가 모두 포함된다.

D. 전체 모델

Point Transformer는 local-global attention을 통해 독립적인 local feature extraction branch와 global feature generation branch를 결합해 downstream task에 사용할 permutation-invariant ordered representation을 생성한다. Shape classification은 이 representation을 object-class probability로 매핑하고, part segmentation은 cross multi-head attention을 사용해 point별 class probability를 생성한다.

  • D. 전체 모델: Point Transformer는 SortNet 기반 local feature extraction을 global feature generation 및 local-global attention과 결합해, dimension이 d′_m으로 축소된 길이 K · M의 permutation-invariant ordered representation을 생성한다.SortNet은 latent feature에서 얻은 learned score를 사용해 input point를 선택하고, local-global attention은 그 결과로 얻은 spatial signature와 global feature를 연결한다.
  • Shape Classification: Shape classification은 sorted local-global attention output을 flatten하고, 이를 row-wise로 C class score까지 축소한 뒤 softmax probability를 적용한다.Classification head는 fixed-size representation을 각 object class당 하나의 output으로 매핑한다.
  • D. 전체 모델: 이 모델은 관련 set-pooling 및 attention approach와 함께 ModelNet object classification 및 ShapeNet part segmentation benchmark에서 평가된다.Table 1은 비교 범위를 정의하지만, 제공된 passage에는 result value가 없다.
  • Part Segmentation: Part segmentation은 aggregated shape-context feature와 각 input point 사이에 cross multi-head attention을 적용해 모든 point를 전체 cloud와 연결한다.Projected global feature는 self multi-head attention도 사용하며, Point Transformer output과 attention을 수행하기 전에 set abstraction layer를 거친다.
  • Part Segmentation: Part segmentation은 각 point representation을 C class score로 축소하고 softmax를 적용해 point별 class probability를 생성한다.결과 matrix의 dimension은 R^N×d′_m이며, 이후 row-wise reduction을 통해 R^N×C로 축소된다.

V. 실험 · A. 포인트 클라우드 분류 · B. 포인트 클라우드 파트 분할

Point Transformer는 포인트 집합, attention 기반, 포인트 convolution 방법 [7], [13],,,, ,, 과 비교하여 표준 포인트 클라우드 분류 및 파트 분할 benchmark에서 평가된다. 분류 정확도 92.8%를 달성하며, 실험에서는 network 설계 구성 요소를 분석하고 분할 평가 범위를 정의한다.

  • V. 실험: 실험 전반에서 직접 포인트 집합 방법 [7], [13],, attention 기반 방법,,, 포인트 클라우드 convolution 방법 , 과 결과를 비교한다.network는 PyTorch 로 구현하고 RAdam optimizer [41]를 사용한다.
  • A. 포인트 클라우드 분류: Point Transformer는 40개 category로 구성되며 training sample 9843개와 test sample 2468개를 포함하는 ModelNet40에서 평가된다.실험에서는 Qi et al. [7]의 수정 dataset에서 normal vector가 포함된 10,000개 sampled point를 사용한다.
  • A. 포인트 클라우드 분류: network 설계 분석에서는 SortNet 변형을 평가하여 learnable scoring의 효과를 보이고, global feature 생성을 위한 sampling 방법을 비교한다.이러한 비교 결과는 Table 2에 제시된다.
  • A. 포인트 클라우드 분류: ModelNet40에서 92.8% 분류 정확도를 달성하여 attention 기반 방법을 능가하고 state-of-the-art 방법과 대등한 성능을 보인다.결과는 명시된 비교 그룹에 따라 Table 1에 보고된다.
  • B. 포인트 클라우드 파트 분할: 파트 분할은 training sample 13,998개, test sample 2874개, object category 16개, part label 50개를 포함하는 ShapeNet에서 평가된다.이 task는 모든 point의 class category를 예측하며 underlying shape에 대한 이해를 요구한다.

C. 네트워크 복잡도 · D. 하이퍼파라미터 연구 · E. Point Transformer 설계 분석

Point Transformer의 복잡도, 하이퍼파라미터 설정, 모듈 동작, 회전 강건성, 학습된 point selection을 분석한다. 결과는 효율적인 추론, 회전 상황에서도 강건한 classification, 그리고 shape를 인식하며 상호보완적인 SortNet selection을 보여준다.

  • C. 네트워크 복잡도: Nvidia GeForce 1080Ti에서 수행한 실험을 통해 관련 방법들과 network size 및 inference time을 비교한다.Table 3은 비교 범위를 network size 및 inference time으로 정의한다.
  • D. 하이퍼파라미터 연구: ModelNet40에서 서로 다른 SortNet 개수와 Top-K selection을 평가하며, 설정은 grid search로 선택한다.Tables 4 및 5는 각각 ModelNet40 조합과 classification 및 part-segmentation 하이퍼파라미터를 보고한다.
  • E. Point Transformer 설계 분석: 학습된 score가 permutation invariance를 유지하면서 task-relevant point를 선택하는지 검증하기 위해 SortNet을 furthest-point 및 random selection과 비교하는 ablation을 수행한다.대안 sampling 실험에서는 permutation invariance가 제거되는 반면, 학습된 Top-K pipeline은 이를 유지한다.
  • E. Point Transformer 설계 분석: MSG set abstraction을 complete input cloud와 N′ = 128개의 sampled point를 포함한 대안 sampling method로 대체하여 global-feature generation을 ablation한다.각 variant는 complete Point Transformer pipeline을 사용해 classification accuracy로 평가한다.
  • E. Point Transformer 설계 분석: random rotation에서의 92.3% classification accuracy는 rotation이 없을 때의 92.8%와 비교되며, PointNet++는 91.9%에서 88.6%로 하락한다.Point Transformer는 rotation을 적용해 학습하지 않았지만, PointNet++에는 동일한 input rotation을 적용했다.
  • E. Point Transformer 설계 분석: SortNet은 서로 조금 다른 shape에서도 유사한 local region을 선택해 underlying shape에 대한 인식을 시사하며, 여러 module은 함께 object structure의 상호보완적 요소를 보존한다.M = 8일 때 서로 다른 SortNet module은 서로 다른 object part에 집중하고, underlying shape를 가능한 한 많이 종합적으로 보존한다.

VI. 결론 및 향후 연구

Point Transformer는 불규칙한 point cloud를 처리하는 permutation-invariant neural network로, 학습된 point selection과 local-global feature relation을 사용해 shape classification과 part segmentation을 수행한다. 향후 연구에서는 최신 self-attention 발전을 통해 Transformer 효율성을 개선하고자 한다 [44], [45].

  • VI. 결론 및 향후 연구: Point Transformer는 multi-head attention을 사용해 불규칙한 point cloud를 처리하고, shape classification과 part segmentation을 위한 정렬된 permutation-invariant feature list를 생성한다.핵심 모듈은 학습된 score를 사용해 latent feature representation에서 point를 선택한다.
  • VI. 결론 및 향후 연구: 이 architecture는 local feature를 전역 point-cloud 구조와 연결하고, context를 활용해 shape awareness를 유도한다.
  • VI. 결론 및 향후 연구: 학습된 point-selection mechanism은 지정된 task의 importance를 기반으로 하며, 향후 연구에서는 최신 self-attention advances를 사용해 효율성을 개선할 예정이다 [44], [45].
Loading 2011.00931v2…