5 Kết luận và hướng phát triển
2.6 Một đơn vị trong RNN[26]
Trong đó, H định nghĩa một hàm phi tuyến (là hàm tanh như được định nghĩa trong hình 2.6). Do cấu trúc hồi quy này, ht−1 trong phương trình có thể được coi là bộ nhớ của các đầu vào trước đó. RNN có thể giữ bộ nhớ của các đầu vào trước đó trong trạng thái bên trong của mạng. Do đó, sau khi xử lý toàn bộ chuỗi, đầu ra ẩn cuối cùng ht có thể được coi như là một véc tơ mã hóa cho toàn bộ chuỗi đầu vào một cách tuần tự. Các công thức khác nhau của H xuất phát từ các mô hình RNN khác nhau, với RNN cơ sở (Vinilla RNN) áp dụng một hàm chuyển đổi tuyến tính với một hàm kích hoạt phi tuyến như sau:
ht=ϕ(W xt+Hht−1+b)
Trong đó,W ∈Rd×k và H ∈Rd×d đại diện cho các ma trận biến đổi vàb ∈Rd là véc tơ bias. Vàϕ là hàm kích hoạt phi tuyến như hàmsigmoid hoặc hàm tanh.
Do vấn đề về biến mất đạo hàm (vanishing gradient) trong quá trình lan truyền ngược khi huấn luyện mô hình, Vinilla RNN có thể không bắt được (không học được) các phụ thuộc dài hạn. Điều này có nghĩa làhtcó thể quên thông tin trong phần đầu của chuỗi dữ
liệu tuần tự. Để giảm bớt vấn đề này, hai biến thểLong Short Term Memory(LSTM) và Gated Rucurrent Unit(GRU - một phiên bản đơn giản của LSTM) đã được phát triển.
2.5.2 Long Short Term Memory (LSTM - Bộ nhớ dài-ngắn hạn)Để giảm thiểu mất mát thông tin từ vấn đề biến mất đạo hàm từ mạng RNN, LSTM Để giảm thiểu mất mát thông tin từ vấn đề biến mất đạo hàm từ mạng RNN, LSTM đã được đưa ra như một biến thể của RNN nhằm tăng khả năng lưu trữ thông tin quan trọng.
Ngoài việc sử dụng hai dữ liệu đầu vào là Current input (đầu vào hiện tại)xtvà Hidden state (trạng thái ẩn) ht−1 như mạng RNN thông thường, LSTM còn sử dụng thêm một đầu vào nữa là Cell state (trạng thái ô) ct−1. Ở đây chúng ta có thể coi Cell state là "memory" (bộ nhớ) của mạng LSTM và nó có thể lưu trữ thông tin của các timestep (bước) đầu tiên, do đó hạn chế ảnh hưởng của short-term memory (bộ nhớ ngắn hạn) như trong Vanilla RNN.
Cấu trúc một Cell (một ô) của LSTM được hình thành từ ba cổng: