Minifloat: различия между версиями

Материал из in.wiki
Перейти к навигации Перейти к поиску
Строка 1: Строка 1:
 
{{Болванка}}
 
{{Болванка}}
  
В вычислительной техникe '''minifloat''' - группа типов данных<ref>В зависимости от контекста, их можно было бы рассматривать как одно [[Представление типа данных|представлений]] определённого типа данных, но, если рассматривать вопрос строго, то, всё-таки постановка вопроса о том, что каждый конкретный формат minifloat соответствует именно определённому [[Тип данных|типу данных]] выглядит более правильной.</ref>, выраженных как числа с плавающей запятой, представленные очень небольшим количеством битов. Они не очень подходят для численных расчетов общего назначения, но используются для специальных целей, чаще всего в компьютерной графике, где точность вычисления не имеет принципиального значения<ref>{{cite journal|last1=Mocerino|first1=Luca|last2=Calimera|first2=Andrea|title=AxP: A HW-SW Co-Design Pipeline for Energy-Efficient Approximated ConvNets via Associative Matching|journal=Applied Sciences|date=24 November 2021|volume=11|issue=23|page=11164|doi=10.3390/app112311164|doi-access=free}}</ref>.
+
В вычислительной техникe '''minifloat''' - группа типов данных<ref>В зависимости от контекста, их можно было бы рассматривать как одно [[Представление типа данных|представлений]] определённого типа данных, но, если рассматривать вопрос строго, то, всё-таки постановка вопроса о том, что каждый конкретный формат minifloat соответствует именно определённому [[Тип данных|типу данных]] выглядит более правильной.</ref>, выраженных как [[числа с плавающей запятой]], представленные очень небольшим количеством битов. Они не очень подходят для численных расчетов общего назначения, но используются для специальных целей, чаще всего в компьютерной графике, где точность вычисления не имеет принципиального значения<ref>{{cite journal|last1=Mocerino|first1=Luca|last2=Calimera|first2=Andrea|title=AxP: A HW-SW Co-Design Pipeline for Energy-Efficient Approximated ConvNets via Associative Matching|journal=Applied Sciences|date=24 November 2021|volume=11|issue=23|page=11164|doi=10.3390/app112311164|doi-access=free}}</ref>.
  
 
В последние годы подобные форматы данных, такие как [[bfloat16]], также используются в машинном обучении. Кроме того, они часто используются в качестве педагогического инструмента на курсах информатики для демонстрации свойств и структур арифметики с плавающей запятой и чисел [[IEEE 754]].
 
В последние годы подобные форматы данных, такие как [[bfloat16]], также используются в машинном обучении. Кроме того, они часто используются в качестве педагогического инструмента на курсах информатики для демонстрации свойств и структур арифметики с плавающей запятой и чисел [[IEEE 754]].
Строка 10: Строка 10:
  
 
Нормализованные числа хранятся со [[Смещённая экспонента|смещённой экспонентой]]. Новая версия стандарта [[IEEE 754-2008]] содержит 16-битные двоичные числа с плавающей запятой.
 
Нормализованные числа хранятся со [[Смещённая экспонента|смещённой экспонентой]]. Новая версия стандарта [[IEEE 754-2008]] содержит 16-битные двоичные числа с плавающей запятой.
 +
 +
== Нотация ==
 +
Различные виды minifloat обычно описывается кортежем из четырех чисел (S, E, M, B):   
 +
 +
* S — длина знакового поля. Обычно это либо 0, либо 1.   
 +
* E — длина поля экпоненты.   
 +
* M — длина поля мантиссы (значения без учёта порядка величины).   
 +
* B — [[смещение экспоненты.]]
 +
 +
Таким образом, формат minifloat, обозначаемый (S, E, M, B), имеет длину S + E + M бит. В компьютерной графике minifloat иногда используются для представления только целых значений.
 +
 +
Если, в то же время ,должны существовать субнормальные значения, наименьшее субнормальное число должно быть равно 1.
 +
 +
В этом случае значение смещения будет B = E - M - 1, при условии, что в соответствии со стандартом IEEE 754 используются два специальных значения показателя степени.
 +
 +
Обозначение (S, E, M, B) можно преобразовать в формат (B, P, L, U) как ([[Число с плавающей запятой#Диапазон чисел, представимых в формате с плавающей запятой|2, M + 1, B + 1, 2^S - B]]) (с использованием экспонент в смысле нотации IEEE).
  
 
== Примечания ==
 
== Примечания ==
 
[[Категория:Числовые типы данных]]
 
[[Категория:Числовые типы данных]]

Версия от 18:11, 6 января 2024

800px-T64 and pencil.jpg Это незавершённая статья.
Вы можете помочь проекту, исправив и дополнив её.


В вычислительной техникe minifloat - группа типов данных[1], выраженных как числа с плавающей запятой, представленные очень небольшим количеством битов. Они не очень подходят для численных расчетов общего назначения, но используются для специальных целей, чаще всего в компьютерной графике, где точность вычисления не имеет принципиального значения[2].

В последние годы подобные форматы данных, такие как bfloat16, также используются в машинном обучении. Кроме того, они часто используются в качестве педагогического инструмента на курсах информатики для демонстрации свойств и структур арифметики с плавающей запятой и чисел IEEE 754.

Числа minifloat с 16 битами представляют собой числа половинной точности (в отличие от одинарной и двойной точности). Существуют также minifloat с 8 битами или даже меньшей разрядностью.

Minifloat могут быть спроектированы в соответствии с принципами стандарта IEEE 754. В этом случае они должны, неявным образом, подчиняться правилам определения границы между субнормальными и нормальными числами и должны иметь специальные значения для бесконечности и NaN.

Нормализованные числа хранятся со смещённой экспонентой. Новая версия стандарта IEEE 754-2008 содержит 16-битные двоичные числа с плавающей запятой.

Нотация

Различные виды minifloat обычно описывается кортежем из четырех чисел (S, E, M, B):

  • S — длина знакового поля. Обычно это либо 0, либо 1.
  • E — длина поля экпоненты.
  • M — длина поля мантиссы (значения без учёта порядка величины).
  • B — смещение экспоненты.

Таким образом, формат minifloat, обозначаемый (S, E, M, B), имеет длину S + E + M бит. В компьютерной графике minifloat иногда используются для представления только целых значений.

Если, в то же время ,должны существовать субнормальные значения, наименьшее субнормальное число должно быть равно 1.

В этом случае значение смещения будет B = E - M - 1, при условии, что в соответствии со стандартом IEEE 754 используются два специальных значения показателя степени.

Обозначение (S, E, M, B) можно преобразовать в формат (B, P, L, U) как (2, M + 1, B + 1, 2^S - B) (с использованием экспонент в смысле нотации IEEE).

Примечания

  1. В зависимости от контекста, их можно было бы рассматривать как одно представлений определённого типа данных, но, если рассматривать вопрос строго, то, всё-таки постановка вопроса о том, что каждый конкретный формат minifloat соответствует именно определённому типу данных выглядит более правильной.
  2. Mocerino, Luca; Calimera, Andrea (24 November 2021). "AxP: A HW-SW Co-Design Pipeline for Energy-Efficient Approximated ConvNets via Associative Matching". Applied Sciences. 11 (23): 11164. doi:10.3390/app112311164.