import torch.nn as nn

class LeNet1DV(nn.Module): def init(self): super(LeNet1DV, self).init() self.conv1 = nn.Conv1d(1, 8, kernel_size=3, stride=1) self.avgpool1 = nn.AvgPool1d(kernel_size=2, stride=2) self.conv2 = nn.Conv1d(8, 16, kernel_size=3, stride=1) self.avgpool2 = nn.AvgPool1d(kernel_size=2, stride=2) self.conv3 = nn.Conv1d(16, 32, kernel_size=3, stride=1) self.avgpool3 = nn.AvgPool1d(kernel_size=2, stride=2) self.conv4 = nn.Conv1d(32, 64, kernel_size=3, stride=1) self.avgpool4 = nn.AvgPool1d(kernel_size=2, stride=2) self.conv5 = nn.Conv1d(64, 128, kernel_size=3, stride=1) self.avgpool5 = nn.AvgPool1d(kernel_size=2, stride=2) self.conv6 = nn.Conv1d(128, 256, kernel_size=3, stride=1) self.avgpool6 = nn.AvgPool1d(kernel_size=2, stride=2) self.conv7 = nn.Conv1d(256, 512, kernel_size=3, stride=1) self.avgpool7 = nn.AvgPool1d(kernel_size=2, stride=2) self.global_avgpool = nn.AdaptiveAvgPool1d(1) self.fc = nn.Linear(512, 6)

def forward(self, x):
    x = self.conv1(x)
    x = self.avgpool1(x)
    x = self.conv2(x)
    x = self.avgpool2(x)
    x = self.conv3(x)
    x = self.avgpool3(x)
    x = self.conv4(x)
    x = self.avgpool4(x)
    x = self.conv5(x)
    x = self.avgpool5(x)
    x = self.conv6(x)
    x = self.avgpool6(x)
    x = self.conv7(x)
    x = self.avgpool7(x)
    x = self.global_avgpool(x)
    x = x.view(x.size(0), -1)
    feature = x
    output = self.fc(x)
    return feature, output
LeNet-1D-V 模型代码:包含 8 个卷积层、7 个平均池化层和一个全连接层

原文地址: https://www.cveoy.top/t/topic/pi55 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录