Zoptymalizuj zaangażowanie klientów dzięki uczeniu się przez wzmacnianie PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Optymalizuj zaangażowanie klientów dzięki uczeniu się przez wzmocnienie

Jest to gościnny post, którego współautorami są Taylor Names, Staff Machine Learning Engineer, Dev Gupta, Machine Learning Manager i Argie Angeleas, Senior Product Manager w Ibotta. Ibotta to amerykańska firma technologiczna, która umożliwia użytkownikom aplikacji komputerowych i mobilnych zarabianie pieniędzy na zakupach w sklepie, aplikacji mobilnej i online dzięki przesłaniu paragonów, połączonym kontom lojalnościowym sprzedawcy, płatnościom i weryfikacji zakupów.

Ibotta stara się polecać spersonalizowane promocje, aby lepiej zatrzymać i zaangażować swoich użytkowników. Jednak promocje i preferencje użytkowników stale ewoluują. To ciągle zmieniające się środowisko z wieloma nowymi użytkownikami i nowymi promocjami jest typowym problemem zimnego startu — nie ma wystarczającej liczby historycznych interakcji użytkowników i promocji, z których można by wyciągnąć jakiekolwiek wnioski. Wzmacnianie uczenia (RL) to obszar uczenia maszynowego (ML) dotyczący tego, jak inteligentni agenci powinni podejmować działania w środowisku, aby zmaksymalizować pojęcie skumulowanych nagród. RL skupia się na znalezieniu równowagi między eksploracją niezbadanych terytoriów a wykorzystywaniem aktualnej wiedzy. Wieloręki bandyta (MAB) to klasyczny problem uczenia się przez wzmacnianie, który stanowi przykład kompromisu między eksploracją a eksploatacją: maksymalizacja nagrody w krótkim okresie (eksploatacja) przy jednoczesnym poświęceniu krótkoterminowej nagrody za wiedzę, która może zwiększyć nagrody w dłuższej perspektywie (eksploracja ). Algorytm MAB bada i wykorzystuje optymalne zalecenia dla użytkownika.

Ibotta współpracowała z Laboratorium rozwiązań do uczenia maszynowego Amazon Amazon używać algorytmów MAB do zwiększania zaangażowania użytkowników, gdy informacje o użytkowniku i promocji są bardzo dynamiczne.

Wybraliśmy kontekstowy algorytm MAB, ponieważ jest skuteczny w następujących przypadkach użycia:

  • Tworzenie spersonalizowanych rekomendacji zgodnie ze stanem użytkowników (kontekstem)
  • Radzenie sobie z aspektami zimnego startu, takimi jak nowe bonusy i nowi klienci
  • Przyjmowanie rekomendacji, w których preferencje użytkowników zmieniają się w czasie

Dane

Aby zwiększyć wykorzystanie bonusów, Ibotta chce wysyłać klientom spersonalizowane bonusy. Premie to samofinansujące się zachęty pieniężne firmy Ibotta, które służą jako działania kontekstowego modelu wielorękiego bandyty.

Model bandyty wykorzystuje dwa zestawy funkcji:

  • Funkcje akcji – Opisują działania, takie jak rodzaj premii i średnia kwota premii
  • Cechy klienta – Opisują historyczne preferencje i interakcje klientów, takie jak wykupy, kliknięcia i wyświetlenia z ostatnich tygodni

Funkcje kontekstowe pochodzą z historycznych podróży klientów, które zawierały 26 tygodniowych wskaźników aktywności generowanych na podstawie interakcji użytkowników z aplikacją Ibotta.

Kontekstowy wieloręki bandyta

Bandit to struktura sekwencyjnego podejmowania decyzji, w której decydent sekwencyjnie wybiera działanie, potencjalnie w oparciu o bieżące informacje kontekstowe, i obserwuje sygnał nagrody.

