Chuẩn bị dữ liệu thống nhất, đào tạo mô hình và triển khai với Amazon SageMaker Data Wrangler và Amazon SageMaker Autopilot – Phần 2 Thông tin dữ liệu PlatoBlockchain. Tìm kiếm dọc. Ái.

Chuẩn bị dữ liệu hợp nhất, đào tạo mô hình và triển khai với Amazon SageMaker Data Wrangler và Amazon SageMaker Autopilot - Phần 2

Tùy thuộc vào chất lượng và độ phức tạp của dữ liệu, các nhà khoa học dữ liệu dành từ 45–80% thời gian của họ cho các công việc chuẩn bị dữ liệu. Điều này ngụ ý rằng việc chuẩn bị và làm sạch dữ liệu sẽ mất nhiều thời gian quý báu so với công việc khoa học dữ liệu thực. Sau khi mô hình học máy (ML) được huấn luyện với dữ liệu đã chuẩn bị và sẵn sàng để triển khai, các nhà khoa học dữ liệu thường phải viết lại các phép biến đổi dữ liệu được sử dụng để chuẩn bị dữ liệu cho suy luận ML. Điều này có thể kéo dài thời gian triển khai một mô hình hữu ích có thể suy luận và ghi điểm dữ liệu từ hình dạng và hình thức thô của nó.

Trong Phần 1 của loạt bài này, chúng tôi đã trình bày cách Data Wrangler cho phép chuẩn bị dữ liệu thống nhất và đào tạo mô hình kinh nghiệm với Amazon SageMaker Tự động lái chỉ trong một vài cú nhấp chuột. Trong phần thứ hai và phần cuối cùng của loạt bài này, chúng tôi tập trung vào một tính năng bao gồm và tái sử dụng Trình sắp xếp dữ liệu Amazon SageMaker các biến đổi, chẳng hạn như bộ nhập giá trị bị thiếu, bộ mã hóa thứ tự hoặc một nóng, và hơn thế nữa, cùng với các mô hình Autopilot cho suy luận ML. Tính năng này cho phép tự động xử lý trước dữ liệu thô với việc sử dụng lại các biến đổi của tính năng Data Wrangler tại thời điểm suy luận, giảm hơn nữa thời gian cần thiết để triển khai một mô hình được đào tạo vào sản xuất.

Tổng quan về giải pháp

Data Wrangler giảm thời gian tổng hợp và chuẩn bị dữ liệu cho ML từ vài tuần xuống còn vài phút và Autopilot tự động xây dựng, đào tạo và điều chỉnh các mô hình ML tốt nhất dựa trên dữ liệu của bạn. Với Autopilot, bạn vẫn duy trì toàn quyền kiểm soát và khả năng hiển thị dữ liệu và mô hình của mình. Cả hai dịch vụ đều được xây dựng có mục đích để giúp những người thực hành ML làm việc hiệu quả hơn và đẩy nhanh thời gian để nâng cao giá trị.

Sơ đồ sau minh họa kiến ​​trúc giải pháp của chúng tôi.

Điều kiện tiên quyết

Vì bài đăng này là bài thứ hai trong loạt bài gồm hai phần, hãy đảm bảo rằng bạn đã đọc và triển khai thành công Phần 1 trước khi tiếp tục.

Xuất và đào tạo mô hình

Trong Phần 1, sau khi chuẩn bị dữ liệu cho ML, chúng ta đã thảo luận về cách bạn có thể sử dụng trải nghiệm tích hợp trong Data Wrangler để phân tích tập dữ liệu và dễ dàng xây dựng mô hình ML chất lượng cao trong Autopilot.

Lần này, chúng tôi sử dụng tích hợp Autopilot một lần nữa để đào tạo một mô hình dựa trên cùng một tập dữ liệu đào tạo, nhưng thay vì thực hiện suy luận hàng loạt, chúng tôi thực hiện suy luận theo thời gian thực đối với Amazon SageMaker điểm cuối suy luận được tạo tự động cho chúng tôi.

