How to retain the derivative trace of a dlarray out of dlfeval function

2 visualizaciones (últimos 30 días)
Xiaowen Jiang
Xiaowen Jiang el 18 de Jul. de 2021
Respondida: Akshat el 16 de Feb. de 2024
Hi! In the deep learning toolbox, when we set 'RetainData' to be true in dlgradient function, a dlarray retains the derivative trace until the end of the dlfeval function call that evaluates the dlgradient. If we want to reuse this trace again outside the function, for example, to compute higher order derivatives but not in the original function which is used to compute gradient, how can we do that? Thank you very much for you help.

Respuestas (1)

Akshat
Akshat el 16 de Feb. de 2024
Hi Xiaowen,
As you asked in the question, you want to retain the trace in order to perform some tasks like computing higher order derivatives.
If you go through https://www.mathworks.com/help/deeplearning/ref/dlarray.dlgradient.html#mw_ef6d7d9f-bce7-4417-ade7-fa36594d55bb, it is written that if you set the flag "EnableHigherDerivatives" as true, you can retain the intermediate values for future calls of the "dlgradient" function.
An example given for this is https://www.mathworks.com/help/deeplearning/ug/trainwasserstein-gan-with-gradient-penalty-wgan-gp.html, you can refer to the documentation page for more examples.
Hope this helps!

Productos


Versión

R2021a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by