<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      PyTorch 循環神經網絡(RNN)

      循環神經網絡(Recurrent Neural Networks, RNN)是一類神經網絡架構,專門用于處理序列數據,能夠捕捉時間序列或有序數據的動態信息,能夠處理序列數據,如文本、時間序列或音頻。

      RNN 在自然語言處理(NLP)、語音識別、時間序列預測等任務中有著廣泛的應用。

       在 RNN 中,數據不僅沿著網絡層級流動,還會在每個時間步驟上傳播到當前的隱層狀態,從而將之前的信息傳遞到下一個時間步驟。

      隱狀態(Hidden State): RNN 通過隱狀態來記住序列中的信息。

      隱狀態是通過上一時間步的隱狀態和當前輸入共同計算得到的。

      公式:

      image

      • ht:當前時刻的隱狀態。
      • ht-1:前一時刻的隱狀態。
      • Xt:當前時刻的輸入。
      • Whh、Wxh:權重矩陣。
      • b:偏置項。
      • f:激活函數(如 Tanh 或 ReLU)。

      輸出(Output): RNN 的輸出不僅依賴當前的輸入,還依賴于隱狀態的歷史信息。

      image

      • yt:在時間步 t 的輸出向量(可選,取決于具體任務)。
      • Why:是隱藏狀態到輸出的權重矩陣。。

      循環神經網絡(RNN)在處理序列數據時的展開(unfold)視圖如下:

      image

       

      import torch
      import torch.nn as nn
      import torch.optim as optim
      import matplotlib.pyplot as plt
      import numpy as np
      
      # 數據集:字符序列預測(Hello -> Elloh)
      char_set = list("hello")
      char_to_idx = {c: i for i, c in enumerate(char_set)}
      idx_to_char = {i: c for i, c in enumerate(char_set)}
      
      # 數據準備
      input_str = "hello"
      target_str = "elloh"
      input_data = [char_to_idx[c] for c in input_str]
      target_data = [char_to_idx[c] for c in target_str]
      
      # 轉換為獨熱編碼
      input_one_hot = np.eye(len(char_set))[input_data]
      
      # 轉換為 PyTorch Tensor
      inputs = torch.tensor(input_one_hot, dtype=torch.float32)
      targets = torch.tensor(target_data, dtype=torch.long)
      
      # 模型超參數
      input_size = len(char_set)
      hidden_size = 8
      output_size = len(char_set)
      num_epochs = 200
      learning_rate = 0.1
      
      # 定義 RNN 模型
      class RNNModel(nn.Module):
          def __init__(self, input_size, hidden_size, output_size):
              super(RNNModel, self).__init__()
              self.rnn = nn.RNN(input_size, hidden_size, batch_first=True)
              self.fc = nn.Linear(hidden_size, output_size)
      
          def forward(self, x, hidden):
              out, hidden = self.rnn(x, hidden)
              out = self.fc(out)  # 應用全連接層
              return out, hidden
      
      model = RNNModel(input_size, hidden_size, output_size)
      
      # 定義損失函數和優化器
      criterion = nn.CrossEntropyLoss()
      optimizer = optim.Adam(model.parameters(), lr=learning_rate)
      
      # 訓練 RNN
      losses = []
      hidden = None  # 初始隱藏狀態為 None
      for epoch in range(num_epochs):
          optimizer.zero_grad()
      
          # 前向傳播
          outputs, hidden = model(inputs.unsqueeze(0), hidden)
          hidden = hidden.detach()  # 防止梯度爆炸
      
          # 計算損失
          loss = criterion(outputs.view(-1, output_size), targets)
          loss.backward()
          optimizer.step()
          losses.append(loss.item())
      
          if (epoch + 1) % 20 == 0:
              print(f"Epoch [{epoch + 1}/{num_epochs}], Loss: {loss.item():.4f}")
      
      # 測試 RNN
      with torch.no_grad():
          test_hidden = None
          test_output, _ = model(inputs.unsqueeze(0), test_hidden)
          predicted = torch.argmax(test_output, dim=2).squeeze().numpy()
      
          print("Input sequence: ", ''.join([idx_to_char[i] for i in input_data]))
          print("Predicted sequence: ", ''.join([idx_to_char[i] for i in predicted]))
      
      # 可視化損失
      plt.plot(losses, label="Training Loss")
      plt.xlabel("Epoch")
      plt.ylabel("Loss")
      plt.title("RNN Training Loss Over Epochs")
      plt.legend()
      plt.show()

      image

       

      posted @ 2025-08-17 21:10  嘉禾世興  閱讀(42)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 激情综合网激情五月伊人| 成人国产精品免费网站| 亚洲乱亚洲乱妇50p| 人妻出轨av中文字幕| 欧美刺激性大交| 国产自拍一区二区三区在线| 欧美日韩精品一区二区三区高清视频| 精品黑人一区二区三区| 久久久久人妻一区精品| 华人在线亚洲欧美精品| 和顺县| 国产三级国产精品国产专| 久久精品一本到99热免费| 少妇人妻偷人精品系列| 国产福利永久在线视频无毒不卡| 大伊香蕉在线精品视频75| 国产成人高清亚洲综合| 99蜜桃在线观看免费视频网站| 成人精品网一区二区三区| 欧美日韩在线视频| 国产精品中文字幕第一区| 一区二区三区激情都市| 亚欧美日韩香蕉在线播放视频| 91一区二区三区蜜桃臀| 51妺嘿嘿午夜福利| 亚洲av专区一区| 无遮挡又黄又刺激的视频| 日韩在线观看 一区二区| 亚洲AV成人片不卡无码| 欧美中文字幕无线码视频| 日韩av一区二区高清不卡 | 国产精品多p对白交换绿帽| 国产AV永久无码青青草原| 亚洲日韩在线中文字幕第一页 | 国产精品成人观看视频国产奇米 | 黄色一级片一区二区三区| 亚洲人成亚洲人成在线观看| 国产一区二区爽爽爽视频| 无码人妻丝袜在线视频| 中文字幕av一区二区| 亚洲一区二区三区在线|