Item type |
Trans(1) |
公開日 |
2022-01-05 |
タイトル |
|
|
タイトル |
Design and Implementation of a Multicomplex Number Library for Computing any Order of Derivatives |
タイトル |
|
|
言語 |
en |
|
タイトル |
Design and Implementation of a Multicomplex Number Library for Computing any Order of Derivatives |
言語 |
|
|
言語 |
eng |
キーワード |
|
|
主題Scheme |
Other |
|
主題 |
[発表概要, Unrefereed Presentatin Abstract] |
資源タイプ |
|
|
資源タイプ識別子 |
http://purl.org/coar/resource_type/c_6501 |
|
資源タイプ |
journal article |
著者所属 |
|
|
|
Graduate School of Engineering, The University of Tokyo |
著者所属 |
|
|
|
Information Technology Center, The University of Tokyo |
著者所属(英) |
|
|
|
en |
|
|
Graduate School of Engineering, The University of Tokyo |
著者所属(英) |
|
|
|
en |
|
|
Information Technology Center, The University of Tokyo |
著者名 |
Shaowen, Li
Hiroyuki, Sato
|
著者名(英) |
Shaowen, Li
Hiroyuki, Sato
|
論文抄録 |
|
|
内容記述タイプ |
Other |
|
内容記述 |
Derivatives are the central pillar for solving many computational problems including the training of neural networks, the development of artificial intelligence tools, and physical simulations. Various methods for computing derivatives exist, and they can be classified into four categories: (1) manual derivation; (2) numerical differentiation; (3) symbolic differentiation; and (4) automatic differentiation. Using complex numbers for computing derivatives can be considered as a numerical method, and it avoids the cancellation error inherent to the finite difference method. It possesses advantages from numerical differentiation including better efficiency and easy implementation. Implemented properly, it also achieves comparable accuracy with symbolic and automatic differentiation. Generalizing complex number to higher dimensions further enables us to calculate derivatives of any order, which is hard to obtain using other approaches. In this work, the knowledge of multicomplex algebra is first described and a C++ multicomplex class is constructed. The efficiency and accuracy of potential implementations are compared. Furthermore, a source code transformer that automatically embeds the multicomplex data type into the original program is implemented. The transformer augments this approach with the advantage that programmers can focus solely on building the computation and only a minimum code rewriting is needed. We evaluate the performance and productivity of our library and the transformer in two applications: poisoning attack and mass-spring simulation. |
論文抄録(英) |
|
|
内容記述タイプ |
Other |
|
内容記述 |
Derivatives are the central pillar for solving many computational problems including the training of neural networks, the development of artificial intelligence tools, and physical simulations. Various methods for computing derivatives exist, and they can be classified into four categories: (1) manual derivation; (2) numerical differentiation; (3) symbolic differentiation; and (4) automatic differentiation. Using complex numbers for computing derivatives can be considered as a numerical method, and it avoids the cancellation error inherent to the finite difference method. It possesses advantages from numerical differentiation including better efficiency and easy implementation. Implemented properly, it also achieves comparable accuracy with symbolic and automatic differentiation. Generalizing complex number to higher dimensions further enables us to calculate derivatives of any order, which is hard to obtain using other approaches. In this work, the knowledge of multicomplex algebra is first described and a C++ multicomplex class is constructed. The efficiency and accuracy of potential implementations are compared. Furthermore, a source code transformer that automatically embeds the multicomplex data type into the original program is implemented. The transformer augments this approach with the advantage that programmers can focus solely on building the computation and only a minimum code rewriting is needed. We evaluate the performance and productivity of our library and the transformer in two applications: poisoning attack and mass-spring simulation. |
書誌レコードID |
|
|
収録物識別子タイプ |
NCID |
|
収録物識別子 |
AA11464814 |
書誌情報 |
情報処理学会論文誌プログラミング(PRO)
巻 15,
号 1,
p. 17-17,
発行日 2022-01-05
|
ISSN |
|
|
収録物識別子タイプ |
ISSN |
|
収録物識別子 |
1882-7802 |
出版者 |
|
|
言語 |
ja |
|
出版者 |
情報処理学会 |