Cách Amp trên Amazon sử dụng dữ liệu để tăng mức độ tương tác của khách hàng, Phần 2: Xây dựng nền tảng đề xuất chương trình được cá nhân hóa bằng cách sử dụng Amazon SageMaker PlatoBlockchain Data Intelligence. Tìm kiếm dọc. Ái.

Cách Amp trên Amazon sử dụng dữ liệu để tăng mức độ tương tác của khách hàng, Phần 2: Xây dựng nền tảng đề xuất chương trình được cá nhân hóa bằng Amazon SageMaker

amp là một ứng dụng radio trực tiếp mới của Amazon. Với Amp, bạn có thể lưu trữ chương trình radio của riêng mình và phát các bài hát từ danh mục Amazon Music hoặc dò và nghe các chương trình mà người dùng Amp khác đang lưu trữ. Trong môi trường có nội dung phong phú và đa dạng, điều quan trọng là phải điều chỉnh trải nghiệm người dùng theo sở thích riêng của từng người dùng để họ có thể dễ dàng tìm thấy các chương trình họ thích và khám phá nội dung mới mà họ sẽ thích.

Amp sử dụng công nghệ máy học (ML) để cung cấp các đề xuất được cá nhân hóa cho các chương trình Amp trực tiếp và sắp tới trên trang chủ của ứng dụng. Các đề xuất được tính toán bằng mô hình Rừng ngẫu nhiên bằng cách sử dụng các tính năng thể hiện mức độ phổ biến của một chương trình (chẳng hạn như lượt nghe và số lượt thích), mức độ phổ biến của người sáng tạo (chẳng hạn như tổng số lần các chương trình gần đây được phát) và sở thích cá nhân của người dùng đến chủ đề và người sáng tạo của chương trình. Mối quan hệ được tính toán ngầm từ dữ liệu hành vi của người dùng hoặc rõ ràng từ các chủ đề quan tâm (chẳng hạn như nhạc pop, bóng chày hoặc chính trị) như được cung cấp trong hồ sơ người dùng của họ.

Đây là Phần 2 của loạt bài về cách sử dụng phân tích dữ liệu và ML cho Amp cũng như tạo nền tảng danh sách đề xuất chương trình được cá nhân hóa. Nền tảng này đã cho thấy các chỉ số về mức độ tương tác của khách hàng được theo dõi đã tăng 3% (thích một chương trình, theo dõi người sáng tạo, bật thông báo về chương trình sắp tới) kể từ khi ra mắt vào tháng 2022 năm XNUMX.

Tham khảo Phần 1 để tìm hiểu cách thu thập và xử lý dữ liệu hành vi bằng cách sử dụng hệ thống phân tích và dữ liệu.

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

Công cụ đề xuất chương trình dựa trên ML dành cho Amp có năm thành phần chính, như được minh họa trong sơ đồ kiến ​​trúc sau:

  1. Ứng dụng di động Amp.
  2. Các dịch vụ phụ trợ thu thập dữ liệu hành vi, chẳng hạn như lượt thích và lượt theo dõi, cũng như phát thông tin liên quan đến chương trình như cập nhật trạng thái khi chương trình được phát trực tiếp.
  3. Nhập dữ liệu hành vi và hiển thị theo thời gian thực cũng như tính toán và lưu trữ tính năng theo thời gian thực (trực tuyến).
  4. Tính năng tính toán và lưu trữ hàng loạt (ngoại tuyến).
  5. Hệ thống đề xuất xử lý các yêu cầu đến từ phần phụ trợ của ứng dụng để nhận danh sách chương trình. Điều này bao gồm suy luận theo thời gian thực để xếp hạng các chương trình dựa trên các tính năng được cá nhân hóa và không được cá nhân hóa.

Bài đăng này tập trung vào các phần 3, 4 và 5 nhằm trình bày chi tiết những nội dung sau:

Sơ đồ sau đây cho thấy kiến ​​trúc cấp cao và các thành phần của nó.

Trong các phần sau, chúng tôi cung cấp thêm thông tin chi tiết về tính toán tính năng thời gian thực, tính toán tính năng hàng loạt, suy luận thời gian thực, tình trạng vận hành và kết quả mà chúng tôi quan sát được.

Tính toán tính năng thời gian thực

