CNTK ocena przy użyciu cntk.exe
Ocenianie modelu przy użyciu cntk.exe
Ocena modelu przy użyciu pliku wykonywalnego CNTK, czyli cntk.exe, jest podobna do procesu trenowania. Ale zamiast używać polecenia "train", polecenie "eval" jest umieszczane w pliku konfiguracji.
Korzystanie z pliku wykonywalnego CNTK do oceny ma następujące zalety:
Możliwości procesora CPU/procesora GPU
Podobnie jak trenowanie, CNTK może korzystać z procesora GPU podczas oceny. Aby uzyskać więcej informacji, zobacz stronę Przegląd pliku konfiguracji .
Czytelnicy (i ich przekształcenia)
Podobnie jak w przypadku trenowania modelu, wtyczki czytnika (np. ImageReader) mogą wykonywać pewne przekształcenia danych na danych wejściowych przed ich przekazywaniem do sieci podczas trenowania. Te przekształcenia nie są częścią CNTK (na se), ale czytelników. Aby podawać te same przekształcone dane podczas oceny, przekształcenia muszą wystąpić przed karmieniem. Podczas oceniania przy użyciu pliku wykonywalnego CNTK można użyć tego samego czytnika (używanego podczas oceny), a zatem można zastosować tę samą transformację. Jak omówimy w dalszej części tej strony, w przypadku korzystania z podejścia programowego te przekształcenia będą musiały zostać wykonane programowo poza aparatem oceny przed przesłaniem danych do oceny (zakładając, że model został wytrenowany przy użyciu przekształconych danych).
Dostosowywanie modelu
W przypadku używania CNTK do oceny istnieje możliwość zmodyfikowania układu modelu przy użyciu języka BrainScript. Umożliwia to dodatkowe możliwości, takie jak uwidacznianie ukrytych warstw do oceny. Aby uzyskać więcej informacji, zapoznaj się ze stroną BrainScript.
Użycie pliku wykonywalnego CNTK do oceny ma następujące wady:
Czas uruchamiania procesu
Plik wykonywalny CNTK (z natury) jest uruchamiany jako proces, a tym samym może trochę potrwać. W przypadku usług, w których wiele żądań musi być dynamicznie przetwarzanych, lepszym rozwiązaniem jest użycie biblioteki ewaluacyjnej w usłudze.
Dane wejściowe/wyjściowe oparte na plikach
Plik wykonywalny CNTK odczytuje dane wejściowe z plików i zapisuje dane wyjściowe w pliku. W przypadku usług działających w chmurze może to spowodować pewne problemy z wydajnością.
Uwaga: Jeśli przejdziesz do trasy oceny modelu CNTK z plikiem wykonywalnym CNTK, upewnij się, że parametry są odpowiednie do oceny. W szczególności określenie odpowiedniego rozmiaru miniBatchSize. Aby uzyskać więcej informacji, zobacz stronę Rozwiązywanie problemów CNTK.