Składnik regresji sieci neuronowej
Tworzy model regresji przy użyciu algorytmu sieci neuronowej
Kategoria: Uczenie maszynowe / Inicjowanie modelu / Regresja
Omówienie składnika
W tym artykule opisano składnik w projektancie usługi Azure Machine Learning.
Użyj tego składnika, aby utworzyć model regresji przy użyciu konfigurowalnego algorytmu sieci neuronowej.
Chociaż sieci neuronowe są powszechnie znane z uczenia głębokiego i modelowania złożonych problemów, takich jak rozpoznawanie obrazów, są łatwo dostosowane do problemów regresji. Każda klasa modeli statystycznych może być określana jako sieć neuronowa, jeśli używają one adaptacyjnych wag i mogą przybliżone funkcje nieliniowe ich danych wejściowych. W związku z tym regresja sieci neuronowej jest odpowiednia do problemów, w których bardziej tradycyjny model regresji nie może pasować do rozwiązania.
Regresja sieci neuronowej jest metodą uczenia nadzorowanego i dlatego wymaga oznakowanego zestawu danych, który zawiera kolumnę etykiety. Ponieważ model regresji przewiduje wartość liczbową, kolumna etykiety musi być typem danych liczbowych.
Model można wytrenować, podając model i oznakowany zestaw danych jako dane wejściowe do trenowania modelu. Wytrenowany model może następnie służyć do przewidywania wartości dla nowych przykładów wejściowych.
Konfigurowanie regresji sieci neuronowej
Sieci neuronowe mogą być szeroko dostosowane. W tej sekcji opisano sposób tworzenia modelu przy użyciu dwóch metod:
Tworzenie modelu sieci neuronowej przy użyciu architektury domyślnej
Jeśli zaakceptujesz domyślną architekturę sieci neuronowej, użyj okienka Właściwości , aby ustawić parametry kontrolujące zachowanie sieci neuronowej, takie jak liczba węzłów w warstwie ukrytej, szybkość nauki i normalizacja.
Zacznij tutaj, jeśli dopiero zaczynasz korzystać z sieci neuronowych. Składnik obsługuje wiele dostosowań, a także dostrajanie modelu bez dogłębnej wiedzy na temat sieci neuronowych.
Definiowanie architektury niestandardowej dla sieci neuronowej
Użyj tej opcji, jeśli chcesz dodać dodatkowe ukryte warstwy lub w pełni dostosować architekturę sieci, jej połączenia i funkcje aktywacji.
Ta opcja jest najlepsza, jeśli znasz już sieci neuronowe. Język Net# służy do definiowania architektury sieci.
Tworzenie modelu sieci neuronowej przy użyciu architektury domyślnej
Dodaj składnik Regresja sieci neuronowej do potoku w projektancie. Ten składnik można znaleźć w obszarze Uczenie maszynowe, Inicjowanie w kategorii Regresja .
Określ, jak chcesz wytrenować model, ustawiając opcję Utwórz tryb trenera .
Pojedynczy parametr: wybierz tę opcję, jeśli już wiesz, jak skonfigurować model.
Zakres parametrów: wybierz tę opcję, jeśli nie masz pewności co do najlepszych parametrów i chcesz uruchomić zamiatanie parametrów. Wybierz zakres wartości do iterowania, a hiperparametry modelu dostrajania iterują we wszystkich możliwych kombinacjach podanych ustawień w celu określenia hiperparametrów, które generują optymalne wyniki.
W obszarze Specyfikacja warstwy ukrytej wybierz pozycję W pełni połączony przypadek. Ta opcja tworzy model przy użyciu domyślnej architektury sieci neuronowej, która dla modelu regresji sieci neuronowej ma następujące atrybuty:
- Sieć ma dokładnie jedną ukrytą warstwę.
- Warstwa wyjściowa jest w pełni połączona z warstwą ukrytą, a warstwa ukryta jest w pełni połączona z warstwą wejściową.
- Liczbę węzłów w warstwie ukrytej można ustawić przez użytkownika (wartość domyślna to 100).
Ponieważ liczba węzłów w warstwie wejściowej jest określana przez liczbę funkcji w danych treningowych, w modelu regresji może istnieć tylko jeden węzeł w warstwie wyjściowej.
W polu Liczba ukrytych węzłów wpisz liczbę ukrytych węzłów. Wartość domyślna to jedna ukryta warstwa z 100 węzłami. (Ta opcja nie jest dostępna, jeśli zdefiniujesz architekturę niestandardową przy użyciu języka Net#).
W polu Wskaźnik nauki wpisz wartość, która definiuje krok wykonywany w każdej iteracji przed korektą. Większa wartość współczynnika uczenia może spowodować szybsze zbieżność modelu, ale może przesłonić lokalne minima.
W polu Liczba iteracji uczenia określ maksymalną liczbę procesów algorytmu w przypadku przypadków trenowania.
W polu Momentum wpisz wartość, która ma być stosowana podczas uczenia się jako waga w węzłach z poprzednich iteracji.
Wybierz opcję Shuffle examples (Przykłady shuffle), aby zmienić kolejność przypadków między iteracjami. Jeśli usuniesz zaznaczenie tej opcji, przypadki są przetwarzane dokładnie w tej samej kolejności przy każdym uruchomieniu potoku.
W przypadku inicjatora liczb losowych można opcjonalnie wpisać wartość, która ma być używana jako inicjator. Określenie wartości inicjatora jest przydatne, gdy chcesz zapewnić powtarzalność między przebiegami tego samego potoku.
Połącz zestaw danych trenowania i wytrenuj model:
Jeśli ustawisz opcję Utwórz tryb trenera na Pojedynczy parametr, połącz oznakowany zestaw danych i składnik Train Model (Trenowanie modelu).
Jeśli ustawisz opcję Utwórz tryb trenera na Wartość Zakres parametrów, połącz oznakowany zestaw danych i wytrenuj model przy użyciu hiperparametrów dostrajania modelu.
Uwaga
Jeśli przekażesz zakres parametrów do trenowania modelu, zostanie użyta tylko wartość domyślna na liście pojedynczych parametrów.
Jeśli przekażesz pojedynczy zestaw wartości parametrów do składnika hiperparametrów modelu dostrajania , gdy oczekuje ona zakresu ustawień dla każdego parametru, zignoruje wartości i używa wartości domyślnych dla ucznia.
Jeśli wybierzesz opcję Zakres parametrów i wprowadzisz pojedynczą wartość dla dowolnego parametru, określona pojedyncza wartość jest używana w trakcie zamiatania, nawet jeśli inne parametry zmienią się w zakresie wartości.
Prześlij potok.
Wyniki
Po zakończeniu szkolenia:
- Aby zapisać migawkę wytrenowanego modelu, wybierz kartę Dane wyjściowe w prawym panelu składnika Trenowanie modelu . Wybierz ikonę Zarejestruj zestaw danych , aby zapisać model jako składnik wielokrotnego użytku.
Następne kroki
Zobacz zestaw składników dostępnych dla usługi Azure Machine Learning.