Kembali ke Beranda
Deep Learning
MODUL PERKULIAHAN MINGGU KE-11
Deep Learning Sekuensial: RNN, LSTM, & GRU
Arsitektur Gerbang Memori, Masalah Vanishing Gradient, dan Peramalan Daya EBT Surya/Angin
Berkas & Bahan Ajar
Sub-CPMK 10: Mampu menyusun tensor sekuensial 3D, memahami mekanisme gerbang LSTM/GRU, dan melatih model deep learning.
Keterbatasan jaringan saraf feedforward MLP, arsitektur Recurrent Neural Network (RNN), algoritma Backpropagation Through Time (BPTT), masalah vanishing/exploding gradient, gerbang LSTM (Forget, Input, Output), arsitektur GRU yang efisien, dan peramalan daya PLTS fluktuatif.
$$f_t = \sigma(W_f [h_{t-1}, x_t] + b_f), \quad C_t = f_t \odot C_{t-1} + i_t \odot \tilde{C}_t, \quad h_t = o_t \odot \tanh(C_t)$$
C1–C2 (Mengingat & Memahami)
Fungsi dari masing-masing 3 gerbang LSTM dan struktur dimensi tensor 3D PyTorch.
C3–C4 (Menerapkan & Menganalisis)
Kalkulasi manual pembaruan Cell State dan Hidden State satu langkah waktu LSTM.
C5–C6 (Mengevaluasi & Berkreasi)
Evaluasi komputasi dan memori LSTM vs GRU pada edge device mikrogrid serta perancangan BiLSTM.
import torch
import torch.nn as nn
class RenewableLSTM(nn.Module):
def __init__(self, in_dim=5, hidden_dim=64, num_layers=2, out_steps=24):
super().__init__()
self.lstm = nn.LSTM(in_dim, hidden_dim, num_layers, batch_first=True, dropout=0.2)
self.fc = nn.Linear(hidden_dim, out_steps)
def forward(self, x):
out, _ = self.lstm(x)
return self.fc(out[:, -1, :])