Udostępnij za pośrednictwem


Czyszczenie klastrów

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.

Wykonuje czyszczenie parametrów w celu określenia optymalnych ustawień dla modelu klastrowania

Kategoria: Machine Learning / Trenuj

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żywania modułu Czyszczenie klastra w programie Machine Learning Studio (wersja klasyczna) do trenowania modelu przy użyciu funkcji czyszczenie parametrów. Czyszczenie parametrów to sposób znajdowania najlepszych hiperparametrów dla modelu, biorąc pod uwagę zestaw danych.

Moduł Czyszczenie klastrowania został zaprojektowany specjalnie z myślą o modelach klastrowania. Model klastrowania jest zapewniany jako dane wejściowe wraz z zestawem danych. Moduł iteruje po zestawie określonych parametrów, budowania i testowania modeli z różnymi parametrami, aż znajdzie model z najlepszym zestawem klastrów. Automatycznie oblicza najlepszą konfigurację, a następnie trenuje model przy użyciu tej konfiguracji.

Zwraca również zestaw metryk opisujących przetestowane modele oraz zestaw przypisań klastrów na podstawie najlepszego modelu.

Jak skonfigurować klaster czyszczenie

  1. Dodaj moduł Czyszczenie klastrowania do eksperymentu w programie Studio (wersja klasyczna). Ten moduł można znaleźć w Machine Learning kategorii Train (Trenuj).

  2. Dodaj moduł K-Means Clustering (Klastrowanie k-węzłów ) i zestaw danych szkoleniowych do eksperymentu, a następnie połącz je z modułem Sweep Clustering (Czyszczenie klastrowania ).

  3. Skonfiguruj moduł klastrowania k-węzłów , aby użyć funkcji czyszczenie parametrów w następujący sposób:

    1. Dla ustawienia Utwórz tryb szkoleniowy ustaw wartość Zakres parametrów.

    2. Użyj konstruktora zakresu (lub ręcznie wpisz wiele wartości) dla każdego parametru, aby ustawić zakres wartości, aby iterować.

    3. Inicjowanie w celu czyszczenie: określ, w jaki sposób algorytm K-węzłów powinien znaleźć centroidy początkowe klastra. Do losowego inicjowania, a następnie testowania centroid jest dostarczanych wiele algorytmów.

      Jeśli zestaw danych treningowych zawiera kolumnę etykiety, nawet z wartościami częściowym, możesz użyć tych wartości dla centroidów. Użyj opcji Przypisz tryb etykiety , aby wskazać, jak są używane wartości etykiet.

      Porada

      Kolumna etykiety musi być wcześniej oznaczona jako taka. Jeśli wystąpi błąd, spróbuj użyć funkcji Edytuj metadane , aby zidentyfikować kolumnę zawierającą etykiety.

    4. Liczba iniekcją do czyszczenie: Wskazuje, ile różnych losowych iniekcją początkową należy spróbować podczas czyszczenie parametrów.

    5. Wybierz metrykę do użycia podczas mierzenia podobieństwa klastra. Aby uzyskać więcej informacji, zobacz K-Sposoby klastrowania .

    6. Iteracje: określ łączną liczbę iteracji, które powinien wykonać algorytm K-y. Te iteracje są używane do optymalizowania wyboru centroidów klastra.

    7. Jeśli używasz kolumny etykiety do zainicjowania czyszczenie, użyj opcji Przypisz tryb etykiety, aby określić sposób obsługi wartości w kolumnie etykiety.

      • Wypełnij brakujące wartości: jeśli kolumna etykiety zawiera brakujące wartości, użyj tej opcji, aby przypisać kategorie na podstawie klastra, do którym przypisano punkt danych.

      • Zastąp z najbliższego centrum: generuje wartości etykiet dla wszystkich punktów danych przypisanych do klastra przy użyciu etykiety punktu znajdującego się najbliżej środka klastra.

      • Ignoruj kolumnę etykiet: wybierz tę opcję, jeśli nie chcesz wykonywać żadnych z powyższych operacji.

  4. W module Czyszczenie klastrowania użyj opcji Dla metryki do mierzenia wyniku klastrowania , aby określić metodę matematyczną, która ma być stosowana podczas szacowania dopasowania wytrenego modelu klastrowania:

    • Uproszczona metryka: ta metryka przechwytuje ścisłość punktów danych w każdym klastrze. Jest on obliczany jako połączenie podobieństwa każdego wiersza z jego klastrem i podobieństwa do następnego najbliższego klastra. Jeśli klaster ma tylko 1 wiersz, obliczana jest proporcjonalna odległość do następnej najbliższej centroidy, aby uniknąć uzyskania wartości 0 w wyniku. "Uproszczony" odnosi się do faktu, że odległość do centroidy klastra jest używana jako prosta miara podobieństwa. Ogólnie rzecz biorąc, wyższy wynik jest lepszy. Średnia wartość w zestawie danych wskazuje, jak dobrze dane zostały klastrowane. Jeśli istnieje zbyt wiele lub zbyt mało klastrów, niektóre klastry będą mieć niższe wartości węzłów niż pozostałe. Aby uzyskać więcej informacji, zobacz ten artykuł w Wikipedii.

    • Daęzłys-Bouldin: Ta metryka ma na celu zidentyfikowanie najmniejszego zestawu klastrów o najmniejszej wartości punktowej. Ponieważ metryka jest definiowana jako stosunek punktowy w każdym klastrze do oddzielenia klastrów, niższa wartość oznacza, że klastrowanie jest lepsze. Najlepszy model klastrowania minimalizuje tę metrykę. Aby obliczyć Davies-Bouldin, średnia odległość między wierszem a centroidą jest obliczana na klaster. Dla każdej pary klastrów suma tych średnich jest dzielona przez odległość między centroidami. Dla każdego klastra jest wybierana maksymalna wartość dla wszystkich pozostałych klastrów i uśredniona dla wszystkich klastrów. Aby uzyskać więcej informacji, zobacz ten artykuł w Wikipedii.

    • Dunn: Ta metryka ma na celu zidentyfikowanie najmniejszego zestawu najbardziej kompaktowych klastrów. Ogólnie rzecz biorąc, wyższa wartość dla tej metryki oznacza lepsze klastrowanie. Aby obliczyć metrykę Dunna, minimalna odległość centroidy do centroidy jest dzielona przez maksymalną odległość każdego punktu danych do jego centrum klastra. Aby uzyskać więcej informacji, zobacz ten artykuł w Wikipedii.

    • Odchylenie średnie: Ta metryka jest obliczana przez obliczenie średniej odległości od każdego punktu danych do jego centrum klastra. Wartość zmniejsza się wraz ze wzrostem liczby centroid; w związku z tym nie jest przydatne podczas czyszczenie, aby znaleźć liczbę centroidów. Ta metryka jest zalecana do użycia podczas wybierania najlepszego inicjalizacji centroidów.

  5. Określ tryb czyszczenie parametrów: wybierz opcję definiującą kombinacje wartości używanych podczas trenowania i sposób ich wybierania:

    • Cała siatka: Wszystkie wartości w danym zakresie są sprawdzane i oceniane. Ta opcja jest zwykle bardziej kosztowna obliczeniowo.

    • Czyszczenie losowe: użyj tej opcji, aby ograniczyć liczbę przebiegów. Model klastrowania jest budowany i oceniany przy użyciu kombinacji wartości wybranych losowo z dozwolonego zakresu wartości parametrów.

  6. Maksymalna liczba przebiegów podczas losowego czyszczenie: ustaw tę opcję, jeśli wybierzesz opcję Losowe czyszczenie . Wpisz wartość, aby ograniczyć maksymalną liczbę iteracji podczas testowania zestawów losowo wybranych parametrów.

    Ostrzeżenie

    Parametry iteracji modułu klastrowania k-średnich mają inne przeznaczenie i nie mają na nie wpływu: ograniczają liczbę przebiegów danych w celu ulepszenia klastrów, minimalizując średnią odległość od każdego punktu danych do jego centroid klastra. Z kolei iteracje zdefiniowane przez parametr modułu Klastra czyszczenie są wykonywane w celu wypróbowania różnych inicjalizacji losowych centroidów. Ten problem z minimalizacją jest znany jako NP-hard; W związku z tym próba kilku losowych iniekcji może przynieść lepsze wyniki.

    Jeśli wybierzesz losowe czyszczenie, użyj opcji Random seed (Losowe inicjowanie), aby określić początkowe losowe wartości inicjalizowane, od których należy rozpocząć tworzenie centroid. Jedną z zalet korzystania z funkcji czyszczenie parametrów w celu utworzenia modelu klastrowania jest możliwość łatwego przetestowania wielu wartości inicjowania w celu ograniczenia znanej czułości modeli klastrowania do początkowej wartości inicjcyju.

  7. Kliknij pozycję Zestaw kolumn i wybierz kolumny do użycia podczas tworzenia klastrów. Domyślnie wszystkie kolumny funkcji są używane podczas budowania i testowania modelu klastrowania.

    Możesz dołączyć kolumnę etykiety, jeśli jest obecna w zestawie danych. Jeśli etykieta jest obecna, możesz użyć jej do nakierowania wyboru centroidów, użycia etykiety jako funkcji lub zignorowania etykiety. Ustaw te opcje etykiety na obsługę modułu klastrowania Kmeans zgodnie z opisem w kroku 3 powyżej.

  8. Zaznacz pole Dołącz lub Usuń zaznaczenie dla opcji Tylko wynik: użyj tej opcji, aby kontrolować, które kolumny są zwracane w wynikach.

    Domyślnie moduł zwraca oryginalne kolumny szkoleniowego zestawu danych wraz z wynikami. W przypadku zaznaczenia tej opcji. zwracane są tylko przypisania klastra.

  9. Dodaj moduł Assign Data to Clusters (Przypisywanie danych do klastrów) do eksperymentu.

  10. Połączenie dane wyjściowe oznaczone etykietą Best Trained Model (Najlepiej wytrenowany model) do danych wejściowych Trained Model (Wytrenowany model) w części Assign Data to Clusters (Przypisywanie danych do klastrów).

  11. Dodaj zestaw danych przeznaczony do oceny i połącz go z portem Zestaw danych modułu Assign Data to Clusters (Przypisywanie danych do klastrów).

  12. Dodaj moduł Evaluate Model (Ocena modelu) i połącz go z modułem Assign Data to Clusters (Przypisywanie danych do klastrów). Opcjonalnie możesz połączyć zestaw danych oceny.

  13. Uruchom eksperyment.

