Amazon'da Amp, müşteri etkileşimini artırmak için verileri nasıl kullandı, Bölüm 2: Amazon SageMaker PlatoBlockchain Veri Zekasını kullanarak kişiselleştirilmiş bir program öneri platformu oluşturma. Dikey Arama. Ai.

Amazon'da Amp, müşteri etkileşimini artırmak için verileri nasıl kullandı, Bölüm 2: Amazon SageMaker'ı kullanarak kişiselleştirilmiş bir program öneri platformu oluşturma

amfi Amazon'un yeni bir canlı radyo uygulamasıdır. Amp ile kendi radyo programınızı düzenleyebilir ve Amazon Müzik kataloğundaki şarkıları çalabilir veya diğer Amp kullanıcılarının sunduğu programları dinleyebilir ve dinleyebilirsiniz. İçeriğin bol ve çeşitli olduğu bir ortamda, kullanıcı deneyimini her kullanıcının kişisel zevkine göre uyarlamak önemlidir; böylece kullanıcılar beğendikleri programları kolayca bulabilir ve keyif alacakları yeni içerikleri keşfedebilirler.

Amp, uygulamanın ana sayfasında canlı ve gelecek Amp şovları için kişiselleştirilmiş öneriler sağlamak üzere makine öğrenimini (ML) kullanır. Öneriler, bir programın popülerliğini (dinleme ve beğeni sayısı gibi), yaratıcının popülerliğini (son programların toplam oynatılma sayısı gibi) ve kullanıcının kişisel yakınlıklarını temsil eden özellikler kullanılarak Rastgele Orman modeli kullanılarak hesaplanır. bir şovun konusuna ve yaratıcısına. Yakın ilgiler, dolaylı olarak kullanıcının davranış verilerinden veya kullanıcı profillerinde belirtildiği gibi doğrudan ilgi duyulan konulardan (pop müzik, beyzbol veya siyaset gibi) hesaplanır.

Bu, Amp için veri analitiğini ve makine öğrenimini kullanma ve kişiselleştirilmiş bir program öneri listesi platformu oluşturma konulu bir serinin 2. Bölümüdür. Platform, Mayıs 3'deki lansmanından bu yana takip edilen müşteri etkileşimi metriklerinde (bir programı beğenme, bir içerik oluşturucuyu takip etme, yaklaşan program bildirimlerini etkinleştirme) %2022'lük bir artış gösterdi.

Bakın Bölüm 1 veri ve analiz sistemleri kullanılarak davranışsal verilerin nasıl toplandığını ve işlendiğini öğrenmek.

Çözüme genel bakış

Amp için ML tabanlı gösteri önericisinin, aşağıdaki mimari diyagramında gösterildiği gibi beş ana bileşeni vardır:

  1. Amp mobil uygulaması.
  2. Beğeniler ve takipler gibi davranışsal verilerin yanı sıra şovlar yayına girdiğinde durum güncellemeleri gibi yayın şovuyla ilgili bilgileri toplayan arka uç hizmetler.
  3. Davranışsal ve gösteri verilerinin gerçek zamanlı alımı ve gerçek zamanlı (çevrimiçi) özellik hesaplama ve depolama.
  4. Toplu (çevrimdışı) bilgi işlem ve depolama özelliğine sahiptir.
  5. Programların bir listesini almak için uygulamanın arka ucundan gelen istekleri işleyen bir Öneri Sistemi. Buna, kişiselleştirilmiş ve kişiselleştirilmemiş özelliklere dayalı olarak gösterileri sıralamak için gerçek zamanlı çıkarım da dahildir.

Bu yazı, aşağıdakileri detaylandırmak amacıyla 3, 4 ve 5. bölümlere odaklanmaktadır:

Aşağıdaki şemada üst düzey mimari ve bileşenleri gösterilmektedir.

Aşağıdaki bölümlerde, gerçek zamanlı özellik hesaplama, toplu özellik hesaplama, gerçek zamanlı çıkarım, operasyonel sağlık ve gözlemlediğimiz sonuçlar hakkında daha fazla ayrıntı sağlıyoruz.

Gerçek zamanlı özellik hesaplama

