Logo Zephyrnet

Tổng quan về MLOps với công cụ nguồn mở

Ngày:

Bài báo này đã được xuất bản như một phần của Blogathon Khoa học Dữ liệu.

Cốt lõi của dự án khoa học dữ liệu là dữ liệu và sử dụng nó để xây dựng các mô hình dự đoán và mọi người đều hào hứng và tập trung vào việc xây dựng một mô hình ML sẽ cho chúng ta một kết quả gần như hoàn hảo giống như kịch bản kinh doanh trong thế giới thực. Để đạt được kết quả này, người ta có xu hướng bỏ qua các khía cạnh khác nhau của một dự án khoa học dữ liệu, đặc biệt là các khía cạnh hoạt động. Vì các dự án ML có tính chất lặp đi lặp lại, nên việc theo dõi tất cả các yếu tố, cấu hình và kết quả có thể trở thành một nhiệm vụ rất khó khăn.

Với các nhóm khoa học dữ liệu đang phát triển và phân tán, sự cộng tác hiệu quả giữa các nhóm trở nên quan trọng. Các công cụ mã nguồn mở mà chúng ta sẽ khám phá trên blog này, cụ thể là Studio DVCMLFflow sẽ giúp chúng tôi giải quyết một số thách thức này bằng cách tự động theo dõi các thay đổi / kết quả từ mỗi lần lặp lại. Để bổ sung thêm, cả hai công cụ đều cung cấp cho chúng ta một giao diện người dùng rất tương tác, nơi kết quả được hiển thị gọn gàng và tất nhiên, giao diện người dùng có thể tùy chỉnh !!.

Bất kỳ điều kiện tiên quyết?

Tất cả những gì chúng ta cần là kiến ​​thức cơ bản về máy học, python và tài khoản kiểm soát phiên bản, ví dụ: Github. Trong blog này, Kaggle's Bộ dữ liệu về bệnh tim ở Nam Phi sẽ được sử dụng để chạy các thử nghiệm của chúng tôi. Biến mục tiêu của chúng tôi sẽ là CHD (bệnh tim mạch vành).

Chú thích: Chúng tôi sẽ sử dụng cùng một tập dữ liệu và xây dựng cùng một mô hình vì mục đích đơn giản cho cả trường hợp sử dụng DVC Studio và MLflow. Mục đích của chúng tôi là hiểu các tính năng của cả hai công cụ chứ không phải tinh chỉnh việc xây dựng mô hình.

Studio DVC

DVC là một công cụ / thư viện mã nguồn mở có thể được cắm vào các công cụ kiểm soát phiên bản như Github, Gitlab, Bitbucket, v.v. để nhập các dự án ML để thử nghiệm và theo dõi. Studio có giao diện người dùng để theo dõi các thử nghiệm / chỉ số. Để biết thêm về DVC, hãy khám phá Tính năng, đặc điểm.

Cài đặt & thiết lập: Sản phẩm pip cài đặt dvc sẽ ổn để cài đặt. Để biết thêm thông tin về việc cài đặt phiên bản windows, vui lòng tham khảo cài đặt DVC. Bạn có thể tải xuống / sao chép mã từ Github để tham khảo nhanh. Bạn có thể tải xuống / sao chép mã từ Github để tham khảo nhanh chóng.

Chúng tôi sẽ tải tập dữ liệu, chia nhỏ và sau đó thực hiện bước xây dựng mô hình. Tất cả mã / tệp có thể được tìm thấy trong thư mục src - bỏ qua phần hướng dẫn mã của phần này để giữ cho blog tương đối ngắn gọn. Bạn có thể truy cập mã hoàn chỉnh và hướng dẫn từ Blog của chúng tôi..

Trước khi tiến xa hơn, hãy xem qua cách thử nghiệm và KPI được theo dõi trong DVC.

Phòng thu DVC cho MLOps
Theo dõi thử nghiệm trong DVC

Nguồn: Tác giả

Như bạn đã nhận thấy ở trên, đầu ra nằm trong bảng điều khiển, chắc chắn không tương tác, còn các ô rất quan trọng đối với các mô hình ML thì sao? Có cách nào để lọc kết quả trên một ngưỡng xác định không? Ví dụ: Nếu chúng ta cần xem các thí nghiệm có độ chính xác cao hơn 0.7. Cách duy nhất là viết một đoạn mã để lọc dữ liệu cụ thể đó. Đó là nơi mà studio DVC làm cho nó rất đơn giản và tương tác. Chúng ta sẽ xem xét giao diện người dùng trong các phần tiếp theo.

Xưởng DV: Thiết lập phòng thu DVC bằng cách làm theo các bước dưới đây.

Bước 1: Điều hướng đến URL https://studio.iterative.ai, Đăng nhập bằng Github của bạn và bạn sẽ có thể thấy Thêm một chế độ xem ở phía trên bên phải của màn hình.

Bước 2: Kho lưu trữ GitHub mà chúng tôi có sẽ được ánh xạ tới studio DVC bằng cách nhấp vào Định cấu hình Cài đặt Tích hợp Git.

Bước 3: Sau khi hoàn thành bước 2, nó sẽ mở phần Tích hợp Git. Chọn kho lưu trữ và cung cấp quyền truy cập.

