Điều gì xảy ra khi chúng ta cung cấp ma trận 2D cho lớp LSTM


8

Giả sử tôi đang cho ma trận 2D có hình dạng (99,13) làm đầu vào cho lớp LSTM. Tôi đang có n số tệp, trong đó mỗi tệp chứa (99,13) vectơ kích thước. Tôi đã quyết định coi 13 là số lượng tính năng và 99 là dấu thời gian.

(Trong khi thực hiện với Keras, tôi đã thêm lớp LSTM làm lớp đầu tiên. Và tôi đã đặt output_dim của lớp là 100)

Nhưng tôi không thể tìm ra cách mọi thứ thực sự trong mạng khi chúng tôi cung cấp đầu vào như trên. Tôi có những câu hỏi sau đây, mà tôi không thể tự trả lời.

  1. Có gì loại giá trị này chúng tôi cung cấp như là đầu vào cho các tế bào LSTM? ( xt , ht-1 được sử dụng làm đầu vào cho ô luôn là vectơ? Trong trường hợp của tôi, xt có hình dạng [1,13] không?)
  2. Khi chúng ta nói rằng chúng ta có một lớp LSTM là lớp đầu tiên của chế độ l, nó có cung cấp vectơ đầu vào đầu tiên cho tất cả các ô trong lớp đã cho không? (Ví dụ: cung cấp khung hình đầu tiên có kích thước 13 (trong số 99 khung hình) cho tất cả n ô LSTM trong lớp đầu tiên?)
  3. Có gì loại một giá trị hiện một lượng tế bào LSTM tại mỗi bước thời gian ? (Chúng ta có coi trạng thái ô là đầu ra chính xác từ nút không? Nó là một giá trị đơn hay một vectơ? Nếu đó là một vectơ thì kích thước là gì? Có cách nào chúng ta có thể đoán kích thước không? Tôi đã giả sử ht là một vectơ)
  4. Điều gì có nghĩa là output_dim (kích thước đầu ra) của một lớp nhất định? Có phải luôn luôn là số lượng nút trong lớp tiếp theo?

Vui lòng không thực hiện việc này hoặc giữ trực tiếp cho bất kỳ nhóm nào khác. Tôi nghĩ những câu hỏi này có liên quan đến học máy và rnn. Tôi đã đọc các tài liệu nghiên cứu, nhưng tôi chưa thể có một ý tưởng rõ ràng về cách mọi thứ thực sự hoạt động trong mạng LSTM.

Câu trả lời:


1

1) Xlà đầu vào của bạn, nếu bạn có 99 dấu thời gian, thì bạn có 99 vectơ kích thước 13 mỗi. Do đó, đầu vào của bạn cho mỗi dấu thời gian là một vectơ có kích thước 13. Bạn sẽ cần một trạng thái ẩn bắt đầu, trừ khi bạn có lý do để làm khác, trạng thái ẩn bắt đầu của bạn có thể là 0. Kích thước của vectơ đó là một siêu tham số bạn chọn.

2) Hãy nhớ rằng không có 99 ô LSTM, chỉ có 1 ô LSTM được sử dụng lại 99 lần cho mỗi dấu thời gian. Tế bào LSTM duy trì trạng thái ẩn và trạng thái tế bào bên trong nó để chuyển sang bước tiếp theo. Nhưng chỉ có 1 bộ thông số đang được học. Các tham số đó cần có khả năng xử lý tất cả các dấu thời gian, điều kiện trên đầu vào hiện tại, trạng thái ẩn và trạng thái ô.

3) Trạng thái ô không phải là đầu ra, tuy nhiên nó được chuyển tiếp dưới dạng đầu vào cho dấu thời gian tiếp theo. Trạng thái ẩn h_tsẽ được chuyển đến đầu ra cũng như dấu thời gian tiếp theo.

4) Tôi không chắc lắm, tôi cần một tài liệu tham khảo về thuật ngữ này output_dim.

Đây là một hướng dẫn tuyệt vời về các LSTM: http://colah.github.io/posts/2015-08-Under Hiểu-LSTMs /


0

Điều gì có nghĩa là output_dim (kích thước đầu ra) của một lớp nhất định? Có phải luôn luôn là số lượng nút trong lớp tiếp theo?

output_dim = thứ nguyên của các trạng thái ẩn LSTM.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.