Reputation: 1236
It is usually fairly easy to ensemble multiple deep networks together to improve the statistics during prediction. This is often as simple as taking the output predictions and averaging them together. In a recurrent neural network this isn't as straightforward since we are making predictions over a sequence of outputs.
How do we ensemble recurrent neural networks? Do you predict the outputs at each time step using multiple models, average the outputs, then use the prediction from the average to feed back into each separate model (rinse, repeat)? This seems like it would be fairly cumbersome to implement in common ML libraries (I'm using Tensorflow).
Upvotes: 1
Views: 631
Reputation: 1230
It seems like what you are talking about can be summarized as "decoding strategies" for RNNs. For example:
It definitely isn't trivial to implement, but it isn't too bad either. In Tensorflow you would use the raw_rnn
function to do this. Basically, it's like a while loop and you can use an arbitrarily complex function to pick the output and the next input for the RNN.
Upvotes: 2