Bir program için beğenme ve dinleme sayısı gibi bazı özelliklerin sürekli olarak yayınlanması ve olduğu gibi kullanılması gerekirken, 5 dakikadan uzun dinleme oturumlarının sayısı gibi diğer özelliklerin de gerçek zamanlı olarak ham veri olarak dönüştürülmesi gerekir. oturumlar için akış sağlanır. Çıkarım zamanında değerlerin hesaplanması gereken bu tür özelliklere denir. belirli bir zaman noktası (PIT) özellikleri. PIT özelliklerine ilişkin verilerin hızlı bir şekilde güncellenmesi ve en son sürümün düşük gecikmeyle (20 gösterim için kullanıcı başına 1,000 milisaniyenin altında) yazılması ve okunması gerekir. Eksik veya kısmi veriler, önerilerin bozulmasına ve müşteri deneyiminin kötü olmasına neden olabileceğinden, verilerin dayanıklı bir depolama alanında da olması gerekir. Okuma/yazma gecikmesine ek olarak PIT özellikleri aynı zamanda düşük yansıma süresi gerektirir. Yansıma süresi, katkıda bulunan etkinlikler yayınlandıktan sonra bir özelliğin okunabilir hale gelmesi için geçen süredir; örneğin, bir dinleyicinin bir programı beğenmesi ile PIT LikeCount özelliğinin güncellenmesi arasındaki süre.

Verilerin kaynakları, doğrudan uygulamaya hizmet veren arka uç hizmetleridir. Verilerin bir kısmı metriklere dönüştürülür ve bunlar daha sonra aracılığıyla yayınlanır. Amazon Basit Bildirim Servisi (Amazon SNS) ML özellik dönüştürme ardışık düzeni gibi aşağı akış dinleyicilerine. MemoryDB gibi bir bellek içi veritabanı, dayanıklı depolama ve yüksek hacimlerde ultra hızlı performans için ideal bir hizmettir. Özellikleri dönüştüren ve MemoryDB'ye yazan bilgi işlem bileşeni Lambda'dır. Uygulama trafiği, zamana ve güne bağlı olarak günlük ve haftalık zirve ve düşüş modellerini takip eder. Lambda, gelen etkinlik hacmine göre otomatik ölçeklendirmeye olanak tanır. Her bir metrik dönüşümün bağımsız doğası, kendi başına durum bilgisi olmayan bir hizmet olan Lambda'yı da bu soruna iyi bir uyum sağlar. Koyarak Amazon Basit Kuyruk Hizmeti Amazon SNS ile Lambda arasındaki (Amazon SQS) yalnızca mesaj kaybını önlemekle kalmaz, aynı zamanda önceden yapılandırılmış Lambda eşzamanlılık sınırlarının hizmet vermek için yeterli olmayabileceği beklenmedik trafik patlamaları için bir arabellek görevi görür.

Toplu özellik hesaplama

Kullanıcının sürekli gelişen zevkini temsil etmek için geçmiş davranış verilerini kullanan özelliklerin hesaplanması daha karmaşıktır ve gerçek zamanlı olarak hesaplanamaz. Bu özellikler, sık sık, örneğin günde bir kez çalıştırılan bir toplu işlemle hesaplanır. Toplu özelliklere ilişkin veriler, verilerin filtrelenmesi ve toplanması için hızlı sorgulamayı desteklemelidir ve uzun sürelere yayılabileceğinden hacim olarak daha büyük olacaktır. Toplu özellikler aynı zamanda gerçek zamanlı çıkarım için girdi olarak alınıp gönderildiğinden, bunların yine de düşük gecikmeyle okunması gerekir.

Toplu özellik hesaplaması için ham veri toplamak, PIT özelliklerinin sahip olduğu dakikadan kısa yansıma süresi gereksinimine sahip değildir, bu da olayların daha uzun süre arabelleğe alınmasını ve metriklerin toplu olarak dönüştürülmesini mümkün kılar. Bu çözüm, akış verilerini hızlı bir şekilde çeşitli hedeflere almak için yönetilen bir hizmet olan Kinesis Data Firehose'u kullandı: Amazon Basit Depolama Hizmeti (Amazon S3) çevrimdışı hesaplamalarda kullanılacak S3 veri gölündeki kalıcı ölçümler için. Kinesis Data Firehose, bu ölçümlerin daha sonra toplu özellik hesaplaması tarafından kullanılmak üzere kolayca toplanması, toplu dönüştürülmesi ve Amazon S3'te kalıcı hale getirilmesi için bir olay arabelleği ve Lambda entegrasyonu sağlar. Toplu özellik hesaplamaları, PIT özellikleriyle aynı düşük gecikme süreli okuma/yazma gereksinimlerine sahip değildir; bu, Amazon S3'ü daha iyi bir seçim haline getirir çünkü bu büyük hacimli iş ölçümlerini depolamak için düşük maliyetli, dayanıklı depolama sağlar.

