Có một quy tắc ngón tay cái để thiết kế mạng lưới thần kinh?


12

Tôi biết rằng kiến ​​trúc mạng nơ-ron chủ yếu dựa trên chính vấn đề và các loại đầu vào / đầu ra, nhưng vẫn luôn có một "hình vuông" khi bắt đầu xây dựng một vấn đề. Vì vậy, câu hỏi của tôi là - được cung cấp một bộ dữ liệu đầu vào của MxN (M là số lượng bản ghi, N là số lượng tính năng) và một lớp đầu ra C có thể - có nên áp dụng quy tắc ngón tay cái cho bao nhiêu lớp / đơn vị không?


Câu trả lời có thể cho câu hỏi này là rất vấn đề cụ thể. Có thể có một số quy tắc hữu ích để nhận dạng đối tượng hình ảnh, nhưng các quy tắc này có thể không hoạt động trên một tập dữ liệu khác.
horaceT

Câu trả lời:


10

Câu hỏi này đã được trả lời chi tiết trên CrossValidated: Làm thế nào để chọn số lượng các lớp và nút ẩn trong mạng thần kinh feedforward?

Tuy nhiên, hãy để tôi thêm hai xu của riêng tôi:

Không có quy tắc kỳ diệu nào để chọn kiến ​​trúc mạng thần kinh tốt nhất, nhưng nếu bạn có thể tìm thấy một kiến ​​trúc mà ai đó đã sử dụng để giải quyết vấn đề tương tự thì đây thường là điểm khởi đầu tuyệt vời.

Những nơi tốt nhất để tìm là các ví dụ chính thức hoặc không chính thức bằng cách sử dụng các thư viện mạng thần kinh phổ biến như Keras, PyTorch hoặc Tensorflow và các kiến ​​trúc được mô tả trong tài liệu học thuật. máy ảnh / ví dụ trên github là một tài nguyên tuyệt vời.

Những kiến ​​trúc này có thể đã được chọn sau rất nhiều thử nghiệm và sai sót, vì vậy hầu hết các công việc sẽ được thực hiện cho bạn.


5
Một lưu ý cho câu trả lời của CrossValidated là nó đã hơn 7 tuổi và chỉ ra Câu hỏi thường gặp trên 15 năm để có một "bản tóm tắt tuyệt vời" về cách định cấu hình các lớp ẩn của bạn. Có thể nói, đã có rất nhiều công việc về cấu hình NN trong 7-15 năm qua là một chút thiếu sót. Ngày càng có nhiều ứng dụng nằm ngoài chế độ " một lớp ẩn là đủ ". - Điều đó nói rằng, đối với một loạt các vấn đề, một phương pháp học tập sâu có thể là quá mức cần thiết. Bắt đầu với một lớp ẩn duy nhất và chỉ đi sâu nếu cần là một chiến lược vững chắc.
RM

1
Điểm tốt, RM - Tuy nhiên, câu trả lời thứ hai có nhiều gần đây hơn.
Imran

@Imran Tôi nghĩ bạn không bao giờ hoàn toàn trả lời câu hỏi OP. Sự lựa chọn của các nút và kiến ​​trúc ẩn là một câu hỏi rất sâu sắc mà vẫn chưa được hiểu rõ lắm. Chứng kiến ​​ResNet và ResNet rộng với các kết nối lớp chéo.
horaceT

Cảm ơn bình luận của bạn, @horaceT. Câu trả lời cố gắng của tôi có nghĩa là "Không có quy tắc ngón tay cái, nhưng có những phương pháp phỏng đoán có thể được áp dụng". Tôi biết về Res Nets. Xin vui lòng cho tôi biết làm thế nào khác tôi có thể cải thiện câu trả lời của tôi.
Imran

3

Tôi đọc một bài báo khám phá ý tưởng sử dụng các mạng thần kinh để thiết kế các mạng thần kinh khác, bằng cách khám phá cấu hình nào của các nút và các lớp là hiệu quả nhất. Đây là trang nơi bạn có thể tải xuống bản PDF https://arxiv.org/abs/1611.02120


2

Theo câu trả lời của @ Imran, tôi thấy bài viết này trong một trong những bình luận của bài đăng CrossValidated mà anh ấy liên kết đến. Bên cạnh nỗ lực tìm kiếm kiến ​​trúc phù hợp bằng Mô hình di truyền (thay vì sử dụng quy tắc ngón tay cái), phần 2.1 đưa ra một số giới hạn về mặt lý thuyết cho việc có bao nhiêu đơn vị ẩn trong hệ thống một / hai lớp.

EDIT: Tôi đã thử nghiệm định lý này và phát hiện ra rằng sử dụng Mô hình di truyền cũng tốt như chọn một kiến ​​trúc ngẫu nhiên.

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.