Phần tích hợp Git | MLOps
Lập bản đồ và cấp ac

Nguồn: Tác giả

Bước 4: Sau khi được ánh xạ, repo sẽ có sẵn để tạo chế độ xem như bên dưới.

Thêm một lượt xem | MLOps
Tạo chế độ xem cho kho lưu trữ DVC

Nguồn: Tác giả

Bước 5: Sau khi các bước trên hoàn tất, hãy nhấp vào repo và mở trình theo dõi.

repo và mở trình theo dõi | MLOps
Giao diện người dùng của trình theo dõi thử nghiệm DVC studio

Nguồn: Tác giả

So sánh mô hình: Chọn các mô hình bạn chọn và nhấp vào So sánh để xem kết quả.

So sánh mô hình
So sánh mô hình

Nguồn: Tác giả

Chạy thử nghiệm:  Có hai cách để chạy thử nghiệm.

1. Thực hiện tất cả các thay đổi và kiểm tra mã vào kho lưu trữ Github. Phòng thu DVC tự động lấy các chỉ số trên trường quay để theo dõi.

2. Cách khác là thực hiện các thay đổi trên giao diện người dùng DVC studio, chạy thử nghiệm và sau đó đẩy nó lên Github.

Dòng chảy ML

MLflow là một công cụ mã nguồn mở để theo dõi các thử nghiệm ML. Tương tự như DVC studio, nó giúp cộng tác, thực hiện nhiều thử nghiệm và phân tích khác nhau. Để biết thêm về MLflow, hãy khám phá Tính năng, đặc điểm.

Thiết lập môi trường làm việc:

Bạn có thể truy cập kho mã để tải xuống / sao chép từ Github. Cài đặt mlflow và các thư viện khác để xây dựng mô hình, thiết lập tệp cấu hình để cải thiện khả năng đọc mã. Các tập tin có thể được tìm thấy trong Dòng chảy ML thư mục.

Số liệu mô hình giám sát: Số liệu cuối cùng và hiện tại được theo dõi và liệt kê dưới dạng ảnh chụp nhanh. Nếu số lần lặp lại tăng lên thì việc theo dõi các thay đổi sẽ trở thành một quá trình đầy thách thức và thay vì tập trung vào việc cải thiện hiệu suất mô hình, chúng tôi sẽ dành nhiều thời gian để theo dõi các thay đổi và các chỉ số kết quả.

Chỉ số đường dẫn Cũ mới Thay đổi độ chính xác của logistic reportcores.json 0.62069 0.65517 0.03448 reportcores.json roc_auc 0.65093 0.72764 0.07671 reportcores.json test_score 62.06897 65.51724 3.44828 reportcores.json train_score 71.96532 74.27746 2.31214

MLflow mang đến cho chúng ta một Giao diện người dùng MLflow giúp chúng tôi theo dõi mọi thứ trên giao diện người dùng. Sau khi, chúng tôi đã sẵn sàng chạy thử nghiệm của mình (phân loại.py), các chỉ số được theo dõi và hiển thị trong giao diện người dùng bằng đoạn lệnh bên dưới.

mlflow ui ## Đây là thông tin đầu ra: nhân viên phục vụ: Phục vụ trên http://127.0.0.1:5000

URL là của localhost, bằng cách nhấp vào URL, chúng tôi sẽ có thể xem kết quả trong giao diện người dùng. Giao diện người dùng rất thân thiện với người dùng và người dùng có thể dễ dàng điều hướng và khám phá các chỉ số liên quan. Phần được đánh dấu trong hộp màu đỏ bên dưới hiển thị việc theo dõi các chỉ số mà chúng tôi quan tâm.

MFL Thấp

Giao diện người dùng của trình theo dõi thử nghiệm MLflow

Nguồn: Tác giả

Ghi chú kết thúc

Trong blog này, chúng tôi đã xem tổng quan về MLOps và triển khai nó bằng các công cụ mã nguồn mở, cụ thể là Studio DVC MLflow. Các công cụ MLOps này giúp cho việc theo dõi các thay đổi và hiệu suất mô hình trở nên dễ dàng, nhờ đó chúng tôi có thể tập trung nhiều hơn vào hiệu suất mô hình và điều chỉnh theo miền cụ thể.

MLOps sẽ tiếp tục phát triển trong tương lai với nhiều tính năng được bổ sung vào các công cụ giúp cuộc sống của các nhóm khoa học dữ liệu dễ dàng hơn nhiều trong việc quản lý khía cạnh hoạt động của các dự án máy học.

Nếu bạn thích blog thì đây là các bài viết về MLOps. Hãy tiếp tục thử nghiệm!

DevOps & MLops

Theo dõi thử nghiệm ML với DVC

My Linkedin & Github

dự án

https://dvc.org/

https://www.mlflow.org/docs/latest/quickstart.html

Nguồn: https://www.analyticsvidhya.com/blog/2022/01/overview-of-mlops-with-open-source-tools/

tại chỗ_img

Tin tức mới nhất

tại chỗ_img

Trò chuyện trực tiếp với chúng tôi (chat)

Chào bạn! Làm thế nào để tôi giúp bạn?