Học máy sử dụng nền tảng Red Hat OpenShift Container (2)

Học máy với Kubeflow

Kubeflow tích hợp các công cụ ML thường được sử dụng như Tensorflow và Jupyter Notebooks vào một nền tảng duy nhất . Hàng chục hoặc hàng trăm lần lặp lại được tạo ra khi các mô hình được điều chỉnh và các bộ dữ liệu mới được kết hợp. Sử dụng tự động hóa để quản lý, xây dựng và duy trì các giai đoạn trong vòng đời ML phức tạp giúp giảm số bước phải thực hiện thủ công, tăng tốc quy trình ML và giảm thiểu lỗi. Kubeflow giúp việc phát triển, triển khai và quản lý di động và ML có thể mở rộng trên nền tảng Dell EMC và hỗ trợ các giai đoạn vòng đời khác nhau của dự án ML.

Quy trình làm việc ML

Một quy trình ML điển hình bao gồm các bước sau : thu thập dữ liệu, phân tích dữ liệu, chuẩn bị dữ liệu, xác thực dữ liệu, xây dựng mô hình, đào tạo mô hình, xác thực mô hình, đào tạo theo quy mô, suy luận mô hình và giám sát. Sơ đồ sau đây cho thấy một ví dụ:

Hình 2. Quy trình học máy

Cài đặt và triển khai Kubeflow

Phần này mô tả cách cài đặt nền tảng Kubeflow ML trên Nền tảng bộ chứa OpenShift và cung cấp các bước để khởi chạy sổ ghi chép Jupyter n trong Kubeflow và đào tạo trên quy mô lớn bằng TFJobs.

Các quy trình này giả định rằng bạn đã triển khai thành công Nền tảng bộ chứa OpenShift theo hướng dẫn được cung cấp trong Kiến trúc sẵn sàng của Dell EMC dành cho Nền tảng bộ chứa OpenShift Red Hat v3.11 Hướng dẫn triển khai . Như hướng dẫn triển khai mô tả, bạn có thể chạy một ứng dụng như Nginx để xác nhận rằng các hoạt động của cụm chính đang hoạt động như mong đợi trước khi tiến hành cài đặt Kubeflow .

Triển khai Kubeflow v0.5

Quá trình cài đặt Kubeflow v0.5 dựa trên ksonnet một hệ thống tạo khuôn mẫu, có thể định cấu hình dành cho nhà phát triển ứng dụng Kubernetes . Hệ thống ksonnet tách các định nghĩa đối tượng Kubernetes khỏi đích cụm để đơn giản hóa và tự động hóa việc triển khai .

Để triển khai Kubeflow v0.5 trên OpenShift Container Platform 3.11 :

  1. Tải xuống ksonnet và kfctl và thêm chúng vào đường dẫn của bạn bằng cách chạy lệnh sau:

$ mkdir ~/bin

$ cd ~/thùng

$ wget https://github.com/kubeflow/kubeflow/releases/download/v0.5.1/kfctl_v0.5.1_linux.tar.gz

$ tar -xzf kfctl_v0.5.1_linux.tar.gz

$ wget https://github.com/ksonnet/ksonnet/releases/download/v0.13.1/ks_0.13.1_linux_amd64.tar.gz

$ tar -xzf ks_0.13.1_linux_amd64.tar.gz

$ ln -s ks_0.13.1_linux_amd64/ks ks

$ xuất PATH=$PATH:~/bin

$cd~

  1. Xuất giá trị cho KFAPP bằng cách chạy lệnh sau:

$ xuất KFAPP=kubeflow

$ kfctl init ${KFAPP}

$ cd ${KFAPP}

$ kfctl tạo tất cả -V

Lưu ý: KFAPP đóng vai trò là tên của thư mục lưu trữ triển khai và dự án hoặc không gian tên nơi cài đặt Kubeflow . Tên “ kubeflow ” được khuyến nghị vì một số tham số ksonnet vẫn được mã hóa cứng với kubeflow làm tên dự án .

  1. Triển khai Kubeflow bằng cách chạy lệnh sau:

$ kfctl áp dụng tất cả -V

  1. Thêm đại sứ, mặc định và katib vào ngữ cảnh bảo mật anyuid bằng cách chạy lệnh sau:

$ oc chính sách adm add-scc-to-user anyuid -z đại sứ

$ oc chính sách adm add-scc-to-user anyuid -z mặc định

$ oc chính sách adm add-scc-to-user anyuid -z katib-ui

Lưu ý: Việc nới lỏng các ràng buộc bối cảnh bảo mật (SCC) là cần thiết để thiết lập và chạy các dịch vụ Kubeflow nhưng không được khuyến nghị cho môi trường sản xuất . Chúng tôi hy vọng Nền tảng bộ chứa OpenShift sẽ thêm các SCC thích hợp cho những người dùng này trong tương lai .

  1. Đặt dịch vụ đại sứ để triển khai dưới dạng ClusterIP ( mặc định là NodePort) bằng cách chạy lệnh sau:

$ ks tham số đặt đại sứ AmbassadorServiceType ‘ClusterIP’

$ oc vạch trần dịch vụ đại sứ

$ oc nhận tuyến đường

TÊN MÁY CHỦ/ CỔNG ĐƯỜNG DẪN DỊCH VỤ PORT TERMINATION WILDCARD                                                                                   

đại sứ đại sứ-kubeflow.router.default.svc.cluster.local đại sứ đại sứ Không có                                         

  1. Để xác minh cài đặt Kubeflow , hãy nhập URL được hiển thị theo tuyến đường như được hiển thị bởi dịch vụ đại sứ.

Giao diện người dùng web K ubeflow mở ra, như thể hiện trong hình sau:

https://lh5.googleusercontent.com/lC5s0lHGUC1so2EtU1sMASxuvkNxX89IgNI9kwBv_bsu2kOQDjAj4MhI6V-rFC_vIU5GkctD647MLBYzAcEu90A5Ls_Qne9Pw4nH67KN9th2zehFVut4QKgh_Q9c3DQ 4sVTptB3MEfg

Hình 3. Giao diện người dùng Kubeflow

Bạn có thể truy cập tài liệu và thành phần Kubeflow bằng giao diện người dùng web .