Tại sao các cấu trúc luôn sử dụng các số lẻ làm bộ lọc


13

Nếu chúng tôi có tới 90-99% bài báo được xuất bản bằng CNN (ConvNet). Phần lớn trong số họ sử dụng kích thước bộ lọc của các số lẻ : {1, 3, 5, 7} để sử dụng nhiều nhất.

Tình huống này có thể dẫn đến một số vấn đề: Với các kích thước bộ lọc này, thông thường hoạt động tích chập không hoàn hảo với phần đệm 2 (phần đệm chung) và một số cạnh của input_field bị mất trong quá trình ...

Câu hỏi 1: Tại sao chỉ sử dụng số lẻ cho kích thước bộ lọc kết hợp?

Câu hỏi 2: Có thực sự là một vấn đề khi bỏ qua một phần nhỏ của input_field trong quá trình tích chập không? Tại sao lại như vậy / không?

Câu trả lời:


14

Hoạt động tích chập, nói một cách đơn giản, là sự kết hợp giữa sản phẩm nguyên tố của hai ma trận. Miễn là hai ma trận này đồng ý về kích thước, sẽ không có vấn đề gì và vì vậy tôi có thể hiểu động cơ đằng sau truy vấn của bạn.

A.1. Tuy nhiên, mục đích của tích chập là mã hóa ma trận dữ liệu nguồn (toàn bộ hình ảnh) theo bộ lọc hoặc hạt nhân. Cụ thể hơn, chúng tôi đang cố gắng mã hóa các pixel trong vùng lân cận của các pixel neo / nguồn. Hãy nhìn vào hình dưới đây: nhập mô tả hình ảnh ở đây Thông thường, chúng tôi coi mọi pixel của hình ảnh nguồn là neo / pixel nguồn, nhưng chúng tôi không bị hạn chế để làm điều này. Trong thực tế, không có gì lạ khi bao gồm một sải chân, trong đó chúng ta neo / pixel nguồn được phân tách bằng một số pixel cụ thể.

Được rồi, vậy pixel nguồn là gì? Đó là điểm neo mà hạt nhân được căn giữa và chúng tôi đang mã hóa tất cả các pixel lân cận, bao gồm cả pixel neo / pixel nguồn. Vì, hạt nhân có hình dạng đối xứng (không đối xứng trong các giá trị hạt nhân), nên có số lượng (n) pixel bằng nhau trên tất cả các mặt (4 kết nối) của pixel neo. Do đó, dù số pixel này có thể là bao nhiêu thì độ dài của mỗi cạnh của hạt nhân có hình dạng đối xứng của chúng tôi là 2 * n + 1 (mỗi cạnh của neo + pixel neo) và do đó, bộ lọc / hạt nhân luôn có kích thước lẻ.

Điều gì xảy ra nếu chúng ta quyết định phá vỡ 'truyền thống' và sử dụng hạt nhân không đối xứng? Bạn sẽ phải chịu các lỗi răng cưa và vì vậy chúng tôi không làm điều đó. Chúng tôi coi pixel là thực thể nhỏ nhất, tức là không có khái niệm pixel phụ ở đây.

A.2 Vấn đề ranh giới được xử lý bằng các phương pháp khác nhau: một số bỏ qua nó, một số không đệm, một số gương phản ánh nó. Nếu bạn sẽ không tính toán một thao tác nghịch đảo, tức là giải mã và không quan tâm đến việc tái cấu trúc hoàn hảo hình ảnh gốc, thì bạn không quan tâm đến việc mất thông tin hoặc bị nhiễu do vấn đề ranh giới. Thông thường, hoạt động gộp (gộp chung hoặc gộp tối đa) sẽ loại bỏ các tạo phẩm ranh giới của bạn bằng mọi cách. Vì vậy, hãy bỏ qua một phần của 'trường nhập' của bạn, thao tác gộp của bạn sẽ làm như vậy cho bạn.

-

Zen của chập chững:

Trong miền xử lý tín hiệu trường học cũ, khi tín hiệu đầu vào được tích hợp hoặc truyền qua bộ lọc, không có cách nào để đánh giá trước - thành phần nào của phản hồi được tích hợp / lọc có liên quan / thông tin nào không. Do đó, mục đích là để bảo tồn các thành phần tín hiệu (tất cả của nó) trong các biến đổi này.

