Trang chủ Thế giới nói gì MLOps: lời giải cho việc triển khai mô hình học máy

MLOps: lời giải cho việc triển khai mô hình học máy

Theo Deeplearning.ai, chỉ có 22% các doanh nghiệp sử dụng học máy đã triển khai thành công mô hình của mình. Vậy điều gì làm cho nó khó đến vậy? Nguyên nhân ở đâu và MLOps giải bài toán này như thế nào?

Nhận diện thách thức

Đối với phát triển phần mềm theo cách truyền thống, một tập hợp các phương pháp được gọi là DevOps đã giúp đưa phần mềm vào sản xuất chỉ trong vài phút, đồng thời đảm bảo phần mềm hoạt động ổn định. DevOps dựa vào các công cụ, tự động hóa và quy trình làm việc để loại bỏ những sự cố bất ngờ và cho phép các nhà phát triển tập trung vào các vấn đề thực tế cần được giải quyết. Cách tiếp cận này đã trở nên phổ biến đối với rất nhiều doanh nghiệp. Vậy tại sao chúng lại không thể được áp dụng tương tự đối với Học máy?

Nguyên nhân là có sự khác biệt cơ bản giữa học máy (Machine Learning – ML) và phương pháp phân tích dữ liệu truyền thống. Học máy không chỉ là code, mà còn là code kết hợp với data (dữ liệu). Mô hình Học máy được tạo ra bằng cách điều chỉnh các tham số của mô hình sử dụng dữ liệu huấn luyện. Do đó, điều này sẽ ảnh hưởng đến hành vi của mô hình trong quá trình triển khai.

ML = Code + Data. Ảnh: Towards Data Science
ML = Code + Data. Ảnh: Towards Data Science

Mặc dù code được tạo ra một cách cẩn thận trong môi trường phát triển được kiểm soát, nhưng nguồn dữ liệu thực là vô tận, không ngừng thay đổi và nằm ngoài tầm quản lý. Có thể tưởng tượng, code và dữ liệu nằm trong các mặt phẳng riêng biệt, có cùng chiều thời gian nhưng độc lập về tất cả các yếu tố khác. Thách thức của học máy là làm sao tạo ra một cầu nối giữa hai mặt phẳng này một cách có kiểm soát.

Tưởng tượng code và dữ liệu nằm trong các mặt phẳng riêng biệt, có cùng chiều thời gian nhưng độc lập về tất cả các yếu tố khác.
Tưởng tượng code và dữ liệu nằm trong các mặt phẳng riêng biệt, có cùng chiều thời gian nhưng độc lập về tất cả các yếu tố khác. Ảnh: Towards Data Science

Sự tách biệt cơ bản giữa code và dữ liệu gây ra một số thách thức quan trọng đối với việc triển khai các mô hình ML/AI trong thực tế, ví dụ như:

  • Triển khai chậm, dễ gián đoạn và không nhất quán
  • Thiếu khả năng tái tạo
  • Giảm hiệu suất

Xác định giải pháp

Để tháo gỡ những khó khăn này, giải pháp được đưa ra là kết hợp các phương pháp thực tế từ DevOps, Data Engineering (kỹ thuật dữ liệu), và một số phương pháp đặc thù của Học máy. Và MLOps chính là giao điểm của ba thành tố này.

MLOps là giao điểm của DevOps, Data Engineering và Machine Learning
MLOps là giao điểm của DevOps, Data Engineering và Machine Learning. Ảnh: Towards Data Science.

MLOps (machine learning operations) là sự kết hợp của Machine Learning (Học máy) và Operations (vận hành) nhằm mục đích triển khai và duy trì các hệ thống ML trong sản xuất một cách đáng tin cậy và hiệu quả.

MLOps tập hợp các phương pháp tự động hóa vòng đời của các thuật toán học máy trong quá trình sản xuất ở tất cả các bước xây dựng hệ thống ML, từ huấn luyện mô hình ban đầu đến triển khai và đào tạo lại dựa trên dữ liệu mới.

Để triển khai thành công MLOps, cần đảm bảo các yếu tố sau đây:

  • Đội ngũ kết hợp. Một đội ngũ sản xuất ML sẽ bao gồm Nhà khoa học dữ liệu hoặc Kỹ sư ML, Kỹ sư DevOps và Kỹ sư dữ liệu.
  • ML Pipelines: Phần lớn các mô hình sẽ cần 2 phiên bản pipelines để đào tạo và ứng dụng. Nguyên nhân là do thông thường, các định dạng dữ liệu và cách truy cập dữ liệu rất khác nhau giữa các thời điểm, đặc biệt đối với các mô hình chạy theo yêu cầu thời gian thực. ML Pipeline thuần túy là code và độc lập với các trường hợp dữ liệu cụ thể. Do đó,  ML Pipeline dễ dàng theo dõi và kiểm soát các phiên bản, đồng thời tự động hóa việc triển khai với CI/CD pipeline. Điều này giúp liên kết code với dữ liệu theo cách có cấu trúc và tự động.
