Two-Class Support Vector Machine (Dwuklasowa maszyna wektorów nośnych)

Tworzy binarny model klasyfikacji przy użyciu algorytmu Maszyny wektorów wsparcia

Kategoria: Machine Learning / Inicjowanie modelu / klasyfikacji

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 Two-Class Support Vector Machine (Dwuklasowa maszyna wektorów obsługi) w programie Machine Learning Studio (wersja klasyczna) w celu utworzenia modelu opartego na algorytmie maszyny wektora wsparcia.

Maszyny wektorów wsparcia (SVM) to dobrze zbadana klasa nadzorowanych metod uczenia. Ta implementacja jest odpowiednia do przewidywania dwóch możliwych wyników na podstawie zmiennych ciągłych lub kategorii.

Po zdefiniowaniu parametrów modelu trenuj model przy użyciu jednego z modułów trenowania i udostępniając oznaczony tagami zestaw danych, który zawiera etykietę lub kolumnę wyniku.

Więcej informacji na temat maszyn wektorów wsparcia

Maszyny wektorów wsparcia są jednymi z najwcześniejszych algorytmów uczenia maszynowego, a modele SVM były używane w wielu aplikacjach, od pobierania informacji po klasyfikację tekstu i obrazów. Maszyny SVM mogą być używane zarówno do zadań klasyfikacji, jak i regresji.

Ten model SVM to nadzorowany model uczenia, który wymaga danych oznaczonych etykietami. W procesie trenowania algorytm analizuje dane wejściowe i rozpoznaje wzorce w wielowymiarowej przestrzeni cech nazywanej hiperpłaszczyzną. Wszystkie przykłady wejściowe są reprezentowane jako punkty w tej przestrzeni i są mapowane na kategorie danych wyjściowych w taki sposób, że kategorie są podzielone przez tak szeroki i czyszczysz lukę, jak to możliwe.

Na podstawie przewidywania algorytm SVM przypisuje nowe przykłady do jednej lub drugiej kategorii, mapując je na tę samą przestrzeń.

Jak skonfigurować maszynę wektorów Two-Class technicznej

W przypadku tego typu modelu zaleca się znormalizowanie zestawu danych przed użyciem go do trenowania klasyfikatora.

  1. Dodaj moduł Two-Class Support Vector Machine (Dwuklasowa maszyna wektora wsparcia ) do eksperymentu w programie Studio (wersja klasyczna).

  2. Określ sposób trenowania modelu, ustawiając opcję Utwórz tryb szkoleniowy .

    • Pojedynczy parametr: jeśli wiesz, jak chcesz skonfigurować model, możesz podać określony zestaw wartości jako argumenty.

    • Zakres parametrów: jeśli nie masz pewności co do najlepszych parametrów, możesz znaleźć optymalne parametry, określając wiele wartości i korzystając z modułu Hiperparametry modelu dostrajania, aby znaleźć optymalną konfigurację. Instruktor iteruje po wielu kombinacjach ustawień i określa kombinację wartości, która tworzy najlepszy model.

  3. W przypadku liczby iteracji wpisz liczbę, która określa liczbę iteracji używanych podczas tworzenia modelu.

    Ten parametr może służyć do kontrolowania różnic między szybkością trenowania a dokładnością.

  4. W przypadku wyrażenia lambda wpisz wartość do użycia jako wagę dla regularyzacji L1.

    Ten współczynnik regularyzacji może służyć do dostrajania modelu. Większe wartości penalizują bardziej złożone modele.

  5. Wybierz opcję Normalize features (Normalizacja cech), jeśli chcesz znormalizować cechy przed trenowaniem.

    Jeśli zastosujemy normalizację, przed trenowaniem punkty danych są wyśrodkowane na średniej i skalowane tak, aby mieć jedną jednostkę odchylenia standardowego.

  6. Wybierz opcję Project do sfery jednostki, aby znormalizować współczynniki.

    Rzutowanie wartości na przestrzeń jednostkową oznacza, że przed trenowaniem punkty danych są wyśrodkowane przy wartości 0 i skalowane tak, aby mieć jedną jednostkę odchylenia standardowego.

  7. W iniekcie liczb losowych wpisz wartość całkowitą do użycia jako iniekt, jeśli chcesz zapewnić odtwarzalność między przebiegami. W przeciwnym razie wartość zegara systemu jest używana jako iniekcją, co może spowodować nieco inne wyniki między przebiegami.

  8. Wybierz opcję Zezwalaj na nieznaną kategorię, aby utworzyć grupę dla nieznanych wartości w zestawach trenowania lub walidacji. W takim przypadku model może być mniej dokładny dla znanych wartości, ale może zapewnić lepsze przewidywania dla nowych (nieznanych) wartości.

    Jeśli ją odznaczysz, model może akceptować tylko wartości, które znajdują się w danych szkoleniowych.

  9. Połączenie zestaw danych z etykietą i jeden z modułów szkoleniowych:

    Uwaga

    Jeśli przekażemy zakres parametrów do funkcji Train Model, będzie on używać tylko pierwszej wartości z listy zakresów parametrów.

    Jeśli przekażemy pojedynczy zestaw wartości parametrów do modułu Dostrajanie hiperparametrów modelu, jeśli oczekuje on zakresu ustawień dla każdego parametru, zignoruje wartości i będzie używać wartości domyślnych dla uczących się.

    Jeśli wybierzesz opcję Zakres parametrów i wpiszesz pojedynczą wartość dowolnego parametru, ta pojedyncza wartość, która zostanie określona, będzie używana podczas całego czyszczenie, nawet jeśli inne parametry zmienią się w zakresie wartości.

  10. Uruchom eksperyment.

