Odpowiedz już dziś na lokalne wydarzenie TensorFlow Everywhere!
Ta strona została przetłumaczona przez Cloud Translation API.
Switch to English

Konfiguracja analizy modelu Tensorflow

Konfiguracja

TFMA przechowuje swoją konfigurację w proto że jest seryjny do JSON. Protokół ten konsoliduje konfigurację wymaganą dla danych wejściowych, danych wyjściowych, specyfikacji modelu, specyfikacji metrycznych i specyfikacji wycinania.

Wszystkie potoki TFMA są powiązane z modelem bazowym (podstawowym) i zero lub więcej modeli kandydujących (drugorzędnych). Model bazowy i kandydujący są definiowane przez użytkownika na początku potoku i każdy z nich wymaga unikalnej nazwy. Poniżej znajdują się przykłady typowych ustawień konfiguracyjnych, z których może korzystać użytkownik:

  • Ocena pojedynczego modelu:
    • N / A (tj. Brak nazwy)
  • Ocena oparta na walidacji:
    • baseline
    • candidate
  • Ocena porównania modeli:
    • my_model_a
    • my_model_b

Specyfikacje modelu

tfma.ModelSpec modelu są typu tfma.ModelSpec i służą do definiowania lokalizacji modelu, a także innych parametrów specyficznych dla modelu. Na przykład poniżej przedstawiono typowe ustawienia, które należy skonfigurować przed uruchomieniem oceny:

  • name - nazwa modelu (jeśli użyto wiele modeli)
  • signature_name - nazwa użytego do podpisu przepowiedni (domyślnie serving_default ). Użyj eval jeśli używasz EvalSavedModel.
  • label_key - nazwa funkcji powiązanej z etykietą.
  • example_weight_key - nazwa funkcji przypisana do przykładowej wagi.

Dane techniczne

tfma.MetricsSpec są typu tfma.MetricsSpec i służą do konfigurowania metryk, które zostaną obliczone w ramach oceny. Różne problemy związane z uczeniem maszynowym wykorzystują różne typy metryk, a TFMA oferuje wiele opcji konfigurowania i dostosowywania obliczanych metryk. Ponieważ metryki są bardzo dużą częścią TFMA, są szczegółowo omówione oddzielnie w metrykach .

Specyfikacje krojenia

tfma.SlicingSpec są typu tfma.SlicingSpec i służą do konfigurowania kryteriów wycinków, które będą używane podczas oceny. Cięcie można wykonać za pomocą feature_keys feature_values , wartości_funkcji lub obu. Oto kilka przykładów specyfikacji krojenia:

  • {}
    • Wycinek zawierający dane ogólne.
  • { feature_keys: ["country"] }
    • Plasterki dla wszystkich wartości w „kraju” funkcji. Na przykład możemy otrzymać wycinki „country: us”, „country: jp” itd.
  • { feature_values: [{key: "country", value: "us"}] }
    • Kawałek składający się z wyrażenia „kraj: nas”.
  • { feature_keys: ["country", "city"] }
    • Wycinki dla wszystkich wartości w „kraju” funkcji skrzyżowane ze wszystkimi wartościami w „mieście” funkcji (uwaga: może to być kosztowne).
  • { feature_keys: ["country"] feature_values: [{key: "age", value: "20"}] }
    • Wycinki dla wszystkich wartości w „kraju” funkcji skrzyżowane z wartością „wiek: 20”

Należy pamiętać, że klucze funkcji mogą być albo przekształconymi elementami, albo surowymi elementami wejściowymi. Aby tfma.SlicingSpec więcej informacji, zobacz tfma.SlicingSpec .

EvalSharedModel

Oprócz ustawień konfiguracyjnych TFMA wymaga również utworzenia instancji tfma.EvalSharedModel celu współużytkowania modelu między wieloma wątkami w tym samym procesie. Wystąpienie modelu współużytkowanego zawiera informacje o typie modelu (keras itp.) Oraz sposobie ładowania i konfigurowania modelu z jego zapisanej lokalizacji na dysku (np. Tagi itp.). tfma.default_eval_shared_model API tfma.default_eval_shared_model może służyć do tworzenia domyślnej instancji z podaniem ścieżki i zestawu tagów.