Ngoài sự tiện lợi được cung cấp bởi việc triển khai điểm cuối tự động, chúng tôi chứng minh cách bạn cũng có thể triển khai với tất cả các biến đổi tính năng Data Wrangler dưới dạng một đường ống suy luận nối tiếp SageMaker. Điều này cho phép tự động xử lý trước dữ liệu thô với việc sử dụng lại các biến đổi của tính năng Data Wrangler tại thời điểm suy luận.

Lưu ý rằng tính năng này hiện chỉ được hỗ trợ cho các luồng Data Wrangler không sử dụng phép biến đổi nối, nhóm theo, nối và chuỗi thời gian.

Chúng tôi có thể sử dụng tích hợp Data Wrangler mới với Autopilot để đào tạo trực tiếp một mô hình từ giao diện người dùng luồng dữ liệu Data Wrangler.

  1. Chọn dấu cộng bên cạnh Quy mô giá trị nút và chọn Mô hình tàu hỏa.
  2. Trong Vị trí Amazon S3, chỉ định la Dịch vụ lưu trữ đơn giản của Amazon (Amazon S3) vị trí nơi SageMaker xuất dữ liệu của bạn.
    Nếu được hiển thị với đường dẫn nhóm gốc theo mặc định, Data Wrangler sẽ tạo một thư mục con xuất duy nhất bên dưới nó — bạn không cần phải sửa đổi đường dẫn gốc mặc định này trừ khi bạn muốn. thời gian kể từ khi phải xác định vị trí đầu ra của luồng Data Wrangler và sau đó xác định vị trí đầu vào của dữ liệu đào tạo Autopilot. Điều này làm cho trải nghiệm liền mạch hơn.
  3. Chọn Xuất khẩu và đào tạo để xuất dữ liệu đã chuyển đổi sang Amazon S3.
    Chuẩn bị dữ liệu thống nhất, đào tạo mô hình và triển khai với Amazon SageMaker Data Wrangler và Amazon SageMaker Autopilot – Phần 2 Thông tin dữ liệu PlatoBlockchain. Tìm kiếm dọc. Ái.
    Khi xuất thành công, bạn sẽ được chuyển hướng đến Tạo thử nghiệm Autopilot trang, với Dữ liệu đầu vào Vị trí S3 đã được điền cho bạn (nó được điền từ kết quả của trang trước).
  4. Trong Tên thử nghiệm, nhập tên (hoặc giữ tên mặc định).
  5. Trong Mục tiêu, chọn Kết quả như cột bạn muốn dự đoán.
  6. Chọn Tiếp theo: Phương pháp đào tạo.
    Chuẩn bị dữ liệu thống nhất, đào tạo mô hình và triển khai với Amazon SageMaker Data Wrangler và Amazon SageMaker Autopilot – Phần 2 Thông tin dữ liệu PlatoBlockchain. Tìm kiếm dọc. Ái.

Như chi tiết trong bài Amazon SageMaker Autopilot nhanh hơn tới tám lần với chế độ đào tạo theo nhóm mới được cung cấp bởi AutoGluon, bạn có thể cho phép Autopilot chọn chế độ đào tạo tự động dựa trên kích thước tập dữ liệu hoặc chọn chế độ đào tạo theo cách thủ công cho tối ưu hóa tổng hợp hoặc siêu tham số (HPO).

