How to retain the derivative trace of a dlarray out of dlfeval function
2 次查看(过去 30 天)
显示 更早的评论
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.
0 个评论
回答(1 个)
Akshat
2024-2-16
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.
Link to the documentation page is https://www.mathworks.com/help/deeplearning/ref/dlarray.dlgradient.html.
Hope this helps!
0 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!