Một số tính năng, chẳng hạn như số lượt thích và số lượt nghe cho một chương trình, cần phải được phát trực tuyến liên tục và được sử dụng nguyên trạng, trong khi các tính năng khác, chẳng hạn như số phiên nghe dài hơn 5 phút, cũng cần được chuyển đổi theo thời gian thực dưới dạng dữ liệu thô. cho các phiên được phát trực tuyến. Những loại tính năng này trong đó các giá trị cần được tính toán tại thời điểm suy luận được gọi là thời điểm (TNCN) đặc điểm. Dữ liệu cho các tính năng PIT cần được cập nhật nhanh chóng và phiên bản mới nhất phải được ghi và đọc với độ trễ thấp (dưới 20 mili giây cho mỗi người dùng cho 1,000 chương trình). Dữ liệu cũng cần được lưu trữ lâu dài vì dữ liệu bị thiếu hoặc một phần có thể gây ra các đề xuất không tốt và trải nghiệm khách hàng kém. Ngoài độ trễ đọc/ghi, các tính năng PIT còn yêu cầu thời gian phản ánh thấp. Thời gian phản ánh là thời gian cần thiết để một tính năng có sẵn để đọc sau khi các sự kiện đóng góp được phát ra, chẳng hạn như thời gian từ khi người nghe thích một chương trình đến khi tính năng PIT LikeCount được cập nhật.

Nguồn dữ liệu là các dịch vụ phụ trợ trực tiếp phục vụ ứng dụng. Một số dữ liệu được chuyển đổi thành số liệu sau đó được phát qua Dịch vụ thông báo đơn giản của Amazon (Amazon SNS) tới những người nghe xuôi tuyến chẳng hạn như quy trình chuyển đổi tính năng ML. Cơ sở dữ liệu trong bộ nhớ như MemoryDB là một dịch vụ lý tưởng để lưu trữ lâu bền và hiệu năng cực nhanh với khối lượng lớn. Thành phần điện toán giúp chuyển đổi và ghi các tính năng vào MemoryDB là Lambda. Lưu lượng truy cập ứng dụng tuân theo các mô hình đỉnh và đáy hàng ngày và hàng tuần tùy thuộc vào thời gian và ngày. Lambda cho phép tự động điều chỉnh quy mô theo số lượng sự kiện sắp đến. Bản chất độc lập của mỗi phép chuyển đổi số liệu riêng lẻ cũng khiến cho Lambda, vốn là một dịch vụ không trạng thái, trở nên phù hợp cho vấn đề này. Đặt Dịch vụ xếp hàng đơn giản trên Amazon (Amazon SQS) giữa Amazon SNS và Lambda không chỉ ngăn chặn tình trạng mất tin nhắn mà còn hoạt động như một bộ đệm cho các đợt bùng phát lưu lượng truy cập không mong muốn mà giới hạn đồng thời Lambda được định cấu hình trước có thể không đủ để phân phát.

Tính toán tính năng hàng loạt

Các tính năng sử dụng dữ liệu hành vi lịch sử để thể hiện sở thích ngày càng phát triển của người dùng sẽ phức tạp hơn để tính toán và không thể tính toán trong thời gian thực. Các tính năng này được tính toán bằng một quy trình hàng loạt chạy thường xuyên, chẳng hạn như một lần mỗi ngày. Dữ liệu cho các tính năng hàng loạt phải hỗ trợ truy vấn nhanh để lọc và tổng hợp dữ liệu, đồng thời có thể kéo dài trong thời gian dài nên sẽ có dung lượng lớn hơn. Vì các tính năng hàng loạt cũng được truy xuất và gửi làm đầu vào cho suy luận theo thời gian thực nên chúng vẫn phải được đọc với độ trễ thấp.

Việc thu thập dữ liệu thô cho tính toán tính năng hàng loạt không có yêu cầu về thời gian phản ánh dưới phút mà các tính năng PIT có, điều này giúp cho việc đệm các sự kiện lâu hơn và chuyển đổi số liệu theo đợt là khả thi. Giải pháp này sử dụng Kinesis Data Firehose, một dịch vụ được quản lý để nhanh chóng nhập dữ liệu phát trực tuyến vào một số điểm đến, bao gồm Dịch vụ lưu trữ đơn giản của Amazon (Amazon S3) để duy trì các số liệu vào kho dữ liệu S3 để sử dụng trong tính toán ngoại tuyến. Kinesis Data Firehose cung cấp vùng đệm sự kiện và tích hợp Lambda để dễ dàng thu thập, chuyển đổi hàng loạt và lưu giữ các số liệu này sang Amazon S3 để sử dụng sau này cho tính năng tính năng hàng loạt. Tính toán tính năng hàng loạt không có yêu cầu đọc/ghi có độ trễ thấp giống như tính năng PIT, điều này khiến Amazon S3 trở thành lựa chọn tốt hơn vì nó cung cấp bộ lưu trữ bền bỉ, chi phí thấp để lưu trữ khối lượng lớn số liệu kinh doanh này.

