MCPcopy Create free account
hub / github.com/BorealisAI/scaleformer / Encoder

Class Encoder

layers/Autoformer_EncDec.py:140–167  ·  view source on GitHub ↗

Autoformer encoder

Source from the content-addressed store, hash-verified

138
139
140class Encoder(nn.Module):
141 """
142 Autoformer encoder
143 """
144 def __init__(self, attn_layers, conv_layers=None, norm_layer=None):
145 super(Encoder, self).__init__()
146 self.attn_layers = nn.ModuleList(attn_layers)
147 self.conv_layers = nn.ModuleList(conv_layers) if conv_layers is not None else None
148 self.norm = norm_layer
149
150 def forward(self, x, attn_mask=None):
151 attns = []
152 if self.conv_layers is not None:
153 for attn_layer, conv_layer in zip(self.attn_layers, self.conv_layers):
154 x, attn = attn_layer(x, attn_mask=attn_mask)
155 x = conv_layer(x)
156 attns.append(attn)
157 x, attn = self.attn_layers[-1](x)
158 attns.append(attn)
159 else:
160 for attn_layer in self.attn_layers:
161 x, attn = attn_layer(x, attn_mask=attn_mask)
162 attns.append(attn)
163
164 if self.norm is not None:
165 x = self.norm(x)
166
167 return x, attns
168
169
170class DecoderLayer(nn.Module):

Callers 4

__init__Method · 0.90
__init__Method · 0.90
__init__Method · 0.90
__init__Method · 0.90

Calls

no outgoing calls

Tested by

no test coverage detected