PyTorch vs. Tensorflow Fold


26

Sia PyTorch che Tensorflow Fold sono framework di apprendimento profondo intesi a gestire situazioni in cui i dati di input hanno lunghezza o dimensioni non uniformi (ovvero situazioni in cui i grafici dinamici sono utili o necessari).

Mi piacerebbe sapere come si confrontano, nel senso di paradigmi su cui si basano (ad esempio il batch dinamico) e le loro implicazioni, cose che non possono / non possono essere implementate in ognuna, debolezze / punti di forza, ecc.

Ho intenzione di utilizzare queste informazioni per sceglierne una per iniziare a esplorare i grafici di calcolo dinamico, ma non ho in mente alcun compito specifico.

Nota 1: anche altri framework di grafici di calcolo dinamico come DyNet o Chainer sono i benvenuti nel confronto, ma mi piacerebbe concentrarmi su PyTorch e Tensorflow Fold perché penso che siano / saranno i più utilizzati.

Nota 2: Ho trovato questo thread di hackernews su PyTorch con alcune informazioni sparse, ma non molto.

Nota 3: un altro thread pertinente di hackernews , su Tensorflow Fold, che contiene alcune informazioni sul loro confronto.

Nota 4: thread Reddit rilevante .

Nota 5: bug rilevante nel github di Tensorflow Fold che identifica una limitazione importante: l'impossibilità di eseguire la ramificazione condizionale durante la valutazione.

Nota 6: discussione sul forum Pytorch sugli input di lunghezza variabile in relazione agli algoritmi utilizzati (ad es. Batch dinamico).


Puoi anche aggiungere questa discussione in corso (a partire dalla stesura di questo commento) dei collaboratori di pytorch al tuo elenco di riferimenti.
GuSuku,

1
Ho trovato questo link molto interessante e si sta confrontando come hai chiesto (sul grafico dinamico e usando DyNet e Chainer) hackernoon.com/…
John Theo,

Risposte:


9

Ci sono un paio di buoni thread su Reddit in questo momento ( qui e qui ).

Non ho usato nessuno di questi framework, ma leggendo e parlando con gli utenti, raccolgo che il supporto per i grafici dinamici in PyTorch è un "principio di progettazione top down", mentre TensorFlow Fold è fissato al framework Tensorflow originale, quindi se stai facendo qualcosa di ragionevolmente complicato con Tensorflow Fold probabilmente finirai per fare molto più hacking che se usi PyTorch .


3
È stata praticamente la mia esperienza con il tentativo di usare Fold con convoluzioni sugli alberi negli ultimi mesi. Non è ancora abbastanza maturo per gestire cose del genere. Suggeriscono "soluzioni alternative" se si esaminano i problemi chiusi sul loro repository. Passare a PyTorch perché Fold è così poco flessibile - gioco di parole inteso.
Soubriquet,
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.