Chi tiết của từng tùy chọn như sau:

  • Tự động - Autopilot tự động chọn chế độ tập hợp hoặc HPO dựa trên kích thước tập dữ liệu của bạn. Nếu tập dữ liệu của bạn lớn hơn 100 MB, Autopilot chọn HPO; nếu không, nó chọn tập hợp.
  • Lắp ráp - Autopilot sử dụng AutoGluon kỹ thuật tổng hợp để đào tạo một số mô hình cơ sở và kết hợp các dự đoán của chúng bằng cách sử dụng xếp chồng mô hình thành một mô hình dự đoán tối ưu.
  • Tối ưu hóa siêu tham số - Autopilot tìm phiên bản tốt nhất của mô hình bằng cách điều chỉnh các siêu tham số bằng cách sử dụng kỹ thuật tối ưu hóa Bayes và chạy các công việc đào tạo trên tập dữ liệu của bạn. HPO chọn các thuật toán phù hợp nhất với tập dữ liệu của bạn và chọn phạm vi siêu tham số tốt nhất để điều chỉnh các mô hình. Tự động.
  1. Chọn Tiếp theo: Triển khai và cài đặt nâng cao để tiếp tục.
    Chuẩn bị dữ liệu thống nhất, đào tạo mô hình và triển khai với Amazon SageMaker Data Wrangler và Amazon SageMaker Autopilot – Phần 2 Thông tin dữ liệu PlatoBlockchain. Tìm kiếm dọc. Ái.
  2. trên Triển khai và cài đặt nâng cao , chọn một tùy chọn triển khai.
    Điều quan trọng là phải hiểu các tùy chọn triển khai chi tiết hơn; những gì chúng tôi chọn sẽ ảnh hưởng đến việc các chuyển đổi chúng tôi đã thực hiện trước đó trong Data Wrangler có được đưa vào quy trình suy luận hay không:
    • Tự động triển khai mô hình tốt nhất với các biến đổi từ Data Wrangler - Với tùy chọn triển khai này, khi bạn chuẩn bị dữ liệu trong Data Wrangler và đào tạo một mô hình bằng cách gọi Autopilot, mô hình đã đào tạo sẽ được triển khai cùng với tất cả các biến đổi của tính năng Data Wrangler dưới dạng Đường dẫn suy luận nối tiếp SageMaker. Điều này cho phép tự động xử lý trước dữ liệu thô với việc sử dụng lại các biến đổi của tính năng Data Wrangler tại thời điểm suy luận. Lưu ý rằng điểm cuối suy luận mong muốn định dạng dữ liệu của bạn có cùng định dạng như khi nó được nhập vào luồng Data Wrangler.
    • Tự động triển khai mô hình tốt nhất mà không cần chuyển đổi từ Data Wrangler - Tùy chọn này triển khai một điểm cuối thời gian thực không sử dụng phép biến đổi Data Wrangler. Trong trường hợp này, bạn cần áp dụng các biến đổi được xác định trong luồng Data Wrangler cho dữ liệu của mình trước khi suy luận.
    • Không tự động triển khai mô hình tốt nhất - Bạn nên sử dụng tùy chọn này khi bạn không muốn tạo một điểm cuối suy luận nào cả. Nó hữu ích nếu bạn muốn tạo một mô hình tốt nhất để sử dụng sau này, chẳng hạn như suy luận hàng loạt chạy cục bộ. (Đây là tùy chọn triển khai mà chúng tôi đã chọn trong Phần 1 của loạt bài này.) Lưu ý rằng khi bạn chọn tùy chọn này, mô hình được tạo (từ ứng cử viên tốt nhất của Autopilot thông qua SageMaker SDK) bao gồm tính năng Data Wrangler biến đổi dưới dạng đường ống suy luận nối tiếp SageMaker.

    Đối với bài đăng này, chúng tôi sử dụng Tự động triển khai mô hình tốt nhất với các biến đổi từ Data Wrangler tùy chọn.

  3. Trong Tùy chọn triển khai, lựa chọn Tự động triển khai mô hình tốt nhất với các biến đổi từ Data Wrangler.
  4. Để các cài đặt khác làm mặc định.
  5. Chọn Tiếp theo: Xem lại và tạo để tiếp tục.
    trên Xem lại và tạo , chúng tôi thấy bản tóm tắt về các cài đặt được chọn cho thử nghiệm Lái xe tự động của chúng tôi.
  6. Chọn Tạo thử nghiệm để bắt đầu quá trình tạo mô hình.
    Chuẩn bị dữ liệu thống nhất, đào tạo mô hình và triển khai với Amazon SageMaker Data Wrangler và Amazon SageMaker Autopilot – Phần 2 Thông tin dữ liệu PlatoBlockchain. Tìm kiếm dọc. Ái.

