Udostępnij za pośrednictwem


Samouczek: Projektant — trenowanie modelu regresji bez kodu

Trenowanie modelu regresji liniowej, który przewiduje ceny samochodów przy użyciu projektanta usługi Azure Machine Learning. Ten samouczek jest pierwszą częścią dwuczęściowej serii.

W tym samouczku użyto projektanta usługi Azure Machine Learning, aby uzyskać więcej informacji, zobacz Co to jest projektant usługi Azure Machine Learning?

Uwaga

Projektant obsługuje dwa typy składników, klasyczne wstępnie utworzone składniki (wersja 1) i składniki niestandardowe (wersja 2). Te dwa typy składników nie są zgodne.

Klasyczne wstępnie utworzone składniki zapewniają wstępnie utworzone składniki na potrzeby przetwarzania danych i tradycyjnych zadań uczenia maszynowego, takich jak regresja i klasyfikacja. Ten typ składników nadal jest obsługiwany, ale nie będą do niego dodawane żadne nowego składniki.

Składniki niestandardowe umożliwiają opakowywanie własnego kodu jako składnika. Obsługuje udostępnianie składników między obszarami roboczymi i bezproblemowe tworzenie w interfejsach programu Studio, interfejsu wiersza polecenia w wersji 2 i zestawu SDK w wersji 2.

W przypadku nowych projektów zdecydowanie zalecamy użycie składnika niestandardowego, który jest zgodny z językiem AzureML w wersji 2 i będzie nadal otrzymywać nowe aktualizacje.

Ten artykuł dotyczy klasycznych wstępnie utworzonych składników i nie jest zgodny z interfejsem wiersza polecenia w wersji 2 i zestawem SDK w wersji 2.

W części jednego z samouczków dowiesz się, jak wykonywać następujące działania:

  • Tworzenie nowego potoku.
  • Import data.
  • Przygotuj dane.
  • Trenowanie modelu uczenia maszynowego.
  • Ocena modelu uczenia maszynowego.

W drugiej części samouczka wdrożysz model jako punkt końcowy wnioskowania w czasie rzeczywistym, aby przewidzieć cenę dowolnego samochodu na podstawie przesłanych specyfikacji technicznych.

Uwaga

Ukończona wersja tego samouczka jest dostępna jako przykładowy potok.

Aby go znaleźć, przejdź do projektanta w obszarze roboczym. W sekcji Nowy potok wybierz pozycję Przykład 1 — Regresja: Przewidywanie cen samochodów (podstawowa).

Ważne

Jeśli nie widzisz elementów graficznych wymienionych w tym dokumencie, takich jak przyciski w studio lub projektancie, być może nie masz odpowiedniego poziomu uprawnień do obszaru roboczego. Skontaktuj się z administratorem subskrypcji platformy Azure, aby sprawdzić, czy udzielono Ci poprawnego poziomu dostępu. Aby uzyskać więcej informacji, zobacz Zarządzanie użytkownikami i rolami.

Tworzenie nowego potoku

Potoki usługi Azure Machine Learning organizują wiele kroków uczenia maszynowego i przetwarzania danych w jeden zasób. Potoki umożliwiają organizowanie i ponowne używanie złożonych przepływów pracy uczenia maszynowego oraz zarządzanie nimi w projektach i użytkownikach.

Aby utworzyć potok usługi Azure Machine Learning, potrzebny jest obszar roboczy usługi Azure Machine Learning. W tej sekcji dowiesz się, jak utworzyć oba te zasoby.

Utwórz nowy obszar roboczy

Do korzystania z projektanta potrzebujesz obszaru roboczego usługi Azure Machine Learning. Obszar roboczy to zasób najwyższego poziomu dla usługi Azure Machine Learning, który zapewnia scentralizowane miejsce do pracy ze wszystkimi artefaktami tworzonymi w usłudze Azure Machine Learning. Aby uzyskać instrukcje dotyczące tworzenia obszaru roboczego, zobacz Tworzenie zasobów obszaru roboczego.

Uwaga

Jeśli obszar roboczy korzysta z sieci wirtualnej, należy użyć dodatkowych kroków konfiguracji, aby użyć projektanta. Aby uzyskać więcej informacji, zobacz Korzystanie z usługi Azure Machine Learning Studio w sieci wirtualnej platformy Azure