Ustawiliśmy kontekstowy przepływ pracy wielorękiego bandyty na Amazon Sage Maker używając wbudowanego Wabbit Pochwały (VW) pojemnik. SageMaker pomaga naukowcom danych i programistom szybko przygotowywać, budować, szkolić i wdrażać wysokiej jakości modele ML, łącząc szeroki zestaw funkcji stworzonych specjalnie dla ML. Uczenie i testowanie modelu są oparte na eksperymentach w trybie offline. Bandyta uczy się preferencji użytkownika na podstawie ich informacji zwrotnych z poprzednich interakcji, a nie na żywo. Algorytm może przejść do trybu produkcyjnego, w którym SageMaker pozostaje jako infrastruktura wspierająca.

W celu realizacji strategii eksploracji/eksploatacji zbudowaliśmy iteracyjny system szkolenia i wdrażania, który realizuje następujące działania:

  • Rekomenduje akcję przy użyciu kontekstowego modelu bandyty na podstawie kontekstu użytkownika
  • Przechwytuje niejawne informacje zwrotne w czasie
  • Ciągle trenuje model z przyrostowymi danymi interakcji

Przepływ pracy aplikacji klienckiej wygląda następująco:

  1. Aplikacja kliencka wybiera kontekst, który jest wysyłany do punktu końcowego SageMaker w celu pobrania akcji.
  2. Punkt końcowy SageMaker zwraca akcję, związane z nią prawdopodobieństwo wykupu premii oraz event_id.
  3. Ponieważ ten symulator został wygenerowany przy użyciu historycznych interakcji, model zna prawdziwą klasę dla tego kontekstu. Jeśli agent wybierze akcję z odkupieniem, nagroda wynosi 1. W przeciwnym razie agent otrzymuje nagrodę 0.

W przypadku, gdy dane historyczne są dostępne i są w formacie <state, action, action probability, reward>, Ibotta może uruchomić model na żywo, ucząc się zasad w trybie offline. W przeciwnym razie Ibotta może zainicjować losową politykę na 1 dzień i zacząć uczyć się od niej zasad dotyczących bandytów.

Poniżej znajduje się fragment kodu służący do uczenia modelu:

hyperparameters = { "exploration_policy": "egreedy" , # supports "egreedy", "bag", "cover" "epsilon": 0.01 , # used if egreedy is the exploration policy "num_policies": 3 , # used if bag or cover is the exploration policy "num_arms": 9,
} job_name_prefix = "ibotta-testbed-bandits-1" vw_image_uri = "462105765813.dkr.ecr.us-east-1.amazonaws.com/sagemaker-rl-vw-container:vw-8.7.0-cpu" # Train the estimator rl_estimator = RLEstimator(entry_point='train-vw_new.py', source_dir="src", image_uri=vw_image_uri, role=role, output_path=s3_output_path, base_job_name=job_name_prefix, instance_type=instance_type, instance_count=1, hyperparameters=hyperparameters) rl_estimator.fit(“s3 bucket/ibotta.csv”, wait=True)

Wydajność modelu

Losowo podzieliliśmy wykorzystane interakcje na dane treningowe (10,000 5,300 interakcji) i dane ewaluacyjne (XNUMX wstrzymanych interakcji).

Metryki oceny to średnia nagroda, gdzie 1 oznacza, że ​​zalecane działanie zostało zrealizowane, a 0 oznacza, że ​​zalecane działanie nie zostało zrealizowane.

Średnią nagrodę możemy określić w następujący sposób:

