Closed mrpositron closed 3 years ago
We perform the same number of function evaluations. Thus, I don't get how x
affects the training.
@MrPositron Although it is not possible to answer your question in a concise manner, I would say that the phenomenon you are experiencing is related to the following models choice (which you did not specify):
s_span
in training should likely lead to very different vector fields and thus different training dynamics.Thanks for your reply!
I did not specify abot my model choise. I am sorry. My model consists of GRU encoder and NODE decoder. (i.e. RNN-NODE). Here is a chunk of my code that defines Neural ODE:
self.ode_solve = NeuralDE(self.func, sensitivity = 'autograd', solver = 'rk4', s_span = self.span)
During forward pass I get values from the trajectory obtained from the self.ode_solve
(trajectory = self.ode_solve.trajectory(hidden, self.span)
) and pass it to fc layer.
Additional Description
I have been using Neural ODEs recently for one particular deep learning task. In this task, I have to do 17 function evaluations, i.e.
s_span = torch.linspace(0, x, 17)
. However, I found that settingx
ins_span
affects the training. Whenx
is large it learns faster. Thus, could you explain the intuition behind settingx
in thes_span
.Example:
In the plot below blue is when
x = 1
and brown is whenx = 5
Thanks!