Zephyrnet Logosu

Amazon Personalize'ı kullanarak gerçek zamanlı kişiselleştirilmiş önerileri uygulayın | Amazon Web Hizmetleri

Tarih:

Temel düzeyde, Makine Öğrenimi (ML) teknolojisi tahminlerde bulunmak için verilerden öğrenir. İşletmeler, müşteri deneyimlerini geliştirmek için verilerini makine öğrenimi destekli bir kişiselleştirme hizmetiyle kullanıyor. Bu yaklaşım, işletmelerin verileri kullanarak eyleme dönüştürülebilir öngörüler elde etmesine ve gelirlerini ve marka sadakatlerini artırmalarına yardımcı olur.

Amazon Kişiselleştir ML ile dijital dönüşümünüzü hızlandırarak kişiselleştirilmiş önerileri mevcut web sitelerine, uygulamalara, e-posta pazarlama sistemlerine ve daha fazlasına entegre etmenizi kolaylaştırır. Amazon Personalize, geliştiricilerin makine öğrenimi uzmanlığı gerektirmeden özelleştirilmiş bir kişiselleştirme motorunu hızlı bir şekilde uygulamasına olanak tanır. Amazon Personalize, gerekli altyapıyı sağlar ve verilerin işlenmesi, özelliklerin belirlenmesi, en uygun algoritmaların kullanılması ve modellerin eğitimi, optimizasyonu ve barındırılması da dahil olmak üzere tüm makine öğrenimi (ML) hattını yönetir. Sonuçları bir API aracılığıyla alırsınız ve minimum ücret veya ön taahhüt olmaksızın yalnızca kullandığınız kadar ödeme yaparsınız.

Sonrası Amazon Personalize ile neredeyse gerçek zamanlı kişiselleştirilmiş öneriler tasarlama Amazon Personalize'ı kullanarak neredeyse gerçek zamanlı kişiselleştirilmiş önerilerin nasıl tasarlanacağını gösterir ve AWS amaca yönelik oluşturulmuş veri hizmetleri. Bu yazıda, Amazon Personalize'ı kullanan gerçek zamanlı kişiselleştirilmiş öneri sisteminin referans uygulaması konusunda size yol göstereceğiz.

Çözüme genel bakış

Gerçek zamanlı kişiselleştirilmiş öneriler çözümü kullanılarak uygulanır Amazon Kişiselleştir, Amazon Basit Depolama Hizmeti (Amazon S3), Amazon Kinesis Veri Akışları, AWS Lambda, ve Amazon API Ağ Geçidi.

Mimari şu şekilde uygulanır:

  1. Veri Hazırlama - La başlamak veri kümesi grubu oluşturma, şemalar ve veri kümeleri öğelerinizi, etkileşimlerinizi ve kullanıcı verilerinizi temsil eder.
  2. Modeli eğitin – Verilerinizi içe aktardıktan sonra kullanım durumunuza uygun tarifi seçin ve ardından bir çözüm yarat bir modeli eğitmek bir çözüm sürümü oluşturma. Çözüm sürümünüz hazır olduğunda çözüm sürümünüz için kampanya oluşturabilirsiniz.
  3. Gerçek zamanlıya yakın öneriler alın – Kampanyanız olduğunda çağrıları uygulamanızda kampanyaya entegre edebilirsiniz. Burası çağrıların yapıldığı yer Tavsiye Alın or GetKişiselleştirilmişSıralama API'ler, Amazon Personalize'dan neredeyse gerçek zamanlı öneriler istemek için tasarlanmıştır.

Daha fazla bilgi için, bkz. Amazon Personalize ile neredeyse gerçek zamanlı kişiselleştirilmiş öneriler tasarlama.

Aşağıdaki şemada çözüm mimarisi gösterilmektedir.

Uygulama

Bu uygulamayı, son kullanıcıya zaman içinde film veritabanıyla olan etkileşimlerine dayalı olarak gerçek zamanlı film önerileri yapma konusunda bir kullanım örneğiyle gösteriyoruz.

