РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
88 of 824 menu

Тип bfloat16

Тип bfloat16 представляет собой 16-битный формат чисел с плавающей точкой, разработанный компанией Google. Он имеет 8 бит для экспоненты (как у float32) и 7 бит для мантиссы (в отличие от 23 бит у float32). Это позволяет сохранить динамический диапазон, близкий к float32, но с меньшей точностью. Тип bfloat16 доступен как tf.bfloat16 и может использоваться при создании тензоров, в слоях Keras и в операциях, требующих экономии памяти или ускорения на специализированном оборудовании (например, TPU).

Синтаксис

tf.bfloat16

Пример

Давайте создадим тензор с типом bfloat16 из списка чисел:

import tensorflow as tf t = tf.constant([1, 2, 3, 4, 5], dtype=tf.bfloat16) print(t)

Результат выполнения кода:

tf.Tensor([1. 2. 3. 4. 5.], shape=(5,), dtype=bfloat16)

Пример

Давайте преобразуем тензор из float32 в bfloat16 и обратно:

import tensorflow as tf t = tf.constant([1.5, 2.5, 3.5], dtype=tf.float32) t_bf16 = tf.cast(t, dtype=tf.bfloat16) print(t_bf16) t_back = tf.cast(t_bf16, dtype=tf.float32) print(t_back)

Результат выполнения кода:

tf.Tensor([1.5 2.5 3.5], shape=(3,), dtype=bfloat16) tf.Tensor([1.5 2.5 3.5], shape=(3,), dtype=float32)

Пример

Давайте проверим размер в байтах для тензора с типом bfloat16:

import tensorflow as tf t = tf.constant([1, 2, 3, 4, 5], dtype=tf.bfloat16) print(tf.size(t).numpy() * t.dtype.size)

Результат выполнения кода:

10

Смотрите также

  • тип float32,
    который является 32-битным форматом с плавающей точкой
  • тип float16,
    который является 16-битным форматом с плавающей точкой с меньшим динамическим диапазоном
  • тип float64,
    который является 64-битным форматом с плавающей точкой двойной точности
  • тип int32,
    который является 32-битным целочисленным типом
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить