Udostępnij za pośrednictwem


Gdzie i jak używać usługi Personalizacja

Ważne

Od 20 września 2023 r. nie będzie można tworzyć nowych zasobów usługi Personalizacja. Usługa Personalizacja jest wycofywana 1 października 2026 r.

Użyj usługi Personalizacja w każdej sytuacji, w której aplikacja musi wybrać prawidłową akcję (zawartość), aby wyświetlić — aby usprawnić środowisko pracy, osiągnąć lepsze wyniki biznesowe lub zwiększyć produktywność.

Personalizacja korzysta z uczenia wzmacniania, aby wybrać akcję (zawartość), która ma być wyświetlana użytkownikowi. Wybór może się znacząco różnić w zależności od ilości, jakości i dystrybucji danych wysyłanych do usługi.

Przykładowe przypadki użycia usługi Personalizacja

  • Wyjaśnienie intencji i uściślanie: pomóż użytkownikom mieć lepsze środowisko, gdy ich intencja nie jest jasna, zapewniając opcję, która jest spersonalizowana.
  • Domyślne sugestie dotyczące menu i opcji: bot sugeruje najbardziej prawdopodobny element w spersonalizowany sposób jako pierwszy krok, zamiast przedstawiać menu personifikacyjne lub listę alternatyw.
  • Cechy i ton botów: w przypadku botów, które mogą różnić się tonem, szczegółowością i stylem pisania, należy wziąć pod uwagę różne cechy.
  • Zawartość powiadomień i alertów: zdecyduj, jaki tekst ma być używany dla alertów, aby zaangażować użytkowników w więcej.
  • Chronometraż powiadomień i alertów: spersonalizowane informacje o tym, kiedy wysyłać powiadomienia do użytkowników, aby zaangażować ich więcej.

Oczekiwania wymagane do korzystania z usługi Personalizacja

Usługę Personalizacja można zastosować w sytuacjach, w których spełniasz lub możesz zaimplementować poniższe wytyczne.

Wytyczna Wyjaśnienie
Cel biznesowy Masz cel biznesowy lub użyteczność aplikacji.
Zawartość Masz miejsce w aplikacji, w którym podjęto kontekstową decyzję o tym, co pokazać użytkownikom, poprawi ten cel.
Ilość zawartości Masz mniej niż 50 akcji do rangi na wywołanie.
Agregowanie danych Najlepszy wybór może i powinien być wyciągnięty z zbiorowego zachowania użytkownika i całkowitego wyniku nagrody.
Użycie etyczne Korzystanie z uczenia maszynowego do personalizacji jest zgodne z wytycznymi dotyczącymi odpowiedzialnego używania i wybranych wyborów.
Najlepsza pojedyncza opcja Kontekstowa decyzja może być wyrażona jako klasyfikacja najlepszej opcji (akcji) z ograniczonego zestawu wyborów.
Wynik z wynikiem Jak dobrze działa wybór rankingowy dla aplikacji, można określić, mierząc jakiś aspekt zachowania użytkownika i wyrażając go w wyniku nagrody.
Odpowiedni czas Wynik nagrody nie przynosi zbyt wielu zakłócających ani zewnętrznych czynników. Czas trwania eksperymentu jest wystarczająco niski, aby można było obliczyć wynik nagrody, mimo że jest on nadal istotny.
Wystarczające funkcje kontekstu Możesz wyrazić kontekst klasyfikacji jako listę co najmniej 5 funkcji , które według Ciebie pomogą dokonać właściwego wyboru i które nie zawierają informacji identyfikujących użytkownika.
Wystarczające funkcje akcji Masz informacje na temat każdego wyboru zawartości, akcji, jako listy co najmniej 5 funkcji , które według Ciebie pomogą Personalizator dokonać właściwego wyboru.
Dane dzienne Istnieje wystarczająco dużo wydarzeń, aby pozostać na szczycie optymalnej personalizacji, jeśli problem dryfuje w czasie (np. preferencje w wiadomościach lub modzie). Personalizacja dostosuje się do ciągłych zmian w świecie rzeczywistym, ale wyniki nie będą optymalne, jeśli nie ma wystarczającej liczby zdarzeń i danych, aby nauczyć się od nich odnajdywać i osadzać się na nowych wzorcach. Należy wybrać przypadek użycia, który występuje wystarczająco często. Rozważ wyszukanie przypadków użycia, które mają miejsce co najmniej 500 razy dziennie.
Dane historyczne Aplikacja może przechowywać dane na tyle długo, aby zgromadzić historię co najmniej 100 000 interakcji. Dzięki temu usługa Personalizacja może zbierać wystarczającą ilość danych do przeprowadzania ocen w trybie offline i optymalizacji zasad.