İlk ML modelimiz, son 21 ayda toplanan veriler kullanılarak günlük olarak hesaplanan 2 toplu özelliği kullanıyor. Bu veriler, kullanıcı başına hem oynatma hem de uygulama etkileşim geçmişini içerir ve kullanıcı sayısı ve uygulama kullanım sıklığına bağlı olarak artar. Bu ölçekte özellik mühendisliği, gerekli giriş verilerinin alınması, paralel olarak işlenmesi ve sonucun kalıcı depolamaya aktarılması için otomatikleştirilmiş bir süreç gerektirir. İşleme altyapısına yalnızca hesaplamaların yapıldığı süre boyunca ihtiyaç duyulur. SageMaker İşleme Apache Spark'ı ve dağıtılmış veri işleme işlerini büyük ölçekte çalıştırmak için gereken diğer bağımlılıkları içeren önceden oluşturulmuş Docker görüntüleri sağlar. Bir İşleme işinin temelindeki altyapı tamamen SageMaker tarafından yönetilir. Küme kaynakları işinizin süresi boyunca sağlanır ve iş tamamlandığında temizlenir.

Toplu işlemdeki her adım (veri toplama, özellik mühendisliği, özellik kalıcılığı), hata işlemeyi, yeniden denemeleri ve aradaki durum geçişlerini gerektiren bir iş akışının parçasıdır. İle AWS Basamak İşlevleri, bir durum makinesi oluşturabilir ve iş akışınızı birkaç ön işleme ve son işleme adımına bölebilir, ayrıca özellikleri SageMaker Özellik Mağazası'na veya diğer verileri Amazon S3'e kalıcı hale getirme adımına da bölebilirsiniz. Step Functions'taki bir durum makinesi şu yolla tetiklenebilir: Amazon EventBridge toplu hesaplamayı, her gün 10:00 UTC'de olduğu gibi belirli bir programda çalışacak şekilde otomatikleştirmek için.

Özellikler hesaplandıktan sonra, modelin yeniden eğitiminin yanı sıra çıkarım sırasında okunmak üzere sürümlendirilmeleri ve saklanmaları gerekir. Kendi özellik depolama ve yönetim hizmetinizi oluşturmak yerine SageMaker Özellik Mağazasını kullanabilirsiniz. Özellik Mağazası, makine öğrenimi modellerine yönelik özellikleri depolamak, paylaşmak ve yönetmek için tamamen yönetilen, amaca yönelik olarak oluşturulmuş bir depodur. ML özelliklerinin geçmişini çevrimdışı mağazada (Amazon S3) saklar ve ayrıca en yeni özelliklerin düşük gecikmeli okunmasına olanak sağlamak için çevrimiçi bir mağazaya API'ler sağlar. Çevrimdışı mağaza, daha fazla model eğitimi ve denemesi için geçmiş verileri sunabilir ve çevrimiçi mağaza, gerçek zamanlı çıkarım özelliklerine sahip olmak için müşteriye yönelik API'leriniz tarafından çağrılabilir. Hizmetlerimizi daha kişiselleştirilmiş içerik sağlayacak şekilde geliştirdikçe, ek ML modellerinin eğitilmesini ve Özellik Mağazası'nın yardımıyla bu modeller arasındaki özellikleri aramayı, keşfetmeyi ve yeniden kullanmayı bekliyoruz.

Gerçek zamanlı çıkarım

