Ocena ważności funkcji

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.

Możesz ocenić, jak ważna była każda funkcja modelu uczenia maszynowego usługi Personalizacja, przeprowadzając ocenę funkcji na historycznych danych dziennika. Oceny funkcji są przydatne w następujących kach:

  • Dowiedz się, które funkcje są najważniejsze lub co najmniej ważne dla modelu.
  • Dodatkowe funkcje burzy mózgów, które mogą być korzystne dla uczenia się, czerpiąc inspirację z tego, jakie funkcje są obecnie ważne w modelu.
  • Zidentyfikuj potencjalnie nieistotne lub nieprzydatne funkcje, które należy wziąć pod uwagę w celu dalszej analizy lub usunięcia.
  • Rozwiązywanie typowych problemów i błędów, które mogą wystąpić podczas projektowania funkcji i wysyłania ich do usługi Personalizacja. Na przykład użycie identyfikatorów GUID, sygnatur czasowych lub innych funkcji, które są zwykle rozrzedzonych, może być problematyczne . Dowiedz się więcej o ulepszaniu funkcji.

Co to jest ocena funkcji?

Oceny funkcji są przeprowadzane przez trenowanie i uruchamianie kopii bieżącej konfiguracji modelu na historycznie zebranych danych dziennika w określonym przedziale czasu. Funkcje są ignorowane pojedynczo, aby zmierzyć różnicę w wydajności modelu z każdą funkcją i bez nich. Ponieważ oceny funkcji są wykonywane na danych historycznych, nie ma gwarancji, że te wzorce będą obserwowane w przyszłych danych. Jednak te szczegółowe informacje mogą być nadal istotne dla przyszłych danych, jeśli zarejestrowane dane przechwyciły wystarczającą zmienność lub nieruchome właściwości danych. Wydajność bieżącego modelu nie ma wpływu na uruchomienie oceny funkcji.

Współczynnik ważności funkcji to miara względnego wpływu funkcji na nagrodę w okresie oceny. Oceny ważności funkcji to liczba z zakresu od 0 (co najmniej ważne) do 100 (najważniejsze) i są wyświetlane w ocenie funkcji. Ponieważ ocena jest uruchamiana w określonym przedziale czasu, ważność funkcji może ulec zmianie, ponieważ dodatkowe dane są wysyłane do usługi Personalizacja i gdy użytkownicy, scenariusze i dane zmieniają się wraz z upływem czasu.

Tworzenie oceny funkcji

Aby uzyskać wyniki ważności funkcji, należy utworzyć ocenę funkcji w okresie zarejestrowanych danych, aby wygenerować raport zawierający wyniki ważności funkcji. Ten raport można wyświetlić w witrynie Azure Portal. Aby utworzyć ocenę funkcji:

  1. Przejdź do witryny internetowej witryny azure portal
  2. Wybierz zasób personalizacji
  3. Wybierz sekcję Monitorowanie w okienku nawigacji bocznej
  4. Wybieranie karty Funkcje
  5. Wybierz pozycję "Utwórz raport" i powinien zostać wyświetlony nowy ekran
  6. Wybierz nazwę raportu
  7. Wybieranie godzin rozpoczęcia i zakończenia dla okresu ewaluacyjnego
  8. Wybierz pozycję "Utwórz raport"

Screenshot that shows how to create a Feature Evaluation in your Personalizer resource by clicking on

Screenshot that shows in the creation window and how to fill in the fields for your report including the name, start date, and end date.

Następnie nazwa raportu powinna pojawić się w poniższej tabeli raportów. Tworzenie oceny funkcji to długotrwały proces, w którym czas ukończenia zależy od ilości danych wysyłanych do usługi Personalizacja w okresie oceny. Podczas generowania raportu kolumna Stan będzie wskazywać wartość "Uruchomiono" dla oceny i zostanie zaktualizowana do wartości "Powodzenie" po zakończeniu. Okresowo sprawdzaj, czy ocena została zakończona.

Możesz uruchomić wiele ocen funkcji w różnych okresach czasu, w których zasób personalizacji zawiera dane dziennika. Upewnij się, że okres przechowywania danych został ustawiony wystarczająco długo, aby umożliwić przeprowadzanie ocen na starszych danych.

Interpretowanie wyników ważności funkcji

Funkcje z wysoką oceną ważności

Funkcje o wyższym znaczeniu były bardziej wpływowe na model w okresie oceny w porównaniu z innymi funkcjami. Ważne funkcje mogą stanowić inspirację do projektowania dodatkowych funkcji, które mają zostać uwzględnione w modelu. Jeśli na przykład zobaczysz funkcje kontekstowe "IsWeekend" lub "IsWeekday" mają duże znaczenie dla zakupów spożywczych, może się zdarzyć, że święta lub długie weekendy mogą być również ważnymi czynnikami, więc warto rozważyć dodanie funkcji, które przechwytują te informacje.

Funkcje z niską oceną ważności

