CNN Architecture — Làm thế nào để xây dựng mạng lưới thần kinh?

vibecode

Administrator
Trong các bài đăng trước, chúng tôi đã học được các thành phần cơ bản khiến mạng lưới thần kinh (CNNs) phù hợp cho xử lý hình ảnh:
Convolution để khai thác các mô hình,
Activation để thêm không liên tục,
và Pooling để giảm các chiều chiều.
Nhưng các thành phần này không hoạt động độc lập.
Sức mạnh thực sự của CNN xuất hiện khi được sắp xếp trong một kiến trúc liên tiếp, nơi mạng lưới hình ảnh dần dần chuyển từ dữ liệu nguyên bản sang các hình ảnh cao cấp có thể được sử dụng để dự đoán.
Con đường có thể được đơn giản hóa thành:
Hình ảnh → Convolution → Activation → Pooling → Lớp sâu → Dự đoán
Điều gì xảy ra bên trong mạng lưới?
Hãy giả sử dụng chúng ta muốn phân loại một hình ảnh của một chiếc xe hơi.
Ban đầu, hình ảnh chỉ là một bộ sưu tập lớn các giá trị pixel.
Hình ảnh đi qua một lớp Convolution, nơi mạng lưới sử dụng các bộ lọc học được học được để phát hiện các mô hình địa phương.
Sau đó, kết quả đi qua một chức năng kích hoạt như ReLU để giới thiệu không liên tục.
Sau đó, Pooling được sử dụng để giảm các chiều chiều của hình ảnh, trong khi xây dựng các mô hình địa phương trở nên tinh tế hơn.
Hệ thống có thể được đơn giản hóa như sau:
Rãnh → Kết cấu → Mô hình → Hình dạng → Hình ảnh mô tả
Trong mỗi giai đoạn, các mô hình trở nên tinh tế hơn.
Sự phát triển có thể được đơn giản hóa như sau:
Đầu vào:
224 × 224 × 3
Sau Convolution, số lượng bộ lọc:
224 × 224 × 32
Sau đó, Max Pooling với kích thước 2 × 2 và bước = 2:
112 × 112 × 32
Sau đó, một Convolution mới:
112 × 112 × 64
Sau đó, một bộ lọc khác:
56 × 56 × 64
Chúng ta nhận thấy rằng:
Chiều cao và Chiều rộng ↓
Trong khi số lượng kênh có thể tăng:
Điều này rất quan trọng; mạng lưới có thể dần dần giảm chính xác về không gian, trong khi xây dựng một bộ sưu tập các hình ảnh khác nhau.
Điều gì xảy ra ở cuối mạng lưới?
Sau nhiều giai đoạn khai thác tính năng, chúng ta cần chuyển đổi biểu tượng kết quả thành một hình thức có thể sử dụng để đưa ra quyết định.
Truyền thống, điều này có thể thực hiện bằng:
Flatten
để chuyển đổi Bảng Tính năng thành một hướng dài duy nhất.
Sau đó, các giá trị được chuyển đến các lớp kết nối đầy đủ, sử dụng biểu tượng khai thác để tạo ra dự đoán cuối cùng.
Trong phân loại đa lớp, lớp cuối cùng có thể tạo ra các điểm số hoặc khả năng cho các lớp khác nhau, ví dụ như:
Xe hơi — 0.82
Xe tải — 0.11
Xe buýt — 0.07
Do đó, lớp cao nhất là dự đoán cuối cùng theo cài đặt của mô hình.
Khai thác tính năng vs Phân loại
Một phần lớn của CNN có thể được chia thành hai bước khái niệm:
Khai thác tính năng
Convolution + Tích hoạt hóa + Tích hợp
Chức năng của nó là xây dựng một biểu tượng giàu có cho dữ liệu.
Sau đó:
Phân loại
Sử dụng biểu tượng này để đạt đến quyết định cuối cùng.
Điều này giải thích tại sao CNN không đơn giản là "học được chiếc xe hơi" từ lớp đầu tiên.
Mạng lưới xây dựng biểu tượng dần dần.
Một ví dụ về hành trình thông tin
Hình ảnh có thể được hình dung như sau:
Pixel nguyên bản
↓
Mẫu địa phương
↓
Biểu tượng sâu hơn
↓
Tính năng cao cấp
↓
Dự đoán
Mỗi lớp không bắt đầu từ đầu; nó được xây dựng trên biểu tượng được tạo ra bởi lớp trước.
Đây là bản chất của việc học biểu tượng hiến kế trong CNN.
Tại sao cấu trúc này hiệu quả cho hình ảnh?
Bởi vì CNN có lợi từ các tính năng đã có sẵn trong hình ảnh:
Tính năng kết nối địa phương
Các mối liên kết giữa các pixel gần nhau là quan trọng.
Chia sẻ tham số
Cùng với cùng một bộ lọc, chúng ta có thể sử dụng ở các vị trí khác nhau.
Hệ học hiến kế
Các mẫu đơn giản có thể được xây dựng từ các mẫu phức tạp.
Ý tưởng cơ bản
CNN không chỉ là một lớp Convolution.
Đó là một kiến trúc tích hợp kết hợp nhiều hoạt động, mỗi hoạt động với một vai trò cụ thể:
Convolution → Extract
Activation → Transform
Bloking → Downsample
Hoàn toàn kết nối / Output → Prediction
Và thông qua việc lặp lại các hoạt động này, mạng lưới chuyển từ:
Hình ảnh nguyên bản
Đến:
Hiểu hình ảnh cao cấp
Sau đó đến:
Dự đoán
Và ý tưởng này là nền tảng trên nền tảng mà chúng ta sẽ xây dựng khi chuyển đến các công trình kiến trúc lịch sử đã ảnh hưởng đến sự phát triển của thị giác máy tính, bắt đầu từ LeNet và sau đó là các mô hình như AlexNet.

1791023437187.png
 
Back
Top