Keras supporta sia TensorFlow che Theano come backend: quali sono i pro / contro della scelta l'uno rispetto all'altro, oltre al fatto che attualmente non tutte le operazioni sono implementate con il backend TensorFlow?
Keras supporta sia TensorFlow che Theano come backend: quali sono i pro / contro della scelta l'uno rispetto all'altro, oltre al fatto che attualmente non tutte le operazioni sono implementate con il backend TensorFlow?
Risposte:
Se mi fosse data l'opzione, andrei con Theano .
Motivi:
Tuttavia, TensorFlow supporta entrambe le interfacce cpp e Python che potrebbero essere un vantaggio per la comunità cpp. Ma, quando si tratta di ML e di prodotti per la scienza dei dati, Python è stato lo standard, quindi non sarebbe un enorme vantaggio dell'IMO.
Tuttavia, l'implementazione del modello e la facilità d'uso nella produzione è il punto in cui TensorFlow ha il vero vantaggio. Poiché utilizza Eigen per una migliore e facile implementazione, sarebbe un tesoro per gli ingegneri. Se diventa compatibile con Windows, vedrai una grande migrazione. Ma mi sono abituato al sovraccarico di Python, posso aspettare fino a quando non sarà più lucido.
Quindi, Theano per ora. Posso aspettare felicemente che TensorFlow raggiunga.
Se stai implementando reti neurali di complessità da semplice a media, scegli Tensorflow. Se l'apprendimento profondo, quindi Theano.
È stato annunciato il 28-09-2017 che Theano sarà sospeso:
Da https://groups.google.com/forum/#!topic/theano-users/7Poq8BZutbY (Yoshua Bengio):
Dopo quasi dieci anni di sviluppo, abbiamo il rammarico di annunciare che metteremo fine allo sviluppo di Theano dopo la versione 1.0, che è prevista per le prossime settimane. Continueremo la manutenzione minima per farla funzionare per un anno, ma smetteremo di implementare attivamente nuove funzionalità. Theano continuerà a essere disponibile in seguito, secondo il nostro impegno nei confronti del software open source, ma MILA non si impegna a dedicare tempo alla manutenzione o al supporto dopo tale periodo di tempo.
Quindi TensorFlow è un'opzione migliore.