Tworzenie potoku

Uwaga

Projektant obsługuje dwa typy składników, klasyczne wstępnie utworzone składniki i składniki niestandardowe. Te dwa typy składników nie są zgodne.

Klasyczne wstępnie utworzone składniki udostępniają wstępnie utworzone składniki na potrzeby przetwarzania danych i tradycyjnych zadań uczenia maszynowego, takich jak regresja i klasyfikacja. Ten typ składników nadal jest obsługiwany, ale nie będą do niego dodawane żadne nowego składniki.

Składniki niestandardowe umożliwiają podanie własnego kodu jako składnika. Obsługują udostępnianie między obszarami roboczymi i bezproblemowe tworzenie w programie Studio, interfejsie wiersza polecenia i interfejsach zestawu SDK.

Ten artykuł dotyczy klasycznych wstępnie utworzonych składników.

  1. Zaloguj się do ml.azure.com i wybierz obszar roboczy, z którym chcesz pracować.

  2. Wybieranie projektanta —> klasyczny wstępnie utworzony

    Zrzut ekranu przedstawiający obszar roboczy wizualizacji przedstawiający sposób uzyskiwania dostępu do projektanta.

  3. Wybierz pozycję Utwórz nowy potok przy użyciu wstępnie utworzonych składników klasycznych.

  4. Kliknij ikonę ołówka obok automatycznie wygenerowanej nazwy wersji roboczej potoku, zmień jej nazwę na Automobile price prediction (Przewidywanie cen samochodów). Nazwa nie musi być unikatowa.

Zrzut ekranu przedstawiający ikonę ołówka, aby zmienić nazwę wersji roboczej potoku.

Importuj dane

Istnieje kilka przykładowych zestawów danych zawartych w projektancie, z którym możesz eksperymentować. Na potrzeby tego samouczka użyj danych cen samochodów (Nieprzetworzone).

  1. Po lewej stronie kanwy potoku znajduje się paleta zestawów danych i składników. Wybierz pozycję Składnik —> przykładowe dane.

  2. Wybierz zestaw danych Dane cen samochodów (nieprzetworzone ) i przeciągnij go na kanwę.

    Gif przeciągania danych cen samochodów na kanwę.

Wizualizacja danych

Możesz zwizualizować dane, aby zrozumieć używany zestaw danych.

  1. Kliknij prawym przyciskiem myszy dane cen samochodów (nieprzetworzone) i wybierz pozycję Dane wersji zapoznawczej.

  2. Wybierz różne kolumny w oknie danych, aby wyświetlić informacje o poszczególnych kolumnach.

    Każdy wiersz reprezentuje samochód, a zmienne skojarzone z poszczególnymi samochodami są wyświetlane jako kolumny. W tym zestawie danych znajduje się 205 wierszy i 26 kolumn.

Przygotowywanie danych

Zestawy danych zwykle wymagają przetwarzania wstępnego przed analizą. Być może podczas inspekcji zestawu danych zauważysz brakujące wartości. Te brakujące wartości muszą zostać wyczyszczone, aby model mógł prawidłowo analizować dane.

Usuwanie kolumny

