pytorch - 了解卷积层中的 nn.Sequential
问题描述
我是 PyTorch/深度学习的新手,我试图了解使用以下行来定义卷积层:
self.layer1 = nn.Sequential(nn.Conv1d(input_dim, n_conv_filters, kernel_size=7, padding=0), nn.ReLU(), nn.MaxPool1d(3))
我知道它正在为网络创建一个 1d 卷积层,最大池化为 3 宽。但是,我不了解顺序模块或 RelU 的功能。这些在创建图层时有何作用?
作为参考,其余代码可以在这里找到:https ://github.com/ArdalanM/nlp-benchmarks/blob/master/src/cnn/net.py
解决方案
根据提供的描述,您似乎正在为问题开发卷积架构(更可能是计算机视觉架构,因为 CNN 通常针对解决 CV 问题)。
现在通过使用 Sequential 模块讨论代码,您是在告诉 PyTorch 您正在开发一种以顺序方式工作的架构,并且通过指定 ReLU,您将在图片中引入非线性的概念(ReLU 是广泛使用的一种在深度学习框架中使用了激活函数)。非线性有助于 CNN 泛化到复杂的决策边界,并最终帮助它们表现得更好。
PS:我建议查看https://towardsdatascience.com/convolutional-neural-network-for-image-classification-with-implementation-on-python-using-pytorch-7b88342c9ca9,以便从编码人员的角度获得更好的想法。
推荐阅读
- c# - 是否可以在 OkObjectResult 200 响应中获取对象?
- php - 如果输入的密码与登录的用户密码不匹配,则显示验证
- r - 错误:blscrapeR 无法通过 r 中的文本/纯长度未知错误从在线提取数据
- google-apps-script - Googlesheets如何使用脚本计算小数位数
- reactjs - Redux - 错误:mergeProps 的类型对象的值无效
- java - .setOnClickListener 在空对象引用上(不能调用 ID?)
- php - 从单选按钮获取输入到 php 然后添加到数据库
- android - 对于 OpenCV 构建错误 C++ 文件,但它未使用受支持的本机构建系统
- arrays - Swift - 视频文件数组可以很好地保存到应用程序库,但不能正确保存到应用程序文档目录
- azure - 将此消息发送到您的机器人时出错:Web 聊天机器人框架 Azure 门户中的 HTTP 状态代码 InternalServerError