Dataset Bias
Độ chệch của tập dữ liệu là sự không tương thích giữa dữ liệu huấn luyện và thế giới mà model phục vụ, dẫn đến độ chính xác không đồng đều. Nội dung đề cập các loại chính, ví dụ và cách phát hiện, khắc phục.
Thiên lệch dataset là sự không tương thích có tính hệ thống giữa dữ liệu dùng để huấn luyện model học máy và những người, địa điểm hoặc điều kiện mà model sẽ phục vụ. Model học mọi quy luật trong dữ liệu huấn luyện, kể cả những sai lệch phát sinh từ cách thu thập dữ liệu; vì vậy, dataset lệch tạo ra model hoạt động tốt trong các tình huống thường gặp nhưng kém hiệu quả ở những tình huống còn lại. Vì dữ liệu kiểm thử thường được lấy từ cùng nguồn thu thập, vấn đề này thường bị che giấu cho đến khi triển khai. Năm 2011, Antonio Torralba và Alexei Efros đã minh họa điểm này bằng trò chơi có tên "Đoán dataset": một bộ phân loại đơn giản có thể xác định bức ảnh thuộc dataset nào trong số 12 dataset ảnh phổ biến với độ chính xác cao hơn nhiều so với đoán ngẫu nhiên, vì mỗi bộ sưu tập có phong cách dễ nhận biết riêng.
Các loại thiên lệch dataset#
- Thiên lệch chọn mẫu: Dữ liệu đến từ các nguồn thuận tiện thay vì quần thể mục tiêu. Ảnh trên web thiên về bối cảnh phương Tây giàu có; các dịch vụ nhận dạng đối tượng thương mại có độ chính xác thấp hơn khoảng 10% với đồ gia dụng trong nhà của các hộ kiếm dưới 50 USD mỗi tháng so với hộ kiếm trên 3.500 USD, và có chênh lệch 15 đến 20 điểm phần trăm giữa đồ vật được chụp tại Hoa Kỳ và tại Somalia hoặc Burkina Faso.
- Thiên lệch đại diện: Một số nhóm hoặc lớp xuất hiện quá ít để model có thể học. Cuộc kiểm toán Gender Shades phát hiện các bộ phân loại giới tính thương mại phân loại sai phụ nữ có làn da sẫm màu tới 34,7% số lần và nam giới có làn da sáng tối đa 0,8% số lần. Trong lĩnh vực phát hiện đối tượng, đuôi dài gồm các lớp hiếm cũng là vấn đề tương tự ở cấp lớp.
- Thiên lệch đo lường và thu thập: Camera, cảm biến, địa điểm và điều kiện chiếu sáng khác nhau giữa dữ liệu huấn luyện và môi trường triển khai. Các model deep learning phát hiện viêm phổi trên X-quang ngực cũng có thể xác định bệnh viện nơi ảnh được chụp; vì tỷ lệ viêm phổi khác nhau giữa các bệnh viện, tín hiệu này làm tăng độ chính xác nhưng khiến khả năng khái quát hóa sang địa điểm mới kém đi, một dạng học tắt.
- Thiên lệch nhãn: Gán nhãn dữ liệu kế thừa phán đoán của người gán nhãn, hướng dẫn không nhất quán hoặc quyết định trong quá khứ; model xem những khuôn mẫu đó là ground truth.
- Thiên lệch theo thời gian: Dữ liệu thu thập trong một giai đoạn sẽ không còn phù hợp với thế giới khi thời trang, sản phẩm và phương tiện thay đổi.
Biểu hiện của thiên lệch dataset#
Model nhận thức cho xe tự lái được huấn luyện chủ yếu trong điều kiện khí hậu nắng ráo sẽ phát hiện người đi bộ kém tin cậy hơn trong tuyết, mưa và bóng tối; các nhóm phát triển xe tự hành cho AI trong ngành ô tô thu thập dữ liệu ban đêm và thời tiết xấu để thu hẹp khoảng cách này. Trong phân tích ảnh y tế, model da liễu được huấn luyện trên các bộ sưu tập chủ yếu gồm người có làn da sáng hoạt động kém hơn trên làn da sẫm màu; các hệ thống nhận dạng khuôn mặt cũng cho thấy khoảng cách nhân khẩu học mà Gender Shades đã đo lường. Trong từng trường hợp, độ chính xác tổng thể vẫn có vẻ cao vì nhóm đa số chi phối giá trị trung bình.
Đoạn mã bên dưới minh họa cụ thể cơ chế này bằng scikit-learn. Nhóm B tuân theo quy luật khác nhóm A; cùng một random forest được huấn luyện hai lần trên 1.000 mẫu, lần đầu với nhóm B chiếm 2% dữ liệu rồi lần sau với dữ liệu được cân bằng:
import numpy as np
from sklearn.ensemble import RandomForestClassifier
rng = np.random.default_rng(0)
def sample(n, group):
"""Draw n points from group A (label set by feature 0) or group B (label set by feature 1)."""
center = 0.0 if group == "A" else 3.0
X = rng.normal(center, 1.0, size=(n, 2))
return X, X[:, 0 if group == "A" else 1] > center
for n_a, n_b in [(980, 20), (500, 500)]: # skewed, then balanced training sets of the same size
Xa, ya = sample(n_a, "A")
Xb, yb = sample(n_b, "B")
model = RandomForestClassifier(random_state=0).fit(np.vstack([Xa, Xb]), np.concatenate([ya, yb]))
acc = {g: model.score(*sample(2000, g)) for g in "AB"} # held-out accuracy per group
print(f"train A:B = {n_a}:{n_b} -> accuracy on A {acc['A']:.3f}, on B {acc['B']:.3f}")Khi được huấn luyện trên tập dữ liệu lệch, model đạt kết quả hoàn hảo trên nhóm A (1.000) nhưng chỉ dự đoán đúng 76,8% số lần trên nhóm B. Cân bằng cùng 1.000 mẫu giúp kết quả của nhóm B tăng lên 98,3%, trong khi nhóm A giảm nhẹ xuống 97,2%. Trên một tập kiểm thử pha trộn theo tỷ lệ 98:2 giống dữ liệu huấn luyện lệch, model đầu tiên sẽ đạt điểm tổng thể khoảng 99,5%, che giấu hoàn toàn khoảng cách này.
Thiên lệch dataset và các khái niệm liên quan#
- Thiên lệch thuật toán: Sai lệch do thiết kế, mục tiêu hoặc cách triển khai model tạo ra, chẳng hạn hàm loss ưu tiên các lớp đa số. Thiên lệch dataset là một nguyên nhân chính gây thiên lệch thuật toán và hai loại thường cộng hưởng với nhau.
- Thiên lệch trong AI: Thuật ngữ bao quát chỉ sự bất công có tính hệ thống trong các hệ thống AI, trái nghĩa với tính công bằng trong AI. Tiêu chuẩn của NIST về xác định và quản lý thiên lệch trong AI phân loại nguồn gốc của thiên lệch thành các nhóm hệ thống, con người và thống kê hoặc tính toán; dataset không đại diện thuộc nhóm cuối.
- Data drift: Sự thay đổi phân phối đầu vào sau khi triển khai. Thiên lệch dataset tồn tại ngay từ lúc thu thập, còn drift tạo ra khoảng cách về sau, ngay cả khi dữ liệu ban đầu có tính đại diện.
Phát hiện và giảm thiểu thiên lệch dataset#
Phát hiện thiên kiến trong dataset thị giác bắt đầu bằng việc lập tài liệu và đánh giá riêng theo từng nhóm. Datasheets for Datasets đề xuất ghi lại ai thu thập dữ liệu, bằng cách nào và vì mục đích gì, để người dùng đánh giá dữ liệu đại diện cho những ai. Đánh giá nên báo cáo metric theo nhóm, địa điểm, camera hoặc điều kiện, cùng ma trận nhầm lẫn cho từng lát cắt, thay vì chỉ đưa ra một giá trị trung bình. Kiểm tra trực tiếp dữ liệu cũng hữu ích: trên Ultralytics Platform, tab Classes của mỗi dataset biểu đồ số lượng annotation theo lớp, có tùy chọn trục log cho dữ liệu mất cân bằng; bảng Clustering biểu diễn embedding ảnh theo lớp hoặc split, giúp phát hiện vùng thiếu dữ liệu trước khi huấn luyện.
Giải pháp phụ thuộc vào nguyên nhân. Thu thập dữ liệu có mục tiêu cho các phân nhóm hoạt động yếu sẽ xử lý trực tiếp nguyên nhân, còn active learning giúp chọn ảnh mới cần gán nhãn. Data augmentation tạo biến thể về ánh sáng, hướng và tỷ lệ; dữ liệu tổng hợp có thể bổ sung các điều kiện hiếm như cảnh ban đêm hoặc lỗi bất thường. Tăng trọng số hoặc lấy mẫu vượt mức các ví dụ ít được đại diện, hoặc tối ưu hóa cho nhóm có hiệu năng thấp nhất bằng tối ưu hóa bền vững theo phân phối, sẽ thay đổi những gì quá trình huấn luyện khuyến khích. Sau khi triển khai, giám sát model theo từng phân nhóm giúp phát hiện những khoảng cách xuất hiện khi điều kiện thay đổi.










