- 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
ArrayToFP16
Realiza a cópia de um array do tipo float ou double para um array do tipo ushort com o formato especificado.
bool ArrayToFP16(
|
Sobrecarga para o tipo double
bool ArrayToFP16(
|
Parâmetros
dst_array[]
[out] Array receptor do tipo ushort.
src_array[]
[in] Array receptor do tipo float ou double.
fmt
[in] Formato de cópia a partir da enumeração ENUM_FLOAT16_FORMAT.
Valor retornado
Retorna true se for bem-sucedido, caso contrário, false.
Observação
Os formatos FLOAT16 e BFLOAT16 são definidos no enum ENUM_FLOAT16_FORMAT e são usados no MQL5 exclusivamente para trabalhar com modelos ONNX.
A função é utilizada para a conversão de parâmetros de entrada do tipo float ou double para o tipo FLOAT16 e BFLOAT16. Posteriormente, esses parâmetros de entrada são usados na função OnnxRun.
FLOAT16, também conhecido como precisão média ou formato "half-precision float", utiliza 16 bits para representar um número de ponto flutuante. Este formato oferece um equilíbrio entre precisão e eficiência de cálculo. FLOAT16 é amplamente usado em aprendizado profundo e redes neurais, onde a alta performance no processamento de grandes volumes de dados é requerida. Este formato permite acelerar os cálculos por meio da redução do tamanho dos números, o que é especialmente importante no treinamento de redes neurais profundas em unidades de processamento gráfico (GPUs).
BFLOAT16 (ou Brain Floating Point 16) também usa 16 bits, mas difere do FLOAT16 na forma como os números são representados. Neste formato, 8 bits são alocados para a representação do expoente, e os 7 bits restantes são usados para a mantissa. Este formato foi desenvolvido para uso em aprendizado profundo e inteligência artificial, especialmente em unidades de processamento Tensor do Google (TPUs). BFLOAT16 tem bom desempenho no treinamento de redes neurais e pode ser efetivamente usado para acelerar os cálculos.
Exemplo: função do artigo Trabalhando com modelos ONNX nos formatos float16 e float8
//+------------------------------------------------------------------+
|
Veja também