ONNX в MQL5 - страница 3

 
Edgar Akhmadeev:

Первое предложение. Для входов и выходов в ИИ-моделях используются разные плавающие и целочисленные значения. И если vector, vectorf, matrix и matrixf в MQL5 имеются, то vectorl (long) отсутствует. А long часто применяется. Может быть, стоит добавить?

Работать с матрицами и векторами оказалось очень удобно. Они полезны и вне МО, как замена массивам.

В работе с моделями требуется использовать двумерный динамический в обоих измерениях массив long. ArrayResize этого не позволяет, второе измерение должно быть фиксированным. Тут бы и пригодился matrixl.

matrixl m;

m.Resize(rows, cols);

Костыли есть, но это костыли.

 

Уточнение.

1. ONNX_LOGLEVEL_* работает в OnnxCreate*, и не работает в OnnxRun, хотя для всех них в документации флаги логов упомянуты.

2. С флагом ONNX_LOGLEVEL_ERROR OnnxCreate* выводит строку "ONNX: CUDA selected", которая точно не является сообщением об ошибке. Я бы выводил только с ONNX_LOGLEVEL_INFO. В крайнем случае - с ONNX_LOGLEVEL_WARNING.

3. ONNX_ENABLE_PROFILING не упомянут для функций, но присутствует в списке флагов. И он не работает. Предполагаю, что он для OnnxRun.