Średnia nagroda (wskaźnik wymiany) = (liczba zalecanych działań z odkupieniem)/(łącznie # zalecanych działań)

Poniższa tabela przedstawia średni wynik nagrody:

Średnia nagroda Jednolite losowe zalecenie Rekomendacja kontekstowa oparta na MAB
Pociąg 11.44% 56.44%
Testowanie 10.69% 59.09%

Poniższy rysunek przedstawia przyrostową ocenę wydajności podczas uczenia, gdzie oś x to liczba rekordów wyuczonych przez model, a oś y to przyrostowa średnia nagroda. Niebieska linia oznacza wielorękiego bandytę; pomarańczowa linia oznacza rekomendacje losowe.

Zoptymalizuj zaangażowanie klientów dzięki uczeniu się przez wzmacnianie PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Wykres pokazuje, że przewidywana średnia nagroda wzrasta w kolejnych iteracjach, a przewidywana nagroda za działanie jest znacznie większa niż losowe przypisanie działań.

Możemy użyć wcześniej wytrenowanych modeli jako ciepłych startów i wsadowo przeszkolić model z nowymi danymi. W tym przypadku wydajność modelu była już zbieżna podczas wstępnego szkolenia. Nie zaobserwowano znaczącej dodatkowej poprawy wydajności podczas ponownego szkolenia nowej partii, jak pokazano na poniższym rysunku.

Zoptymalizuj zaangażowanie klientów dzięki uczeniu się przez wzmacnianie PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Porównaliśmy również kontekstowego bandytę z zasadami jednolicie losowymi i losowymi a posteriori (losowa rekomendacja z wykorzystaniem historycznego rozkładu preferencji użytkownika jako ciepłego startu). Wyniki są wymienione i wykreślone w następujący sposób:

  • Bandyta – 59.09% średnia nagroda (trening 56.44%)
  • Jednolity losowo – 10.69% średnia nagroda (trening 11.44%)
  • Prawdopodobieństwo a posteriori losowe – 34.21% średnia nagroda (trening 34.82%)

Kontekstowy algorytm wielorękiego bandyty znacznie przewyższał pozostałe dwie strategie.

Zoptymalizuj zaangażowanie klientów dzięki uczeniu się przez wzmacnianie PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Podsumowanie

Laboratorium Amazon ML Solutions Lab współpracowało z firmą Ibotta w celu opracowania kontekstowego rozwiązania rekomendacji uczenia się przez wzmacnianie bandytów przy użyciu kontenera SageMaker RL.

To rozwiązanie wykazało stały przyrostowy wzrost wskaźnika wykorzystania środków w stosunku do zaleceń losowych (wzrost pięciokrotny) i niekontekstowych RL (wzrost dwukrotny) na podstawie testu offline. Dzięki temu rozwiązaniu Ibotta może ustanowić dynamiczny, zorientowany na użytkownika silnik rekomendacji, aby zoptymalizować zaangażowanie klientów. W porównaniu z rekomendacją losową, rozwiązanie poprawiło dokładność rekomendacji (średnią nagrodę) z 11% do 59%, zgodnie z testem offline. Ibotta planuje zintegrować to rozwiązanie z większą liczbą przypadków użycia personalizacji.

"Laboratorium Amazon ML Solutions Lab ściśle współpracowało z zespołem Machine Learning firmy Ibotta, aby zbudować dynamiczny silnik rekomendacji premii, aby zwiększyć liczbę umorzeń i zoptymalizować zaangażowanie klientów. Stworzyliśmy silnik rekomendacji wykorzystujący uczenie się przez wzmacnianie, który uczy się i dostosowuje do stale zmieniającego się stanu klienta i automatycznie uruchamia nowe premie. W ciągu 2 miesięcy naukowcy z ML Solutions Lab opracowali kontekstowe, wieloramienne rozwiązanie do nauki wzmacniania bandytów przy użyciu kontenera SageMaker RL. Kontekstowe rozwiązanie RL wykazało stały wzrost wskaźników umorzeń, osiągając pięciokrotny wzrost wskaźnika umorzeń bonusowych w stosunku do rekomendacji losowej i dwukrotny wzrost w stosunku do niekontekstowego rozwiązania RL. Dokładność rekomendacji poprawiła się z 11% w przypadku rekomendacji losowych do 59% w przypadku rozwiązania ML Solutions Lab. Biorąc pod uwagę skuteczność i elastyczność tego rozwiązania, planujemy zintegrować to rozwiązanie z większą liczbą przypadków użycia personalizacji Ibotta, aby kontynuować naszą misję, aby każdy zakup był satysfakcjonujący dla naszych użytkowników."

– Heather Shannon, starszy wiceprezes ds. inżynierii i danych w firmie Ibotta.


O autorach

Zoptymalizuj zaangażowanie klientów dzięki uczeniu się przez wzmacnianie PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.Nazwiska Taylora jest inżynierem ds. uczenia maszynowego w firmie Ibotta, skupiającym się na personalizacji treści i prognozowaniu popytu w czasie rzeczywistym. Przed dołączeniem do Ibotta Taylor kierował zespołami uczenia maszynowego w przestrzeniach IoT i czystej energii.

Zoptymalizuj zaangażowanie klientów dzięki uczeniu się przez wzmacnianie PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.Deweloper Gupta jest menedżerem ds. inżynierii w Ibotta Inc, gdzie kieruje zespołem uczenia maszynowego. Zadaniem zespołu ML w Ibotta jest dostarczanie wysokiej jakości oprogramowania ML, takiego jak rekomendacje, prognozy i wewnętrzne narzędzia ML. Przed dołączeniem do Ibotta Dev pracował w Predikto Inc, startupie zajmującym się uczeniem maszynowym, oraz w The Home Depot. Ukończył University of Florida.

Zoptymalizuj zaangażowanie klientów dzięki uczeniu się przez wzmacnianie PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.Argie Angeleasa jest starszym menedżerem produktu w firmie Ibotta, gdzie kieruje oddziałami uczenia maszynowego i rozszerzeń przeglądarek. Przed dołączeniem do Ibotta Argie pracował jako dyrektor ds. produktu w iReportsource. Argie uzyskał doktorat z informatyki i inżynierii na Wright State University.

Zoptymalizuj zaangażowanie klientów dzięki uczeniu się przez wzmacnianie PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.Kieł Wang jest starszym naukowcem w Laboratorium rozwiązań do uczenia maszynowego Amazon Amazon, gdzie kieruje Pionem Detalicznym, współpracując z klientami AWS z różnych branż w celu rozwiązywania ich problemów z ML. Przed dołączeniem do AWS Fang pracował jako starszy dyrektor ds. nauki danych w Anthem, kierując platformą AI do przetwarzania roszczeń medycznych. Uzyskała tytuł magistra statystyki na Uniwersytecie w Chicago.

Zoptymalizuj zaangażowanie klientów dzięki uczeniu się przez wzmacnianie PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.Xin Chena jest starszym menedżerem w Laboratorium rozwiązań do uczenia maszynowego Amazon Amazon, gdzie kieruje regionem środkowych Stanów Zjednoczonych, regionu Wielkich Chin, Ameryki Łacińskiej i sektora motoryzacyjnego. Pomaga klientom AWS z różnych branż identyfikować i budować rozwiązania w zakresie uczenia maszynowego, aby zapewnić najwyższy zwrot z inwestycji w możliwości uczenia maszynowego w ich organizacji. Xin uzyskał doktorat z informatyki i inżynierii na Uniwersytecie Notre Dame.

Zoptymalizuj zaangażowanie klientów dzięki uczeniu się przez wzmacnianie PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.Raj Biswas jest analitykiem danych w Laboratorium rozwiązań do uczenia maszynowego Amazon Amazon. Pomaga klientom AWS w opracowywaniu rozwiązań opartych na ML w różnych branżach, aby sprostać ich najpilniejszym wyzwaniom biznesowym. Przed dołączeniem do AWS był absolwentem Uniwersytetu Columbia w Data Science.

Zoptymalizuj zaangażowanie klientów dzięki uczeniu się przez wzmacnianie PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.Xinghua Lianga jest naukowcem stosowanym w Laboratorium rozwiązań do uczenia maszynowego Amazon Amazon, gdzie współpracuje z klientami z różnych branż, w tym produkcyjnej i motoryzacyjnej, i pomaga im przyspieszyć wdrażanie sztucznej inteligencji i chmury. Xinghua uzyskał doktorat z inżynierii na Uniwersytecie Carnegie Mellon.

Zoptymalizuj zaangażowanie klientów dzięki uczeniu się przez wzmacnianie PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.Yi Liu jest naukowcem zajmującym się obsługą klienta Amazon. Jej pasją jest wykorzystywanie mocy ML/AI do optymalizacji doświadczeń użytkowników dla klientów Amazon i pomagania klientom AWS w tworzeniu skalowalnych rozwiązań chmurowych. Jej praca naukowa w Amazon obejmuje zaangażowanie w członkostwo, system rekomendacji online oraz identyfikację i rozwiązywanie defektów związanych z doświadczeniem klienta. Poza pracą Yi lubi podróżować i poznawać przyrodę ze swoim psem.

Znak czasu:

Więcej z Uczenie maszynowe AWS