Tích hợp sẵn Amazon SageMaker Thuật toán XGBoost cung cấp một vùng chứa được quản lý để chạy XGBoost khuôn khổ học máy (ML), với sự tiện lợi bổ sung của việc hỗ trợ các tính năng đào tạo hoặc suy luận nâng cao như đào tạo phân tán, phân bổ tập dữ liệu cho các tập dữ liệu quy mô lớn, Thử nghiệm mô hình A / B, hoặc là suy luận đa mô hình điểm cuối. Bạn cũng có thể mở rộng thuật toán mạnh mẽ này để đáp ứng các yêu cầu khác nhau.
Đóng gói mã và các thành phần phụ thuộc trong một thùng chứa duy nhất là một cách tiếp cận thuận tiện và mạnh mẽ cho các mục đích duy trì, tái tạo và kiểm tra mã lâu dài. Việc sửa đổi vùng chứa trực tiếp theo sau vùng chứa cơ sở một cách trung thực và tránh sao chép các chức năng hiện có đã được vùng chứa cơ sở hỗ trợ. Trong bài đăng này, chúng tôi xem xét hoạt động bên trong của vùng chứa thuật toán SageMaker XGBoost và cung cấp các tập lệnh thực dụng để tùy chỉnh trực tiếp vùng chứa.
Cấu trúc bộ chứa SageMaker XGBoost
Thuật toán XGBoost tích hợp sẵn của SageMaker được đóng gói như một vùng chứa độc lập, có sẵn trên GitHubvà có thể được mở rộng theo giấy phép nguồn mở Apache 2.0 thân thiện với nhà phát triển. Thùng chứa thuật toán XGBoost mã nguồn mở và các công cụ phụ trợ để chạy thuật toán trong môi trường SageMaker được tích hợp với các dịch vụ Đám mây AWS khác. Điều này cho phép bạn đào tạo các mô hình XGBoost trên nhiều loại nguồn dữ liệu, chế tạo dự đoán hàng loạt trên dữ liệu ngoại tuyến hoặc lưu trữ một điểm cuối suy luận trong thời gian thực đường ống dẫn.
Vùng chứa hỗ trợ các hoạt động đào tạo và suy luận với các điểm đầu vào khác nhau. Đối với chế độ suy luận, mục nhập có thể được tìm thấy trong hàm chính trong tập lệnh serve.py. Đối với việc phân phát suy luận theo thời gian thực, vùng chứa chạy bìnhDựa trên máy chủ web rằng khi viện dẫn, nhận được một yêu cầu được mã hóa HTTP chứa dữ liệu, giải mã dữ liệu vào XGBoost's Ma trận định dạng, tải mô hìnhvà trả về một Phản hồi được mã hóa HTTP trở lại. Các phương thức này được đóng gói trong chấm điểmDịch vụ , cũng có thể được tùy chỉnh thông qua chế độ script ở một mức độ lớn (xem Phụ lục bên dưới).
Điểm đầu vào cho chế độ đào tạo (chế độ thuật toán) là chức năng chính trong đào tạo.py. Hàm main thiết lập môi trường đào tạo và gọi hàm công việc đào tạo. Nó đủ linh hoạt để cho phép đào tạo phân tán hoặc đơn nút, hoặc các tiện ích như xác thực chéo. Trọng tâm của quá trình đào tạo có thể được tìm thấy trong đào_tạo chức năng.
Các tệp Docker đóng gói vùng chứa có thể được tìm thấy trong Repo GitHub. Lưu ý rằng vùng chứa được xây dựng theo hai bước: a cơ sở container được xây dựng đầu tiên, tiếp theo là cuối cùng thùng chứa trên đầu trang.
Tổng quan về giải pháp
Bạn có thể sửa đổi và xây dựng lại vùng chứa thông qua mã nguồn. Tuy nhiên, điều này liên quan đến việc thu thập và xây dựng lại tất cả các gói và phụ thuộc từ đầu. Trong bài đăng này, chúng tôi thảo luận về một cách tiếp cận đơn giản hơn giúp sửa đổi vùng chứa trên hình ảnh vùng chứa thuật toán SageMaker XGBoost đã được xây dựng và công khai trực tiếp.
Trong cách tiếp cận này, chúng tôi kéo bản sao của hình ảnh SageMaker XGBoost công khai, sửa đổi tập lệnh hoặc thêm gói và xây dựng lại vùng chứa ở trên cùng. Vùng chứa đã sửa đổi có thể được lưu trữ trong một kho lưu trữ riêng. Bằng cách này, chúng tôi tránh xây dựng lại các phụ thuộc trung gian và thay vào đó xây dựng trực tiếp trên đầu các thư viện đã được tạo sẵn được đóng gói trong vùng chứa chính thức.
Hình sau cho thấy tổng quan về tập lệnh được sử dụng để kéo hình ảnh cơ sở công khai, sửa đổi và xây dựng lại hình ảnh và tải nó lên chế độ riêng tư Đăng ký container đàn hồi Amazon (Amazon ECR) kho lưu trữ. Các kịch bản bash trong mã kèm theo của bài đăng này thực hiện tất cả các bước quy trình làm việc được hiển thị trong sơ đồ. Các đính kèm máy tính xách tay hiển thị một ví dụ trong đó URI của một phiên bản cụ thể của thuật toán SageMaker XGBoost lần đầu tiên được truy xuất và chuyển đến kịch bản bash, thay thế hai trong số các tập lệnh Python trong hình ảnh, xây dựng lại nó và đẩy hình ảnh đã sửa đổi vào kho lưu trữ Amazon ECR riêng tư. Bạn có thể sửa đổi mã đi kèm để phù hợp với nhu cầu của bạn.
Điều kiện tiên quyết
Sản phẩm Kho GitHub chứa mã đi kèm với bài đăng này. Bạn có thể chạy mẫu máy tính xách tay trong tài khoản AWS của bạn hoặc sử dụng Hình thành đám mây AWS ngăn xếp để triển khai sổ ghi chép bằng sổ ghi chép SageMaker. Bạn cần các điều kiện tiên quyết sau:
- Một tài khoản AWS.
- Các quyền cần thiết để chạy các công việc đào tạo và chuyển đổi hàng loạt của SageMaker cũng như các đặc quyền Amazon ECR. Mẫu CloudFormation tạo mẫu Quản lý truy cập và nhận dạng AWS (IAM) vai trò.
Triển khai giải pháp
Để tạo tài nguyên giải pháp của bạn bằng AWS CloudFormation, hãy chọn Khởi chạy Stack:
Ngăn xếp triển khai sổ ghi chép SageMaker được định cấu hình trước để sao chép kho lưu trữ GitHub. Hướng dẫn máy tính xách tay bao gồm các bước để kéo hình ảnh SageMaker XGBoost công khai cho một phiên bản nhất định, sửa đổi nó và đẩy vùng chứa tùy chỉnh vào kho lưu trữ Amazon ECR riêng tư. Sổ tay sử dụng công Bộ dữ liệu bào ngư làm mẫu, đào tạo mô hình bằng chế độ đào tạo tích hợp SageMaker XGBoost và sử dụng lại mô hình này trong hình ảnh tùy chỉnh để thực hiện các công việc chuyển đổi hàng loạt tạo ra suy luận cùng với các giá trị SHAP.
Kết luận
Các thuật toán tích hợp của SageMaker cung cấp nhiều tính năng và chức năng khác nhau, đồng thời có thể được mở rộng thêm theo giấy phép mã nguồn mở Apache 2.0. Trong bài đăng này, chúng tôi đã xem xét cách mở rộng vùng chứa tích hợp trong sản xuất cho thuật toán SageMaker XGBoost để đáp ứng các yêu cầu sản xuất như mã ngược và khả năng tương thích API.
Sổ tay mẫu và người trợ giúp kịch bản cung cấp một điểm khởi đầu thuận tiện để tùy chỉnh hình ảnh vùng chứa SageMaker XGBoost theo cách bạn muốn. Hãy thử một lần!
Phụ lục: Chế độ tập lệnh
Chế độ tập lệnh cung cấp một cách để sửa đổi nhiều thuật toán tích hợp sẵn của SageMaker bằng cách cung cấp một giao diện để thay thế các chức năng chịu trách nhiệm biến đổi đầu vào và tải mô hình. Chế độ tập lệnh không linh hoạt như sửa đổi trực tiếp vùng chứa, nhưng nó cung cấp một lộ trình hoàn toàn dựa trên Python để tùy chỉnh thuật toán tích hợp mà không cần phải làm việc trực tiếp với phu bến tàu.
Trong chế độ tập lệnh, một user-module
được cung cấp để tùy chỉnh giải mã dữ liệu, tải mô hình và đưa ra dự đoán. Mô-đun người dùng có thể xác định một transformer_fn
xử lý tất cả các khía cạnh của quá trình xử lý yêu cầu chuẩn bị phản hồi. Hoặc thay vì xác định transformer_fn
, bạn có thể cung cấp các phương pháp tùy chỉnh model_fn
, input_fn
, predict_fn
và output_fn
riêng lẻ để tùy chỉnh tải mô hình và giải mã và chuẩn bị đầu vào cho dự đoán. Để biết tổng quan kỹ lưỡng hơn về chế độ tập lệnh, hãy xem Mang lại mô hình của riêng bạn với Chế độ tập lệnh SageMaker.
Về các tác giả
Peyman Razaghi là Nhà khoa học dữ liệu tại AWS. Ông có bằng tiến sĩ về lý thuyết thông tin tại Đại học Toronto và là nhà khoa học nghiên cứu sau tiến sĩ tại Đại học Nam California (USC), Los Angeles. Trước khi gia nhập AWS, Peyman là kỹ sư hệ thống nhân viên tại Qualcomm, đóng góp vào một số tiêu chuẩn viễn thông quốc tế đáng chú ý. Ông là tác giả của một số bài báo nghiên cứu khoa học được bình duyệt trong lĩnh vực thống kê và hệ thống-kỹ thuật, đồng thời thích nuôi dạy con cái và đạp xe ngoài công việc.
- Coinsmart. Sàn giao dịch Bitcoin và tiền điện tử tốt nhất Châu Âu.
- Platoblockchain. Web3 Metaverse Intelligence. Khuếch đại kiến thức. TRUY CẬP MIỄN PHÍ.
- CryptoHawk. Radar Altcoin. Dùng thử miễn phí.
- Nguồn: https://aws.amazon.com/blogs/machine-learning/customize-the-amazon-sagemaker-xgboost-algorithm-container/
- "
- 100
- truy cập
- chứa
- Tài khoản
- tiên tiến
- thuật toán
- thuật toán
- Tất cả
- Đã
- đàn bà gan dạ
- api
- phương pháp tiếp cận
- KHU VỰC
- bài viết
- AWS
- xây dựng
- được xây dựng trong
- california
- Chọn
- tốt nghiệp lớp XNUMX
- đám mây
- dịch vụ điện toán đám mây
- mã
- Thu
- hoàn toàn
- Container
- chứa
- thuận tiện
- Tiện lợi
- tạo ra
- khách hàng
- dữ liệu
- nhà khoa học dữ liệu
- triển khai
- triển khai
- khác nhau
- trực tiếp
- thảo luận
- phân phối
- phu bến tàu
- ky sư
- Môi trường
- ví dụ
- thêm
- Tính năng
- Hình
- Tên
- linh hoạt
- tiếp theo
- định dạng
- tìm thấy
- Khung
- chức năng
- xa hơn
- GitHub
- tuyệt vời
- giữ
- Độ đáng tin của
- Hướng dẫn
- HTTPS
- Bản sắc
- hình ảnh
- thông tin
- đầu vào
- tích hợp
- Giao thức
- Quốc Tế
- IT
- Việc làm
- việc làm
- học tập
- Giấy phép
- lâu
- Los Angeles
- máy
- học máy
- LÀM CHO
- Làm
- quản lý
- ML
- kiểu mẫu
- mô hình
- chi tiết
- máy tính xách tay
- con số
- chính thức
- Ngoại tuyến
- Hoạt động
- Nền tảng khác
- riêng
- Điểm
- Phổ biến
- mạnh mẽ
- dự đoán
- Dự đoán
- riêng
- quá trình
- sản xuất
- Sản lượng
- cho
- cung cấp
- cung cấp
- công khai
- mục đích
- thời gian thực
- kho
- yêu cầu
- Yêu cầu
- nghiên cứu
- Thông tin
- phản ứng
- chịu trách nhiệm
- Trả về
- xem xét
- Route
- chạy
- Nhà khoa học
- DỊCH VỤ
- phục vụ
- sharding
- Phần mềm
- giải pháp
- mã nguồn
- Miền Nam
- ngăn xếp
- tiêu chuẩn
- số liệu thống kê
- Hỗ trợ
- Hỗ trợ
- Hỗ trợ
- hệ thống
- Nguồn
- Thông qua
- bên nhau
- công cụ
- hàng đầu
- toronto
- Hội thảo
- tàu hỏa
- Chuyển đổi
- biến đổi
- trường đại học
- sử dụng
- nhiều
- Wikipedia
- Công việc
- sẽ