Funkcje o niskim znaczeniu są dobrymi kandydatami do dalszej analizy. Nie wszystkie funkcje niskiej oceny muszą być złe lub nie są przydatne, ponieważ niskie wyniki mogą wystąpić z co najmniej jednego powodu. Poniższa lista może pomóc w rozpoczęciu analizowania przyczyn niskiej oceny funkcji:

  • Ta funkcja rzadko była obserwowana w danych w okresie oceny.

    • Jeśli liczba wystąpień tej funkcji jest niska w porównaniu z innymi funkcjami, może to oznaczać, że funkcja nie była wystarczająco często obecna dla modelu, aby ustalić, czy jest to cenne, czy nie.
  • Wartości funkcji nie miały dużej różnorodności ani odmiany.

    • Jeśli liczba unikatowych wartości tej funkcji jest niższa niż oczekiwano, może to oznaczać, że funkcja nie różni się znacznie w okresie oceny i nie zapewni znaczących szczegółowych informacji.
  • Wartości funkcji były zbyt hałaśliwe (losowe) lub zbyt odrębne i podały niewielką wartość.

    • Sprawdź liczbę unikatowych wartości w ocenie funkcji. Jeśli liczba unikatowych wartości tej funkcji jest większa niż oczekiwano lub wysoka w porównaniu z innymi funkcjami, może to oznaczać, że funkcja była zbyt hałaśliwa w okresie oceny.
  • Wystąpił problem z danymi lub formatowaniem.

    • Upewnij się, że funkcje są sformatowane i wysyłane do usługi Personalizacja w oczekiwany sposób.
  • Funkcja może nie być cenna w przypadku modelowania uczenia się i wydajności, jeśli ocena funkcji jest niska i powyższe przyczyny nie mają zastosowania.

    • Rozważ usunięcie funkcji, ponieważ nie pomaga modelowi zmaksymalizować średnią nagrodę.

Usunięcie funkcji z ocenami o niskiej ważności może pomóc przyspieszyć trenowanie modelu, zmniejszając ilość danych potrzebnych do nauki. Może również potencjalnie poprawić wydajność modelu. Nie jest to jednak gwarantowane i może być potrzebna dalsza analiza. Dowiedz się więcej na temat projektowania funkcji kontekstowych i akcji.

Typowe problemy i kroki ulepszania funkcji

  • Wysyłanie funkcji z wysoką kardynalnością. Funkcje o wysokiej kardynalności to te, które mają wiele odrębnych wartości, które nie mogą powtarzać się w wielu zdarzeniach. Na przykład dane osobowe specyficzne dla jednej osoby (takie jak imię i nazwisko, numer telefonu, numer karty kredytowej, adres IP) nie powinny być używane z usługą Personalizacja.

  • Wysyłanie identyfikatorów użytkowników z dużą liczbą użytkowników jest mało prawdopodobne, że te informacje są istotne dla uczenia usługi Personalizacja w celu zmaksymalizowania średniego wyniku nagrody. Wysyłanie identyfikatorów użytkowników (nawet jeśli nie dane osobowe) prawdopodobnie spowoduje dodanie większej liczby szumów do modelu i nie jest zalecane.

  • Funkcje są zbyt rozrzedłe. Wartości są odrębne i rzadko występują więcej niż kilka razy. Dokładne znaczniki czasu w dół do sekundy mogą być bardzo rozrzedłe. Może być bardziej gęsty (a zatem skuteczny), grupując czasy na "rano", "południe" lub "popołudnie", na przykład.

Informacje o lokalizacji zwykle wynikają również z tworzenia szerszych klasyfikacji. Na przykład współrzędne długości geograficznej, takie jak Lat: 47.67402° N, Long: 122.12154° W jest zbyt precyzyjne i zmusza model do nauki szerokości i długości geograficznej jako odrębnych wymiarów. Podczas próby personalizacji na podstawie informacji o lokalizacji pomaga grupować informacje o lokalizacji w większych sektorach. Łatwym sposobem, aby to zrobić, jest wybranie odpowiedniej dokładności zaokrąglania dla liczb długich lat i połączenie szerokości i długości geograficznej w "obszary", tworząc jeden ciąg. Na przykład dobrym sposobem reprezentowania lat: 47,67402° N, długa: 122,12154° W w regionach o szerokości około kilku kilometrów będzie miała wartość "location":"34.3 , 12.1".

  • Rozwiń zestawy funkcji z dodatkowymi informacjami Możesz również uzyskać więcej funkcji, myśląc o nieeksplorowanych atrybutach, które mogą być uzyskiwane z już posiadanych informacji. Na przykład w fikcyjnej personalizacji listy filmów jest możliwe, że weekend a dzień powszedni wywołuje inne zachowanie od użytkowników? Czas można rozszerzyć, aby mieć atrybut "weekend" lub "dzień powszedni". Czy krajowe/regionalne święta kulturalne zwracają uwagę na niektóre typy filmów? Na przykład atrybut "Halloween" jest przydatny w miejscach, w których jest to istotne. Czy jest możliwe, że deszczowa pogoda ma znaczący wpływ na wybór filmu dla wielu osób? Dzięki czasowi i miejscu usługa pogodowa może dostarczyć te informacje i dodać ją jako dodatkową funkcję.

Następne kroki

Analizowanie wydajności zasad przy użyciu oceny offline za pomocą usługi Personalizacja.