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