Çözüm aşağıdaki adımlar kullanılarak uygulanır:

  1. Önkoşul (Veri hazırlama)
  2. Geliştirme ortamınızı kurun
  3. Çözümü dağıtın
  4. Çözüm sürümü oluşturma
  5. Bir kampanya oluşturun
  6. Etkinlik izleyici oluşturma
  7. Önerileri alın
  8. Gerçek zamanlı etkileşimleri kullanın
  9. Gerçek zamanlı önerileri doğrulayın
  10. Temizlemek

Önkoşullar

Başlamadan önce, aşağıdaki ön koşullara sahip olduğunuzdan emin olun:

  • Eğitim verilerinizi hazırlayın – Verileri kullanarak bir S3 klasörüne hazırlayın ve yükleyin. talimatlar. Bu özel kullanım durumu için etkileşim verilerini ve öğe verilerini yükleyeceksiniz. Etkileşim, kaydedip ardından eğitim verileri olarak içe aktardığınız bir olaydır. Amazon Personalize, öncelikle Etkileşimler veri kümesine aktardığınız etkileşim verilerine dayalı olarak öneriler oluşturur. Tıklama, izleme veya beğenme gibi birden fazla etkinlik türünü kaydedebilirsiniz. Amazon Personalize tarafından oluşturulan model, kullanıcının geçmiş etkileşimlerine dayanarak önerilerde bulunabilse de, modelin kullanıcılar veya öğeler arasındaki ilişkilerle ilgili verilere sahip olması durumunda bu önerilerin kalitesi artırılabilir. Bir kullanıcı, öğe veri kümesinde Drama olarak sınıflandırılan filmlerle etkileşimde bulunduysa Amazon Personalize, aynı türe sahip filmleri (öğeleri) önerecektir.
  • Geliştirme ortamınızı kurun - kurmak AWS Komut Satırı Arayüzü (AWS CLI).
  • CLI'yi Amazon hesabınızla yapılandırın - AWS CLI'yi yapılandırın AWS hesap bilgilerinizle.
  • AWS Cloud Development Kit'i (AWS CDK) yükleyin ve önyükleyin

Çözümü dağıtın

Çözümü dağıtmak için aşağıdakileri yapın:

  • klon depoyu masaüstünüzdeki yeni bir klasöre kopyalayın.
  • Sürüş yığını AWS ortamınıza aktarın.

Çözüm sürümü oluşturma

Çözüm, Amazon Personalize tarifinin, özelleştirilmiş parametrelerin ve bir veya daha fazla çözüm sürümünün (eğitimli modeller) kombinasyonunu ifade eder. Önceki adımda CDK projesini dağıttığınızda sizin için Kullanıcı Kişiselleştirme tarifi içeren bir çözüm otomatik olarak oluşturulur. Çözüm sürümü, eğitimli bir makine öğrenimi modelini ifade eder. Oluşturmak çözüm versiyonu uygulanması için.

Bir kampanya oluşturun

Bir kampanya, gerçek zamanlı öneriler oluşturmak için tedarik edilmiş işlem kapasitesine sahip bir çözüm sürümünü (eğitimli model) dağıtır. Oluşturmak kampanya uygulanması için.

Etkinlik izleyici oluşturma

Amazon Personalize, yalnızca gerçek zamanlı olay verilerine, yalnızca geçmiş olay verilerine veya her ikisine birden dayanarak önerilerde bulunabilir. Etkileşim verilerinizi oluşturmak için gerçek zamanlı olayları kaydedin ve Amazon Personalize'ın kullanıcılarınızın en son aktivitelerinden bilgi almasına olanak tanıyın. Bu, verilerinizi güncel tutar ve Amazon Personalize önerilerinin alaka düzeyini artırır. Olayları kaydedebilmeniz için önce bir olay izleyici oluşturmanız gerekir. Bir etkinlik izleyici, yeni etkinlik verilerini veri kümesi grubunuzdaki Etkileşimler veri kümesine yönlendirir. Oluşturun ve olay izleyici uygulanması için.

Önerileri alın

