Ocena modułu poleceń

Ważne

Obsługa programu Machine Learning Studio (wersja klasyczna) zakończy się 31 sierpnia 2024 r. Zalecamy przejście do usługi Azure Machine Learning przed tym terminem.

Od 1 grudnia 2021 r. nie będzie można tworzyć nowych zasobów programu Machine Learning Studio (wersja klasyczna). Do 31 sierpnia 2024 r. można będzie nadal korzystać z istniejących zasobów programu Machine Learning Studio (wersja klasyczna).

Dokumentacja programu ML Studio (wersja klasyczna) jest wycofywana i może nie być aktualizowana w przyszłości.

Ocenia dokładność przewidywań modelu polecania

Kategoria: Machine Learning/ Ocena

Uwaga

Dotyczy: Machine Learning Studio (wersja klasyczna)

Podobne moduły przeciągania i upuszczania są dostępne w Azure Machine Learning projektanta.

Omówienie modułu

W tym artykule opisano sposób użycia modułu Evaluate Recommender w programie Machine Learning Studio (wersja klasyczna) do mierzenia dokładności przewidywań nych przez model rekomendacji. Korzystając z tego modułu, możesz ocenić cztery różne rodzaje rekomendacji:

  • Klasyfikacje przewidywane dla danego użytkownika i elementu

  • Elementy zalecane dla danego użytkownika

  • Lista użytkowników, którzy są powiązani z danym użytkownikiem

  • Lista elementów, które są powiązane z danym elementem

Podczas tworzenia przewidywań przy użyciu modelu rekomendacji są zwracane nieco inne wyniki dla każdego z tych obsługiwanych typów przewidywania. Moduł Evaluate Recommender (Ocena modułu rekomendacji) umożliwia wywłaszczanie rodzaju przewidywania z formatu kolumny ocenianego zestawu danych. Na przykład zestaw danych z wynikami może zawierać:

  • triples klasyfikacji elementów użytkownika
  • użytkowników i ich zalecane elementy
  • użytkowników i ich powiązanych użytkowników
  • elementy i powiązane z nimi elementy

Moduł stosuje również odpowiednie metryki wydajności na podstawie typu przewidywania.

Porada

W tym samouczku zespół programistów .NET może dowiedzieć się wszystkiego, co musisz wiedzieć na temat budowania systemu rekomendacji. Zawiera przykładowy kod i omówienie sposobu Machine Learning z aplikacji.

Tworzenie aparatu rekomendacji dla aplikacji .NET przy użyciu Machine Learning

Jak skonfigurować program evaluate recommender

Moduł Evaluate Recommender porównuje dane wyjściowe przewidywań według modelu rekomendacji z odpowiadającymi im danymi "ground truth". Na przykład moduł modułu rekomendacji score matchbox tworzy ocenione zestawy danych, które można analizować za pomocą modułu rekomendacji oceny.

Wymagania

Ocena programu Recommender wymaga następujących zestawów danych jako danych wejściowych.

Testowy zestaw danych

Testowy zestaw danych zawiera "prawdziwości" danych w postaci trójzesłania klasyfikacji elementów użytkownika.

Jeśli masz już zestaw danych zawierający triples klasyfikacji elementów użytkownika, możesz zastosować moduł Split Data (Podział danych) przy użyciu opcji RecommenderSplit w celu utworzenia zestawu danych treningowych i powiązanego zestawu testowego z istniejącego zestawu danych.

