Dữ liệu thô phải được thiết kế tính năng (đã biến đổi). Khi nào bạn nên chuyển đổi không? Nói chung, bạn có thể thực hiện kỹ thuật trích xuất tính năng trong một hai khoảng thời gian sau:
- Trước huấn luyện mô hình.
- Trong khi huấn luyện mô hình.
Chuyển đổi dữ liệu trước khi huấn luyện
Trong phương pháp này, bạn làm theo 2 bước:
- Viết mã hoặc sử dụng các công cụ chuyên dụng để chuyển đổi dữ liệu thô.
- Lưu trữ dữ liệu đã biến đổi ở nơi mô hình có thể nhập, chẳng hạn như như trên đĩa.
Ưu điểm
- Hệ thống chỉ chuyển đổi dữ liệu thô một lần.
- Hệ thống có thể phân tích toàn bộ tập dữ liệu để xác định giá trị chính xác nhất chiến lược chuyển đổi.
Nhược điểm
- Bạn phải tạo lại các phép biến đổi tại thời điểm dự đoán. Cảnh giác độ lệch hướng phân phát!
Độ lệch khi phân phát nội dung huấn luyện sẽ nguy hiểm hơn khi hệ thống của bạn hoạt động linh động (trực tuyến). Trên hệ thống sử dụng suy luận động, phần mềm biến đổi tập dữ liệu thô thường khác với phần mềm cung cấp dự đoán, vì điều này có thể làm sai lệch quá trình phân phát huấn luyện. Ngược lại, các hệ thống sử dụng suy luận tĩnh (ngoại tuyến) đôi khi có thể sử dụng cùng một phần mềm.
Chuyển đổi dữ liệu trong khi huấn luyện
Trong phương pháp này, phép biến đổi là một phần của mã mô hình. Mô hình nhập dữ liệu thô và biến đổi dữ liệu đó.
Ưu điểm
- Bạn vẫn có thể sử dụng các tệp dữ liệu thô như cũ nếu thay đổi các phép biến đổi.
- Bạn đã đảm bảo được các phép biến đổi giống nhau tại thời gian huấn luyện và dự đoán.
Nhược điểm
- Các phép biến đổi phức tạp có thể làm tăng độ trễ của mô hình.
- Quá trình chuyển đổi diễn ra đối với từng lô.
Việc chuyển đổi dữ liệu theo từng lô có thể rất khó khăn. Ví dụ: giả sử bạn muốn sử dụng quy trình chuẩn hoá điểm Z để chuyển đổi dữ liệu số thô. Chuẩn hoá điểm Z yêu cầu giá trị trung bình và độ lệch chuẩn của đối tượng. Tuy nhiên, việc biến đổi mỗi lô có nghĩa là bạn sẽ chỉ có quyền truy cập vào một lô dữ liệu chứ không phải toàn bộ tập dữ liệu. Vì vậy, nếu các lô có mức giá cao biến thể, chẳng hạn như -2,5 trong một lô sẽ không có cùng ý nghĩa dưới dạng -2,5 trong một lô khác. Để khắc phục vấn đề này, hệ thống của bạn có thể tính trước giá trị trung bình và độ lệch chuẩn trên toàn bộ tập dữ liệu rồi sử dụng chúng làm hằng số trong mô hình.