Sdílet prostřednictvím


Vyhodnocení důležitosti funkcí

Důležité

Od 20. září 2023 nebudete moct vytvářet nové prostředky personalizace. Služba Personalizace se vyřadí z provozu 1. října 2026.

Můžete posoudit, jak důležitá byla každá funkce pro model strojového učení personalizace, provedením vyhodnocení funkcí u historických dat protokolu. Vyhodnocení funkcí jsou užitečná pro:

  • Zjistěte, které funkce jsou pro model nejdůležitější nebo nejméně důležité.
  • Brainstorm extra funkce, které mohou být přínosné pro učení, odvozením inspirace z toho, které funkce jsou v modelu aktuálně důležité.
  • Identifikujte potenciálně nedůležité nebo neužitečné funkce, které by se měly zvážit pro další analýzu nebo odebrání.
  • Řešení běžných problémů a chyb, ke kterým může dojít při navrhování funkcí a jejich odesílání do personalizace Například použití identifikátorů GUID, časových razítek nebo jiných funkcí, které jsou obecně zhuštěné , mohou být problematické. Přečtěte si další informace o vylepšení funkcí.

Co je vyhodnocení funkcí?

Vyhodnocení funkcí se provádí trénováním a spuštěním kopie aktuální konfigurace modelu na historicky shromážděných datech protokolu v zadaném časovém období. Funkce se ignorují po jednom, aby se změřily rozdíly v výkonu modelu s jednotlivými funkcemi a bez nich. Vzhledem k tomu, že vyhodnocení funkcí se provádí s historickými daty, není zaručeno, že tyto vzory budou v budoucích datech pozorovány. Tyto přehledy ale můžou být i nadále relevantní pro budoucí data, pokud protokolovaná data zachytila dostatečnou proměnlivost nebo neschytné vlastnosti vašich dat. Spuštěním vyhodnocení funkce nemáte vliv na výkon vašeho aktuálního modelu.

Skóre důležitosti funkce je míra relativního dopadu funkce na odměnu v průběhu zkušebního období. Skóre důležitosti funkcí jsou číslo od 0 (nejméně důležité) do 100 (nejdůležitější) a zobrazují se v vyhodnocení funkce. Vzhledem k tomu, že se vyhodnocení spouští v určitém časovém období, můžou se důležitost funkce měnit, protože se do Personalizace odesílají další data a jak se v průběhu času mění uživatelé, scénáře a data.

Vytvoření vyhodnocení funkce

Pokud chcete získat skóre důležitosti funkcí, musíte vytvořit vyhodnocení funkce v období protokolovaných dat, aby se vygenerovala sestava obsahující skóre důležitosti funkce. Tato sestava se dá zobrazit na webu Azure Portal. Vytvoření vyhodnocení funkce:

  1. Přechod na web Azure Portal
  2. Výběr prostředku Personalizace
  3. V bočním navigačním podokně vyberte oddíl Monitorování .
  4. Výběr karty Funkce
  5. Vyberte Vytvořit sestavu a měla by se zobrazit nová obrazovka.
  6. Zvolte název sestavy.
  7. Volba počátečního a koncového času pro období vyhodnocení
  8. Vyberte Vytvořit sestavu.

Snímek obrazovky, který ukazuje, jak vytvořit vyhodnocení funkcí v prostředku Personalizace kliknutím na okno Monitorování, kartou Funkce a následným vytvořením sestavy

Snímek obrazovky, který znázorňuje okno pro vytvoření a jak vyplnit pole pro sestavu včetně názvu, data zahájení a koncového data

V dalším kroku by se název sestavy měl zobrazit v následující tabulce sestav. Vytvoření vyhodnocení funkce je dlouhotrvající proces, kdy doba dokončení závisí na objemu dat odesílaných do personalizace během zkušebního období. Během generování sestavy se ve sloupci Stav zobrazí hodnota Spuštěno pro vaše vyhodnocení a po dokončení se aktualizuje na Úspěch. Pravidelně kontrolujte, jestli se vyhodnocení dokončilo.

V různých časových obdobích, po které má prostředek Personalizace data protokolu, můžete spustit několik vyhodnocení funkcí. Ujistěte se, že je doba uchovávání dat dostatečně dlouhá, abyste mohli provádět hodnocení starších dat.

Interpretace skóre důležitosti funkcí

Funkce s vysokým skóre důležitosti

Funkce s vyšším skóre důležitosti byly vlivnější na model během období vyhodnocení v porovnání s ostatními funkcemi. Důležité funkce můžou poskytnout inspiraci pro navrhování dalších funkcí, které mají být součástí modelu. Pokud se například zobrazí kontextové funkce "IsWeekend" nebo "IsWeekday" mají vysokou důležitost pro nákup potravin, může se jednat o případ, že svátky nebo dlouhé víkendy můžou být také důležité faktory, takže můžete zvážit přidání funkcí, které tyto informace zachycují.

