Câu hỏi về các tế bào, đơn vị và đầu vào LSTM


9

Tôi đang cố gắng tìm hiểu cách thức LSTMhoạt động của các mạng và ngay cả khi tôi có được những điều cơ bản, các chi tiết về cấu trúc bên trong đối với tôi không rõ ràng.

Trên liên kết blog này , tôi tìm thấy sơ đồ này của một LSTMkiến trúc

LSTM

Rõ ràng, mỗi vòng tròn phải tương ứng với một LSTMđơn vị riêng lẻ như thế này

LSTM

  1. Điều này có đúng không?

  2. Là mỗi đơn vị trong các tế bào độc lập với các đơn vị khác? Hay họ chia sẻ thông tin?

  3. Hãy tưởng tượng tôi có cấu hình sau: Số lượng mẫu = 1000 Số bước thời gian = 10 Số tính năng = 5

Trong trường hợp này, mỗi đơn vị trong một ô sẽ lấy đầu vào là một vectơ có kích thước 5 phải không?

Nhưng kích thước của đầu ra cho một đơn vị sẽ là bao nhiêu? 1?

Cảm ơn


1
Đọc đoạn nhỏ này: colah.github.io/posts/2015-08-Under Hiểu-LSTMs Nếu bạn phải .. Sau 3 lần tôi đảm bảo với bạn, bạn sẽ học được điều gì đó.
Eran Moshe

Câu trả lời:


1

Tôi nghĩ rằng hình ảnh của bạn bị dán nhãn sai. Tôi nghĩ rằng mỗi hộp màu xanh là một lớp LSTM, bao gồm nhiều ô / đơn vị, mỗi ô chấp nhận một vectơ đầu vào x_t.

Cùng với đó, câu trả lời cho câu hỏi của bạn là:

1) Có

2) Có, họ độc lập (tại một bước duy nhất - họ chia sẻ thông tin với nhau giữa các bước thời gian)

3) Có, mỗi ô đơn vị sẽ lấy đầu vào có kích thước 5. Tôi nghĩ rằng kích thước đầu ra luôn là 1, tương tự như các nút mạng thần kinh (như các đơn vị sigmoidal) kết hợp và sau đó kích hoạt.


Tôi xác nhận rằng kích thước đầu ra luôn một, bởi vì mỗi đơn vị LSTM thực sự hoạt động tương tự như nơ-ron thông thường. Đến lớp sau để phân phối giá trị đơn này cho nhiều nơ-ron của nó
Kari

Một "lớp LSTM" cũng được gọi là "tế bào LSTM" AFAIK. Khi bạn thêm một ô LSTM trong hầu hết các khung bạn có thể chỉ định kích thước lớp. Vì vậy, việc ghi nhãn dường như tuân theo quy ước đó.
Neil Slater

1

Trên thực tế các hình dạng là để đơn giản hóa. Nếu bạn muốn biết hành vi chính xác, bạn phải xem công thức của từng LSTMô. Để trả lời câu hỏi đầu tiên của bạn, có thể có câu trả lời khác nhau. Những gì hình ảnh được mô tả thuộc về các nhiệm vụ rất nhiều, và đối với mỗi đầu vào, bạn cần chính xác một đầu ra. Có các nhiệm vụ khác nhau cho các chuỗi có thể được xác định:

  • Một đối một
  • Một đến nhiều
  • Nhiều đến một
  • Nhiều nhiều

Bạn có thể xem tại đây .

Để minh họa các công thức của mỗi LSTMtế bào, tôi đã đưa ra bức tranh sau đây từ giáo sư Andrew Ng về khóa học sâu:

nhập mô tả hình ảnh ở đây

Như bạn có thể thấy, mỗi nút trong LSTMô có thể được kết nối gián tiếp với đầu ra của các ô liền kề của bước thời gian trước đó. Đó là gián tiếp vì có cổng giữa chúng. Cũng xem xét rằng LSTMtế bào chia sẻ trọng số cho tất cả các đầu vào của các bước thời gian khác nhau. Do đó, mỗi nơ-ron trong LSTMtế bào phụ thuộc vào đầu vào của bước thời gian hiện tại và đầu ra của các nút lân cận của các bước thời gian trước đó.

Về câu hỏi thứ ba, kích thước đầu vào sẽ bằng số lượng tính năng của đầu vào cho mỗi bước thời gian. Số lượng đầu ra phụ thuộc vào nhiệm vụ của bạn như tôi đã đề cập lúc đầu. Hãy nhìn vào liên kết đầu tiên.


1
  1. Điều này có đúng không?

Có sơ đồ cả hai nhìn chính xác với tôi. Điều quan trọng để hiểu cả hai sơ đồ là đầu vào và đầu ra của một tế bào LSTM là các vectơ.