Mô hình ML ban đầu của chúng tôi sử dụng 21 tính năng hàng loạt được tính toán hàng ngày bằng cách sử dụng dữ liệu được thu thập trong 2 tháng qua. Dữ liệu này bao gồm cả lịch sử phát lại và tương tác với ứng dụng của mỗi người dùng, đồng thời tăng lên theo số lượng người dùng và tần suất sử dụng ứng dụng. Kỹ thuật tính năng ở quy mô này yêu cầu một quy trình tự động để lấy dữ liệu đầu vào cần thiết, xử lý song song và xuất kết quả sang bộ lưu trữ liên tục. Cơ sở hạ tầng xử lý chỉ cần thiết trong thời gian tính toán. Xử lý SageMaker cung cấp các hình ảnh Docker dựng sẵn bao gồm Apache Spark và các phần phụ thuộc khác cần thiết để chạy các công việc xử lý dữ liệu phân tán ở quy mô lớn. Cơ sở hạ tầng cơ bản cho công việc Xử lý được quản lý hoàn toàn bởi SageMaker. Tài nguyên cụm được cung cấp trong suốt thời gian thực hiện công việc của bạn và được dọn sạch khi công việc hoàn thành.

Mỗi bước trong quy trình hàng loạt—thu thập dữ liệu, kỹ thuật tính năng, lưu giữ tính năng—là một phần của quy trình làm việc yêu cầu xử lý lỗi, thử lại và chuyển đổi trạng thái ở giữa các bước. Với Chức năng bước AWS, bạn có thể tạo một máy trạng thái và chia quy trình công việc của mình thành nhiều bước tiền xử lý và hậu xử lý, cũng như một bước để lưu giữ các tính năng trong SageMaker Feature Store hoặc dữ liệu khác vào Amazon S3. Máy trạng thái trong Step Functions có thể được kích hoạt thông qua Sự kiện Amazon để tự động hóa tính toán hàng loạt để chạy theo lịch trình đã đặt, chẳng hạn như một lần mỗi ngày vào lúc 10:00 tối UTC.

Sau khi các tính năng được tính toán, chúng cần được phiên bản và lưu trữ để đọc trong quá trình suy luận cũng như đào tạo lại mô hình. Thay vì xây dựng dịch vụ quản lý và lưu trữ tính năng của riêng mình, bạn có thể sử dụng Cửa hàng tính năng SageMaker. Cửa hàng tính năng là kho lưu trữ được xây dựng có mục đích, được quản lý hoàn toàn để lưu trữ, chia sẻ và quản lý các tính năng cho mô hình ML. Nó lưu trữ lịch sử các tính năng ML trong cửa hàng ngoại tuyến (Amazon S3) và cũng cung cấp API cho cửa hàng trực tuyến để cho phép đọc hầu hết các tính năng gần đây với độ trễ thấp. Cửa hàng ngoại tuyến có thể phân phát dữ liệu lịch sử để đào tạo và thử nghiệm mô hình sâu hơn, đồng thời cửa hàng trực tuyến có thể được API hướng tới khách hàng của bạn gọi để nhận các tính năng suy luận theo thời gian thực. Khi chúng tôi phát triển các dịch vụ của mình để cung cấp nội dung được cá nhân hóa hơn, chúng tôi dự kiến ​​sẽ đào tạo các mô hình ML bổ sung và với sự trợ giúp của Feature Store, tìm kiếm, khám phá và sử dụng lại các tính năng trong số các mô hình này.

Suy luận thời gian thực

Suy luận thời gian thực thường yêu cầu lưu trữ các mô hình ML phía sau các điểm cuối. Bạn có thể thực hiện việc này bằng cách sử dụng máy chủ web hoặc vùng chứa, nhưng điều này đòi hỏi nỗ lực kỹ thuật ML và cơ sở hạ tầng để quản lý và duy trì. SageMaker giúp dễ dàng triển khai các mô hình ML tới các điểm cuối thời gian thực. SageMaker cho phép bạn đào tạo và tải lên các mô hình ML cũng như lưu trữ chúng bằng cách tạo và định cấu hình các điểm cuối SageMaker. Suy luận theo thời gian thực đáp ứng các yêu cầu về độ trễ thấp để xếp hạng các chương trình khi chúng được duyệt trên trang chủ Amp.