Bạn được chuyển hướng đến trang mô tả công việc Autopilot. Các mô hình hiển thị trên mô hình khi chúng được tạo. Để xác nhận rằng quá trình đã hoàn tất, hãy chuyển đến Hồ sơ công việc tab và tìm kiếm một Completed giá trị cho Trạng thái trường.

Bạn có thể quay lại trang mô tả công việc Autopilot này bất kỳ lúc nào từ Xưởng sản xuất Amazon SageMaker:

  1. Chọn Thử nghiệm và Thử nghiệm trên Tài nguyên của SageMaker trình đơn thả xuống.
  2. Chọn tên của công việc Autopilot mà bạn đã tạo.
  3. Chọn (nhấp chuột phải) vào thử nghiệm và chọn Mô tả công việc AutoML.

Xem đào tạo và triển khai

Khi Autopilot hoàn thành thử nghiệm, chúng tôi có thể xem kết quả đào tạo và khám phá mô hình tốt nhất từ ​​trang mô tả công việc Autopilot.

Chọn (nhấp chuột phải) vào mô hình được gắn nhãn Mô hình tốt nhất, và lựa chọn Mở chi tiết mô hình.

Chuẩn bị dữ liệu thống nhất, đào tạo mô hình và triển khai với Amazon SageMaker Data Wrangler và Amazon SageMaker Autopilot – Phần 2 Thông tin dữ liệu PlatoBlockchain. Tìm kiếm dọc. Ái.

Sản phẩm HIỆU QUẢ tab hiển thị một số thử nghiệm đo lường mô hình, bao gồm ma trận nhầm lẫn, khu vực dưới đường cong độ chính xác / thu hồi (AUCPR) và khu vực dưới đường cong đặc tính hoạt động của máy thu (ROC). Những điều này minh họa hiệu suất xác thực tổng thể của mô hình, nhưng chúng không cho chúng ta biết liệu mô hình có khái quát hóa tốt hay không. Chúng tôi vẫn cần chạy các đánh giá trên dữ liệu thử nghiệm không nhìn thấy để xem mô hình đưa ra dự đoán chính xác như thế nào (ví dụ này, chúng tôi dự đoán liệu một cá nhân có bị bệnh tiểu đường hay không).

Thực hiện suy luận so với điểm cuối thời gian thực

Tạo một sổ ghi chép SageMaker mới để thực hiện suy luận theo thời gian thực nhằm đánh giá hiệu suất của mô hình. Nhập mã sau vào sổ ghi chép để chạy suy luận thời gian thực để xác thực:

import boto3

### Define required boto3 clients

sm_client = boto3.client(service_name="sagemaker")
runtime_sm_client = boto3.client(service_name="sagemaker-runtime")

### Define endpoint name

endpoint_name = ""

### Define input data

payload_str = '5,166.0,72.0,19.0,175.0,25.8,0.587,51'
payload = payload_str.encode()
response = runtime_sm_client.invoke_endpoint(
    EndpointName=endpoint_name,
    ContentType="text/csv",
    Body=payload,
)

response["Body"].read()

Sau khi bạn thiết lập mã để chạy trong sổ ghi chép của mình, bạn cần định cấu hình hai biến:

  • endpoint_name
  • payload_str

Định cấu hình endpoint_name

