Udostępnij przez


BrainScript epochSize w CNTK

W przypadku użytkowników języka Python zobacz tutaj.

Liczba próbek etykiet (tensorów wzdłuż osi dynamicznej) w każdej epoki. Element epochSize w CNTK to liczba próbek etykiet, po których podejmowane są określone dodatkowe akcje, w tym

  • zapisanie modelu punktu kontrolnego (trenowanie można uruchomić ponownie tutaj)
  • krzyżowa walidacja
  • kontrola szybkości nauki
  • minibatch-scaling

Należy pamiętać, że definicja liczby próbek etykiet jest podobna do liczby próbek używanych do minibatchSize (minibatch_size_in_samples). Definicja różni epochSize się od definicji minitbatchSize w sensie, który epochSize jest próbkami etykiet , a nie przykładami wejściowymi.

Dlatego w przypadku danych sekwencyjnych próbka jest pojedynczym elementem sekwencji. W związku z tym CNTK epochSizenie odnosi się do wielu sekwencji, ale elementów sekwencji wetykietach sekwencji, które stanowią minibatch.

Równie ważne jest, że jest to próbki etykiet , a nie przykłady wejściowe, a liczba etykiet na sekwencję niekoniecznie jest liczbą próbek wejściowych. Można na przykład mieć jedną etykietę na sekwencję i dla każdej sekwencji mieć wiele próbek (w takim przypadku działa jak liczba sekwencji) i można mieć jedną etykietę na próbkę w sekwencji, w takim przypadku epochSizeepochSize działa dokładnie tak samo minibatchSize jak w przypadku każdej próbki (nie sekwencyjnej) jest liczone.

W przypadku mniejszych rozmiarów zestawów epochSize danych jest często ustawiana wartość równą rozmiarowi zestawu danych. W języku BrainScript można określić wartość 0, aby to określić. W języku Python możesz określić cntk.io.INFINITELY_REPEAT dla tego celu. Tylko w języku Python można ustawić go na cntk.io.FULL_DATA_SWEEP miejsce, w którym przetwarzanie zostanie zatrzymane po jednym przekazaniu całego rozmiaru danych.

W przypadku dużych zestawów danych możesz chcieć pokierować wyborem elementu epochSize, tworząc punkty kontrolne. Jeśli na przykład chcesz stracić co najwyżej 30 minut obliczeń w przypadku awarii zasilania lub awarii sieci, warto utworzyć punkt kontrolny około 30 minut (z którego można wznowić trenowanie). Wybierz epochSize liczbę próbek, które trwają około 30 minut do obliczenia.