Gerçek zamanlı çıkarım genellikle ML modellerinin uç noktaların arkasında barındırılmasını gerektirir. Bunu web sunucularını veya kapsayıcılarını kullanarak yapabilirsiniz, ancak bunun yönetilmesi ve bakımı için makine öğrenimi mühendisliği çabası ve altyapısı gerekir. SageMaker, ML modellerinin gerçek zamanlı uç noktalara dağıtılmasını kolaylaştırır. SageMaker, ML modellerini eğitmenize, yüklemenize ve SageMaker uç noktaları oluşturup yapılandırarak bunları barındırmanıza olanak tanır. Gerçek zamanlı çıkarım, Amp ana sayfasında gezinirken gösterileri sıralamak için düşük gecikme gereksinimlerini karşılar.

Yönetilen barındırmaya ek olarak SageMaker, yönetilen uç nokta ölçeklendirmesi sağlar. SageMaker çıkarımı, ölçeklendirmeyi tetiklemek için minimum ve maksimum örnek sayıları ve hedef kullanımıyla bir otomatik ölçeklendirme ilkesi tanımlamanıza olanak tanır. Bu şekilde, talep değiştikçe ölçeği kolayca büyütebilir veya küçültebilirsiniz.

Operasyonel sağlık

Bu sistemin gerçek zamanlı özellik hesaplaması için işlediği olay sayısı, uygulama kullanımının doğal düzenine (günün saatine veya haftanın gününe bağlı olarak daha yüksek veya daha düşük trafik) göre değişir. Benzer şekilde, gerçek zamanlı çıkarım için aldığı isteklerin sayısı, eş zamanlı uygulama kullanıcılarının sayısıyla orantılıdır. Bu hizmetler aynı zamanda popüler içerik oluşturucuların sosyal medyada kendi tanıtımlarını yapmaları nedeniyle trafikte beklenmedik zirvelere ulaşıyor. Sistemin, gelen trafiğe başarılı ve tutumlu bir şekilde hizmet vermek için ölçeği büyütüp küçültebilmesini sağlamak önemli olsa da, müşterilere veri ve hizmet kaybını önlemek için operasyonel ölçümleri izlemek ve beklenmedik operasyonel sorunlar konusunda uyarıda bulunmak da önemlidir. Bu hizmetlerin durumunu izlemek basittir. Amazon Bulut İzleme. Arızalar ve operasyonların gecikmesi gibi hayati hizmet durumu ölçümlerinin yanı sıra bellek, disk ve CPU kullanımı gibi kullanım ölçümleri de CloudWatch kullanılarak kullanıma hazırdır. Geliştirme ekibimiz, müşterilerimize yüksek kullanılabilirlik (%99.8) ve düşük gecikme süresiyle (kullanıcı başına önerilen programları almak için uçtan uca 200 milisaniyeden az) hizmet verebilmemizi sağlamak için ölçüm kontrol panellerini ve otomatik izlemeyi kullanıyor.

Sonucun ölçülmesi

Bu yazıda açıklanan ML tabanlı şov önericisinden önce, daha basit bir buluşsal algoritma, Amp şovlarını kullanıcının profilinde kendisi tarafından bildirilen kişisel ilgi alanlarına göre sıralıyordu. Kullanıcının geçmişteki uygulama etkileşimlerinden elde ettiği verilerle makine öğrenimi tabanlı önerilere geçişin etkisini ölçmek için bir A/B testi oluşturduk. Başarı göstergeleri olarak dinleme süresi ve etkileşim eylemlerinin sayısı (bir programı beğenme, bir program yaratıcısını takip etme, bildirimleri açma) gibi metriklerdeki iyileştirmeleri belirledik. Kullanıcıların %50'sinin makine öğrenimi tabanlı öneri aracı aracılığıyla kendileri için sıralanan gösteri önerilerini aldığı A/B testi, müşteri etkileşimi metriklerinde %3'lük bir artış ve oynatma süresinde %0.5'lik bir iyileşme gösterdi.

Sonuç

Amaca yönelik hizmetlerle Amp ekibi, bu gönderide açıklandığı gibi kişiselleştirilmiş program önerisi API'sini 3 aydan kısa bir sürede üretime sunabildi. Sistem ayrıca, tanınmış program sunucularının veya kullanıcı akınına neden olabilecek pazarlama kampanyalarının yarattığı öngörülemeyen yükler için de iyi ölçeklenir. Çözüm, işleme, eğitim ve barındırma için yönetilen hizmetleri kullanıyor ve bu da sistemin günlük bakımı için harcanan sürenin azaltılmasına yardımcı oluyor. Üretimdeki sistemlerin sağlığının sürekli olmasını sağlamak için yönetilen tüm hizmetleri CloudWatch aracılığıyla da izleyebiliyoruz.

