class Mlp(nn.Module): """ Multilayer perceptron.""" def __init__(self, in_features, hidden_features=None, out_features=None, act_layer=nn.GELU, drop=0.): super().__init__() out_features = out_features or in_features hidden
时间: 2023-05-21 13:02:15 浏览: 128
multi layer perceptron(MLP)
5星 · 资源好评率100%
features = hidden_features or in_features self.fc1 = nn.Linear(in_features, hidden_features) self.act = act_layer() self.drop = nn.Dropout(drop) self.fc2 = nn.Linear(hidden_features, out_features) def forward(self, x): x = self.fc1(x) x = self.act(x) x = self.drop(x) x = self.fc2(x) return x
这是一个 PyTorch 中的 MLP 模型,它包含两个全连接层和一个激活函数层。输入特征数为 in_features,隐藏层特征数为 hidden_features,输出特征数为 out_features。如果 hidden_features 和 out_features 没有指定,则默认与输入特征数相同。激活函数层使用 GELU,dropout 概率为 drop。forward 函数实现了模型的前向传播。
阅读全文