Chcę, aby Sphinx4 był deterministyczny. Za każdym razem, gdy podaję te same pliki wejściowe w testach jednostkowych, chcę, aby rozpoznawał te same słowa (z tymi samymi znacznikami czasu). Próbowałem przeglądać kod źródłowy i naprawiać wszystkie połączenia new Random()
, ale to nie wydaje się być wystarczające. Czego mi brakuje? Jakie mogą być inne źródła przypadkowości?
Odpowiedzi:
0 dla odpowiedzi № 1Rozmawiałem z twórcami Sphinxa. Po pierwsze, ważne jest użycie SimpleAcousticScorer zamiast ThreadedAcousticScorer. Może nawet SimpleActiveListFactory zamiast PartitionActiveListFactory. Ale nawet to nie wystarczyło. Ale jeśli zrobię postęp, opublikuję tutaj.