Bu kullanım durumunda etkileşim veri kümesi film kimliklerinden oluşur. Sonuç olarak kullanıcıya sunulan öneriler, geçmiş etkileşimlerinden belirlenen kişisel tercihlerine en yakın film kimliklerinden oluşacaktır. Şunu kullanabilirsiniz: getRecommendations İlişkili önerilerini göndererek bir kullanıcı için kişiselleştirilmiş öneriler almak için API userID, Kullanıcı ve kampanya ARN'si için ihtiyaç duyduğunuz önerilere ilişkin sonuçların sayısı. Kampanya ARN'sini Amazon Personalize konsol menüsünde bulabilirsiniz.

Örneğin, aşağıdaki istek, kullanıcı için 5 öneri alacaktır. userId 429:

curl --location 'https://{your-api-id}.execute-api.{your-region}.amazonaws.com/prod/getRecommendations?campaignArn={campaignArn}&userId=429&numResults=5'

İsteğin yanıtı şöyle olacaktır:

{ "$metadata": { "httpStatusCode": 200, "requestId": "7159c128-4e16-45a4-9d7e-cf19aa2256e8", "attempts": 1, "totalRetryDelay": 0 }, "itemList": [ { "itemId": "596", "score": 0.0243044 }, { "itemId": "153", "score": 0.0151695 }, { "itemId": "16", "score": 0.013694 }, { "itemId": "261", "score": 0.013524 }, { "itemId": "34", "score": 0.0122294 } ], "recommendationId": "RID-1d-40c1-8d20-dfffbd7b0ac7-CID-06b10f"
}

API çağrısının döndürdüğü öğeler, Amazon Personalize'ın geçmiş etkileşimlerine göre kullanıcıya önerdiği filmlerdir.

Bu bağlamda sağlanan puan değerleri, sıfır ile 1.0 arasında değişen kayan noktalı sayıları temsil eder. Bu değerler mevcut kampanyaya ve bu kullanım senaryosuna ilişkin ilgili tariflere karşılık gelir. Kapsamlı veri kümenizde bulunan tüm öğelere atanan toplu puanlara göre belirlenirler.

Gerçek zamanlı etkileşimleri kullanın

Önceki örnekte ID'si 429 olan kullanıcıya film veritabanıyla olan geçmiş etkileşimlerine göre öneriler alınmıştı. Gerçek zamanlı öneriler için, öğelerle olan kullanıcı etkileşimlerinin gerçek zamanlı olarak Amazon Personalize'a aktarılması gerekir. Bu etkileşimler Amazon Personalize aracılığıyla öneri sistemine aktarılır. Etkinlik İzleyici. Etkileşim türü olarak da adlandırılır EventType, etkileşim veri veri kümesinde aynı adı taşıyan sütun tarafından verilir (EVENT_TYPE). Bu örnekte etkinlikler “izle” veya “tıkla” türünde olabilir ancak uygulamanızın ihtiyaçlarına göre kendi etkinlik türlerinize de sahip olabilirsiniz.

Bu örnekte, öğelerle kullanıcıların olaylarını üreten açık API, olay sayısına karşılık gelen "etkileşimler" parametresini alır (interactions) bir kullanıcının (UserId) tek bir elemanla (itemId) Şu anda. trackingId parametresi Amazon Personalize konsolunda ve Event Tracker isteğinin oluşturulmasına verilen yanıtta bulunabilir.

Bu örnek bir putEvent istek: Geçerli zaman damgasını kullanarak, '1' kullanıcı kimliği için öğe kimliği '185' olan, tıklama türünde 429 etkileşim oluşturun. Üretimde 'sentAt'ın kullanıcının etkileşim zamanına ayarlanması gerektiğini unutmayın. Aşağıdaki örnekte bunu, bu yazı için API isteğini yazdığımız zaman dilimindeki zaman noktasına ayarladık. Olaylar bir API Ağ Geçidi aracılığıyla Amazon Kinesis Veri Akışlarına gönderilir; bu nedenle akış adını ve PartitionKey parametrelerini göndermeniz gerekir.

curl --location 'https://iyxhva3ll6.execute-api.us-west-2.amazonaws.com/prod/data' --header 'Content-Type: application/json' --data '{ "stream-name": "my-stream","Data": {"userId" : "429", "interactions": 1, "itemId": "185", "trackingId" : "c90ac6d7-3d89-4abc-8a70-9b09c295cbcd", "eventType": "click", "sentAt":"1698711110"},"PartitionKey":"userId"}'

