- ArrayBsearch
- ArrayCopy
- ArrayCompare
- ArrayFree
- ArrayGetAsSeries
- ArrayInitialize
- ArrayFill
- ArrayIsDynamic
- ArrayIsSeries
- ArrayMaximum
- ArrayMinimum
- ArrayPrint
- ArrayRange
- ArrayResize
- ArrayInsert
- ArrayRemove
- ArrayReverse
- ArraySetAsSeries
- ArraySize
- ArraySort
- ArraySwap
- ArrayToFP16
- ArrayToFP8
- ArrayFromFP16
- ArrayFromFP8
ArrayFromFP16
Permite copiar un array de tipo ushort en un array de tipo float o double con el formato establecido.
bool ArrayFromFP16(
|
Sobrecarga para el tipo double
bool ArrayFromFP16(
|
Parámetros
dst_array[]
[out] Array receptor del tipo float o double.
src_array[]
[in] Array fuente del tipo ushort.
fmt
[in] Formato de copiado de la enumeración ENUM_FLOAT16_FORMAT.
Valor retornado
Retorna true en el caso de éxito, de lo contrario, false.
Observación
Los formatos FLOAT16 y BFLOAT16 se definen en la enumeración ENUM_FLOAT16_FORMAT y se usan en MQL5 sola y exclusivamente para trabajar con modelos ONNX.
Si los parámetros de salida obtenidos al ejecutar la función OnnxRun son de tipo FLOAT16 y BFLOAT16, esta función permitirá convertir el resultado a arrays de tipo float o double.
FLOAT16, también conocido como formato de media precisión o "half-precision float", utiliza 16 bits para representar un número de coma flotante. Este formato ofrece un equilibrio entre precisión y eficiencia computacional. FLOAT16 se utiliza ampliamente en el aprendizaje profundo y las redes neuronales, donde se requiere un alto rendimiento al procesar grandes cantidades de datos. Este formato permite acelerar los cálculos reduciendo el tamaño de los números, lo cual resulta especialmente importante al entrenar redes neuronales profundas en unidades de procesamiento gráfico (GPU).
BFLOAT16 (o Brain Floating Point 16) también usa 16 bits, pero se diferencia de FLOAT16 en el modo de representación de los números. En este formato, se asignan 8 bits para representar el exponente y los 7 bits restantes se utilizan para representar la mantisa. Este formato se ha desarrollado para su uso en el aprendizaje profundo y la inteligencia artificial, especialmente en los procesadores Tensor Processing Unit (TPU) de Google. BFLOAT16 muestra un buen rendimiento en el entrenamiento de redes neuronales y puede utilizarse eficazmente para acelerar el cálculo.
Ejemplo: función del artículo Trabajamos con modelos ONNX en formatos float16 y float8
//+------------------------------------------------------------------+
|
Ver también