Discusión sobre el artículo "Validación cruzada y fundamentos de la inferencia causal en modelos CatBoost, exportación a formato ONNX" - página 2
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
No se puede invertir el orden de esa manera:
Tiene que ser ¿Por qué hacer el orden inverso en absoluto?
No puedo recordar por qué lo hice de esta manera ... el problema con la serialidad de la matriz de origen, supongo. No importaba cómo lo invirtiera a través de AsSeries true-false, obtenía las mismas señales de modelo.
No sé mucho de las "peculiaridades" de MQL.
Tampoco es muy claro con los ajustes de las salidas del modelo, los ajusté por el método poke. Lo describí en el artículo.No recuerdo por qué lo hice así... Creo que fue un problema con la serialización de la matriz de origen. No importaba cómo lo volteara a través de AsSeries true-false, obtenía las mismas señales de modelo.
No sé mucho de las "peculiaridades" de MQL.
Tampoco está muy claro con los ajustes de las salidas del modelo, los ajusté por el método poke. Lo he descrito en el artículo.La sericidad no servirá de nada si has rellenado el array por índices después de crearlo, como lo rellenes es como cuenta. Probablemente... Yo no trabajo con serialización.
Creo que no es necesario voltearlo (ahora estás alimentando un array no volteado), ya que obtienes la misma gráfica en el tester que en python. De lo contrario los splits no funcionarían en sus fichas y habría aleatoriedad en la predicción.
La sericidad no ayudará si has rellenado el array por índices después de crearlo, ya que lo has rellenado - por lo que cuenta.
A sustituyes características en lugar de f, la predicción será diferente
Y sustituyes f por características, obtienes una predicción diferente.
Eso es raro. Parece que se copia 1 a 1. Las características son dinámicas y f es estática, pero esta no es la razón de las diferencias.
UPD: en los ejemplos de la ayuda de OnnxRun, las características se pasan en una matriz, pero las tuyas se pasan en un array, ¿quizás esta sea la razón? Es extraño que la ayuda no escriba como debería.
Extraño... Es como una copia 1 a 1.
Exacto, pero la respuesta del modelo es diferente
k-- artefacto, sí, puedes quitarlo.
Exacto, y la respuesta del modelo es diferente
k-- artefacto, sí, se puede quitar
Vi que la serialización se establece para featurs. Eso es probablemente por qué el resultado es diferente.
Extraño... Parece que se copia 1 a 1. features es dinámico, mientras que f es estático, pero difícilmente sea esta la razón de la diferencia.
UPD: en los ejemplos de la ayuda de OnnxRun las fichas se pasan en una matriz, mientras que las tuyas se pasan en un array, ¿quizás sea esta la razón? Es extraño que la ayuda no escriba como debería.
Sólo se pueden pasar arrays,vectores o matrices ( en adelanteDatos)como valores de entrada/salida en el modelo ONNX.
Creo que también he recibido una respuesta errónea con un vector. Tengo que volver a comprobarlo, pero de momento funciona.
https://www.mql5.com/es/docs/onnx/onnx_types_autoconversion
Gracias. Comparé los resultados de MLP simples, RNN, LSTM con bousting en mis conjuntos de datos. No vi mucha diferencia, a veces bousting era incluso mejor. Y el bousting es mucho más rápido de aprender, y no tienes que preocuparte demasiado por la arquitectura. No puedo decir que es inequívocamente mejor, porque NS es un tramo, usted puede construir tantas variantes diferentes de NS. Probablemente lo elegí por su simplicidad, es mejor en este aspecto.