Amp'in makine öğrenimi tabanlı öneri aracının ilk sürümünü kural tabanlı bir yaklaşıma (şovları yalnızca müşterinin ilgi alanına göre sıralayan) karşı A/B testi, makine öğrenimi tabanlı öneri aracının müşterileri daha çeşitli konulardan daha yüksek kaliteli içeriğe sunduğunu gösterdi Bu da daha fazla sayıda takip ve etkin bildirimle sonuçlanır. Amp ekibi, son derece alakalı öneriler sunmak için modelleri geliştirmeye yönelik sürekli olarak çalışıyor.

Özellik Mağazası hakkında daha fazla bilgi için şu adresi ziyaret edin: Amazon SageMaker Özellik Mağazası ve diğer müşteri kullanım örneklerine göz atın. AWS Makine Öğrenimi Blogu.


yazarlar hakkında

Amazon'da Amp, müşteri etkileşimini artırmak için verileri nasıl kullandı, Bölüm 2: Amazon SageMaker PlatoBlockchain Veri Zekasını kullanarak kişiselleştirilmiş bir program öneri platformu oluşturma. Dikey Arama. Ai.Lale Gupta Amazon Web Services'te Çözüm Mimarıdır. AWS'de teknoloji çözümleri tasarlamak, oluşturmak ve dağıtmak için Amazon ile birlikte çalışır. Müşterilerin AWS'de çözüm dağıtırken en iyi uygulamaları benimsemelerine yardımcı olur ve bir Analytics ve ML meraklısıdır. Boş zamanlarında yüzmeyi, yürüyüş yapmayı ve masa oyunları oynamayı sever.

Amazon'da Amp, müşteri etkileşimini artırmak için verileri nasıl kullandı, Bölüm 2: Amazon SageMaker PlatoBlockchain Veri Zekasını kullanarak kişiselleştirilmiş bir program öneri platformu oluşturma. Dikey Arama. Ai.David Kuo Amazon Web Services'te Çözüm Mimarıdır. AWS'de teknoloji çözümleri tasarlamak, oluşturmak ve dağıtmak için AWS müşterileriyle birlikte çalışır. Medya ve Eğlence müşterileriyle çalışıyor ve makine öğrenimi teknolojilerine ilgi duyuyor. Boş zamanlarında, boş zamanlarında ne yapması gerektiğini düşünür.

Amazon'da Amp, müşteri etkileşimini artırmak için verileri nasıl kullandı, Bölüm 2: Amazon SageMaker PlatoBlockchain Veri Zekasını kullanarak kişiselleştirilmiş bir program öneri platformu oluşturma. Dikey Arama. Ai.Manolya McCormick Amazon'da Amp için bir Kıdemli Yazılım Geliştirme Mühendisidir. Müşteriye yönelik uygulamalara hizmet etmek için AWS'yi kullanarak dağıtılmış sistemler tasarlar ve oluşturur. Boş zamanlarında yeni tarifler okumaktan ve yemek yapmaktan hoşlanır.

Amazon'da Amp, müşteri etkileşimini artırmak için verileri nasıl kullandı, Bölüm 2: Amazon SageMaker PlatoBlockchain Veri Zekasını kullanarak kişiselleştirilmiş bir program öneri platformu oluşturma. Dikey Arama. Ai.Jeff Christophersen Amazon'da Amp için Kıdemli Veri Mühendisi. AWS'de eyleme dönüştürülebilir içgörüler sağlayan Büyük Veri çözümleri tasarlamak, oluşturmak ve dağıtmak için çalışıyor. Dahili ekiplere ölçeklenebilir ve otomatik çözümler benimseme konusunda yardımcı olur ve bir Analitik ve Büyük Veri meraklısıdır. Boş zamanlarında, kayak yapmadığı zamanlarda onu dağ bisikletinde bulabilirsiniz.

Zaman Damgası:

Den fazla AWS Makine Öğrenimi