Systematically Differentiating Parametric Discontinuities
Systematically Differentiating Parametric Discontinuities
复制标题
系统地区分参数不连续性
DOI:
10.1145/3450626.3459775
复制
发表时间:
2021
影响因子:
6.2
通讯作者:
Ragan-Kelley, Jonathan
中科院分区:
文献类型:
--
作者:
Bangaru, Sai Praveen;Michel, Jesse;Mu, Kevin;Bernstein, Gilbert;Li, Tzu-Mao;Ragan-Kelley, Jonathan
Emerging research in computer graphics, inverse problems, and machine learning requires us to differentiate and optimize parametric discontinuities. These discontinuities appear in object boundaries, occlusion, contact, and sudden change over time. In many domains, such as rendering and physics simulation, we differentiate the parameters of models that are expressed as integrals over discontinuous functions. Ignoring the discontinuities during differentiation often has a significant impact on the optimization process. Previous approaches either apply specialized hand-derived solutions, smooth out the discontinuities, or rely on incorrect automatic differentiation.We propose a systematic approach to differentiating integrals with discontinuous integrands, by developing a new differentiable programming language. We introduce integration as a language primitive and account for the Dirac delta contribution from differentiating parametric discontinuities in the integrand. We formally define the language semantics and prove the correctness and closure under the differentiation, allowing the generation of gradients and higher-order derivatives. We also build a system, Teg, implementing these semantics. Our approach is widely applicable to a variety of tasks, including image stylization, fitting shader parameters, trajectory optimization, and optimizing physical designs.