PyTorch contro Tensorflow desideroso


14

Google ha recentemente incluso nelle build notturne di tensorflow la sua modalità Eager , un'API imperativa per accedere alle capacità di calcolo di tensorflow.

In che modo il desideroso di Tensorflow si confronta con PyTorch?

Alcuni aspetti che potrebbero influenzare il confronto potrebbero essere:

  • Vantaggi e svantaggi di desideroso a causa della sua eredità del grafico statico (ad esempio nomi nei nodi).
  • Limitazioni intrinseche di una delle due che l'altra non ha.
  • Aree in cui una di esse necessita di miglioramenti (ad es. Completezza delle funzionalità, ottimizzazioni computazionali).
  • Differenze ecosistemiche (ad es. Tensorboard?).

Nota 1: Yaroslav Bulatov ha scritto una recensione sulle belle caratteristiche di eager .

Nota2: in una domanda precedente , ho richiesto un confronto tra PyTorch e Tensorflow Fold. A quel tempo, mi è sembrato che Fold potesse affrontare PyTorch grazie al supporto di Google. Ho sbagliato molto: alla fine, Google stesso ha abbandonato Fold a favore di Eager. Capisco che ciò era dovuto a limiti intrinseci nella normale API di tensorflow che hanno portato Fold a non essere molto amichevole, il che ha limitato la sua adozione.


2
Per me, la differenza più grande è che la base di codici Pytorch è molto più facile da leggere e capire. Se ho qualche domanda specifica sull'implementazione, è facile immergersi subito. Non ho assolutamente idea di cosa stia facendo Tensorflow.
Louis T,

Risposte:


1

Uno dei vantaggi chiave che uso molto è che è compatibile con pdb, quindi

pdb.set_trace # To the rescue

Permette l'uso di strutture dati python

e usiamo il flusso di controllo pitonico invece di usare i principali equivalenti tf.

Inoltre permette di evitare problemi di metaprogrammazione come il "caricamento lento" e l'aggiunta di un sacco di operazioni al mio grafico. Somiglianze anche autograd


1
Ti riferisci a pytorch o tf eager? Mi sembra che le tue dichiarazioni si applichino ad entrambi ...
nca il
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.