Logo Zephyrnet

Cách Axfood tăng tốc khả năng học máy trong toàn tổ chức bằng Amazon SageMaker | Dịch vụ web của Amazon

Ngày:

Đây là bài viết của khách được viết bởi Axfood AB. 

Trong bài đăng này, chúng tôi chia sẻ cách Axfood, một nhà bán lẻ thực phẩm lớn của Thụy Điển, cải thiện hoạt động và khả năng mở rộng hoạt động trí tuệ nhân tạo (AI) và máy học (ML) hiện có của họ bằng cách tạo mẫu với sự cộng tác chặt chẽ với các chuyên gia AWS và sử dụng Amazon SageMaker.

axfood là nhà bán lẻ thực phẩm lớn thứ hai của Thụy Điển, với hơn 13,000 nhân viên và hơn 300 cửa hàng. Axfood có cấu trúc gồm nhiều nhóm khoa học dữ liệu phi tập trung với các lĩnh vực trách nhiệm khác nhau. Cùng với nhóm nền tảng dữ liệu trung tâm, nhóm khoa học dữ liệu mang đến sự đổi mới và chuyển đổi kỹ thuật số thông qua các giải pháp AI và ML cho tổ chức. Axfood đã và đang sử dụng Amazon SageMaker để trau dồi dữ liệu của họ bằng ML và đã đưa các mô hình vào sản xuất trong nhiều năm. Gần đây, mức độ tinh vi và số lượng mẫu mã được sản xuất ngày càng tăng theo cấp số nhân. Tuy nhiên, mặc dù tốc độ đổi mới cao nhưng các nhóm khác nhau đã phát triển cách làm việc của riêng họ và đang tìm kiếm phương pháp thực hành MLOps mới tốt nhất.

Thách thức của chúng tôi

Để duy trì tính cạnh tranh về dịch vụ đám mây và AI/ML, Axfood đã chọn hợp tác với AWS và đã cộng tác với họ trong nhiều năm.

Trong một trong những phiên động não định kỳ với AWS, chúng tôi đã thảo luận về cách cộng tác tốt nhất giữa các nhóm nhằm tăng tốc độ đổi mới và hiệu quả của những người thực hành khoa học dữ liệu và ML. Chúng tôi quyết định nỗ lực chung để xây dựng nguyên mẫu về phương pháp thực hành tốt nhất cho MLOps. Mục đích của nguyên mẫu là xây dựng mẫu mô hình cho tất cả các nhóm khoa học dữ liệu để xây dựng các mô hình ML hiệu quả và có thể mở rộng—nền tảng cho thế hệ nền tảng AI và ML mới cho Axfood. Mẫu này phải kết nối và kết hợp các biện pháp thực hành tốt nhất từ ​​các chuyên gia AWS ML và các mô hình thực hành tốt nhất dành riêng cho công ty—những phương pháp tốt nhất của cả hai thế giới.

Chúng tôi quyết định xây dựng nguyên mẫu từ một trong những mô hình ML được phát triển nhất hiện nay trong Axfood: dự báo doanh thu tại cửa hàng. Cụ thể hơn là dự báo về rau quả của các chiến dịch sắp tới dành cho các cửa hàng bán lẻ thực phẩm. Dự báo chính xác hàng ngày hỗ trợ quá trình đặt hàng cho các cửa hàng, tăng tính bền vững bằng cách giảm thiểu lãng phí thực phẩm nhờ tối ưu hóa doanh số bán hàng bằng cách dự đoán chính xác lượng hàng tồn kho cần thiết trong cửa hàng. Đây là nơi hoàn hảo để bắt đầu cho nguyên mẫu của chúng tôi—Axfood không chỉ sẽ có được nền tảng AI/ML mới mà còn có cơ hội đánh giá khả năng ML của mình và học hỏi từ các chuyên gia AWS hàng đầu.

Giải pháp của chúng tôi: Mẫu ML mới trên Amazon SageMaker Studio

Việc xây dựng một quy trình ML đầy đủ được thiết kế cho một trường hợp kinh doanh thực tế có thể là một thách thức. Trong trường hợp này, chúng tôi đang phát triển một mô hình dự báo, vì vậy có hai bước chính cần hoàn thành:

  1. Huấn luyện mô hình để đưa ra dự đoán bằng cách sử dụng dữ liệu lịch sử.
  2. Áp dụng mô hình đã huấn luyện để đưa ra dự đoán về các sự kiện trong tương lai.