Podczas trenowania modelu musisz zrobić coś na temat brakujących danych. W tym zestawie danych brakuje kolumny normalized-losses (znormalizowane straty), więc całkowicie wykluczysz tę kolumnę z modelu.

  1. W palecie zestawów danych i składników po lewej stronie kanwy kliknij pozycję Składnik i wyszukaj składnik Select Columns in Dataset (Wybieranie kolumn w zestawie danych).

  2. Przeciągnij składnik Select Columns in Dataset (Wybieranie kolumn w zestawie danych ) na kanwę. Upuść składnik poniżej składnika zestawu danych.

  3. Połącz zestaw danych Automobile price data (Raw) ze składnikiem Select Columns in Dataset (Wybieranie kolumn w zestawie danych). Przeciągnij z portu wyjściowego zestawu danych, który jest małym okręgiem w dolnej części zestawu danych na kanwie, do portu wejściowego select columns in Dataset (Wybieranie kolumn w zestawie danych), który jest małym okręgiem u góry składnika.

    Napiwek

    Przepływ danych jest tworzony za pośrednictwem potoku podczas łączenia portu wyjściowego jednego składnika z portem wejściowym innego.

    Zrzut ekranu przedstawiający łączenie składnika Danych cen samochodów w celu wybrania kolumn w składniku zestawu danych.

  4. Wybierz składnik Select Columns in Dataset (Wybieranie kolumn w zestawie danych).

  5. Kliknij ikonę strzałki w obszarze Ustawienia po prawej stronie kanwy, aby otworzyć okienko szczegółów składnika. Alternatywnie możesz kliknąć dwukrotnie składnik Select Columns in Dataset (Wybieranie kolumn w zestawie danych ), aby otworzyć okienko szczegółów.

  6. Wybierz pozycję Edytuj kolumnę po prawej stronie okienka.

  7. Rozwiń listę rozwijaną Nazwy kolumn obok pozycji Dołącz, a następnie wybierz pozycję Wszystkie kolumny.

  8. Wybierz pozycję , + aby dodać nową regułę.

  9. Z menu rozwijanych wybierz pozycję Wyklucz i Nazwy kolumn.

  10. Wprowadź znormalizowane straty w polu tekstowym.

  11. W prawym dolnym rogu wybierz pozycję Zapisz , aby zamknąć selektor kolumn.

    Zrzut ekranu przedstawiający wybieranie kolumn z wyróżnionym wykluczeniem.

  12. W okienku Szczegóły składnika Select Columns in Dataset (Wybieranie kolumn w zestawie danych) rozwiń węzeł Informacje o węźle.

  13. Zaznacz pole tekstowe Komentarz i wprowadź wartość Wyklucz znormalizowane straty.

    Komentarze będą wyświetlane na grafie, aby ułatwić organizowanie potoku.

Czyszczenie brakujących danych

Zestaw danych nadal zawiera brakujące wartości po usunięciu kolumny normalized-losses (znormalizowane straty). Pozostałe brakujące dane można usunąć przy użyciu składnika Clean Missing Data (Czyszczenie brakujących danych ).

Napiwek

Czyszczenie brakujących wartości z danych wejściowych jest wymaganiem wstępnym w przypadku używania większości składników w projektancie.

  1. W obszarze zestawów danych i palety składników po lewej stronie kanwy kliknij pozycję Składnik i wyszukaj składnik Clean Missing Data (Czyszczenie brakujących danych).

  2. Przeciągnij składnik Clean Missing Data (Czyszczenie brakujących danych) na kanwę potoku. Połącz go ze składnikiem Select Columns in Dataset (Wybieranie kolumn w zestawie danych ).

  3. Wybierz składnik Clean Missing Data (Czyszczenie brakujących danych).

  4. Kliknij ikonę strzałki w obszarze Ustawienia po prawej stronie kanwy, aby otworzyć okienko szczegółów składnika. Alternatywnie możesz kliknąć dwukrotnie składnik Clean Missing Data (Czyszczenie brakujących danych ), aby otworzyć okienko szczegółów.

  5. Wybierz pozycję Edytuj kolumnę po prawej stronie okienka.

  6. W wyświetlonym oknie Kolumny do oczyszczenia rozwiń menu rozwijane obok pozycji Uwzględnij. Wybierz, Wszystkie kolumny

  7. Wybierz pozycję Zapisz

  8. W okienku Szczegóły składnika Clean Missing Data (Czyszczenie brakujących danych ) w obszarze Tryb czyszczenia wybierz pozycję Usuń cały wiersz.

  9. W okienku Szczegóły składnika Clean Missing Data (Czyszczenie brakujących danych) rozwiń węzeł Informacje o węźle.

  10. Zaznacz pole tekstowe Komentarz i wprowadź usuń brakujące wiersze wartości.

    Potok powinien teraz wyglądać mniej więcej tak:

    Zrzut ekranu przedstawiający dane cen samochodów połączone z wybieraniem kolumn w składniku zestawu danych, który jest połączony z czyszczeniem brakujących danych.

Trenowanie modelu uczenia maszynowego

