News for hackers. Stuff that matters.
Re:Neural Ordinary Differential Equations by sampo on Friday December 14, 2018 @05:04AM (#18679742)
> then the functions should be the same?

If we conceptually think that advancing from one neural net layer to the next one is the same as taking a time step with an ODE solver, then a bit more precise notation would be

    h1 = f(t=1,x)  + x
    h2 = f(t=2,h1) + h1
    h3 = f(t=3,h2) + h2
    h4 = f(t=4,h3) + h3
    y  = f(t=5,h4) + h4
Now you can say that the function f is always the same, but it still can give very different values for Δh when evaluated at different time points.
Re:Neural Ordinary Differential Equations by soVeryTired on Friday December 14, 2018 @05:22AM (#18679809)
I do think it's misleading to compare the method to a general feed-forward network though, for two reasons.

First, to preserve the analogy between eq. 1 and 2, the thetas in equation two should have their own dynamics, which should be learned.

Second, even if Equation 1 doesn't allow it, in a general feed-forward network it's possible for the state to change dimension between layers. I don't see how that could happen with the continuous model.

Neat paper, but it'd be nice if they had tied the analogy more explicitly to RNNs in the introduction.

Re:Neural Ordinary Differential Equations by duvenaud on Friday December 14, 2018 @12:49PM (#18682790)
The comparison we make is to residual networks, which I think is valid. First, we do parameterize a theta that changes with time, using a hypernet. But this is equivalent to the way sampo wrote the equations above - you can just feed time as another input to the dynamics network to get dynamics that change with time.

Second, I agree that general feedforward nets allow dimension changes, but resnets don't. This model is a drop-in replacement for resnets, but not for any feedforward net. If we gave the wrong impression somewhere, please let us know.

We didn't make the analogy with RNNs, because I don't think it fits - standard input-output RNNs have to take in part of the data with every time step, while here the data only appears at the input (depth 0) layer of the network.

Re:Neural Ordinary Differential Equations by soVeryTired on Friday December 14, 2018 @07:45PM (#18686268)
You're absolutely right - sorry, somehow I managed to miss the explicit time parameter in your equation two, and didn't read carefully enough to see that you were restricting the discussion to resnets and normalising flows.

You might be able to make a better connection to RNNs by having the input data as a 'forcing' function in your ODE. But you probably need some regularity conditions on the input data to make sure the result is nicely behaved.

Re:Neural Ordinary Differential Equations by im3w1l on Saturday December 15, 2018 @01:48AM (#18687398)
> standard input-output RNNs have to take in part of the data with every time step

Well they can but I don't see they why they have to. And couldn't your network also take input and give output for all times?

> First, we do parameterize a theta that changes with time, using a hypernet.

Ah I see. Did you end up using it in the final model? I don't see that in the mnist example, but I could be missing it as I only skimmed the code.

Re:Neural Ordinary Differential Equations by joe_the_user on Friday December 14, 2018 @01:08PM (#18682984)
Hasn't there been similar work to this in the past?

I don't see a "related work" section in your paper.

Re:Neural Ordinary Differential Equations by duvenaud on Friday December 14, 2018 @06:56PM (#18686007)
Section 7 is titled "Related Work".
Re:Neural Ordinary Differential Equations by joe_the_user on Friday December 14, 2018 @07:55PM (#18686302)
Thanks,

Apologies for not looking harder

Re:Neural Ordinary Differential Equations by magicalhippo on Friday December 14, 2018 @01:34PM (#18683248)
Now it's been ages since I dabbled with neural nets so this might be completely silly, but can't a change in dimension be thought of as forcing the weights to/from certain nodes to be zero?
Re:Neural Ordinary Differential Equations by duvenaud on Friday December 14, 2018 @06:57PM (#18686017)
Ah, that would stop certain dimensions from changing, but the output would still be the same size.
Re:Neural Ordinary Differential Equations by eximius on Friday December 14, 2018 @09:23PM (#18686646)
While technically still the same size, I think he's proposing that it's, in a sense, isomorphic to a dimension change if the fix to zero is propogates throughout the remainder of the layers (until the next 'change' that is).

Or something like that.

Re:Neural Ordinary Differential Equations by magicalhippo on Saturday December 15, 2018 @06:55AM (#18688068)
I hadn't entirely fleshed out the idea, but yeah.

Take a simple NN with 3 layers: 5 neurons in the input layer, 3 in the hidden and 1 output.

Force inputs to neuron 4 and 5 in the hidden layer to be zero, and force inputs to neurons 2-5 to be zero in the output layer (and ignore their output). I'm assuming the transfer function obeys f(0) = 0, if not, fix output to zero as well.

My thought was this would be similar to how you enforce boundary conditions when solving partial differential equations by directly setting the value of certain matrix elements before running the solver.

Again, may be completely silly.