Skip to main content
deleted 286 characters in body
Source Link
nbro
  • 41.4k
  • 12
  • 114
  • 205

So I am training an ANN for classification between 3 classes. The ANN has an input layer, one hidden layer and a 3 node output layer.

The problem I am facing is that the output being produced by the 3 output nodes are so close to 1 (for the first few iterations at least, and so iI am assuming the problem propagates to future outputs as well) the weights are not being updated (or hardly updated) due to overflow (about 10^-11$10^{-11}$). Now I can fix the overflow problem (but I don't think it is the culprit). I think such low values of error is the main culprit, and I cannot figure what is causing such low values of error.

What will cause the network to behave more interactively like Iresponsively, that is, how will I be actually able to grasp the weight updates and not something in the order of 10^-11$10^{-11}$?

Note: DataThe data set contain values in the order of 10's$10$'s, and the weights randomly initialized are in the order of 0 < w < 1$0 < w < 1$. I have tried feature normalization but it is not that effective.

Any help is highly appreciated.

EDIT: I did not know the term was called vanishing gradient, so I added it for better readability

NOTE: Experienced users can freely edit the question to cater to a more general problem, since I believe the problem has many other variations.

So I am training an ANN for classification between 3 classes. The ANN has an input layer, one hidden layer and a 3 node output layer.

The problem I am facing is that the output being produced by the 3 output nodes are so close to 1 (for the first few iterations at least and so i am assuming the problem propagates to future outputs as well) the weights are not being updated (or hardly updated) due to overflow (about 10^-11). Now I can fix the overflow problem (but I don't think it is the culprit). I think such low values of error is the main culprit, and I cannot figure what is causing such low values of error.

What will cause the network to behave more interactively like I will be actually able to grasp the weight updates and not something in the order of 10^-11?

Note: Data set contain values in the order of 10's and the weights randomly initialized are in the order of 0 < w < 1. I have tried feature normalization but it is not that effective.

Any help is highly appreciated.

EDIT: I did not know the term was called vanishing gradient, so I added it for better readability

NOTE: Experienced users can freely edit the question to cater to a more general problem, since I believe the problem has many other variations.

I am training an ANN for classification between 3 classes. The ANN has an input layer, one hidden layer and a 3 node output layer.

The problem I am facing is that the output being produced by the 3 output nodes are so close to 1 (for the first few iterations at least, and so I am assuming the problem propagates to future outputs as well) the weights are not being updated (or hardly updated) due to overflow (about $10^{-11}$). I can fix the overflow problem (but I don't think it is the culprit). I think such low values of error is the main culprit, and I cannot figure what is causing such low values of error.

What will cause the network to behave more responsively, that is, how will I be actually able to grasp the weight updates and not something in the order of $10^{-11}$?

The data set contain values in the order of $10$'s, and the weights randomly initialized are in the order of $0 < w < 1$. I have tried feature normalization but it is not that effective.

added 213 characters in body
Source Link
user9947
user9947

So I am training an ANN for classification between 3 classes. The ANN has an input layer, one hidden layer and a 3 node output layer.

The problem I am facing is that the output being produced by the 3 output nodes are so close to 1 (for the first few iterations at least and so i am assuming the problem propagates to future outputs as well) the weights are not being updated (or hardly updated) due to overflow (about 10^-11). Now I can fix the overflow problem (but I don't think it is the culprit). I think such low values of error is the main culprit, and I cannot figure what is causing such low values of error.

What will cause the network to behave more interactively like I will be actually able to grasp the weight updates and not something in the order of 10^-11?

Note: Data set contain values in the order of 10's and the weights randomly initialized are in the order of 0 < w < 1. I have tried feature normalization but it is not that effective.

Any help is highly appreciated.

EDIT: I did not know the term was called vanishing gradient, so I added it for better readability

NOTE: Experienced users can freely edit the question to cater to a more general problem, since I believe the problem has many other variations.

So I am training an ANN for classification between 3 classes. The ANN has an input layer, one hidden layer and a 3 node output layer.

The problem I am facing is that the output being produced by the 3 output nodes are so close to 1 (for the first few iterations at least and so i am assuming the problem propagates to future outputs as well) the weights are not being updated (or hardly updated) due to overflow (about 10^-11). Now I can fix the overflow problem (but I don't think it is the culprit). I think such low values of error is the main culprit, and I cannot figure what is causing such low values of error.

What will cause the network to behave more interactively like I will be actually able to grasp the weight updates and not something in the order of 10^-11?

Note: Data set contain values in the order of 10's and the weights randomly initialized are in the order of 0 < w < 1

Any help is highly appreciated.

EDIT: I did not know the term was called vanishing gradient, so I added it for better readability

So I am training an ANN for classification between 3 classes. The ANN has an input layer, one hidden layer and a 3 node output layer.

The problem I am facing is that the output being produced by the 3 output nodes are so close to 1 (for the first few iterations at least and so i am assuming the problem propagates to future outputs as well) the weights are not being updated (or hardly updated) due to overflow (about 10^-11). Now I can fix the overflow problem (but I don't think it is the culprit). I think such low values of error is the main culprit, and I cannot figure what is causing such low values of error.

What will cause the network to behave more interactively like I will be actually able to grasp the weight updates and not something in the order of 10^-11?

Note: Data set contain values in the order of 10's and the weights randomly initialized are in the order of 0 < w < 1. I have tried feature normalization but it is not that effective.

Any help is highly appreciated.

EDIT: I did not know the term was called vanishing gradient, so I added it for better readability

NOTE: Experienced users can freely edit the question to cater to a more general problem, since I believe the problem has many other variations.

added 101 characters in body; edited tags; edited title
Source Link
user9947
user9947

What are some concrete steps to take when there is extremely low values of error or extremely high values of errordeal with the vanishing gradient problem?

So I am training an ANN for classification between 3 classes. The ANN has an input layer, one hidden layer and a 3 node output layer.

The problem I am facing is that the output being produced by the 3 output nodes are so close to 1 (for the first few iterations at least and so i am assuming the problem propagates to future outputs as well) the weights are not being updated (or hardly updated) due to overflow (about 10^-11). Now I can fix the overflow problem (but I don't think it is the culprit). I think such low values of error is the main culprit, and I cannot figure what is causing such low values of error.

What will cause the network to behave more interactively like I will be actually able to grasp the weight updates and not something in the order of 10^-11?

Note: Data set contain values in the order of 10's and the weights randomly initialized are in the order of 0 < w < 1

Any help is highly appreciated.

EDIT: I did not know the term was called vanishing gradient, so I added it for better readability

What steps to take when there is extremely low values of error or extremely high values of error?

So I am training an ANN for classification between 3 classes. The ANN has an input layer, one hidden layer and a 3 node output layer.

The problem I am facing is that the output being produced by the 3 output nodes are so close to 1 (for the first few iterations at least and so i am assuming the problem propagates to future outputs as well) the weights are not being updated (or hardly updated) due to overflow (about 10^-11). Now I can fix the overflow problem (but I don't think it is the culprit). I think such low values of error is the main culprit, and I cannot figure what is causing such low values of error.

What will cause the network to behave more interactively like I will be actually able to grasp the weight updates and not something in the order of 10^-11?

Note: Data set contain values in the order of 10's and the weights randomly initialized are in the order of 0 < w < 1

Any help is highly appreciated.

What are some concrete steps to deal with the vanishing gradient problem?

So I am training an ANN for classification between 3 classes. The ANN has an input layer, one hidden layer and a 3 node output layer.

The problem I am facing is that the output being produced by the 3 output nodes are so close to 1 (for the first few iterations at least and so i am assuming the problem propagates to future outputs as well) the weights are not being updated (or hardly updated) due to overflow (about 10^-11). Now I can fix the overflow problem (but I don't think it is the culprit). I think such low values of error is the main culprit, and I cannot figure what is causing such low values of error.

What will cause the network to behave more interactively like I will be actually able to grasp the weight updates and not something in the order of 10^-11?

Note: Data set contain values in the order of 10's and the weights randomly initialized are in the order of 0 < w < 1

Any help is highly appreciated.

EDIT: I did not know the term was called vanishing gradient, so I added it for better readability

Source Link
user9947
user9947
Loading