PyTorch vs. Tensorflow Fold


26

Sowohl PyTorch als auch Tensorflow Fold sind Deep-Learning-Frameworks für Situationen, in denen die Eingabedaten eine ungleichmäßige Länge oder Dimension aufweisen ( dh Situationen, in denen dynamische Diagramme nützlich oder erforderlich sind).

Ich würde gerne wissen, wie sie im Sinne von Paradigmen, auf die sie sich stützen (z. B. dynamisches Batching) und deren Auswirkungen, Dinge, die in jedem einzelnen implementiert werden können / nicht, Schwächen / Stärken usw. vergleichen.

Ich beabsichtige, diese Informationen zu verwenden, um eines davon auszuwählen und damit zu beginnen, dynamische Berechnungsdiagramme zu untersuchen, aber ich habe keine bestimmte Aufgabe im Sinn.

Anmerkung 1: Andere dynamische Berechnungsgraph-Frameworks wie DyNet oder Chainer sind ebenfalls im Vergleich willkommen, aber ich möchte mich auf PyTorch und Tensorflow Fold konzentrieren, da ich denke, dass sie die am häufigsten verwendeten sind / werden.

Hinweis 2: Ich habe diesen Hackernews-Thread auf PyTorch mit einigen spärlichen Informationen gefunden, aber nicht viel.

Hinweis 3: Ein weiterer relevanter Hackernews-Thread zu Tensorflow Fold enthält einige Informationen zum Vergleich.

Hinweis 4: Relevanter Reddit-Thread .

Anmerkung 5: Relevanter Fehler im Tensorflow Fold-Github , der eine wichtige Einschränkung feststellt : Unmöglichkeit, während der Auswertung eine bedingte Verzweigung durchzuführen .

Anmerkung 6: Diskussion im Pytorch-Forum über Eingaben variabler Länge in Bezug auf die verwendeten Algorithmen (z. B. dynamisches Batching).


Sie können diese laufende Diskussion (zum Zeitpunkt des Schreibens dieses Kommentars) von Pytorchs Mitwirkenden auch zu Ihrer Referenzliste hinzufügen.
GuSuku

1
Ich fand diesen Link sehr interessant und es ist zu vergleichen , wie Sie gefragt (über dynamische grafische Darstellung und Verwendung von DYNET und Chainer) hackernoon.com/...
John Theo

Antworten:


9

Im Moment gibt es ein paar gute Themen auf Reddit ( hier und hier ).

Ich habe keines dieser Frameworks verwendet, aber wenn ich herumgelesen und mit Benutzern gesprochen habe, habe ich festgestellt , dass die Unterstützung für dynamische Diagramme in PyTorch ein „Top-Down-Konstruktionsprinzip“ ist, während TensorFlow Fold mit dem ursprünglichen Tensorflow-Framework verschraubt ist Wenn Sie mit Tensorflow Fold etwas ziemlich kompliziertes machen, werden Sie wahrscheinlich viel mehr herumhacken, als wenn Sie PyTorch verwenden .


3
Das war in den letzten Monaten so ziemlich meine Erfahrung mit dem Versuch, Fold mit Windungen über Bäumen zu verwenden. Es ist noch nicht ausgereift genug, um mit solchen Dingen fertig zu werden. Sie schlagen "Work arounds" vor, wenn Sie sich die geschlossenen Probleme auf ihrem Repo ansehen. Wechsel zu PyTorch, weil Fold so unflexibel ist - Wortspiel beabsichtigt.
Soubriquet
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.