Wyniki

Moduł Czyszczenie klastrowania wyprowadza trzy różne wyniki:

  • Best Trained Model (Najlepiej wytrenowany model). Wytrenowany model, który umożliwia ocenianie i ocenianie. Kliknij prawym przyciskiem myszy i wybierz pozycję Zapisz jako wytrenowany model , aby przechwycić zoptymalizowany model klastrowania i użyć go do oceniania.

  • Zestaw danych wyników. Zestaw przypisań klastrów na podstawie zoptymalizowanego modelu.

    Nazwa kolumny Opis
    Przypisania Ta wartość wskazuje klaster, do którego przypisano każdy punkt danych. Klastry w wytrenowanych modelach są oznaczone za pomocą indeksów opartych na 0.
    DistancesToClusterCenter no.1

    DistancesToClusterCenter no.n
    Ta wartość wskazuje, jak blisko punktu danych znajduje się środek każdego klastra.

    Kolumna jest tworzona dla każdego klastra utworzonego w zoptymalizowanym modelu.

    Liczbę klastrów można ograniczyć za pomocą opcji Liczba centroid .

    Domyślnie można zwrócić kolumny ze szkoleniowego zestawu danych wraz z wynikami, aby ułatwić przeglądanie i interpretowanie przypisań klastra.

  • Czyszczenie wyników. Zestaw danych zawierający następujące metryki oceny dla klastrów:

    Nazwa kolumny Opis
    Metryka klastra Wartość, która wskazuje średnią jakość klastra dla tego uruchomienia. Przebiegi są uporządkowane według najlepszego wyniku.
    Liczba centroid Liczba klastrów, które zostały utworzone w tej konkretnej iteracji czyszczenie
    Indeks uruchomienia Identyfikator każdej iteracji

    Porada

    Wartości zwracane dla metryki klastra powinny być interpretowane inaczej w zależności od metryki wybranej podczas konfiguracji czyszczenie. W przypadku metryki domyślnej Uproszczony wynik jest lepszy. W przypadku Dalants-Bouldin niższy wynik jest lepszy.

