MLOps 01: Data testing, tại sao, cái gì và như thế nào

Tôi không thích viết test và các bạn tôi cũng thế. Tại sao mình phải double công việc lên để viết test, sai thì sửa lại nhanh thôi, đâu cần phải mất thời gian như vậy. Cho đến một ngày tôi được join vào một dự án khủng, rất nhiều module và nhiều thành viên tham gia, lúc này tôi mới hiểu tại sao mọi người cần viết test và viết test từ sớm. Tôi nhận ra đó là khoản đầu tư có giá trị giúp hạn chế được technical debt về sau. Nếu để nợ này càng nhiều, về sau team bạn sẽ mất thời gian để sửa code, dự án sẽ chậm đưa ra được các features mới hơn.

Trong các dự án về Data, viết test lại càng quan trọng, nếu không có quy trình data quality management từ lúc đọc dữ liệu thô, tiền xử lý cho đến lúc train model thì toàn bộ dữ liệu down stream sẽ bị ảnh hưởng. Lúc này, ta phải mất thời gian sửa code và chạy lại toàn bộ data pipeline từ đầu, rất painful.

Bài viết này sẽ trình bày lý do tại sao ta cần viết test, test gì trên dữ liệu, test như thế nào.