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?

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

  • Utwórz nowy potok.
  • Importowanie danych.
  • Przygotowywanie danych.
  • 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: Prognoza 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 odpowiedniego 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, zarządzanie i ponowne używanie złożonych przepływów pracy uczenia maszynowego między projektami i użytkownikami.

Aby utworzyć potok usługi Azure Machine Learning, potrzebujesz obszaru roboczego usługi Azure Machine Learning. W tej sekcji dowiesz się, jak utworzyć oba te zasoby.

Tworzenie nowego obszaru roboczego

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 w obszarze roboczym jest używana sieć wirtualna, należy użyć dodatkowych kroków konfiguracji do korzystania z projektanta. Aby uzyskać więcej informacji, zobacz Używanie 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 zapewniają wstępnie utworzone składniki na potrzeby przetwarzania danych i tradycyjnych zadań uczenia maszynowego, takich jak regresja i klasyfikacja. Ten typ składnika nadal jest obsługiwany, ale nie będzie miał żadnych nowych składników dodanych.

Składniki niestandardowe umożliwiają podanie własnego kodu jako składnika. Obsługuje udostępnianie między obszarami roboczymi i bezproblemowe tworzenie w interfejsach Studio, interfejsu wiersza polecenia i 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. Wybierz projektanta —>wstępnie skompilowany klasyczny

    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 Przewidywanie cen samochodów. Nazwa nie musi być unikatowa.

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

Ustawianie domyślnego docelowego obiektu obliczeniowego

Zadania potoku w docelowym obiekcie obliczeniowym, który jest zasobem obliczeniowym dołączonym do obszaru roboczego. Po utworzeniu docelowego obiektu obliczeniowego można go ponownie użyć w przyszłych zadaniach.

Ważne

Dołączone zasoby obliczeniowe nie są obsługiwane, zamiast tego należy używać wystąpień obliczeniowych ani klastrów .

Można ustawić domyślny docelowy obiekt obliczeniowy dla całego potoku, co spowoduje, że każdy składnik będzie domyślnie używać tego samego docelowego obiektu obliczeniowego. Można jednak określić docelowe obiekty obliczeniowe na podstawie poszczególnych modułów.

  1. Wybierz pozycję Zrzut ekranu przedstawiający ikonę koła zębatego, która znajduje się w interfejsie użytkownika.Ustawienia po prawej stronie kanwy, aby otworzyć okienko Ustawienia.

  2. Wybierz pozycję Utwórz wystąpienie obliczeniowe usługi Azure ML.

    Jeśli masz już dostępny cel obliczeniowy, możesz wybrać go z listy rozwijanej Wybierz wystąpienie obliczeniowe usługi Azure ML , aby uruchomić ten potok.

  3. Wprowadź nazwę zasobu obliczeniowego.

  4. Wybierz przycisk Utwórz.

    Uwaga

    Utworzenie zasobu obliczeniowego trwa około pięciu minut. Po utworzeniu zasobu można go ponownie użyć i pominąć ten czas oczekiwania dla przyszłych zadań.

    Zasób obliczeniowy automatycznie skaluje się do zera węzłów, gdy jest bezczynny, aby zaoszczędzić koszt. Gdy używasz go ponownie po opóźnieniu, może wystąpić około pięciu minut czasu oczekiwania podczas skalowania w górę.

Importowanie danych

Istnieje kilka przykładowych zestawów danych dostępnych w projektancie do eksperymentowania. 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 ceny samochodów na kanwę.

Wizualizacja danych

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

  1. Kliknij prawym przyciskiem myszy dane cen samochodów (nieprzetworzone) i wybierz pozycję Dane podglądu.

  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ą wstępnego przetwarzania przed analizą. Podczas inspekcji zestawu danych może wystąpić kilka brakujących wartości. Te brakujące wartości muszą być oczyszczone, aby model mógł prawidłowo analizować dane.

Usuwanie kolumny

Podczas trenowania modelu musisz wykonać 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 obszarze zestawów danych i palety 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 Dane cen samochodów (nieprzetworzone) z 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 u dołu zestawu danych na kanwie, do portu wejściowego Wybierz kolumny w zestawie danych, który jest małym okręgiem u góry składnika.

    Porada

    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 element , + aby dodać nową regułę.

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

  10. Wprowadź wartość normalized-losses (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ółów 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ź pozycję 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 ).

