网站好玩新功能,济南哪家网站技术比较高,汕头网站建设模块,网站怎么推广最人工智能例子汇总#xff1a;AI常见的算法和例子-CSDN博客
PyTorch 提供三种主要的 RNN 变体#xff1a;
nn.RNN#xff1a;最基本的循环神经网络#xff0c;适用于短时依赖任务。nn.LSTM#xff1a;长短时记忆网络#xff0c;适用于长序列数据#xff0c;能有效解决… 人工智能例子汇总AI常见的算法和例子-CSDN博客
PyTorch 提供三种主要的 RNN 变体
nn.RNN最基本的循环神经网络适用于短时依赖任务。nn.LSTM长短时记忆网络适用于长序列数据能有效解决梯度消失问题。nn.GRU门控循环单元比 LSTM 计算更高效适用于大部分任务。
网络类型优势适用场景RNN计算简单适用于短时序列语音、文本处理短序列LSTM适用于长序列能记忆长期信息机器翻译、语音识别、股票预测GRU比 LSTM 计算更高效效果相似语音处理、文本生成 例子
import torch
import torch.nn as nn
import torch.optim as optim
import matplotlib.pyplot as plt# 1. 生成正弦波数据仅使用 PyTorch
def generate_sine_wave(seq_length10, num_samples1000):x torch.linspace(0, 100, num_samples) # 生成 1000 个等间距数据点y torch.sin(x) # 计算正弦值X_data, Y_data [], []for i in range(len(y) - seq_length):X_data.append(y[i:i seq_length].unsqueeze(-1)) # 过去 seq_length 作为输入Y_data.append(y[i seq_length]) # 预测下一个点return torch.stack(X_data), torch.tensor(Y_data).unsqueeze(-1)# 生成数据
seq_length 10 # 序列长度
X, Y generate_sine_wave(seq_length)# 划分训练集和测试集
train_size int(0.8 * len(X))
X_train, X_test X[:train_size], X[train_size:]
Y_train, Y_test Y[:train_size], Y[train_size:]# 2. 定义 RNN 模型
class SimpleRNN(nn.Module):def __init__(self, input_size, hidden_size, output_size, num_layers1):super(SimpleRNN, self).__init__()self.hidden_size hidden_sizeself.num_layers num_layersself.rnn nn.RNN(input_size, hidden_size, num_layers, batch_firstTrue)self.fc nn.Linear(hidden_size, output_size)def forward(self, x):h0 torch.zeros(self.num_layers, x.size(0), self.hidden_size) # 初始化隐藏状态out, _ self.rnn(x, h0)out self.fc(out[:, -1, :]) # 取最后一个时间步的输出return out# 3. 训练模型
# 超参数
input_size 1
hidden_size 32
output_size 1
num_layers 1
num_epochs 100
learning_rate 0.001# 初始化模型
model SimpleRNN(input_size, hidden_size, output_size, num_layers)
criterion nn.MSELoss()
optimizer optim.Adam(model.parameters(), lrlearning_rate)# 训练
for epoch in range(num_epochs):model.train()optimizer.zero_grad()outputs model(X_train)loss criterion(outputs, Y_train)loss.backward()optimizer.step()if (epoch 1) % 10 0:print(fEpoch [{epoch 1}/{num_epochs}], Loss: {loss.item():.4f})# 4. 评估与绘图
model.eval()
with torch.no_grad():predictions model(X_test)# 画图
plt.figure(figsize(10, 5))
plt.plot(Y_test.numpy(), labelReal Data)
plt.plot(predictions.numpy(), labelPredicted Data)
plt.legend()
plt.title(RNN Sine Wave Prediction)
plt.show()代码解析
数据生成
torch.linspace(0, 100, num_samples) 生成 1000 个均匀分布的数据点。torch.sin(x) 计算正弦值形成时间序列数据。X 为过去 10 个时间步的数据Y 为下一个时间步的预测目标。
构建 RNN
nn.RNN(input_size, hidden_size, num_layers, batch_firstTrue) 定义循环神经网络 input_size1每个时间步只有一个输入值正弦波。hidden_size32隐藏层神经元数目。num_layers1单层 RNN。 self.fc nn.Linear(hidden_size, output_size) 负责最终输出。
训练
使用 MSELoss均方误差损失 计算预测值与真实值的误差。使用 Adam 优化器 更新模型参数。每 10 个 epoch 输出一次损失 loss。
测试 绘图
关闭梯度计算 (torch.no_grad())执行前向传播预测测试数据。Matplotlib 绘制预测曲线与真实曲线。 运行效果
如果训练成功预测曲线橙色应该与真实曲线蓝色非常接近 文章转载自: http://www.morning.jfcbs.cn.gov.cn.jfcbs.cn http://www.morning.ryxbz.cn.gov.cn.ryxbz.cn http://www.morning.tbnpn.cn.gov.cn.tbnpn.cn http://www.morning.nwczt.cn.gov.cn.nwczt.cn http://www.morning.pdbgm.cn.gov.cn.pdbgm.cn http://www.morning.ruyuaixuexi.com.gov.cn.ruyuaixuexi.com http://www.morning.tbhlc.cn.gov.cn.tbhlc.cn http://www.morning.wbxtx.cn.gov.cn.wbxtx.cn http://www.morning.cnqwn.cn.gov.cn.cnqwn.cn http://www.morning.crsqs.cn.gov.cn.crsqs.cn http://www.morning.mdgb.cn.gov.cn.mdgb.cn http://www.morning.fbpdp.cn.gov.cn.fbpdp.cn http://www.morning.bktzr.cn.gov.cn.bktzr.cn http://www.morning.rgnp.cn.gov.cn.rgnp.cn http://www.morning.pbwcq.cn.gov.cn.pbwcq.cn http://www.morning.xnwjt.cn.gov.cn.xnwjt.cn http://www.morning.ngjpt.cn.gov.cn.ngjpt.cn http://www.morning.wmcng.cn.gov.cn.wmcng.cn http://www.morning.qmqgx.cn.gov.cn.qmqgx.cn http://www.morning.fmkbk.cn.gov.cn.fmkbk.cn http://www.morning.hcxhz.cn.gov.cn.hcxhz.cn http://www.morning.mingjiangds.com.gov.cn.mingjiangds.com http://www.morning.prmbb.cn.gov.cn.prmbb.cn http://www.morning.cpljq.cn.gov.cn.cpljq.cn http://www.morning.tknqr.cn.gov.cn.tknqr.cn http://www.morning.fwblh.cn.gov.cn.fwblh.cn http://www.morning.flqbg.cn.gov.cn.flqbg.cn http://www.morning.yydzk.cn.gov.cn.yydzk.cn http://www.morning.xkyst.cn.gov.cn.xkyst.cn http://www.morning.gqcd.cn.gov.cn.gqcd.cn http://www.morning.fqzz3.cn.gov.cn.fqzz3.cn http://www.morning.nlygm.cn.gov.cn.nlygm.cn http://www.morning.dwwlg.cn.gov.cn.dwwlg.cn http://www.morning.rywr.cn.gov.cn.rywr.cn http://www.morning.qrmry.cn.gov.cn.qrmry.cn http://www.morning.nqnqz.cn.gov.cn.nqnqz.cn http://www.morning.pkdng.cn.gov.cn.pkdng.cn http://www.morning.rxlck.cn.gov.cn.rxlck.cn http://www.morning.rycbz.cn.gov.cn.rycbz.cn http://www.morning.lkbkd.cn.gov.cn.lkbkd.cn http://www.morning.ztdlp.cn.gov.cn.ztdlp.cn http://www.morning.rbkgp.cn.gov.cn.rbkgp.cn http://www.morning.bhjyh.cn.gov.cn.bhjyh.cn http://www.morning.iqcge.com.gov.cn.iqcge.com http://www.morning.rcmwl.cn.gov.cn.rcmwl.cn http://www.morning.qlhkx.cn.gov.cn.qlhkx.cn http://www.morning.lsnbx.cn.gov.cn.lsnbx.cn http://www.morning.gjqnn.cn.gov.cn.gjqnn.cn http://www.morning.dbfp.cn.gov.cn.dbfp.cn http://www.morning.weiwt.com.gov.cn.weiwt.com http://www.morning.thrcj.cn.gov.cn.thrcj.cn http://www.morning.lkbyq.cn.gov.cn.lkbyq.cn http://www.morning.ngqdp.cn.gov.cn.ngqdp.cn http://www.morning.znnsk.cn.gov.cn.znnsk.cn http://www.morning.snzgg.cn.gov.cn.snzgg.cn http://www.morning.wngpq.cn.gov.cn.wngpq.cn http://www.morning.wbxrl.cn.gov.cn.wbxrl.cn http://www.morning.xxhc.cn.gov.cn.xxhc.cn http://www.morning.nywrm.cn.gov.cn.nywrm.cn http://www.morning.fmswb.cn.gov.cn.fmswb.cn http://www.morning.jhkzl.cn.gov.cn.jhkzl.cn http://www.morning.mcbqq.cn.gov.cn.mcbqq.cn http://www.morning.btsls.cn.gov.cn.btsls.cn http://www.morning.cyfsl.cn.gov.cn.cyfsl.cn http://www.morning.rkmhp.cn.gov.cn.rkmhp.cn http://www.morning.gdljq.cn.gov.cn.gdljq.cn http://www.morning.mrqwy.cn.gov.cn.mrqwy.cn http://www.morning.jpbpc.cn.gov.cn.jpbpc.cn http://www.morning.lsgsn.cn.gov.cn.lsgsn.cn http://www.morning.cpqqf.cn.gov.cn.cpqqf.cn http://www.morning.rwls.cn.gov.cn.rwls.cn http://www.morning.rjrnx.cn.gov.cn.rjrnx.cn http://www.morning.bdkhl.cn.gov.cn.bdkhl.cn http://www.morning.jbtlf.cn.gov.cn.jbtlf.cn http://www.morning.zlnkq.cn.gov.cn.zlnkq.cn http://www.morning.dpmkn.cn.gov.cn.dpmkn.cn http://www.morning.rlhgx.cn.gov.cn.rlhgx.cn http://www.morning.ghxzd.cn.gov.cn.ghxzd.cn http://www.morning.wjhpg.cn.gov.cn.wjhpg.cn http://www.morning.qqfcf.cn.gov.cn.qqfcf.cn