Przykłady

Aby zobaczyć przykłady czyszczenie parametrów za pomocą klastrowania k-węzłów, zobacz Azure AI Gallery:

Uwagi techniczne

Ta sekcja zawiera porady i szczegóły implementacji.

Optymalizacja modeli klastrowania

Na jakość i dokładność modeli klastrowania może mieć silnie wpływ wybór parametrów początkowych, takich jak liczba centroid i wartość inicjowana używana do inicjowania klastra. Aby zmniejszyć tę czułość do parametrów początkowych, moduł Czyszczenie klastrowania pomaga znaleźć najlepszą kombinację parametrów. Określasz zakres parametrów do testowania, a moduł automatycznie tworzy i testuje wiele modeli, a na koniec wybiera optymalną liczbę klastrów.

Aby utworzyć czyszczenie parametrów, należy również skonfigurować moduł klastrowania k-węzłów w celu użycia funkcji czyszczenie parametrów. Można określić, że czyszczenie iterować po wszystkich możliwych kombinacjach parametrów lub użyć losowej kombinacji parametrów. Możesz również wybrać jedną z kilku standardowych metryk do mierzenia dokładności centroid podczas procesu iteracyjnych budowania i testowania modelu. Po zakończeniu określonej liczby iteracji moduł wybiera najlepszą liczbę klastrów na podstawie wybranej metryki i wyprowadza raporty, których można użyć do oceny wyników.

