2016-03-21 13 views

Antwort

4

hatte ich viel Erfahrung sowohl mit mxnet und Theano (via Lasagne und keras)

Benchmarking ist immer voreingenommen, also werde ich das nicht kommentieren, außer zu beachten, dass alle Frameworks sehr schnell sind. Hier sind einige Dinge, die Sie sich entscheiden, sollte helfen:

  1. Theano im Vergleich zu mxnet ist wie Montage zu Python verglichen. Theano verfügt über Low-Level-Primitive, um maschinelle Lernmodelle zu erstellen, und definiert selbst keine Layer oder Optimierer, und Sie würden es normalerweise mit einer Deep-Learning-Bibliothek wie Lasagne oder Keras verwenden, während mxnet eine höhere Ebene ist. Ein Preisvergleich wäre also mxnet vs Keras, nicht mxnet vs Theano.
  2. mxnet ist eine neuere Bibliothek, und bestimmte Dinge darin sind noch nicht so poliert, und es gibt weit weniger Ressourcen online als für Theano.
  3. Theano (und daher Lasagne und Keras) kompilieren Modelle, wenn sie sie zum ersten Mal in C++ und Cuda ausführen, die sehr langsam ist. Bei einem sehr komplexen Modell, z. B. einem nicht abgerollten LSTM, kann die Kompilierung einige Minuten dauern. Es ist normalerweise sehr wenig im Vergleich zu der Zeit, die es dauert, bis das Modell trainiert (Stunden bis Wochen), aber es ist sehr ärgerlich, wenn Sie prototypieren.

Insgesamt, wenn Sie zwischen diesen beiden Frameworks wählen, würde ich Theano + Keras für die rezidivierende außer alles vorschlagen oder sehr tiefe Netze, da sonst die Kompilation in Theano werden Sie töten.

Schauen Sie auch in TensorFlow. Es ist (subjektiv) langsamer als mxnet, ist aber reifer und hat mehr Ressourcen online.

+1

Ich hörte, TensorFlow ist langsam und hat begrenzte Funktionen –

+1

@quantCode, meine eigenen Experimente zeigen auch, dass TensorFlow langsamer ist. Das Bit "hat eingeschränkte Funktionen" ist nicht korrekt. Es ist unwahrscheinlich, dass Sie etwas für Ihre Modelle benötigen, das TensorFlow nicht anbietet. – Ishamael

+0

Mit 1 nicht einverstanden. 'Mxnet' hat Unterstützung für symbolisches Programmierparadigma, das ähnlich wie' Theano' ist. – Kh40tiK