Keras obsługuje zarówno TensorFlow i Theano jako backend: jakie są plusy / minusy wybierając jedną versus inne, oprócz faktu, że obecnie nie wszystkie operacje są realizowane przy backend TensorFlow?
Keras obsługuje zarówno TensorFlow i Theano jako backend: jakie są plusy / minusy wybierając jedną versus inne, oprócz faktu, że obecnie nie wszystkie operacje są realizowane przy backend TensorFlow?
Odpowiedzi:
Gdybym miał taką opcję, wybrałbym Theano .
Powody:
Jednak TensorFlow obsługuje zarówno interfejsy cpp, jak i Python, co może być zaletą w społeczności cpp. Ale jeśli chodzi o ML i produkty do nauki danych, Python był standardem, więc nie byłby to ogromna przewaga IMO.
Ale wdrożenie modelu i łatwość użycia w produkcji to ta, w której TensorFlow ma prawdziwą przewagę. Ponieważ używa Eigen do ulepszonego i łatwego wdrożenia, byłby ulubiony dla inżynierów. Jeśli będzie kompatybilny z Windows, zobaczysz ogromną migrację. Ale przyzwyczaiłem się do narzutów w Pythonie, mogę poczekać, aż będzie bardziej dopracowany.
Na razie Theano. Mogę z radością czekać, aż TensorFlow dogoni.
Jeśli wdrażasz sieci neuronowe o prostej i średniej złożoności, skorzystaj z Tensorflow. Jeśli głębokie uczenie, to Theano.
W dniu 28.09.2017 ogłoszono, że Theano zostanie wycofane:
Od https://groups.google.com/forum/#!topic/theano-users/7Poq8BZutbY (Yoshua Bengio):
Po prawie dziesięciu latach rozwoju z przykrością ogłaszamy, że zakończymy rozwój Theano po wydaniu 1.0, który ma się ukazać w ciągu najbliższych kilku tygodni. Będziemy kontynuować minimalną konserwację, aby działała przez rok, ale przestaniemy aktywnie wdrażać nowe funkcje. Theano będzie nadal dostępne, zgodnie z naszym zaangażowaniem w oprogramowanie typu open source, ale MILA nie zobowiązuje się do poświęcania czasu na konserwację lub wsparcie po tym czasie.
Więc TensorFlow jest lepszą opcją.