Các vòng tròn trong sơ đồ đầu tiên thể hiện khái niệm rằng lớp chứa nhiều nơ-ron nhân tạo riêng lẻ và điều đó có thể khiến bạn cho rằng sơ đồ thứ hai là hình ảnh của một trong những nơ-ron đó. Có thể cho rằng có nhiều "nơ-ron" hoặc các lớp con với các vai trò khác nhau trong một ô, bởi vì có nhiều vị trí trong đó các phép tính có dạng xảy ra, thực hiện các vai trò hơi khác nhau. Tôi nghĩ thuật ngữ "tế bào" được sử dụng để chỉ kiến ​​trúc của các tế bào thần kinh. Là một tay ngắn khi tôi nói "nơ-ron", tôi có xu hướng nghĩ về giai đoạn đầu ra của lớp ẩn.f(Wx+b)

Tuy nhiên, trong sơ đồ thứ hai, tất cả các hoạt động được hiển thị đều hoạt động với các vectơ. Quan trọng nhất là các mũi tên từ trái sang phải trong sơ đồ thứ hai biểu thị các vectơ trạng thái ẩn từ dấu thời gian đến dấu thời gian từ toàn bộ lớp . Vì vậy, mỗi tế bào thần kinh trong tế bào được kết nối lại với mọi tế bào thần kinh khác trong tế bào đó - gấp đôi so với khi xảy ra trong một LSTM, bởi vì các LSTM có cả trạng thái tế bào bên trong và đầu ra lớp.

  1. Là mỗi đơn vị trong các tế bào độc lập với các đơn vị khác? Hay họ chia sẻ thông tin?

Để khớp với mô tả sơ đồ của bạn, hãy xác định "đơn vị" là tập hợp của một trong mỗi loại nơ-ron / cổng được sử dụng để tạo ra tế bào, theo lý thuyết có thể được nối với nhau để tạo ra một lớp tế bào LSTM hoạt động với một lớp duy nhất trạng thái tế bào vô hướng và giá trị đầu ra.

Các đơn vị này độc lập ở chỗ mỗi đơn vị có các thông số trọng lượng riêng. Không có tham số chia sẻ nào cho các kết nối giữa đầu vào và các đơn vị hoặc cho các kết nối đệ quy chuyển trạng thái từ bước này sang bước tiếp theo. Theo nghĩa đó, các đơn vị không chia sẻ thông tin.

Tuy nhiên, các kết nối có nghĩa là trên mỗi bước thời gian, dữ liệu đầu vào và trạng thái ẩn cộng với đầu ra từ đầu ra cuối cùng từ tất cả các đơn vị khác trong ô được kết hợp được sử dụng trong tính toán. Bất kỳ đơn vị ô nào cũng có thể dựa trên trạng thái bên trong mới cộng với đầu ra của nó dựa trên các giá trị của tất cả các đầu ra khác và trạng thái bên trong từ các đơn vị khác trong ô. Theo nghĩa này, các đơn vị chia sẻ thông tin. Tôi đoán từ câu hỏi của bạn rằng có lẽ đây là vấn đề thứ hai mà bạn quan tâm, vì sơ đồ thứ hai khiến bạn nghĩ về sơ đồ nối dây cho một nơron, nhưng như đã giải thích ở trên thì không phải vậy.

  1. Hãy tưởng tượng tôi có cấu hình sau: Số mẫu = 1000 Số bước thời gian = 10 Số tính năng = 5 Trong trường hợp này, mỗi đơn vị trong một ô sẽ lấy một vectơ kích thước 5 phải không?

Hầu hết. Mỗi nơ-ron bên trong ô sẽ lấy đầu vào là 5 từ , cộng với đầu vào của đầu ra lớp ẩn, . Vì vậy, nếu trong trường hợp của bạn, kích thước ô LSTM là 10, thì mỗi nơ ron sẽ lấy một vectơ kết hợp là 15. Ngoài ra, một vectơ trạng thái ô thứ hai được duy trì, không được dán nhãn trong sơ đồ của bạn. Điều đó không được sử dụng trực tiếp làm đầu vào cho bất kỳ tế bào thần kinh nào (tức là các thành phần có dạng ), nhưng không tương tác với các giá trị khác và có thể tự thay đổi, thông qua các cổng khác nhau. Trong sơ đồ thứ hai của bạn, nó là mũi tên trên cùng đi từ trái sang phải.xhf(Wx+b)

Nhưng kích thước của đầu ra cho một đơn vị sẽ là bao nhiêu? 1?

Toàn bộ tế bào sẽ có đầu ra với bất kỳ kích thước nào bạn đã tạo ra lớp. Đó là những gì sơ đồ số 2 cố gắng thể hiện. Tuy nhiên, bằng cách sử dụng định nghĩa làm việc của chúng tôi về "đơn vị", đầu ra của mỗi đơn vị sẽ là hai giá trị vô hướng - đầu ra của lớp ẩn và trạng thái ô - sẽ là một phần của các vectơ tương ứng được hiển thị trong sơ đồ.

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.