Ngoài dịch vụ lưu trữ được quản lý, SageMaker còn cung cấp khả năng mở rộng điểm cuối được quản lý. Suy luận SageMaker cho phép bạn xác định chính sách tự động thay đổi quy mô với số lượng phiên bản tối thiểu và tối đa cũng như mức sử dụng mục tiêu để kích hoạt quy mô. Bằng cách này, bạn có thể dễ dàng mở rộng hoặc thu nhỏ quy mô khi nhu cầu thay đổi.

Sức khỏe hoạt động

Số lượng sự kiện mà hệ thống này xử lý để tính toán tính năng theo thời gian thực thay đổi tương ứng với mô hình sử dụng ứng dụng tự nhiên (lưu lượng truy cập cao hơn hoặc thấp hơn dựa trên thời gian trong ngày hoặc ngày trong tuần). Tương tự, số lượng yêu cầu mà nó nhận được về suy luận thời gian thực sẽ tỷ lệ thuận với số lượng người dùng ứng dụng đồng thời. Các dịch vụ này cũng nhận được lưu lượng truy cập cao bất ngờ do những người sáng tạo nổi tiếng tự quảng cáo trên mạng xã hội. Mặc dù điều quan trọng là phải đảm bảo hệ thống có thể mở rộng quy mô để phục vụ lưu lượng truy cập đến một cách thành công và tiết kiệm, nhưng điều quan trọng là phải giám sát các số liệu vận hành và cảnh báo mọi sự cố vận hành không mong muốn nhằm ngăn ngừa mất dữ liệu và dịch vụ cho khách hàng. Việc theo dõi tình trạng của các dịch vụ này rất đơn giản bằng cách sử dụng amazoncloudwatch. Các số liệu tình trạng dịch vụ quan trọng như lỗi và độ trễ vận hành cũng như các số liệu sử dụng như mức sử dụng bộ nhớ, ổ đĩa và CPU đều có sẵn bằng cách sử dụng CloudWatch. Nhóm phát triển của chúng tôi sử dụng bảng điều khiển số liệu và giám sát tự động để đảm bảo chúng tôi có thể phục vụ khách hàng của mình với độ sẵn sàng cao (99.8%) và độ trễ thấp (dưới 200 mili giây từ đầu đến cuối để nhận được các chương trình được đề xuất cho mỗi người dùng).

Đo lường kết quả

Trước công cụ đề xuất chương trình dựa trên ML được mô tả trong bài đăng này, một thuật toán phỏng đoán đơn giản hơn đã xếp hạng các chương trình Amp dựa trên các chủ đề cá nhân mà người dùng quan tâm được tự báo cáo trên hồ sơ của họ. Chúng tôi thiết lập thử nghiệm A/B để đo lường tác động của việc chuyển sang đề xuất dựa trên ML dựa trên dữ liệu của người dùng từ các tương tác ứng dụng trước đây của họ. Chúng tôi đã xác định những cải thiện về số liệu như thời lượng nghe và số lượng hành động tương tác (thích một chương trình, theo dõi người tạo chương trình, bật thông báo) là các chỉ số thành công. Thử nghiệm A/B với 50% người dùng nhận được đề xuất chương trình được xếp hạng cho họ thông qua công cụ đề xuất dựa trên ML đã cho thấy chỉ số tương tác của khách hàng tăng 3% và thời lượng phát lại cải thiện 0.5%.

Kết luận

Với các dịch vụ được xây dựng có mục đích, nhóm Amp đã có thể phát hành API đề xuất chương trình được cá nhân hóa như mô tả trong bài đăng này để sản xuất trong vòng chưa đầy 3 tháng. Hệ thống này cũng có khả năng mở rộng quy mô phù hợp với lượng tải không thể đoán trước được tạo ra bởi những người tổ chức chương trình nổi tiếng hoặc các chiến dịch tiếp thị có thể tạo ra một lượng lớn người dùng. Giải pháp sử dụng các dịch vụ được quản lý để xử lý, đào tạo và lưu trữ, giúp giảm thời gian bảo trì hệ thống hàng ngày. Chúng tôi cũng có thể giám sát tất cả các dịch vụ được quản lý này thông qua CloudWatch để đảm bảo tình trạng hoạt động liên tục của các hệ thống trong quá trình sản xuất.