Wskazówki dotyczące użycia

  • W niektórych przypadkach możesz już wiedzieć, ilu klastrów oczekujesz. Na przykład dane mogą mieć etykiety klas, które mogą być używane do prowadzenia wyboru centroidów. W takim przypadku można skonfigurować moduł klastrowania k-węzłów , aby używać kolumny etykiety do wytycznych wyboru początkowych centroid.

  • Jeśli znasz niektóre oczekiwane klastry, ale nie masz pewności, ile klastrów jest optymalnych, ustaw liczbę centroid na liczbę większą niż liczba znanych wartości etykiet. Moduł Czyszczenie klastrów tworzy klastry dla znanych punktów danych, a następnie określa optymalną liczbę dodatkowych klastrów dla pozostałych punktów danych.

Obsługa brakujących wartości w kolumnie etykiety

Istnieje kilka sposobów obsługi brakujących wartości w kolumnie etykiety. Załóżmy na przykład, że masz zadanie klasyfikacji obrazów i tylko niektóre obrazy zostały oznaczone etykietami.

Możesz użyć kolumny etykiety, aby kierować wyborem centroid, ale określić, że wszystkie brakujące etykiety mają zostać wypełnione przy użyciu przypisań klastra. Innymi słowy, istniejące wartości etykiet nie są zmieniane, ale brakujące etykiety są wypełnione.

