Effacer les filtres
Effacer les filtres

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

1 vue (au cours des 30 derniers jours)
Xiaowen Jiang
Xiaowen Jiang le 18 Juil 2021
Réponse apportée : Akshat le 16 Fév 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.

Réponses (1)

Akshat
Akshat le 16 Fév 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!

Produits


Version

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by