Nie używaj usługi Personalizacja , w której spersonalizowane zachowanie nie jest czymś, co można odnaleźć we wszystkich użytkownikach. Na przykład użycie usługi Personalizacja do sugerowania pierwszego zamówienia pizzy z listy 20 możliwych elementów menu jest przydatne, ale kontakt do połączenia z listy kontaktów użytkowników podczas wymagania pomocy w zakresie opieki nad dziećmi (na przykład "Babcia") nie jest czymś, co można personalizować w całej bazie użytkowników.

Jak używać usługi Personalizacja w aplikacji internetowej

Dodanie pętli szkoleniowej do aplikacji internetowej obejmuje następujące elementy:

  • Określ, które środowisko do personalizacji, jakie akcje i funkcje masz, jakie funkcje kontekstowe mają być używane i jakie nagrody zostaną ustawione.
  • Dodaj odwołanie do zestawu SDK personalizacji w aplikacji.
  • Wywołaj interfejs API rangi, gdy wszystko będzie gotowe do personalizacji.
  • Zapisz identyfikator zdarzenia. Później wyślesz nagrodę za pomocą interfejsu API nagrody.
  1. Po upewnieniu się, że użytkownik widział twoją spersonalizowaną stronę, wywołaj funkcję Aktywuj dla zdarzenia.
  2. Poczekaj na wybór zawartości sklasyfikowanej przez użytkownika.
  3. Wywołaj interfejs API nagrody, aby określić, jak dobrze działa dane wyjściowe interfejsu API rangi.

Jak używać usługi Personalizacja z czatbotem

W tym przykładzie zobaczysz, jak używać personalizacji, aby ustawić domyślną sugestię zamiast wysyłać użytkownikowi serię menu lub wyborów za każdym razem.

  • Pobierz kod dla tego przykładu.
  • Skonfiguruj rozwiązanie bota. Pamiętaj, aby opublikować aplikację usługi LUIS.
  • Zarządzanie wywołaniami interfejsu API rangi i nagrody dla bota.
    • Dodaj kod do zarządzania przetwarzaniem intencji usługi LUIS. Jeśli wartość Brak jest zwracana jako górna intencja lub wynik najwyższej intencji jest niższy od progu logiki biznesowej, wyślij listę intencji do usługi Personalizacja, aby sklasyfikować intencje.
    • Pokaż listę intencji użytkownikowi jako linki do wyboru z pierwszą intencją będącą najwyżej sklasyfikowaną intencją w odpowiedzi interfejsu API rangi.
    • Przechwyć wybór użytkownika i wyślij go w wywołaniu interfejsu API programu Reward.
  • Wykonaj wywołania interfejsu API rangi usługi Personalizacja za każdym razem, gdy jest wymagana uściślanie, w przeciwieństwie do buforowania wyników dla każdego użytkownika. Wynik uściślania intencji może ulec zmianie w czasie dla jednej osoby, a zezwolenie interfejsowi API rangi na eksplorowanie wariancji przyspieszy ogólną naukę.
  • Wybierz interakcję wspólną dla wielu użytkowników, aby mieć wystarczającą ilość danych do personalizacji. Na przykład pytania wprowadzające mogą być lepiej dopasowane niż mniejsze wyjaśnienia głęboko w grafie konwersacji, do którego może dostać się tylko kilku użytkowników.
  • Użyj wywołań interfejsu API rangi, aby włączyć konwersacje "pierwsza sugestia jest prawidłowa", gdzie użytkownik otrzymuje pytanie "Czy chcesz X?" lub "Czy oznaczasz X?" i użytkownik może po prostu potwierdzić; w przeciwieństwie do udzielania opcji użytkownikowi, w którym musi wybrać menu. Na przykład User:"Chciałbym zamówić kawę" Bot:"Czy chcesz mieć podwójne espresso?". W ten sposób sygnał nagrody jest również silny, ponieważ odnosi się bezpośrednio do jednej sugestii.

