ai-331Đọc toàn bộ đề miễn phí

StandardScaler chỉ học từ train

Phân biệt fit trên train với transform trên test để tránh data leakage.

AICơ bản25 phút

Tiến độ của tôi ở bài này

Điểm được lưu vào tài khoản sau khi chấm bài.

Đang tải điểm của bạn…

Kiến thức và chủ đề

scikit-learnstandardizationdata-leakagefit-transform

Kiến thức tiên quyết: 2D numeric array, mean và standard deviation.

Nội dung đề bài

Mục tiêu kiến thức

Phân biệt fit trên train với transform trên test để tránh data leakage.

Mô tả bài toán

Đây là bài số 331 trong tầng Dữ liệu và tiền xử lý bằng thư viện. Bài dùng thư viện sklearn.preprocessing.StandardScaler trên dữ liệu nhỏ, cố định và chạy CPU; mục tiêu là hiểu workflow chứ không bắt học viên tự viết lại thư viện.

Yêu cầu

Fit StandardScaler đúng một lần trên train; dùng scaler đó transform train và test; trả thêm mean và scale đã học.

def standard_scale_train_only(train, test):

Input

Hai ma trận số 2D train và test có cùng số feature.

Output

Dictionary gồm train, test, mean và scale; ma trận làm tròn 6 chữ số.

Ràng buộc

Không gộp hai tập để fit và không fit scaler mới trên test.

Ví dụ

Giải thích

Train [[1],[2],[3]] có mean 2; test [[4]] phải thành 2.44949 theo scale train, không phải 0.

3 cấp độ gợi ýMở dần khi bạn thật sự cần hỗ trợ.
Phân tích lời giảiGiải thích hướng tư duy và thuật toán.
Code tham khảoDùng để đối chiếu sau khi tự làm.

Gợi ý và lời giải chỉ mở sau khi bạn bấm Nộp bài. Giáo viên và quản trị viên mở được ngay.

Góp ý & báo lỗi bài tập

Đề bài chưa rõ, test có vấn đề hay bạn có ý tưởng giúp bài tốt hơn? Gửi cho đội ngũ AI Empire nhé — mỗi góp ý đều được đọc.