Aşağıdakine benzer bir onay yanıtı alacaksınız:

{ "Message": "Event sent successfully", "data": { "EncryptionType": "KMS", "SequenceNumber": "49..........1901314", "ShardId": "shardId-xxxxxxx" }
}

Gerçek zamanlı önerileri doğrulayın

Etkileşim veri kümesi güncellendiğinden, öneriler yeni etkileşimleri dikkate alacak şekilde otomatik olarak güncellenecektir. Gerçek zamanlı olarak güncellenen önerileri doğrulamak için aynı kullanıcı kimliği 429 için getRecommendations API'sini tekrar çağırabilirsiniz; sonuç öncekinden farklı olmalıdır. Aşağıdaki sonuçlar, kimliği 594 olan yeni bir öneriyi ve 16, 596, 153 ve 261 kimlikli önerilerin puanlarını değiştirdiğini göstermektedir. Bu öğeler yeni film türünde ('Animasyon|Çocuk|Drama|Fantazi|Müzikal') ilk 5 öneriyi getirdi.

İstek:

curl --location 'https://{your-api-id}.execute-api.{your-region}.amazonaws.com/prod/getRecommendations?campaignArn={campaignArn} &userId=429&numResults=5'

Cevabı:

{ "$metadata": { "httpStatusCode": 200, "requestId": "680f2be8-2e64-47d7-96f7-1c4aa9b9ac9d", "attempts": 1, "totalRetryDelay": 0 }, "itemList": [ { "itemId": "596", "score": 0.0288085 }, { "itemId": "16", "score": 0.0134173 }, { "itemId": "594", "score": 0.0129357 }, { "itemId": "153", "score": 0.0129337 }, { "itemId": "261", "score": 0.0123728 } ], "recommendationId": "RID-dc-44f8-a327-482fb9e54921-CID-06b10f"
}

Yanıt, Amazon Personalize tarafından sağlanan önerinin gerçek zamanlı olarak güncellendiğini gösteriyor.

Temizlemek

Gereksiz masraflardan kaçınmak için çözüm uygulamasını şunu kullanarak temizleyin: Kaynakları temizleme.

Sonuç

Bu yazıda size Amazon Personalize'ı kullanarak gerçek zamanlı kişiselleştirilmiş öneri sistemini nasıl uygulayacağınızı gösterdik. Amazon Personalize ile gerçek zamanlı etkileşimleri almak ve öneriler almak için yapılan etkileşimler, curl adı verilen bir komut satırı aracı aracılığıyla yürütüldü ancak bu API çağrıları bir iş uygulamasına entegre edilebilir ve aynı sonucu verebilir.

Kullanım durumunuza uygun yeni bir tarif seçmek için bkz. Gerçek zamanlı kişiselleştirme. Amazon Personalize tarafından yapılan önerilerin etkisini ölçmek için bkz. Önerilerin etkisinin ölçülmesi.


Yazarlar Hakkında

Cristian Marquez Kıdemli Bulut Uygulama Mimarıdır. Kurumsal düzeyde yazılımlar, yüksek yüklü ve dağıtılmış sistemler ve bulut tabanlı uygulamalar tasarlama, oluşturma ve sunma konusunda geniş deneyime sahiptir. Arka uç ve ön uç programlama dillerinin yanı sıra sistem tasarımı ve DevOps uygulamalarının uygulanması konusunda da deneyime sahiptir. Müşterilerin yenilikçi bulut çözümleri oluşturmalarına ve güvence altına almalarına, iş sorunlarını çözmelerine ve iş hedeflerine ulaşmalarına aktif olarak yardımcı oluyor.

Anand Komandooru AWS'de Kıdemli Bulut Mimarıdır. 2021 yılında AWS Profesyonel Hizmetler organizasyonuna katıldı ve müşterilerin AWS bulut üzerinde bulutta yerel uygulamalar oluşturmasına yardımcı oluyor. Yazılım geliştirmede 20 yılı aşkın deneyime sahiptir ve en sevdiği Amazon liderlik ilkesi şudur: "Liderler çok haklı."

spot_img

En Son İstihbarat

spot_img