Điều kiện hóa & Zig-Zag

Cách các mô hình thực sự học, từ gradient descent thuần túy đến Adam

Gradient descent hành xử rất khác nhau trên một bề mặt mất mát tròn trịa và một bề mặt bị kéo giãn. Điều kiện hóa (conditioning) đo lường độ kéo giãn đó. Điều kiện hóa kém khiến bộ tối ưu hóa đi zig-zag: một hướng dốc đứng, hướng kia phẳng lì.

Với một hàm mất mát bậc hai, điều kiện hóa được kiểm soát bởi các giá trị riêng của ma trận Hessian. Số điều kiện κ là tỷ số giữa độ cong lớn nhất và độ cong nhỏ nhất.

Trong một máy pinball có thanh chắn hai bên khít và một lối ra dài hẹp, một cú đánh mạnh khiến quả bóng nảy qua nảy lại hai bên trong khi chỉ tiến về phía trước rất chậm. Điều kiện hóa kém làm điều tương tự với gradient descent: nó nảy theo hướng dốc đứng và bò chậm theo hướng phẳng. Hình bên dưới chính là chiếc máy đó. Trượt κ để kéo giãn cái bát, chạy quá trình đi xuống, và xem đường đi nảy qua nảy lại dọc theo hướng hẹp trong khi nhích từng chút dọc theo hướng dài. (Cứ để β bằng 0 lúc này; nó sẽ là ngôi sao trong bài Momentum.)

Vị trí của nó trong MLĐiều kiện hóa là một trong những lý do khiến kiến trúc mạng nơ-ron quan trọng. Kết nối tắt (residual connections), các lớp chuẩn hóa, các phương án khởi tạo, và các bộ tối ưu hóa thích ứng đều giúp việc điều hướng bề mặt mất mát dễ dàng hơn bằng cách thay đổi hình học hiệu dụng mà quá trình huấn luyện dựa trên gradient nhìn thấy.
▶ Điều kiện hóa & Zig-Zag
← Lịch trình & khởi độngMomentum →