Overfitting: điều chỉnh L2

Quy trình chuẩn hoá L2 là một chỉ số chuẩn hoá phổ biến, sử dụng công thức sau:

$$L_2\text{ regularization } = {w_1^2 + w_2^2 + ... + w_n^2}$$

Ví dụ: bảng sau đây cho thấy cách tính toán quy trình chuẩn hoá L2 cho một mô hình có 6 trọng số:

Giá trị Giá trị bình phương
w1 0,2 0,04
w2 -0,5 0,25
w3 5 25,0
w4 -1,2 1,44
w5 0,3 0,09
w6 -0,1 0,01
    26,83 = tổng số

Lưu ý rằng các trọng số gần bằng 0 không ảnh hưởng nhiều đến việc chuẩn hoá L2, nhưng các trọng số lớn có thể tạo ra tác động rất lớn. Ví dụ: trong phép tính trước:

  • Một trọng số (w3) đóng góp khoảng 93% tổng độ phức tạp.
  • Năm trọng số còn lại chỉ đóng góp khoảng 7% tổng độ phức tạp.

Quá trình chuẩn hoá L2 khuyến khích các trọng số hướng về 0, nhưng không bao giờ đẩy các trọng số về 0.

Bài tập: Kiểm tra mức độ hiểu biết

Nếu bạn sử dụng quy trình chuẩn hoá L2 trong khi huấn luyện mô hình, thì điều gì thường xảy ra với độ phức tạp tổng thể của mô hình?
Độ phức tạp tổng thể của hệ thống có thể sẽ giảm.
Vì việc chuẩn hoá L2 khuyến khích các trọng số hướng tới 0, nên độ phức tạp tổng thể có thể giảm.
Mức độ phức tạp tổng thể của mô hình có thể sẽ không thay đổi.
Điều này rất khó xảy ra.
Mức độ phức tạp tổng thể của mô hình có thể sẽ tăng lên.
Điều này khó có thể xảy ra. Hãy nhớ rằng quy trình chuẩn hoá L2 khuyến khích các trọng số hướng về 0.
Nếu bạn sử dụng phương pháp chuẩn hoá L2 trong khi huấn luyện mô hình, một số tính năng sẽ bị xoá khỏi mô hình.
Đúng
Mặc dù việc chuẩn hoá L2 có thể làm cho một số trọng số rất nhỏ, nhưng sẽ không bao giờ đẩy bất kỳ trọng số nào về 0. Do đó, tất cả các tính năng vẫn sẽ đóng góp một phần vào mô hình.
Sai
Quy trình chuẩn hoá L2 không bao giờ đẩy các trọng số về giá trị bằng 0.

Hệ số điều hoà (lambda)

Như đã lưu ý, quá trình huấn luyện cố gắng giảm thiểu một số tổ hợp tổn thất và độ phức tạp:

$$\text{minimize(loss} + \text{ complexity)}$$

Nhà phát triển mô hình điều chỉnh mức tác động tổng thể của độ phức tạp đối với việc huấn luyện mô hình bằng cách nhân giá trị của độ phức tạp đó với một đại lượng vô hướng được gọi là tỷ lệ chuẩn hoá. Ký tự Hy Lạp lambda thường tượng trưng cho tốc độ chuẩn hoá.

Tức là nhà phát triển mô hình hướng đến việc làm những việc sau:

$$\text{minimize(loss} + \lambda \text{ complexity)}$$

Tỷ lệ điều hoà cao:

  • Tăng cường ảnh hưởng của việc chuẩn hoá, nhờ đó giảm khả năng quá thích ứng.
  • Có xu hướng tạo ra biểu đồ trọng số mô hình có các đặc điểm sau:
    • một phân phối chuẩn
    • trọng số trung bình là 0.

Tỷ lệ điều hoà thấp:

  • Giảm ảnh hưởng của việc chuẩn hoá, do đó làm tăng khả năng quá thích ứng.
  • Có xu hướng tạo ra biểu đồ tần suất về trọng số của mô hình có phân phối phẳng.

Ví dụ: biểu đồ về trọng số của mô hình cho tỷ lệ chuẩn hoá cao có thể trông giống như trong Hình 18.

Hình 18. Biểu đồ thanh của trọng số của một mô hình có giá trị trung bình bằng 0 và
            một phân phối chuẩn.
Hình 18. Biểu đồ trọng số cho tỷ lệ chuẩn hoá cao. Giá trị trung bình là 0. Phân phối chuẩn.

 

Ngược lại, tỷ lệ chuẩn hoá thấp có xu hướng tạo ra biểu đồ phẳng hơn, như minh hoạ trong Hình 19.

Hình 19. Biểu đồ về trọng số của một mô hình có giá trị trung bình bằng 0 nằm giữa một phân phối phẳng và một phân phối chuẩn.
Hình 19. Biểu đồ trọng số cho tỷ lệ chuẩn hoá thấp. Trung bình có thể bằng 0 hoặc không.

 

Chọn tốc độ điều hoà

Tỷ lệ chuẩn hoá lý tưởng sẽ tạo ra một mô hình khái quát hoá tốt cho dữ liệu mới, chưa từng thấy trước đây. Rất tiếc, giá trị lý tưởng đó phụ thuộc vào dữ liệu, vì vậy, bạn phải điều chỉnh một số.

Dừng sớm: một giải pháp thay thế cho phương pháp chuẩn hoá dựa trên độ phức tạp

Ngừng sớm là một phương thức chuẩn hoá không liên quan đến việc tính toán độ phức tạp. Thay vào đó, việc dừng sớm chỉ đơn giản là kết thúc quá trình huấn luyện trước khi mô hình hội tụ hoàn toàn. Ví dụ: bạn kết thúc quá trình huấn luyện khi đường cong tổn thất cho tập hợp xác thực bắt đầu tăng (độ dốc trở thành dương).

Mặc dù việc dừng sớm thường làm tăng tổn thất huấn luyện, nhưng nó có thể giảm tổn thất kiểm thử.

Việc dừng sớm là một hình thức chuẩn hoá nhanh nhưng hiếm khi tối ưu. Mô hình thu được rất khó có thể tốt bằng mô hình được huấn luyện kỹ lưỡng theo tỷ lệ chuẩn hoá lý tưởng.

Tìm điểm cân bằng giữa tốc độ học và tốc độ chuẩn hoá

Tốc độ học và tốc độ chuẩn hoá có xu hướng kéo trọng số theo các hướng ngược nhau. Tốc độ học cao thường kéo trọng số xa 0; tốc độ chuẩn hoá cao kéo trọng số về 0.

Nếu tốc độ chuẩn hoá cao so với tốc độ học, thì các trọng số yếu có xu hướng tạo ra một mô hình dự đoán kém. Ngược lại, nếu tốc độ học cao so với tốc độ điều chỉnh, thì các trọng số mạnh có xu hướng tạo ra một mô hình phù hợp quá mức.

Mục tiêu của bạn là tìm điểm cân bằng giữa tốc độ học và tốc độ chuẩn hoá. Điều này có thể sẽ không hề dễ dàng. Tệ nhất là sau khi tìm thấy cân bằng khó nắm bắt đó, cuối cùng bạn có thể phải thay đổi tốc độ học. Và khi thay đổi tốc độ học, bạn sẽ phải tìm lại tốc độ chuẩn hoá lý tưởng.