Teraz, gdy masz już składniki do przetwarzania danych, możesz skonfigurować składniki szkoleniowe.

Ponieważ chcesz przewidzieć cenę, czyli liczbę, możesz użyć algorytmu regresji. W tym przykładzie użyto modelu regresji liniowej.

Dzielenie danych

Dzielenie danych to typowe zadanie w uczeniu maszynowym. Dane zostaną podzielone na dwa oddzielne zestawy danych. Jeden zestaw danych trenuje model, a drugi sprawdzi, jak dobrze działa model.

  1. W zestawie danych i palecie składników po lewej stronie kanwy kliknij pozycję Składnik i wyszukaj składnik Split Data (Podział danych).

  2. Przeciągnij składnik Split Data (Podział danych) na kanwę potoku.

  3. Połącz lewy port składnika Clean Missing Data (Czyszczenie brakujących danych) ze składnikiem Split Data (Podział danych).

    Ważne

    Upewnij się, że lewy port wyjściowy funkcji Clean Missing Data (Czyszczenie brakujących danych ) łączy się z podziałem danych. Lewy port zawiera oczyszczone dane. Właściwy port zawiera odrzucone dane.

  4. Wybierz składnik Split Data (Podział danych).

  5. Kliknij ikonę strzałki w obszarze Ustawienia po prawej stronie kanwy, aby otworzyć okienko szczegółów składnika. Alternatywnie możesz kliknąć dwukrotnie składnik Split Data (Podział danych ), aby otworzyć okienko szczegółów.

  6. W okienku Szczegóły podziału danych ustaw pozycję Ułamek wierszy w pierwszym wyjściowym zestawie danych na wartość 0,7.

    Ta opcja dzieli 70 procent danych w celu wytrenowania modelu i 30 procent na potrzeby jego testowania. Zestaw danych 70 procent będzie dostępny za pośrednictwem lewego portu wyjściowego. Pozostałe dane są dostępne za pośrednictwem odpowiedniego portu wyjściowego.

  7. W okienku Szczegóły podziału danych rozwiń węzeł Informacje o węźle.

  8. Zaznacz pole tekstowe Komentarz i wprowadź podział zestawu danych na zestaw treningowy (0.7) i zestaw testów (0.3).

Szkolenie modelu

Trenowanie modelu przez nadanie mu zestawu danych zawierającego cenę. Algorytm tworzy model, który wyjaśnia relację między funkcjami a ceną prezentowaną przez dane szkoleniowe.

  1. W zestawach danych i palecie składników po lewej stronie kanwy kliknij pozycję Składnik i wyszukaj składnik Regresja liniowa.

  2. Przeciągnij składnik Regresja liniowa do kanwy potoku.

  3. W zestawie danych i palecie składników po lewej stronie kanwy kliknij pozycję Składnik i wyszukaj składnik Train Model (Trenowanie modelu).

  4. Przeciągnij składnik Train Model (Trenowanie modelu) do kanwy potoku.

  5. Połącz dane wyjściowe składnika Regresja liniowa z lewym wejściem składnika Train Model (Trenowanie modelu).

  6. Połącz dane wyjściowe danych szkoleniowych (lewy port) składnika Split Data (Podział danych) z prawym wejściem składnika Train Model (Trenowanie modelu).

    Ważne

    Upewnij się, że lewy port wyjściowy funkcji Split Data (Podział danych ) łączy się z usługą Train Model (Trenowanie modelu). Lewy port zawiera zestaw trenowania. Odpowiedni port zawiera zestaw testów.

    Zrzut ekranu przedstawiający regresję liniową łączy się z lewym portem train model (Trenowanie modelu) i Split Data (Podział danych) łączy się z prawym portem train model (Trenowanie modelu).

  7. Wybierz składnik Train Model (Trenowanie modelu ).

  8. Kliknij ikonę strzałki w obszarze Ustawienia po prawej stronie kanwy, aby otworzyć okienko szczegółów składnika. Alternatywnie możesz kliknąć dwukrotnie składnik Train Model (Trenowanie modelu ), aby otworzyć okienko szczegółów.

  9. Wybierz pozycję Edytuj kolumnę po prawej stronie okienka.

  10. W wyświetlonym oknie kolumny Etykieta rozwiń menu rozwijane i wybierz pozycję Nazwy kolumn.

  11. W polu tekstowym wprowadź cenę , aby określić wartość, którą będzie przewidywać model.

    Ważne

    Upewnij się, że dokładnie wprowadzisz nazwę kolumny. Nie wielką literą ceny.

    Potok powinien wyglądać następująco:

    Zrzut ekranu przedstawiający poprawną konfigurację potoku po dodaniu składnika Train Model (Trenowanie modelu).

