Makine Öğreniminde ONNX Modelleri

Açık sinir ağı santrali (Open Neural Network Exchange, ONNX), makine öğrenimi modelleri için açık kaynaklı bir formattır. Bu projenin birkaç önemli avantajı vardır:

  • ONNX, Microsoft, Facebook ve Amazon gibi büyük şirketler tarafından desteklenmektedir.
  • Açık format olması, farklı makine öğrenimi araç takımları arasında model dönüştürmeyi mümkün kılarken, Microsoft'un ONNXMLTools aracı da modellerin ONNX formatına dönüştürülmesine olanak sağlar.
  • MQL5, iletilen parametre türü modelle eşleşmediğinde, model girdileri ve çıktıları için otomatik veri türü dönüştürme sağlar.
  • ONNX modelleri, çeşitli makine öğrenimi araçları kullanılarak oluşturulabilir. Şu anda Caffe2, Microsoft Cognitive Toolkit, MXNet, PyTorch ve OpenCV'de desteklenmektedirler. Diğer popüler çerçeveler ve kütüphaneler için de arayüzler mevcuttur.
  • MQL5 dili, ONNX modelini ticaret stratejinize uygulamanıza ve böylece onu finansal piyasalarda etkin bir şekilde ticaret işlemleri gerçekleştirmeyi sağlayan MetaTrader 5 platformunun tüm avantajlarıyla birlikte kullanmanıza olanak tanır.
  • Modeli gerçek ticarette kullanmadan önce, model davranışını üçüncü taraf araçlar olmadan doğrudan strateji sınayıcıda geçmiş veriler üzerinde test edebilirsiniz.

MQL5, ONNX ile çalışmak için aşağıdaki fonksiyonları sunmaktadır:

Fonksiyon

Eylem

OnnxCreate

*.onnx dosyasından model yükleyerek ONNX oturumu oluşturur

OnnxCreateFromBuffer

Veri dizisinden model yükleyerek ONNX oturumu oluşturur

OnnxRelease

ONNX oturumunu kapatır

OnnxRun

ONNX modelini çalıştırır

OnnxGetInputCount

ONNX modelindeki girdi sayısını alır

OnnxGetOutputCount

ONNX modelindeki çıktı sayısını alır

OnnxGetInputName

İndekse göre modelin girdisinin adını alır

OnnxGetOutputName

İndekse göre modelin çıktısının adını alır

OnnxGetInputTypeInfo

Modelden girdi türünün tanımını alır

OnnxGetOutputTypeInfo

Modelden çıktı türünün tanımını alır

OnnxSetInputShape

Modelin girdi verilerinin şeklini indekse göre ayarlar

OnnxSetOutputShape

Modelin çıktı verilerinin şeklini indekse göre ayarlar