ML Pipelines kết nối dữ liệu và code để sản xuất mô hình và đưa ra dự đoán.
ML Pipelines kết nối dữ liệu và code để sản xuất mô hình và đưa ra dự đoán. Ảnh: Towards Data Science.
  • Lập phiên bản mô hình và dữ liệu: Cần phải phiên bản hóa dữ liệu và liên kết từng mô hình được đào tạo với các phiên bản chính xác của code, dữ liệu và siêu tham số đã được sử dụng. Mô hình và siêu dữ liệu có thể được theo dõi trong hệ thống kiểm soát phiên bản tiêu chuẩn như Git. 
  • Đánh giá mô hình: Không có mô hình ML nào cho kết quả chính xác 100% cả, do đó, việc đánh giá mô hình thường mang tính thống kê nhiều hơn là quyết định đạt/không đạt.
  • Đánh giá dữ liệu: Thông thường, đánh giá dữ liệu bao gồm định dạng và kích thước tệp, các giá trị rỗng hoặc không hợp lệ. Xác thực dữ liệu cũng tương tự như unit test trong code domain. Ngoài các xác nhận cơ bản mà bất kỳ Data Pipeline nào thực hiện, các ML pipeline cũng phải xác nhận các thuộc tính cấp cao hơn của dữ liệu đầu vào, như cách dữ liệu thay đổi trong thực tế hay những bất thường do cách xử lý dữ liệu gây ra. 
  • Giám sát: Giám sát hệ thống sản xuất là điều cần thiết để giữ cho chúng hoạt động tốt. Đối với các hệ thống ML, việc giám sát thậm chí còn trở nên quan trọng hơn, vì hiệu suất của chúng không chỉ phụ thuộc vào các yếu tố có thể kiểm soát, như cơ sở hạ tầng và phần mềm, mà còn dựa vào dữ liệu – yếu tố ít khả năng kiểm soát được. Do đó, ngoài việc theo dõi các số liệu tiêu chuẩn như độ trễ, lưu lượng truy cập, lỗi và độ bão hòa, chúng ta cũng cần theo dõi hiệu suất dự đoán mô hình.

Tổng kết

Các phương pháp chính của MLOps, cũng như mối liên hệ của chúng với các phương pháp DevOps và Kỹ thuật dữ liệu được tóm tắt lại trong bảng dưới đây.

DevOpsData EngineeringMLOps
Quản lý phiên bảnQuản lý phiên bản codeQuản lý phiên bản codeData LineageQuản lý phiên bản codePhiên bản hóa dữ liệu
Phiên bản hóa mô hình
PipelineKhông cóData pipeline/ETLTraining ML PipelineServing ML Pipeline
Đánh giá hành viunit testUnit testĐánh giá mô hình
CI/CDTriển khai code to production Triển khai code to data pipelineTriển khai code to production và Training ML Pipeline
Xác thực dữ liệuKhông cóXác thực định dạng và nghiệp vụXác thực thống kê
Giám sátSLOSLOSLO + differential monitoring, statistical sliced monitoring 

(Nguồn tham khảo: Towards Data Science)

BÀI ĐỌC NHIỀU

Bài phỏng vấn Giáo sư Vũ Hà Văn

Toufik Mansour(**)(*) Giáo sư Vũ Hà Văn sinh ra và học tập đến hết trung học phổ thông tại Việt Nam. Năm 1994, ông...

Giải mã Vaccine thế hệ mới chống COVID-19

Đại dịch COVID-19 diễn biến phức tạp ở quy mô toàn cầu suốt cả năm nay, với số ca nhiễm và tử vong không...

Khái quát về Data Pipeline

Dữ liệu là chìa khóa trong việc khám phá tri thức sâu rộng, nâng cao hiệu quả quy trình và thúc đẩy đưa ra...

VinBigdata đứng số 01 cuộc thi Global Wheat Detection, CVPPP 2020

Sau 2 tháng tranh tài, vượt qua 2245 đội thi hùng mạnh của thế giới, ngày 28/08/2020, Phòng Xử lý ảnh y tế, Viện...

BÀI ĐƯỢC LỰA CHỌN

Tìm hiểu về một Mô hình dự báo dịch Covid-19 từ Vũ Hán

Chúng tôi trình bày và giải thích về một mô hình dự báo ngắn hạn và dài hạn (gọi tắt là mô hình SEIR-C19)...

Giải Nobel Hóa học 2020 vinh danh công nghệ chỉnh sửa gene

Giải Nobel Hóa học năm nay được trao cho thành tựu “viết lại bộ mã của sự sống” của hai nhà khoa học nữ:...

Giải Nobel Y học 2020 vinh danh thành tựu nghiên cứu virus viêm gan C

Giải Nobel Y học 2020 được trao cho Harvey J. Alter, Michael Houghton và Charles M. Rice. Ba nhà khoa học được trao giải vì đã có những...

Điều trị tự kỷ bằng ghép tế bào gốc phối hợp với can thiệp giáo dục

1. Giới thiệu chungTự kỷ (autism) hay rối loạn phổ tự kỷ (autism spectrum disorder) là thuật ngữ được dùng để chỉ một...

BÀI MỚI NHẤT

Thế giới của chúng ta rộng lớn hay bé nhỏ?

Sự rộng lớn hay bé nhỏ của một không gian được đo bằng khoảng cách. Vậy đâu là khoảng cách giữa mọi người trên...

08 trang blog dân Khoa học Dữ liệu nên đọc

08 trang blog dưới đây sẽ cung cấp cho bạn kho tri thức nền tảng về Khoa học Dữ liệu, cùng những thông tin...

Garbage in garbage out: Từ góc độ gán nhãn dữ liệu

Để có dữ liệu sạch và có giá trị đối với các thuật toán thì dữ liệu cần được gán nhãn và chú giải...

06 website luyện code dành cho dân lập trình

Giải quyết các bài toán lập trình thực tế là một trong những cách giúp các coders "nâng hạng" nhanh nhất. Top 06 website...