nn.Conv1d

1.输入输出

  • 输入(Input):
    • 输入张量的形状应该是 [batch_size, in_channels, input_length]
    • batch_size 表示每个批次中样本的数量。
    • in_channels 表示输入通道数,即输入特征的数量。
    • input_length 表示输入序列的长度。
  • 输出(Output):
    • 输出张量的形状为 [batch_size, out_channels, output_length]
    • batch_size 保持与输入相同。
    • out_channels 表示输出通道数,即输出特征的数量。
    • output_length 表示输出序列的长度。

2.计算公式 

其中:

  • output_length 是输出的长度。
  • input_length 是输入的长度。
  • kernel_size 是卷积核的大小。
  • padding 是填充大小。
  • stride是步长大小。

3.代码 

import torch
import torch.nn as nn

# 定义一个一维卷积层
conv1d = nn.Conv1d(in_channels=3, out_channels=64, kernel_size=5, stride=2, padding=2)

# 创建示例输入数据
# 假设输入序列长度为 100,输入通道数为 3,批次大小为 1
input_data = torch.randn(1, 3, 100)

# 对输入数据进行卷积操作
output_data = conv1d(input_data)

# 输出结果的形状
print("Output shape:", output_data.shape)

 输入为(1,3,100)

输出的output_length = \frac{100-5+2*2}{2}+1=50 

输出的out_channels=64

所以输出为(1,64,50)

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值