torch.nn.Conv1d
以复信号的两个通道为例做1维卷积计算如下:
x = torch.randn(10, 2, 1024) # batch_size=10,in_chanels=2,sequence_length=1024
torch.nn.Conv1d(in_channels=2, out_channels=16, kernel_size=5, stride=1, padding=2, bias=True)(x)
torch.squeeze(torch.unsqueeze)
压缩(扩展)矩阵维度。
x = torch.randn(5, 1024)
print(x.shape)
x = torch.unsqueeze(x, dim=1)
print(x.shape)
>>torch.Size([5, 1024])
>>torch.Size([5, 1, 1024])
torch.nn.LSTM
长短期记忆网络
rnn = torch.nn.LSTM(input_size=32, hidden_size=32, num_layers=1, batch_first=True)
x=torch.zeros(5,1024,2)#batch,len,channel
o,(h,c) = rnn(x)
模型参数查看及其赋值
class module(torch.nn.Module):
def __init__(self):
super().__init__()
# 只有一个卷积层
self.conv1 = torch.nn.Conv1d(in_channels=1, out_channel