- 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
Kopiert ein Array vom Typ float oder double in ein Array vom Typ ushort mit dem angegebenen Format.
bool ArrayToFP16(
|
Überladung für den Typ double
bool ArrayToFP16(
|
Parameter
dst_array[]
[out] Empfänger-Array vom Typ ushort.
src_array[]
[in] Quell-Array vom Typ float oder double.
fmt
[in] Format der Kopie aus der Enumeration ENUM_FLOAT16_FORMAT.
Rückgabewert
Gibt bei Erfolg „true“ zurück, andernfalls „false“.
Hinweis
Die Formate FLOAT16 und BFLOAT16 sind in der Enumeration ENUM_FLOAT16_FORMAT definiert und werden in MQL5 nur für Operationen mit ONNX-Modelle verwendet.
Die Funktion konvertiert die Eingabeparameter vom Typ float oder double in den Typ FLOAT16 und BFLOAT16. Diese Eingabeparameter werden dann in der Funktion OnnxRun verwendet.
FLOAT16, auch bekannt als half-precision float (Halbgenaues-Float), verwendet 16 Bit zur Darstellung von Gleitkommazahlen. Dieses Format bietet ein Gleichgewicht zwischen Genauigkeit und Recheneffizienz. FLOAT16 wird häufig in Deep-Learning-Algorithmen und neuronalen Netzen verwendet, die eine Hochleistungsverarbeitung großer Datensätze erfordern. Dieses Format beschleunigt Berechnungen durch die Reduzierung der Zahlengröße, was besonders wichtig ist, wenn tiefe neuronale Netze auf GPUs trainiert werden.
BFLOAT16 (oder Brain Floating Point 16) verwendet ebenfalls 16 Bit, unterscheidet sich jedoch von FLOAT16 im Ansatz der Formatdarstellung. In diesem Format werden 8 Bits zur Darstellung des Exponenten zugewiesen, während die restlichen 7 Bits zur Darstellung der Mantisse verwendet werden. Dieses Format wurde für den Einsatz im Deep Learning und der künstlichen Intelligenz entwickelt, insbesondere in der Tensor Processing Unit (TPU) von Google. BFLOAT16 zeigt eine hervorragende Leistung beim Training neuronaler Netzwerke und kann Berechnungen effektiv beschleunigen.
Beispiel: Die Funktion aus dem Artikel „Arbeiten mit ONNX-Modellen in den Formaten float16 und float8“
//+------------------------------------------------------------------+
|
Siehe auch