Mẹo Hay

Overfitting Là Gì

Trong bài này, ta sẽ tìm hiểu kỹ hơn về training problem. Tại sao chỉ cần tìm model dự đoán “khá” chính xác trên training set? Tại sao một model dự đoán “hoàn toàn” chính xác trên training set lại có thể dự đoán rất tồi trên test set?

Khi nói đến training problem, không thể quên đi objective function. Nhắc lại, objective function thường có dạng:

objective=average_loss+regularizerobjective = average_loss + regularizerobjective=average_loss+regularizer
LDtrain(fw)=1∣Dtrain∣∑(x, y)∈DtrainL(fw(x), y)+λR(fw)mathcal{L}_{D_{train}}(f_w) = frac{1}{|D_{train}|} sum_{(x, y)in D_{train}} L(f_w(x), y) + lambda R(f_w)LDtrain​​(fw​)=∣Dtrain​∣1​(x, y)∈Dtrain​∑​L(fw​(x), y)+λR(fw​)

với 1∣Dtrain∣∑(x, y)∈DtrainL(fw(x), y)frac{1}{|D_{train}|} sum_{(x, y)in D_{train}} L(f_w(x), y)∣Dtrain​∣1​∑(x, y)∈Dtrain​​L(fw​(x), y) là trung bình loss function trên training set, R(fw)R(f_w)R(fw​) là regularizer, λlambdaλ là regularization constant (một hyperparameter).

Bạn đang xem: Overfitting Là Gì

Mục tiêu của training là tìm ra model tối thiểu hóa objective function:

Để rút gọn ký hiệu, khi model có dạng xác định, ta có thể sử dụng www để chỉ model thay cho fwf_wfw​.

Kí hiệu arg⁡min⁡xf(x)argmin_x f(x)argminx​f(x) trả về giá trị của xxx để hàm f(x)f(x)f(x) đạt được giá trị cực tiểu. Ví dụ, arg⁡min⁡xx2+1=0argmin_x x^2 + 1 = 0argminx​x2+1=0 bởi vì x2+1x^2 + 1×2+1 đạt giá trị cực tiểu (bằng 1) tại x=0x = 0x=0. Các bạn sẽ nhìn thấy phương trình này trong đa số các paper (bài báo khoa học) về machine learning.

Khi ta nói muốn tìm model “dự đoán chính xác hoàn toàn” trên training set, tức là nói đến việc sử dụng một objective function mà không có regularizer:

LDtrainERM(fw)=1∣Dtrain∣∑(x, y)∈DtrainL(fw(x), y)mathcal{L}_{D_{train}}^{ERM}(f_w) = frac{1}{|D_{train}|} sum_{(x, y)in D_{train}} L(f_w(x), y)LDtrain​ERM​(fw​)=∣Dtrain​∣1​(x, y)∈Dtrain​∑​L(fw​(x), y)

Đây được gọi là quy tắc empirical risk minimization (ERM). Ta sẽ giải thích vì sao nó được gọi như vậy. Loss function còn được gọi là risk function (hàm rủi ro). Chữ empirical được thêm vào bởi vì risk function này được tính trung bình trên một tập dữ liệu hữu hạn. Vậy empirical risk minimization tức là tối thiểu hóa rủi ro trên một tập dữ liệu hữu hạn.

Bài viết này giới thiệu những kiến thức cần thiết để ta đưa ra được một thuật toán supervised learning tốt hơn ERM. Ta sẽ nói kỹ về vấn đề lớn nhất thường gặp phải khi sử dụng ERM, overfitting, và cách khắc phục nó. Overfitting là một trong những khái niệm quan trọng bậc nhất trong machine learning, là “bóng ma ám lấy machine learning”.

Xem thêm: Giao Diện Android Đẹp Nhất 2021, Top Launcher Android Tốt Nhất 2021

Occam’s razor

Albert Einstein từng có một câu nói nổi tiếng là:

Everything should be made as simple as possible, but no simpler.

Nghĩa là “mọi thứ nên được tối giản hóa hết mức có thể, nhưng không nên quá mức có thể”. Trong machine learning, người ta thường nhắc đến một nguyên tắc gần tương tự gọi là (https://en.wikipedia.org/wiki/Occam’s_razor):

Entities must not be multiplied beyond necessity.

Áp dụng vào machine learning, nguyên tắc này được hiểu là:

Trong tất cả các giả thiết có thể giải thích được một hiện tượng, ta nên chọn giả thiết đơn giản nhất.

Hoặc thậm chí đơn giản hơn:

Trong tất cả các model “đúng”, chọn model đơn giản nhất.

Lưu ý là ở đây có đến hai điều kiện cần được đảm bảo: giả thiết phải đơn giản nhất nhưng vẫn phải giải thích được hiện tượng. Rất dễ để áp dụng Occam’s razor một cách sai lầm.

Ta xét bài toán phân loại thư vào hai loại label, spam và không spam. Model đơn giản nhất có thể nghĩ ra đó là random một trong hai label với mỗi bức thư. Model này dù tối giản nhưng lại vô dụng và vi phạm Occam’s razor vì nó không thể giải thích tính chất spam.

Xem thêm: Kế Toán Công Nợ Tiếng Anh Là Gì, Các Khái Niệm Liên Quan Tới Công Nợ

Trong một ví dụ khác như trong hình sau,

*

Với supervised learning, cho dù có tồn tại một hàm bí ẩn f∗f^*f∗ sao cho mối quan hệ giữa label và observation là y=f∗(x)y = f^*(x)y=f∗(x), thì dữ liệu trong thực tế cũng không bao giờ phản ánh chính xác được mối quan hệ này. Nguyên nhân gây ra điều này có thể là do sai số trong dụng cụ đo, hoặc đơn giản là do tự nhiên mang tính ngẫu nhiên. Ví dụ sau cho thấy thay vì thu được dữ liệu tuyến tính hoàn hảo (y=axy = axy=ax) như hình bên trái thì thường tọa độ của các điểm dữ liệu sẽ bị sai lệch như hình bên phải.
Chuyên mục: Mẹo Hay

Rate this post

Random Posts

Post Comment