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.

Xe lửa YOLO mô hình đơn giản
với Ultralytics TRUNG TÂM

Tìm hiểu thêm

Dropout Layer là một kỹ thuật cơ bản được sử dụng trong đào tạo mạng nơ-ron (NN) để chống lại vấn đề quá khớp . Được giới thiệu bởi Hinton và cộng sự trong bài báo có ảnh hưởng của họ năm 2014 , dropout đã trở thành một phương pháp chính quy hóa được áp dụng rộng rãi trong học sâu (DL) , đặc biệt hiệu quả trong các mạng lớn có nhiều tham số. Mục tiêu chính của nó là cải thiện khả năng khái quát hóa của mô hình, đảm bảo mô hình hoạt động tốt trên dữ liệu chưa biết, không chỉ dữ liệu đào tạo .

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

Trong quá trình đào tạo mô hình , một Dropout Layer ngẫu nhiên "dropout" hoặc vô hiệu hóa một phần các neuron (đơn vị) trong lớp đó cho mỗi mẫu đào tạo. Điều này có nghĩa là đầu ra của các neuron được chọn này được đặt thành 0 và chúng không đóng góp vào quá trình truyền tiếp hoặc tham gia vào bước truyền ngược cho mẫu cụ thể đó. Phần neuron bị dropout được xác định bởi tỷ lệ dropout, một siêu tham số thường được đặt giữa 0,2 và 0,5 .

Quan trọng là dropout chỉ hoạt động trong quá trình đào tạo. Trong quá trình suy luận hoặc dự đoán trên dữ liệu thử nghiệm , tất cả các neuron đều hoạt động. Để bù đắp cho thực tế là có nhiều neuron hoạt động trong quá trình suy luận hơn là trong quá trình đào tạo, đầu ra của lớp thường được thu nhỏ theo tỷ lệ dropout (một kỹ thuật được gọi là dropout đảo ngược, thường được triển khai trong các khuôn khổ như PyTorchTensorFlow ).

Lợi ích của việc sử dụng Dropout

Lợi ích cốt lõi của việc sử dụng Dropout Layers là cải thiện tổng quát hóa mô hình và giảm tình trạng overfitting. Nó đạt được điều này thông qua một số cơ chế:

  • Giảm đồng thích nghi: Bằng cách loại bỏ ngẫu nhiên các tế bào thần kinh, dropout ngăn các đơn vị trong một lớp trở nên quá phụ thuộc vào nhau (đồng thích nghi) để sửa lỗi trong quá trình đào tạo. Điều này buộc mỗi tế bào thần kinh phải học các tính năng mạnh mẽ và độc lập hơn có ích cho riêng chúng.
  • Implicit Ensemble: Áp dụng dropout trong quá trình đào tạo cũng giống như đào tạo một số lượng lớn các mạng nơ-ron "mỏng" khác nhau với trọng số được chia sẻ. Tại thời điểm suy luận, sử dụng toàn bộ mạng với các kích hoạt được chia tỷ lệ xấp xỉ việc tính trung bình các dự đoán của nhóm lớn này, điều này thường dẫn đến hiệu suất và độ mạnh mẽ tốt hơn.
  • Hiệu quả tính toán: Mặc dù về mặt khái niệm tương tự như việc đào tạo nhiều mô hình, dropout đạt được hiệu ứng tổng hợp này trong một chu kỳ đào tạo mô hình duy nhất, khiến nó rẻ hơn nhiều về mặt tính toán so với việc tập hợp mô hình rõ rà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 tình cảm , 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 đào tạo, dẫn đến hiểu biết tốt hơn và tạo ra văn bản mới. Điều này 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. Những 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 trọng số nhỏ hơn. Đọc thêm về chính quy hóa L1/L2 .
  • 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 đào tạo một cách giả tạo, điều này cũng giúp ngăn ngừa tình trạ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 sử dụng cùng nhau.

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 đến NLP.

Đọc tất cả