Udostępnij za pośrednictwem


Konwertowanie na format SVMLight

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.

Konwertuje dane wejściowe na format używany przez platformę SVM-Light.

Kategoria: Konwersje formatu danych

Uwaga

Dotyczy: tylko Machine Learning Studio (klasyczne)

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 Convert to SVMLight w programie Machine Learning Studio (wersja klasyczna) do konwertowania zestawów danych na format używany przez program SVMLight.

Ta SVM-Light została opracowana przez badaczy z Uniwersytetu Cornella. Biblioteka SVM-Light implementuje maszynę wektora wsparcia vapnika, ale format został przyjęty w innym miejscu i może być używany do wielu zadań uczenia maszynowego, w tym klasyfikacji i regresji.

Aby uzyskać więcej informacji, zobacz SVMLight Support Vector Machine (SvMLight Support Vector Machine).

How to configure Convert to SVMLight

Konwersja na format SVMLight wiąże się z konwersją każdego przypadku na wiersz danych, który rozpoczyna się od etykiety, po którym następuje pary feature-value wyrażone jako liczby rozdzielone dwukropkiem. Proces konwersji nie identyfikuje automatycznie poprawnych kolumn, dlatego ważne jest, aby przygotować kolumny w zestawie danych przed podjęciem próby konwersji. Aby uzyskać więcej informacji, zobacz Przygotowywanie danych do konwersji.

  1. Dodaj moduł Convert to SVMLight (Konwertuj na SVMLight ) do eksperymentu. Ten moduł można znaleźć w kategorii Konwersje formatu danych w programie Machine Learning Studio (wersja klasyczna).

  2. Połączenie zestaw danych lub dane wyjściowe, które chcesz przekonwertować na format SVMLight.

  3. Uruchom eksperyment.

  4. Kliknij prawym przyciskiem myszy dane wyjściowe modułu, wybierz pozycję Pobierz i zapisz dane w pliku lokalnym w celu ich modyfikacji lub ponownego użycia w programie, który obsługuje technologię SVMLight.

Przygotowywanie danych do konwersji

Aby zilustrować proces konwersji, w tym przykładzie użyto zestawu danych Donora w programie Studio (wersja klasyczna).

Ten przykładowy zestaw danych ma następujący format w postaci tabelarowej.

Recency (Recency) Częstotliwość Pieniężnej Godzina Klasa
2 50 12500 98 1
0 13 3250 28 1
1 1 4000 35 1
2 20 5000 45 1
1 24 6000 77 0

Pamiętaj, że kolumna etykiety o nazwie [Class] w tym zestawie danych jest ostatnią kolumną w tabeli. Jeśli jednak konwertujemy zestaw danych do formatu SVMLight bez uprzedniego wskazania, która kolumna zawiera etykietę, pierwsza kolumna [Recency] jest używana jako etykieta, a kolumna [Class] jest traktowana jako funkcja:

2 1:50 2:12500 3:98 4:1
0 1:13 2:3250 3:28 4:1
1 1:16 2:4000 3:35 4:1

Aby upewnić się, że etykiety są prawidłowo generowane na początku wiersza dla każdego przypadku, należy dodać dwa wystąpienia modułu Edytowanie metadanych .

  1. W pierwszym wystąpieniu opcji Edytuj metadane wybierz kolumnę etykiety ([Klasa]), a w polu Pola wybierz pozycję Etykieta.

  2. W drugim wystąpieniu funkcji Edytuj metadane zaznacz wszystkie kolumny funkcji, które są potrzebne w przekonwertowanych plikach ([Recency], [Frequency], [Monetary], [Time]) i w polu Pola wybierz pozycję Funkcje.

Po prawidłowym zidentyfikowaniu kolumn możesz uruchomić moduł Convert to SVMLight (Konwertuj na SVMLight ). Po konwersji kilka pierwszych wierszy zestawu danych Donora chłoniaka ma teraz ten format:

  • Wartość etykiety poprzedza każdy wpis, a po nim wartości [Recency], [Frequency], [Monetary] i [Time], identyfikowane jako cechy odpowiednio 1, 2, 3 i 4.

  • Wartość etykiety 0 w piątym wierszu została przekonwertowana na -1. Wynika to z tego, że program SVMLight obsługuje tylko binarne etykiety klasyfikacji.