Scored dataset (Zestaw danych z wynikami

Wygenerowany zestaw danych zawiera przewidywania, które zostały wygenerowane przez model rekomendacji.

Kolumny w tym drugim zestawie danych zależą od rodzaju przewidywania, które były wyświetlane podczas oceniania. Na przykład wynikowy zestaw danych może zawierać dowolną z następujących czynności:

  • Użytkownicy, elementy i oceny, które użytkownik prawdopodobnie poda dla elementu
  • Lista użytkowników i elementów, które są dla nich zalecane
  • Lista użytkowników z użytkownikami, którzy są prawdopodobnie do nich podobni
  • Lista elementów wraz z elementami smiliar

Metryki

Metryki wydajności dla modelu są generowane na podstawie typu danych wejściowych. Aby uzyskać szczegółowe informacje, zobacz następujące sekcje:

Ocena przewidywanych ocen

Podczas oceniania przewidywanych ocen oceniony zestaw danych (drugi element wejściowy dla evaluate recommender) musi zawierać trzy elementy klasyfikacji elementów użytkownika, które spełniają następujące wymagania:

  • Pierwsza kolumna zestawu danych zawiera identyfikatory użytkowników.

  • Druga kolumna zawiera identyfikatory elementów.

  • Trzecia kolumna zawiera odpowiednie klasyfikacje elementów użytkownika.

Ważne

Aby ocena zakończyła się pomyślnie, nazwy kolumn muszą mieć odpowiednio Userwartości , Itemi Rating.

Evaluate Recommender porównuje oceny w zestawie danych prawdy u podstaw z przewidywanymi ocenami ocenionego zestawu danych i oblicza średni bezwzględny błąd ( MAE) i główny błąd średni kwadrat ( RMSE).

Inne parametry funkcji Evaluate Recommender nie mają wpływu na ocenę przewidywań klasyfikacji.

Ocena zaleceń dotyczących elementów

Podczas oceny zalecenia dotyczącego elementu użyj zestawu danych z wynikami, który zawiera zalecane elementy dla każdego użytkownika:

  • Pierwsza kolumna zestawu danych musi zawierać identyfikator użytkownika.

  • Wszystkie kolejne kolumny powinny zawierać odpowiednie identyfikatory zalecanych elementów uporządkowane według tego, jak odpowiedni jest element dla użytkownika.

    Przed nawiązaniem połączenia z tym zestawem danych zalecamy posortowanie zestawu danych tak, aby na początku przyszły najważniejsze elementy.

Inne parametry funkcji Evaluate Recommender nie mają wpływu na ocenę zaleceń dotyczących elementów.

Ważne

Aby program Evaluate Recommender działał, nazwy kolumn muszą być takie Userjak , Item 2Item 1, Item 3 itd.

Funkcja Evaluate Recommender oblicza średni skumulowany zysk znormalizowany z rabatem (NDCG) i zwraca go w wyjściowym zestawie danych.

Ponieważ nie można poznać rzeczywistej "prawdy programowej" dla zalecanych elementów, program Evaluate Recommender używa klasyfikacji elementów użytkownika w zestawie danych testowych jako korzyści w obliczeniach grupy NDCG. Aby to ocenić, moduł oceniania modułu polecania musi tworzyć rekomendacje tylko dla elementów z ocenami prawdy na pierwszym miejscu (w testowym zestawie danych).

Ocena przewidywań powiązanych użytkowników

Podczas oceniania przewidywań powiązanych użytkowników użyj zestawu danych z wynikami, który zawiera powiązanych użytkowników dla każdego interesującego użytkownika:

  • Pierwsza kolumna musi zawierać identyfikatory dla każdego interesującego użytkownika.

  • Wszystkie kolejne kolumny zawierają identyfikatory przewidywanych powiązanych użytkowników. Powiązani użytkownicy są uporządkowani według siły realtionship (najpierw większość powiązanych użytkowników).

  • Aby program Evaluate Recommender działał, nazwy kolumn muszą być takie Userjak , Related User 1, Related User 3Related User 2, itd.

Porada

Możesz wpłynąć na ocenę, ustawiając minimalną liczbę elementów, które muszą być wspólne dla użytkownika i jego powiązanych użytkowników.

Funkcja Evaluate Recommender oblicza średni znormalizowany skumulowany zysk z rabatem (NDCG, normalized discounted cumulative gain), na podstawie odległości Od (L1 Sim NDCG) i Euclidean (L2 Sim NDCG) i zwraca obie wartości w wyjściowym zestawie danych. Ponieważ nie ma żadnych rzeczywistych podstaw dla powiązanych użytkowników, program Evaluate Recommender korzysta z następującej procedury do obliczenia średniej NDCG.

Dla każdego użytkownika, który cię interesuje w zestawie danych z wynikami:

  1. Znajdź wszystkie elementy w zestawie danych testowych, które zostały ocenione zarówno przez interesującego użytkownika, jak i powiązanego użytkownika.

  2. Utwórz dwa wektory na podstawie klasyfikacji tych elementów: jeden dla interesującego użytkownika i jeden dla powiązanego użytkownika.

  3. Oblicz zysk jako podobieństwo wynikowych dwóch wektorów klasyfikacji, pod względem ich odległości od Kolumny (L1) lub Euklidesowej (L2).

  4. Obliczenia L1 Sim NDCG i L2 Sim NDCG, korzystając z korzyści wszystkich powiązanych użytkowników.

  5. Średnie wartości NDCG dla wszystkich użytkowników w zestawie danych z wynikami.

Innymi słowy, zysk jest obliczany jako podobieństwo (znormalizowane odległości Między użytkownikiem zainteresowania (wpisem w pierwszej kolumnie z scored dataset) i danym powiązanym użytkownikiem (wpis w n-tej kolumnie zestawu danych). Zysk z tej pary użytkowników jest obliczany przy użyciu wszystkich elementów, dla których oba elementy zostały ocenione w oryginalnych danych (zestaw testowy). Grupy NDCG są następnie obliczane przez agregowanie indywidualnych zysków dla pojedynczego użytkownika i wszystkich powiązanych użytkowników przy użyciu rabatu logarytmii. Oznacza to, że jedna wartość grupy NDCG jest obliczana dla każdego interesującego użytkownika (każdy wiersz w zestawie danych z wynikami). Ostatecznie zgłoszona liczba jest średnią arytmetyczną dla wszystkich użytkowników zainteresowanych zestawem danych (tj. jego wierszami).

W związku z tym moduł oceniania modułu polecania musi przewidywać tylko powiązanych użytkowników, którzy mają elementy z ocenami prawdy u podstaw (w testowym zestawie danych).

Ocena przewidywań powiązanych elementów

Podczas oceniania przewidywania powiązanych elementów użyj zestawu danych z wynikami, który zawiera powiązane elementy dla każdego interesującego elementu:

  • Pierwsza kolumna musi zawierać identyfikatory elementów, które cię interesują.

  • Wszystkie kolejne kolumny powinny zawierać identyfikatory przewidywanych powiązanych elementów uporządkowane według ich związku z elementem zainteresowania (najpierw najbardziej powiązanym elementem).

  • Aby program Evaluate Recommender działał, nazwy kolumn muszą być takie Itemjak , Related Item 1, Related Item 3Related Item 2, itd.

Porada

Możesz wpłynąć na ocenę, ustawiając minimalną liczbę użytkowników, które element zainteresowania i powiązane z nim elementy muszą mieć wspólne.

Funkcja Evaluate Recommender oblicza średni znormalizowany skumulowany zysk z rabatem (NDCG) na podstawie odległości Od 1 sim nDCG i Euclidean (L2 Sim NDCG) i zwraca obie wartości w wyjściowym zestawie danych. Ponieważ nie ma żadnych rzeczywistych podstaw dla powiązanych elementów, program Evaluate Recommender oblicza średnią NDCG w następujący sposób:

Dla każdego interesującego elementu w zestawie danych z wynikami:

  1. Znajdź wszystkich użytkowników w testowym zestawie danych, którzy ocenili zarówno element zainteresowania, jak i powiązany element, który rozważasz.

  2. Utwórz dwa wektory na podstawie klasyfikacji tych użytkowników, jeden dla interesującego cię elementu i dla powiązanego elementu, który rozważasz.

  3. Oblicz zysk jako podobieństwo wynikowych dwóch wektorów klasyfikacji w odniesieniu do ich odległości Między Kolumnami (L1) lub Euklidesową (L2).

  4. Obliczanie L1 Sim NDCG i L2 Sim NDCG przy użyciu zysków wszystkich powiązanych elementów.

  5. Uśrednij wartości NDCG dla wszystkich elementów, które cię interesują w zestawie danych z wynikami.

Innymi słowy, zysk jest obliczany jako podobieństwo (znormalizowane odległości Między elementem zainteresowania (wpisem w pierwszej kolumnie zestawu danych) i danym powiązanym elementem (wpis w n-tej kolumnie zestawu danych). Zysk z tej pary elementów jest obliczany przy użyciu wszystkich użytkowników, którzy ocenili oba te elementy w oryginalnych danych (zestaw testowy). Grupy NDCG są następnie obliczane przez agregowanie poszczególnych zysków dla pojedynczej pozycji zainteresowania i wszystkich powiązanych z nią pozycji przy użyciu rabatu logarytmii. Oznacza to, że jedna wartość NDCG jest obliczana dla każdego interesującego elementu (każdego wiersza w zestawie danych z wynikami). Liczba, która jest ostatecznie zgłaszana, to średnia arytmetyczna dla wszystkich elementów zainteresowania w zestawie danych z wynikami (tj. jego wiersze).

W związku z tym w celu oceny moduł oceniania modułu polecania musi przewidywać tylko powiązane elementy z ocenami prawdy u podstaw (w testowym zestawie danych).

Przykłady

Przykłady sposobu, w jaki modele rekomendacji są używane w Machine Learning, zobacz Azure AI Gallery:

Oczekiwane dane wejściowe

Nazwa Typ Opis
Testowy zestaw danych Tabela danych Testowy zestaw danych
Scored dataset (Zestaw danych z wynikami Tabela danych Scored dataset (Zestaw danych z wynikami

Parametry modułu

Nazwa Zakres Typ Domyślny Opis
Minimalna liczba elementów, które użytkownik zapytania i powiązany użytkownik muszą mieć wspólną ocenę >= 1 Liczba całkowita 2 Określ minimalną liczbę elementów, które muszą zostać ocenione zarówno przez użytkownika zapytania, jak i powiązanego użytkownika

Ten parametr jest opcjonalny
Minimalna liczba użytkowników, dla których element zapytania i powiązany element muszą być ogólnie ocenione >= 1 Liczba całkowita 2 Określ minimalną liczbę użytkowników, którzy muszą mieć oceniony zarówno element zapytania, jak i powiązany element

Ten parametr jest opcjonalny

Dane wyjściowe

Nazwa Typ Opis
Metric Tabela danych Tabela metryk oceny

Wyjątki

Wyjątek Opis
Błąd 0022 Wyjątek występuje, jeśli liczba wybranych kolumn w wejściowym zestawie danych nie jest równa oczekiwanej liczbie.
Błąd 0003 Wyjątek występuje, jeśli co najmniej jeden z wejść ma wartość null lub jest pusty.
Błąd 0017 Wyjątek występuje, jeśli co najmniej jedna określona kolumna ma typ nieobsługiwany przez bieżący moduł.
Błąd 0034 Wyjątek występuje, jeśli istnieje więcej niż jedna klasyfikacja dla danej pary elementów użytkownika.
Błąd 0018 Wyjątek występuje, jeśli wejściowy zestaw danych jest nieprawidłowy.
Błąd 0002 Wyjątek występuje, jeśli co najmniej jeden parametr nie może zostać analizowany lub przekonwertowany z określonego typu na wymagany przez docelowy typ metody.

Aby uzyskać listę błędów specyficznych dla modułów programu Studio (wersja klasyczna), zobacz Machine Learning Kodów błędów.

Aby uzyskać listę wyjątków interfejsu API, zobacz Machine Learning API REST Error Codes (Kody błędów interfejsu API REST).

Zobacz też

Trenuj polecanie matchbox
Score Matchbox Recommender