Đón xem YOLO Vision 2025!
25 tháng 9, 2025
10:00 — 18:00 BST
Sự kiện kết hợp
Yolo Vision 2024
Bảng chú giải thuật ngữ

Lớp Dropout

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.

Cách lớp Dropout hoạt động

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ư PyTorchTensorFlow tự động xử lý việc chia tỷ lệ này trong các triển khai lớp dropout của chúng.

Các Ứng dụng Thực tế

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)học máy (ML):

  1. Thị giác máy tính: Trong thị giác máy tính (CV), dropout giúp các mô hình như Ultralytics YOLO hoạt động tốt hơn trong các tác vụ như nhận diện đối tượng, phân loại ảnhphân vùng thực thể (instance segmentation). Ví dụ: trong hệ thống lái xe tự động, dropout có thể làm cho các mô hình phát hiện mạnh mẽ hơn trước các biến đổi về ánh sáng, thời tiết hoặc che khuất, cải thiện độ an toàn và độ tin cậy. Việc huấn luyện các mô hình như vậy có thể được quản lý hiệu quả bằng các nền tảng như Ultralytics HUB.
  2. Xử lý ngôn ngữ tự nhiên (NLP) (Natural Language Processing (NLP)): Dropout thường được áp dụng trong các mô hình NLP như TransformersBERT. Trong các ứng dụng như dịch máy (machine translation) hoặc phân tích cảm xúc (sentiment analysis), dropout ngăn mô hình ghi nhớ các cụm từ hoặc cấu trúc câu cụ thể từ dữ liệu huấn luyện. Điều này dẫn đến sự hiểu biết và tạo ra văn bản mới tốt hơn, nâng cao hiệu suất của chatbots và các công cụ tóm tắt văn bản (text summarization).

Các khái niệm liên quan và sự khác biệt

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:

  • Điều chuẩn hóa L1 và L2 (L1 and L2 Regularization): Các phương pháp này thêm một khoản phạt vào hàm mất mát (loss function) dựa trên độ lớn của trọng số mô hình (model weights), khuyến khích trọng số nhỏ hơn để giảm độ phức tạp của mô hình. Bạn có thể đọc thêm về điều chuẩn hóa L1/L2. Ngược lại, dropout trực tiếp sửa đổi cấu trúc của mạng trong quá trình huấn luyện thay vì chỉ phạt trọng số.
  • Chuẩn hóa theo lô: Chuẩn hóa theo lô (Batch Normalization - BN) chuẩn hóa các kích hoạt trong một lớp, có thể ổn định quá trình huấn luyện và đôi khi cung cấp hiệu ứng điều chuẩn nhẹ, có khả năng giảm nhu cầu sử dụng dropout mạnh. Trong khi BN giải quyết sự thay đổi hiệp biến bên trong, Dropout trực tiếp nhắm mục tiêu vào độ phức tạp của mô hình bằng cách buộc dự phòng.
  • Tăng cường dữ liệu (Data Augmentation): Các kỹ thuật như xoay, thay đổi tỷ lệ hoặc cắt ảnh (tăng cường dữ liệu) giúp tăng tính đa dạng của tập dữ liệu huấn luyện một cách nhân tạo. Điều này cũng giúp ngăn ngừa tình trạng quá khớp (overfitting) và cải thiện khả năng khái quát hóa. Loại bỏ (Dropout) và tăng cường dữ liệu thường được sử dụng cùng nhau để đạt được kết quả mạnh mẽ hơn.

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.

Tham gia cộng đồng Ultralytics

Tham gia vào tương lai của AI. Kết nối, hợp tác và phát triển cùng với những nhà đổi mới toàn cầu

Tham gia ngay
Đã sao chép liên kết vào clipboard