Trong trường hợp của Axfood, một quy trình hoạt động tốt cho mục đích này đã được thiết lập bằng sổ ghi chép SageMaker và được điều phối bởi nền tảng quản lý quy trình làm việc của bên thứ ba Airflow. Tuy nhiên, có nhiều lợi ích rõ ràng khi hiện đại hóa nền tảng ML của chúng tôi và chuyển sang Xưởng sản xuất Amazon SageMakerĐường ống Amazon SageMaker. Việc chuyển sang SageMaker Studio cung cấp nhiều tính năng có sẵn được xác định trước:

  • Giám sát mô hình và chất lượng dữ liệu cũng như khả năng giải thích của mô hình
  • Các công cụ môi trường phát triển tích hợp (IDE) tích hợp sẵn như gỡ lỗi
  • Giám sát chi phí/hiệu suất
  • Khung chấp nhận mô hình
  • Đăng ký mô hình

Tuy nhiên, ưu đãi quan trọng nhất đối với Axfood là khả năng tạo các mẫu dự án tùy chỉnh bằng cách sử dụng Dự án Amazon SageMaker được sử dụng làm bản thiết kế chi tiết cho tất cả các nhóm khoa học dữ liệu và những người thực hành ML. Nhóm Axfood đã có trình độ lập mô hình ML mạnh mẽ và trưởng thành nên trọng tâm chính là xây dựng kiến ​​trúc mới.

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

Khung ML mới được đề xuất của Axfood được cấu trúc xoay quanh hai quy trình chính: quy trình xây dựng mô hình và quy trình suy luận hàng loạt:

  • Các quy trình này được tạo phiên bản trong hai kho lưu trữ Git riêng biệt: một kho lưu trữ bản dựng và một kho lưu trữ triển khai (suy luận). Cùng nhau, chúng tạo thành một hệ thống mạnh mẽ để dự báo trái cây và rau quả.
  • Các quy trình được đóng gói thành một mẫu dự án tùy chỉnh bằng cách sử dụng Dự án SageMaker tích hợp với kho lưu trữ Git (Bitbucket) và quy trình Bitbucket của bên thứ ba để tích hợp liên tục và triển khai liên tục (CI/CD).
  • Mẫu dự án SageMaker bao gồm mã hạt giống tương ứng với từng bước của quy trình xây dựng và triển khai (chúng ta sẽ thảo luận các bước này chi tiết hơn ở phần sau của bài đăng này) cũng như định nghĩa quy trình—công thức về cách chạy các bước.
  • Tự động hóa việc xây dựng các dự án mới dựa trên mẫu được sắp xếp hợp lý thông qua Danh mục dịch vụ AWS, nơi một danh mục đầu tư được tạo ra, đóng vai trò như một bản tóm tắt cho nhiều sản phẩm.
  • Mỗi sản phẩm chuyển thành một Hình thành đám mây AWS mẫu này được triển khai khi một nhà khoa học dữ liệu tạo dự án SageMaker mới với bản thiết kế MLOps của chúng tôi làm nền tảng. Điều này kích hoạt một AWS Lambda chức năng tạo dự án Bitbucket với hai kho lưu trữ—xây dựng mô hình và triển khai mô hình—chứa mã hạt giống.

Sơ đồ sau minh họa kiến ​​trúc giải pháp. Quy trình công việc A mô tả quy trình phức tạp giữa hai quy trình mô hình—xây dựng và suy luận. Quy trình công việc B hiển thị quy trình tạo dự án ML mới.

Đường ống xây dựng mô hình

Quy trình xây dựng mô hình sắp xếp vòng đời của mô hình, bắt đầu từ quá trình tiền xử lý, chuyển qua đào tạo và đỉnh điểm là được đăng ký trong sổ đăng ký mô hình:

  • Sơ chế – Đây, SageMaker ScriptProcessor lớp được sử dụng cho kỹ thuật tính năng, dẫn đến tập dữ liệu mà mô hình sẽ được đào tạo.
  • Đào tạo và chuyển đổi hàng loạt – Vùng chứa suy luận và đào tạo tùy chỉnh từ SageMaker được khai thác để huấn luyện mô hình trên dữ liệu lịch sử và tạo dự đoán về dữ liệu đánh giá bằng cách sử dụng Công cụ ước tính và Biến áp SageMaker cho các tác vụ tương ứng.
  • Đánh giá – Mô hình được huấn luyện trải qua quá trình đánh giá bằng cách so sánh các dự đoán được tạo ra trên dữ liệu đánh giá với thực tế cơ bản bằng cách sử dụng ScriptProcessor.
  • Việc làm cơ bản – Đường ống tạo đường cơ sở dựa trên số liệu thống kê trong dữ liệu đầu vào. Đây là những điều cần thiết để giám sát dữ liệu và chất lượng mô hình, cũng như các phân bổ tính năng.
  • Đăng ký mô hình – Mô hình đã huấn luyện được đăng ký để sử dụng trong tương lai. Mô hình sẽ được các nhà khoa học dữ liệu được chỉ định phê duyệt để triển khai mô hình sử dụng trong sản xuất.

