Hello James!



 6fb4b64ff0a68bcbf8fa:

Thank you for your reply.
I check my gradient eigenvalue,eigenvector(s_f.grad,v_f.grad).

only print none value.

this mean that during training stage,
I printed eigenvalue’s grad and eigenvector’s grad.
in training stage, they printed None value.


Well, if you’re getting “none” gradients during training, there’s
almost certainly a bug somewhere, more likely in your code,
but possibly, though less likely, in pytorch.
If you don’t find the bug fairly quickly just looking through your
code, then more orderly debugging is called for.  A common
approach is to break thing up into pieces to try and isolate the
bug.
As I suggested in my previous post, you might try just seeing
if you can get a gradient out of symeig.  My suggestion would
be that you post a short, complete, runnable pytorch script
that pumps a tensor (with requires_grad set) through
symeig and somehow calculates a scalar (single number)
from that.  Then call backward() on that scalar and see if
your input tensor has good gradients or just “none”.
If you post the script and your results, forum participants can
not only look at it, but run it for themselves, and maybe they
will see something or have ideas about what is going on.
Good luck.
K. Frank