Jak używać usługi Personalizacja z rozwiązaniem rekomendacji

Wiele firm używa aparatów rekomendacji, narzędzi marketingowych i kampanii, segmentacji odbiorców i klastrowania, wspólnego filtrowania i innych środków, aby polecać produkty z dużego katalogu do klientów.

Repozytorium GitHub microsoft Recommenders zawiera przykłady i najlepsze rozwiązania dotyczące tworzenia systemów rekomendacji udostępnianych jako notesy Jupyter. Zawiera on przykłady robocze dotyczące przygotowywania danych, tworzenia modeli, oceniania, dostrajania i operacjonalizacji aparatów rekomendacji, w przypadku wielu typowych podejść, takich jak xDeepFM, SAR, ALS, RBM, DKN.

Personalizator może pracować z aparatem rekomendacji, gdy jest obecny.

  • Aparaty rekomendacji przyjmują duże ilości elementów (na przykład 500 000) i zalecają podzestaw (na przykład 20 pierwszych) z setek lub tysięcy opcji.
  • Personalizacja wykonuje niewielką liczbę akcji z dużą ilością informacji o nich i plasuje je w czasie rzeczywistym dla danego bogatego kontekstu, podczas gdy większość aparatów rekomendacji używa tylko kilku atrybutów dotyczących użytkowników, produktów i ich interakcji.
  • Personalizacja jest przeznaczona do autonomicznego eksplorowania preferencji użytkownika przez cały czas, co zapewni lepsze wyniki, w których zawartość szybko się zmienia, takich jak wiadomości, wydarzenia na żywo, zawartość społeczności na żywo, zawartość z codziennymi aktualizacjami lub zawartość sezonowa.

Typowym zastosowaniem jest podjęcie danych wyjściowych aparatu rekomendacji (na przykład 20 najlepszych produktów dla określonego klienta) i użycie go jako akcji wejściowych dla usługi Personalizacja.

Dodawanie zabezpieczeń zawartości do aplikacji

Jeśli aplikacja zezwala na duże wariancji w zawartości wyświetlanej użytkownikom, a część tej zawartości może być niebezpieczna lub nieodpowiednia dla niektórych użytkowników, należy zaplanować z wyprzedzeniem, aby upewnić się, że obowiązują odpowiednie zabezpieczenia, aby uniemożliwić użytkownikom wyświetlanie niedopuszczalnej zawartości. Najlepszym wzorcem implementacji zabezpieczeń jest: * Uzyskiwanie listy akcji do klasyfikacji. * Odfiltruj te, które nie są realne dla odbiorców. * Rangą tylko te realne działania. * Wyświetl najwyżej sklasyfikowaną akcję dla użytkownika.

W niektórych architekturach powyższy sekwencja może być trudna do zaimplementowania. W takim przypadku istnieje alternatywne podejście do implementowania zabezpieczeń po klasyfikacji, ale należy wprowadzić aprowizację, aby akcje wykraczające poza zabezpieczenia nie były używane do trenowania modelu personalizacji.

  • Uzyskaj listę akcji do klasyfikacji z dezaktywowanym uczeniem.
  • Ranga akcji.
  • Sprawdź, czy górna akcja jest opłacalna.
    • Jeśli najlepsza akcja jest opłacalna, aktywuj naukę dla tej rangi, a następnie wyświetl ją użytkownikowi.
    • Jeśli górna akcja nie jest opłacalna, nie aktywuj uczenia się dla tego rankingu i zdecyduj się na własną logikę lub alternatywne podejścia, które mają być wyświetlane użytkownikowi. Nawet jeśli używasz drugiej najlepszej opcji w rankingu, nie aktywuj uczenia się dla tego rankingu.

Następne kroki

Etyka i odpowiedzialne użycie.