Porada

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

  1. W zestawach danych i palecie 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ółów składnika Clean Missing Data (Czyszczenie brakujących danych ) w obszarze Tryb czyszczenia wybierz pozycję Usuń cały wiersz.

  9. W okienku Szczegółów 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 trenowania.

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 wytrenuje model, a drugi sprawdzi, 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 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 zestawie danych wyjściowych na wartość 0,7.

    Ta opcja dzieli 70 procent danych w celu wytrenowania modelu i 30 procent na potrzeby testowania. 70- procentowy zestaw danych będzie dostępny za pośrednictwem lewego portu wyjściowego. Pozostałe dane będą 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ź podziel zestaw danych na zestaw treningowy (0.7) i zestaw testowy (0.3).

Trenowanie 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 treningowe.

  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 na kanwę potoku.

  3. W obszarze zestawów danych i palety 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 ) na kanwę 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 treningowych (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 modułem Train Model (Trenowanie modelu). Lewy port zawiera zestaw treningowy. Prawy 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ź price (cena ), aby określić wartość przewidywaną przez model.

    Ważne

    Upewnij się, że nazwa kolumny została wprowadzona dokładnie. 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 wyszkoleniu modelu przy użyciu 70 procent danych można go użyć do oceny pozostałych 30 procent, aby zobaczyć, jak dobrze działa model.

  1. W zestawach danych i palecie 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 modelu ) na kanwę potoku.

  3. Połącz dane wyjściowe składnika Train Model (Trenowanie modelu ) z lewym portem wejściowym modułu 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 modułu Score Model (Generowanie wyników modelu).

Dodawanie składnika Evaluate Model

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

  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 (Ocena modelu).

  2. Przeciągnij składnik Evaluate Model (Ocena modelu ) na kanwę 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).

    Ostateczny potok powinien wyglądać mniej więcej tak:

    Zrzut ekranu przedstawiający poprawną konfigurację potoku.

Przesyłanie potoku

Teraz, gdy potok jest skonfigurowany, możesz przesłać zadanie potoku w celu wytrenowania modelu uczenia maszynowego. W dowolnym momencie można przesłać prawidłowe zadanie potoku, które może służyć do przeglądania zmian potoku podczas opracowywania.

  1. W górnej części kanwy wybierz pozycję Prześlij.

  2. W oknie dialogowym Konfigurowanie zadania potoku wybierz pozycję Utwórz nowy.

    Uwaga

    Eksperymenty grupują podobne zadania potoku. W przypadku wielokrotnego uruchamiania potoku możesz wybrać ten sam eksperyment dla kolejnych zadań.

    1. W polu Nazwa nowego eksperymentu wprowadź tutorial-CarPrices.

    2. Wybierz pozycję Prześlij.

    3. W lewym okienku kanwy zostanie wyświetlona lista przesyłania, a w prawym górnym rogu strony pojawi się powiadomienie. Możesz wybrać link Szczegóły zadania , aby przejść do strony szczegółów zadania na potrzeby debugowania.

      Zrzut ekranu przedstawiający listę przesłanych zadań z powiadomieniem o powodzeniu.

    Jeśli jest to pierwsze zadanie, ukończenie działania potoku może potrwać do 20 minut. Domyślne ustawienia obliczeniowe mają minimalny rozmiar węzła wynoszący 0, co oznacza, że projektant musi przydzielić zasoby po bezczynności. Powtarzające się zadania potoku będą trwać krócej, ponieważ zasoby obliczeniowe są już przydzielane. Ponadto projektant używa buforowanych wyników dla każdego składnika w celu zwiększenia wydajności.

Wyświetlanie etykiet ocenianych

Na stronie szczegółów zadania można 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 generowanym przez model regresji.

  1. Kliknij prawym przyciskiem myszy składnik Score Model (Generowanie wyników modelu) i wybierz pozycję Preview dataScored dataset (Generowanie wyników dla modelu>), 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 (Ocena etykiety).

Ocenianie modeli

Użyj modelu evaluate, 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 dataEvaluation 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ą.
  • Błąd średniokwadratowy (RMSE) : pierwiastek kwadratowy średniej kwadratu błędów przewidywania w zestawie 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 są przewidywania.

Czyszczenie zasobów

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

Ważne

Utworzone zasoby możesz wykorzystać na potrzeby wymagań wstępnych innych samouczków i artykułów dotyczących usługi Azure Machine Learning.

Usuń wszystko

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

  1. W 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ń .

Utworzony tutaj obiekt docelowy obliczeniowy automatycznie skaluje automatycznie 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ę Wyrejestrowywanie.

Wyrejestrowywanie zestawu danych

Aby usunąć zestaw danych, przejdź do konta magazynu przy użyciu 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.