Từ trái sang phải [Fen]:
• one-to-one: Đầu vào và đầu ra có kích thước cố định. Phù hợp với bài toán nhận diện ảnh (Image Classification)
• one-to-many: Đầu vào cố định và đầu ra là một chuỗi các vector. Sử dụng cho bài toán tạo tiêu đề cho ảnh (Image Captioning)
• many-to-one: Đầu vào là chuỗi vector và đầu ra cố định. Bài toán được ứng dụng nhiều là phân loại ngữ nghĩa (Sentiment Classification)
• many-to-many: Đầu vào và đầu ra đều dạng chuỗi. Bài toán dịch máy (Neural Translation) • many-to-many: Đầu vào và đầu ra đều dạng chuỗi, và có độ dài bằng nhau. Bài toán phân
loại và gắn nhãn video (Video Classification) 2.3.3 Mạng bộ nhớ dài-ngắn - LSTM
Kiến trúc RNN có một nhược điểm: Nếu kích thước chuỗi vector đầu vào x là rất lớn thì việc tính toán vector trạng thái ẩn h sẽ phải đi qua nhiều lớp tính toán. Trong quá trình backpropagate để cập nhật các tham số weights, vì việc đạo hàm phải đi qua nhiều lớp tính toán của vector h nên các giá trị cập nhật(gradient) cũng sẽ lớn dần lên, việc cập nhật các weights không theo ý muốn và khiến mạng không ổn định. Nói cách khác, RNN sẽ chỉ học được các thông tin ở gần và bỏ qua các thông tin ở xa. Vì vậy, các biến thể nâng cấp của mạng neuron hồi quy đã ra đời để khắc phục vấn đề này. Một trong số đó là LSTM - Long Short Term Memory [Ola15].
LSTM được thiết kế để tránh được vấn đề phụ thuộc xa (long-term dependency). Việc nhớ thông tin trong suốt thời gian dài là đặc tính mặc định của chúng, chứ ta không cần phải huấn luyện nó để có thể nhớ được. Tức là ngay nội tại của nó đã có thể ghi nhớ được mà không cần bất kì can thiệp nào.
LSTM cũng mang đặc tính của RNN, là dạng module lặp đi lặp lại. Tuy nhiên, đối với RNN thì các module này rất đơn giản, thường là một tầng tanh (hình 2.10). Trong khi đó, các module của LSTM là 4 tầng ẳn và tương tác với nhau rất đặc biệt (hình 2.11).