1 1:2 2:50 3:12500 4:98
1 1:0 2:13 3:3250 4:28
1 1:1 2:16 3:4000 4:35
1 1:2 2:20 3:5000 4:45
-1 1:1 2:24 3:6000 4:77

Nie można bezpośrednio używać tych danych tekstowych dla modeli w usłudze Azure ML ani wizualizować ich. Można jednak pobrać go do udziału lokalnego.

Gdy plik jest otwarty, zalecamy dodanie wiersza komentarza poprzedzonego #przez element , aby można było dodać notatki dotyczące źródła lub oryginalnych nazw kolumn funkcji.

Aby użyć pliku SVMLight w programie Vowpal Wabbit i wprowadzić dodatkowe modyfikacje zgodnie z opisem w tym miejscu: Konwersja na format Vowpal Wabbit. Gdy plik będzie gotowy, przekaż go do usługi Azure Blob Storage i wywołaj bezpośrednio z jednego z modułów Vowpal Wabbit.

Przykłady

Nie ma żadnych przykładów w Azure AI Gallery: które są specyficzne dla tego formatu.

Uwagi techniczne

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

Porady dotyczące użycia

Pliki wykonywalne udostępniane w SVM-Light wymagają zarówno pliku przykładowego , jak i pliku modelu. Jednak ten moduł tworzy tylko przykładowy plik. Plik modelu należy utworzyć oddzielnie przy użyciu bibliotek SVMLight.

Przykładowy plik to plik zawierający przykłady trenowania.

  • Opcjonalny nagłówek

    Pierwsze wiersze mogą zawierać komentarze. Komentarze muszą być poprzedzone znakiem numeru (#).

    Dane wyjściowe formatu pliku przez konwersję na format SVMLight nie tworzą nagłówków. Możesz edytować plik, aby dodać komentarze, listę nazw kolumn itd.

  • Dane szkoleniowe

    Każdy przypadek znajduje się w własnym wierszu. Przypadek składa się z wartości docelowej, po której następuje seria indeksów i skojarzonych wartości cech.

    Wartość odpowiedzi musi być 1 lub -1 dla klasyfikacji lub liczba regresji.

    Wartość docelowa i każda z par index-value są oddzielone spacją.

Przykład danych szkoleniowych

W poniższej tabeli pokazano, jak wartości w kolumnach zestawu danych irysów Two-Class są konwertowane na reprezentację, w której każda kolumna jest reprezentowana przez indeks, po której następuje dwukropek, a następnie wartość w tej kolumnie:

Zestaw danych irysów Zestaw danych irysów przekonwertowany na format SVMLight
1 6.3 2.9 5.6 1.8 1 1:6.3 2:2.9 3:5.6 4:1.8
0 4.8 3.4 1.6 0.2 -1 1:4.8 2:3.4 3:1.6 4:0.2
1 7.2 3.2 6 1.8 1 1:7.2 2:3.2 3:6 4:1.8

Należy pamiętać, że nazwy kolumn funkcji zostaną utracone podczas konwersji.

Przygotowywanie pliku Vowpal Wabbit przy użyciu programu SVMLight

Format SVMLight jest podobny do formatu używanego przez Vowpal Wabbit. Aby zmienić plik wyjściowy SVMLight na format nadający się do trenowania modelu Vowpal Wabbit, wystarczy dodać symbol potoku między etykietą i listą funkcji.

Na przykład porównaj następujące wiersze danych wejściowych:

Format Vowpal Wabbit, w tym opcjonalny komentarz

# features are [Recency], [Frequency], [Monetary], [Time]
1 | 1:2 2:50 3:12500 4:98
1 | 1:0 2:13 3:3250 4:28

Format SVMLight, w tym opcjonalny komentarz

# features are [Recency], [Frequency], [Monetary], [Time]
1 1:2 2:50 3:12500 4:98
1 1:0 2:13 3:3250 4:28

Oczekiwane dane wejściowe

Nazwa Typ Opis
Zestaw danych Tabela danych Wejściowy zestaw danych

Dane wyjściowe

Nazwa Typ Opis
Zestaw danych wyników SvmLight Wyjściowy zestaw danych

Zobacz też

Konwersje formatu danych
Lista modułów A–Z