Các thành phần tín hiệu là thông tin. Một số thành phần có nhiều thông tin hơn những thành phần khác. Lý do duy nhất cho việc này là chúng tôi quan tâm đến việc trích xuất thông tin cấp cao hơn; Thông tin thích hợp đối với một số lớp ngữ nghĩa. Theo đó, những thành phần tín hiệu không cung cấp thông tin mà chúng tôi đặc biệt quan tâm có thể được cắt bỏ. Do đó, không giống như những giáo điều của trường học cũ về tích chập / lọc, chúng tôi có thể tự do gộp / cắt tỉa phản ứng tích chập như chúng tôi cảm thấy. Cách chúng tôi cảm thấy như vậy là loại bỏ nghiêm ngặt tất cả các thành phần dữ liệu không góp phần cải thiện mô hình thống kê của chúng tôi.


Cảm ơn bạn vì sự xuất thần của bạn, nhưng không dễ hiểu điều này hơn bằng cách xem xét định nghĩa của tích chập trong thuật ngữ toán học? vi.wikipedia.org/wiki/Convolution#Discittle_convolution Bởi vì ở đây chúng tôi thấy rằng chúng tôi sẽ luôn có các thuật ngữ m ở bên trái và bên phải của nguồn gốc ... do đó điều này sẽ luôn dẫn đến số lượng không đồng đều.
zwep

@zwep Đồng ý! Diễn đàn Q & A không thay thế bách khoa toàn thư; nhưng chỉ đơn thuần là bổ sung chúng. Tuy nhiên, một viễn cảnh rộng hơn cho nhận xét của bạn: Định nghĩa thường chỉ là đánh giá ngang hàng sự lựa chọn tốt nhất trong số các lựa chọn có sẵn; Đó không phải là sự thật phúc âm. Tuy nhiên, các quy tắc trước tiên phải được học trước khi phá vỡ chúng, vì vậy nó có thể được truyền đạt rõ ràng đến cộng đồng chính xác như thế nào và tại sao bạn lại làm khác đi. Những lý do và lựa chọn thay thế đằng sau một định nghĩa nhất định nằm trong các tài liệu nghiên cứu và thường không có trong bách khoa toàn thư.
Stardust năng động

5

1) Giả sử input_fieldlà tất cả bằng không, ngoại trừ một mục nhập tại chỉ mục idx. Kích thước bộ lọc lẻ sẽ trả về dữ liệu có đỉnh nằm ở giữa idx, kích thước bộ lọc chẵn sẽ không - xem xét trường hợp bộ lọc thống nhất có kích thước 2. Hầu hết mọi người muốn giữ vị trí của các đỉnh khi họ lọc.

2) Tất cả input_fieldđều có liên quan đến tích chập, nhưng các cạnh của output_fieldkhông thể được tính toán chính xác vì không chứa dữ liệu cần thiết input_field. Nếu tôi muốn tính toán một câu trả lời cho phần tử đầu tiên của output_field, bộ lọc phải được căn giữa vào phần tử đầu tiên của input_field. Nhưng sau đó, có các phần tử bộ lọc không tương ứng với bất kỳ phần tử có sẵn nào của input_field. Có nhiều thủ thuật khác nhau để có được một dự đoán cho các cạnh của output_field.


2

Đối với bộ lọc có kích thước lẻ, tất cả các pixel lớp trước sẽ đối xứng xung quanh pixel đầu ra. Nếu không có sự đối xứng này, chúng ta sẽ phải tính đến các biến dạng trên các lớp xảy ra khi sử dụng hạt nhân có kích thước chẵn. Do đó, các bộ lọc kernel có kích thước chẵn hầu hết bị bỏ qua để thúc đẩy sự đơn giản thực hiện. Nếu bạn nghĩ về tích chập như một phép nội suy từ các pixel đã cho đến một pixel ở giữa, chúng ta không thể nội suy đến một pixel ở giữa bằng một bộ lọc có kích thước chẵn.

Tại sao các bộ lọc có kích thước đồng đều không hoạt động

nguồn: https://towardsdatascience.com/deciding-optimal-filter-size-for-cnns-d6f7b56f9363

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.