Wyniki

Po zakończeniu trenowania:

  • Aby wyświetlić podsumowanie parametrów modelu wraz z wagami funkcji uczonymi na trenowanie, kliknij prawym przyciskiem myszy dane wyjściowe hiperparametrów trenowania modelu lub dostrajania modelu, a następnie wybierz pozycję Visualize (Wizualizacja).

  • Aby użyć wytrenowane modele do przewidywania, połącz wytrenowany model z modułem Score Model (Ocena modelu).

  • Aby przeprowadzić krzyżowe sprawdzanie poprawności zestawu danych z etykietami, połącz nieprzetrenowany model i zestaw danych z modelem krzyżowej weryfikacji.

Przykłady

Przykłady sposobu, w jaki jest używany ten algorytm uczenia, można znaleźć w Azure AI Gallery:

Uwagi techniczne

Ta sekcja zawiera szczegóły implementacji, porady i odpowiedzi na często zadawane pytania.

Wskazówki dotyczące użycia

W przypadku tego typu modelu zaleca się znormalizowanie zestawu danych przed użyciem go do trenowania klasyfikatora.

Mimo że ostatnie badania opracowały algorytmy o większej dokładności, ten algorytm może działać dobrze w przypadku prostych zestawów danych, gdy celem jest szybkość ponad dokładność. Jeśli nie otrzymasz żądanych wyników przy użyciu dwuklasowego modelu wektora wsparcia, wypróbuj jedną z tych metod klasyfikacji:

Parametry modułu

Nazwa Zakres Typ Domyślny Opis
Liczba iteracji >= 1 Liczba całkowita 1 Liczba iteracji
Lambda >= double. Epsilon Float 0,001 Waga dla regularyzacji L1. Użycie wartości niezerowej pozwala uniknąć zbytniego dopasowyania modelu do zestawu danych treningowych.
Normalizowanie cech Dowolne Boolean Prawda W przypadku wartości True normalizuj funkcje.
Project do sfery jednostki Dowolne Wartość logiczna Fałsz Jeśli ma wartość True, rzutuj funkcje na okrąg jednostki.
Iniekt liczb losowych Dowolne Liczba całkowita Ininicjator generatora liczb losowych używany przez model. Pozostaw wartość domyślną pustą.
Zezwalaj na nieznane poziomy kategorii Dowolne Boolean Prawda W przypadku wartości True element tworzy dodatkowy poziom dla każdej kolumny kategorii. Wszystkie poziomy w testowym zestawie danych, które nie są dostępne w zestawie danych treningowych, są mapowane na ten dodatkowy poziom.

Dane wyjściowe

Nazwa Typ Opis
Nieprzetrenowany model Tabela danych Nieprzetrenowany binarny model klasyfikacji.

Zobacz też

Klasyfikacja
Lista modułów A–Z