Udostępnij za pośrednictwem


Dwuklasowy składnik sieci neuronowej

W tym artykule opisano składnik w projektancie usługi Azure Machine Learning.

Użyj tego składnika, aby utworzyć model sieci neuronowej, który może służyć do przewidywania docelowego, który ma tylko dwie wartości.

Klasyfikacja przy użyciu sieci neuronowych jest metodą uczenia nadzorowanego i dlatego wymaga oznakowanego zestawu danych, który zawiera kolumnę etykiety. Na przykład można użyć tego modelu sieci neuronowej do przewidywania wyników binarnych, takich jak to, czy pacjent ma pewną chorobę, czy też maszyna może zakończyć się niepowodzeniem w określonym przedziale czasu.

Po zdefiniowaniu modelu wytrenuj go, podając otagowany zestaw danych i model jako dane wejściowe do trenowania modelu. Następnie wytrenowany model może służyć do przewidywania wartości dla nowych danych wejściowych.

Więcej informacji o sieciach neuronowych

Sieć neuronowa to zestaw połączonych warstw. Dane wejściowe są pierwszą warstwą i są połączone z warstwą wyjściową przez graf acykliczny składający się z ważonych krawędzi i węzłów.

Między warstwami wejściowymi i wyjściowymi można wstawić wiele ukrytych warstw. Większość zadań predykcyjnych można łatwo wykonać tylko z jedną lub kilkoma ukrytymi warstwami. Jednak ostatnie badania wykazały, że głębokie sieci neuronowe (DNN) z wieloma warstwami mogą być skuteczne w złożonych zadaniach, takich jak rozpoznawanie obrazów lub mowy. Kolejne warstwy służą do modelowania rosnących poziomów głębokości semantycznej.

Relacja między danymi wejściowymi i wyjściowymi jest oparta na trenowaniu sieci neuronowej na danych wejściowych. Kierunek grafu przechodzi z danych wejściowych przez warstwę ukrytą i do warstwy wyjściowej. Wszystkie węzły w warstwie są połączone z ważonymi krawędziami do węzłów w następnej warstwie.

Aby obliczyć dane wyjściowe sieci dla określonego danych wejściowych, wartość jest obliczana w każdym węźle w ukrytych warstwach i w warstwie wyjściowej. Wartość jest ustawiana przez obliczenie ważonej sumy wartości węzłów z poprzedniej warstwy. Funkcja aktywacji jest następnie stosowana do tej ważonej sumy.

Sposób konfigurowania

  1. Dodaj do potoku składnik dwuklasowej sieci neuronowej. Ten składnik można znaleźć w obszarze Uczenie maszynowe, Inicjowanie w kategorii Klasyfikacja .

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

    • Pojedynczy parametr: wybierz tę opcję, jeśli już wiesz, jak skonfigurować model.

    • Zakres parametrów: jeśli nie masz pewności co do najlepszych parametrów, możesz znaleźć optymalne parametry przy użyciu składnika Dostrajanie hiperparametrów modelu. Podajesz pewien zakres wartości, a trener iteruje wiele kombinacji ustawień, aby określić kombinację wartości, które dają najlepszy wynik.

  3. W obszarze Specyfikacja warstwy ukrytej wybierz typ architektury sieci do utworzenia.

    • W pełni połączony przypadek: używa domyślnej architektury sieci neuronowej zdefiniowanej dla dwóch klas sieci neuronowych w następujący sposób:

      • Ma 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ą.

      • Liczba węzłów w warstwie wejściowej jest równa liczbie funkcji w danych treningowych.

      • Liczba węzłów w warstwie ukrytej jest ustawiana przez użytkownika. Wartość domyślna to 100.

      • Liczba węzłów jest równa liczbie klas. W przypadku dwuklasowej sieci neuronowej oznacza to, że wszystkie dane wejściowe muszą mapować na jeden z dwóch węzłów w warstwie wyjściowej.

  4. W obszarze Szybkość nauki zdefiniuj rozmiar kroku wykonywanego 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.

  5. W polu Liczba iteracji szkoleniowych określ maksymalną liczbę przypadków przetwarzania przypadków trenowania przez algorytm.

  6. W polu Początkowa średnica wag uczenia określ wagi węzłów na początku procesu uczenia.

  7. W polu Momentum określ wagę, która ma być stosowana podczas uczenia się do węzłów z poprzednich iteracji

  8. Wybierz opcję Przykłady mieszania, aby przetasować przypadki między iteracjami. Jeśli usuniesz zaznaczenie tej opcji, przypadki są przetwarzane dokładnie w tej samej kolejności przy każdym uruchomieniu potoku.

  9. W polu Inicjator liczby losowej wpisz 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. W przeciwnym razie wartość zegara systemowego jest używana jako inicjator, co może spowodować nieco inne wyniki przy każdym uruchomieniu potoku.

  10. Dodaj oznaczony etykietą zestaw danych do potoku 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.

  11. 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.

  • Aby użyć modelu do oceniania, dodaj składnik Score Model (Generowanie wyników dla modelu ) do potoku.

Następne kroki

Zobacz zestaw składników dostępnych dla usługi Azure Machine Learning.