Point Transformer의 핵심: Scalar Attention vs Vector Attention

Bean·2025년 9월 29일
0

인공지능

목록 보기
122/123

🌀 Point Transformer의 핵심: Scalar Attention vs Vector Attention

채널 단위까지 조절하는 벡터 어텐션의 힘


📍 들어가며

Point Transformer 논문은 포인트 클라우드(point cloud) 데이터를 처리하기 위해 Vector Attention(벡터 어텐션)이라는 독특한 메커니즘을 제안합니다.
기존 Transformer에서 흔히 사용되는 Scalar Attention(스칼라 어텐션)과 비교했을 때 어떤 차이가 있을까요?
핵심은 어텐션 가중치(attention weight)하나의 값인지, 채널별 벡터인지에 있습니다.


1️⃣ Scalar Attention: 한 값으로 모든 채널을 제어

공식

yi=ρjϕ(xi)ψ(xj)+δ,α(xj)y_i = \rho \sum_{j} \phi(x_i)^\top \psi(x_j) + \delta , \alpha(x_j)

동작 방식

  1. 쿼리 ϕ(xi)\phi(x_i) ψ(xj)\psi(x_j)의 내적 → 스칼라 값 계산
  2. Softmax ρρ로 정규화 → 하나의 가중치로 각 포인트 jj의 중요도 결정
  3. 모든 채널(feature dimension)에 동일한 비율로 곱함

📌 특징

  • 채널별 개별 조정 불가
  • 계산이 단순하고 빠름
  • Transformer의 기본 self-attention과 동일

2️⃣ Vector Attention: 채널별로 다른 가중치를 부여

공식

yi=ρjγ(β(ϕ(xi),ψ(xj))+δ)α(xj)y_i = \rho \sum_{j} \gamma\big(\beta(\phi(x_i), \psi(x_j)) + \delta\big) \odot \alpha(x_j)

동작 방식

  1. 쿼리와 키의 관계 ββ를 계산 (예: ϕ(xi)ψ(xj)\phi(x_i)-\psi(x_j) )
  2. MLP(γ)\text{MLP}(γ)를 거쳐 C차원 벡터 생성 → 채널별 가중치 벡터
  3. α(xj)α(x_j)채널 단위 곱(element-wise) 후 합산

📌 특징

  • 각 feature 채널마다 서로 다른 주목 강도 부여 가능
  • 공간적 관계와 채널별 특성을 더 세밀하게 반영
  • 계산은 더 복잡하지만 표현력 ↑

3️⃣ 핵심 비교

구분Scalar AttentionVector Attention
Attention weight스칼라(하나의 값)벡터(채널별 값)
채널 제어✖ (동일 가중)✔ (채널별 가중)
표현력단순·빠름강력·복잡
Point Transformer 적용사용 안 함기본 메커니즘

4️⃣ 직관적 비유

  • Scalar Attention → 음악 믹서에서 전체 볼륨만 조절

    “이 포인트가 중요하니 전체 소리를 0.8배로 줄여라”

  • Vector Attention → 각 악기(채널)별 개별 볼륨 조절

    “이 포인트가 중요하니 베이스는 크게, 드럼은 작게


5️⃣ Point Transformer가 Vector Attention을 택한 이유

포인트 클라우드는 좌표, 색상, 로컬 특징 등 채널별 의미가 뚜렷합니다.
거리·위치 정보(δδ)와 채널별 상관관계를 함께 반영하기 위해서는
채널 단위의 세밀한 가중치 제어가 가능한 Vector Attention이 필요합니다.


✅ 마무리

  • Scalar Attention: 모든 채널에 동일한 가중치 → 단순하지만 세밀함 부족
  • Vector Attention: 채널마다 다른 가중치 → 더 강력하고 표현력이 뛰어남

Point Transformer는 바로 이 벡터 어텐션으로 포인트 클라우드 처리의 한계를 뛰어넘습니다.


profile
AI developer

0개의 댓글