@@ -91,14 +91,12 @@ class DecoderWithAttention(nn.Module):
91
91
Decoder.
92
92
"""
93
93
94
- def __init__ (self , attention_dim , embed_dim , decoder_dim , vocab_size , decoder_layers = 1 , encoder_dim = 2048 ,
95
- dropout = 0.5 ):
94
+ def __init__ (self , attention_dim , embed_dim , decoder_dim , vocab_size , encoder_dim = 2048 , dropout = 0.5 ):
96
95
"""
97
96
:param attention_dim: size of attention network
98
97
:param embed_dim: embedding size
99
98
:param decoder_dim: size of decoder's RNN
100
99
:param vocab_size: size of vocabulary
101
- :param decoder_layers: number of layers in the decoder
102
100
:param encoder_dim: feature size of encoded images
103
101
:param dropout: dropout
104
102
"""
@@ -109,14 +107,13 @@ def __init__(self, attention_dim, embed_dim, decoder_dim, vocab_size, decoder_la
109
107
self .embed_dim = embed_dim
110
108
self .decoder_dim = decoder_dim
111
109
self .vocab_size = vocab_size
112
- self .decoder_layers = decoder_layers
113
110
self .dropout = dropout
114
111
115
112
self .attention = Attention (encoder_dim , decoder_dim , attention_dim ) # attention network
116
113
117
114
self .embedding = nn .Embedding (vocab_size , embed_dim ) # embedding layer
118
115
self .dropout = nn .Dropout (p = self .dropout )
119
- self .decode_step = nn .LSTMCell (embed_dim + encoder_dim , decoder_dim , decoder_layers ) # decoding LSTMCell
116
+ self .decode_step = nn .LSTMCell (embed_dim + encoder_dim , decoder_dim , bias = True ) # decoding LSTMCell
120
117
self .init_h = nn .Linear (encoder_dim , decoder_dim ) # linear layer to find initial hidden state of LSTMCell
121
118
self .init_c = nn .Linear (encoder_dim , decoder_dim ) # linear layer to find initial cell state of LSTMCell
122
119
self .f_beta = nn .Linear (decoder_dim , encoder_dim ) # linear layer to create a sigmoid-activated gate
0 commit comments