跳至内容

ONNX模型

机器学习中的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通过索引设置模型输出数据的形状