机器学习中的ONNX模型

ONNX (Open Neural Network Exchange)是机器学习模型的开源格式。这个项目有几个主要优势:

  • ONNX得到Microsoft、Facebook、Amazon等大公司的支持。
  • 它的开放格式支持不同机器学习工具包之间的格式转换,而Microsoft(微软) ONNXMLTools允许将模型转换为ONNX格式。
  • 如果传递的参数类型与模型不匹配,MQL5会为模型输入和输出提供自动数据类型转换
  • ONNX模型可以使用各种机器学习工具创建。目前在Caffe2、Microsoft Cognitive Toolkit、MXNet、PyTorch和OpenCV中得到支持。还可以使用其他流行框架和程序库的接口。
  • 借助MQL5语言,您可以在交易策略中实施ONNX模型,并将其与MetaTrader 5平台的所有优势结合使用,从而在金融市场中实现高效操作。
  • 在为实时交易调整模型之前,您可以在策略测试中根据历史数据测试模型行为,而无需使用第三方工具。

MQL5为使用ONNX提供以下函数:

函数

操作

OnnxCreate

创建ONNX会话,从 *.onnx文件中加载模型

OnnxCreateFromBuffer

创建ONNX会话,从数据数组加载模型

OnnxRelease

关闭ONNX会话

OnnxRun

运行ONNX模型

OnnxGetInputCount

获取ONNX模型中的输入数

OnnxGetOutputCount

获取ONNX模型中的输出数

OnnxGetInputName

通过索引获取模型输入名称

OnnxGetOutputName

通过索引获取模型输出名称

OnnxGetInputTypeInfo

从模型获取输入类型的描述

OnnxGetOutputTypeInfo

从模型获取输出类型的描述

OnnxSetInputShape

通过索引设置模型输入数据的形状

OnnxSetOutputShape

通过索引设置模型输出数据的形状