Kde a jak používat Personalizér
Personalizér použijte v jakékoli situaci, kdy vaše aplikace potřebuje vybrat správnou akci (obsah), která se má zobrazit – aby se prostředí zlepšilo, dosáhlo lepších obchodních výsledků nebo se zlepšila produktivita.
Personalizační služba používá zpětnové učení k výběru akce (obsahu) k zobrazení uživatele. Výběr se může výrazně lišit v závislosti na množství, kvalitě a distribuci dat odesílaných do služby.
Příklady případů použití služby Personalizér
- Objasnění záměru & nejednoznačnosti: pomozte uživatelům lépe prožít, když jejich záměr není jasný, tím, že poskytnete možnost, která je přizpůsobená.
- Výchozí návrhy nabídek & možnosti: navršte robotovi nejpravděpodobnější položku přizpůsobeně jako první krok místo zobrazení neměnné nabídky nebo seznamu alternativ.
- Vlastnosti robotů &: u robotů, kteří se můžou lišit tónem, verbositou a stylem psaní, zvažte různé tyto vlastnosti.
- Obsah & upozornění: Rozhodněte, jaký text se má použít pro upozornění, aby se uživatelé mohli více zapojit.
- Notification & časování upozornění: Mají přizpůsobené informace o tom, kdy se mají uživatelům posílat oznámení, aby je více zapojili.
Očekávání vyžadované k používání služby Personalizér
Personalizér můžete použít v situacích, kdy splníte nebo implementujete následující pokyny.
| Pokyn | Vysvětlení |
|---|---|
| Obchodní cíl | Pro vaši aplikaci máte obchodní cíl nebo cíl použitelnosti. |
| Content | V aplikaci máte místo, kde se při kontextovém rozhodování o tom, co ukázat uživatelům, tento cíl zlepší. |
| Množství obsahu | K seřazení volání máte méně než 50 akcí. |
| Agregace dat | Nejlepší volba je a měla by se poučit z chování souhrnného uživatele a celkového skóre odměny. |
| Etické použití | Použití strojového učení k přizpůsobení se řídí pokyny pro zodpovědné použití a volbami, které jste zvolili. |
| Nejlepší jedna možnost | Kontextové rozhodnutí lze vyjádřit jako hodnocení nejlepší možnosti (akce) z omezené sady možností. |
| Výsledek se skóre | Jak dobře seřazená volba pro vaši aplikaci fungovala, je možné určit měřením určitého aspektu chování uživatelů a vyjádřením skóre odměny. |
| Relevantní načasování | Skóre odměny nepřinese příliš mnoho zamyšlajících ani externích faktorů. Doba trvání experimentu je dostatečně nízká, aby bylo možné vypočítat skóre odměny, dokud je stále relevantní. |
| Dostatečné kontextové funkce | Kontext pořadí můžete vyjádřit jako seznam alespoň 5 funkcí, které by podle vás pomohly se správnou volbou a které nezahrnují identifikovatelné informace specifické pro uživatele. |
| Dostatečné funkce akcí | Máte informace o každé volbě obsahu, akci , jako seznam alespoň 5 funkcí, které podle vás pomohou personalizéru vybrat správnou volbu. |
| Denní data | Pokud se problém v průběhu času posune (například předvolby ve zprávách nebo stylu), je k dispozici dostatek událostí, aby byly nad optimálním přizpůsobením. Personalizátor se přizpůsobí průběžné změně v reálném světě, ale výsledky nebudou optimální, pokud není dostatek událostí a dat, ze které se můžete poučit, abyste objevili nové vzory a vyřešili je. Měli byste zvolit případ použití, ke který dochází dostatečně často. Zvažte případy použití, ke které dochází nejméně 500krát denně. |
| Historická data | Aplikace může uchovávat data dostatečně dlouho, aby se nahromadí historie nejméně 100 000 interakcí. Personalizátor tak může shromáždit dostatek dat k provedení offline vyhodnocení a optimalizace zásad. |
Nepoužívejte Personalizér, pokud přizpůsobené chování není něco, co by bylo možné zjistit u všech uživatelů. Například použití služby Personalizér k navržení první objednávky pizzy ze seznamu 20 možných položek nabídky je užitečné, ale který kontakt, který se má zavolat ze seznamu kontaktů uživatelů, když vyžaduje pomoc s podřízenými položkami (například "Chlípka"), není něco, co se v uživatelské základně může přizpůsobit.
Jak používat personalizér ve webové aplikaci
Přidání smyčky učení do webové aplikace zahrnuje:
- Určete, jaké prostředí si můžete přizpůsobit, jaké akce a funkce máte, jaké kontextové funkce použít a jakou odměnu nastavíte.
- Přidejte odkaz na sadu SDK pro přizpůsobení ve vaší aplikaci.
- Až budete připravení přizpůsobit, zavolejte rozhraní API pořadí.
- Uložte id události. Později pomocí rozhraní Reward API odešlete odměnu.
- Jakmile si budete jistí, že uživatel uvidí vaši přizpůsobenou stránku, zavolejte na aktivovat událost.
- Počkejte na výběr obsahu seřazených uživatelů.
- Volejte rozhraní Reward API a určete, jak dobře se výstup rozhraní API rank udělal.
Jak používat Personalizér s chatbotem
V tomto příkladu uvidíte, jak pomocí přizpůsobení vytvořit výchozí návrh místo toho, abyste uživateli pokaždé odesílal řadu nabídek nebo možností.
- Získejte kód pro tuto ukázku.
- Nastavte řešení robota. Nezapomeňte publikovat aplikaci LUIS.
- Správa volání rozhraní RANK a Reward API pro robota
- Přidejte kód pro správu zpracování záměru služby LUIS. Pokud je jako hlavní záměr vrácena hodnota None (Žádný) nebo pokud je skóre záměru top pod prahovou hodnotou obchodní logiky, odešlete seznam záměrů do služby Personalizér, která záměry seřadí.
- Show intent list to user as selectable links with the first intent being the top-ranked intent from Rank API response.
- Zachyťte výběr uživatele a odešlete ho ve volání rozhraní Reward API.
Doporučené vzory robotů
- Volání rozhraní API pro pořadí personalizátorů pokaždé, když je potřeba mnohoznačnost, místo ukládání výsledků do mezipaměti pro jednotlivé uživatele. Výsledek jednoznačného záměru se může v průběhu času pro jednu osobu změnit a když rozhraní API pro pořadí umožní zkoumat odchylky, zrychlí se celkové učení.
- Zvolte interakci, která je společná pro mnoho uživatelů, abyste měli dostatek dat k přizpůsobení. Úvodní otázky mohou být například lepší než menší vysvětlení hluboko v grafu konverzace, ke které se může dostat jen několik uživatelů.
- Pomocí volání rozhraní API rank povolte konverzace "first suggestion is right" (První návrh je správný), kde se uživateli bude dotaz " Would you like X?" (Chtěli byste X?). nebo "Měli jste na mysli X?" a uživatel to může jenom potvrdit. místo poskytování možností uživateli, kde si musí vybrat z nabídky. Příklad: Uživatel: "I'd like to order a coffee" Bot (Robota na kávu): "Would you like a double nahod?". Tímto způsobem je signál o odměně také silný, protože se vztahuje přímo k jednomu návrhu.
Jak používat personalizér s řešením doporučení
Mnoho společností používá nástroje pro doporučování, marketing a kampaně, segmentaci a clustering cílových skupin, filtrování založené na spolupráci a další prostředky k doporučování produktů z velkého katalogu zákazníkům.
Microsoft Recommenders GitHub nabízí příklady a osvědčené postupy pro vytváření systémů doporučení, které jsou k dispozici jako poznámkové bloky Jupyter. Poskytuje funkční příklady pro přípravu dat, vytváření modelů, vyhodnocování, ladění a zprovoznění modulů doporučení pro mnoho běžných přístupů, včetně xDeepFM, SAR, ALS, RBM, DKN.
Personalizátor může pracovat s strojem doporučení, pokud je k dispozici.
- Moduly doporučení převezou velké množství položek (například 500 000) a doporučí podmnožinu (například 20 nejlepších) ze stovek nebo tisíců možností.
- Personalizátor vezme malý počet akcí s mnoha informacemi o nich a seřadí je v reálném čase pro daný bohatý kontext, zatímco většina modulů doporučení používá pouze několik atributů o uživatelích, produktech a jejich interakcích.
- Personalzace je navržená tak, aby autonomním způsobem neustále zkoumala předvolby uživatelů, což přináší lepší výsledky v případě, že se obsah rychle mění, jako jsou zprávy, živé události, živý komunitní obsah, obsah s denními aktualizacemi nebo sezónní obsah.
Běžně se používá, když vezmete výstup modulu doporučení (například 20 nejlepších produktů pro určitého zákazníka) a použijete ho jako vstupní akce pro personalizér.
Přidání ochrany obsahu do aplikace
Pokud vaše aplikace umožňuje u obsahu zobrazeného uživatelům velké odchylky a některý z těchto obsahů může být pro některé uživatele nebezpečný nebo nevhodný, měli byste předem naplánovat, abyste měli jistotu, že jsou k dispozici vhodná bezpečnostní opatření, která zabrání uživatelům v zobrazení nepřijatelného obsahu. Nejlepší způsob implementace bezpečnostních opatření je následující: * Získejte seznam akcí, které se mají seřadit. * Odfiltrujte ty, které nejsou pro cílovou skupinu přijatelné. * Seřadíte pouze tyto přijatelné akce. * Zobrazí uživateli akci s nejvyšším pořadím.
V některých architekturách může být implementace výše uvedeného pořadí obtížné. V takovém případě existuje alternativní přístup k implementaci ochranných opatření po hodnocení, ale je potřeba zřídit, aby se k trénování modelu personalizátoru nepoužíly akce, které spadají mimo toto zabezpečení.
- Získejte seznam akcí, které se mají seřadit, a učení je deaktivované.
- Seřadit akce.
- Zkontrolujte, jestli je hlavní akce realizovatelná.
- Pokud je nejlepší akce realizovatelná, aktivujte učení pro toto pořadí a pak ji zobrazte uživateli.
- Pokud hlavní akce není realizovatelná, neaktivovat učení pro toto hodnocení a rozhodnout se prostřednictvím vlastní logiky nebo alternativních přístupů k zobrazení uživateli. I v případě, že použijete druhou možnost, která je v pořadí, neaktivuje se učení pro toto hodnocení.