Datawhale AI 夏令营学习笔记(二)

深化的CNN+LSTM模型笔记

模型概述

为了提高极端降水预测任务的性能,我们设计了一个深度CNN+LSTM模型。这个模型通过增加卷积层的通道数,同时减少每个卷积层的网格数量,并增加LSTM隐藏层的维度,以确保输出形状为 [1, 72, 57, 81]

模型结构

模型主要由以下几个部分组成:

  1. 卷积层
  2. 批归一化层
  3. 激活函数
  4. 最大池化层
  5. Dropout层
  6. LSTM层
  7. 全连接层

卷积层

卷积层用于提取输入数据的空间特征。我们增加了卷积层的数量,并逐渐增加每个卷积层的通道数,同时减少每个卷积层的网格数量。卷积层结构如下:

self.conv1 = nn.Conv2d(in_channels=24, out_channels=64, kernel_size=3, padding=1)
self.bn1 = nn.BatchNorm2d(64)
self.relu = nn.ReLU()
self.pool = nn.MaxPool2d(kernel_size=2, stride=2)
self.dropout = nn.Dropout(p=0.3)

self.conv2 = nn.Conv2d(in_channels=64, out_channels=128, kernel_size=3, padding=1)
self.bn2 = nn.BatchNorm2d(128)

self.conv3 = nn.Conv2d(in_channels=128, out_channels=256, kernel_size=3, padding=1)
self.bn3 = nn.BatchNorm2d(256)

self.conv4 = nn.Conv2d(in_channels=256, out_channels=512, kernel_size=3, padding=1)
self.bn4 = nn.BatchNorm2d(512)

LSTM层

LSTM层用于处理时间序列特征。我们增加了LSTM的隐藏层维度,并确保LSTM层输入的大小适应卷积层输出的大小。

self.lstm = nn.LSTM(input_size=self.conv_output_size, hidden_size=256, num_layers=2, batch_first=True, dropout=0.3)

全连接层

全连接层将LSTM层的输出调整为目标形状 [batch_size, 72, 57, 81]。

self.fc = nn.Linear(256, 57 * 81)

总结

通过增加卷积层的通道数、减少网格数量以及增加LSTM隐藏层的维度,我们构建了一个更深的CNN+LSTM模型。这些修改旨在提高模型的表达能力和预测性能。希望这些改进能帮助更好地完成极端降水预测任务。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值