Dodawanie składnika Score Model (Generowanie wyników dla modelu)

Po wytrenowania modelu przy użyciu 70 procent danych możesz użyć go do oceny pozostałych 30 procent, aby zobaczyć, jak dobrze działa model.

  1. W obszarze zestawów danych i palety składników po lewej stronie kanwy kliknij pozycję Składnik i wyszukaj składnik Score Model (Generowanie wyników dla modelu).

  2. Przeciągnij składnik Score Model (Generowanie wyników dla modelu) na kanwę potoku.

  3. Połącz dane wyjściowe składnika Train Model ( Trenowanie modelu) z lewym portem wejściowym score model ( Generowanie wyników dla modelu). Połącz dane wyjściowe danych testowych (prawy port) składnika Split Data (Podział danych) z odpowiednim portem wejściowym score model (Generowanie wyników modelu).

Dodawanie składnika Evaluate Model

Użyj składnika Evaluate Model (Ocena modelu), aby ocenić, jak dobrze model ocenia zestaw danych testowych.

  1. W obszarze zestawów danych i palety składników po lewej stronie kanwy kliknij pozycję Składnik i wyszukaj składnik Evaluate Model (Oceń model).

  2. Przeciągnij składnik Evaluate Model (Ocena modelu) do kanwy potoku.

  3. Połącz dane wyjściowe składnika Score Model ( Generowanie wyników dla modelu ) z lewym wejściem elementu Evaluate Model (Ocena modelu).

    Końcowy potok powinien wyglądać mniej więcej tak:

    Zrzut ekranu przedstawiający poprawną konfigurację potoku.

Przesyłanie potoku

  1. Wybierz pozycję Konfiguruj i prześlij w prawym górnym rogu, aby przesłać potok.

    Zrzut ekranu przedstawiający przycisk konfiguruj i prześlij.

  2. Następnie zobaczysz kreatora krok po kroku, postępuj zgodnie z instrukcjami kreatora, aby przesłać zadanie potoku.

    Zrzut ekranu przedstawiający kreatora przesyłania.

W kroku Podstawy można skonfigurować eksperyment, nazwę wyświetlaną zadania, opis zadania itp.

W kroku Dane wejściowe i wyjściowe można przypisać wartość do poziomów danych wejściowych/wyjściowych . W tym przykładzie będzie on pusty, ponieważ nie podwyższyliśmy poziomu danych wejściowych/wyjściowych do poziomu potoku.

W obszarze Ustawienia środowiska uruchomieniowego można skonfigurować domyślny magazyn danych i domyślne zasoby obliczeniowe do potoku. Jest to domyślny magazyn danych/obliczenia dla wszystkich składników potoku. Jeśli jednak jawnie ustawisz inne zasoby obliczeniowe lub magazyn danych dla składnika, system uwzględnia ustawienie poziomu składnika. W przeciwnym razie używa wartości domyślnej.

Krok Przeglądanie i przesyłanie to ostatni krok umożliwiający przejrzenie wszystkich ustawień przed przesłaniem. Kreator zapamięta ostatnią konfigurację, jeśli kiedykolwiek prześlesz potok.

Po przesłaniu zadania potoku w górnej części zostanie wyświetlony komunikat z linkiem do szczegółów zadania. Możesz wybrać ten link, aby przejrzeć szczegóły zadania.

Zrzut ekranu przedstawiający komunikat przesyłania.

Wyświetlanie ocenianych etykiet

Na stronie szczegółów zadania możesz sprawdzić stan zadania potoku, wyniki i dzienniki.

Zrzut ekranu przedstawiający stronę szczegółów zadania potoku.