Đối với môi trường sản xuất, cơ chế nhập dữ liệu và kích hoạt được quản lý thông qua cơ chế điều phối Luồng khí chính. Trong khi đó, trong quá trình phát triển, quy trình được kích hoạt mỗi khi một cam kết mới được đưa vào kho lưu trữ Bitbucket xây dựng mô hình. Hình dưới đây trực quan hóa quy trình xây dựng mô hình.

Đường dẫn suy luận hàng loạt

Đường dẫn suy luận hàng loạt xử lý giai đoạn suy luận, bao gồm các bước sau:

  • Sơ chế – Dữ liệu được xử lý trước bằng cách sử dụng ScriptProcessor.
  • Chuyển đổi hàng loạt – Mô hình sử dụng vùng chứa suy luận tùy chỉnh với SageMaker Transformer và tạo dự đoán dựa trên dữ liệu được xử lý trước đầu vào. Mô hình được sử dụng là mô hình được đào tạo mới nhất được phê duyệt trong sổ đăng ký mô hình.
  • Hậu xử lý – Các dự đoán trải qua một loạt các bước hậu xử lý bằng cách sử dụng ScriptProcessor.
  • Giám sát – Giám sát liên tục hoàn tất việc kiểm tra các sai lệch liên quan đến chất lượng dữ liệu, chất lượng mô hình và phân bổ tính năng.

Nếu phát sinh sự khác biệt, logic nghiệp vụ trong tập lệnh xử lý hậu kỳ sẽ đánh giá xem liệu việc đào tạo lại mô hình có cần thiết hay không. Đường ống được lên kế hoạch để chạy đều đặn.

Sơ đồ sau đây minh họa quy trình suy luận hàng loạt. Quy trình công việc A tương ứng với quá trình tiền xử lý, chất lượng dữ liệu và kiểm tra độ lệch phân bổ tính năng, suy luận và xử lý hậu kỳ. Quy trình làm việc B tương ứng với việc kiểm tra độ lệch chất lượng của mô hình. Các quy trình này được phân chia vì quá trình kiểm tra độ lệch chất lượng mô hình sẽ chỉ chạy nếu có dữ liệu thực tế cơ bản mới.

Màn hình mô hình SageMaker

Với Giám sát mô hình Amazon SageMaker được tích hợp, các đường ống được hưởng lợi từ việc giám sát thời gian thực về những điều sau:

  • Chất lượng dữ liệu – Theo dõi bất kỳ sự trôi dạt hoặc không nhất quán nào trong dữ liệu
  • Chất lượng mô hình – Theo dõi mọi biến động trong hiệu suất của mô hình
  • Thuộc tính đặc trưng – Kiểm tra sự trôi dạt trong phân bổ tính năng

Giám sát chất lượng mô hình yêu cầu quyền truy cập vào dữ liệu thực tế. Mặc dù đôi khi việc thu được thông tin cơ bản có thể gặp khó khăn nhưng việc sử dụng dữ liệu hoặc giám sát độ lệch phân bổ tính năng đóng vai trò như một đại diện hữu hiệu cho chất lượng mô hình.

Cụ thể, trong trường hợp chất lượng dữ liệu bị sai lệch, hệ thống sẽ lưu ý những điều sau:

  • Khái niệm trôi dạt – Điều này liên quan đến những thay đổi trong mối tương quan giữa đầu vào và đầu ra, đòi hỏi phải có sự thật căn bản
  • dịch chuyển đồng biến – Ở đây nhấn mạnh vào sự thay đổi trong phân bố của các biến đầu vào độc lập

Chức năng trôi dữ liệu của SageMaker Model Monitor ghi lại và xem xét kỹ lưỡng dữ liệu đầu vào, triển khai các quy tắc và kiểm tra thống kê một cách tỉ mỉ. Cảnh báo được đưa ra bất cứ khi nào phát hiện sự bất thường.