Funkce s nízkým skóre důležitosti

Funkce s nízkým skóre důležitosti jsou vhodnými kandidáty pro další analýzu. Ne všechny vlastnosti nízkého skóre nutně špatné nebo nemusí být užitečné, protože nízké skóre může nastat z jednoho nebo více důvodů. Následující seznam vám pomůže začít analyzovat, proč můžou mít vaše funkce nízké skóre:

  • Tato funkce byla v datech během období vyhodnocení pozorována zřídka.

    • Pokud je počet výskytů této funkce v porovnání s jinými funkcemi nízký, může to znamenat, že funkce nebyla dostatečně často k dispozici, aby model zjistil, jestli je cenná nebo ne.
  • Hodnoty funkcí nemají mnoho rozmanitosti nebo variace.

    • Pokud je početjedinečnýchmm funkcím nižší než očekávaný počet jedinečných hodnot, může to znamenat,
  • Hodnoty funkcí byly příliš hlučné (náhodné) nebo příliš odlišné a poskytly malou hodnotu.

    • Zkontrolujte počet jedinečných hodnot v vyhodnocení funkce. Pokud je počet jedinečných hodnot pro tuto funkci vyšší, než jste očekávali, nebo pokud je ve srovnání s jinými funkcemi vyšší, může to znamenat, že funkce byla během zkušebního období příliš hlučná.
  • Došlo k problému s daty nebo formátováním.

    • Zkontrolujte, jestli jsou funkce naformátované a odesílané do personalizace očekávaným způsobem.
  • Funkce nemusí být cenná pro modelování učení a výkonu, pokud je skóre funkce nízké a výše uvedené důvody se nevztahují.

    • Zvažte odebrání funkce, protože vašemu modelu nepomáhá maximalizovat průměrnou odměnu.

Odebrání funkcí s nízkým skóre důležitosti může pomoct zrychlit trénování modelu snížením množství dat potřebných k učení. Může také zvýšit výkon modelu. To ale není zaručené a může být potřeba další analýza. Přečtěte si další informace o návrhu kontextových a akčních funkcí.

Běžné problémy a kroky pro vylepšení funkcí

  • Odesílání funkcí s vysokou kardinalitou Funkce s vysokou kardinalitou jsou ty, které mají mnoho jedinečných hodnot, které se pravděpodobně neopakují v průběhu mnoha událostí. Osobní údaje specifické například pro jednoho jednotlivce (například jméno, telefonní číslo, číslo platební karty, IP adresa) by se neměly používat s personalizátorem.

  • Odesílání ID uživatelů s velkým počtem uživatelů je nepravděpodobné, že by tyto informace byly relevantní pro výuku personalizace, aby se maximalizovalo průměrné skóre odměny. Odesílání ID uživatelů (i když ne osobních údajů) pravděpodobně do modelu přidá další šum a nedoporučuje se.

  • Funkce jsou příliš řídké. Hodnoty jsou odlišné a zřídka dochází více než několikkrát. Přesné časové razítka až do sekundy mohou být velmi zhuštěné. Může být více hustší (a proto efektivní) seskupením časů do "ranní", "poledne" nebo "odpoledne", například.

Informace o poloze také obvykle těží z vytváření širších klasifikací. Například souřadnice zeměpisné šířky a délky, jako je Lat: 47,67402° N, Long: 122,12154° W, je příliš přesné a vynutí model zjistit zeměpisnou šířku a délku jako odlišné rozměry. Když se pokoušíte přizpůsobit na základě informací o poloze, pomůže vám seskupit informace o poloze ve větších sektorech. Snadným způsobem, jak to udělat, je zvolit odpovídající přesnost zaokrouhlování pro čísla s délkou západky a kombinovat zeměpisnou šířku a délku do "oblastí" tak, že je vytvoříte jedním řetězcem. Například dobrý způsob, jak reprezentovat Lat: 47,67402° N, Long: 122,12154° W v oblastech přibližně několik kilometrů široké by bylo "umístění":"34,3 , 12,1".

  • Rozšíření sad funkcí s extrapolovanými informacemi Můžete také získat další funkce tím, že uvažujete o neprozkouších atributech, které lze odvodit z informací, které už máte. Například v fiktivním přizpůsobení seznamu filmů je možné, že víkend vs. pracovní den vyvolává odlišné chování od uživatelů? Čas lze rozšířit tak, aby měl atribut "víkend" nebo "pracovní den". Mají národní/regionální kulturní svátky přivést pozornost k určitým typům filmů? Například atribut "Halloween" je užitečný na místech, kde je relevantní. Je možné, že deštivé počasí má významný vliv na výběr filmu pro mnoho lidí? S časem a místem může služba počasí poskytnout informace a můžete ji přidat jako další funkci.

Další kroky

Analýza výkonu zásad pomocí offline vyhodnocení pomocí personalizace