Po zakończeniu zadania można wyświetlić wyniki zadania potoku. Najpierw przyjrzyj się przewidywaniom wygenerowanymi przez model regresji.

  1. Kliknij prawym przyciskiem myszy składnik Score Model (Generowanie wyników dla modelu), a następnie wybierz pozycję Preview data Scored dataset (Podgląd danych>scored dataset), aby wyświetlić jego dane wyjściowe.

    W tym miejscu można zobaczyć przewidywane ceny i rzeczywiste ceny z danych testowych.

    Zrzut ekranu przedstawiający wizualizację wyjściową z wyróżnioną kolumną Scored Label (Etykieta wyników).

Ocena modeli

Użyj modelu Evaluate Model (Ocena modelu), aby zobaczyć, jak dobrze wytrenowany model został wykonany na zestawie danych testowych.

  1. Kliknij prawym przyciskiem myszy składnik Evaluate Model (Ocena modelu) i wybierz pozycję Preview data Evaluation results (Podgląd wyników oceny danych>), aby wyświetlić jego dane wyjściowe.

Dla modelu są wyświetlane następujące statystyki:

  • Średni błąd bezwzględny (MAE): średnia błędów bezwzględnych. Błąd to różnica między przewidywaną wartością a rzeczywistą wartością.
  • Pierwiastek błędu średniokwadratowego (RMSE, Root Mean Squared Error): pierwiastek kwadratowy ze średniej kwadratów błędów prognoz dla zestawu danych testowych.
  • Względny błąd absolutny: iloraz średniej błędów absolutnych i bezwzględnej wartości różnicy między wartościami rzeczywistymi a średnią wszystkich wartości rzeczywistych.
  • Błąd względny średniokwadratowy: iloraz średniej kwadratów błędów i kwadratu różnicy między wartościami rzeczywistymi a średnią wszystkich wartości rzeczywistych.
  • Współczynnik determinacji: znany również jako wartość kwadratowa języka R, ta metryka statystyczna wskazuje, jak dobrze model pasuje do danych.

W przypadku wszystkich powyższych statystyk mniejsze wartości oznaczają lepszą jakość modelu. Mniejsza wartość wskazuje, że przewidywania są bliżej rzeczywistych wartości. Dla współczynnika determinacji im bliżej jest jedna (1,0), tym lepiej przewidywanie.

Czyszczenie zasobów

Pomiń tę sekcję, jeśli chcesz kontynuować z częścią 2 samouczka, wdrażanie modeli.

Ważne

Możesz użyć zasobów utworzonych jako wymagania wstępne dla innych samouczków usługi Azure Machine Learning i artykułów z instrukcjami.

Usuń wszystko

Jeśli nie planujesz używać utworzonych elementów, usuń całą grupę zasobów, aby nie ponosić żadnych opłat.

  1. W witrynie Azure Portal wybierz pozycję Grupy zasobów po lewej stronie okna.

    Usuwanie grupy zasobów w witrynie Azure Portal

  2. Na liście wybierz utworzoną grupę zasobów.

  3. Wybierz pozycję Usuń grupę zasobów.

Usunięcie grupy zasobów powoduje również usunięcie wszystkich zasobów utworzonych w projektancie.

Usuwanie pojedynczych zasobów

W projektancie, w którym utworzono eksperyment, usuń poszczególne zasoby, wybierając je, a następnie wybierając przycisk Usuń .

Docelowy obiekt obliczeniowy utworzony w tym miejscu automatycznie skaluje się do zera węzłów, gdy nie jest używany. Ta akcja jest podejmowana w celu zminimalizowania opłat. Jeśli chcesz usunąć docelowy obiekt obliczeniowy, wykonaj następujące kroki:

Usuwanie zasobów

Zestawy danych można wyrejestrować z obszaru roboczego, wybierając każdy zestaw danych i wybierając pozycję Wyrejestruj.

Wyrejestrowywanie zestawu danych

Aby usunąć zestaw danych, przejdź do konta magazynu przy użyciu witryny Azure Portal lub Eksplorator usługi Azure Storage i ręcznie usuń te zasoby.

Następne kroki

W drugiej części dowiesz się, jak wdrożyć model jako punkt końcowy w czasie rzeczywistym.