Truyền ngược qua các lớp gộp tối đa


13

Tôi có một câu hỏi nhỏ cho câu hỏi này .

Tôi hiểu rằng khi truyền ngược qua lớp gộp tối đa, độ dốc được chuyển trở lại theo cách mà nơ ron ở lớp trước được chọn là max nhận được tất cả độ dốc. Điều tôi không chắc chắn 100% là làm thế nào gradient trong lớp tiếp theo được chuyển trở lại lớp gộp.

Vì vậy, câu hỏi đầu tiên là nếu tôi có một lớp gộp được kết nối với một lớp được kết nối đầy đủ - như hình ảnh dưới đây.

ví dụ 1

Khi tính toán độ dốc cho "nơ ron" màu lục lam của lớp gộp, tôi có tổng hợp tất cả các gradient từ các nơ ron lớp FC không? Nếu điều này là chính xác thì mọi "nơ-ron" của lớp gộp có cùng một độ dốc?

Ví dụ, nếu nơ ron thứ nhất của lớp FC có độ dốc là 2, thì giây có độ dốc là 3 và độ dốc thứ ba là 6. Độ dốc của các "nơ-ron" màu xanh và tím trong lớp gộp là gì và tại sao?

Và câu hỏi thứ hai là khi lớp gộp được kết nối với lớp chập khác. Làm thế nào để tôi tính toán độ dốc sau đó? Xem ví dụ dưới đây.

ví dụ2

Đối với "nơ-ron" ngoài cùng bên phải của lớp gộp (lớp màu xanh lá cây được phác thảo) Tôi chỉ cần lấy độ dốc của nơ-ron màu tím trong lớp đối lưu tiếp theo và định tuyến lại, phải không?

Làm thế nào về một màu xanh lá cây đầy? Tôi cần nhân các cột nơ-ron đầu tiên trong lớp tiếp theo vì quy tắc chuỗi? Hay tôi cần thêm chúng?

Xin vui lòng không đăng một loạt các phương trình và nói với tôi rằng câu trả lời của tôi là đúng ở đó bởi vì tôi đã cố gắng quấn đầu quanh các phương trình và tôi vẫn không hiểu nó một cách hoàn hảo đó là lý do tại sao tôi hỏi câu hỏi này một cách đơn giản đường.


Liên quan đến câu hỏi đầu tiên của bạn, backpropagation là để xem trọng lượng và đầu vào ảnh hưởng đến sự mất mát của bạn theo cách nào. Trong trường hợp gộp tối đa, chỉ có tối đa các nơ-ron ảnh hưởng đến đầu ra (ngoại trừ khi có sự ràng buộc). Vì vậy, chỉ truyền lỗi đến nơ ron có giá trị kích hoạt tối đa.
Jan van der Vegt

Vâng, tôi hiểu điều này và tôi cũng đã nói điều này trong một bản tóm tắt ở đầu bài viết của tôi. Nhưng tôi không hiểu làm thế nào để tôi "kết hợp" độ dốc của các tế bào thần kinh lớp tiếp theo để lan truyền trở lại. Hy vọng bạn biết ý của tôi.
Majster

Câu trả lời:


5

Nếu điều này là chính xác thì mọi "nơ-ron" của lớp gộp có cùng một độ dốc?

Không. Nó phụ thuộc vào trọng lượng và chức năng kích hoạt. Và điển hình nhất là các trọng số khác với tế bào thần kinh đầu tiên của lớp gộp với lớp FC như từ lớp thứ hai của lớp gộp thành lớp FC.

Vì vậy, thông thường bạn sẽ có một tình huống như:

FCi=f(jWijPj)

FCiPjfW

Điều này có nghĩa là độ dốc đối với P_j là

grad(Pj)=igrad(FCi)fWij

Điều này khác với j = 0 hoặc j = 1 vì W khác nhau.

Và câu hỏi thứ hai là khi lớp gộp được kết nối với lớp chập khác. Làm thế nào để tôi tính toán độ dốc sau đó?

Nó không tạo ra sự khác biệt về loại lớp mà nó được kết nối. Đó là cùng một phương trình tất cả các thời gian. Tổng của tất cả các gradient trên lớp tiếp theo nhân với cách đầu ra của các nơ-ron đó bị ảnh hưởng bởi nơ-ron trên lớp trước. Sự khác biệt giữa FC và Convolution là trong FC tất cả các tế bào thần kinh ở lớp tiếp theo sẽ cung cấp một sự đóng góp (ngay cả khi có thể nhỏ) nhưng trong Convolution, hầu hết các tế bào thần kinh ở lớp tiếp theo đều không bị ảnh hưởng bởi tế bào thần kinh ở lớp trước. chính xác bằng không.

Đối với "nơ-ron" ngoài cùng bên phải của lớp gộp (lớp màu xanh lá cây được phác thảo) Tôi chỉ cần lấy độ dốc của nơ-ron màu tím trong lớp đối lưu tiếp theo và định tuyến lại, phải không?

Đúng. Ngoài ra, độ dốc của bất kỳ tế bào thần kinh nào khác trên lớp tích chập đó làm đầu vào của tế bào thần kinh ngoài cùng bên phải của lớp gộp.

Làm thế nào về một màu xanh lá cây đầy? Tôi cần nhân các cột nơ-ron đầu tiên trong lớp tiếp theo vì quy tắc chuỗi? Hay tôi cần thêm chúng?

Thêm chúng. Vì quy tắc chuỗi.

maxgrad(PRj)

grad(PRj)=igrad(Pi)fWij

f=idf=0f=1f=0

grad(PRmaxneuron)=igrad(Pi)Wi max neuron

grad(PRothers)=0.

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.