- 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
Copia un array di tipo ushort in un array di tipo float o double con il formato specificato.
bool ArrayFromFP16(
|
Overloading (sovraccarico) per il tipo double
bool ArrayFromFP16(
|
Parametri
dst_array[]
[out] Array ricevitore di tipo float o double.
src_array[]
[in] Array sorgente di tipo ushort.
fmt
[in] Copia del formato dall'enumerazione ENUM_FLOAT16_FORMAT.
Valore Restituito
Restituisce true in caso di esito positivo altrimenti false.
Note
I formati FLOAT16 e BFLOAT16 sono definiti nell'enumerazione ENUM_FLOAT16_FORMAT e sono utilizzati in MQL5 solo per operazioni con modelli ONNX.
Se i parametri di output ottenuti dall'esecuzione della funzione OnnxRun sono di tipo FLOAT16 e BFLOAT16, è possibile utilizzare questa funzione per convertire il risultato in un array float o double.
FLOAT16, noto anche come half-precision float, utilizza 16 bit per rappresentare numeri in virgola mobile. Questo formato fornisce un equilibrio tra precisione ed efficienza computazionale. FLOAT16 è ampiamente utilizzato in algoritmi di deep learning e reti neurali, che richiedono un'elaborazione ad alte prestazioni di grandi set di dati. Questo formato accelera i calcoli riducendo la dimensione dei numeri, che è particolarmente importante quando si allenano reti neurali profonde su GPU.
Anche BFLOAT16 (o Brain Floating Point 16) utilizza 16 bit ma differisce da FLOAT16 nell'approccio alla rappresentazione del formato. In questo formato, 8 bit sono allocati per rappresentare l'esponente, mentre i restanti 7 bit sono usati per rappresentare la mantissa. Questo formato è stato sviluppato per l'uso nel deep learning e nell'intelligenza artificiale, in particolare nella Tensor Processing Unit (TPU) di Google. BFLOAT16 dimostra eccellenti prestazioni nell'allenamento della rete neurale e può efficacemente accelerare i calcoli.
Esempio: funzione dall'articolo Lavorare con i modelli ONNX nei formati float16 e float8
//+------------------------------------------------------------------+
|
Vedere anche