ONNX-Modelle im maschinellen Lernen

ONNX (Open Neural Network Exchange) ist ein Open-Source-Format für Modelle des maschinellen Lernens. Dieses Projekt hat mehrere große Vorteile:

  • ONNX wird von großen Unternehmen wie Microsoft, Facebook, Amazon und anderen Partnern unterstützt.
  • Sein offenes Format ermöglicht Formatkonvertierungen zwischen verschiedenen Machine-Learning-Toolkits, während die ONNXMLTools von Microsoft die Konvertierung von Modellen in das ONNX-Format ermöglichen.
  • MQL5 bietet automatische Datentypkonvertierung für Modelleingaben und -ausgaben, wenn der übergebene Parametertyp nicht mit dem Modell übereinstimmt.
  • ONNX-Modelle können mit verschiedenen maschinellen Lerntools erstellt werden. Sie werden derzeit in Caffe2, Microsoft Cognitive Toolkit, MXNet, PyTorch und OpenCV unterstützt. Schnittstellen für andere gängige Frameworks und Bibliotheken sind ebenfalls verfügbar.
  • Mit der MQL5-Sprache können Sie ein ONNX-Modell in einer Handelsstrategie implementieren und es zusammen mit allen Vorteilen der MetaTrader 5-Plattform für effiziente Abläufe in der verwenden Finanzmärkte.
  • Bevor Sie ein Modell für den Live-Handel optimieren, können Sie das Modellverhalten anhand historischer Daten testen im Strategietester, ohne Tools von Drittanbietern zu verwenden.

MQL5 bietet die folgenden Funktionen für die Arbeit mit ONNX:

Funktion

Aktion

OnnxCreate

Erstellen einer ONNX-Sitzung, laden eines Modells aus einer *.onnx-Datei

OnnxCreateFromBuffer

Erstellen einer ONNX-Sitzung, laden eines Modells aus einem Datenarray

OnnxRelease

Schließen Sie eine ONNX-Sitzung

OnnxRun

Ausführen eines ONNX-Modells

OnnxGetInputCount

Ermitteln der Anzahl der Eingänge eines ONNX-Modells

OnnxGetOutputCount

Ermitteln der Anzahl der Ausgänge eines ONNX-Modells

OnnxGetInputName

Abrufen des Namens des Eingangs eines Modells anhand des Index

OnnxGetOutputName

Abrufen des Namens des Ausgangs eines Modells anhand des Index

OnnxGetInputTypeInfo

Abrufen der Beschreibung des Eingangstyps aus dem Modell

OnnxGetOutputTypeInfo

Abrufen der Beschreibung des Ausgangstyps aus dem Modell

OnnxSetInputShape

Festlegen der Form der Eingangsdaten eines Modells anhand des Index

OnnxSetOutputShape

Festlegen der Form der Ausgangsdaten eines Modells anhand des Index