Một số hạng mục kỹ thuật cần sử dụng khối lượng công việc của kỹ sư CNTT, chẳng hạn như đảm bảo cơ sở hạ tầng điện toán đáng tin cậy, có thể mở rộng và an toàn. Hầu hết các tổ chức đã đầu tư vào các khả năng này và có thể hưởng lợi bằng cách tận dụng chúng cho quy trình công việc đào tạo AI.
Để có các năng lực này có thể kết hợp điện toán đám mây và hệ thống truyền thống tại chỗ (DC, máy chủ hoạt động tại tổ chức). Ý tưởng là sẽ tận dụng được khả năng nâng cao của các bộ tăng tốc học máy chuyên dụng của điện toán đám mây.
Ngoài ra, một tổ chức cần quản lý cấu hình chuẩn hóa và khả năng CI/CD để xây dựng, thử nghiệm, phát hành và vận hành các hệ thống phần mềm một cách nhanh chóng và đáng tin cậy, bao gồm cả các hệ thống đào tạo AI.
Trên cơ sở đó hình thành một bộ các khả năng đào tạo AI cốt lõi tạo sự chủ động trong thử nghiệm, xử lý dữ liệu, đào tạo mô hình, đánh giá mô hình, sử dụng mô hình, thử nghiệm trực tuyến, giám sát mô hình, dây truyền đào tạo AI.
Sau đây là tóm lược về các nhóm năng lực cần thiết để tổ chức phát triển học máy cho AI:
Khả năng thử nghiệm cho phép các nhà khoa học dữ liệu và các nhà nghiên cứu học máy của bạn cùng nhau thực hiện phân tích dữ liệu khám phá, tạo kiến trúc mô hình nguyên mẫu và triển khai các thói quen đào tạo. Môi trường học máy cũng nên cho phép họ viết mã nguồn theo mô-đun, có thể tái sử dụng và có thể kiểm tra được, được kiểm soát phiên bản.
Các chức năng chính trong thử nghiệm bao gồm:
• Cung cấp môi trường phát triển (lập trình, v.v..) được tích hợp với các công cụ kiểm soát phiên bản (như Git)
• Theo dõi các thử nghiệm, bao gồm thông tin về dữ liệu, siêu tham số và số liệu đánh giá để tái tạo và so sánh.
• Phân tích và trực quan hóa dữ liệu và mô hình.
• Hỗ trợ khám phá các tập dữ liệu, tìm kiếm các thử nghiệm và xem xét các triển khai.
• Tích hợp với các dịch vụ dữ liệu và dịch vụ học máy khác trong nền tảng của bạn.
Khả năng xử lý dữ liệu cho phép bạn chuẩn bị và chuyển đổi lượng lớn dữ liệu cho máy học ở quy mô lớn trong quá trình phát triển mô hình AI, trong các công đoạn đào tạo liên tục và trong việc phục vụ sử dụng để dự đoán sau này.
Các chức năng chính trong xử lý dữ liệu bao gồm:
• Hỗ trợ thực thi tương tác (ví dụ: từ sổ ghi chép) để thử nghiệm nhanh và cho các công việc dài hạn trong sản xuất sau này.
• Cung cấp các kết nối dữ liệu cho nhiều nguồn dữ liệu và dịch vụ khác nhau, cũng như bộ mã hóa và giải mã dữ liệu cho nhiều cấu trúc và định dạng dữ liệu khác nhau.
• Cung cấp cả chuyển đổi dữ liệu phong phú và hiệu quả cũng như kỹ thuật tính năng học máy cho dữ liệu có cấu trúc (dạng bảng) và không có cấu trúc (văn bản, hình ảnh, v.v.).
• Hỗ trợ xử lý dữ liệu theo lô và luồng có thể mở rộng cho khối lượng công việc đào tạo AI và chạy để phục vụ.
Khả năng đào tạo mô hình cho phép bạn chạy các thuật toán mạnh mẽ một cách hiệu quả và tiết kiệm chi phí để đào tạo các mô hình ML.
Đào tạo mô hình phải có khả năng mở rộng theo quy mô của cả mô hình và tập dữ liệu được sử dụng để đào tạo.
Các chức năng chính trong đào tạo mô hình bao gồm:
• Hỗ trợ các framework học máy phổ biến và hỗ trợ tùy chỉnh cấu hình các môi trường chạy.
• Hỗ trợ đào tạo phân tán quy mô lớn với các chiến lược khác nhau cho nhiều GPU và nhiều workers.
• Cho phép sử dụng trình tăng tốc học máy nếu cần.
• Cho phép điều chỉnh siêu tham số hiệu quả và tối ưu hóa mục tiêu ở quy mô lớn.
• Lý tưởng nhất là cung cấp chức năng học máy tự động (AutoML) tích hợp sẵn, bao gồm lựa chọn và thiết kế tính năng tự động cũng như tìm kiếm và lựa chọn kiến trúc mô hình tự động.
Khả năng đánh giá mô hình cho phép bạn đánh giá hiệu quả của mô hình, tương tác trong quá trình thử nghiệm và tự động trong quá trình sản xuất.
Các chức năng chính trong đánh giá mô hình bao gồm:
• Thực hiện chấm điểm hàng loạt các mô hình của bạn trên các tập dữ liệu đánh giá ở quy mô lớn.
• Tính toán các số liệu đánh giá trên các thước đo được chuẩn bị sẵn hoặc tùy chỉnh riêng cho từng mô hình trên các phần khác nhau của dữ liệu.
• Theo dõi hiệu suất dự đoán của mô hình đã được đào tạo trên các lần thực hiện đào tạo liên tục khác nhau.
• Trực quan và so sánh hiệu suất của các mô hình khác nhau.
• Cung cấp các công cụ để phân tích giả định và để xác định các vấn đề về thiên kiến và công bằng của AI.
• Cho phép diễn giải hành vi của mô hình bằng nhiều kỹ thuật AI có thể giải thích được.
Năng lực này cho phép bạn triển khai và phục vụ các mô hình của mình trong môi trường sản xuất.
Các chức năng chính trong phục vụ mô hình bao gồm:
• Cung cấp xử lý với độ trễ thấp, gần thời gian thực (khi trực tuyến) và xử lý dự đoán hàng loạt khối lượng lớn (khi ngoại tuyến).
• Cung cấp hỗ trợ tích hợp cho các frameworks phục vụ học máy phổ biến (ví dụ: TensorFlow Serving, TorchServe, Nvidia Triton và các framework khác cho các mô hình Scikit-learn và XGBoost) và cho phát tùy chỉnh cấu hình theo mục đích chạy.
• Cho phép chạy quy trình dự đoán tổ hợp, trong đó nhiều mô hình được gọi theo thứ tự hoặc đồng thời trước khi kết quả được tổng hợp, ngoài ra cho phép các quá trình tiền xử lý và hậu xử lý được tích hợp nếu cần.
• Cho phép sử dụng hiệu quả các trình tăng tốc suy luận học máy với tính năng tự động mở rộng tài nguyên phần cứng để phù hợp với khối lượng công việc đột biến và cân bằng chi phí với độ trễ.
• Hỗ trợ khả năng giải thích về mô hình bằng cách sử dụng các kỹ thuật như ghi dấu tính năng cho một mô hình nhất định.
• Hỗ trợ ghi nhật ký các yêu cầu phục vụ và các phản hồi phục vụ của mô hình AI đã thực hiện để phân tích nguội.
Thử nghiệm trực tuyến (UAT) là khả năng thử nghiệm trực tiếp trên môi trường thực cho phép bạn hiểu cách các mô hình mới được đào tạo hoạt động trong cài đặt sản xuất so với các mô hình hiện tại (nếu có) trước khi bạn phát hành mô hình mới để sản xuất.
Ví dụ: bằng cách sử dụng một tập hợp con nhỏ của các phục vụ đã xử lý, bạn sử dụng thí nghiệm để hiểu tác động của hệ thống đề xuất mới đối với lượt nhấp và tỷ lệ chuyển đổi. Kết quả của thử nghiệm này phải được tổng hợp vào quá trình đăng ký mô hình để tạo điều kiện cho quyết định phát hành mô hình để sản xuất thực tế.
Thử nghiệm thực này nâng cao độ tin cậy của các bản phát hành AI của bạn bằng cách giúp bạn quyết định loại bỏ các mô hình AI hoạt động kém và quảng bá các mô hình hoạt động tốt.
Các chức năng chính trong thử nghiệm trực tuyến bao gồm:
• Hỗ trợ triển khai canary và shadow.
• Hỗ trợ phân chia lưu lượng và thử nghiệm A/B.
• Hỗ trợ thử nghiệm multi-armed bandit (MAB).
Khả năng giám sát mô hình cho phép bạn theo dõi hiệu quả và hiệu suất của các mô hình đã triển khai trong quá trình sản xuất để đảm bảo chất lượng dự đoán và tính liên tục của doanh nghiệp.
Khả năng này thông báo cho bạn nếu các mô hình của bạn đã cũ và cần được điều tra và cập nhật.
Các chức năng chính trong giám sát mô hình bao gồm:
• Đo các số liệu hiệu quả của mô hình như độ trễ và sử dụng tài nguyên phục vụ.
• Phát hiện độ lệch dữ liệu, bao gồm các bất thường về lược đồ và sự dịch chuyển và trôi dạt dữ liệu và khái niệm.
• Tích hợp giám sát với khả năng đánh giá mô hình để liên tục đánh giá hiệu suất hiệu quả của mô hình đã triển khai khi có nhãn sự thật cơ bản.
Năng lực này cho phép bạn lập công cụ, sắp xếp và tự động hóa các dây truyền đào tạo phức tạp trong sản xuất. Các quy trình công việc đào tạo là phối hợp các thành phần khác nhau, trong đó mỗi thành phần thực hiện một tác vụ cụ thể trong dây truyền.
Các chức năng chính trong đường ống ML bao gồm:
• Kích hoạt dây truyền theo yêu cầu, theo lịch trình hoặc để phản hồi các sự kiện đã chỉ định.
• Cho phép thực thi tương tác cục bộ để gỡ lỗi trong quá trình phát triển ML.
• Tích hợp với khả năng theo dõi siêu dữ liệu ML để nắm bắt các tham số thực thi đường ống và tạo ra các hiện vật.
• Cung cấp một bộ các thành phần tích hợp sẵn cho các tác vụ ML phổ biến và cũng cho phép các thành phần tùy chỉnh.
• Chạy trên các môi trường khác nhau, bao gồm máy cục bộ và nền tảng đám mây có thể mở rộng.
• Tùy chọn, cung cấp các công cụ dựa trên GUI để thiết kế và xây dựng đường ống.
Khả năng đăng ký mô hình cho phép bạn quản lý vòng đời của các mô hình ML trong kho lưu trữ trung tâm. Điều này đảm bảo chất lượng của các mô hình sản xuất và cho phép khám phá mô hình.
Các chức năng chính trong đăng ký mô hình bao gồm:
• Đăng ký, sắp xếp, theo dõi và tạo phiên bản cho các mô hình ML đã được đào tạo và triển khai của bạn.
• Lưu trữ siêu dữ liệu mô hình và các phụ thuộc thời gian chạy để triển khai.
• Duy trì tài liệu và báo cáo mô hình—ví dụ: sử dụng thẻ mô hình.
• Tích hợp với khả năng đánh giá và triển khai mô hình và theo dõi các số liệu đánh giá trực tuyến và ngoại tuyến cho các mô hình.
• Quản lý quy trình khởi chạy mô hình: xem xét, phê duyệt, phát hành và khôi phục. Các quyết định này dựa trên một số số liệu hiệu suất và tính công bằng ngoại tuyến và trên kết quả thử nghiệm trực tuyến.
Kho dữ liệu và tính năng cho phép bạn thống nhất định nghĩa và lưu trữ các tài sản dữ liệu cho máy học.
Việc có một kho lưu trữ trung tâm các tài sản dữ liệu mới, chất lượng cao cho phép chia sẻ, khám phá và tái sử dụng. Kho lưu trữ cũng cung cấp tính nhất quán của dữ liệu để đào tạo và suy luận. Điều này giúp các nhà khoa học dữ liệu và nhà nghiên cứu học máy tiết kiệm thời gian chuẩn bị dữ liệu và phâm tích chức năng, những việc thường chiếm khá nhiều thời gian của họ.
Các chức năng chính trong kho lưu trữ dữ liệu và tính năng bao gồm:
• Cho phép chia sẻ, khám phá, tái sử dụng và quản lý phiên bản của tài sản dữ liệu.
• Cho phép thu thập theo thời gian thực và phục vụ độ trễ thấp cho luồng sự kiện và khối lượng công việc dự đoán trực tuyến.
• Cho phép thu thập và phục vụ hàng loạt băng thông cao cho các quy trình trích xuất, chuyển đổi, tải (ETL) và đào tạo mô hình, cũng như cho khối lượng công việc chấm điểm.
• Cho phép đánh phiên bản tính năng cho các truy vấn tại một thời điểm cụ thể.
• Hỗ trợ nhiều phương thức dữ liệu khác nhau, bao gồm dữ liệu dạng bảng, hình ảnh và văn bản.
Tài sản dữ liệu ML có thể được quản lý ở cấp thực thể cụ thể hoặc thực thể tổng hợp với đa dạng cấu trúc.
Ví dụ, kho lưu trữ tính năng có thể chứa một thực thể được gọi là khách hàng, bao gồm các tính năng như nhóm tuổi, mã bưu chính và giới tính. Mặt khác, kho lưu trữ tập dữ liệu có thể bao gồm tập dữ liệu khách hàng chung, bao gồm các tính năng từ các thực thể khách hàng và sản phẩm, cũng như nhật ký mua hàng và các dữ liệu tương tác trên web.
Các loại artifacts (sản phẩm) học máy khác nhau được tạo ra trong các quy trình khác nhau của vòng đời vận hành học máy, bao gồm thống kê mô tả và lược đồ dữ liệu, các mô hình đã được huấn luyện, cùng kết quả đánh giá. Metadata (siêu dữ liệu) học máy là thông tin về các artifacts này, bao gồm vị trí, loại, thuộc tính và mối liên hệ với các thí nghiệm và quá trình chạy. Khả năng theo dõi metadata và artifact học máy là nền tảng cho tất cả các khả năng vận hành học máy khác. Khả năng này cho phép tái tạo và gỡ lỗi các tác vụ và dây truyền học máy phức tạp. Các chức năng chính trong theo dõi metadata và artifact học máy bao gồm:
• Cung cấp khả năng truy xuất nguồn gốc và theo dõi lineage (dòng dõi) của các artifacts học máy.
• Chia sẻ và theo dõi cấu hình tham số thí nghiệm và pipeline.
• Lưu trữ, truy cập, kiểm tra, trực quan hóa, tải xuống và lưu trữ các artifacts học máy.
• Tích hợp với tất cả các khả năng vận hành ML khác.
Một số thuật ngữ:
- Artifacts: Sản phẩm đầu ra của quá trình ML, có thể dịch là "tạo phẩm" nhưng thường giữ nguyên trong ngữ cảnh kỹ thuật
- Metadata: Siêu dữ liệu - thông tin mô tả về dữ liệu
- Pipeline: Chuỗi xử lý dữ liệu tự động, giữ nguyên do tính phổ biến
- Lineage tracking: Theo dõi dòng dõi/xuất xứ của dữ liệu)