Lớp kết hợp: Để đệm hay không đệm?


19

Kiến trúc AlexNet sử dụng các miếng đệm bằng không như trong hình: nhập mô tả hình ảnh ở đây Tuy nhiên, không có lời giải thích nào trong bài báo tại sao phần đệm này được giới thiệu.

Khóa học Standford CS 231n dạy chúng tôi sử dụng phần đệm để duy trì kích thước không gian: nhập mô tả hình ảnh ở đây

Tôi tự hỏi nó là lý do duy nhất chúng ta cần đệm? Ý tôi là, nếu tôi không cần phải duy trì kích thước không gian, tôi có thể gỡ bỏ miếng đệm không? Tôi biết nó sẽ dẫn đến việc giảm kích thước không gian rất nhanh khi chúng ta đi đến các cấp độ sâu hơn. Tuy nhiên, tôi có thể đánh đổi điều đó bằng cách loại bỏ các lớp gộp. Tôi sẽ rất hạnh phúc nếu bất cứ ai có thể cho tôi một số lý do đằng sau đệm không. Cảm ơn!

Câu trả lời:


20

Có một số lý do đệm là quan trọng:

  1. Thiết kế mạng sẽ dễ dàng hơn nếu chúng ta bảo tồn heightwidthvà không phải lo lắng quá nhiều về kích thước tenor khi đi từ lớp này sang lớp khác bởi vì kích thước sẽ chỉ "hoạt động" .

  2. Nó cho phép chúng tôi thiết kế các mạng sâu hơn . Không có đệm, giảm kích thước âm lượng sẽ giảm quá nhanh.

  3. Đệm thực sự cải thiện hiệu suất bằng cách giữ thông tin ở biên giới .

Trích dẫn từ các bài giảng của Stanford: "Ngoài lợi ích đã nói ở trên là giữ cho kích thước không gian không đổi sau CONV, thì việc này thực sự cải thiện hiệu suất. Nếu các lớp CONV không đệm các đầu vào và chỉ thực hiện các kết luận hợp lệ, thì kích thước của khối lượng sẽ giảm đi một lượng nhỏ sau mỗi CONV, và thông tin tại các biên giới sẽ bị cuốn trôi quá nhanh chóng. " - nguồn

  1. Như @dontloo đã nói, các kiến ​​trúc mạng mới cần kết hợp các lớp chập với các bộ lọc 1x1, 3x3 và 5x5 và sẽ không thể nếu chúng không sử dụng phần đệm vì kích thước sẽ không khớp. Kiểm tra hình ảnh này của mô-đun khởi động để hiểu rõ hơn tại sao đệm là hữu ích ở đây.

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


4
Tại sao không có đệm rất phổ biến? Trong xử lý ảnh có nhiều chế độ viền khác nhau được sử dụng, chẳng hạn như các loại phản chiếu khác nhau hoặc tiếp tục với giá trị ở cạnh. Số không thuần túy có cấu trúc rất khác so với hình ảnh / tính năng thực tế.
isarandi

3

Dường như với tôi lý do quan trọng nhất là bảo tồn kích thước không gian. Như bạn đã nói, chúng ta có thể đánh đổi sự giảm kích thước không gian bằng cách loại bỏ các lớp gộp. Tuy nhiên, nhiều cấu trúc mạng gần đây (như lưới còn lại , lưới khi thành lập , lưới fractal ) hoạt động trên các kết quả đầu ra của các lớp khác nhau, đòi hỏi một kích thước không gian phù hợp giữa chúng.

Một điều nữa là, nếu không có phần đệm, các pixel ở góc đầu vào chỉ ảnh hưởng đến các pixel ở góc tương ứng của đầu ra, trong khi các pixel ở giữa đóng góp vào vùng lân cận ở đầu ra. Khi một số lớp không có lớp đệm được xếp chồng lên nhau, loại mạng sẽ bỏ qua các pixel boarder của hình ảnh.

Chỉ cần một số hiểu biết của tôi, tôi tin rằng có những lý do tốt khác.


2

Câu hỏi tuyệt vời. Drag0 giải thích độc đáo nhưng tôi đồng ý, có gì đó không ổn.

Nó giống như nhìn vào một bức ảnh và phải đối phó với biên giới. Trong cuộc sống thực, bạn có thể di chuyển mắt để nhìn xa hơn; Không có biên giới thực sự tồn tại. Vì vậy, nó là một hạn chế của phương tiện.

Bên cạnh việc bảo quản kích thước, nó có vấn đề? Tôi không biết câu trả lời thỏa đáng nhưng tôi phỏng đoán (chưa được chứng minh) rằng với các thí nghiệm về sự chú ý và tắc nghẽn (đối tượng một phần), chúng ta không cần thông tin bị mất ở biên giới. Nếu bạn làm điều gì đó thông minh hơn (giả sử sao chép pixel bên cạnh nó), nó sẽ không thay đổi câu trả lời mặc dù tôi chưa tự mình thử nghiệm. Đệm với 0 là nhanh và giữ được kích thước, vì vậy đó là lý do tại sao chúng tôi làm điều đó.


1

đây là suy nghĩ của tôi không đệm là quan trọng tại thời điểm ban đầu để giữ kích thước của vectơ tính năng ouput. và ai đó ở trên nói rằng đệm không có hiệu suất cao hơn.

Nhưng làm thế nào về thời gian qua? độ phân giải vector tính năng hình ảnh là rất nhỏ và giá trị pixel có nghĩa là một loại vectơ có kích thước toàn cầu.

Tôi nghĩ rằng trong trường hợp cuối cùng một số loại phản chiếu là tốt hơn thì không đệm.


1

Về cơ bản, việc lưu giữ thông tin ở viền, về cơ bản, pixel ở góc (được tô màu xanh lục) khi thực hiện phép chập sẽ chỉ được sử dụng một lần trong khi cái ở giữa, như màu đỏ, sẽ góp phần vào bản đồ tính năng kết quả nhiều lần. , chúng tôi đệm hình ảnh Xem hình: 2 .


1

Tôi sẽ cố gắng nói từ vấn đề thông tin rằng khi nào thì ổn và khi nào thì không.

Hãy cho trường hợp cơ sở lấy ví dụ về chức năng đệm tenorflow. Nó cung cấp hai kịch bản, "Hợp lệ" hoặc "giống nhau". Tương tự sẽ duy trì kích thước của đầu ra và sẽ giữ nguyên kích thước của đầu vào bằng cách thêm phần đệm phù hợp, trong khi hợp lệ sẽ không làm điều đó và một số người cho rằng nó sẽ dẫn đến mất thông tin, nhưng, đây là phần bắt .

Mất thông tin này phụ thuộc vào kích thước của hạt nhân hoặc bộ lọc bạn đang sử dụng. Ví dụ: giả sử bạn có hình ảnh 28x28 và kích thước bộ lọc là 15x15 (giả sử). Đầu ra phải có kích thước 16x16, nhưng nếu bạn sử dụng "cùng" trong dòng chảy thì nó sẽ là 28x28. Bây giờ, 12 hàng và 12 cột tự chúng không mang bất kỳ thông tin có ý nghĩa nào nhưng vẫn ở đó như một dạng nhiễu. Và tất cả chúng ta đều biết các mô hình học sâu dễ bị ảnh hưởng như thế nào đối với tiếng ồn. Điều này có thể làm giảm đào tạo rất nhiều. Vì vậy, nếu bạn đang sử dụng các bộ lọc lớn, tốt hơn không nên sử dụng phần đệm.

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.