- Tại sao các nút thiên vị được sử dụng trong các mạng thần kinh?
- Có bao nhiêu bạn nên sử dụng?
- Trong các lớp bạn nên sử dụng chúng: tất cả các lớp ẩn và lớp đầu ra?
Câu trả lời:
Nút thiên vị trong mạng thần kinh là một nút luôn luôn 'bật'. Nghĩa là, giá trị của nó được đặt thành mà không liên quan đến dữ liệu trong một mẫu nhất định. Nó tương tự như đánh chặn trong mô hình hồi quy và phục vụ cùng chức năng. Nếu mạng nơ ron không có nút thiên vị trong một lớp nhất định, nó sẽ không thể tạo đầu ra ở lớp tiếp theo khác (trên thang tuyến tính hoặc giá trị tương ứng với biến đổi khi đi qua hàm kích hoạt) khi các giá trị tính năng bằng .0 0 0
Hãy xem xét một ví dụ đơn giản: Bạn có một perceptron chuyển tiếp nguồn cấp dữ liệu với 2 nút đầu vào và và 1 nút đầu ra . và là các tính năng nhị phân và được đặt ở mức tham chiếu của chúng, . Nhân số 2 đó với bất kỳ trọng lượng nào bạn thích, và , tính tổng các sản phẩm và chuyển nó qua bất kỳ chức năng kích hoạt nào bạn thích. Không có nút thiên vị, chỉ có một giá trị đầu ra là có thể, điều này có thể mang lại sự phù hợp rất kém. Chẳng hạn, sử dụng hàm kích hoạt logistic, phải làx 2 y x 1 x 2 x 1 = x 2 = 0 0 w 1 w 2 y .5, đó sẽ là khủng khiếp để phân loại các sự kiện hiếm.
Một nút thiên vị cung cấp tính linh hoạt đáng kể cho một mô hình mạng thần kinh. Trong ví dụ đã nêu ở trên, tỷ lệ dự đoán duy nhất có thể có mà không có nút thiên vị là , nhưng với nút thiên vị, bất kỳ tỷ lệ nào trong đều có thể phù hợp với các mẫu trong đó . Đối với mỗi lớp, , trong đó một nút thiên vị được thêm vào, nút thiên vị sẽ thêm các tham số / trọng số bổ sung được ước tính (trong đó là số nút trong lớp( 0 , 1 ) x 1 = x 2 = 0 j N j + 1 N j + 1 j + 1). Nhiều thông số được trang bị có nghĩa là sẽ mất nhiều thời gian hơn để mạng lưới thần kinh được đào tạo. Nó cũng làm tăng cơ hội thừa, nếu bạn không có nhiều dữ liệu hơn trọng lượng cần học.
Với sự hiểu biết này, chúng tôi có thể trả lời các câu hỏi rõ ràng của bạn:
Câu trả lời đơn giản, ngắn gọn:
Trong một vài thí nghiệm trong luận án thạc sĩ của tôi (ví dụ trang 59), tôi thấy rằng sự thiên vị có thể quan trọng đối với (các) lớp đầu tiên, nhưng đặc biệt là ở các lớp được kết nối đầy đủ ở cuối, nó dường như không đóng vai trò lớn. Do đó người ta có thể có chúng ở một vài lớp đầu tiên và không phải ở những lớp cuối cùng. Đơn giản chỉ cần đào tạo một mạng, vẽ sơ đồ phân bố trọng số của các nút thiên vị và cắt tỉa chúng nếu các trọng số dường như quá gần với không.
Điều này có thể phụ thuộc nhiều vào kiến trúc / dữ liệu mạng.
1
giá trị không đổi trong lớp trước và một trọng số (một giá trị sai lệch) cho mỗi lớp tế bào thần kinh tiếp theo.
Trong bối cảnh của các mạng thần kinh, Batch Chuẩn hóa hiện đang là tiêu chuẩn vàng để tạo ra các "nút thiên vị" thông minh. Thay vì kẹp giá trị sai lệch của nơ-ron, thay vào đó bạn điều chỉnh cho hiệp phương sai của đầu vào của nơ-ron. Vì vậy, trong CNN, bạn sẽ áp dụng chuẩn hóa hàng loạt ngay giữa lớp chập và lớp được kết nối đầy đủ tiếp theo (giả sử, ReLus). Về lý thuyết, tất cả các lớp được kết nối đầy đủ có thể được hưởng lợi từ Batch Chuẩn hóa nhưng điều này trong thực tế trở nên rất tốn kém khi thực hiện mỗi đợt chuẩn hóa hàng loạt mang các tham số riêng.
Liên quan đến lý do tại sao, hầu hết các câu trả lời đã giải thích rằng, đặc biệt, các nơ-ron dễ bị ảnh hưởng bởi độ dốc bão hòa khi đầu vào đẩy kích hoạt đến mức cực đoan. Trong trường hợp của ReLu, điều này sẽ được đẩy sang trái, cho độ dốc bằng 0. Nói chung, khi bạn đào tạo một mô hình, trước tiên bạn bình thường hóa các đầu vào vào mạng thần kinh. Chuẩn hóa hàng loạt là một cách bình thường hóa các đầu vào bên trong mạng thần kinh, giữa các lớp.