It's quite intuitive that most neural network topologies/architectures are not identifiable. But what are some well-known results in the field? Are there simple conditions which allow/prevent identifiability? For example,

  • all networks with nonlinear activation functions and more than one hidden layer are not identifiable
  • all networks with more than two hidden units are not identifiable

Or things like these. NOTE:I'm not saying that these conditions prevent identifiability (though they seem pretty good candidates to me). They are just examples of what I mean with "simple conditions".

If it helps to narrow down the question, feel free to consider only feed-forward and recurrent architectures. If this is still not enough, I'd be satisfied with an answer which cover at least one architecture among MLP, CNN and RNN. I had a quick look around on the Web but it looks like the only discussion I could find was on Reddit. Come on, people, we can do better than Reddit ;-)

  • 1
    $\begingroup$ what's the purpose of this academic exercise? $\endgroup$ – Aksakal Nov 30 '17 at 19:33
  • 1
    $\begingroup$ Can I please ask, what have you considered/examined from the existing literature? This seems like a very niche question; the very few relevant references that I have seen associated within the system identification literature rather than standard ML (eg. 1, 2, 3). Can you please define your question a bit more in the context of ML? Identifiability is mostly a Control Systems aspect; are you "just" referring to 1-1 relation? $\endgroup$ – usεr11852 says Reinstate Monic Nov 30 '17 at 19:53
  • $\begingroup$ I think you should be able to easily prove these results using the implicit function theorem. $\endgroup$ – Alex R. Nov 30 '17 at 20:33
  • 1
    $\begingroup$ @Aksakal what's the purpose of computing the probability that the urn is empty at noon, after infinite steps in which 10 balls are added and one removed?. No one, but yet the question was fun. Not all questions need to have practical relevance, in order to be worth answering. Or you could say that the lack of identifiability prevents you from doing precise inference on the NN weights, but that would be a false justification because almost no one is interested... $\endgroup$ – DeltaIV Nov 30 '17 at 22:25
  • 3
    $\begingroup$ @DeltaIV, it's a valid question for CV. The problem's that nobody cares to think about this stuff, I'm afraid. Everyone's busy building models and making money, when the models stop working that's when unemployed AI thinkers will ponder the identifyability $\endgroup$ – Aksakal Nov 30 '17 at 22:45

Linear, single-layer FFNs are non-identified

The question as since been edited to exclude this case; I retain it here because understanding the linear case is a simple example of the phenomenon of interest.

Consider a feedforward neural network with 1 hidden layer and all linear activations. The task is a simple OLS regression task.

So we have the model $\hat{y}=X A B$ and the objective is $$ \min_{A,B} \frac{1}{2}|| y - X A B ||_2^2 $$

for some choice of $A, B$ of appropriate shape. $A$ is the input-to-hidden weights, and $B$ is the hidden-to-output weights.

Clearly the elements of the weight matrices are not identifiable in general, since there are any number of possible configurations for which two pairs of matrices $A,B$ have the same product.

Nonlinear, single-layer FFNs are still non-identified

Building up from the linear, single-layer FFN, we can also observe non-identifiability in the nonlinear, single-layer FFN.

As an example, adding a $\tanh$ nonlinearity to any of the linear activations creates a nonlinear network. This network is still non-identified, because for any loss value, a permutation of the weights of two (or more) neurons at one layer, and their corresponding neurons at the next layer, will likewise result in the same loss value.

In general, neural networks are non-identified

We can use the same reasoning to show that neural networks are non-identified in all but very particular parameterizations.

For example, there is no particular reason that convolutional filters must occur in any particular order. Nor is it required that convolutional filters have any particular sign, since subsequent weights could have the opposite sign to "reverse" that choice.

Likewise, the units in an RNN can be permuted to obtain the same loss.

See also: Can we use MLE to estimate Neural Network weights?

  • $\begingroup$ I was specifically excluding this case (linear activation functions) in the comments to my question, because it's trivial to obtain a identifiable model, starting from this one, which gives exactly the same predictions, with a simple reparametrization. It's not "intrinsically non-identifiable", so to speak. So I was specifically referring to nonlinear activation functions. But I reckon that I should include that in my question, not just leave it into comments. In a few hours I will modify my question accordingly. $\endgroup$ – DeltaIV Jul 4 '18 at 15:46
  • $\begingroup$ It’s best practice to edit your question to clarify what you’re interested in knowing about. $\endgroup$ – Sycorax says Reinstate Monica Jul 4 '18 at 16:15
  • $\begingroup$ you're right, I usually do, but this time I forgot. My bad. $\endgroup$ – DeltaIV Jul 5 '18 at 8:10

There at at least $n!$ global optima when fitting a 1-layer neural network, constituted of $n$ neurons. This comes from the fact that, if you exchange two neurons on a specific level, and then you exchange the weights attributed to these neurons on the next level, you will obtain exactly the same fit.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.