endpoint_name đại diện cho tên của điểm cuối suy luận thời gian thực mà việc triển khai được tạo tự động cho chúng tôi. Trước khi đặt nó, chúng ta cần tìm tên của nó.

  1. Chọn Điểm cuối trên Tài nguyên của SageMaker trình đơn thả xuống.
  2. Định vị tên của điểm cuối có tên công việc Lái xe tự động mà bạn đã tạo bằng một chuỗi ngẫu nhiên được nối vào nó.
  3. Chọn (nhấp chuột phải) vào thử nghiệm và chọn Mô tả điểm cuối.
    Chuẩn bị dữ liệu thống nhất, đào tạo mô hình và triển khai với Amazon SageMaker Data Wrangler và Amazon SageMaker Autopilot – Phần 2 Thông tin dữ liệu PlatoBlockchain. Tìm kiếm dọc. Ái.
    Sản phẩm Chi tiết điểm cuối trang xuất hiện.
  4. Đánh dấu tên điểm cuối đầy đủ và nhấn Ctrl + C để sao chép nó vào khay nhớ tạm.
    Chuẩn bị dữ liệu thống nhất, đào tạo mô hình và triển khai với Amazon SageMaker Data Wrangler và Amazon SageMaker Autopilot – Phần 2 Thông tin dữ liệu PlatoBlockchain. Tìm kiếm dọc. Ái.
  5. Nhập giá trị này (đảm bảo rằng nó được trích dẫn) cho endpoint_name trong sổ tay suy luận.
    Chuẩn bị dữ liệu thống nhất, đào tạo mô hình và triển khai với Amazon SageMaker Data Wrangler và Amazon SageMaker Autopilot – Phần 2 Thông tin dữ liệu PlatoBlockchain. Tìm kiếm dọc. Ái.

Định cấu hình payload_str

Máy tính xách tay đi kèm với một chuỗi tải trọng mặc định payload_str mà bạn có thể sử dụng để kiểm tra điểm cuối của mình, nhưng hãy thử nghiệm với các giá trị khác nhau, chẳng hạn như các giá trị từ tập dữ liệu thử nghiệm của bạn.

Để lấy các giá trị từ tập dữ liệu thử nghiệm, hãy làm theo hướng dẫn trong Phần 1 để xuất tập dữ liệu thử nghiệm sang Amazon S3. Sau đó, trên bảng điều khiển Amazon S3, bạn có thể tải xuống và chọn các hàng để sử dụng tệp từ Amazon S3.

Mỗi hàng trong tập dữ liệu thử nghiệm của bạn có chín cột, với cột cuối cùng là outcome giá trị. Đối với mã sổ tay này, hãy đảm bảo rằng bạn chỉ sử dụng một hàng dữ liệu (không bao giờ là tiêu đề CSV) cho payload_str. Ngoài ra, hãy đảm bảo rằng bạn chỉ gửi một payload_str với tám cột, nơi bạn đã xóa giá trị kết quả.

Ví dụ: nếu các tệp tập dữ liệu thử nghiệm của bạn trông giống như mã sau và chúng tôi muốn thực hiện suy luận theo thời gian thực của hàng đầu tiên:

Pregnancies,Glucose,BloodPressure,SkinThickness,Insulin,BMI,DiabetesPedigreeFunction,Age,Outcome 
10,115,0,0,0,35.3,0.134,29,0 
10,168,74,0,0,38.0,0.537,34,1 
1,103,30,38,83,43.3,0.183,33,0

Chúng tôi thiết lập payload_str đến 10,115,0,0,0,35.3,0.134,29. Lưu ý cách chúng tôi bỏ qua outcome giá trị của 0 cuối cùng.

Nếu tình cờ giá trị đích của tập dữ liệu của bạn không phải là giá trị đầu tiên hoặc giá trị cuối cùng, chỉ cần loại bỏ giá trị còn nguyên cấu trúc dấu phẩy. Ví dụ: giả sử chúng tôi đang dự đoán thanh và tập dữ liệu của chúng tôi trông giống như mã sau:

foo,bar,foobar
85,17,20

Trong trường hợp này, chúng tôi đặt payload_str đến 85,,20.

Khi sổ ghi chép được chạy với cấu hình thích hợp payload_strendpoint_name , bạn sẽ nhận được phản hồi CSV ở định dạng outcome (0 hoặc 1), confidence (0-1).

Dọn dẹp

