Khám phá cách các lớp bỏ học ngăn chặn hiện tượng quá khớp trong mạng nơ-ron bằng cách cải thiện khả năng khái quát hóa, tính mạnh mẽ và hiệu suất mô hình.
Lớp dropout là một kỹ thuật điều chỉnh mạnh mẽ nhưng đơn giản được sử dụng trong mạng nơ-ron (NN) để chống lại hiện tượng overfitting . Overfitting xảy ra khi một mô hình học dữ liệu huấn luyện quá tốt, bao gồm cả nhiễu và các đặc điểm riêng, làm ảnh hưởng đến khả năng khái quát hóa sang dữ liệu mới, chưa từng thấy. Ý tưởng cốt lõi đằng sau dropout, được Geoffrey Hinton và các cộng sự giới thiệu trong một bài báo đột phá năm 2014 , là "dropout" ngẫu nhiên - tức là tạm thời loại bỏ - các nơ-ron và kết nối của chúng trong mỗi bước huấn luyện. Điều này ngăn chặn các nơ-ron trở nên quá phụ thuộc vào nhau, buộc mạng phải học các biểu diễn mạnh mẽ và dư thừa hơn.
Trong quá trình huấn luyện mô hình , một lớp dropout sẽ ngẫu nhiên đặt mức kích hoạt của một phần nhỏ neuron ở lớp trước đó về 0. "Tỷ lệ dropout" là một siêu tham số xác định xác suất một neuron bị loại bỏ. Ví dụ, tỷ lệ dropout là 0,5 nghĩa là mỗi neuron có 50% khả năng bị bỏ qua trong một lần lặp huấn luyện nhất định. Quá trình này có thể được hình dung như việc huấn luyện một số lượng lớn các mạng lưới mỏng có chung trọng số.
Bằng cách liên tục thay đổi kiến trúc mạng, dropout ngăn chặn các đồng thích ứng phức tạp, trong đó đầu ra của một nơ-ron phụ thuộc rất nhiều vào sự hiện diện của một vài nơ-ron cụ thể khác. Thay vào đó, mỗi nơ-ron được khuyến khích trở thành một bộ phát hiện tính năng hữu ích độc lập hơn. Trong giai đoạn kiểm tra hoặc suy luận , lớp dropout bị tắt và tất cả các nơ-ron đều được sử dụng. Để bù đắp cho thực tế là có nhiều nơ-ron hoạt động hơn trong quá trình huấn luyện, đầu ra của lớp được thu nhỏ theo tỷ lệ dropout. Điều này đảm bảo đầu ra dự kiến từ mỗi nơ-ron luôn nhất quán giữa quá trình huấn luyện và kiểm tra. Các nền tảng như PyTorch và TensorFlow xử lý việc thu nhỏ này tự động trong các triển khai lớp dropout của chúng.
Dropout được sử dụng rộng rãi trong nhiều lĩnh vực của trí tuệ nhân tạo (AI) và máy học (ML) :
Dropout là một trong số nhiều kỹ thuật được sử dụng để điều chỉnh trong học sâu . Các kỹ thuật khác bao gồm:
Tóm lại, Dropout Layer là một kỹ thuật chính quy hóa đơn giản nhưng mạnh mẽ, cần thiết để đào tạo các mô hình học sâu mạnh mẽ trên nhiều ứng dụng khác nhau, từ thị giác máy tính tiên tiến đến NLP.