ONNX(Open Neural Network Exchange)는 머신 러닝 모델을 나타내기 위해 구축된 개방형 형식입니다. 이 기사에서는 금융 시계열을 예측하기 위해 CNN-LSTM 모델을 만드는 방법에 대해 살펴보겠습니다. 또한 MQL5 Expert Advisor에서 생성된 ONNX 모델을 사용하는 방법도 보여드리겠습니다.
ONNX 모델이 EA의 리소스로 사용되는 경우에는 모델을 변경할 때마다 EA를 다시 컴파일해야 합니다.
모든 모델이 입력 및/또는 출력 텐서의 크기를 완전히 정의한 것은 아닙니다. 이는 일반적으로 패키지 크기를 담당하는 첫 번째 차원입니다. 모델을 실행하기 전에OnnxSetInputShape및OnnxSetOutputShape함수를 사용하여 크기를 명시적으로 지정해야 합니다. 모델의 입력 데이터는 모델을 훈련할 때와 동일한 방식으로 준비되어야 합니다.
입력 및 출력 데이터의 경우모델에서 사용되는것과 동일한 유형의 배열, 행렬 및/또는 벡터를 사용하는 것이 좋습니다. 이 경우 모델을 실행할 때 데이터를 변환할 필요가 없습니다. 원하는 형태로 데이터를 표현할 수 없는 경우자동으로 데이터가 변환됩니다.
새로운 기고글 MQL5에서 ONNX 모델을 사용하는 방법 가 게재되었습니다:
ONNX(Open Neural Network Exchange)는 머신 러닝 모델을 나타내기 위해 구축된 개방형 형식입니다. 이 기사에서는 금융 시계열을 예측하기 위해 CNN-LSTM 모델을 만드는 방법에 대해 살펴보겠습니다. 또한 MQL5 Expert Advisor에서 생성된 ONNX 모델을 사용하는 방법도 보여드리겠습니다.
모델을 생성하는 방법에는 두 가지가 있습니다. OnnxCreate를 사용하여 onnx 파일에서 모델을 생성하거나OnnxCreateFromBuffer를사용하여 데이터 배열에서 모델을 생성할 수 있습니다.
ONNX 모델이 EA의 리소스로 사용되는 경우에는 모델을 변경할 때마다 EA를 다시 컴파일해야 합니다.
모든 모델이 입력 및/또는 출력 텐서의 크기를 완전히 정의한 것은 아닙니다. 이는 일반적으로 패키지 크기를 담당하는 첫 번째 차원입니다. 모델을 실행하기 전에OnnxSetInputShape및OnnxSetOutputShape함수를 사용하여 크기를 명시적으로 지정해야 합니다. 모델의 입력 데이터는 모델을 훈련할 때와 동일한 방식으로 준비되어야 합니다.
입력 및 출력 데이터의 경우모델에서 사용되는것과 동일한 유형의 배열, 행렬 및/또는 벡터를 사용하는 것이 좋습니다. 이 경우 모델을 실행할 때 데이터를 변환할 필요가 없습니다. 원하는 형태로 데이터를 표현할 수 없는 경우자동으로 데이터가 변환됩니다.
작성자: MetaQuotes