Neuropod vereinheitlicht Modelle der wichtigsten Machine-Learning-Frameworks
Die von Uber veröffentlichte Bibliothek soll es Forschern erleichtern, mit unterschiedlichen Frameworks erstellte Modelle einheitlich nutzen zu können.
- Alexander Neumann
Das Engineering-Team des Fahrdienstleisters Uber hat mit Neuropod eine Machine-Learning-Bibliothek als Open-Source-Software veröffentlicht, die eine einheitliche Schnittstelle für unterschiedliche Frameworks bieten soll, um Deep-Learning-Modelle in den Programmiersprachen C++ und Python zu entwickeln, zu trainieren und auszuführen. Derzeit unterstützt die Bibliothek die in der Machine-Learning-Community bewährten Frameworks TensorFlow, PyTorch, TorchScript und Keras.
Als Vorteil machen die Neuropod-Entwickler aus, dass beispielsweise die Ausführung eines TensorFlow-Modells genauso aussehen soll wie die eines PyTorch-Modells. So ist der gesamte Inferenzcode Framework-agnostisch, und es lässt sich demnach wohl einfach zwischen den Machine-Learning- beziehungsweise Deep-Learning-Frameworks wechseln. Außerdem soll sich so die steile Lernkurve bei der Arbeit mit der C++ libtorch API und der C/C++ TF API vermeiden lassen. Schließlich kann man wohl jedes Neuropod-Modell sowohl in C++ als auch in Python ausführen, und das betrifft anscheinend auch PyTorch-Modelle, die nicht in TorchScript konvertiert wurden.
Uber hat Neuropod bislang intern genutzt, und zwar um Hunderte von Modellen zum Ermitteln belastbarer Aussagen und die Vorhersage der geschätzten Ankunftszeit für Fahrten zu trainieren. Ein weiteres Einsatzszenario war wohl die Entwicklung von Objekterkennungsmodellen für selbstfahrende Fahrzeuge.
Weitere Informationen zu Neuropod finden sich auf der Website des Projekts sowie auf der GitHub-Ressource, wo der Code des Projekts unter der Apache-2.0-Lizenz zu finden ist. (ane)