Thử nghiệm A/B phiên bản đầu tiên của công cụ đề xuất dựa trên ML của Amp dựa trên cách tiếp cận dựa trên quy tắc (chỉ sắp xếp hiển thị theo chủ đề mà khách hàng quan tâm) đã cho thấy rằng công cụ đề xuất dựa trên ML đưa khách hàng đến nội dung chất lượng cao hơn từ các chủ đề đa dạng hơn , điều này mang lại số lượng theo dõi và kích hoạt thông báo cao hơn. Nhóm Amp liên tục nỗ lực cải tiến các mô hình để đưa ra các đề xuất có mức độ phù hợp cao.

Để biết thêm thông tin về Cửa hàng tính năng, hãy truy cập Cửa hàng tính năng Amazon SageMaker và kiểm tra các trường hợp sử dụng khác của khách hàng trong Blog Học máy AWS.


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

Cách Amp trên Amazon sử dụng dữ liệu để tăng mức độ tương tác của khách hàng, Phần 2: Xây dựng nền tảng đề xuất chương trình được cá nhân hóa bằng cách sử dụng Amazon SageMaker PlatoBlockchain Data Intelligence. Tìm kiếm dọc. Ái.Hoa tulip Gupta là Kiến trúc sư giải pháp tại Amazon Web Services. Cô làm việc với Amazon để thiết kế, xây dựng và triển khai các giải pháp công nghệ trên AWS. Cô ấy hỗ trợ khách hàng áp dụng các phương pháp hay nhất trong khi triển khai giải pháp trong AWS và là một người đam mê Analytics và ML. Khi rảnh rỗi, cô thích bơi lội, đi bộ đường dài và chơi các trò chơi trên bàn.

Cách Amp trên Amazon sử dụng dữ liệu để tăng mức độ tương tác của khách hàng, Phần 2: Xây dựng nền tảng đề xuất chương trình được cá nhân hóa bằng cách sử dụng Amazon SageMaker PlatoBlockchain Data Intelligence. Tìm kiếm dọc. Ái.David Kuo là Kiến trúc sư giải pháp tại Amazon Web Services. Anh làm việc với các khách hàng của AWS để thiết kế, xây dựng và triển khai các giải pháp công nghệ trên AWS. Anh ấy làm việc với các khách hàng Truyền thông và Giải trí và có sở thích về công nghệ máy học. Trong thời gian rảnh rỗi, anh ấy tự hỏi mình nên làm gì với thời gian rảnh rỗi của mình.

Cách Amp trên Amazon sử dụng dữ liệu để tăng mức độ tương tác của khách hàng, Phần 2: Xây dựng nền tảng đề xuất chương trình được cá nhân hóa bằng cách sử dụng Amazon SageMaker PlatoBlockchain Data Intelligence. Tìm kiếm dọc. Ái.Manolya McCormick là Kỹ sư phát triển phần mềm Sr cho Amp trên Amazon. Cô thiết kế và xây dựng các hệ thống phân tán sử dụng AWS để phục vụ các ứng dụng dành cho khách hàng. Cô thích đọc và nấu những công thức nấu ăn mới vào thời gian rảnh rỗi.

Cách Amp trên Amazon sử dụng dữ liệu để tăng mức độ tương tác của khách hàng, Phần 2: Xây dựng nền tảng đề xuất chương trình được cá nhân hóa bằng cách sử dụng Amazon SageMaker PlatoBlockchain Data Intelligence. Tìm kiếm dọc. Ái.Jeff Christophersen là Kỹ sư dữ liệu Sr. cho Amp trên Amazon. Anh ấy làm việc để thiết kế, xây dựng và triển khai các giải pháp Dữ liệu lớn trên AWS nhằm thúc đẩy thông tin chi tiết hữu ích. Anh ấy hỗ trợ các nhóm nội bộ trong việc áp dụng các giải pháp tự động và có thể mở rộng, đồng thời là một người đam mê Analytics và Dữ liệu lớn. Khi rảnh rỗi, khi anh ấy không đi một đôi ván trượt, bạn có thể tìm thấy anh ấy trên chiếc xe đạp leo núi của mình.

Dấu thời gian:

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