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 các mô hình học sâu , đặc biệt là mạng nơ- ron, để chống lại tình trạng quá khớp . Quá khớp xảy ra khi một mô hình học dữ liệu đào tạo quá tốt, bao gồm cả nhiễu và các mẫu cụ thể, cản trở khả năng khái quát hóa của mô hình đối với dữ liệu mới, chưa từng thấy. Dropout giải quyết vấn đề này bằng cách "bỏ" tạm thời và ngẫu nhiên hoặc đặt thành 0, một phần các kích hoạt nơ-ron trong một lớp trong mỗi lần lặp đào tạo. Điều này buộc mạng phải học các tính năng mạnh mẽ hơn không phụ thuộc vào bất kỳ nơ-ron nào.

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

Trong quá trình đào tạo , đối với mỗi ví dụ đào tạo trong một đợt , mỗi nơ-ron trong lớp dropout có một xác suất nhất định ("tỷ lệ dropout", thường nằm trong khoảng từ 0,1 đến 0,5) bị vô hiệu hóa. Điều này có nghĩa là đầu ra của nó được đặt thành 0 cho lần truyền tiến và truyền lùi cụ thể đó. Các nơ-ron hoạt động còn lại có đầu ra của chúng được tăng lên theo hệ số tương đương với 1/(1-tỷ lệ dropout) để duy trì tổng số kích hoạt dự kiến. Quá trình này thực sự tạo ra các kiến trúc mạng "mỏng" hơi khác nhau cho mỗi bước đào tạo, ngăn không cho các nơ-ron đồng thích ứng quá nhiều và khuyến khích chúng học thêm các tính năng hữu ích độc lập. Điều quan trọng là trong giai đoạn đánh giá hoặc suy luận mô hình , Lớp Dropout bị tắt và tất cả các nơ-ron được sử dụng với trọng số đã học của chúng, đảm bảo toàn bộ dung lượng của mạng được sử dụng cho các dự đoán.

Lợi ích và tầm quan trọng

Lợi ích chính của việc sử dụng Dropout Layers là cải thiện khả năng khái quát hóa mô hình. Bằng cách ngăn chặn sự đồng thích ứng phức tạp giữa các tế bào thần kinh, dropout làm cho mô hình ít nhạy cảm hơn với nhiễu và các mẫu cụ thể trong dữ liệu đào tạo , dẫn đến hiệu suất tốt hơn trên dữ liệu xác thực hoặc dữ liệu kiểm tra chưa thấy. Nó hoạt động như một dạng chính quy hóa , có mục tiêu tương tự như các kỹ thuật như phân rã trọng số L1/L2 nhưng hoạt động thông qua cơ chế ngẫu nhiên. Nó đặc biệt hiệu quả trong các mạng lớn có nhiều tham số, trong đó quá trình lắp ghép là một thách thức phổ biến. Khái niệm ban đầu đã được trình bày chi tiết trong bài báo "Dropout: A Simple Way to Prevent Neural Networks from Overfitting" .

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

Các lớp Dropout được sử dụng rộng rãi trong nhiều lĩnh vực khác nhau của AI và máy học:

  1. Thị giác máy tính: Trong các tác vụ như phát hiện đối tượngphân loại hình ảnh , Dropout thường được áp dụng cho các lớp được kết nối đầy đủ của Mạng nơ-ron tích chập (CNN) . Các mô hình như Ultralytics YOLO được hưởng lợi ngầm từ các kỹ thuật chính quy hóa trong quá trình đào tạo, giúp chúng khái quát hóa tốt hơn trên các tập dữ liệu hình ảnh đa dạng như COCO hoặc dữ liệu tùy chỉnh được chuẩn bị thông qua Ultralytics HUB . Điều này đảm bảo tính mạnh mẽ khi phát hiện đối tượng trong các cảnh thực tế khác nhau, rất quan trọng đối với các ứng dụng trong xe tự hành hoặc hệ thống an ninh.
  2. Xử lý ngôn ngữ tự nhiên (NLP): Dropout thường được sử dụng trong Mạng nơ-ron hồi quy (RNN) như LSTM và trong các mô hình Transformer được sử dụng cho các tác vụ như dịch máy hoặc phân tích tình cảm . Nó giúp ngăn các mô hình ghi nhớ các cụm từ hoặc cấu trúc câu cụ thể từ ngữ liệu đào tạo, dẫn đến hiểu biết tốt hơn và tạo ra ngôn ngữ tự nhiên. Các khuôn khổ như Hugging Face Transformers thường kết hợp dropout trong kiến trúc mô hình của chúng.

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 để ngăn chặn tình trạng quá khớp. Những kỹ thuật khác bao gồm:

  • Chính quy hóa L1 và L2: Chúng 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.
  • Chuẩn hóa hàng loạt : Chuẩn hóa các đầu vào cho một lớp cho mỗi hàng loạt nhỏ. Mặc dù chủ yếu được sử dụng để ổn định và tăng tốc quá trình đào tạo, nhưng nó cũng có thể có tác dụng chuẩn hóa nhẹ.
  • Tăng cường dữ liệu : Tăng kích thước và tính đa dạng của tập dữ liệu đào tạo một cách nhân tạo bằng cách áp dụng các phép biến đổi như xoay, lật hoặc thay đổi màu sắc cho dữ liệu đầu vào. Khám phá các kỹ thuật tăng cường trong tài liệu Ultralytics .

Dropout khác biệt ở chỗ nó trực tiếp thao túng các hoạt động của tế bào thần kinh một cách ngẫu nhiên trong quá trình đào tạo, giúp đào tạo hiệu quả một tập hợp các mạng lưới mỏng.

Thực hiện

Dropout Layers là các thành phần tiêu chuẩn trong các khuôn khổ học sâu chính. Chúng có sẵn trong các thư viện như PyTorchTensorFlow , giúp chúng dễ dàng kết hợp vào kiến trúc mạng nơ-ron.

Đọc tất cả