๐SE(3)-Equivariant ๋ฆฌ๋ทฐ
๐ Ping. ๐ Ring. โ๏ธ Dig. A tiered review series: quick look, key ideas, deep dive.
- โจ Equivariant neural networks๋ ๋ก๋ด ํ์ต์์ ๋ฐ์ดํฐ ํจ์จ์ฑ๊ณผ ์ผ๋ฐํ ๋ฅ๋ ฅ์ ํฅ์์ํค๊ธฐ ์ํด SE(3)์ ๊ฐ์ ๋ด์ฌ๋ ๋์นญ์ ์ํคํ ์ฒ์ ๋ช ์์ ์ผ๋ก ํตํฉํฉ๋๋ค.
- ๐ ๋ณธ ํํ ๋ฆฌ์ผ์ Lie ๊ทธ๋ฃน ๋ฐ Lie ๋์์ ๊ฐ์ ํต์ฌ ๊ฐ๋ ์ ๊ฒํ ํ๊ณ , SE(3)-equivariant neural networks ์ค๊ณ(G-CNNs, steerable methods, GNNs) ๋ฐ Geometric Control์ ํฌ๊ด์ ์ผ๋ก ๋ค๋ฃน๋๋ค.
- ๐ค ์ด ๋ ผ๋ฌธ์ SE(3)-equivariance๋ฅผ ํ์ฉํ ๋ชจ๋ฐฉ ํ์ต ๋ฐ ๊ฐํ ํ์ต ์ ํ๋ฆฌ์ผ์ด์ ์ ์๊ฐํ๋ฉฐ, ๋ ๊ฐ๋ ฅํ๊ณ ํจ์จ์ ์ธ ๋ก๋ด ์์คํ ๊ฐ๋ฐ์ ์ํ ๋ฏธ๋ ๋ฐฉํฅ์ ์ ์ํฉ๋๋ค.
๐ Ping Review
๐ Ping โ A light tap on the surface. Get the gist in seconds.
์ด ๋ ผ๋ฌธ์ ๋ก๋ด ํ์ต ๋ฐ ์ ์ด ๋ถ์ผ์์ SE(3)-equivariant ๋ชจ๋ธ์ ์ฌ์ฉํ๋ ์ต์ ์ฐ๊ตฌ ๋ํฅ์ ํฌ๊ด์ ์ผ๋ก ๋ถ์ํ๊ณ ์์ต๋๋ค. ๊ธฐ์กด์ ๋ฅ๋ฌ๋ ๋ฐ Transformer ๋ชจ๋ธ์ด ๋ฐ์ดํฐ์ ๋ด์ฌ๋ ๋์นญ(symmetries) ๋ฐ ๋ถ๋ณ์ฑ(invariances)์ ์ฒ๋ฆฌํ๋ ๋ฐ ์ด๋ ค์์ ๊ฒช๋ ๋ฐ๋ฉด, Equivariant Neural Networks๋ ์ด๋ฌํ ์์ฑ์ ์ํคํ ์ฒ์ ๋ช ์์ ์ผ๋ก ํตํฉํ์ฌ ํจ์จ์ฑ๊ณผ ์ผ๋ฐํ(generalization)๋ฅผ ํฅ์์ํต๋๋ค. ํนํ, ์๊ฐ ๋ก๋ด ์กฐ์(visual robotic manipulation) ๋ฐ ์ ์ด ์ค๊ณ์์ ์์ฐ์ค๋ฌ์ด 3D ํ์ ๋ฐ ๋ณ์ง ๋์นญ์ ํ์ฉํ๋ SE(3)-equivariant ๋ชจ๋ธ์ ์ด์ ์ ๋ง์ถฅ๋๋ค.
์ฃผ์ ๋ด์ฉ ๋ฐ ๋ฐฉ๋ฒ๋ก :
- SE(3) ๊ตฐ(Group) ๋ฐ ๋ฆฌ ๋์(Lie Algebra) ๊ธฐ์ด:
- ๊ตฐ(Groups): ๊ตฐ์ ์ ์, ๋ถ๋ถ๊ตฐ(subgroup), ๊ตฐ ์์ฉ(group action) ๋ฑ์ ๋ค๋ฃจ๋ฉฐ, ํนํ SE(n)์ด SO(n)๊ณผ ๋ณ์ง๊ตฐ R^n์ ๋ฐ์ง์ ๊ณฑ(semidirect product)์ผ๋ก ์ ์๋จ์ ์ค๋ช ํฉ๋๋ค. SE(3)๋ 3D ๊ฐ์ฒด ๋ณํ(rigid body transformations)์ ๋ํ๋ ๋๋ค.
- ํ๋ ฌ ๋ฆฌ ๊ตฐ(Matrix Lie Groups) ๋ฐ ๋ฆฌ ๋์(Lie Algebras): ๋ฆฌ ๊ตฐ์ ์ฐ์์ ์ด๋ฉด์ ๋ฏธ๋ถ ๊ฐ๋ฅํ ๊ตฐ์ผ๋ก, ๋ฆฌ ๋์๋ ๋ฆฌ ๊ตฐ์ ํญ๋ฑ์(identity element)์์์ ์ ๊ณต๊ฐ(tangent space)์ ๋๋ค. ๋ฆฌ ๋์๋ ๋ฆฌ ๊ตฐ์ ๋ฌดํ์ ๋ณํ(infinitesimal transformations)์ ๋ํ๋ด๋ฉฐ, ํ๋ ฌ ์ง์ ํจ์(matrix exponential) \exp(X)์ ๋ก๊ทธ ํจ์(log map) \log(g)๋ฅผ ํตํด ๋ฆฌ ๊ตฐ๊ณผ ๋ฆฌ ๋์ ๊ฐ์ ๊ด๊ณ๊ฐ ํ์ฑ๋ฉ๋๋ค. se(3)๋ SE(3)์ ๋ฆฌ ๋์๋ฅผ ๋ํ๋ด๋ฉฐ, โhat-mapโ (\hat{\cdot})๊ณผ โvee-mapโ (\check{\cdot})์ ํตํด ๋ฒกํฐ์ ์คํ-๋์นญ ํ๋ ฌ(skew-symmetric matrix) ๊ฐ์ ์ฌ์(mapping)์ ์ ์ํฉ๋๋ค.
- ๋ธ๋ฆผ ํํ(Adjoint Representation): Ad_g X = gXg^{-1}๋ก ์ ์๋๋ ๋ฆฌ ๊ตฐ์ ๋ธ๋ฆผ ํํ๊ณผ ad_X Y = [X,Y]๋ก ์ ์๋๋ ๋ฆฌ ๋์์ ๋ธ๋ฆผ ํํ์ ๋ค๋ฃน๋๋ค. ์ด๋ ์ขํ๊ณ ๋ณํ์ ๊ฐ๋ฅํ๊ฒ ํฉ๋๋ค.
- ํธ์์คํธ(Twists) ๋ฐ ๋ ์น(Wrenches): se(3)์ ์์๋ ํธ์์คํธ๋ก ๋ถ๋ฆฌ๋ฉฐ ๊ณต๊ฐ ์๋(spatial velocity) V^s = \dot{g}g^{-1}์ ๋ชธ์ฒด ์๋(body velocity) V^b = g^{-1}\dot{g}๋ฅผ ๋ํ๋ ๋๋ค. ์ด๋ค์ V^s = Ad_g V^b ๊ด๊ณ๋ฅผ ๊ฐ์ง๋๋ค. ๋ ์น๋ ํ๊ณผ ๋ชจ๋ฉํธ์ ์์ ๋ํ๋ด๋ฉฐ, ์ฝ-๋ธ๋ฆผ ์์ฉ(co-adjoint action) Ad_g^{*-1}์ ์ํด ๋ณํ๋ฉ๋๋ค.
- Equivariant Deep Learning:
- Equivariant Map: ์ ๊ฒฝ๋ง \Phi: M \to N์ด ๊ตฐ ์์ฉ g์ ๋ํด G-equivariantํ๋ค๋ ๊ฒ์ \Phi(g \circ p) = g \circ \Phi(p)๋ฅผ ๋ง์กฑํ๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค. ์ด๋ ์ ๋ ฅ ๋ณํ์ ๋ฐ๋ผ ์ถ๋ ฅ์ด ์ผ๊ด๋๊ฒ ๋ณํ๋จ์ ๋ณด์ฅํ์ฌ ๊ฐ์ค์น ๊ณต์ (weight sharing)๋ฅผ ๊ฐ๋ฅํ๊ฒ ํฉ๋๋ค.
- ์ ๊ท ๊ตฐ CNN (Regular Group CNNs):
- ํ์ค CNN์ ๋ณ์ง(translation) ๋์นญ์๋ ๊ฐํ์ง๋ง ํ์ (rotation) ๋์นญ์๋ ์ทจ์ฝํ์ฌ ๋ฐ์ดํฐ ์ฆ๊ฐ(data augmentation)์ด๋ ์ค๋ณต๋ ํํฐ ํ์ต์ด ํ์ํฉ๋๋ค.
- ๋ฆฌํํ ํฉ์ฑ๊ณฑ(Lifting Convolution): ์ ๋ ฅ ์ด๋ฏธ์ง๋ฅผ R^2 ๋๋ฉ์ธ์์ ๊ตฐ ๋๋ฉ์ธ SE(2)๋ก ์ฌ์(map)ํ์ฌ ํน์ง ๋งต์ ์์ฑํฉ๋๋ค.
- ๊ตฐ ํฉ์ฑ๊ณฑ(Group Convolution): SE(2) ๋๋ฉ์ธ์์ ์ง์ ํฉ์ฑ๊ณฑ์ ์ํํฉ๋๋ค. ํ์ง๋ง ์ฐ์์ ์ธ SE(2) ๊ตฐ์ ๋ํ equivariance๋ฅผ ์์ ํ ๋ฌ์ฑํ๊ธฐ ์ํด SE(2)๋ฅผ ์ ํ ๋ถ๋ถ๊ตฐ R^2 \rtimes C_N์ผ๋ก ์ด์ฐํ(discretize)ํ๋ฉฐ, ์ด๋ ๊ณ ์ฐจ์ ํ์ ์ ๋ํ ๊ณ์ฐ ๋ณต์ก์ฑ ๋ฌธ์ ๋ฅผ ์ผ๊ธฐํฉ๋๋ค.
- ์คํฐ์ด๋ฌ๋ธ ๊ตฐ CNN (Steerable Group CNNs):
- ๊ตฐ CNN์ ์ด์ฐํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ์คํฐ์ด๋ฌ๋ธ ํํฐ(steerable filter)๋ฅผ ์ฌ์ฉํฉ๋๋ค. ์คํฐ์ด๋ฌ๋น๋ฆฌํฐ(steerability)๋ ํจ์๊ฐ ๊ตฐ ๋ณํ์ ์ํด ์ ํํ ๊ธฐ์ ํจ์์ ์ ํ ๊ฒฐํฉ์ผ๋ก ํํ๋ ์ ์์์ ์๋ฏธํฉ๋๋ค.
- ๊ตฌ๋ฉด ์กฐํ ํจ์(Spherical Harmonics, SH): SO(3) ๋ณํ์ ๊ธฐ์ ํจ์๋ก ์ฌ์ฉ๋ฉ๋๋ค. Y_l^m(\theta, \phi)๋ ์ฐจ์(degree) l๊ณผ ์ฐจ์(order) m์ ๊ฐ์ง๋ฉฐ, SO(3)์ ๊ธฐ์ฝ ํํ(irreducible representation)์ธ ์๊ทธ๋-D ํ๋ ฌ(Wigner-D matrices) D_l(R)์ ํตํด equivariantํ๊ฒ ๋ณํ๋ฉ๋๋ค.
- ํด๋ ์-๊ณ ๋ฅด๋น ํ ์๊ณฑ(Clebsch-Gordan Tensor Product): ์คํฐ์ด๋ฌ๋ธ ์ ํ ๊ณ์ธต(linear layer)์์ u \in V_{l_1}๊ณผ v \in V_{l_2} ๊ฐ์ ๋ ์คํฐ์ด๋ฌ๋ธ ๋ฒกํฐ๋ฅผ ์๋ก์ด ์คํฐ์ด๋ฌ๋ธ ๋ฒกํฐ (u \otimes_{cg} v)_l^m \in V_l๋ก ๊ฒฐํฉํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. ์ด๋ ์คํฐ์ด๋ฌ๋ธ ์ ๊ฒฝ๋ง์ ํต์ฌ ์์์ ๋๋ค.
- SE(3)-Equivariant Graph Neural Networks: 3D ํฌ์ธํธ ํด๋ผ์ฐ๋(point cloud) ๋ฐ์ดํฐ ์ฒ๋ฆฌ์ ์ฌ์ฉ๋๋ฉฐ, Tensor Field Networks (TFNs) ๋ฐ SE(3)-Transformers์ ๊ฐ์ ์ํคํ ์ฒ๋ฅผ ํตํด SE(3)-equivariance๋ฅผ ๋ฌ์ฑํฉ๋๋ค. ์ด๋ ๊ฐ ํฌ์ธํธ์ ๋ถ์ฐฉ๋ ํน์ง ๋ฒกํฐ(feature vector)๊ฐ SE(3) ๊ตฐ ์์ฉ์ ๋ฐ๋ผ ์ ์ ํ ๋ณํ๋๋๋ก ํฉ๋๋ค. Equivariant Spherical Channel Network (eSCN)์ ํ ์๊ณฑ์ ๊ณ์ฐ ๋ณต์ก๋๋ฅผ ์ค์ด๋ ํจ์จ์ ์ธ ๋์์ ์ ์ํฉ๋๋ค.
- ๋ก๋ณดํฑ์ค์์์ Equivariant Deep Learning ์์ฉ:
- ๋ชจ๋ฐฉ ํ์ต(Imitation Learning): Equivariant Descriptor Fields (EDFs)๋ pick-and-place ๋ฌธ์ ์ ๋ํ SE(3) bi-equivariant ์๋์ง ๊ธฐ๋ฐ ๋ชจ๋ธ์ ์ ์ํ์ฌ ๋์ ์ํ ํจ์จ์ฑ๊ณผ ์์-์ค๋ธ-๋ถํฌ(out-of-distribution) ๋ฐ์ดํฐ์ ๋ํ ๊ฐ๊ฑด์ฑ(robustness)์ ๋ฌ์ฑํฉ๋๋ค. ์ด๋ ์ฅ๋ฉด(scene)๊ณผ ์ก๊ธฐ(grasp) ๋ชจ๋์ ๋ํ equivariance๋ฅผ ๊ณ ๋ คํฉ๋๋ค. Diffusion-EDFs๋ ์ด๋ฅผ ํ์ฐ ๋ชจ๋ธ(diffusion models)๊ณผ ๊ฒฐํฉํ์ฌ ํ๋ จ ์๊ฐ์ ๊ฐ์ ํฉ๋๋ค. Fourier Transporter๋ 3D ํฉ์ฑ๊ณฑ๊ณผ ํธ๋ฆฌ์ ํํ(Fourier representation)์ ์ฌ์ฉํ์ฌ SE(3) bi-equivariant ๋ชจ๋ธ์ ์ ์ํฉ๋๋ค.
- ๊ฐํ ํ์ต(Reinforcement Learning): ๊ตฐ-๋ถ๋ณ ๋ง๋ฅด์ฝํ ๊ฒฐ์ ๊ณผ์ (Group-Invariant Markov Decision Process, MDP) ๊ฐ๋ ์ ๊ธฐ๋ฐ์ผ๋ก ํฉ๋๋ค. ์ด ํ๋ ์์ํฌ๋ ๋ณด์ ํจ์(reward function) R(s, a) = R(g \circ s, g \circ a) ๋ฐ ์ ์ด ํ๋ฅ (transition probability) P(s'|s, a) = P(g \circ s'|g \circ s, g \circ a)์ด ๊ตฐ-๋ถ๋ณ(group-invariant)์ผ ๋ ์ต์ Q ํจ์(Q function) Q^*(s, a)๊ฐ ๊ตฐ-๋ถ๋ณ์ด ๋๊ณ ์ต์ ์ ์ฑ (policy) \pi^*(s)์ด equivariantํ๊ฒ \pi^*(g \circ s) = g \circ \pi^*(s) ๋จ์ ์ฆ๋ช ํฉ๋๋ค. ์ด๋ฅผ ํตํด ์ํ ํจ์จ์ฑ๊ณผ ์ผ๋ฐํ ๋ฅ๋ ฅ์ ํฅ์์ํต๋๋ค.
- ๊ธฐํํ์ ์ํผ๋์ค ์ ์ด (Geometric Impedance Control):
- ๋ก๋ด ๋งค๋ํฐ๋ ์ดํฐ(manipulator)์ ์์ ๊ณต๊ฐ(workspace) ์ญํ์ SE(3) ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉํ์ฌ ์ ์ํฉ๋๋ค.
- ์ค์ฐจ ํจ์(Error Functions): SE(3) ์์ ๋ ์ง์ ๊ฐ์ โ๊ฑฐ๋ฆฌโ๋ฅผ ๋ํ๋ด๋ ์ค์นผ๋ผ ๊ฐ์ผ๋ก, ํ๋ ฌ ๊ตฐ(matrix group) ๊ด์ (\Psi_1(g, g_d) = \frac{1}{2} \|I - g_d^T g\|_F^2)๊ณผ ๋ฆฌ ๋์(Lie algebra) ๊ด์ (\Psi_2(g, g_d) = \frac{1}{2} \|\xi_{de}\|^2_K)์์ ์ค์ฐจ ํจ์๋ฅผ ์ ์ํฉ๋๋ค.
- ์์น ์ค์ฐจ ๋ฒกํฐ(Positional Error Vector) ๋ฐ ์๋ ์ค์ฐจ ๋ฒกํฐ(Velocity Error Vector): Lie ๊ตฐ ๊ธฐ๋ฐ ์ค์ฐจ ํจ์๋ก๋ถํฐ Geometrically Consistent Error Vector (GCEV) e_G๋ฅผ ๋์ถํ๊ณ , ๋ค๋ฅธ ์ ๊ณต๊ฐ(tangent spaces)์ ์๋ ๋ ์ ๋ฒกํฐ(tangent vectors)๋ฅผ ๋น๊ตํ๊ธฐ ์ํด ์๋ ์ค์ฐจ ๋ฒกํฐ e_V๋ฅผ ์ ์ํฉ๋๋ค.
- ์๋์ง ํจ์(Energy Functions): ์์น ์ค์ฐจ ํจ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํผํ ์ ์๋์ง ํจ์(potential energy function) P_i(g, g_d)๋ฅผ ์ ์ํ๊ณ , ์๋ ์ค์ฐจ ๋ฒกํฐ์ ๊ด์ฑ ํ๋ ฌ(inertia matrix)์ ์ฌ์ฉํ์ฌ ์ด๋ ์๋์ง(kinetic energy) K(t,q,\dot{q})๋ฅผ ์ ์ํฉ๋๋ค.
- SE(3)-Equivariant ์ ์ด ๋ฒ์น: GIC๋ ์ด ๊ธฐ๊ณ ์๋์ง(total mechanical energy)๊ฐ ์๊ฐ์ ๋ฐ๋ผ ์๋ฉธ๋๋๋ก ์ค๊ณ๋ ์ ์ด ๋ฒ์น์ ๋๋ค. ํนํ, GIC๋ ๊ณต๊ฐ ์ขํ๊ณ(spatial frame)์์ ๊ธฐ์ ๋ ๋ SE(3)-equivariantํจ์ ๋ณด์ ๋๋ค. ์ด๋ ํผ๋๋ฐฑ ํญ(feedback terms) f_G๊ฐ ์ข๋ถ๋ณ(left-invariant) ์์ฑ f_G(g_l g, g_l g_d) = f_G(g, g_d)์ ๊ฐ์ง๊ธฐ ๋๋ฌธ์ ๋๋ค.
ํฅํ ์ฐ๊ตฌ ๋ฐฉํฅ:
- ๋น์ -๋-ํ SE(3)-Equivariance (Vision-to-Force SE(3)-Equivariance): ์๊ฐ ์ ๋ณด๋ฟ๋ง ์๋๋ผ ํ ์ํธ์์ฉ(force interaction)์ ํฌํจํ๋ ์กฐ์ ์์ ์์ equivariance๋ฅผ ํตํฉํ์ฌ ์ํ ํจ์จ์ฑ์ ๋์ด๋ ์ฐ๊ตฌ.
- ๋ก๋ณดํฑ์ค ๋ฐ ์์คํ ์์์ ๋์นญ ๊นจ์ง(Symmetry Breaking): ๋ก๋ด์ ํน์ด์ (singular configuration)์ด๋ ์ ์ด ์์คํ ์ ์ ์ฝ(constraints)๊ณผ ๊ฐ์ ์์ธ์ผ๋ก ์ธํด ๋ฐ์ํ๋ ๋์นญ ๊นจ์ง ํ์๊ณผ, ๊ด์ธก ๊ณต๊ฐ(observation space)์ ๋ถ์์ ์ฑ(imperfection)์ด equivariant ๋คํธ์ํฌ ์ฑ๋ฅ์ ๋ฏธ์น๋ ์ํฅ์ ๋ํ ์ฐ๊ตฌ.
์ด ๋ ผ๋ฌธ์ ๋ก๋ด ์กฐ์ ๋ฐ ์ ์ด ๋ถ์ผ์์ equivariant ๋ฅ๋ฌ๋๊ณผ ๊ธฐํํ์ ์ ์ด์ ์ตํฉ์ ์ํ ํฌ๊ด์ ์ธ ์ด๋ก ์ ํ๊ณผ ์ค์ฉ์ ์ ์ฉ ์ฌ๋ก๋ฅผ ์ ์ํ๊ณ ์์ต๋๋ค.
๐ Ring Review
๐ Ring โ An idea that echoes. Grasp the core and its value.
โ์์ฐ์ ๋ฒ์น์ ์๋ฆ๋ต๊ณ , ๊ทธ ์๋ฆ๋ค์์ ํต์ฌ์๋ ๋์นญ์ฑ์ด ์๋ค.โ
โ ๋ฆฌ์ฒ๋ ํ์ธ๋ง
1์ฅ: ๋์นญ์ฑ์ด๋ ๋ฌด์์ธ๊ฐ?
๐ช ๊ฑฐ์ธ ์์์ ์๊ฐํด๋ณด๊ธฐ
๋จผ์ ์ง๋ฌธ ํ๋ ๋์ ธ๋ณผ๊ฒ. ๋ค๊ฐ ๊ฑฐ์ธ ์์ ์ ์๋ค๊ณ ์์ํด๋ด. ๋๋ ์ค๋ฅธ์์ ๋ค์๋๋ฐ, ๊ฑฐ์ธ ์ ๋๋ ์ผ์์ ๋ค๊ณ ์์ง? ์ด๊ฒ ๋ฐ๋ก โ๊ฑฐ์ธ ๋์นญโ์ด์ผ.
์, ์ด๋ฒ์ ๋ค๋ฅธ ๊ฑธ ์๊ฐํด๋ณด์. ๋ค ๋ฐฉ์ ์ปต์ด ํ๋ ์์ด. ์ด ์ปต์:
- ํ์ ์์ผ๋ (๋๋ ค๋) โ ์ฌ์ ํ ๊ฐ์ ์ปต์ด์ผ
- ์ด๋์์ผ๋ (์ฑ ์์์ ๋ฐ๋ฅ์ผ๋ก ์ฎ๊ฒจ๋) โ ์ฌ์ ํ ๊ฐ์ ์ปต์ด์ผ
์ด๋ ๊ฒ ์ด๋ค ๋ณํ์ ํด๋ ๋ณธ์ง์ด ๋ณํ์ง ์๋ ์ฑ์ง, ๊ทธ๊ฒ ๋ฐ๋ก ๋์นญ์ฑ(Symmetry)์ด์ผ.
๐ ์ ์ด๊ฒ ๋ก๋ด์๊ฒ ์ค์ํ ๊น?
๋ก๋ด ํ์ด ์ปต์ ์ง์ผ๋ ค๊ณ ํ๋ค๊ณ ์๊ฐํด๋ด. ์ปต์ด ์ฑ ์ ์ผ์ชฝ์ ์๋ , ์ค๋ฅธ์ชฝ์ ์๋ , 45๋ ๋์๊ฐ ์๋ โ ์ปต์ ์ง๋ ๋ฐฉ๋ฒ์ ๋ณธ์ง์ ๋๊ฐ์์ผ ํ์ง ์๊ฒ ์ด?
๋ฌธ์ ๋ ๊ธฐ์กด์ ์ธ๊ณต์ง๋ฅ(๋ฅ๋ฌ๋)์ ์ด๊ฑธ ์ ๋ชจ๋ฅธ๋ค๋ ๊ฑฐ์ผ. ์ปต์ด ์ ๋ฉด์ ์์ ๋ ์ง๋ ๋ฒ์ ๋ฐฐ์ ๋๋ฐ, ์ปต์ 90๋ ๋๋ ค๋์ผ๋ฉด โ์ด? ์ด๊ฑด ๋ญ์ง?โ ํ๊ณ ๋นํฉํด๋ฒ๋ ค.
ํด๊ฒฐ์ฑ : ๋์นญ์ฑ์ ์ฒ์๋ถํฐ ์ ๊ฒฝ๋ง ๊ตฌ์กฐ์ ๋ฃ์ด๋ฒ๋ฆฌ๋ฉด ์ด๋จ๊น?
2์ฅ: ๊ตฐ(็พค, Group)์ด๋ ๋ฌด์์ธ๊ฐ?
๐ฎ ๋ณํ๋ค์ ๊ฒ์
โ๊ตฐโ์ด๋ผ๋ ๋จ์ด๊ฐ ์ข ๋ฌด์ญ์ง? ๊ทผ๋ฐ ์ฌ์ค ์์ฒญ ๋จ์ํ ์์ด๋์ด์ผ.
๊ตฐ(Group)์ด๋ โ๋ณํ๋ค์ ๋ชจ์โ์ธ๋ฐ, ํน๋ณํ ๊ท์น ๋ค ๊ฐ์ง๋ฅผ ๋ง์กฑํด์ผ ํด:
๊ท์น 1: ๋ซํ (Closure)
๋ ๋ณํ์ ์ฐ์์ผ๋ก ํ๋ฉด, ๊ทธ ๊ฒฐ๊ณผ๋ ๊ฐ์ ์ข ๋ฅ์ ๋ณํ์ด์ด์ผ ํด.
์๋ฅผ ๋ค์ด, ์๊ณ ๋ฐฉํฅ 30๋ ํ์ ํ์ ์๊ณ ๋ฐฉํฅ 60๋ ํ์ ์ ํ๋ฉด? ์๊ณ ๋ฐฉํฅ 90๋ ํ์ ์ด์ง! ์ฌ์ ํ โํ์ โ์ด์ผ.
์ํ์ผ๋ก ์ฐ๋ฉด:
g_1 \cdot g_2 \in G \quad \text{(๋ ์์์ ๊ฒฐํฉ๋ ๊ทธ ๊ตฐ์ ์ํจ)}
๊ท์น 2: ๊ฒฐํฉ๋ฒ์น (Associativity)
์ธ ๊ฐ์ ๋ณํ g_1, g_2, g_3์ด ์์ ๋:
(g_1 \cdot g_2) \cdot g_3 = g_1 \cdot (g_2 \cdot g_3)
์ด๋ค ์์๋ก ๊ดํธ๋ฅผ ๋ฌถ์ด๋ ๊ฒฐ๊ณผ๊ฐ ๊ฐ์. ๋ง์น (2 \times 3) \times 4 = 2 \times (3 \times 4)์ธ ๊ฒ์ฒ๋ผ!
๊ท์น 3: ํญ๋ฑ์ (Identity)
โ์๋ฌด๊ฒ๋ ์ ํ๋โ ๋ณํ์ด ์์ด์ผ ํด. ์ด๊ฑธ e ๋๋ 1์ด๋ผ๊ณ ๋ถ๋ฌ.
g \cdot e = e \cdot g = g
0๋ ํ์ = ํ์ ์ ํจ = ์๋ ๊ทธ๋๋ก!
๊ท์น 4: ์ญ์ (Inverse)
๋ชจ๋ ๋ณํ์๋ โ๋๋๋ฆฌ๋โ ๋ณํ์ด ์์ด์ผ ํด.
g \cdot g^{-1} = g^{-1} \cdot g = e
์๊ณ ๋ฐฉํฅ 30๋ ํ์ ์ ์ญ์? ๋ฐ์๊ณ ๋ฐฉํฅ 30๋ ํ์ ์ด์ง!
๐ฆ ์ค์ ์์๋ค
| ๊ตฐ์ ์ด๋ฆ | ๋ญ ํ๋ ๋ณํ์ธ๊ฐ | ์ํ ๊ธฐํธ |
|---|---|---|
| ํํ์ด๋๊ตฐ | ๊ณต๊ฐ์์ ์ด๋ | (\mathbb{R}^n, +) |
| ํ์ ๊ตฐ | 3D ํ์ | SO(3) |
| ํน์ ์ ํด๋ฆฌ๋ ๊ตฐ | ํ์ + ์ด๋ | SE(3) |
| ์ผ๋ฐ์ ํ๊ตฐ | ๋ค์ง์ ์ ์๋ ํ๋ ฌ๋ค | GL(n) |
3์ฅ: SO(3)์ SE(3) โ ์ฐ๋ฆฌ๊ฐ ์ฌ๋ 3์ฐจ์ ์ธ๊ณ
๐ SO(3): 3์ฐจ์ ํ์ ์ ์ธ๊ณ
SO(3)์ โSpecial Orthogonal group in 3 dimensionsโ์ ์ฝ์์ผ. ๋ฌด์จ ๋ง์ด๋๋ฉด:
3์ฐจ์ ๊ณต๊ฐ์์ ๊ฐ๋ฅํ ๋ชจ๋ ํ์
โSpecialโ์ ์๋ฏธ๋ โ๋ค์ง๊ธฐ(reflection) ์์ด ์์ํ ํ์ ๋งโ์ด๋ผ๋ ๋ป์ด์ผ.
SO(3)์ ํ์ ์ 3ร3 ํ์ ํ๋ ฌ R๋ก ํํํ ์ ์์ด:
R \in SO(3) \iff R^T R = I \text{ ๊ทธ๋ฆฌ๊ณ } \det(R) = 1
์ฌ๊ธฐ์: - R^T๋ R์ ์ ์นํ๋ ฌ (ํ๊ณผ ์ด์ ๋ฐ๊พผ ๊ฒ) - I๋ ๋จ์ํ๋ ฌ (๋๊ฐ์ ๋ง 1, ๋๋จธ์ง 0) - \det(R) = 1์ โํฌ๊ธฐ๋ฅผ ๋ณํํ์ง ์๊ณ , ๋ค์ง์ง๋ ์๋๋คโ๋ ๋ป
์ R^T R = I์ผ๊น?
ํ์ ํ๋ ฌ์ ๊ฐ ์ด(๋๋ ํ)์ ์ง๊ตํ๋ ๋จ์๋ฒกํฐ๋ค์ด์ผ. ์๋ก ์์ง์ด๊ณ , ๊ธธ์ด๊ฐ 1์ด๋ผ๋ ๊ฑฐ์ง. ์ด ์กฐ๊ฑด์ ์ํ์ผ๋ก ์ฐ๋ฉด R^T R = I๊ฐ ๋ผ.
๐ถ SE(3): ํ์ + ์ด๋์ ์ธ๊ณ
SE(3)์ โSpecial Euclidean group in 3 dimensionsโ์ ์ฝ์์ผ:
3์ฐจ์ ๊ณต๊ฐ์์ ๊ฐ๋ฅํ ๋ชจ๋ ํ์ ๊ณผ ํํ์ด๋์ ์กฐํฉ
์ด๊ฑด 4ร4 ํ๋ ฌ๋ก ํํํ ์ ์์ด:
T = \begin{bmatrix} R & p \\ 0 & 1 \end{bmatrix} \in SE(3)
์ฌ๊ธฐ์: - R: 3ร3 ํ์ ํ๋ ฌ (SO(3)์ ์์) - p: 3ร1 ํํ์ด๋ ๋ฒกํฐ (์ด๋๋ก ์ด๋ํ ์ง) - ๋ง์ง๋ง ํ [0, 0, 0, 1]์ ๊ณ์ฐ์ ํธํ๊ฒ ํ๊ธฐ ์ํ ํธ๋ฆญ์ด์ผ
์ค์ ๋ณํ์ ์ด๋ป๊ฒ ๊ณ์ฐํ ๊น?
3D ์ x = (x_1, x_2, x_3)์ SE(3) ๋ณํ์ ์ ์ฉํ๋ฉด:
\begin{bmatrix} x' \\ 1 \end{bmatrix} = \begin{bmatrix} R & p \\ 0 & 1 \end{bmatrix} \begin{bmatrix} x \\ 1 \end{bmatrix} = \begin{bmatrix} Rx + p \\ 1 \end{bmatrix}
์ฆ, ๋จผ์ ํ์ (Rx)ํ๊ณ , ๊ทธ ๋ค์ ์ด๋(+p)ํ๋ ๊ฑฐ์ผ!
๐ค ์ SE(3)๊ฐ ๋ก๋ด์๊ฒ ์ค์ํ ๊น?
๋ก๋ด์ด ์ฌ๋ ์ธ๊ณ๋ฅผ ์๊ฐํด๋ด:
- ์นด๋ฉ๋ผ๋ก ๋ฌผ์ฒด๋ฅผ ๋ณผ ๋ โ ์นด๋ฉ๋ผ ์์น์ ๊ฐ๋์ ๋ฐ๋ผ ๋ณด์ด๋ ๊ฒ ๋ฌ๋ผ
- ํ๋ก ๋ฌผ๊ฑด์ ์ง์ ๋ โ ๋ฌผ๊ฑด์ ์์น์ ๋ฐฉํฅ์ ๋ฐ๋ผ ์ ๊ทผ ๋ฐฉ๋ฒ์ด ๋ฌ๋ผ
- ์ด๋ํ ๋ โ ์ถ๋ฐ์ ์์ ๋ชฉ์ ์ง๊น์ง ํ์ ํ๊ณ ์ด๋ํด์ผ ํด
์ด ๋ชจ๋ ๊ฒ SE(3) ๋ณํ์ด์ผ!
4์ฅ: ๋ฑ๋ณ์ฑ(Equivariance)๊ณผ ๋ถ๋ณ์ฑ(Invariance)
๐ฏ ํต์ฌ ๊ฐ๋ : ๋ณํ์ ์ด๋ป๊ฒ ๋ฐ์ํ๋๊ฐ?
์, ์ด์ ์ค๋์ ์ฃผ์ธ๊ณต์ ์๊ฐํ ๊ฒ: ๋ฑ๋ณ์ฑ(Equivariance)
ํจ์ f๊ฐ ์๊ณ , ์ ๋ ฅ x์ ๋ณํ g๋ฅผ ์ ์ฉํ๋ค๊ณ ํด๋ณด์.
๋ถ๋ณ์ฑ (Invariance)
์ถ๋ ฅ์ด ๋ณํ์ง ์์ผ๋ฉด ๋ถ๋ณ(Invariant)์ด์ผ:
f(g \cdot x) = f(x)
์์: ๋ฌผ์ฒด ์ธ์. ์ปต์ ๋๋ ค๋ โ์ด๊ฑด ์ปต์ด๋คโ๋ผ๋ ํ๋จ์ ๋ณํ์ง ์์์ผ ํด.
๋ฑ๋ณ์ฑ (Equivariance)
์ถ๋ ฅ์ด ์ ๋ ฅ๊ณผ ๊ฐ์ ๋ฐฉ์์ผ๋ก ๋ณํ๋ฉด ๋ฑ๋ณ(Equivariant)์ด์ผ:
f(g \cdot x) = g \cdot f(x)
์์: ๋ฌผ์ฒด ์์น ์ฐพ๊ธฐ. ์ปต์ ์ค๋ฅธ์ชฝ์ผ๋ก 10cm ์ฎ๊ธฐ๋ฉด, โ์ปต์ ์์นโ๋ผ๋ ์ถ๋ ฅ๋ ์ค๋ฅธ์ชฝ์ผ๋ก 10cm ์ฎ๊ฒจ์ ธ์ผ ํด.
๐ผ๏ธ ๊ทธ๋ฆผ์ผ๋ก ์ดํดํ๊ธฐ
์ผ๊ฐํ์ ๋ฌด๊ฒ์ค์ฌ(centroid)์ ๊ตฌํ๋ ํจ์๋ฅผ ์๊ฐํด๋ด:
์๋ ์ผ๊ฐํ โ ํจ์ f โ ๋ฌด๊ฒ์ค์ฌ ์
โณ โข
(ํ์ ์ ์ฉ) (๊ฐ์ ํ์ ์ ์ฉ)
โ โ
ํ์ ๋ ์ผ๊ฐํ โ ํจ์ f โ ํ์ ๋ ๋ฌด๊ฒ์ค์ฌ
โณ โข
์ผ๊ฐํ์ ๋๋ฆฌ๊ณ ๋์ ๋ฌด๊ฒ์ค์ฌ์ ๊ตฌํ๋ , ๋ฌด๊ฒ์ค์ฌ์ ๊ตฌํ๊ณ ๋์ ๊ทธ ์ ์ ๋๋ฆฌ๋ , ๊ฒฐ๊ณผ๊ฐ ๊ฐ์์ผ ํด. ์ด๊ฒ ๋ฐ๋ก ๋ฑ๋ณ์ฑ์ด์ผ!
๐ ์ํ์ ์ผ๋ก ๋ ์ ํํ๊ฒ
์ ๋ ฅ ๊ณต๊ฐ X์ ์ถ๋ ฅ ๊ณต๊ฐ Y๊ฐ ์๊ณ , ๊ตฐ G๊ฐ ๋ ๊ณต๊ฐ์ ๊ฐ๊ฐ ์์ฉํ๋ค๊ณ ํด๋ณด์: - G๊ฐ X์ ์์ฉํ๋ ๋ฐฉ์: \rho_X(g) - G๊ฐ Y์ ์์ฉํ๋ ๋ฐฉ์: \rho_Y(g)
ํจ์ f: X \to Y๊ฐ G-๋ฑ๋ณ์ด๋ ค๋ฉด:
f(\rho_X(g) \cdot x) = \rho_Y(g) \cdot f(x), \quad \forall g \in G, \forall x \in X
๋ถ๋ณ์ฑ์ ๋ฑ๋ณ์ฑ์ ํน์ํ ๊ฒฝ์ฐ์ผ. \rho_Y(g)๊ฐ ํญ์ ํญ๋ฑ ๋ณํ์ผ ๋:
f(\rho_X(g) \cdot x) = f(x)
5์ฅ: ๋ฆฌ ๊ตฐ(Lie Group)๊ณผ ๋ฆฌ ๋์(Lie Algebra)
๐ ์ฐ์์ ์ธ ๋ณํ์ ์ธ๊ณ
์ง๊ธ๊น์ง ๋ฐฐ์ด ๊ตฐ ์ค์์ SO(3)์ SE(3)๋ ํน๋ณํด. ์๋ํ๋ฉด ๋ณํ์ด ์ฐ์์ ์ด๊ฑฐ๋ .
์ ์ก๋ฉด์ฒด๋ฅผ 90๋์ฉ๋ง ๋๋ฆด ์ ์๋ ๊ฒ ์๋๋ผ, 1๋, 0.001๋, ์๋ฌด ๊ฐ๋๋ก๋ ๋๋ฆด ์ ์์์? ์ด๋ ๊ฒ ์ฐ์์ ์ผ๋ก ๋ณํ ์ ์๋ ๊ตฐ์ ๋ฆฌ ๊ตฐ(Lie Group)์ด๋ผ๊ณ ๋ถ๋ฌ.
๋ฆฌ ๊ตฐ = ๊ตฐ + ๋ฏธ๋ถ ๊ฐ๋ฅํ ๋งค๋๋ฌ์ด ๊ตฌ์กฐ
๐งฎ ๋ฆฌ ๋์: ๋ณํ์ โ์๋โ
๋ฆฌ ๋์๋ ์ข ์ถ์์ ์ธ๋ฐ, ์ง๊ด์ ์ผ๋ก ์ค๋ช ํด๋ณผ๊ฒ.
๋ฆฌ ๊ตฐ์ด โ์ด๋์ ์๋๊ฐโ๋ผ๋ฉด,
๋ฆฌ ๋์๋ โ์ด๋ ๋ฐฉํฅ์ผ๋ก ์ผ๋ง๋ ๋นจ๋ฆฌ ๋ณํ๋๊ฐโ์ผ.
์ํ์ ์ผ๋ก, ๋ฆฌ ๋์ \mathfrak{g}๋ ํญ๋ฑ์ ๊ทผ์ฒ์์์ ์ ์ ๊ณต๊ฐ์ด์ผ:
\mathfrak{g} = T_e G
๐ SO(3)์ ๋ฆฌ ๋์: \mathfrak{so}(3)
SO(3)์ ๋ฆฌ ๋์๋ ๋ฐ๋์นญ ํ๋ ฌ(skew-symmetric matrix)๋ค์ ์งํฉ์ด์ผ:
\mathfrak{so}(3) = \{\Omega \in \mathbb{R}^{3 \times 3} : \Omega^T = -\Omega\}
๋ฐ๋์นญ ํ๋ ฌ์ด ๋ญ๋๋ฉด:
\Omega = \begin{bmatrix} 0 & -\omega_3 & \omega_2 \\ \omega_3 & 0 & -\omega_1 \\ -\omega_2 & \omega_1 & 0 \end{bmatrix}
์ด๊ฑด 3์ฐจ์ ๋ฒกํฐ \omega = (\omega_1, \omega_2, \omega_3)์ ์ผ๋์ผ ๋์๋ผ. ์ด ๋ฒกํฐ๊ฐ ๋ฐ๋ก ๊ฐ์๋ ๋ฒกํฐ์ผ!
Hat ์ฐ์ฐ์์ Vee ์ฐ์ฐ์
๋ฒกํฐ๋ฅผ ๋ฐ๋์นญ ํ๋ ฌ๋ก ๋ฐ๊พธ๋ ๊ฑธ Hat ์ฐ์ฐ์ (\cdot)^\wedge๋ผ๊ณ ํด:
\omega^\wedge = \begin{bmatrix} 0 & -\omega_3 & \omega_2 \\ \omega_3 & 0 & -\omega_1 \\ -\omega_2 & \omega_1 & 0 \end{bmatrix}
๋ฐ๋๋ก ํ๋ ฌ์ ๋ฒกํฐ๋ก ๋ฐ๊พธ๋ ๊ฑด Vee ์ฐ์ฐ์ (\cdot)^\vee:
(\omega^\wedge)^\vee = \omega
๐ ์ง์ ์ฌ์: ๋ฆฌ ๋์์์ ๋ฆฌ ๊ตฐ์ผ๋ก
๋ฆฌ ๋์(์๋)์์ ๋ฆฌ ๊ตฐ(์์น)์ผ๋ก ๊ฐ๋ ๋ค๋ฆฌ๊ฐ ์์ด. ์ด๊ฑธ ์ง์ ์ฌ์(Exponential Map)์ด๋ผ๊ณ ๋ถ๋ฌ:
\exp: \mathfrak{g} \to G
SO(3)์ ๊ฒฝ์ฐ, ์ ๋ช ํ ๋ก๋๋ฆฌ๊ฒ์ค ๊ณต์(Rodriguesโ Formula)์ ์จ:
\exp(\omega^\wedge) = I + \frac{\sin\theta}{\theta}\omega^\wedge + \frac{1 - \cos\theta}{\theta^2}(\omega^\wedge)^2
์ฌ๊ธฐ์ \theta = \|\omega\|๋ ํ์ ๊ฐ๋์ผ.
์ง๊ด์ ์๋ฏธ: ๊ฐ์๋ \omega๋ก 1์ด ๋์ ํ์ ํ๋ฉด ์ด๋์ ๋์ฐฉํ๋๊ฐ?
๐ SE(3)์ ๋ฆฌ ๋์: \mathfrak{se}(3)
SE(3)์ ๋ฆฌ ๋์๋ ์ด๋ ๊ฒ ์๊ฒผ์ด:
\xi^\wedge = \begin{bmatrix} \omega^\wedge & v \\ 0 & 0 \end{bmatrix} \in \mathfrak{se}(3)
์ฌ๊ธฐ์: - \omega \in \mathbb{R}^3: ๊ฐ์๋ (ํ์ ๋ฐฉํฅ๊ณผ ์๋) - v \in \mathbb{R}^3: ์ ์๋ (์ด๋ ๋ฐฉํฅ๊ณผ ์๋)
6์ฐจ์ ๋ฒกํฐ \xi = (v, \omega)๋ก ํํํ๊ธฐ๋ ํด. ์ด๊ฑธ ํธ์์คํธ(twist)๋ผ๊ณ ๋ถ๋ฌ.
6์ฅ: ๋ฑ๋ณ ์ ๊ฒฝ๋ง์ ์ค๊ณ
๐ง ์ ์ผ๋ฐ ์ ๊ฒฝ๋ง์ ๋์นญ์ฑ์ ์ดํด ๋ชปํ ๊น?
์ผ๋ฐ์ ์ธ ์ ๊ฒฝ๋ง(MLP, CNN ๋ฑ)์ ์ ๋ ฅ ๋ฐ์ดํฐ์ ๋์นญ์ฑ์ ๋ชจ๋ฅด๊ณ ๋ฌด์ํ๊ฒ ํ์ตํด.
์๋ฅผ ๋ค์ด, ์ปต ์ด๋ฏธ์ง๋ก โ์ปต ์ธ์โ์ ํ์ตํ๋๋ฐ: - ์ปต์ด ์ ๋ฉด์ ์์ ๋: ์ ์ธ์! โ - ์ปต์ 45๋ ๋๋ฆฌ๋ฉด: โ์ด๊ฑด ๋ญ์งโฆ?โ โ - ์ปต์ ๋ค์ง์ผ๋ฉด: โ์์ ๋ชจ๋ฅด๊ฒ ์ด!โ โ
ํด๊ฒฐ์ฑ 1: ๋ฐ์ดํฐ ์ฆ๊ฐ(Data Augmentation). ์จ๊ฐ ๊ฐ๋์ ์ปต ์ด๋ฏธ์ง๋ฅผ ๋ค ๋ณด์ฌ์ค!
๋ฌธ์ : ๋ฐ์ดํฐ๊ฐ ์์ฒญ ๋ง์ด ํ์ํ๊ณ , ์๊ฐ๋ ์ค๋ ๊ฑธ๋ ค.
ํด๊ฒฐ์ฑ 2: ๋ฑ๋ณ ์ ๊ฒฝ๋ง. ์ฒ์๋ถํฐ ๋์นญ์ฑ์ ์๋ ๊ตฌ์กฐ๋ฅผ ๋ง๋ค์ด!
๐ง ๋ฑ๋ณ ์ ๊ฒฝ๋ง์ ํต์ฌ ์์ด๋์ด
๋ฑ๋ณ ์ ๊ฒฝ๋ง์ ๊ฐ ์ธต(layer)์ด ๋ฑ๋ณ ํจ์๊ฐ ๋๋๋ก ์ค๊ณํด:
\text{Layer}_i(g \cdot x) = g \cdot \text{Layer}_i(x)
์ ๊ธฐํ ๊ฑด, ๋ฑ๋ณ ์ธต์ ์ฐ์์ผ๋ก ์์ผ๋ฉด ์ ์ฒด ๋คํธ์ํฌ๋ ๋ฑ๋ณ์ด ๋๋ค๋ ๊ฑฐ์ผ!
f = \text{Layer}_n \circ \cdots \circ \text{Layer}_2 \circ \text{Layer}_1
๊ฐ ์ธต์ด ๋ฑ๋ณ์ด๋ฉด:
f(g \cdot x) = \text{Layer}_n(\cdots(\text{Layer}_1(g \cdot x))) = g \cdot \text{Layer}_n(\cdots(\text{Layer}_1(x))) = g \cdot f(x)
๐ ํฌ์ธํธ ํด๋ผ์ฐ๋์ SE(3)-๋ฑ๋ณ์ฑ
๋ก๋ด ์๊ฐ์์ ๋ง์ด ์ฐ๋ ๋ฐ์ดํฐ ํํ๊ฐ ํฌ์ธํธ ํด๋ผ์ฐ๋(Point Cloud)์ผ. 3D ๊ณต๊ฐ์ ์ ๋ค ์งํฉ์ด์ง:
X = \{x_1, x_2, \ldots, x_N\}, \quad x_i \in \mathbb{R}^3
SE(3) ๋ณํ T = (R, p)๋ฅผ ์ ์ฉํ๋ฉด:
T \cdot X = \{Rx_1 + p, Rx_2 + p, \ldots, Rx_N + p\}
SE(3)-๋ฑ๋ณ ์ ๊ฒฝ๋ง์ ์ด๋ฐ ์ฑ์ง์ ๋ง์กฑํด:
f(T \cdot X) = T \cdot f(X)
ํฌ์ธํธ ํด๋ผ์ฐ๋๋ฅผ ๋๋ฆฌ๊ฑฐ๋ ์ฎ๊ฒจ๋, ์ถ๋ ฅ๋ ๋๊ฐ์ด ๋์๊ฐ๊ฑฐ๋ ์ฎ๊ฒจ์ ธ์ผ ํด!
๐ฌ ํ ์์ฅ ์ ๊ฒฝ๋ง (Tensor Field Networks)
๋ฑ๋ณ ์ ๊ฒฝ๋ง์ ๋ํ์ ์ธ ์๊ฐ ํ ์์ฅ ์ ๊ฒฝ๋ง(TFN)์ด์ผ.
ํต์ฌ ์์ด๋์ด: ๊ฐ ์ ์ ์ค์นผ๋ผ, ๋ฒกํฐ, ๊ณ ์ฐจ ํ ์ ํน์ฑ์ ๋ถ์ด๊ณ , ์ด๊ฒ๋ค์ด ๋ณํ์ ๋ฐ๋ผ ์ ์ ํ ๋ณํ๋๋ก ํด.
| ํ ์ ์ข ๋ฅ | ์ฐจ์ l | ์ฑ๋ถ ์ | ํ์ ์ ๋ํ ๋ฐ์ |
|---|---|---|---|
| ์ค์นผ๋ผ | 0 | 1 | ๋ณํ์ง ์์ |
| ๋ฒกํฐ | 1 | 3 | ํ์ ํ๋ ฌ๋ก ๋ณํ |
| ํ๋ ฌ | 2 | 5 (traceless) | ๋ ๋ณต์กํ ๋ณํ |
ํ์ ์ ๋ํ ๋ฐ์์ ๋น๊ฐ์ฝ ํํ(Irreducible Representation)์ผ๋ก ๊ธฐ์ ํด:
D^{(l)}(R) \in \mathbb{R}^{(2l+1) \times (2l+1)}
์ฐจ์ l์ธ ํน์ฑ f^{(l)}๋ ํ์ R์ ์ํด ์ด๋ ๊ฒ ๋ณํ๋ผ:
f^{(l)} \mapsto D^{(l)}(R) \cdot f^{(l)}
๐ ๋ฉ์์ง ํจ์ฑ๊ณผ ๋ฑ๋ณ์ฑ
๊ทธ๋ํ ์ ๊ฒฝ๋ง์์ ์์ฃผ ์ฐ๋ ๋ฉ์์ง ํจ์ฑ(Message Passing)๋ ๋ฑ๋ณํ๊ฒ ๋ง๋ค ์ ์์ด:
h_i' = \phi\left(h_i, \sum_{j \in \mathcal{N}(i)} \psi(h_i, h_j, e_{ij})\right)
์ฌ๊ธฐ์: - h_i: ๋ ธ๋ i์ ํน์ฑ - \mathcal{N}(i): i์ ์ด์ ๋ ธ๋๋ค - e_{ij}: ๊ฐ์ ํน์ฑ (์: ๋ ์ ์ฌ์ด์ ๊ฑฐ๋ฆฌ) - \phi, \psi: ๋ฑ๋ณ ํจ์๋ค
ํต์ฌ: ๊ฑฐ๋ฆฌ \|x_i - x_j\|๋ SE(3)-๋ถ๋ณ์ด์ผ! ํ์ ํ๊ฑฐ๋ ์ด๋ํด๋ ๋ ์ ์ฌ์ด ๊ฑฐ๋ฆฌ๋ ๋ณํ์ง ์์ผ๋๊น.
7์ฅ: ๋ก๋ด ํ์ต์์ ์์ฉ
๐ ๋ชจ๋ฐฉ ํ์ต (Imitation Learning)
์ฌ๋์ด ๋ก๋ด์๊ฒ ์๋ฒ์ ๋ณด์ฌ์ฃผ๋ฉด, ๋ก๋ด์ด ๊ทธ๊ฑธ ๋ฐ๋ผ ํ๋ ๊ฑฐ์ผ.
๋ฌธ์ : ์๋ฒ์ ๋ณด์ธ ์์น๋ ์ค์ ์์ ์์น๊ฐ ๋ค๋ฅด๋ฉด?
๊ธฐ์กด ๋ฐฉ๋ฒ: ์๋ง์ ๋ค๋ฅธ ์์น์์ ์๋ฒ์ ๋ณด์ฌ์ค์ผ ํด.
SE(3)-๋ฑ๋ณ ๋ฐฉ๋ฒ: ํ๋์ ์๋ฒ๋ง์ผ๋ก๋, ๋ค๋ฅธ ์์น์ ๊ฐ๋์ ์๋์ผ๋ก ์ผ๋ฐํํด!
์ํ์ ์ผ๋ก, ์ ์ฑ (policy) \pi๊ฐ ๋ฑ๋ณ์ด๋ฉด:
\pi(g \cdot s) = g \cdot \pi(s)
์ํ s๋ฅผ ๋ณํํ๋ฉด, ํ๋๋ ๊ฐ์ ๋ฐฉ์์ผ๋ก ๋ณํ๋ผ.
๐ฎ ๊ฐํ ํ์ต (Reinforcement Learning)
๋ก๋ด์ด ์ํ์ฐฉ์ค๋ฅผ ํตํด ์ค์ค๋ก ๋ฐฐ์ฐ๋ ๋ฐฉ๋ฒ์ด์ผ.
๋ฌธ์ : ์ํ ํจ์จ์ด ๋๋ฌด ๋ฎ์. ์๋ฐฑ๋ง ๋ฒ ์๋ํด์ผ ๊ฒจ์ฐ ๋ฐฐ์.
SE(3)-๋ฑ๋ณ ๋ฐฉ๋ฒ: ํ๋์ ๊ฒฝํ์์ ๋์นญ์ฑ์ ์ด์ฉํด ์ฌ๋ฌ ๊ฒฝํ์ โ๊ณต์ง๋กโ ์ป์ ์ ์์ด!
์๋ฅผ ๋ค์ด, ์ปต์ ํน์ ๊ฐ๋์์ ์ง๋ ๋ฒ์ ๋ฐฐ์ ๋ค๋ฉด, ๋์นญ์ฑ์ ์ด์ฉํด ๋ค๋ฅธ ๋ชจ๋ ๊ฐ๋์์ ์ง๋ ๋ฒ๋ ์๋์ผ๋ก ์๋ ๊ฑฐ์ผ.
์ํ์ ์ผ๋ก, Q-ํจ์๊ฐ ๋ถ๋ณ์ด๋ฉด:
Q(g \cdot s, g \cdot a) = Q(s, a)
์ํ์ ํ๋์ ๊ฐ์ด ๋ณํํด๋ ๊ฐ์น๋ ๋ณํ์ง ์์.
๐ ๏ธ ์ค์ ์์ฉ ์์
1. ๋ฌผ์ฒด ์ง๊ธฐ (Grasping)
- ์ ๋ ฅ: ๋ฌผ์ฒด์ ํฌ์ธํธ ํด๋ผ์ฐ๋
- ์ถ๋ ฅ: ์ง๋ ์์น์ ๋ฐฉํฅ (SE(3) ๋ณํ!)
- ๋ฑ๋ณ ์๊ตฌ์ฌํญ: ๋ฌผ์ฒด๋ฅผ ๋๋ฆฌ๋ฉด, ์ง๋ ์์ธ๋ ๊ฐ์ด ๋์์ผ ํด
2. ๊ถค์ ๊ณํ (Trajectory Planning)
- ์ ๋ ฅ: ์์ ์์ธ, ๋ชฉํ ์์ธ
- ์ถ๋ ฅ: ๊ฒฝ๋ก (SE(3) ๋ณํ๋ค์ ์ํ์ค)
- ๋ฑ๋ณ ์๊ตฌ์ฌํญ: ์ ์ฒด ๋ฌธ์ ๋ฅผ ๋ณํํ๋ฉด, ํด๋ต ๊ฒฝ๋ก๋ ๊ฐ์ด ๋ณํ
3. ํ ์ ์ด (Force Control)
- ๋ก๋ด์ด ํ๋ฉด์ ๋ฐ๋ผ ์ผ์ ํ ํ์ ์ ์งํ๋ฉฐ ์ด๋
- ์ขํ๊ณ๊ฐ ๋ฐ๋์ด๋ ์ ์ด ๋ฒ์น์ ๋์ผํ๊ฒ ์๋ํด์ผ ํด
8์ฅ: ๊ธฐํํ์ ์ ์ด์ SE(3)
๐ฏ ์ ๊ธฐํํ์ ์ ์ด๊ฐ ํ์ํ ๊น?
์ ํต์ ์ธ ์ ์ด ์ด๋ก ์ ์ฃผ๋ก ์ ํด๋ฆฌ๋ ๊ณต๊ฐ \mathbb{R}^n์์ ๋์ํด. ํ์ง๋ง ๋ก๋ด์ ์์ธ(pose)๋ \mathbb{R}^n์ด ์๋๋ผ SE(3) ์์ ์ ์ด์ผ.
์๋ฅผ ๋ค์ด, ๋ ํ์ ์ฌ์ด์ โํ๊ท โ์ ์ด๋ป๊ฒ ๊ตฌํ ๊น? ๋จ์ํ ํ๋ ฌ์ ๋ํด์ 2๋ก ๋๋๋ฉด ์ ๋ผ โ ๊ฒฐ๊ณผ๊ฐ ํ์ ํ๋ ฌ์ด ์๋ ์ ์๊ฑฐ๋ !
๊ธฐํํ์ ์ ์ด๋ SE(3)์ ๊ตฌ์กฐ๋ฅผ ์กด์คํ๋ฉด์ ์ ์ด ๋ฒ์น์ ์ค๊ณํ๋ ๊ฑฐ์ผ.
๐ ์ค์ฐจ ํจ์์ ์ ์
๋ SE(3) ์์ธ T_1, T_2 ์ฌ์ด์ ์ค์ฐจ๋ฅผ ์ด๋ป๊ฒ ์ ์ํ ๊น?
์๋ ๋ณํ์ ์ฌ์ฉํด:
T_e = T_1^{-1} T_2
์ด๊ฑด โ์ฒซ ๋ฒ์งธ ์์ธ์์ ๋ ๋ฒ์งธ ์์ธ๋ก ๊ฐ๋ ค๋ฉด ์ด๋ค ๋ณํ์ด ํ์ํ๊ฐ?โ๋ฅผ ๋ํ๋ด.
๋ฆฌ ๋์๋ก ๋ณํํ๋ฉด:
\xi_e = \log(T_e)^\vee \in \mathbb{R}^6
์ด 6์ฐจ์ ๋ฒกํฐ๊ฐ ๋ฐ๋ก ์์ธ ์ค์ฐจ์ผ.
โ๏ธ PD ์ ์ด๊ธฐ์ ๊ธฐํํ์ ๋ฒ์
์ ํด๋ฆฌ๋ ๊ณต๊ฐ์์์ PD ์ ์ด๊ธฐ:
u = -K_p e - K_d \dot{e}
SE(3)์์์ ๊ธฐํํ์ ๋ฒ์ :
u = -K_p \xi_e - K_d \dot{\xi}_e
์ฌ๊ธฐ์ \xi_e๋ ์์์ ์ ์ํ ์์ธ ์ค์ฐจ์ผ.
์ด ์ ์ด๊ธฐ๋ SE(3)-๋ฑ๋ณ์ด์ผ:
u(g \cdot T, g \cdot T_d) = g \cdot u(T, T_d)
์ขํ๊ณ๋ฅผ ๋ฐ๊ฟ๋ ์ ์ด ๋ฒ์น์ด ์ผ๊ด์ฑ ์๊ฒ ์๋ํ๋ค๋ ๋ป์ด์ง!
9์ฅ: ์์ ์ด์ ๋ฆฌ
ํต์ฌ ์ ์๋ค
1. ๊ตฐ (Group) (G, \cdot)
\begin{align} &\text{๋ซํ:} \quad g_1 \cdot g_2 \in G \\ &\text{๊ฒฐํฉ๋ฒ์น:} \quad (g_1 \cdot g_2) \cdot g_3 = g_1 \cdot (g_2 \cdot g_3) \\ &\text{ํญ๋ฑ์:} \quad \exists e : g \cdot e = e \cdot g = g \\ &\text{์ญ์:} \quad \forall g, \exists g^{-1} : g \cdot g^{-1} = e \end{align}
2. SO(3) โ 3D ํ์ ๊ตฐ
SO(3) = \{R \in \mathbb{R}^{3 \times 3} : R^T R = I, \det(R) = 1\}
3. SE(3) โ ํน์ ์ ํด๋ฆฌ๋ ๊ตฐ
SE(3) = \left\{ T = \begin{bmatrix} R & p \\ 0 & 1 \end{bmatrix} : R \in SO(3), p \in \mathbb{R}^3 \right\}
4. ๋ฑ๋ณ์ฑ (Equivariance)
f(\rho_X(g) \cdot x) = \rho_Y(g) \cdot f(x), \quad \forall g \in G
5. ๋ถ๋ณ์ฑ (Invariance)
f(g \cdot x) = f(x), \quad \forall g \in G
6. ๋ฆฌ ๋์ \mathfrak{so}(3)
\omega^\wedge = \begin{bmatrix} 0 & -\omega_3 & \omega_2 \\ \omega_3 & 0 & -\omega_1 \\ -\omega_2 & \omega_1 & 0 \end{bmatrix}, \quad \omega \in \mathbb{R}^3
7. ๋ฆฌ ๋์ \mathfrak{se}(3)
\xi^\wedge = \begin{bmatrix} \omega^\wedge & v \\ 0 & 0 \end{bmatrix}, \quad \xi = \begin{bmatrix} v \\ \omega \end{bmatrix} \in \mathbb{R}^6
8. ์ง์ ์ฌ์ (๋ก๋๋ฆฌ๊ฒ์ค ๊ณต์)
\exp(\omega^\wedge) = I + \frac{\sin\theta}{\theta}\omega^\wedge + \frac{1-\cos\theta}{\theta^2}(\omega^\wedge)^2, \quad \theta = \|\omega\|
10์ฅ: ๋ง๋ฌด๋ฆฌ โ ์ ์ด๊ฒ ์ค์ํ ๊น?
๐ ๋ฑ๋ณ ์ ๊ฒฝ๋ง์ ์ฅ์
- ์ํ ํจ์จ: ์ ์ ๋ฐ์ดํฐ๋ก ๋ ๋นจ๋ฆฌ ํ์ต
- ์ผ๋ฐํ: ๋ณธ ์ ์๋ ์์ธ๋ ์์น์๋ ์ ์๋
- ๋ฌผ๋ฆฌ์ ์ผ๊ด์ฑ: ์์ฐ์ ๋์นญ์ฑ์ ์กด์ค
- ํด์ ๊ฐ๋ฅ์ฑ: ์ ๊ทธ๋ฐ ๊ฒฐ์ ์ ๋ด๋ ธ๋์ง ์ดํดํ๊ธฐ ์ฌ์
โ์์ฐ์ ๋จ์ํจ์ ์ข์ํด. ๋ง์ฝ ๋ค ์ด๋ก ์ด ๋๋ฌด ๋ณต์กํ๋ค๋ฉด, ์๋ง ๋ญ๊ฐ ๋น ๋จ๋ฆฐ ๊ฑฐ์ผ.โ
SE(3)-๋ฑ๋ณ์ฑ์ด ๋ณต์กํด ๋ณด์ผ ์ ์์ง๋ง, ์ฌ์ค ์ด๊ฑด ์์ฐ์ ๋จ์ํจ์ ์กด์คํ๋ ๊ฒ์ด์ผ.
๋ฌผ์ฒด๋ฅผ ๋๋ฆฌ๋ฉด ์ง๋ ์์ธ๋ ๋์์ผ ํ๋ ๊ฑด ๋น์ฐํ ๊ฑฐ์์? ๋ฑ๋ณ ์ ๊ฒฝ๋ง์ ์ด โ๋น์ฐํจโ์ ์ํ์ผ๋ก ํํํ ๊ฒ๋ฟ์ด์ผ.
๋ก๋ด์ด ์ธ์์ ์ฐ๋ฆฌ์ฒ๋ผ ์์ฐ์ค๋ฝ๊ฒ ์ดํดํ๋ ค๋ฉด, ์ด๋ฐ ๊ธฐ๋ณธ์ ์ธ ๋์นญ์ฑ์ ์์์ผ ํด. ๊ทธ๋ฆฌ๊ณ ์ด์ ๋๋ ๊ทธ ๋น๋ฐ์ ์๊ฒ ๋์ด!
๐ ๋ ๊ณต๋ถํ๊ณ ์ถ๋ค๋ฉด
- ๊ตฐ๋ก ๊ธฐ์ด: โGroup Theory in a Nutshell for Physicistsโ โ Anthony Zee
- ๊ธฐํํ์ ๋ฅ๋ฌ๋: โGeometric Deep Learningโ โ Bronstein et al.
- ๋ก๋ด ์ญํ: โA Mathematical Introduction to Robotic Manipulationโ โ Murray, Li, Sastry
- ์ด ๋ ผ๋ฌธ ์๋ณธ: Seo et al., โSE(3)-Equivariant Robot Learning and Control: A Tutorial Surveyโ (arXiv:2503.09829)
โ๏ธ Dig Review
โ๏ธ Dig โ Go deep, uncover the layers. Dive into technical detail.
1. ์๋ก (Introduction)
1.1 ๋ฐฐ๊ฒฝ: ๋ฅ๋ฌ๋๊ณผ ๋ก๋ณดํฑ์ค์ ๋ง๋จ
์ต๊ทผ ๋ฅ๋ฌ๋์ ๋ฐ์ ์ ๋ก๋ณดํฑ์ค ๋ถ์ผ์ ํ๋ช ์ ์ธ ๋ณํ๋ฅผ ๊ฐ์ ธ์๋ค. ๋ชจ๋ฐฉ ํ์ต(Imitation Learning), ๊ฐํ ํ์ต(Reinforcement Learning), ๊ทธ๋ฆฌ๊ณ ๋๊ท๋ชจ ์ธ์ด ๋ชจ๋ธ(LLM) ๊ธฐ๋ฐ์ ๋ฉํฐ๋ชจ๋ฌ ์ธ์ ๋ฐ ์์ฌ๊ฒฐ์ ๊ธฐ์ ์ด ๋ก๋ด์ด ๋ณต์กํ ํ๊ฒฝ์ ์ดํดํ๊ณ ์ ์ํ๋ ๋ฐ ํฌ๊ฒ ๊ธฐ์ฌํ๊ณ ์๋ค.
1.2 ๋ฌธ์ ์ : ๊ธฐ์กด ๋ฅ๋ฌ๋์ ํ๊ณ
ํ์ง๋ง ๊ธฐ์กด์ ๋ฅ๋ฌ๋๊ณผ ํธ๋์คํฌ๋จธ ๋ชจ๋ธ์๋ ๊ทผ๋ณธ์ ์ธ ๋ฌธ์ ๊ฐ ์๋ค:
- ๋์นญ์ฑ(Symmetry)๊ณผ ๋ถ๋ณ์ฑ(Invariance)์ ๋ณธ์ง์ ์ผ๋ก ๋ค๋ฃจ์ง ๋ชปํจ
- ์ด๋ฅผ ๋ณด์ํ๊ธฐ ์ํด ๋๊ท๋ชจ ๋ฐ์ดํฐ์ ์ด๋ ๊ด๋ฒ์ํ ๋ฐ์ดํฐ ์ฆ๊ฐ(Data Augmentation)์ด ํ์ํจ
- ๊ฒฐ๊ณผ์ ์ผ๋ก ํ์ต ํจ์จ์ด ๋จ์ด์ง๊ณ , ์ผ๋ฐํ ์ฑ๋ฅ๋ ์ ํ์ ์
1.3 ํด๊ฒฐ์ฑ : ๋ฑ๋ณ ์ ๊ฒฝ๋ง (Equivariant Neural Networks)
๋ฑ๋ณ ์ ๊ฒฝ๋ง์ ๋์นญ์ฑ๊ณผ ๋ถ๋ณ์ฑ์ ์ ๊ฒฝ๋ง ๊ตฌ์กฐ ์์ฒด์ ๋ช ์์ ์ผ๋ก ํตํฉํจ์ผ๋ก์จ ์ด๋ฌํ ํ๊ณ๋ฅผ ๊ทน๋ณตํ๋ค. ํนํ SE(3)-๋ฑ๋ณ ๋ชจ๋ธ์ 3D ๊ณต๊ฐ์์์ ํ์ ๊ณผ ํํ์ด๋ ๋์นญ์ฑ์ ํ์ฉํ์ฌ ์๊ฐ ๊ธฐ๋ฐ ๋ก๋ด ์กฐ์(Visual Robotic Manipulation)์์ ๋ฐ์ด๋ ํจ์จ์ฑ๊ณผ ์ผ๋ฐํ ์ฑ๋ฅ์ ๋ณด์ธ๋ค.
1.4 ๋ ผ๋ฌธ์ ๊ธฐ์ฌ
์ด ์๋ฒ ์ด ๋ ผ๋ฌธ์ ์ฃผ์ ๊ธฐ์ฌ๋ ๋ค์๊ณผ ๊ฐ๋ค:
- ๊ทธ๋ฃน ๋ฑ๋ณ ๋ฅ๋ฌ๋๊ณผ ์ ์ด์ ๋ํ ํฌ๊ด์ ์ธ ๋ฆฌ๋ทฐ
- ๊ทธ๋ฃน ๋ฑ๋ณ ๋ฅ๋ฌ๋์ ์ํ์ ๊ฐ๋ ๊ณผ ๊ตฌ์กฐ์ ๋ํ ์ฌ์ธต์ ์ธ ์ค๋ช
- ๊ธฐํํ์ ์ ์ด(Geometric Control) ๊ด์ ์์์ ๊ทธ๋ฃน ๋ฑ๋ณ ์ ์ด ๋ฐฉ๋ฒ๋ก ๋ฆฌ๋ทฐ
- ๋ก๋ณดํฑ์ค ๋ถ์ผ์์ ํผ์ฉ๋๋ ํ๊ธฐ๋ฒ๋ค์ ํต์ผ๋ ์ํ์ ํ๊ธฐ๋ฒ์ผ๋ก ์ ๋ฆฌ
2. ์ฌ์ ์ง์ (Preliminaries)
์ด ์น์ ์์๋ ๊ธฐํํ์ ๋ฅ๋ฌ๋๊ณผ ์ ์ด๋ฅผ ์ดํดํ๊ธฐ ์ํ ์ํ์ ๊ธฐ์ด๋ฅผ ๋ค๋ฃฌ๋ค. ํนํ SE(3)๋ ๊ฐ์ฒด ๋ณํ(Rigid Body Transformation)์ ๋ถ์ํ๊ณ ๋ก๋ณดํฑ์ค์ ๋ค์ํ ๋น์ ๋ฐ ์กฐ์ ์์ ์ ํ์์ ์ธ ๊ฐ๋ ์ด๋ค.
2.1 ๊ตฐ (Groups)
2.1.1 ๊ตฐ์ ์ ์
๊ตฐ(Group) (G, \cdot)์ ์งํฉ G์ ์ดํญ ์ฐ์ฐ โ\cdotโ๋ก ๊ตฌ์ฑ๋๋ฉฐ, ๋ค์ ๋ค ๊ฐ์ง ๊ณต๋ฆฌ๋ฅผ ๋ง์กฑํด์ผ ํ๋ค:
| ๊ณต๋ฆฌ | ์ํ์ ํํ | ์ค๋ช |
|---|---|---|
| ๋ซํ (Closure) | \forall h, g \in G \Rightarrow h \cdot g \in G | ๋ ์์์ ์ฐ์ฐ ๊ฒฐ๊ณผ๋ ๊ตฐ์ ์ํจ |
| ํญ๋ฑ์ (Identity) | \exists 1 \in G : 1 \cdot g = g \cdot 1 = g | ์ฐ์ฐํด๋ ๋ณํ์ง ์๋ ์์ ์กด์ฌ |
| ์ญ์ (Inverse) | \forall g \in G, \exists g^{-1} : g^{-1} \cdot g = g \cdot g^{-1} = 1 | ๋ชจ๋ ์์์ ์ญ์ ์กด์ฌ |
| ๊ฒฐํฉ๋ฒ์น (Associativity) | (g \cdot h) \cdot f = g \cdot (h \cdot f) | ์ฐ์ฐ ์์ ๊ดํธ ์์น ๋ฌด๊ด |
2.1.2 ๊ตฐ์ ์์
ํํ์ด๋๊ตฐ (Translation Group) (\mathbb{R}^n, +): - ์งํฉ: \mathbb{R}^n์ ๋ฒกํฐ๋ค - ์ฐ์ฐ: ๋ฒกํฐ ๋ง์ , x_1 \cdot x_2 = x_1 + x_2 - ํญ๋ฑ์: 1 = 0 (์์ ) - ์ญ์: g^{-1} = -g
์ผ๋ฐ์ ํ๊ตฐ (General Linear Group) GL(n, \mathbb{R}): - ์งํฉ: ์ญํ๋ ฌ์ด ์กด์ฌํ๋ n \times n ์ค์ ํ๋ ฌ๋ค
GL(n, \mathbb{R}) := \{A \in \mathbb{R}^{n \times n} | \det(A) \neq 0\}
- ์ฐ์ฐ: ํ๋ ฌ ๊ณฑ์
- ํญ๋ฑ์: ๋จ์ ํ๋ ฌ I_n
- ์ญ์: ์ญํ๋ ฌ A^{-1}
2.1.3 ๋ถ๋ถ๊ตฐ (Subgroup)
๋ถ๋ถ๊ตฐ์ ๊ฐ์ ์ฐ์ฐ ํ์์ ๊ตฐ ์์ฒด๊ฐ ๋๋ ๊ตฐ์ ๋ถ๋ถ์งํฉ (H \subset G)์ด๋ค.
์ค์ํ ๋ถ๋ถ๊ตฐ๋ค:
| ๊ตฐ | ์ ์ | ์ค๋ช |
|---|---|---|
| GL^+(n, \mathbb{R}) | \{A \in \mathbb{R}^{n \times n} \| \det(A) > 0\} | ์์ ํ๋ ฌ์์ ๊ฐ์ง ํ๋ ฌ |
| U(n) | \{A \in \mathbb{C}^{n \times n} \| AA^* = I\} | ์ ๋ํฐ๋ฆฌ ๊ตฐ |
| O(n) | \{A \in \mathbb{R}^{n \times n} \| AA^T = I\} | ์ง๊ต ๊ตฐ |
| SO(n) | \{R \in \mathbb{R}^{n \times n} \| R^TR = RR^T = I, \det(R) = +1\} | ํน์ ์ง๊ต ๊ตฐ (ํ์ ํ๋ ฌ) |
2.1.4 ๊ตฐ ์์ฉ (Group Actions)
๊ตฐ G๊ฐ ์งํฉ M์ ์์ฉํ๋ค๋ ๊ฒ์ ๋ค์์ ๋ง์กฑํ๋ ์ฌ์ G \times M \to M์ด ์กด์ฌํ๋ค๋ ๊ฒ์ด๋ค.
์ข์์ฉ (Left Action): g_1 \circ (g_2 \circ p) = (g_1 \cdot g_2) \circ p, \quad e \circ p = p, \quad \forall g_1, g_2 \in G, p \in M
์ฐ์์ฉ (Right Action): (p \circ g_1) \circ g_2 = p \circ (g_1 \cdot g_2), \quad p \circ e = p
์์: 3์ฐจ์ ๋ฒกํฐ์ ๋ํ ํ์ ์์ฉ SO(3) \times \mathbb{R}^3 \to \mathbb{R}^3, \quad (R, p) \to R \circ p = Rp
2.1.5 ๋ฐ์ง์ ๊ณฑ (Semidirect Product)
๋ ๊ตฐ H์ N์ด ์๊ณ , H๊ฐ N์ ์ข์์ฉ \theta_h : H \times N \to N์ ํ๋ค๋ฉด, ๋ฐ์ง์ ๊ณฑ N \rtimes H๋ฅผ ์ ์ํ ์ ์๋ค:
(n, h) \cdot (n', h') = (n \cdot \theta_h(n'), h \cdot h') = (n \cdot (h \circ n'), h \cdot h')
2.1.6 ํน์ ์ ํด๋ฆฌ๋ ๊ตฐ SE(3)
SE(3)๋ ๋ชจ๋ ๊ฐ์ฒด ๋ณํ(ํํ์ด๋๊ณผ ํ์ )์ผ๋ก ๊ตฌ์ฑ๋ ๊ตฐ์ผ๋ก, ํ์ -ํํ์ด๋ ๊ตฐ์ด๋ผ๊ณ ๋ ๋ถ๋ฆฐ๋ค.
SE(n) = \mathbb{R}^n \rtimes SO(n)
๊ตฐ ์ฐ์ฐ: g_1 \cdot g_2 = (p_1 + R_1 p_2, R_1 R_2)
์ญ์: g^{-1} = (-R^{-1}p, R^{-1})
์ฌ๊ธฐ์ g_1 = (p_1, R_1), g_2 = (p_2, R_2)๋ SE(n)์ ์์์ด๋ค.
2.2 ํ๋ ฌ ๋ฆฌ ๊ตฐ๊ณผ ๋ฆฌ ๋์ (Matrix Lie Groups and Algebras)
2.2.1 ๋ฆฌ ๊ตฐ (Lie Groups)
๋ฆฌ ๊ตฐ์ ์ฐ์๊ตฐ์ด๋ฉด์ ๋์์ ๋ฏธ๋ถ ๊ฐ๋ฅํ ๋ค์์ฒด(Manifold)์ธ ๊ตฐ์ด๋ค. ์ฆ, ๊ตฐ ๊ตฌ์กฐ์ ๋งค๋๋ฌ์ด ๊ธฐํํ์ ๊ตฌ์กฐ๋ฅผ ๋์์ ๊ฐ์ง๋ค.
๋ฆฌ ๊ตฐ์ ์์:
- ํํ์ด๋๊ตฐ (\mathbb{R}^n, +)
- ์ผ๋ฐ์ ํ๊ตฐ GL(n, \mathbb{R})
- ํ์ ๊ตฐ SO(n)
- ํน์ ์ ํด๋ฆฌ๋ ๊ตฐ SE(n)
ํ๋ ฌ ๋ฆฌ ๊ตฐ์ ๊ฐ ์์ g \in G๊ฐ n \times n ํ๋ ฌ์ด๊ณ , ๊ตฐ ์ฐ์ฐ์ด ํ๋ ฌ ๊ณฑ์ ์ด๋ฉฐ, ๊ณฑ์ ๊ณผ ์ญ๋ณํ์ด ๋ชจ๋ ํด์์ (analytic)์ธ ๊ตฐ์ด๋ค.
2.2.2 ๋ฆฌ ๋์ (Lie Algebras)
๋จ์ ํ๋ ฌ I_n์ ๋งค์ฐ ๊ฐ๊น์ด ๊ตฐ ์์๋ฅผ ์๊ฐํด๋ณด์:
g(\varepsilon) = I_n + \varepsilon X, \quad |\varepsilon| \ll 1
์ฌ๊ธฐ์ X \in \mathfrak{g} = T_{I_n}G๋ ์์ฑ์(Generator)๋ผ ๋ถ๋ฆฌ๋ฉฐ, \mathfrak{g}๋ G์ ํญ๋ฑ์์์์ ์ ์ ๊ณต๊ฐ(Tangent Space)์ผ๋ก ๋ฆฌ ๋์๋ผ๊ณ ๋ถ๋ฆฐ๋ค.
SO(2)์ ๋ฆฌ ๋์ ์์:
SO(2)์ ํ์ ํ๋ ฌ: R_\theta = R(\theta) = \begin{bmatrix} \cos\theta & -\sin\theta \\ \sin\theta & \cos\theta \end{bmatrix}
ํญ๋ฑ์ ๊ทผ์ฒ์์์ ์ญ๋: R(\varepsilon) \approx I_2 + \varepsilon \frac{\partial R(\theta)}{\partial \theta}\bigg|_{\theta=0} = I_2 + \varepsilon X
์์ฑ์: X = \frac{\partial R(\theta)}{\partial \theta}\bigg|_{\theta=0} = \begin{bmatrix} 0 & -1 \\ 1 & 0 \end{bmatrix}
๋ฐ๋ผ์ \mathfrak{so}(2) = \{A \in \mathbb{R}^{2 \times 2} | A^T = -A\}, ์ฆ ๋ชจ๋ 2 \times 2 ๋ฐ๋์นญ ํ๋ ฌ์ ์งํฉ์ด๋ค.
2.2.3 ์ง์ ์ฌ์ (Exponential Map)
๋ฌดํ์ ๋ณํ R(\varepsilon) = I_2 + \varepsilon X๋ฅผ ๋ฌดํํ ๋ง์ด ๊ณฑํ๋ฉด ์ ํ ๋ณํ์ ์ป๋๋ค:
R(\theta) = \lim_{N \to \infty} \left(I_2 + \frac{\theta}{N}X\right)^N = \exp(X\theta)
์ผ๋ฐ์ ์ธ ํ๋ ฌ ๋ฆฌ ๊ตฐ์์, ๋ฆฌ ๋์ ์์ X \in \mathfrak{g}์ t \in \mathbb{R}์ ๋ํด:
g(t) = \exp(tX) = \sum_{n=0}^{\infty} \frac{1}{n!}(tX)^n
์ค์ํ ์ฑ์ง: \frac{d}{dt}\exp(tX)\bigg|_{t=0} = X
๋ก๊ทธ ์ฌ์ (Log Map): ์ง์ ์ฌ์์ ์ญํจ์ \log : G \to \mathfrak{g}, \quad \text{if } g = \exp(X), \text{ then } X = \log(g)
2.2.4 Hat-map๊ณผ Vee-map
๋ฆฌ ๋์ \mathfrak{g}๊ฐ l์ฐจ์ ๋ฒกํฐ ๊ณต๊ฐ์ผ ๋:
Hat-map \widehat{(\cdot)} : \mathbb{R}^l \to \mathfrak{g}: ๋ฒกํฐ๋ฅผ ๋ฆฌ ๋์ ์์๋ก ๋ณํ
Vee-map (\cdot)^\vee : \mathfrak{g} \to \mathbb{R}^l: ๋ฆฌ ๋์ ์์๋ฅผ ๋ฒกํฐ๋ก ๋ณํ
2.2.5 ๋ฆฌ ๊ดํธ (Lie Bracket)
๋ฆฌ ๋์ \mathfrak{g}๋ ๋ฆฌ ๊ดํธ ์ฐ์ฐ [\cdot, \cdot] : \mathfrak{g} \times \mathfrak{g} \to \mathfrak{g}๋ฅผ ๊ฐ์ถ๋ฉฐ, ๋ค์์ ๋ง์กฑํ๋ค:
- ์์ ํ (Bilinear)
- ๋ฐ๋์นญ (Antisymmetric): [a, b] = -[b, a]
- ์ผ์ฝ๋น ํญ๋ฑ์ (Jacobi identity): [a, [b, c]] + [b, [c, a]] + [c, [a, b]] = 0
๋ฆฌ ๊ดํธ๋ ๋น๊ฐํ์ฑ์ ๋ฌดํ์ ์ธก์ ์ผ๋ก ํด์ํ ์ ์๋ค.
\mathfrak{so}(3)์ ๊ธฐ์ ๋ฒกํฐ:
L_x = \begin{bmatrix} 0 & 0 & 0 \\ 0 & 0 & -1 \\ 0 & 1 & 0 \end{bmatrix}, \quad L_y = \begin{bmatrix} 0 & 0 & 1 \\ 0 & 0 & 0 \\ -1 & 0 & 0 \end{bmatrix}, \quad L_z = \begin{bmatrix} 0 & -1 & 0 \\ 1 & 0 & 0 \\ 0 & 0 & 0 \end{bmatrix}
๋ฆฌ ๊ดํธ ๊ด๊ณ: [L_x, L_y] = L_z (๋ฐ ์ํ ์นํ)
๋ฌผ๋ฆฌ์ ์๋ฏธ: x์ถ ํ์ ํ y์ถ ํ์ ๊ณผ ๊ทธ ์ญ์์ ์ฐจ์ด๋ z์ถ ์ฃผ์์ ์์ ํ์ ์ด๋ค.
2.2.6 ๊ตฐ ํํ (Group Representation)
์ ์: ๋ฆฌ ๊ตฐ G์ ํํ์ ๋ค์์ ๋ง์กฑํ๋ ์ฌ์ D : G \to GL(V)์ด๋ค:
D(g)D(h) = D(g \cdot h), \quad \forall g, h \in G
๋์น ํํ (Equivalent Representations): ๊ธฐ์ ๋ณํ U๊ฐ ์กด์ฌํ์ฌ: D'(g) = UD(g)U^{-1}, \quad \forall g \in G
๊ธฐ์ฝ ํํ (Irreducible Representation): ๋ ์ด์ ์์ ๋ถ๋ถ๊ณต๊ฐ์ผ๋ก ๋ถํด(๋ธ๋ก ๋๊ฐํ)ํ ์ ์๋ ํํ์ด๋ค.
2.2.7 ์ข-์ฐ ํํ์ด๋ (Left and Right Translations)
g, h \in G์ ๋ํด:
์ขํํ์ด๋: L_g : G \to G, L_g(h) = gh
์ฐํํ์ด๋: R_g : G \to G, R_g(h) = hg
์ข๋ถ๋ณ ๋ฒกํฐ์ฅ: X(gh) = dL_g(h)X(h)๋ฅผ ๋ง์กฑํ๋ ๋ฒกํฐ์ฅ
ํ๋ ฌ ๋ฆฌ ๊ตฐ์์: X(g) = gX(1)
2.2.8 ์๋ฐ ํํ (Adjoint Representations)
๋ด๋ถ ์๊ธฐ๋ํ์ฌ์: \Psi_g(h) = R_{g^{-1}}L_g(h) = ghg^{-1}
๋์๋ฐ ์ฐ์ฐ์ (Large Adjoint): \text{Ad}_g : G \times \mathfrak{g} \to \mathfrak{g}
\text{Ad}_g X := \frac{d}{dt}(g \cdot \exp(tX) \cdot g^{-1})|_{t=0} = gXg^{-1}
์์๋ฐ ์ฐ์ฐ์ (Small adjoint): \text{ad} : \mathfrak{g} \to \mathfrak{gl}(\mathfrak{g})
\text{ad}_X Y = [X, Y]
Ad์ ad์ ๊ด๊ณ:
\text{Ad}_{(\exp tX)} = \exp(t \cdot \text{ad}_{(X)})
ํฉ์ฑ ๊ท์น:
\text{Ad}_g \text{Ad}_h(X) = \text{Ad}_{gh}(X)
2.2.9 ํจ์์ ๋ฆฌ ๋ฏธ๋ถ (Lie Derivative)
X \in \mathfrak{g}์ด๊ณ f : G \to \mathbb{R}๊ฐ ํด์์ ์ผ ๋:
\mathcal{L}_X f(g) := \lim_{t \to 0} \frac{f(g\exp(tX)) - f(g)}{t} = \frac{d}{dt}f(g\exp(tX))\bigg|_{t=0}
2.3 ํน์ ์ ํด๋ฆฌ๋ ๊ตฐ SE(3)
SE(3)๋ ๋ก๋ณดํฑ์ค์์ ๊ฐ์ฅ ๋๋ฆฌ ์ฌ์ฉ๋๋ ๊ตฐ์ผ๋ก, ์ด ์น์ ์์ ์์ธํ ๋ค๋ฃฌ๋ค.
2.3.1 SE(3)์ ๋ฆฌ ๊ตฐ ์ฑ์ง
SE(3)์์์ ๊ฐ์ฒด ์ด๋
์ขํ๊ณ \{A\} (๊ด์ฑ ์ขํ๊ณ)์ ๋ํ ๊ฐ์ฒด์ ๋ถ์ฐฉ๋ ์ขํ๊ณ \{B\}์ ์์น์ ๋ฐฉํฅ์ ๊ณ ๋ คํ์.
SE(3) = \{(p, R) : p \in \mathbb{R}^3, R \in SO(3)\} = \mathbb{R}^3 \rtimes SO(3)
์์ g = (p, R) \in SE(3)๋:
- ๊ฐ์ฒด์ ๋ฐฐ์น(Configuration) ์ฌ์
- ์ขํ ๋ณํ (ํ ํ๋ ์์์ ๋ค๋ฅธ ํ๋ ์์ผ๋ก)
์ q์ ๋ํ ๊ฐ์ฒด ๋ณํ์ ์์ฉ: g \circ q = p + Rq
๋์ฐจ ํ๋ ฌ ํํ (Homogeneous Matrix Representation)
\bar{g} = \begin{bmatrix} R & p \\ 0 & 1 \end{bmatrix}, \quad R \in SO(3), p \in \mathbb{R}^3
๋์ฐจ ์ขํ๋ฅผ ์ฌ์ฉํ ์ขํ ๋ณํ: \bar{q}_a = \begin{bmatrix} q_a \\ 1 \end{bmatrix} = \begin{bmatrix} R_{ab} & p_{ab} \\ 0 & 1 \end{bmatrix} \begin{bmatrix} q_b \\ 1 \end{bmatrix} = \bar{g}_{ab}\bar{q}_b
SE(3)์ ๊ตฐ ์ฑ์ง ํ์ธ:
- ๋ซํ: g_1, g_2 \in SE(3) \Rightarrow g_1g_2 \in SE(3)
- ํญ๋ฑ์: I_4 \in SE(3)
- ์ญ์: g^{-1} = \begin{bmatrix} R^T & -R^T p \\ 0 & 1 \end{bmatrix} \in SE(3)
- ๊ฒฐํฉ๋ฒ์น ์ฑ๋ฆฝ
2.3.2 SE(3)์ ๋ฆฌ ๋์ ์ฑ์ง
\mathfrak{so}(3)์ \mathfrak{se}(3)์ Hat-map๊ณผ Vee-map
\mathfrak{so}(3)์ Hat-map \widehat{(\cdot)} : \mathbb{R}^3 \to \mathfrak{so}(3):
\hat{\omega} = -\hat{\omega}^T = \begin{bmatrix} 0 & -\omega_3 & \omega_2 \\ \omega_3 & 0 & -\omega_1 \\ -\omega_2 & \omega_1 & 0 \end{bmatrix} \in \mathbb{R}^{3 \times 3}
\hat{\omega}v = \omega \times v (๋ฒกํฐ์ ์ธ์ )
\mathfrak{se}(3)์ Hat-map \widehat{(\cdot)} : \mathbb{R}^6 \to \mathfrak{se}(3):
\hat{\xi} = \begin{bmatrix} \hat{\omega} & v \\ 0 & 0 \end{bmatrix} \in \mathfrak{se}(3) \subset \mathbb{R}^{4 \times 4}, \quad \forall \xi = \begin{bmatrix} v \\ \omega \end{bmatrix} \in \mathbb{R}^6
ํธ์์คํธ (Twist)
\mathfrak{se}(3)์ ์์๋ฅผ ํธ์์คํธ ๋๋ ์ ํด๋ฆฌ๋ ๊ตฐ์ (๋ฌดํ์) ์์ฑ์๋ผ๊ณ ๋ถ๋ฅธ๋ค.
g \in SE(3)๊ฐ \hat{\xi} \in \mathfrak{se}(3)์ ์์ฉํ๋ ์๋ฐ ์์ฉ:
\text{Ad}_g \hat{\xi} = g\hat{\xi}g^{-1}
๋ฌผ์ฒด ์๋ (Body Velocity)์ ๊ณต๊ฐ ์๋ (Spatial Velocity)
์๊ฐ์ ๋ฐ๋ฅธ ๊ณก์ g_{ab}(t) = \begin{bmatrix} R_{ab}(t) & p_{ab}(t) \\ 0 & 1 \end{bmatrix}์ ๋ํด:
๊ณต๊ฐ ์๋:
\hat{V}^s_{ab} := \dot{g}_{ab}g^{-1}_{ab}
V^s_{ab} = \begin{bmatrix} v^s_{ab} \\ \omega^s_{ab} \end{bmatrix} = \begin{bmatrix} -\dot{R}_{ab}R^T_{ab}p_{ab} + \dot{p}_{ab} \\ (\dot{R}_{ab}R^T_{ab})^\vee \end{bmatrix}
๋ฌผ์ฒด ์๋:
\hat{V}^b_{ab} := g^{-1}_{ab}\dot{g}_{ab}
V^b_{ab} = \begin{bmatrix} v^b_{ab} \\ \omega^b_{ab} \end{bmatrix} = \begin{bmatrix} R^T_{ab}\dot{p}_{ab} \\ (R^T_{ab}\dot{R}_{ab})^\vee \end{bmatrix}
์๋ ๋ณํ (Adjoint Transformation):
V^s_{ab} = \text{Ad}_{g_{ab}} V^b_{ab}
\text{Ad}_g = \begin{bmatrix} R & \hat{p}R \\ 0 & R \end{bmatrix}, \quad g \in SE(3)
\text{Ad}^{-1}_g = \begin{bmatrix} R^T & -R^T\hat{p} \\ 0 & R^T \end{bmatrix} = \text{Ad}_{g^{-1}}
๋ ์น (Wrench)
๋ ์น๋ ๊ฐ์ฒด์ ์์ฉํ๋ ํ๊ณผ ๋ชจ๋ฉํธ์ ์์ผ๋ก, ์ผ๋ฐํ๋ ํ์ด๋ค:
F = \begin{bmatrix} f \\ \tau \end{bmatrix} \in \mathbb{R}^6
๋ฌดํ์ ์ผ:
\delta W = \langle V^b_{ab}, F^b \rangle = (v^{b^T}_{ab}f + \omega^{b^T}_{ab}\tau)
๋ ์น์ ์ขํ ๋ณํ:
F_c = \text{Ad}^T_{g_{bc}} F_b
\mathfrak{se}(3)์์ SE(3)๋ก์ ์ง์ ์ฌ์
\hat{\xi} \in \mathfrak{se}(3)์ \theta \in \mathbb{R}์ ๋ํด:
\exp(\hat{\xi}\theta) = \exp\left(\begin{bmatrix} \hat{\omega} & v \\ 0 & 0 \end{bmatrix}\theta\right) \in SE(3)
๋ณํ g = \exp(\hat{\xi}\theta)๋ ์ด๊ธฐ ์ขํ p(0) \in \mathbb{R}^3๋ฅผ ๊ฐ์ฒด ์ด๋ ํ์ ์ขํ p(\theta)๋ก ๋งคํํ๋ค: p(\theta) = \exp(\hat{\xi}\theta)p(0)
2.3.3 ์ ๊ธฐ๊ตฌํ (Forward Kinematics)
๋งค๋ํฐ๋ ์ดํฐ์ ์ ๊ธฐ๊ตฌํ์ ์ง์์ ๊ณฑ ๊ณต์ (Product of Exponentials)์ผ๋ก ์ฃผ์ด์ง๋ค:
g(\Theta) = e^{(\hat{\xi}_1\theta_1)}e^{(\hat{\xi}_2\theta_2)} \cdots e^{(\hat{\xi}_n\theta_n)}g(0)
์ฌ๊ธฐ์:
- g(\theta): ๊ณต๊ฐ ์ขํ๊ณ์์ ์๋์ดํํฐ์ ๋์ฐจ ํํ
- \xi_i \in \mathbb{R}^6: ๊ณต๊ฐ ์ขํ๊ณ์์ ํํ๋ ํธ์์คํธ
- \theta_i \in \mathbb{R}: i๋ฒ์งธ ๊ด์ ์ ๊ด์ ๊ฐ๋
3. ๋ฑ๋ณ ๋ฅ๋ฌ๋ (Equivariant Deep Learning)
๋ฑ๋ณ ๋ฅ๋ฌ๋์ ์ฃผ๋ก 2D ์ด๋ฏธ์ง๋ 3D ํฌ์ธํธ ํด๋ผ์ฐ๋์ ๊ฐ์ ์๊ฐ ์ ๋ ฅ์ ์ฒ๋ฆฌํ๋ ๋ฐ ์ฌ์ฉ๋๋ค. ์ด ์ฅ์์๋ ๋ฑ๋ณ์ฑ์ ๊ฐ๋ ๊ณผ ๋ฑ๋ณ ์ ๊ฒฝ๋ง ๊ตฌ์กฐ๋ฅผ ์๊ฐํ๋ค.
3.1 ์ ๊ท ๊ทธ๋ฃน CNN (Regular Group CNNs)
3.1.1 ํ์ค CNN: ์ํธ์๊ด ์ปค๋๊ณผ ๊ฐ์ค์น ๊ณต์
์ํธ์๊ด(Cross-correlation) ์ฐ์ฐ:
์ ๋ ฅ ์ด๋ฏธ์ง f(x)์ ์ํธ์๊ด ์ปค๋ k(x)์ ์ํธ์๊ด:
y(x) = (k \star f)(x) = \int_{\mathbb{R}^n} f(\tilde{x})k(\tilde{x} - x)d\tilde{x}
๋๋ ์ปจ๋ณผ๋ฃจ์ ์ปค๋ \hat{k}(x)๋ฅผ ์ฌ์ฉํ๋ฉด:
y(x) = (\hat{k} * f)(x) = \int_{\mathbb{R}^n} f(\tilde{x})\hat{k}(x - \tilde{x})d\tilde{x}
์ฌ๊ธฐ์ k(x) = \hat{k}(-x)์ด๋ค.
์ข์ ์น ํํ (Left-regular Representation):
๊ตฐ G๊ฐ ํจ์ f(x)์ ์์ฉํ๋ ๋ฐฉ์:
L_g(f)(x) = g \circ f(x) = f(g^{-1} \circ x)
์ด ์ ์์์: L_{g_1g_2}(f)(x) = f((g_1g_2)^{-1} \circ x) = f(g_2^{-1}g_1^{-1} \circ x)
๊ฐ์ค์น ๊ณต์ (Weight-sharing):
ํํ์ด๋๊ตฐ (\mathbb{R}^n, +)์ ์ข์ ์น ํํ์ ์ํธ์๊ด ์ปค๋์ ์ ์ฉ:
T_x(k)(\tilde{x}) := L_x(k)(\tilde{x}) = k(\tilde{x} - x)
์ํธ์๊ด์ ๋ด์ ์ผ๋ก ํํ:
y(x) = (k \star f)(x) = \langle T_x(k), f \rangle_{L^2(\mathbb{R}^n)}
์ด ํํ๋ CNN์ด ํ ํ๋ฆฟ ๋งค์นญ์ ์ํํจ์ ๋ณด์ฌ์ค๋ค. ๊ฐ์ ์ปค๋ ๊ฐ์ค์น๋ฅผ ์ฌ๋ฌ ์์น์์ ๊ณต์ ํ์ฌ ํจ์จ์ ์ธ ํ์ต์ด ๊ฐ๋ฅํ๋ค.
ํ์ค CNN์ ๋ฌธ์ ์ : ํ์ ์ ๋ํ ๊ฐ์ค์น ๊ณต์ ๊ฐ ์์ด์, ๋ค์ํ ๋ฐฉํฅ์ ๋น์ทํ ํํฐ๋ค์ด ์ค๋ณต ์์ฑ๋๋ค.
3.1.2 SE(2) ์ ๊ท ๊ทธ๋ฃน CNN
2D ํ์ ์ ๋ํ ๊ฐ์ค์น ๊ณต์ ๋ฅผ ํตํฉํ๊ธฐ ์ํด, G-CNN์ 2D ํ์ -ํํ์ด๋ ๊ตฐ SE(2)์์์ ์ปจ๋ณผ๋ฃจ์ ๊ฐ๋ ์ ๋์ ํ๋ค.
SE(2) ๋ฆฌํํ ์ํธ์๊ด (Lifting Correlation):
\mathbb{R}^2์์ SE(2) ๊ณต๊ฐ์ผ๋ก์ ๋ฆฌํํ :
f_{SE(2)}(g) = y_{SE(2)}(x, \theta) = (k \star_{SE(2)} f)(x, \theta)
= \langle L_{(x,\theta)}k, f \rangle_{L^2(\mathbb{R}^2)} = \int_{\mathbb{R}^2} k(R_\theta^{-1}(\tilde{x} - x))f(\tilde{x})d\tilde{x}
SE(2) ์ ๊ท ๊ทธ๋ฃน ์ํธ์๊ด:
๋ฆฌํํ ํ, SE(2)์ ๊ณ ์ฐจ์ ํน์ง ๋งต์์ ๊ทธ๋ฃน ์ํธ์๊ด ์ํ:
y(g) = \int_{SE(2)} k(g^{-1} \cdot \tilde{g})f_{SE(2)}(\tilde{g})d\tilde{g}
= \int_{\mathbb{R}^2} \int_{S^1} k(R_\theta^{-1}(\tilde{x} - x), \tilde{\theta} - \theta)f_{SE(2)}(\tilde{x}, \tilde{\theta})d\tilde{x}d\tilde{\theta}
์ค์ ๊ตฌํ: ์ฐ์์ ์ธ SE(2) ๊ตฐ์ ์ ํ ๋ถ๋ถ๊ตฐ \mathbb{R}^2 \rtimes C_N์ผ๋ก ๊ทผ์ฌํ๋ค. ์ฌ๊ธฐ์ C_N์ ์ฐจ์ N์ ์ํ๊ตฐ์ด๋ค.
3.1.3 ๋ฑ๋ณ ์ฌ์ (Equivariant Maps)
G๊ฐ ๋ฆฌ ๊ตฐ์ด๊ณ , M๊ณผ N์ด ๋งค๋๋ฌ์ด ๋ค์์ฒด์ผ ๋, ์ฌ์ \Phi : M \to N์ด G-์์ฉ์ ๋ํด ๋ฑ๋ณ์ด๋ผ ํจ์:
\Phi(g \circ p) = g \circ \Phi(p) \quad \text{(์ข์์ฉ์ ๊ฒฝ์ฐ)}
\Phi(p \circ g) = \Phi(p) \circ g \quad \text{(์ฐ์์ฉ์ ๊ฒฝ์ฐ)}
๋ฑ๋ณ์ฑ์ ์๋ฏธ:
- ์ ๋ ฅ ๋ณํ์ ์ํด ์ ๋ณด๊ฐ ์์ค๋์ง ์์
- ์ถ๋ ฅ์ด ์ ๋ ฅ ๋ณํ์ ๋์ํ๋ ์์น๋ก ์ด๋
- ๋ณํ์ ๋ํ ๊ฐ์ค์น ๊ณต์ ๊ฐ๋ฅ โ ํ์ต ํ๋ผ๋ฏธํฐ ์ ๊ฐ์
3.2 ์กฐํฅ ๊ฐ๋ฅ ๊ทธ๋ฃน CNN (Steerable Group CNNs)
์กฐํฅ ๊ฐ๋ฅ(Steerable) ํน์ง ๋ฒกํฐ๋ฅผ ์ฌ์ฉํ์ฌ ๋ ํจ์จ์ ์ธ ๋ฑ๋ณ CNN์ ๊ตฌ์ฑํ ์ ์๋ค. ์กฐํฅ ๊ฐ๋ฅ ๋ฐฉ๋ฒ์ SO(n)์ ์ด์ฐํ๋ฅผ ํผํ๊ณ , ๊ธฐ์ฝ ํํ์ ํ์ฉํ์ฌ ๋ฆฌ ๊ตฐ ์์ ํธ๋ฆฌ์ ์ด๋ก ์ ์ฌ์ฉํ๋ค.
3.2.1 ๊ตฌ๋ฉด ์กฐํ ํจ์ (Spherical Harmonics, SH)
๊ตฌ๋ฉด ์กฐํ ํจ์๋ ์กฐํฅ ๊ฐ๋ฅ ํจ์์ ์ด๋ก ์ ๊ธฐ์ด๋ฅผ ์ ๊ณตํ๋ฉฐ, SO(3) ๋ณํ์ ๊ธฐ์ ํจ์ ์ญํ ์ ํ๋ค.
Y^l_m(\theta, \phi) = Ne^{im\phi}P^l_m(\cos\theta)
์ฌ๊ธฐ์:
- \theta, \phi: ๋ฐฉ์๊ฐ๊ณผ ๊ฒฝ๋๊ฐ
- P^l_m: ์ฐ๊ด ๋ฅด์ฅ๋๋ฅด ๋คํญ์
- l \in \{0, 1, 2, \ldots\}: ์ฐจ์ (degree)
- m \in \{-l, \ldots, l\}: ์์ (order)
๊ตฌ๋ฉด ์กฐํ ํจ์๊ฐ ํผ์น๋ ๋ถ๋ถ ํํ ๊ณต๊ฐ:
V_0 = \text{Span}\{Y^0_0(n)\} V_1 = \text{Span}\{Y^1_{-1}(n), Y^1_0(n), Y^1_1(n)\} V_k = \text{Span}\{Y^k_{-k}(n), Y^k_{-k+1}(n), \ldots, Y^k_k(n)\}
V_l์ type-l (๋๋ spin-l) ๋ฒกํฐ์ฅ์ด๋ผ ๋ถ๋ฅธ๋ค.
| Type | ์ฐจ์ | ๋ฌผ๋ฆฌ์ ์๋ฏธ |
|---|---|---|
| Type-0 | 1 | ์ค์นผ๋ผ (ํ์ ์ ๋ถ๋ณ) |
| Type-1 | 3 | 3์ฐจ์ ๋ฒกํฐ |
| Type-2 | 5 | ๊ณ ์ฐจ ํ ์ |
๊ตฌ๋ฉด ์กฐํ ํจ์์ ํต์ฌ ์ฑ์ง - Wigner-D ํ๋ ฌ์ ์ํ ๋ฑ๋ณ ๋ณํ:
(2l+1)์ฐจ์ ๋ฒกํฐ์ฅ: Y^l = [Y^l_{-l}, Y^l_{-l+1}, \ldots, Y^l_{l-1}, Y^l_l]^T
Y^l\left(R\frac{x}{\|x\|}\right) = D^l(R)Y^l\left(\frac{x}{\|x\|}\right)
์ฌ๊ธฐ์ D^l(R)์ R \in SO(3)์ ์ฐจ์ l Wigner-D ํ๋ ฌ ํํ์ด๋ค.
3.2.2 Wigner-D ํ๋ ฌ
SO(3)์ ์ง๊ต ๊ธฐ์ ๋ก์์ Wigner-D ํ๋ ฌ:
SO(3) ์์ ์์์ ํจ์ h๋ Wigner-D ํ๋ ฌ์ ํธ๋ฆฌ์ ๊ธ์๋ก ํํ ๊ฐ๋ฅ:
h(R) = \sum_{l=0}^{\infty} \sum_{m=-l}^{l} \sum_{n=-l}^{l} \hat{h}^{(l)}_{mn} D^l_{mn}(R) = \sum_{l=0}^{\infty} \text{tr}[\hat{h}^{(l)}(D^l(R))^T]
SO(3) ๊ตฐ ํํ์ผ๋ก์์ Wigner-D ํ๋ ฌ:
SO(3)์ ์์์ ํํ D(R)์ ๊ธฐ์ฝ ํํ D^l(R)์ ์ง์ ํฉ์ผ๋ก ์ฝ๋ถ ๊ฐ๋ฅ:
D(R) = U\left[\bigoplus_{l=1}^{N} D^l(R)\right]U^{-1}, \quad \forall R \in SO(3)
3.2.3 ์กฐํฅ ๊ฐ๋ฅ ํจ์์ ๋ฒกํฐ
์กฐํฅ ๊ฐ๋ฅ ํจ์: ๋ณํ๊ตฐ G์ ๋ํด, ์์์ ๋ณํ g \in G๊ฐ ์ ํ ๊ธฐ์ ํจ์ ์งํฉ \{\phi_i\}์ ์ ํ ๊ฒฐํฉ์ผ๋ก ํํ ๊ฐ๋ฅ:
L_g k = \sum_{i=1}^{n} \alpha_i(g)\phi_i = \alpha^T(g)\Phi
์กฐํฅ ๊ฐ๋ฅ ํน์ง ๋ฒกํฐ: Wigner-D ํ๋ ฌ์ ์ํด ๋ณํ๋๋ ๋ฒกํฐ
Type-l ์กฐํฅ ๊ฐ๋ฅ ๋ฒกํฐ ๊ณต๊ฐ V_l์ (2l+1)์ฐจ์์ด๋ฉฐ, ์ฐจ์ l์ Wigner-D ํ๋ ฌ์ ์ํด ์์ฉ์ ๋ฐ๋๋ค.
์: u๊ฐ V_3์ type-3 ๋ฒกํฐ์ด๋ฉด, g \in SO(3)์ ์ํด u \to D^3(g)u๋ก ๋ณํ
3.2.4 ์กฐํฅ ๊ฐ๋ฅ ๊ทธ๋ฃน ์ปจ๋ณผ๋ฃจ์
๊ตฌ๋ฉด ์กฐํ ๊ธฐ์ ๋ก ์ ๊ฐ๋ 3D ์ปจ๋ณผ๋ฃจ์ ์ปค๋ (์ฐจ์ L๊น์ง):
k(x) = k_c(\|x\|)(x) := \sum_{l=0}^{L} \sum_{m=-l}^{l} c^l_m(\|x\|)Y^l_m\left(\frac{x}{\|x\|}\right)
์ด ์ปค๋์ ๊ณ์ c์ SO(3) ํํ D(R)์ ์ํด ์กฐํฅ ๊ฐ๋ฅ:
L_g k(x) = k(g^{-1}x) = k_c(R^{-1}x) = k_{D(R)c(\|x\|)}(x)
SE(3) ๋ฆฌํํ ์ปจ๋ณผ๋ฃจ์ :
y(g) = y(x, R) = \langle L_g k, f \rangle_{L^2(\mathbb{R}^3)}
= D(R)^T \int_{\mathbb{R}^3} c(\|\tilde{x} - x\|)^T \Phi\left(\frac{\tilde{x} - x}{\|\tilde{x} - x\|}\right)f(\tilde{x})d\tilde{x}
= D(R)^T \hat{f}^\Phi_c(x)
์ฌ๊ธฐ์ \hat{f}^\Phi_c(x)๋ ์๋ต์ ์กฐํฅ ๊ฐ๋ฅ ๋ฒกํฐ์ด๋ค.
ํต์ฌ: D(R)^T๊ฐ ์ปจ๋ณผ๋ฃจ์ ์ ๋ถ ๋ฐ์ผ๋ก ๋์ฌ ์ ์์ด์, R์ ๋ํ ์ด์ฐํ ์์ด y(g)๋ฅผ g์ ํจ์๋ก ํํ ๊ฐ๋ฅํ๋ค.
3.2.5 ํด๋ ์-๊ณ ๋ฅด๋จ ํ ์๊ณฑ (Clebsch-Gordan Tensor Product)
์กฐํฅ ๊ฐ๋ฅ ์ ๋ ฅ๊ณผ ์ถ๋ ฅ ๋ฒกํฐ ๊ณต๊ฐ ์ฌ์ด๋ฅผ ๋งคํํ๋ ์กฐํฅ ๊ฐ๋ฅ ์ ํ ์ธต์ ์ฌ์ฉ๋๋ค.
๋ ์กฐํฅ ๊ฐ๋ฅ ๋ฒกํฐ u \in V_{l_1}์ v \in V_{l_2}์ ๋ํด, CG ํ ์๊ณฑ์ ์ถ๋ ฅ๋ SO(3) ํํ D(R)๋ก ์กฐํฅ ๊ฐ๋ฅ:
D(R)(u \otimes v) = (D^{l_1}(R)u) \otimes (D^{l_2}(R)v)
CG ํ ์๊ณฑ์ ์ฌ์ฉํ์ฌ ํ ์๊ณฑ์ type-l ๋ถ๋ถ๋ฒกํฐ์ m๋ฒ์งธ ์ฑ๋ถ ์ ์:
(u \otimes_{cg} v)^l_m = \sum_{m_1=-l_1}^{l_1} \sum_{m_2=-l_2}^{l_2} C^{(l,m)}_{(l_1,m_1)(l_2,m_2)} u_{m_1} v_{m_2}
์ฌ๊ธฐ์ C^{(l,m)}_{(l_1,m_1)(l_2,m_2)}๋ ํด๋ ์-๊ณ ๋ฅด๋จ ๊ณ์์ด๋ค.
CG ํ ์๊ณฑ์ |l_1 - l_2| \leq l \leq l_1 + l_2๊ฐ ์๋ ๊ฒฝ์ฐ C^{(l,m)}_{(l_1,m_1)(l_2,m_2)} = 0์ด๋ฏ๋ก ์ผ๋ฐ์ ์ผ๋ก ํฌ์ํ๋ค.
3.3 SE(3)-๋ฑ๋ณ ๊ทธ๋ํ ์ ๊ฒฝ๋ง
3D ํฌ์ธํธ ํด๋ผ์ฐ๋๋ RGBD ์ ๋ ฅ์์ ์์ฑ๋๋ฉฐ, SE(3) ๋ฑ๋ณ ๊ทธ๋ํ ์ ๊ฒฝ๋ง์ผ๋ก ํจ์จ์ ์ผ๋ก ์ฒ๋ฆฌํ ์ ์๋ค.
SE(3)-๋ฑ๋ณ ์ฌ์์ ์ ์:
D_V(g)f(O_X | O_Y) = f(g \circ O_X | g \circ O_Y)
D_V(g) = I์ธ ํน์ํ ๊ฒฝ์ฐ, ์ฌ์ f(O_X | O_Y)๋ G-๋ถ๋ณ์ด๋ผ ํ๋ค.
SE(3)-๋ฑ๋ณ type-l ๋ฒกํฐ์ฅ:
D^l(R)f(x | O_X) = f(Rx + p | g \circ O_X), \quad \forall g = (p, R) \in SE(3)
3.3.1 ํ ์์ฅ ์ ๊ฒฝ๋ง (Tensor Field Networks, TFN)
TFN์ ํฌ์ธํธ ํด๋ผ์ฐ๋ ์ ๋ ฅ์์ ํํ๋ก ์ ๋ฒกํฐ์ฅ์ ์์ฑํ๋ SE(3)-๋ฑ๋ณ ๋ชจ๋ธ์ด๋ค.
ํน์ง ํฌ์ธํธ ํด๋ผ์ฐ๋ ์ ๋ ฅ: O_X = \{(x_1, f_1), \ldots, (x_M, f_M)\}
g = (p, R) \in SE(3)์ O_X์ ๋ํ ์์ฉ: g \circ O_X = \{(gx_1, D(R)f_1), \ldots, (gx_M, D(R)f_M)\}
์ ๋ ฅ ํน์ง์ฅ: f^{(in)}(x | X) = \sum_{j=1}^{M} f_j \delta^{(3)}(x - x_j)
์ถ๋ ฅ ํน์ง์ฅ (์ํธ์๊ด์ผ๋ก ์์ฑ): f^{(out)}(x | O_X) = \int_{\mathbb{R}^3} k(x - y)f^{(in)}(y | O_X)dy^3 = \sum_j k(x - x_j)f_j
์ปจ๋ณผ๋ฃจ์ ์ปค๋: [k^{(n',n)}(x)]_{m'm} = \sum_{J=|l_{n'} - l_n|}^{l_{n'} + l_n} \phi^{(n',n)}_J(\|x\|) \sum_{k=-J}^{J} C^{(l_{n'}, m')}_{(l_n, m)(J, k)} Y^J_k(x/\|x\|)
ํด๋ ์-๊ณ ๋ฅด๋จ ๊ณ์์ ์ธํฐํธ์์ด๋ ์ฑ์ง๋ก ์ธํด: k^{(n',n)}(Rx) = D^{l_{n'}}(R) k^{(n',n)}(x) D^{l_n}(R)^{-1}
์ด ์ฑ์ง๋ก ์ถ๋ ฅ ํน์ง์ฅ f^{(out)}(x | O_X)๊ฐ SE(3)-๋ฑ๋ณ์์ ์ฆ๋ช ํ ์ ์๋ค.
SE(3)-Transformers:
TFN์ ๋ณํ์ผ๋ก ์๊ธฐ ์ฃผ์(Self-attention) ๋ฉ์ปค๋์ฆ์ ์ถ๊ฐ:
f_{(out),i} = \sum_{j \neq i} \alpha_{ij} k(x - x_j)f_j + \bigoplus_{n'=1}^{N'} \sum_{n=1}^{N} k^{(n',n)}_{(S)} f^{(n)}_j
์ฌ๊ธฐ์ \alpha_{ij}๋ type-0 (์ค์นผ๋ผ) ์๊ธฐ ์ฃผ์, k^{(n',n)}_{(S)}๋ ์๊ธฐ ์ํธ์์ฉ ํญ์ด๋ค.
3.3.2 ํ ์๊ณฑ์ ๊ณ์ฐ ๋ณต์ก๋ ์ฒ๋ฆฌ
๋ฑ๋ณ ๊ตฌ๋ฉด ์ฑ๋ ๋คํธ์ํฌ (eSCN):
TFN์ ์๋ ํ ์๊ณฑ ์ฐ์ฐ๊ณผ ์ํ์ ์ผ๋ก ๋๋ฑํ๋ฉด์ ํจ์จ์ฑ์ ๊ฐ์ ํ ๋์์ ์ ์ํ๋ค.
- ํ ์๊ณฑ ๋ณต์ก๋: O(L^6) \to O(L^3) (์ฌ๊ธฐ์ L์ ์ต๊ณ ํน์ง ํ์ )
- ํจ์ฌ ๊ณ ์ฃผํ ํน์ง ์ฌ์ฉ ๊ฐ๋ฅ โ ๋ก๋ด ์กฐ์ ์์ ์ ์ ํ๋ ํฅ์
Gaunt ํ ์๊ณฑ:
ํด๋ ์-๊ณ ๋ฅด๋จ ๊ณ์๋ฅผ ์ธ ๊ตฌ๋ฉด ์กฐํ ํจ์์ ๊ณฑ์ ์ ๋ถ์ธ Gaunt ๊ณ์์ ์ฐ๊ฒฐํ์ฌ ๋ณต์ก๋๋ฅผ O(L^6)์์ O(L^3)์ผ๋ก ๊ฐ์์ํจ๋ค.
3.4 PointNet ๊ธฐ๋ฐ ๋ฑ๋ณ ์ ๊ฒฝ๋ง
PointNet: ํฌ์ธํธ ํด๋ผ์ฐ๋๋ฅผ ์ง์ ์ฒ๋ฆฌํ๋๋ก ์ค๊ณ๋ ์ ๊ฒฝ๋ง ์ํคํ ์ฒ๋ก, ์ ๋ ฅ ์ ๋ค์ ์์์ ๊ด๊ณ์์ด ์ผ๊ด๋ ์ถ๋ ฅ์ ๋ณด์ฅํ๋ ์์ด ๋ถ๋ณ์ฑ์ ๋ณด์ฅํ๋ค.
Vector Neurons (VN): ์ค์นผ๋ผ ๋ด๋ฐ์ 3D ๋ฒกํฐ ๋ด๋ฐ์ผ๋ก ํ์ฅํ์ฌ SO(3)-๋ฑ๋ณ ์ ๊ฒฝ๋ง ๊ตฌ์ฑ์ ๊ฐ๋ฅํ๊ฒ ํ๋ค.
VN์ ๋ค์๊ณผ ๊ฐ์ SO(3)-๋ฑ๋ณ ๋น๋ฉ ๋ธ๋ก์ ์ ๊ณตํ๋ค:
- ์ ํ ์ธต
- ๋น์ ํ์ฑ
- ํ๋ง
- ์ ๊ทํ
VN ํ๋ ์์ํฌ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ VN-PointNet์ SO(3)-๋ฑ๋ณ PointNet์ด๋ค.
4. ๋ก๋ณดํฑ์ค์์์ ๋ฑ๋ณ ๋ฅ๋ฌ๋
๋ฑ๋ณ ์ ๊ฒฝ๋ง์ ๋ฐ์ดํฐ ์์ง์ด ๋น์ฉ์ด ๋ง์ด ๋ค๊ณ ๋๊ท๋ชจ ๋ฐ์ดํฐ์ ์ด ํ์ํ ๋ก๋ด ํ์ต์์ ๋ฐ์ดํฐ ํจ์จ์ฑ๊ณผ ์ผ๋ฐํ ์ฑ๋ฅ์ ํฌ๊ฒ ํฅ์์ํฌ ์ ์๋ค.
4.1 ๋ชจ๋ฐฉ ํ์ต (Imitation Learning)
๋ชจ๋ฐฉ ํ์ต์ ์ํ๋ ํ๋์ ๋ณด์ฌ์ค์ผ๋ก์จ ๋ก๋ด์ ๊ฐ๋ฅด์น๋ ๋ฐฉ๋ฒ์ผ๋ก, ์์ธํ ํ๋ก๊ทธ๋๋ฐ์ด๋ ์๊ณ ๋ก์ด ๋ณด์ ํจ์ ์์ง๋์ด๋ง์ ์ํํ๋ค. ๊ทธ๋ฌ๋ ๋ฐ์ดํฐ ์์ง ๋น์ฉ์ด ๋ฐฉ๋ฒ์ ํ์ฅ์ฑ๊ณผ ํจ์จ์ฑ์ ์ ํ์ํจ๋ค.
4.1.1 ๋ฑ๋ณ ๊ธฐ์ ์์ฅ (Equivariant Descriptor Fields, EDF)
Neural Descriptor Fields (NDF)๋ Vector Neurons๋ฅผ ์ฌ์ฉํ ์นดํ ๊ณ ๋ฆฌ ์์ค ๊ธฐ์ ์๋ก ๊ฐ์ฒด ํํ์ ๊ตฌํํ์ฌ ์๋ฎฌ๋ ์ด์ ๊ณผ ์ค์ ํ๊ฒฝ ๋ชจ๋์์ 5-10๊ฐ์ ์์ฐ์ผ๋ก ์กฐ์ ์์ ํ์ต์ ๊ฐ๋ฅํ๊ฒ ํ๋ค.
EDF๋ Equiformer์ SE(3)-Transformer์ ๊ตญ์์ฑ์ ํ์ฉํ์ฌ ์ง์ญ ๋ฑ๋ณ์ฑ์ ๋ฌ์ฑํ๋ค. ์ด๋ฅผ ํตํด ์ฌ์ ํ๋ จ๊ณผ ๊ฐ์ฒด ๋ถํ ์์ด ์ข ๋จ๊ฐ ํ๋ จ์ด ๊ฐ๋ฅํ๋ค.
SE(3) ์์ ์ด์ค๋ฑ๋ณ ์๋์ง ๊ธฐ๋ฐ ๋ชจ๋ธ:
P(g | O^{scene}, O^{grasp}) = \frac{\exp(-E(g | O^{scene}, O^{grasp}))}{Z}
Z = \int_{SE(3)} dg \exp(-E(g | O^{scene}, O^{grasp}))
์ด์ค๋ฑ๋ณ(Bi-equivariance) ์กฐ๊ฑด:
P(g | O^{scene}, O^{grasp}) = P(\Delta g_w g | \Delta g_w \circ O^{scene}, O^{grasp}) = P(g\Delta g_e^{-1} | O^{scene}, \Delta g_e \circ O^{grasp})
์ฌ๊ธฐ์ \Delta g_w๋ ์๋ ํ๋ ์ ๋ณํ, \Delta g_e๋ ์๋์ดํํฐ ํ๋ ์ ๋ณํ์ด๋ค.
์๋์ง ํจ์:
E(g | O^{scene}, O^{grasp}) = \int_{\mathbb{R}^3} d^3x \, \rho(x | O^{grasp}) \|\phi(gx | O^{scene}) - D(R)\psi(x | O^{grasp})\|^2
์ฌ๊ธฐ์:
- \rho(x | O^{grasp}): ์ฟผ๋ฆฌ ๋ฐ๋ (SE(3)-๋ฑ๋ณ ๋น์์ ์ค์นผ๋ผ์ฅ)
- \phi(gx | O^{scene}): ํค EDF
- \psi(x | O^{grasp}): ์ฟผ๋ฆฌ EDF
4.1.2 Diffusion-EDF
Diffusion-EDF๋ ์ด์ค๋ฑ๋ณ์ฑ๊ณผ ๋ก๋ด ์กฐ์์ ๊ตญ์์ฑ์ ํ์ฉํ์ฌ EDF์ ํ๋ จ ์๊ฐ์ ๊ฐ์ ํ๋ฉด์ ์ข ๋จ๊ฐ ํ๋ จ ๋ฐฉ์๊ณผ ๋ฐ์ดํฐ ํจ์จ์ฑ์ ์ ์งํ๋ค.
์ด์ค๋ฑ๋ณ ์ค์ฝ์ด ํจ์:
s(\Delta g g | \Delta g \circ O^{scene}, O^{grasp}) = s(g | O^{scene}, O^{grasp})
s(g\Delta g^{-1} | O^{scene}, \Delta g \circ O^{grasp}) = [\text{Ad}_{\Delta g}]^{-T} s(g | O^{scene}, O^{grasp})
\text{Ad}_g = \begin{bmatrix} R & \hat{p}R \\ 0 & R \end{bmatrix}
์ค์ฝ์ด ๋ชจ๋ธ:
s_t(g | O^{scene}, O^{grasp}) = [s_{\nu;t} \oplus s_{\omega;t}](g | O^{scene}, O^{grasp})
์ฌ๊ธฐ์ s_{\nu;t}๋ ํํ์ด๋ ์ค์ฝ์ด, s_{\omega;t}๋ ํ์ ์ค์ฝ์ด์ด๋ค.
4.1.3 RiEMann
RiEMann์ ๊ฑฐ์ ์ค์๊ฐ SE(3)-๋ฑ๋ณ ๋ก๋ด ์กฐ์ ํ๋ ์์ํฌ์ด๋ค.
- SE(3)-Transformer๋ก ์ดํฌ๋์ค ๋งต \phi(x | O_X) ํ์ต
- ์ดํฌ๋์ค ๋งต์์ ๊ด์ฌ ์์ญ B_{ROI} ์ถ์ถ
- ๊ณ์ฐ ๋ณต์ก๋์ ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋ ๊ฐ์
์ถ๋ ฅ ์ค๊ณ:
- ํํ์ด๋ ํ๋ ๋คํธ์ํฌ: type-0 ๋ฒกํฐ์ฅ ํ๋
- ๋ฐฉํฅ ๋คํธ์ํฌ: type-1 ๋ฒกํฐ์ฅ ์ธ ๊ฐ โ IMGS ์ง๊ตํ๋ก ํ์ ํ๋ ฌ ์์ธก
4.1.4 Fourier Transporter
3D ์ปจ๋ณผ๋ฃจ์ ๊ณผ ํ์ ์ ํธ๋ฆฌ์ ํํ์ ์ฌ์ฉํ SE(3) ์ด์ค๋ฑ๋ณ ๋ชจ๋ธ์ด๋ค.
ํฝ ๋คํธ์ํฌ:
f_{pick} : o_t \mapsto p(a_{pick} | o_t)
ํฝ ํฌ์ฆ ๋ถํฌ๋ ๊ด์ฐฐ์ ๋ํ ๋ณํ์ ๋ฐ๋ผ์ผ ํ๋ค:
f_{pick}(g \circ o_t) = \text{Ind}_\rho(g)f_{pick}(o_t), \quad \forall g \in SE(3)
ํ๋ ์ด์ค ๋คํธ์ํฌ:
f_{place} : (c, o_t) \to p(a_{place} | o_t, a_{pick})
์ด์ค๋ฑ๋ณ ์ ์ฝ:
f_{place}(g_1 \circ c, g_2 \circ o_t) = \text{Ind}_\rho(g_2)\rho_R(g_1^{-1})f_{place}(c, o_t)
๋์ ์ปค๋: ๋ฐ์ง ํน์ง ๋งต์ ์ ํ ํ์ ์ผ๋ก ๋ฆฌํํ ํ๊ณ ํธ๋ฆฌ์ ๋ณํํ์ฌ ์ฑ๋ ๊ณต๊ฐ์ผ๋ก ๋ณํ
\mathcal{L}^\uparrow[f](x) = \{f(R_1^{-1}x), f(R_2^{-1}x), \ldots, f(R_m^{-1}x)\}
\kappa(c) = \mathcal{F}^+[\mathcal{L}^\uparrow(\psi(c))]
4.2 ๋ฑ๋ณ ๊ฐํ ํ์ต (Equivariant Reinforcement Learning)
๋ง์ ๋ฑ๋ณ ๊ฐํ ํ์ต ๋ฐฉ๋ฒ์ ๊ตฐ๋ถ๋ณ ๋ง๋ฅด์ฝํ ๊ฒฐ์ ๊ณผ์ (Group-invariant MDP)์ ๊ธฐ๋ณธ ๊ฐ๋ ์ ๊ธฐ๋ฐํ๋ค.
\mathcal{M}_G = (S, A, P, R, G)
4.2.1 ๊ตฐ๋ถ๋ณ MDP์ ์กฐ๊ฑด
- ๋ณด์ ํจ์: R(s, a) = R(g \circ s, g \circ a)
- ์ ์ด ํ๋ฅ : P(s' | s, a) = P(g \circ s' | g \circ s, g \circ a)
4.2.2 ๊ฒฐ๊ณผ์ ์ฑ์ง
๊ตฐ๋ถ๋ณ ์ฑ์ง๋ก ์ธํด:
- ์ต์ Q ํจ์: Q^*(s, a) = Q^*(g \circ s, g \circ a) (๊ตฐ๋ถ๋ณ)
- ์ต์ ์ ์ฑ : \pi^*(g \circ s) = g \circ \pi^*(s) (๋ฑ๋ณ)
4.2.3 ์ฆ๋ช ๊ฐ์
๋ฒจ๋ง ์ต์ ๋ฐฉ์ ์: Q^*(s, a) = R(s, a) + \gamma \sup_{a'} \int_{s'} ds' P(s' | s, a)Q^*(s', a')
๋ณํ๋ ์ํ-ํ๋ ์์ ๋ํด: Q^*(g \circ s, g \circ a) = R(s, a) + \gamma \sup_{a'} \int_{s'} ds' P(s' | s, a)Q^*(g \circ s', g \circ a')
\bar{Q}(s, a) = Q(g \circ s, g \circ a)๋ฅผ ์ ์ํ๋ฉด: \bar{Q}^*(s, a) = R(s, a) + \gamma \sup_{a'} \int_{s'} ds' P(s' | s, a)\bar{Q}^*(s', a')
๋ฒจ๋ง ์ต์ ๋ฐฉ์ ์์ ์ ์ผ์ฑ์ ์ํด: Q^*(s, a) = Q^*(g \circ s, g \circ a)
์ ์ฑ ์ ๋ฑ๋ณ์ฑ: \pi^*(g \circ s) = \arg\max_a Q^*(g \circ s, a) = g \circ \arg\max_{\bar{a}} Q^*(s, \bar{a}) = g \circ \pi^*(s)
4.2.4 ์์ฉ
- SO(2)-๋ฑ๋ณ Q ํ์ต: DQN๊ณผ SAC์ ๋ฑ๋ณ ๋คํธ์ํฌ ์ ์ฉ
- ์๊ฐ-ํ ๋ฌธ์ : ํ ์ ๋ ฅ๊ณผ ์๊ฐ ์ ๋ ฅ์ ํ์ฉํ ๋ฑ๋ณ ์ ์ฑ ํ์ต
- POMDP๋ก์ ํ์ฅ: ๋ถ๋ถ ๊ด์ธก ๊ฐ๋ฅ MDP์์์ ๋ฑ๋ณ ๊ฐํ ํ์ต
- ์คํ๋ผ์ธ ๊ฐํ ํ์ต: Conservative Q-Learning๊ณผ Implicit Q-Learning์ ๋ฑ๋ณ ๋คํธ์ํฌ ์ ์ฉ
5. ๊ธฐํํ์ ์ํผ๋์ค ์ ์ด (Geometric Impedance Control)
์ด ์น์ ์์๋ ๊ธฐํํ์ ์ํผ๋์ค ์ ์ด(GIC)๋ฅผ ์๊ฐํ๊ณ , ์ด๊ฒ์ด SE(3) ๊ตฐ ๋ฑ๋ณ ์ ์ด ๋ฒ์น์์ ๋ณด์ธ๋ค.
5.1 ๋งค๋ํฐ๋ ์ดํฐ ๋์ญํ
5.1.1 ๊ด์ ๊ณต๊ฐ์์์ ๋งค๋ํฐ๋ ์ดํฐ ๋์ญํ
M(q)\ddot{q} + C(q, \dot{q})\dot{q} + G(q) = \tau + \tau_e
์ฌ๊ธฐ์:
- q \in \mathbb{R}^n: ๊ด์ ์์น ์ขํ
- \dot{q} \in \mathbb{R}^n: ๊ด์ ์๋
- \ddot{q} \in \mathbb{R}^n: ๊ด์ ๊ฐ์๋
- M(q) \in \mathbb{R}^{n \times n}: ๊ด์ฑ ํ๋ ฌ
- C(q, \dot{q}) \in \mathbb{R}^{n \times n}: ์ฝ๋ฆฌ์ฌ๋ฆฌ ํ๋ ฌ
- G(q) \in \mathbb{R}^n: ์ค๋ ฅ ํ ๋ฒกํฐ
- \tau \in \mathbb{R}^n: ์ ์ด ์ ๋ ฅ ๊ด์ ํ ํฌ
- \tau_e \in \mathbb{R}^n: ์ธ๋ถ ๊ต๋
5.1.2 SE(3) ์์ ์์ ๊ณต๊ฐ์์์ ๋งค๋ํฐ๋ ์ดํฐ ๋์ญํ
์์ ๊ณต๊ฐ ๊ณต์์ ์ฌ์ฉํ ๋ฌผ์ฒด ํ๋ ์ ์๋ V^b ๊ธฐ๋ฐ ๋์ญํ:
\tilde{M}(q)\dot{V}^b + \tilde{C}(q, \dot{q})V^b + \tilde{G}(q) = \tilde{T} + \tilde{T}_e
์ฌ๊ธฐ์: \tilde{M}(q) = J_b(q)^{-T}M(q)J_b(q)^{-1} \tilde{C}(q, \dot{q}) = J_b(q)^{-T}(C(q, \dot{q}) - M(q)J_b(q)^{-1}\dot{J})J_b(q)^{-1} \tilde{G}(q) = J_b(q)^{-T}G(q), \quad \tilde{T} = J_b(q)^{-T}T, \quad \tilde{T}_e = J_b(q)^{-T}T_e
J_b๋ ๋ฌผ์ฒด ํ๋ ์ ์ผ์ฝ๋น์ ํ๋ ฌ: V^b = J_b\dot{q}
5.2 ์ค์ฐจ ํจ์: SE(3) ์์ ๊ฑฐ๋ฆฌ ์ ์ฌ ๋ฉํธ๋ฆญ
5.2.1 ๋ฐฐ์น ์ค์ฐจ (Configuration Error)
์ํ๋ ๋ฐฐ์น g_d = (p_d, R_d)์ ํ์ฌ ๋ฐฐ์น g = (p, R) ์ฌ์ด์ ๋ณํ ํ๋ ฌ:
g_{de} = g_d^{-1}g
5.2.2 ํ๋ ฌ ๊ตฐ ๊ด์ ์์์ ์ค์ฐจ ํจ์
ํ๋ก๋ฒ ๋์ฐ์ค ๋ ธ๋ฆ์ ๊ธฐ๋ฐ์ผ๋ก ํ ์ค์ฐจ ํจ์:
\Psi_1(g, g_d) = \frac{1}{2}\|I - g_d^T g\|_F^2
= \text{tr}(I - R_d^T R) + \frac{1}{2}(p - p_d)^T(p - p_d)
SO(3)์์์ ์ค์ฐจ ํจ์: \Psi(R, R_d) = \text{tr}(I - R_d^T R) = \frac{1}{2}\|I - R_d^T R\|_F^2
5.2.3 ๋ฆฌ ๋์ ๊ด์ ์์์ ์ค์ฐจ ํจ์
๋ฐฐ์น ์ค์ฐจ์ ๋ฒกํฐ ํํ:
\xi_{de} = \log(g_{de})^\vee = \begin{bmatrix} \hat{\psi}_{de} & b_{de} \\ 0 & 0 \end{bmatrix}^\vee = \begin{bmatrix} b_{de} \\ \psi_{de} \end{bmatrix}
์ฌ๊ธฐ์: \hat{\psi}_{de} = \log(R_d^T R), \quad b_{de} = A^{-1}(\psi_{de})R_d^T(p - p_d)
A^{-1}(\psi) = I - \frac{1}{2}\hat{\psi} + \frac{2\sin\|\psi\| - \|\psi\|(1 + \cos\|\psi\|)}{2\|\psi\|^2 \sin\|\psi\|}\hat{\psi}^2
\mathfrak{se}(3) ์์ ๋ด์ (์ข๋ถ๋ณ ๋ฆฌ๋ง ๋ฉํธ๋ฆญ):
\langle\hat{\xi}_1, \hat{\xi}_2\rangle_{(P,I)} = \xi_1^T P \xi_2
๋ฆฌ ๋์ ๊ด์ ์ ์ค์ฐจ ํจ์:
\Psi_2(g, g_d) = \langle g_{de}\hat{\xi}_{de}, g_{de}\hat{\xi}_{de}\rangle_{(0.5I, g_{de})} = \frac{1}{2}\|\psi_{de}\|^2 + \frac{1}{2}\|b_{de}\|^2
5.3 SE(3) ์์ ์ค์ฐจ ๋ฒกํฐ
5.3.1 ์์น ์ค์ฐจ ๋ฒกํฐ
๊ธฐํํ์ ์ผ๊ด ์ค์ฐจ ๋ฒกํฐ (GCEV):
e_G = \begin{bmatrix} e_p \\ e_R \end{bmatrix} = \begin{bmatrix} R^T(p - p_d) \\ (R_d^T R - R^T R_d)^\vee \end{bmatrix} \in \mathbb{R}^6
๋ฆฌ ๋์ ๊ธฐ๋ฐ ์ค์ฐจ ๋ฒกํฐ: ๋ฐฐ์น ์ค์ฐจ์ ๋ก๊ทธ ๋งต
\xi_{de} = \log(g_{de})^\vee
5.3.2 ์๋ ์ค์ฐจ ๋ฒกํฐ
๋ ์ ์ ๋ฒกํฐ \dot{g} \in T_g SE(3)์ \dot{g}_d \in T_{g_d} SE(3)๊ฐ ๋ค๋ฅธ ์ ์ ๊ณต๊ฐ์ ์์ผ๋ฏ๋ก ์ง์ ๋น๊ตํ ์ ์๋ค.
์ํ๋ ์๋์ ๋ณํ:
\hat{V}^*_d = g_{ed}\hat{V}^b_d g^{-1}_{ed}, \quad \text{where } g_{ed} = g^{-1}g_d
V^*_d = \text{Ad}_{g_{ed}} V^b_d
์๋ ์ค์ฐจ ๋ฒกํฐ:
e_V = \begin{bmatrix} v^b \\ w^b \end{bmatrix} - \begin{bmatrix} R^T R_d v_d + R^T R_d \hat{\omega}_d R_d^T(p - p_d) \\ R^T R_d \omega_d \end{bmatrix} = \begin{bmatrix} e_v \\ e_\Omega \end{bmatrix}
5.4 SE(3) ์์ ์๋์ง ํจ์
5.4.1 ์์น ์๋์ง ํจ์
ํ๋ ฌ ๊ตฐ ๊ด์ ์ ์์น ์๋์ง:
P_1(g, g_d) = \text{tr}(K_R(I - R_d^T R)) + \frac{1}{2}(p - p_d)^T R_d K_p R_d^T(p - p_d)
๋ฆฌ ๋์ ๊ด์ ์ ์์น ์๋์ง:
P_2(g, g_d) = \langle\hat{\xi}_{de}, \hat{\xi}_{de}\rangle_{(0.5K_\xi, I)} = \frac{1}{2}\xi_{de}^T K_\xi \xi_{de}
P_1(g, g_d)์ P_2(g, g_d)๋ ๋ชจ๋ ์ข๋ถ๋ณ, ์์ ์น, ์ด์ฐจ ํํ์ด๋ค.
5.4.2 ์ด๋ ์๋์ง
K(t, q, \dot{q}) = \frac{1}{2}e_V^T \tilde{M} e_V
5.5 ๊ธฐํํ์ ์ํผ๋์ค ์ ์ด
5.5.1 ์์ฐ ์ ์ด ๋ฒ์น์ผ๋ก์์ ์ํผ๋์ค ์ ์ด
์ ์ฒด ๊ธฐ๊ณ์ ์๋์ง ํจ์ (๋ฆฌ์ํธ๋ ธํ ํจ์):
V_i(t, q, \dot{q}) = K(t, q, \dot{q}) + P_i(t, q), \quad i \in \{1, 2\}
์์ฐ ์ ์ด ๋ฒ์น์ ์ํ๋ ์ฑ์ง:
\dot{V}_i = -e_V^T K_d e_V
์ํผ๋์ค ์ ์ด ๋ฒ์น:
\tilde{T}_i = \tilde{M}\dot{V}^*_d + \tilde{C}V^*_d + \tilde{G} - f_{G,i} - K_d e_V, \quad i \in \{1, 2\}
์ฌ๊ธฐ์ f_{G,i} \in \mathbb{R}^6:
f_{G,1} = \begin{bmatrix} f_p \\ f_R \end{bmatrix} = \begin{bmatrix} R^T R_d K_p R_d^T(p - p_d) \\ (K_R R_d^T R - R^T R_d K_R)^\vee \end{bmatrix}
f_{G,2} = K_\xi \xi_{de}
5.5.2 ๊ธฐํํ์ ์ํผ๋์ค ์ ์ด๋ SE(3)-๋ฑ๋ณ ์ ์ด
GIC์ ์ค์ํ ์ฅ์ ์ ๊ณต๊ฐ ํ๋ ์์์ ๊ธฐ์ ํ ๋ SE(3) ๋ฑ๋ณ์ด๋ผ๋ ๊ฒ์ด๋ค.
f_{G,1}์ ์ข๋ถ๋ณ์ฑ:
f_{G,1}(g_l g, g_l g_d) = \begin{bmatrix} (R_l R)^T R_l R_d K_p(R_l R_d)^T(R_l p + p_l - R_l p_d - p_l) \\ (K_R(R_l R_d)^T R_l R - (R_l R)^T R_l R_d K_R)^\vee \end{bmatrix}
= \begin{bmatrix} R^T R_d K_p R_d(p - p_d) \\ (K_R R_d R - R^T R_d K_R)^\vee \end{bmatrix} = f_{G,1}(g, g_d)
f_{G,2}์ ์ข๋ถ๋ณ์ฑ:
f_{G,2}(g_l g, g_l g_d) = K_\xi \log((g_l g_d)^{-1}(g_l g_e)) = K_\xi \log(g_d^{-1}g_e) = K_\xi \xi_{de}
SE(3)-๋ฑ๋ณ ์ ์ฑ ์ ์ํ ์ผ๋ฐ ๋ ์ํผ:
- ์ ์ฑ ์ด ์ข๋ถ๋ณ์ด์ด์ผ ํจ
- ์ ์ฑ ์ด ๋ฌผ์ฒด ํ๋ ์ ์ขํ์์ ๊ธฐ์ ๋์ด์ผ ํจ
6. ํฅํ ์ฐ๊ตฌ ๋ฐฉํฅ (Future Works)
6.1 ๋น์ ์์ ํ๊น์ง์ SE(3)-๋ฑ๋ณ์ฑ
ํ์ฌ์ ๋น์ ๊ธฐ๋ฐ ์ ๊ทผ๋ฒ์ โ๋ชจ๋ ์กฐ์์ด ํฝ์คํ๋ ์ด์ค ์ํ์ค๋ก ๊ฐ์ฃผ๋ ์ ์๋คโ๋ ์ฒ ํ์ ๊ธฐ๋ฐํ๋ค. ๊ทธ๋ฌ๋ ๋ง์ ์ค์ ์์ ์ ํ ์ํธ์์ฉ๊ณผ ์ปดํ๋ผ์ด์ธ์ค๊ฐ ํ์ํ๋ค.
์์: - ๋ณ๋๊ป ๋๋ ค ์ด๊ธฐ - ๋ณผํธ-๋ํธ ์กฐ๋ฆฝ - ํ์ดํธ ํ ์กฐ๋ฆฝ
ํ(๋๋ ๋ ์น)์ SE(3) ๋ค์์ฒด์ ์๋ ๊ณต๊ฐ์์ ๋์๋ฐ ๋งต์ ์ํด ์กฐํฅ๋๋ ๋ ๊ฐ์ type-1 ๋ฒกํฐ๋ก ํด์๋ ์ ์๋ค.
6.2 ๋ก๋ณดํฑ์ค์ ์์คํ ์์์ ๋์นญ์ฑ ๊นจ์ง
๋์นญ์ฑ์ด ๊นจ์ง๋ ์์ธ๋ค:
- ์ด๋ํ์ ์ ์ฝ: ๋งค๋ํฐ๋ ์ดํฐ๊ฐ ํน์ด ๋ฐฐ์น์ ์ ๊ทผํ ๋
- ์ ์ด ์ ๋ ฅ ์ ์ฝ: ์ ๋ ฅ์ ์ ์ฝ์ด ์๋ ์ ์ด ์์คํ
- ๊ด์ฐฐ ๊ณต๊ฐ์ ๋ถ์์ ์ฑ: ๊ธฐ์ธ์ด์ง ์นด๋ฉ๋ผ ๊ฐ๋, ํ์
๊ตฐ๋ถ๋ณ MDP์์์ ๋์นญ์ฑ ๊นจ์ง:
๊ตฐ๋ถ๋ณ MDP๋ ๊ตฐ๋ถ๋ณ ๋ณด์ ํจ์์ ์ ์ด ํ๋ฅ ์ ๊ฐ์ ํ์ง๋ง, ๋ก๋ด ๋งค๋ํฐ๋ ์ดํฐ์ ์ด๋ํ์ ์ ์ฝ ๋ฑ์ ์ํด ์์๋ ์ ์๋ค.
7. ๊ฒฐ๋ก (Conclusions)
์ด ํํ ๋ฆฌ์ผ ์๋ฒ ์ด ๋ ผ๋ฌธ์์๋ ๋ก๋ณดํฑ์ค ์์ฉ์ ์ํ ๊ธฐํํ์ ๋ฅ๋ฌ๋๊ณผ ์ ์ด์ ์ต์ ๋ฐ์ ์ ๊ฒํ ํ๋ค.
์ฃผ์ ๋ด์ฉ:
- ๋งค๋ํฐ๋ ์ดํฐ ์๋์ดํํฐ์ SE(3) ๋ค์์ฒด ๊ตฌ์กฐ์ ๋ํ ์ํ์ ๋ฐฐ๊ฒฝ ์ ์
- SE(3)-๋ฑ๋ณ ๋ฅ๋ฌ๋์ ๊ณต์ํ์ ์ด๋ก , ๋ฐฑ๋ณธ ์ ๊ฒฝ๋ง ์๊ฐ
- ๋ชจ๋ฐฉ ํ์ต๊ณผ ๊ฐํ ํ์ต์ ํ์ฉ๋๋ SE(3)-๋ฑ๋ณ ๋ชจ๋ธ์ ์ต์ ์ฐ๊ตฌ ์๊ฐ
- SE(3)-๋ฑ๋ณ ํ์ต ๋ชจ๋์ ์ ์์ค ์ ์ด ์ธต์ผ๋ก ์ฌ์ฉ๋ ์ ์๋ SE(3)-๋ฑ๋ณ ์ ์ด ๋ฐฉ๋ฒ ์ ์
- ๋ฑ๋ณ ๋ฐฉ๋ฒ์ ํ๊ณ์ ํฅํ ์ฐ๊ตฌ ๋ฐฉํฅ ๋ ผ์
8. ๋ถ๋ก (Appendix)
A.1 ๋งค๋๋ฌ์ด ๋ค์์ฒด (Smooth Manifolds)
A.1.1 ์ ์ ๊ณต๊ฐ๊ณผ ์๋ ๊ณต๊ฐ
์ ์ ๊ณต๊ฐ T_p M: ๋ค์์ฒด M ์์ ์ p์์ ๋ชจ๋ ์ ์ ๋ฒกํฐ์ ์งํฉ
์ขํ ์ฐจํธ (x^1, \ldots, x^n)์์ T_p M์ ๊ธฐ์ : X_p = \sum_{i=1}^{n} X^i \frac{\partial}{\partial x^i} = X^i \frac{\partial}{\partial x^i}
์๋ ๊ณต๊ฐ (Cotangent Space) T^*_p M: ์ ์ ๊ณต๊ฐ์ ์๋ ๊ณต๊ฐ, ๋ชจ๋ ์ ํ ๋ฒํจ์์ ์งํฉ
์๋ ๊ธฐ์ : \{dx^1, \ldots, dx^n\}
dx^i\left(\frac{\partial}{\partial x^j}\right) = \delta^i_j
์ ์ ๋ค๋ฐ (Tangent Bundle): TM = \bigsqcup_{p \in M} T_p M
A.1.2 ๋งค๋๋ฌ์ด ์ฌ์์ ๋ฏธ๋ถ
F : M \to N์ด ๋งค๋๋ฌ์ด ์ฌ์์ผ ๋, p์์์ ๋ฏธ๋ถ:
dF_p : T_p M \to T_{F(p)} N
dF_p(X_p)(f) = X_p(f \circ F)
๊ตญ์ ์ขํ์์: dF_p(X_p) = \left(\frac{\partial F^j(x)}{\partial x^i} X^i\right)\bigg|_p \frac{\partial}{\partial y^j}\bigg|_{F(p)}
A.1.3 ํธ์ํฌ์๋์ ํ๋ฐฑ
ํธ์ํฌ์๋ (Pushforward): F๊ฐ ๋ฏธ๋ถ๋ํ์ฌ์์ผ ๋: (F_* X)_q = dF_{F^{-1}(q)}(X_{F^{-1}(q)}) = dF_p(X_p)
ํ๋ฐฑ (Pullback): ์๋ ๋ฒกํฐ์ฅ \omega์ ๋ํด: (F^* \omega)_p = dF^*_{F(p)}(\omega_{F(p)})
A.1.4 ๋ฒกํฐ์ฅ์ ๋ฆฌ ๋ฏธ๋ถ
V \in \mathfrak{X}(M)์ ํ๋ก์ฐ F_t์ ๋ํด, ๋ฒกํฐ์ฅ W์ V์ ๋ํ ๋ฆฌ ๋ฏธ๋ถ:
(\mathcal{L}_V W)_p := \frac{d}{dt} d(F_{-t})_{F_t(p)}(W_{F_t(p)})\bigg|_{t=0}
= [V, W]_p
A.2 ๊ตฌ๋ฉด ์กฐํ ํจ์ (Spherical Harmonics)
๊ตฌ๋ฉด ์กฐํ ํจ์๋ ๊ตฌ๋ฉด ์ขํ๊ณ์์ ๋ผํ๋ผ์ค ๋ฐฉ์ ์์ ํ ๋ ์์ฐ์ค๋ฝ๊ฒ ๋ํ๋๋ค.
๋ผํ๋ผ์ค ๋ฐฉ์ ์: \nabla^2 f(x, y, z) = 0
๊ตฌ๋ฉด ์ขํ๋ก ๋ณํํ๊ณ ๋ณ์ ๋ถ๋ฆฌ: f(r, \theta, \phi) = R(r)Y(\theta, \phi)
๊ตฌ๋ฉด ์กฐํ ํจ์: Y^l_m(\theta, \phi) = Ne^{im\phi}P^l_m(\cos\theta)
๋ผํ๋ผ์ค ๋ฐฉ์ ์์ ์ผ๋ฐํด: f(r, \theta, \phi) = \sum_{l=0}^{\infty} \sum_{m=-l}^{l} f^l_m r^l Y^l_m(\theta, \phi)
A.3 ๋ฑ๋ณ ๊ตฌ๋ฉด ์ฑ๋ ๋คํธ์ํฌ (eSCN)
eSCN์ ๋ฉ์์ง ํจ์ฑ ๋ฐฉํฅ์ด y์ถ์ ์ ๋ ฌ๋ ์ฐธ์กฐ ํ๋ ์์์ ํด๋ ์-๊ณ ๋ฅด๋จ ๊ณ์์ ํฌ์์ฑ์ ํ์ฉํ๋ค.
์ ๋ ฌ๋ ์ฐธ์กฐ ํ๋ ์์์์ ๊ตฌ๋ฉด ์กฐํ: Y^l_m(\hat{e}_y) = \delta_{m0}
ํ์ -์ ์ฉ-์ญํ์ ์ ๋ต: f^{(out)}(x) = \sum_i D(R_y^{-1})k(\|x - x_j\|\hat{e}_y)D(R_y)f_j
์ด๋ฅผ ํตํด SO(2) ์ปจ๋ณผ๋ฃจ์ (์คํํธ๋ผ ๋๋ฉ์ธ์์ ์ ๋ณ ๊ณฑ์ )์ผ๋ก ํด์ํ ์ ์๋ค.
A.4 ์ฐ๋ถ๋ณ ๋ฉํธ๋ฆญ์ ๋ํ ์ฝ๋ฉํธ
SE(3)์์๋ ์ด์ค๋ถ๋ณ(bi-invariance)์ด ๋ถ๊ฐ๋ฅํ๊ณ , ์ข๋ถ๋ณ ๋๋ ์ฐ๋ถ๋ณ ์ค ํ๋๋ง ๋ง์กฑํ ์ ์๋ค.
์ฐ๋ถ๋ณ ์ค์ฐจ ํจ์: \Psi^R(gg_r, g_d g_r) = \frac{1}{2}\|I - gg_r g_r^{-1}g_d^{-1}\|_F^2 = \Psi^R(g, g_d)
\Psi^R(g, g_d) = \text{tr}(I - RR_d^T) + \frac{1}{2}(p - RR_d^T p_d)^T(p - RR_d^T p_d)
์ฐ๋ถ๋ณ์์๋ ํํ์ด๋ ์ฑ๋ถ์ด ํ์ ์ ์ํฅ์ ๋ฐ์ง๋ง, ์ข๋ถ๋ณ์์๋ ํํ์ด๋์ด ํ์ ๊ณผ ๋ ๋ฆฝ์ ์ด๋ค.
์ฐ๋ถ๋ณ ์ค์ฐจ ๋ฒกํฐ: e^R_G = \begin{bmatrix} e^R_p \\ e^R_R \end{bmatrix} = \begin{bmatrix} (p - RR_d^T p_d) \\ (RR_d^T - R_d R^T)^\vee \end{bmatrix}
e^R_p = R(R^T p - R_d^T p_d)
์ข๋ถ๋ณ ์ค์ฐจ ๋ฒกํฐ e^L_p = R^T(p - p_d)์์ ํต์ฌ ์ฐจ์ด:
- ์ฐ๋ถ๋ณ ์ค์ฐจ ๋ฒกํฐ๋ ๊ณต๊ฐ ํ๋ ์์ ์์กด
- ์ข๋ถ๋ณ ์ค์ฐจ ๋ฒกํฐ๋ ๋ ๋ฆฝ์
์ด์ค๋ถ๋ณ์ด ๋ถ๊ฐ๋ฅํ๋ฏ๋ก ํน์ ๋ถ๋ณ์ฑ์ ํ๊ณ๋ฅผ ํด๊ฒฐํ๋ ๋ฐ ์ง์คํ๋ ๊ฒ์ผ๋ก ์ถฉ๋ถํ๋ค.
๐ ํต์ฌ ์์ฝ
| ๊ฐ๋ | ํต์ฌ ๋ด์ฉ |
|---|---|
| SE(3) | 3D ๊ณต๊ฐ์ ๋ชจ๋ ๊ฐ์ฒด ๋ณํ (ํ์ + ํํ์ด๋)์ ๋ํ๋ด๋ ๊ตฐ |
| ๋ฑ๋ณ์ฑ | ์ ๋ ฅ ๋ณํ์ด ์ถ๋ ฅ์์๋ ๋์ผํ๊ฒ ๋ํ๋๋ ์ฑ์ง |
| ๋ถ๋ณ์ฑ | ์ ๋ ฅ ๋ณํ์๋ ์ถ๋ ฅ์ด ๋ณํ์ง ์๋ ์ฑ์ง |
| ์กฐํฅ ๊ฐ๋ฅ ํน์ง | Wigner-D ํ๋ ฌ์ ์ํด ๋ณํ๋๋ ํน์ง ๋ฒกํฐ |
| TFN | SE(3)-๋ฑ๋ณ ๊ทธ๋ํ ์ ๊ฒฝ๋ง์ ๊ธฐ์ด ์ํคํ ์ฒ |
| ์ด์ค๋ฑ๋ณ์ฑ | ์ฅ๋ฉด๊ณผ ๊ทธ๋์คํ ๋ชจ๋์ ๋ํ ๋ฑ๋ณ์ฑ |
| GIC | SE(3) ๋ค์์ฒด ์์์ ์ ์๋ ๊ธฐํํ์ ์ํผ๋์ค ์ ์ด |