基于CNN_A_LSTM的小时天气预测
Python
Python
共26个文件
jpg: 11
py: 8
png: 4
md: 2
csv: 1
基于CNN_A_LSTM的小时天气预测
基于CNN_A_LSTM的小时天气预测
介绍
基于CNN_A_LSTM的小时天气预测
文件
用途
code目录
代码
Houston.csv
数据集
util.py
工具类
基于深度学习的小时天气预测(温度单步预测)
基于torch框架完成
模型
参数
RNN
神经元个数=32 步长=24
LSTM
神经元个数=32 步长=24
GRU
神经元个数=64 步长=24
CNN_LSTM
神经元个数=64 步长=24
CNN_A_LSTM
神经元个数=64 步长=24
缺失值处理
插值填充
df = df.interpolate()
weather数值化
label_encoder = LabelEncoder()
df['weather'] = label_encoder.fit_transform(df['weather'])
category_mapping = dict(zip(label_encoder.classes_, label_encoder.transform(label_encoder.classes_)))
数据格式处理
因需要预测未来一小时天气(时间序列单步预测),基于滑动窗口的方式对数据格式进行处理:
def create_sliding_window(data, window_size):
window_data = []
for i in range(len(data) - window_size):
window = data[i:i + window_size]
target = data[i + window_size][2]
window_data.append((window, target))
return window_data
RNN实现
class RNN(nn.Module):
def __init__(self, input_size, hidden_size, output_size):
super(LSTMModel, self).__init__()
self.hidden_size = hidden_size
self.lstm = nn.RNN(input_size, hidden_size)
self.fc = nn.Linear(hidden_size, output_size)
def forward(self, x):
lstm_out, _ = self.lstm(x)
output = self.fc(lstm_out[:, -1, :])
return output
LSTM实现
class LSTMModel(nn.Module):
def __init__(self, input_size, hidden_size, output_size):
super(LSTMModel, self).__init__()
self.hidden_size = hidden_size
self.lstm = nn.LSTM(input_size, hidden_size)
self.fc = nn.Linear(hidden_size, output_size)
def forward(self, x):
lstm_out, _ = self.lstm(x)
output = self.fc(lstm_out[:, -1, :])
return output
GRU实现
CNN_LSTM实现
class CNNLSTMModel(nn.Module):
def __init__(self, input_size, hidden_size, output_size):
super(CNNLSTMModel, self).__init__()
self.hidden_size = hidden_size
self.conv1 = nn.Conv1d(input_size, hidden_size, kernel_size=3, padding=1)
self.lstm = nn.LSTM(hidden_size, hidden_size)
self.fc = nn.Linear(hidden_size, output_size)
def forward(self, x):
x = x.permute(0, 2, 1) # 转换输入的维度,使其适合卷积层的输入
x = F.relu(self.conv1(x))
x = x.permute(2, 0, 1) # 将维度转换回原始维度
lstm_out, _ = self.lstm(x)
output = self.fc(lstm_out[-1, :, :]) # 只使用最后一个时间步的输出
return output
CNN_A_LSTM实现
https://gitee.com/VIT19980106/CNN_A_LSTM_Weather_Predict
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
项目概述:本项目采用Python语言开发,实现了一种基于CNN-LSTM混合网络的精细化小时级天气预测模型。该模型包含共26个文件,其中主要包括8个Python源代码文件、11张jpg格式图像、4张png格式图像、2个Markdown文档以及1个CSV数据文件。该模型通过结合卷积神经网络(CNN)与长短期记忆网络(LSTM)的优势,旨在提供精准的小时级天气预测功能。
资源推荐
资源详情
资源评论
收起资源包目录
upload.zip (26个子文件)
cnn_lstm.jpg 25KB
rnn_loss.png 37KB
gru_true_vs_predict.jpg 103KB
image.png 5KB
cnn_lstm_true_vs_predict.jpg 105KB
1703468248373.png 11KB
lstm_true_vs_predict.jpg 109KB
cnn_lstm_loss.jpg 24KB
rnn_true_vs_predict.jpg 101KB
gru_loss.jpg 24KB
1703468344062.png 25KB
lstm_loss.jpg 25KB
cnn_a_lstm_true_vs_predict.jpg 105KB
cnn_a_lstm_loss.jpg 24KB
cnn_lstm_true_.jpg 101KB
code
gru.py 5KB
util.py 1KB
cnn_A_lstm.py 6KB
rnn.py 5KB
lstm.py 5KB
data_show.py 3KB
.keep 0B
Bi_lstm.py 5KB
Houston.csv 2.73MB
cnn_lstm.py 5KB
readme.txt 3KB
共 26 条
- 1
资源评论
沐知全栈开发
- 粉丝: 4743
- 资源: 3374
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功