Qin Shaofei, Zhang Xuan, Xu Hongteng, Xu Yi
IEEE Trans Pattern Anal Mach Intell. 2023 Apr;45(4):4504-4520. doi: 10.1109/TPAMI.2022.3202217. Epub 2023 Mar 7.
Real-world 3D structured data like point clouds and skeletons often can be represented as data in a 3D rotation group (denoted as [Formula: see text]). However, most existing neural networks are tailored for the data in the euclidean space, which makes the 3D rotation data not closed under their algebraic operations and leads to sub-optimal performance in 3D-related learning tasks. To resolve the issues caused by the above mismatching between data and model, we propose a novel non-real neuron model called quaternion product unit (QPU) to represent data on 3D rotation groups. The proposed QPU leverages quaternion algebra and the law of the 3D rotation group, representing 3D rotation data as quaternions and merging them via a weighted chain of Hamilton products. We demonstrate that the QPU mathematically maintains the [Formula: see text] structure of the 3D rotation data during the inference process and disentangles the 3D representations into "rotation-invariant" features and "rotation-equivariant" features, respectively. Moreover, we design a fast QPU to accelerate the computation of QPU. The fast QPU applies a tree-structured data indexing process, and accordingly, leverages the power of parallel computing, which reduces the computational complexity of QPU in a single thread from O(N) to O(logN). Taking the fast QPU as a basic module, we develop a series of quaternion neural networks (QNNs), including quaternion multi-layer perceptron (QMLP), quaternion message passing (QMP), and so on. In addition, we make the QNNs compatible with conventional real-valued neural networks and applicable for both skeletons and point clouds. Experiments on synthetic and real-world 3D tasks show that the QNNs based on our fast QPUs are superior to state-of-the-art real-valued models, especially in the scenarios requiring the robustness to random rotations. The code of this work is available at https://github.com/SuferQin/Fast-QPU.
像点云与骨骼这类现实世界中的3D结构化数据通常可表示为3D旋转群中的数据(表示为[公式:见原文])。然而,大多数现有的神经网络是为欧几里得空间中的数据量身定制的,这使得3D旋转数据在其代数运算下不封闭,并导致在3D相关学习任务中的性能次优。为了解决上述数据与模型不匹配所导致的问题,我们提出了一种名为四元数乘积单元(QPU)的新型非实神经元模型,用于表示3D旋转群上的数据。所提出的QPU利用四元数代数和3D旋转群的法则,将3D旋转数据表示为四元数,并通过加权的哈密顿乘积链将它们合并。我们证明,QPU在推理过程中在数学上保持了3D旋转数据的[公式:见原文]结构,并将3D表示分别解缠为“旋转不变”特征和“旋转等变”特征。此外,我们设计了一种快速QPU来加速QPU的计算。快速QPU应用树状结构的数据索引过程,并相应地利用并行计算的能力,这将单线程中QPU的计算复杂度从O(N)降低到O(logN)。以快速QPU作为基本模块,我们开发了一系列四元数神经网络(QNN),包括四元数多层感知器(QMLP)、四元数消息传递(QMP)等。此外,我们使QNN与传统的实值神经网络兼容,并适用于骨骼和点云。在合成和现实世界3D任务上的实验表明,基于我们快速QPU的QNN优于当前最先进的实值模型,特别是在需要对随机旋转具有鲁棒性的场景中。这项工作的代码可在https://github.com/SuferQin/Fast-QPU获取。