Abstract
3D human motion prediction is one of the essential and challenging problems in computer vision, which has attracted extensive research attention in the past decades. Many previous methods sought to predict the motion state of the next moment using the traditional recurrent neural network in Euclidean space. However, most methods did not explicitly exploit the relationships or constraints between different body components, which carry crucial information for motion prediction. In addition, human motion representation in Euclidean space has high distortion and shows a weak semantic expression when using deep learning models. Based on these observations, we propose a novel Geometric Algebra-based Multiscale Encoder-Decoder network (GAMEDnet) to predict the future 3D poses. In the encoder, the core module is a novel multiscale Geometric Algebra-based multiscale feature extractor(GA-MFE) , which extracts motion features given the multiscale human motion graph. In the decoder, we propose a novel GA-Graph-based Gated Recurrent Unit (GAG-GRU) to sequentially produce predictions. Extensive experiments are conducted to show that the proposed GAMEDnet outperforms state-of-the-art methods in both short and long-term motion prediction on the datasets of Human 3.6M, CMU Mocap.
Similar content being viewed by others
Data Availibility Statement
All data generated or analyzed during this study are included in this paper. The data of this work is available on request from the authors. The data of H3.6M and CMU Mocap are also available in the public repository.
References
Alahi A, Goel K, Ramanathan V, Robicquet A, Fei-Fei L, Savarese S (2016) Social lstm: Human trajectory prediction in crowded spaces. Proc IEEE Conf Comput Vis Pattern Recogn, 961–971
Bhattacharyya A, Fritz M, Schiele B (2018) Long-term on-board prediction of people in traffic scenes under uncertainty. Proc IEEE Conf Comput Vis Pattern Recognit, 4194–4202
Boujebli M, Drira H, Mestiri M, Farah IR (2020) Rate-invariant modeling in lie algebra for activity recognition. Electronics 9(11). https://doi.org/10.3390/electronics9111888
Bourached A, Griffiths RR, Gray R et al (2022) Generative model-enhanced human motion prediction[J]. Appl AI Lett 3(2):e63
Cai H, Zheng VW, Chang KCC (2018) A comprehensive survey of graph embedding: Problems, techniques, and applications. IEEE Trans Knowl Data Eng, 30(9):1616–1637
Cai Y, Huang L, Wang Y, Cham TJ, Cai J, Yuan J, Liu J, Yang X, Zhu Y, Shen X et al (2020) Learning progressive joint propagation for human motion prediction. Eur Conf Comput Vis, 226–242. Springer
Chaolong L, Zhen C, Wenming Z, Chunyan X, Jian Y (2018) Spatio-temporal graph convolution for skeleton based action recognition. Proc Thirty-Second AAAI Conf Artif Intell
Chen S, Liu B, Feng C, Vallespi-Gonzalez C, Wellington C (2020) 3d point cloud processing and learning for autonomous driving: Impacting map creation, localization, and perception. IEEE Signal Proc Mag, 38(1):68–86
Chiu HK, Adeli E, Wang B, Huang DA, Niebles JC (2019) Action-agnostic human pose forecasting. IEEE Winter Conference on Applications of Computer Vision (WACV), pp 1423–1432 . https://doi.org/10.1109/WACV.2019.00156
Clevert D, Unterthiner T, Hochreiter S (2016) Fast and accurate deep network learning by exponential linear units (elus). In: 4th International Conference on Learning Representations, ICLR 2016, San Juan, Puerto Rico, May 2-4, Conference Track Proceedings . arxiv:1511.07289
Cong Thang P, Pham M, Tachibana K (2020) Human action recognition method based on conformal geometric algebra and recurrent neural network. Information and Control Systems 5. https://doi.org/10.31799/1684-8853-2020-5-2-11
Fragkiadaki K, Levine S, Felsen P, Malik, J (2015) Recurrent network models for human dynamics. In: Proc IEEE Int Conf Comput Vis, 4346–4354
Ghosh P, Song J, Aksan E, Hilliges O (2017) Learning human motion models for long-term predictions. International Conference on 3D Vision (3DV), pp 458–466. IEEE
Gopalakrishnan A, Mali A, Kifer D, Giles L, Ororbia AG (2019) A neural temporal model for human motion prediction. Proc IEEE/CVF Conf Comput Vis Pattern Recognit, 12,116–12, 125
Gui LY, Wang YX, Liang X, Moura JM (2018) Adversarial geometry-aware human motion prediction. Proceedings of the European Conference on Computer Vision (ECCV), 786–803
Guo X, Choi J (2019) Human motion prediction via learning local structure representations and temporal dependencies. Proc AAAI Conf Artif Intell, 33:2580–2587
Hamill J, Knutzen KM (2006) Biomech basis Hum Mov,. Lippincott Williams & Wilkins
Hamilton WL, Ying R, Leskovec J (2017) Representation learning on graphs: Methods and applications. CoRR arXiv:1709.05584
Ionescu C, Papava D, Olaru V, Sminchisescu C (2014) Human3.6m: Large scale datasets and predictive methods for 3d human sensing in natural environments. IEEE Trans Pattern Analysis and Mach Intell, 36(7):1325–1339. https://doi.org/10.1109/TPAMI.2013.248
Jin X, Xiao H, Shen X, Yang J, Lin Z, Chen Y, Jie Z, Feng J, Yan S (2017) Predicting scene parsing and motion dynamics in the future. CoRR arxiv:1711.03270
Kingma DP, Ba J (2015) Adam: A method for stochastic optimization. 3rd International Conference on Learning Representations, ICLR, San Diego, CA, USA, May 7-9, Conference Track Proceedings. arxiv:1412.6980
Kipf TN, Welling M (2016) Semi-supervised classification with graph convolutional networks. CoRR abs/1609.02907. arxiv:1609.02907
Kuroe Y (2011) Models of clifford recurrent neural networks and their dynamics. The Int Joint Conf Neural Netw, pp 1035–1041. https://doi.org/10.1109/IJCNN.2011.6033336
Li C, Zhang Z, Lee WS, Lee GH (2018) Convolutional sequence to sequence model for human dynamics. Proc IEEE Conf Comput Vis Pattern Recognit, 5226–5234
Li M, Chen S, Zhao Y, Zhang Y, Wang Y, Tian Q (2020) Dynamic multiscale graph neural networks for 3d skeleton based human motion prediction. Proc IEEE/CVF Conf Comput Vis Pattern Recognit, 214–223
Li M, Chen S, Zhao Y, Zhang Y, Wang Y, Tian Q (2021) Multiscale spatio-temporal graph neural networks for 3d skeleton-based motion prediction. IEEE Trans Image Process, 30:7760–7775. https://doi.org/10.1109/TIP.2021.3108708
Liu Q, Cao W (2022) Geometric algebra graph neural network for cross-domain few-shot classification. Appl Intell, 1–14
Liu X, Li Y, Xia R (2020) Rotation-based spatial-temporal feature learning from skeleton sequences for action recognition. SIViP, 14. https://doi.org/10.1007/s11760-020-01644-0
Mao W, Liu M, Salzmann M (2020) History repeats itself: Human motion prediction via motion attention. Eur Conf Comput Vis, Springer 474–489
Mao W, Liu M, Salzmann M, Li H (2019) Learning trajectory dependencies for human motion prediction. Proc IEEE/CVF Int Conf Comput Vis, 9489–9497
Mao W, Liu M, Salzmann M, Li H (2021) Multi-level motion attention for human motion prediction. Int J Comput Vis, 129(9):2513–2535
Martinez J, Black MJ, Romero J (2017) On human motion prediction using recurrent neural networks. Proc IEEE Conf Comput Vis Pattern Recognit, pp 2891–2900
Men Q, Ho ESL, Shum HPH, Leung H (2021) A quadruple diffusion convolutional recurrent network for human motion prediction. IEEE Trans Circ Syst Video Technol, 31(9):3417–3432. https://doi.org/10.1109/TCSVT.2020.3038145
Pavllo D, Grangier D, Auli M (2018) Quaternet: A quaternion-based recurrent model for human motion. arXiv preprint arXiv:1805.06485
Pearson J, Bisset D (1994) Neural networks in the clifford domain. In: Proceedings of 1994 IEEE International Conference on Neural Networks (ICNN’94), 3:1465–1469. https://doi.org/10.1109/ICNN.1994.374502
Pei H, Wei B, Chang KCC, Lei Y, Yang B (2020) GEOM-GCN: GEOMETRIC GRAPH CONVOLUTIONAL NETWORKS[C]. The 8th International Conference on Learning Representations, ICLR 2020. The accessed date is 14 Feb 2020
Rivera-Rovelo J, Bayro-Corrochano E (2006) Medical image segmentation using a self-organizing neural network and clifford geometric algebra. The IEEE Int Joint Conf Neural Netw Proc, pp 3538–3545. https://doi.org/10.1109/IJCNN.2006.247362
Scarselli F, Gori M, Tsoi AC, Hagenbuchner M, Monfardini G (2009) The graph neural network model. IEEE Trans Neural Netw, 20(1):61–80. https://doi.org/10.1109/TNN.2008.2005605
Tang J, Zhang J, Yin J (2022) Temporal consistency two-stream cnn for human motion prediction. Neurocomputing 468:245–256
Veličković P, Cucurull G, Casanova A, et al (2018) Graph attention networks[C]. International Conference on Learning Representations. The accessed date is 16 Feb 2018
Wang B, Adeli E, Chiu Hk, Huang DA, Niebles JC (2019) Imitation learning for human pose prediction. Proc IEEE/CVF Int Conf Comput Vis, pp 7124–7133
Wang H, Ho ESL, Shum HPH, Zhu Z (2021) Spatio-temporal manifold learning for human motions via long-horizon modeling. IEEE Trans Vis Comput Graph, 27(1):216–227. https://doi.org/10.1109/TVCG.2019.2936810
Wang R, Shen M, Wang X, Cao W (2021) Rga-cnns: convolutional neural networks based on reduced geometric algebra. Sci China Inf Sci, 64. https://doi.org/10.1007/s11432-018-1513-5
Wang W, Peng X, Su Y, Qiao Y, Cheng J (2021) Ttpp: Temporal transformer with progressive prediction for efficient action anticipation. Neurocomputing 438:270–279
Xu K, Hu W, Leskovec J, et al (2019) How powerful are graph neural networks?[C]. The International Conference on Learning Representations. The accessed date is 22 Feb 2019
Xu YT, Li Y, Meger D (2019) Human motion prediction via pattern completion in latent representation space. 16th conference on computer and robot vision (CRV), IEEE, 57–64
Acknowledgements
This work is supported by the National Natural Science Foundation of China, No.61771322,61971290, the Shenzhen foundation for basic research JCYJ20220531100814033, and Shenzhen Stability Support General Project (Category A) 20200826104014001.
Author information
Authors and Affiliations
Corresponding author
Ethics declarations
Conflicts of interest
We have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Appendix
Appendix
In this part, we give two proofs for the conclusions used in this paper.
-
Proof of (14). In Geometric Algebra \(\mathbb {G}^3\) space, a multivector consists of scalars, vectors, bivectors, and trivectors. Given two multivectors W and H:
$$\begin{aligned} W= & {} \beta _{0}+\beta _{1} \textrm{e}_{1}+\beta _{2} \textrm{e}_{2}+ \beta _{3} \textrm{e}_{3}+\beta _{4} \textrm{e}_{12}+\beta _{5} \textrm{e}_{23}\nonumber \\{} & {} +\beta _{6} \textrm{e}_{31}+\beta _{7} \textrm{e}_{123} {\left[ \beta _{i} \in \mathbb {R}\right] } \nonumber \\ H= & {} \lambda _{0}+\lambda _{1} \textrm{e}_{1}+\lambda _{2} \textrm{e}_{2}+\lambda _{3} \textrm{e}_{3}+\lambda _{4} \textrm{e}_{12}+\lambda _{5} \textrm{e}_{23}\nonumber \\{} & {} +\lambda _{6} \textrm{e}_{31}+\lambda _{7} \textrm{e}_{123} {\left[ \lambda _{i} \in \mathbb {R}\right] } \end{aligned}$$(27)Therefore, the geometric product of the two multivectors W, H can be expressed as follows:
$$\begin{aligned} W \odot H= & {} \beta _{0} (\lambda _{0}+\lambda _{1} \textrm{e}_{1}+\lambda _{2} \textrm{e}_{2}+\lambda _{3} \textrm{e}_{3}+\lambda _{4} \textrm{e}_{12}\nonumber \\{} & {} +\lambda _{5} \textrm{e}_{23}+\lambda _{6} \textrm{e}_{31}+\lambda _{7} \textrm{e}_{123} ) \nonumber \\{} & {} + \beta _{1} (\lambda _{0}+\lambda _{1} \textrm{e}_{1}+\lambda _{2} \textrm{e}_{2}+\lambda _{3} \textrm{e}_{3}+\lambda _{4} \textrm{e}_{12}\nonumber \\{} & {} +\lambda _{5} \textrm{e}_{23}+\lambda _{6} \textrm{e}_{31}+\lambda _{7} \textrm{e}_{123} ) \nonumber \\{} & {} + \beta _{2} (\lambda _{0}+\lambda _{1} \textrm{e}_{1}+\lambda _{2} \textrm{e}_{2}+\lambda _{3} \textrm{e}_{3}+\lambda _{4} \textrm{e}_{12}\nonumber \\{} & {} +\lambda _{5} \textrm{e}_{23}+\lambda _{6} \textrm{e}_{31}+\lambda _{7} \textrm{e}_{123} ) \nonumber \\{} & {} +\beta _{3} (\lambda _{0}+\lambda _{1} \textrm{e}_{1}+\lambda _{2} \textrm{e}_{2}+\lambda _{3} \textrm{e}_{3}+\lambda _{4} \textrm{e}_{12}\nonumber \\{} & {} +\lambda _{5} \textrm{e}_{23}+\lambda _{6} \textrm{e}_{31}+\lambda _{7} \textrm{e}_{123} ) \nonumber \\{} & {} +\beta _{4} (\lambda _{0}+\lambda _{1} \textrm{e}_{1}+\lambda _{2} \textrm{e}_{2}+\lambda _{3} \textrm{e}_{3}+\lambda _{4} \textrm{e}_{12}\nonumber \\{} & {} +\lambda _{5} \textrm{e}_{23}+\lambda _{6} \textrm{e}_{31}+\lambda _{7} \textrm{e}_{123} ) \nonumber \\{} & {} +\beta _{5} (\lambda _{0}+\lambda _{1} \textrm{e}_{1}+\lambda _{2} \textrm{e}_{2}+\lambda _{3} \textrm{e}_{3}+\lambda _{4} \textrm{e}_{12}\nonumber \\{} & {} +\lambda _{5} \textrm{e}_{23}+\lambda _{6} \textrm{e}_{31}+\lambda _{7} \textrm{e}_{123} ) \nonumber \\{} & {} +\beta _{6} (\lambda _{0}+\lambda _{1} \textrm{e}_{1}+\lambda _{2} \textrm{e}_{2}+\lambda _{3} \textrm{e}_{3}+\lambda _{4} \textrm{e}_{12}\nonumber \\{} & {} +\lambda _{5} \textrm{e}_{23}+\lambda _{6} \textrm{e}_{31}+\lambda _{7} \textrm{e}_{123} ) \nonumber \\{} & {} +\beta _{7} (\lambda _{0}+\lambda _{1} \textrm{e}_{1}+\lambda _{2} \textrm{e}_{2}+\lambda _{3} \textrm{e}_{3}+\lambda _{4} \textrm{e}_{12}\nonumber \\{} & {} +\lambda _{5} \textrm{e}_{23}+\lambda _{6} \textrm{e}_{31}+\lambda _{7} \textrm{e}_{123} ) \end{aligned}$$(28)according to (1) we expanding (28)
$$\begin{aligned} W \odot H= & {} \lambda _{0} \beta _{0} +\lambda _{0} \beta _{1} \textrm{e}_{1} +\lambda _{0} \beta _{2} \textrm{e}_{2} +\lambda _{0} \beta _{3} \textrm{e}_{3} \nonumber \\{} & {} +\lambda _{0} \beta _{4} \textrm{e}_{12} +\lambda _{0} \beta _{5} \textrm{e}_{23} +\lambda _{0} \beta _{6} \textrm{e}_{31} +\lambda _{0} \beta _{7} \textrm{e}_{123} \nonumber \\{} & {} +\lambda _{1} \beta _{0} \textrm{e}_{1} +\lambda _{1} \beta _{1} +\lambda _{1} \beta _{2} \textrm{e}_{12} -\lambda _{1} \beta _{3} \textrm{e}_{31} \nonumber \\{} & {} +\lambda _{1} \beta _{4} \textrm{e}_{2} +\lambda _{1} \beta _{5} \textrm{e}_{123} -\lambda _{1} \beta _{6} \textrm{e}_{3} +\lambda _{1} \beta _{7} \textrm{e}_{23} \nonumber \\{} & {} +\lambda _{2} \beta _{0} \textrm{e}_{2} -\lambda _{2} \beta _{1} \textrm{e}_{12} +\lambda _{2} \beta _{2} +\lambda _{2} \beta _{3} \textrm{e}_{23} \nonumber \\{} & {} -\lambda _{2} \beta _{4} \textrm{e}_{1} +\lambda _{2} \beta _{5} \textrm{e}_{3} +\lambda _{2} \beta _{6} \textrm{e}_{123} +\lambda _{2} \beta _{7} \textrm{e}_{31} \nonumber \\{} & {} +\lambda _{3} \beta _{0} \textrm{e}_{3} +\lambda _{3} \beta _{1} \textrm{e}_{31} -\lambda _{3} \beta _{2} \textrm{e}_{23} +\lambda _{3} \beta _{3} \nonumber \\{} & {} +\lambda _{3} \beta _{4} \textrm{e}_{123} -\lambda _{3} \beta _{5} \textrm{e}_{2} +\lambda _{3} \beta _{6} \textrm{e}_{1} +\lambda _{3} \beta _{7} \textrm{e}_{12} \nonumber \\{} & {} +\lambda _{4} \beta _{0} \textrm{e}_{12} -\lambda _{4} \beta _{1} \textrm{e}_{2} +\lambda _{4} \beta _{2} \textrm{e}_{1} +\lambda _{4} \beta _{3} \textrm{e}_{123} \nonumber \\{} & {} -\lambda _{4} \beta _{4} -\lambda _{4} \beta _{5} \textrm{e}_{31} +\lambda _{4} \beta _{6} \textrm{e}_{23} -\lambda _{4} \beta _{7} \textrm{e}_{3} \nonumber \\{} & {} +\lambda _{5} \beta _{0} \textrm{e}_{23} +\lambda _{5} \beta _{1} \textrm{e}_{123} -\lambda _{5} \beta _{2} \textrm{e}_{3} +\lambda _{5} \beta _{3} \textrm{e}_{2} \nonumber \\{} & {} +\lambda _{5} \beta _{4} \textrm{e}_{31} -\lambda _{5} \beta _{5} -\lambda _{5} \beta _{6} \textrm{e}_{12} -\lambda _{5} \beta _{7} \textrm{e}_{1} \nonumber \\{} & {} +\lambda _{6} \beta _{0} \textrm{e}_{31} +\lambda _{6} \beta _{1} \textrm{e}_{3} +\lambda _{6} \beta _{2} \textrm{e}_{123} -\lambda _{6} \beta _{3} \textrm{e}_{1} \nonumber \\{} & {} -\lambda _{6} \beta _{4} \textrm{e}_{23} +\lambda _{6} \beta _{5} \textrm{e}_{12} -\lambda _{6} \beta _{6} -\lambda _{6} \beta _{7} \textrm{e}_{2} \nonumber \\{} & {} +\lambda _{7} \beta _{0} \textrm{e}_{123} +\lambda _{7} \beta _{1} \textrm{e}_{23} +\lambda _{7} \beta _{2} \textrm{e}_{31} +\lambda _{7} \beta _{3} \textrm{e}_{12} \nonumber \\{} & {} -\lambda _{7} \beta _{4} \textrm{e}_{3} -\lambda _{7} \beta _{5} \textrm{e}_{1} -\lambda _{7} \beta _{6} \textrm{e}_{2} -\lambda _{7} \beta _{7} \end{aligned}$$(29)simplifying and collecting up like terms
$$\begin{aligned} W \odot H= & {} (\lambda _{0} \beta _{0}+ \lambda _{1} \beta _{1}+ \lambda _{2} \beta _{2}+ \lambda _{3} \beta _{3}- \lambda _{4} \beta _{4}\nonumber \\{} & {} -\lambda _{5} \beta _{5}- \lambda _{6} \beta _{6}- \lambda _{7} \beta _{7} ) \nonumber \\{} & {} +(\lambda _{0} \beta _{1}+ \lambda _{1} \beta _{0}- \lambda _{2} \beta _{4}+ \lambda _{3} \beta _{6}+ \lambda _{4} \beta _{2}\nonumber \\{} & {} -\lambda _{5} \beta _{7}- \lambda _{6} \beta _{3}- \lambda _{7} \beta _{5} )\textrm{e}_{1} \nonumber \\{} & {} +(\lambda _{0} \beta _{2}+ \lambda _{1} \beta _{4}+ \lambda _{2} \beta _{0}- \lambda _{3} \beta _{5}- \lambda _{4} \beta _{1}\nonumber \\{} & {} +\lambda _{5} \beta _{3}- \lambda _{6} \beta _{7}- \lambda _{7} \beta _{6} )\textrm{e}_{2} \nonumber \\{} & {} +(\lambda _{0} \beta _{3}- \lambda _{1} \beta _{6}+ \lambda _{2} \beta _{5}+ \lambda _{3} \beta _{0}- \lambda _{4} \beta _{7}\nonumber \\{} & {} -\lambda _{5} \beta _{2}+ \lambda _{6} \beta _{1}- \lambda _{7} \beta _{4} )\textrm{e}_{3} \nonumber \\{} & {} +(\lambda _{0} \beta _{4}+ \lambda _{1} \beta _{2}- \lambda _{2} \beta _{1}+ \lambda _{3} \beta _{7}+ \lambda _{4} \beta _{0}\nonumber \\{} & {} -\lambda _{5} \beta _{6}+ \lambda _{6} \beta _{5}+ \lambda _{7} \beta _{3} )\textrm{e}_{12} \nonumber \\{} & {} +(\lambda _{0} \beta _{5}+ \lambda _{1} \beta _{7}+ \lambda _{2} \beta _{3}- \lambda _{3} \beta _{2}+ \lambda _{4} \beta _{6}\nonumber \\{} & {} +\lambda _{5} \beta _{0}- \lambda _{6} \beta _{4}+ \lambda _{7} \beta _{1} )\textrm{e}_{23} \nonumber \\{} & {} +(\lambda _{0} \beta _{6}- \lambda _{1} \beta _{3}+ \lambda _{2} \beta _{7}+ \lambda _{3} \beta _{1}- \lambda _{4} \beta _{5}\nonumber \\{} & {} +\lambda _{5} \beta _{4}+ \lambda _{6} \beta _{0}+ \lambda _{7} \beta _{2} )\textrm{e}_{31} \nonumber \\{} & {} +(\lambda _{0} \beta _{7}+ \lambda _{1} \beta _{5}+ \lambda _{2} \beta _{6}+ \lambda _{3} \beta _{4}+ \lambda _{4} \beta _{3}\nonumber \\{} & {} + \lambda _{5} \beta _{1}+ \lambda _{6} \beta _{2}+ \lambda _{7} \beta _{0} )\textrm{e}_{123} \end{aligned}$$(30)which can be expressed as the real matrix form as follows:
$$\begin{aligned}{} & {} \left[ \begin{array}{c} \textrm{e}_{0}\left( W\odot H\right) \\ \textrm{e}_{1}\left( W\odot H\right) \\ \textrm{e}_{2}\left( W\odot H\right) \\ \textrm{e}_{3}\left( W\odot H\right) \\ \textrm{e}_{12}\left( W\odot H\right) \\ \textrm{e}_{23}\left( W\odot H\right) \\ \textrm{e}_{31}\left( W\odot H\right) \\ \ \textrm{e}_{123}\left( W\odot H\right) \end{array}\right] \nonumber \\{} & {} =\left[ \begin{array}{cccccccc} \beta _{0} &{} \beta _{1} &{} \beta _{2} &{} \beta _{3} &{} -\beta _{4} &{} -\beta _{5} &{} -\beta _{6} &{} -\beta _{7} \\ \beta _{1} &{} \beta _{0} &{} -\beta _{4} &{} \beta _{6} &{} \beta _{2} &{} -\beta _{7} &{} -\beta _{3} &{} -\beta _{5} \\ \beta _{2} &{} \beta _{4} &{} \beta _{0} &{} \beta _{5} &{} -\beta _{1} &{} -\beta _{3} &{} -\beta _{7} &{} -\beta _{6} \\ \beta _{3} &{} -\beta _{6} &{} \beta _{5} &{} \beta _{0} &{} -\beta _{7} &{} -\beta _{2} &{} \beta _{1} &{} -\beta _{4} \\ \beta _{4} &{} \beta _{2} &{} -\beta _{1} &{} \beta _{7} &{} \beta _{0} &{} -\beta _{6} &{} \beta _{5} &{} \beta _{3} \\ \beta _{5} &{} \beta _{7} &{} \beta _{3} &{} -\beta _{2} &{} \beta _{6} &{} \beta _{0} &{} -\beta _{4} &{} \beta _{1} \\ \beta _{6} &{} -\beta _{3} &{} \beta _{7} &{} \beta _{1} &{} -\beta _{5} &{} \beta _{4} &{} \beta _{0} &{} \beta _{2} \\ \beta _{7} &{} \beta _{5} &{} \beta _{6} &{} \beta _{4} &{} \beta _{3} &{} \beta _{1} &{} \beta _{2} &{} \beta _{0} \end{array}\right] \!*\!\left[ \begin{array}{c} \lambda _{0} \\ \lambda _{1} \\ \lambda _{2} \\ \lambda _{3} \\ \lambda _{4} \\ \lambda _{5}\\ \lambda _{6} \\ \lambda _{7} \end{array}\right] \nonumber \\ \end{aligned}$$(31) -
Proof of GA feature extractor as a differentiable function used in this paper.
-
Problem description: Let \({f} = {f(W)}: \mathbb {G}^{n}\) be a multivector-valued function, which has \({2}^{n}\) blade components:
$$\begin{aligned} f(\varvec{H})=\sum _{i=1}^{n}f(\varvec{H})_{i} e_{i} \end{aligned}$$(32)where i \(\in \left( 0,1,2,...,23,...,123,123 (n-1)n\right) \) contains all possible \(2^n\) blades and \(f(\varvec{H})_{i}\) corresponds to sub-function accompanying each multivector base. In this paper, we would like to prove that \({f(\varvec{H})}\) is differentiable so that it can be applied as a GA feature extractor in the proposed GAMEDnet.
-
Proof: Throughout this proof, the following theorem and assumption are given. Theorem 1. If function \({z} = {f}(x,y,...,k)\) with n variables is differentiable with respect to point \(\left( x,y,...,k\right) \), its partial derivative with respect to the variable \(\left( x,y,...,k\right) \) must exit, and its total differential at point\(\left( x,y,...,k\right) \) can be obtained by:
$$\begin{aligned} d {z}(x,y,...,k) = \frac{\partial {z}}{\partial x} \Delta x+\frac{\partial {z}}{\partial y} \Delta y\cdots +\frac{\partial {z}}{\partial k} \Delta k \end{aligned}$$(33)Theorem 2. If the partial derivative \(\frac{\partial {Z}}{\partial x} d x\),\(\frac{\partial {Z}}{\partial y} d y\) ,\(\cdots \) ,\(\frac{\partial {Z}}{\partial k} d k\) of function \({Z} = {f}(x,y,...,k)\) with respect to point \(\left( x,y,...,k\right) \) is continuous, the function \({Z} = {f}(x,y,...,k)\) is thus differentiable. Assumption. assuming multivector H=\(\lambda _{0}+\lambda _{1} \textrm{e}_{1}+\lambda _{2} \textrm{e}_{2}+\lambda _{3} \textrm{e}_{3}+\lambda _{4} \textrm{e}_{12}+\lambda _{5} \textrm{e}_{13}+\lambda _{6} \textrm{e}_{31}+\lambda _{7} \textrm{e}_{123} , {\left[ \lambda _{i} \!\in \! \mathbb {R}\right] }\), \(W=\beta _{0}+\beta _{1} \textrm{e}_{1}+\beta _{2} \textrm{e}_{2}+ \beta _{3} \textrm{e}_{3}+\beta _{4} \textrm{e}_{12}+\beta _{5} \textrm{e}_{23}+\beta _{6} \textrm{e}_{31}+\beta _{7} \textrm{e}_{123} , {\left[ \beta _{i} \in \mathbb {R}\right] }\). The variables \(\left( \lambda _{0},\lambda _{1},...,\lambda _{7}\right) \),\(\left( \beta _{0},\beta _{1},...,\beta _{7}\right) \) are independent, respectively. In this paper, we focus mainly on human motion prediction in \({\textbf {G}}^{3}\). According to Section 3.3.2, GA operation for feature extraction can thus be expressed by (32):
$$\begin{aligned} {f}(\lambda _{0},\lambda _{1},...,\lambda _{7})= & {} W \odot H = \sum _{i=1}^{n} f(H)_{i} {e}_{i}\nonumber \\= & {} f(H)_{0}+ f(H)_{1}e_{1}+ f(H)_{2}e_{2} \nonumber \\{} & {} + f(H)_{3} e_{3}+f(H)_{12} e_{12}\nonumber \\{} & {} +f(H)_{23} e_{23}+f(H)_{31} e_{31}\nonumber \\{} & {} +f(H)_{123} e_{123} \end{aligned}$$(34)where \(\varvec{H}\) is the feature vector at the GA-based graph convolution layer, \(\varvec{W}\) denotes the trainable transformation parameters. According to (30), we expand (34) to obtain:
$$\begin{aligned} \left\{ \begin{array}{l} f(\lambda _{0},\lambda _{1},...,\lambda _{7})_{0} = \lambda _{0} \beta _{0}+ \lambda _{1} \beta _{1}+ \lambda _{2} \beta _{2}+ \lambda _{3} \beta _{3}- \lambda _{4} \beta _{4}- \lambda _{5} \beta _{5}- \lambda _{6} \beta _{6}- \lambda _{7} \beta _{7} \\ f(\lambda _{0},\lambda _{1},...,\lambda _{7})_{1} = \lambda _{0} \beta _{1}+ \lambda _{1} \beta _{0}- \lambda _{2} \beta _{4}+ \lambda _{3} \beta _{6}+ \lambda _{4} \beta _{2}- \lambda _{5} \beta _{7}- \lambda _{6} \beta _{3}- \lambda _{7} \beta _{5} \\ f(\lambda _{0},\lambda _{1},...,\lambda _{7})_{2} = \lambda _{0} \beta _{2}+ \lambda _{1} \beta _{4}+ \lambda _{2} \beta _{0}- \lambda _{3} \beta _{5}- \lambda _{4} \beta _{1}+ \lambda _{5} \beta _{3}- \lambda _{6} \beta _{7}- \lambda _{7} \beta _{6} \\ f(\lambda _{0},\lambda _{1},...,\lambda _{7})_{3} = \lambda _{0} \beta _{3}- \lambda _{1} \beta _{6}+ \lambda _{2} \beta _{5}+ \lambda _{3} \beta _{0}- \lambda _{4} \beta _{7}- \lambda _{5} \beta _{2}+ \lambda _{6} \beta _{1}- \lambda _{7} \beta _{4} \\ f(\lambda _{0},\lambda _{1},...,\lambda _{7})_{12} = \lambda _{0} \beta _{4}+ \lambda _{1} \beta _{2}- \lambda _{2} \beta _{1}+ \lambda _{3} \beta _{7}+ \lambda _{4} \beta _{0}- \lambda _{5} \beta _{6}+ \lambda _{6} \beta _{5}+ \lambda _{7} \beta _{3} \\ f(\lambda _{0},\lambda _{1},...,\lambda _{7})_{23} = \lambda _{0} \beta _{5}+ \lambda _{1} \beta _{7}+ \lambda _{2} \beta _{3}- \lambda _{3} \beta _{2}+ \lambda _{4} \beta _{6}+ \lambda _{5} \beta _{0}- \lambda _{6} \beta _{4}+ \lambda _{7} \beta _{1} \\ f(\lambda _{0},\lambda _{1},...,\lambda _{7})_{31} = \lambda _{0} \beta _{6}- \lambda _{1} \beta _{3}+ \lambda _{2} \beta _{7}+ \lambda _{3} \beta _{1}- \lambda _{4} \beta _{5}+ \lambda _{5} \beta _{4}+ \lambda _{6} \beta _{0}+ \lambda _{7} \beta _{2} \\ f(\lambda _{0},\lambda _{1},...,\lambda _{7})_{123} \!=\! \lambda _{0} \beta _{7}+ \lambda _{1} \beta _{5}+ \lambda _{2} \beta _{6}+ \lambda _{3} \beta _{4}+ \lambda _{4} \beta _{3}+ \lambda _{5} \beta _{1}+ \lambda _{6} \beta _{2}+ \lambda _{7} \beta _{0}\\ \end{array} \right. \end{aligned}$$(35)The derivative of a multivector-value function \(f(\varvec{H})\) with respect to a multivector \(\varvec{H}\) is expressed using the Leibniz’s notation:
$$\begin{aligned} \partial _{h} f(h)=\frac{\partial f(h)}{\partial h}=\lim _{\varDelta h \rightarrow 0} \frac{f(h+\varDelta h)-F(h)}{\varDelta h} \end{aligned}$$(36)In the study of fields in GA space, any elements can be represented as multivector spanned in GA with basis \({e_i}\). Remarkably, every component with basis \({e_i}\) inherit the derivative properties of a multivector, and thus we can investigate the partial derivative of part component(with basis \({e_i}\)) of a multivector-value function. We first take into account f \(({\lambda _{0},\lambda _{1},...,\lambda _{7})_{1}}\) with \({e_1}\). Given the definition of derivative36, the partial differential of \({f}(\lambda _{0},\lambda _{1},...,\lambda _{7})_{1}\) with respect to \(\lambda _{0},\lambda _{1},...,\lambda _{7}\) is as follows:
$$\begin{aligned} \left\{ \begin{array}{l} \frac{\partial {H}}{\partial \lambda _{0}} = \beta _{1}, \frac{\partial {H}}{\partial \lambda _{1}} = \beta _{0} \\ \frac{\partial {H}}{\partial \lambda _{2}} = -\beta _{4}, \frac{\partial {H}}{\partial \lambda _{3}} = \beta _{6} \\ \frac{\partial {H}}{\partial \lambda _{4}} = \beta _{2}, \frac{\partial {H}}{\partial \lambda _{5}} = -\beta _{7} \\ \frac{\partial {H}}{\partial \lambda _{6}} = -\beta _{3}, \frac{\partial {H}}{\partial \lambda _{7}} = -\beta _{5} \\ \end{array} \right. \end{aligned}$$(37)Therefore, we have the total differential of f \(({\lambda _{0},\lambda _{1},...,\lambda _{7})_{1}}\):
$$\begin{aligned} d {f}({\lambda _{0},\lambda _{1},...,\lambda _{7})_{1}}= & {} \beta _{1} \varDelta \lambda _{0} +\beta _{0} \varDelta \lambda _{1} -\beta _{4} \varDelta \lambda _{2}\nonumber \\{} & {} +\beta _{6} \varDelta \lambda _{3} +\beta _{2} \varDelta \lambda _{4} -\beta _{7} \varDelta \lambda _{5}\nonumber \\{} & {} -\beta _{3} \varDelta \lambda _{6} -\beta _{5} \varDelta \lambda _{7} \end{aligned}$$(38)Therefore, f \(({\lambda _{0},\lambda _{1},...,\lambda _{7})_{1}}\) meets Theorem 1. In addition, the partial differential of \({f}(\lambda _{0},\lambda _{1},...,\lambda _{7})_{1}\) with respect to \(\lambda _{0},\lambda _{1},...,\lambda _{7}\) are a known constant, which show their continuity at \(({\lambda _{0},\lambda _{1},...,\lambda _{7})}\), and thus meet Theorem 2. Therefore, f \(({\lambda _{0},\lambda _{1},...,\lambda _{7})_{1}}\) is differentiable. The same principle applies to the proof of \({f}(\varvec{H})_{0}\),\({f}(\varvec{H})_{2}\),\({f}(\varvec{H})_{3}\),\({f}(\varvec{H})_{12}\),\({f}(\varvec{H})_{23}\),\({f}(\varvec{H})_{31}\), \({f}(\varvec{H})_{123}\). The proof for \({f(\varvec{H})}\) as a differentiable feature extraction is completed.
-
Rights and permissions
Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.
About this article
Cite this article
Zhong, J., Cao, W. Geometric algebra-based multiscale encoder-decoder networks for 3D motion prediction. Appl Intell 53, 26967–26987 (2023). https://doi.org/10.1007/s10489-023-04908-7
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10489-023-04908-7