一、卷积层
torch.nn.Conv1d():1D卷积;torch.nn.ConvTranspose1d():1D转置卷积;
torch.nn.Conv2d():2D卷积;torch.nn.ConvTranspose2d():2D转置卷积;
torch.nn.Conv3d():3D卷积;torch.nn.ConvTranspose3d():3D转置卷积;
torch.nn.Conv2d(in_channels, # 输入通道数
out_channels, # 输出特征数
kernel_size, # 卷积核大小
stride = 1, # 卷积步长,默认为1
padding = 0, # 零填充,默认为0
dilation = 1, # 卷积核元素之间的步幅
group = 1, # 从输入通道到输出通道的阻塞连接数
bias = True) # bias = True则添加偏置,默认为True
torch.nn.Conv2d()输入张量的格式为(N,C,H,W),N为样本数;C为输入通道数;H和W为图片长宽
二、池化层
torch.nn.MaxPool1d():1D最大值池化;torch.nn.MaxUnPool1d():1D最大值池化的部分逆运算;
torch.AvgPool1d():1D平均值池化;torch.AdaptiveMaxPool1d():1D自适应最大值池化;
torch.AdaptiveAvgPool1d():1D自适应平均值池化;
2d和3d同上。
torch.nn.MaxPool2d(kernel_size, # 最大值池化的窗口大小
stride = None, # 池化窗口一定的步长,默认为kernel_size
padding = 0, # 补零层数
dilation = 1, # 池化窗口元素步幅的参数
return_indices = False, # 为true则返回输出最大值的索引
ceil_mode = False, # 为true计算输出信号大小时回向上取整,默认向下取整
)
三、激活函数
常见的激活函数:torch.nn.Sigmoid;torch.nn.Tanh;torch.nn.ReLU;torch.nn.Softplus;
四、循环层
torch.nn.RNN():多层RNN单元;torch.nn.RNNCell():一个RNN循环层单元;
torch.nn.LSTM():多层长短期记忆LSTM单元;torch.nn.LSTMCell():一个LSTM单元;
torch.nn.GRU():多层门限循环GRU单元;torch.nn.GRUCell():一个门限循环GRU单元;
具体用法在后面循环神经网络文章中将具体给出。
五、全连接层
torch.nn.Linear(in_features,out_features,bias = True):
in_features:每个输入样本的特征数量;
out_features:每个输出样本的特征数量;
bias:默认True;学习偏置;
输入(N,in_features);输出(N,out_features)