Song song với việc sử dụng các biện pháp kiểm tra độ lệch chất lượng dữ liệu làm đại diện để theo dõi sự xuống cấp của mô hình, hệ thống cũng giám sát độ lệch phân bổ tính năng bằng cách sử dụng điểm tăng tích lũy chiết khấu (NDCG) được chuẩn hóa. Điểm này rất nhạy cảm với cả những thay đổi trong thứ tự xếp hạng thuộc tính của đối tượng địa lý cũng như điểm thuộc tính thô của đối tượng địa lý. Bằng cách theo dõi sự thay đổi trong phân bổ cho các tính năng riêng lẻ và tầm quan trọng tương đối của chúng, có thể dễ dàng phát hiện ra sự suy giảm về chất lượng mô hình.

khả năng giải thích mô hình

Khả năng giải thích của mô hình là một phần quan trọng trong quá trình triển khai ML vì nó đảm bảo tính minh bạch trong các dự đoán. Để hiểu chi tiết, chúng tôi sử dụng Làm rõ Amazon SageMaker.

Nó cung cấp cả giải thích mô hình toàn cầu và cục bộ thông qua kỹ thuật phân bổ tính năng bất khả tri của mô hình dựa trên khái niệm giá trị Shapley. Điều này được sử dụng để giải mã lý do tại sao một dự đoán cụ thể được đưa ra trong quá trình suy luận. Những cách giải thích như vậy, vốn mang tính tương phản, có thể khác nhau dựa trên các đường cơ sở khác nhau. SageMaker Clarify hỗ trợ xác định đường cơ sở này bằng cách sử dụng K-means hoặc K-prototype trong tập dữ liệu đầu vào, sau đó được thêm vào quy trình xây dựng mô hình. Chức năng này cho phép chúng tôi xây dựng các ứng dụng AI tổng quát trong tương lai để nâng cao hiểu biết về cách hoạt động của mô hình.

Công nghiệp hóa: Từ nguyên mẫu đến sản xuất

Dự án MLOps bao gồm mức độ tự động hóa cao và có thể đóng vai trò là kế hoạch chi tiết cho các trường hợp sử dụng tương tự:

  • Cơ sở hạ tầng có thể được tái sử dụng hoàn toàn, trong khi mã hạt giống có thể được điều chỉnh cho từng tác vụ, với hầu hết các thay đổi được giới hạn ở định nghĩa quy trình và logic nghiệp vụ cho quá trình tiền xử lý, đào tạo, suy luận và xử lý hậu kỳ.
  • Các tập lệnh đào tạo và suy luận được lưu trữ bằng cách sử dụng các vùng chứa tùy chỉnh của SageMaker, do đó, có thể cung cấp nhiều mô hình khác nhau mà không cần thay đổi dữ liệu và các bước giám sát mô hình hoặc giải thích mô hình, miễn là dữ liệu ở định dạng bảng.

Sau khi hoàn thành công việc trên nguyên mẫu, chúng tôi chuyển sang cách sử dụng nó trong sản xuất. Để làm như vậy, chúng tôi cảm thấy cần phải thực hiện một số điều chỉnh bổ sung cho mẫu MLOps:

  • Mã gốc ban đầu được sử dụng trong nguyên mẫu cho mẫu bao gồm các bước tiền xử lý và hậu xử lý chạy trước và sau các bước ML cốt lõi (huấn luyện và suy luận). Tuy nhiên, khi mở rộng quy mô để sử dụng mẫu cho nhiều trường hợp sử dụng trong sản xuất, các bước tiền xử lý và hậu xử lý tích hợp sẵn có thể dẫn đến giảm tính tổng quát và giảm khả năng tái tạo mã.
  • Để cải thiện tính tổng quát và giảm thiểu mã lặp lại, chúng tôi đã chọn thu hẹp quy trình hơn nữa. Thay vì chạy các bước tiền xử lý và hậu xử lý như một phần của quy trình ML, chúng tôi chạy các bước này như một phần của quá trình điều phối Luồng khí chính trước và sau khi kích hoạt quy trình ML.
  • Bằng cách này, các tác vụ xử lý dành riêng cho từng trường hợp sử dụng sẽ được trừu tượng hóa khỏi mẫu và phần còn lại là một đường dẫn ML cốt lõi thực hiện các tác vụ chung cho nhiều trường hợp sử dụng với sự lặp lại mã tối thiểu. Các thông số khác nhau giữa các trường hợp sử dụng được cung cấp dưới dạng đầu vào cho đường dẫn ML từ điều phối Luồng khí chính.

