Hacker News new | ask | show | jobs
by yorwba 3212 days ago
Two reasons multivariate polynomials are not commonly used in machine learning:

1. The number of parameters grows as (number of variables)^(degree of polynomial), which is highly inefficient. You could assume that the polynomial is a linear combination of easily factored ones, but that's equivalent to a neural network with one logarithmic-activation layer and one exponential-activation layer, followed by a linear layer. And most multivariate-polynomial theory probably hasn't focused on this special case.

2. To handle potentially unbounded sequences you'll have to use your multivariate polynomial in some kind of iterative/recursive scheme. That's what an RNN is. You could build an RNN out of multivariate polynomials. It probably won't work very well, because accumulating error will put you in an area of fast divergence. LSTMs use addition with a bounded function to avoid this.

1 comments

The growth issue is only really a problem if assume you're picking your polynomials from R[x,y,...]. But there are other choices that would be more appropriate. Often you want the model to be invariant to rotation (e.g. if you're doing computer vision), in which case you'd use R[x,y,...]^G, where G is the group of rotations.
I'm not familiar with the R[x,y,...]^G notation, but I'll assume it refers to the group of polynomials that are invariant under rotation of their inputs. I'm not sure whether the rotations of discretely sampled images really do form a group, since intuitively two 45° rotations lose information compared to a 90° rotation, but maybe you can fix that by assuming the right kind of periodicity.

Even assuming that rotations aren't lossy, I get at best a reduction in the number of parameters by a factor of √(number of variables), by fixing the rotation of a set of variables (representing sample point) so that one of them lies on a specific axis. In other words, this reduces the exponent by 1/2, which is still not small enough to make even second-degree polynomials feasible.

However, that doesn't mean I think symmetry priors like this are useless, so if you can point out further literature on this topic, that would be great! (It might also help me understand how exponentiating a group by another makes sense.)

The notation R^G comes from invariant theory[1]. I'm not aware if it has any connection with exponentiation or if that is just notation, but it wouldn't surprise me because notation in algebra seems to have a tendency to be really sneaky and well connected.

[1] https://en.wikipedia.org/wiki/Invariant_theory

Thank you for the link, now I know at least how to search for more information.

Can you confirm or refute my calculation of the growth of the number of parameters when the input variables are the sample points of an image and the polynomial has to be rotation-invaraint?