Thuật ngữ

Lớp bỏ học

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.

Lớp Dropout hoạt động như thế nào

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

Ứng dụng trong thế giới thực

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)máy học (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 thực hiện tốt hơn các tác vụ như phát hiện đối tượng , phân loại hình ảnhphân đoạn thể hiện . Ví dụ, trong các hệ thống lái xe tự động , dropout có thể giúp các mô hình phát hiện mạnh mẽ hơn trước các biến thể về ánh sáng, thời tiết hoặc che khuất, cải thiện tính an toàn và độ tin cậy. Việc đào tạo 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): 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 hoặc phân tích cảm xúc , 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 việc hiểu và tạo ra văn bản mới tốt hơn, nâng cao hiệu suất của chatbot và các công cụ tóm tắt văn bản .

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

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:

  • Chính quy hóa L1 và L2: Các phương pháp này thêm một hình phạt vào hàm mất mát dựa trên độ lớn của trọng số mô hình , khuyến khích các 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ề chính quy hóa L1/L2 . Ngược lại, dropout trực tiếp sửa đổi cấu trúc 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ô (BN) chuẩn hóa các hoạt động trong một lớp, có thể ổn định quá trình đào tạo và đôi khi cung cấp hiệu ứng chuẩn hóa nhẹ, có khả năng giảm nhu cầu dropout mạnh. Trong khi BN giải quyết sự dịch chuyển biến phụ thuộc nội bộ, Dropout nhắm trực tiếp vào độ phức tạp của mô hình bằng cách buộc phải dự phòng.
  • Tăng cường dữ liệu: Các kỹ thuật như xoay, thay đổi tỷ lệ hoặc cắt xén hình ảnh ( tăng cường dữ liệu ) làm tăng tính đa dạng của tập dữ liệu huấn luyện một cách giả tạo. Điều này cũng giúp ngăn ngừa hiện tượng quá khớp và cải thiện khả năng khái quát hóa. Dropout và tăng cường dữ liệu thường được kết hợp để đạt được kết quả mạnh mẽ hơn nữa.

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.

Tham gia cộng đồng Ultralytics

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

Tham gia ngay
Liên kết đã được sao chép vào clipboard