Kết quả: Một cách tiếp cận nhanh chóng và hiệu quả để xây dựng và triển khai mô hình

Nguyên mẫu cộng tác với AWS đã tạo ra một mẫu MLOps tuân theo các phương pháp thực hành tốt nhất hiện tại và hiện có sẵn để tất cả các nhóm khoa học dữ liệu của Axfood sử dụng. Bằng cách tạo dự án SageMaker mới trong SageMaker Studio, các nhà khoa học dữ liệu có thể bắt đầu các dự án ML mới để chuyển sang sản xuất một cách nhanh chóng và liền mạch, cho phép quản lý thời gian hiệu quả hơn. Điều này có thể thực hiện được bằng cách tự động hóa các tác vụ MLOps tẻ nhạt, lặp đi lặp lại như một phần của mẫu.

Hơn nữa, một số chức năng mới đã được thêm vào theo cách tự động vào thiết lập ML của chúng tôi. Những lợi ích này bao gồm:

  • Giám sát mô hình – Chúng tôi có thể thực hiện kiểm tra độ lệch về chất lượng mô hình và dữ liệu cũng như khả năng giải thích của mô hình
  • Mô hình và dòng dữ liệu – Giờ đây có thể theo dõi chính xác dữ liệu nào đã được sử dụng cho mô hình nào
  • Đăng ký mô hình – Điều này giúp chúng tôi lập danh mục các mô hình để sản xuất và quản lý các phiên bản mô hình

Kết luận

Trong bài đăng này, chúng tôi đã thảo luận về cách Axfood cải thiện hoạt động cũng như khả năng mở rộng của các hoạt động AI và ML hiện có của chúng tôi bằng cách cộng tác với các chuyên gia AWS và bằng cách sử dụng SageMaker cũng như các sản phẩm liên quan của nó.

Những cải tiến này sẽ giúp các nhóm khoa học dữ liệu của Axfood xây dựng quy trình công việc ML theo cách chuẩn hóa hơn, đồng thời sẽ đơn giản hóa đáng kể việc phân tích và giám sát các mô hình trong quá trình sản xuất—đảm bảo chất lượng của các mô hình ML do nhóm của chúng tôi xây dựng và duy trì.

Vui lòng để lại bất kỳ phản hồi hoặc câu hỏi nào trong phần bình luận.


Về các tác giả

Tiến sĩ Björn Blomqvist là Trưởng phòng Chiến lược AI tại Axfood AB. Trước khi gia nhập Axfood AB, ông đã lãnh đạo một nhóm Nhà khoa học dữ liệu tại Dagab, một phần của Axfood, xây dựng các giải pháp máy học cải tiến với sứ mệnh cung cấp thực phẩm tốt và bền vững cho người dân trên khắp Thụy Điển. Sinh ra và lớn lên ở phía bắc Thụy Điển, trong thời gian rảnh rỗi, Björn phiêu lưu đến những ngọn núi tuyết và biển khơi.

Oskar Klang là Nhà khoa học dữ liệu cấp cao tại bộ phận phân tích tại Dagab, nơi anh thích làm việc với mọi thứ phân tích và học máy, ví dụ: tối ưu hóa hoạt động chuỗi cung ứng, xây dựng mô hình dự báo và gần đây hơn là các ứng dụng GenAI. Ông cam kết xây dựng các quy trình máy học hợp lý hơn, nâng cao hiệu quả và khả năng mở rộng.

Pavel Maslov là kỹ sư ML và DevOps cấp cao trong nhóm Nền tảng phân tích. Pavel có nhiều kinh nghiệm trong việc phát triển khung, cơ sở hạ tầng và công cụ trong lĩnh vực DevOps và ML/AI trên nền tảng AWS. Pavel là một trong những người đóng vai trò quan trọng trong việc xây dựng năng lực nền tảng trong ML tại Axfood.

Joakim Berg là Trưởng nhóm và Nền tảng phân tích chủ sở hữu sản phẩm, có trụ sở tại Stockholm Thụy Điển. Anh ấy đang lãnh đạo một nhóm gồm các kỹ sư DevOps/MLOps cuối Nền tảng dữ liệu cung cấp nền tảng Dữ liệu và ML cho các nhóm Khoa học dữ liệu. Joakim có nhiều năm kinh nghiệm lãnh đạo các nhóm kiến ​​trúc và phát triển cấp cao từ các ngành khác nhau.

tại chỗ_img

Tin tức mới nhất

tại chỗ_img