Để đảm bảo bạn không phải chịu các khoản phí liên quan đến hướng dẫn sau khi hoàn thành hướng dẫn này, hãy nhớ tắt ứng dụng Data Wrangler (https://docs.aws.amazon.com/sagemaker/latest/dg/data-wrangler-shut-down.html), cũng như tất cả các phiên bản sổ tay được sử dụng để thực hiện các tác vụ suy luận. Các điểm cuối suy luận được tạo thông qua triển khai Auto Pilot cũng nên bị xóa để ngăn chặn các khoản phí bổ sung.

Kết luận

Trong bài đăng này, chúng tôi đã trình bày cách tích hợp xử lý dữ liệu của bạn, tính năng kỹ thuật và xây dựng mô hình bằng cách sử dụng Data Wrangler và Autopilot. Dựa trên Phần 1 của loạt bài này, chúng tôi đã nêu bật cách bạn có thể dễ dàng đào tạo, điều chỉnh và triển khai mô hình tới điểm cuối suy luận theo thời gian thực với Autopilot trực tiếp từ giao diện người dùng Data Wrangler. Ngoài sự tiện lợi được cung cấp bởi việc triển khai điểm cuối tự động, chúng tôi đã chứng minh cách bạn cũng có thể triển khai với tất cả các biến đổi của tính năng Data Wrangler dưới dạng một đường dẫn suy luận nối tiếp SageMaker, cung cấp cho việc xử lý trước tự động dữ liệu thô, với việc sử dụng lại các biến đổi tính năng Data Wrangler tại thời điểm suy luận.

Các giải pháp mã thấp và AutoML như Data Wrangler và Autopilot loại bỏ nhu cầu phải có kiến ​​thức mã hóa sâu để xây dựng các mô hình ML mạnh mẽ. Bắt đầu sử dụng Data Wrangler ngay hôm nay để trải nghiệm việc xây dựng các mô hình ML bằng Autopilot dễ dàng như thế nào.


Giới thiệu về tác giả

Chuẩn bị dữ liệu thống nhất, đào tạo mô hình và triển khai với Amazon SageMaker Data Wrangler và Amazon SageMaker Autopilot – Phần 2 Thông tin dữ liệu PlatoBlockchain. Tìm kiếm dọc. Ái.Geremy Cohen là Kiến trúc sư giải pháp của AWS, nơi anh ấy giúp khách hàng xây dựng các giải pháp tiên tiến dựa trên đám mây. Khi rảnh rỗi, anh ấy thích đi bộ ngắn trên bãi biển, khám phá khu vực vịnh cùng gia đình, sửa chữa đồ đạc xung quanh nhà, đập phá đồ đạc xung quanh nhà và tổ chức tiệc nướng ngoài trời.

Chuẩn bị dữ liệu thống nhất, đào tạo mô hình và triển khai với Amazon SageMaker Data Wrangler và Amazon SageMaker Autopilot – Phần 2 Thông tin dữ liệu PlatoBlockchain. Tìm kiếm dọc. Ái.Pradeep Reddy là Giám đốc Sản phẩm Cấp cao trong nhóm SageMaker Low / No Code ML, bao gồm SageMaker Autopilot, SageMaker Automatic Model Tuner. Ngoài giờ làm việc, Pradeep thích đọc sách, chạy và tìm hiểu với các máy tính có kích thước bằng lòng bàn tay như raspberry pi và các công nghệ tự động hóa gia đình khác.

Chuẩn bị dữ liệu thống nhất, đào tạo mô hình và triển khai với Amazon SageMaker Data Wrangler và Amazon SageMaker Autopilot – Phần 2 Thông tin dữ liệu PlatoBlockchain. Tìm kiếm dọc. Ái.Tiến sĩ John He là kỹ sư phát triển phần mềm cấp cao của Amazon AI, nơi anh tập trung vào máy học và máy tính phân tán. Ông có bằng Tiến sĩ của CMU.

Dấu thời gian:

Thêm từ Học máy AWS