Alternatywnie dla wszystkich punktów danych przypisanych do klastra można zastąpić nawet istniejące etykiety przy użyciu jednej etykiety, która najlepiej reprezentuje klaster. Aby zrozumieć, jak ta opcja jest przydatna, załóżmy, że używasz danych obrazów z bardzo szczegółowymi etykietami, takimi jak różne rase psów. Przy użyciu tej opcji można zastąpić wszystkie szczegółowe etykiety pojedynczą etykietą kategorii "pies".

Wartości iniekcjonów w dzienniku

Plik dziennika wygenerowany przez moduł Train Clustering Model (Trenowanie modelu klastrowania) wydaje się wskazywać, że ten sam iniekt jest używany dla wszystkich iteracji algorytmu klastrowania k-węzłów, niezależnie od iniekcyju podanego we właściwości Random Seed (Iniekt losowy).

W rzeczywistości implementacja używa iniekcyju dostarczonego przez użytkownika w celu wygenerowania sekwencji liczb losowych, które są różne dla każdego uruchomienia. W związku z tym tylko jeden iniekt jest potrzebny do utworzenia wszystkich losowo wygenerowanych liczb.

Intencją dziennika jest wskazanie, którego iniekcyju używa moduł, gdy użytkownik nie określi iniekcyjną w okienku Właściwości.

Oczekiwane dane wejściowe

Nazwa Typ Opis
Nieprzetrenowany model ICluster, interfejs Nieprzetrenowany model klastrowania
Zestaw danych Tabela danych Wejściowe źródło danych

Parametry modułu

Nazwa Typ Wartości Opcjonalne Domyślny Opis
Metryka pomiaru wyniku klastrowania Metryka klastra Simplified Deviation, Dalants-Bouldin, Dunn, Average Deviation (Odchylenie średnie) Wymagane Uproszczony uproszczeń Wybieranie metryki używanej do oceny modeli regresji
Określanie trybu czyszczenie parametrów Metody czyszczenie Cała siatka lub czyszczenie losowe Wymagane Czyszczenie losowe Czyszczenie całej siatki w przestrzeni parametrów lub czyszczenie przy użyciu ograniczonej liczby przykładowych przebiegów
Zestaw kolumn ColumnSelection Wymagane Wzorzec wyboru kolumny
Maksymalna liczba przebiegów podczas losowego czyszczenie Liczba całkowita [1;10000] Dostępne tylko wtedy, gdy tryb SweepingMode jest ustawiony na losowe czyszczenie 5 Ustaw maksymalną liczbę przebiegów do wykonania podczas korzystania z funkcji losowego czyszczenie
Iniekt losowy Liczba całkowita Dostępne tylko wtedy, gdy tryb SweepingMode jest ustawiony na losowe czyszczenie 0 Podaj wartość iniekcyjną generatora liczb losowych do losowego czyszczenie
Sprawdzanie opcji Dołącz lub Usuń zaznaczenie tylko wyniku Wartość logiczna Wymagane Prawda Wybierz tę opcję, aby wskazać, że wyjściowy zestaw danych musi zawierać wejściowy zestaw danych z dołączona kolumną przypisań. Usuń zaznaczenie, aby wskazać, że powinny być wyprowadzane tylko kolumny przypisań.

Dane wyjściowe

Nazwa Typ Opis
Najlepszy wytrenowany model ICluster, interfejs Wytrenowany model klastrowania
Zestaw danych wyników Tabela danych Wejściowy zestaw danych dołączany tylko do kolumny danych przypisań lub przypisań
Czyszczenie wyników Tabela danych Wynikowy dziennik metryk dla przebiegów czyszczenie klastra

Wyjątki

Wyjątek Opis
Błąd 0003 Wyjątek występuje, jeśli co najmniej jeden z danych wejściowych ma wartość null lub jest pusty.

Aby uzyskać listę błędów specyficznych dla modułów programu Studio (wersja klasyczna), zobacz Machine Learning Kody 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ż

Klastrowanie metodą k-średnich
Przypisywanie danych do klastrów
Machine Learning / Trenuj
Machine Learning / Inicjowanie modelu / Klastrowanie