Khám phá cách các lớp dropout ngăn chặn overfitting trong mạng neural bằng cách cải thiện khả năng tổng quát hóa, tính mạnh mẽ và hiệu suất của mô hình.
Lớp Dropout là một kỹ thuật điều chuẩn (regularization) 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 của nó, điều này gây hại cho khả năng khái quát hóa dữ liệu mới, chưa từng thấy. Ý tưởng cốt lõi đằng sau dropout, được giới thiệu bởi Geoffrey Hinton và các đồng nghiệp của ông trong một bài báo đột phá năm 2014, là ngẫu nhiên "loại bỏ" — hoặc tạm thời loại bỏ — các nơ-ron và các kết nối của chúng trong mỗi bước huấn luyện. Điều này ngă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 (model training), một lớp dropout ngẫu nhiên đặt các kích hoạt của một phần các neuron trong lớp trước đó thành không. "Tỷ lệ dropout" là một siêu tham số (hyperparameter) xác định xác suất một neuron bị loại bỏ. Ví dụ: tỷ lệ dropout là 0,5 có nghĩa là mỗi neuron có 50% cơ hội 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 coi là huấn luyện một số lượng lớn các mạng mỏng chia sẻ trọng số.
Bằng cách liên tục thay đổi kiến trúc của mạng, dropout ngăn chặn sự đồng thích nghi phức tạp, trong đó đầu ra của một nơ-ron phụ thuộc 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ộ dò tìm đặc trưng hữu ích hơn một cách độc lập. 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 việc có nhiều nơ-ron hoạt động hơn so với trong quá trình huấn luyện, đầu ra của lớp được giảm tỷ lệ theo tỷ lệ dropout. Điều này đảm bảo đầu ra dự kiến từ mỗi nơ-ron vẫn nhất quán giữa quá trình huấn luyện và kiểm tra. Các framework như PyTorch và TensorFlow tự động xử lý việc chia tỷ lệ này 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 khác nhau của trí tuệ nhân tạo (AI) và học máy (ML):
Dropout là một trong số các kỹ thuật được sử dụng để điều chuẩn (regularization) trong học sâu (deep learning). Các kỹ thuật khác bao gồm:
Tóm lại, Dropout Layer là một kỹ thuật điều chuẩn đơn giản nhưng mạnh mẽ, cần thiết để huấn luyện các mô hình deep learning mạnh mẽ trên nhiều ứng dụng khác nhau, từ thị giác máy tính nâng cao đến NLP.