Khám phá cách Leaky ReLU giải quyết vấn đề "ReLU chết" trong mạng nơ-ron. Tìm hiểu những lợi ích của nó đối với GAN, trí tuệ nhân tạo biên và so sánh với các phương pháp khác. Ultralytics Các mẫu YOLO26.
Leaky ReLU là một biến thể chuyên biệt của hàm kích hoạt Rectified Linear Unit (ReLU) tiêu chuẩn được sử dụng trong các mô hình học sâu. Trong khi ReLU tiêu chuẩn đặt tất cả các giá trị đầu vào âm về chính xác bằng không, Leaky ReLU lại đưa vào một độ dốc nhỏ, khác không cho các đầu vào âm. Sự điều chỉnh tinh tế này cho phép một lượng nhỏ thông tin truyền qua mạng ngay cả khi nơron không hoạt động, giải quyết một vấn đề quan trọng được gọi là vấn đề "ReLU chết". Bằng cách duy trì độ dốc liên tục, hàm này giúp mạng nơron học mạnh mẽ hơn trong giai đoạn huấn luyện, đặc biệt là trong các kiến trúc sâu được sử dụng cho các tác vụ phức tạp như nhận dạng hình ảnh và xử lý ngôn ngữ tự nhiên.
Để hiểu được sự cần thiết của Leaky ReLU, trước tiên cần xem xét những hạn chế của hàm kích hoạt ReLU tiêu chuẩn. Trong thiết lập tiêu chuẩn, nếu một nơ-ron nhận đầu vào âm, nó sẽ xuất ra 0. Do đó, đạo hàm của hàm trở thành 0 trong quá trình lan truyền ngược . Nếu một nơ-ron thực sự bị kẹt trong trạng thái này với tất cả các đầu vào, nó sẽ ngừng cập nhật trọng số của mình hoàn toàn, trở nên "chết".
Hàm Leaky ReLU giải quyết vấn đề này bằng cách cho phép một độ dốc dương nhỏ đối với các giá trị âm—thường là một độ dốc không đổi như 0,01. Điều này đảm bảo rằng thuật toán tối ưu hóa luôn có thể tiếp tục điều chỉnh trọng số, ngăn chặn các nơ-ron trở nên không hoạt động vĩnh viễn. Đặc điểm này đặc biệt có giá trị khi huấn luyện các mạng sâu, nơi việc bảo toàn biên độ tín hiệu là rất quan trọng để tránh hiện tượng độ dốc biến mất .
Leaky ReLU được sử dụng rộng rãi trong các trường hợp mà tính ổn định huấn luyện và luồng gradient là tối quan trọng.
Việc lựa chọn hàm kích hoạt phù hợp là một bước quan trọng trong việc tinh chỉnh siêu tham số . Điều quan trọng là phải phân biệt Leaky ReLU với các hàm tương tự:
Ví dụ sau đây minh họa cách triển khai lớp Leaky ReLU bằng thư viện PyTorch . Đoạn mã này khởi tạo hàm và truyền vào một tham số. tensor Chứa đựng cả giá trị tích cực và tiêu cực.
import torch
import torch.nn as nn
# Initialize Leaky ReLU with a negative slope of 0.1
# This means negative input x becomes 0.1 * x
leaky_relu = nn.LeakyReLU(negative_slope=0.1)
# Input data with positive and negative values
data = torch.tensor([10.0, -5.0, 0.0])
# Apply activation
output = leaky_relu(data)
print(f"Input: {data}")
print(f"Output: {output}")
# Output: tensor([10.0000, -0.5000, 0.0000])
Hiểu rõ những điểm khác biệt tinh tế này là điều cần thiết khi thiết kế kiến trúc tùy chỉnh hoặc sử dụng Nền tảng Ultralytics để chú thích, huấn luyện và triển khai các mô hình thị giác máy tính của bạn. Việc lựa chọn hàm kích hoạt phù hợp đảm bảo mô hình của bạn hội tụ nhanh hơn và đạt được độ chính xác cao hơn trong các tác vụ cụ thể của bạn.