首页 > 其他分享 >机器学习中常用的数据类型

机器学习中常用的数据类型

时间:2024-07-19 10:41:51浏览次数:6  
标签:常用 机器 FP32 数据类型 10e FP16 10e38 小数位 范围

常用的数据类型有FP64、FP32、FP16、BFLOAT16等

FP64

FP64表示64位浮点数,通常为IEEE 754定义的双精度二进制浮点格式,由1位符号位、11位指数位、52位小数位组成

表示范围:

  • 正数范围:约 4.9 x 10e-324 ~ 1.8 x 10e308
  • 负数范围:约 -1.8 x 10e308 ~ -4.9 x 10e-324

通常用于精度要求较高的科学计算,一般不用于深度学习

 

FP32 

FP32表示32位浮点数,通常为IEEE 754定义的单精度二进制浮点格式,由1位符号位、8位指数位、23位小数位组成

表示范围:

  • 正数范围:约 1.4 x 10e-45 ~ 3.4 x 10e38
  • 负数范围:约 -3.4 x 10e38 ~ -1.4 x 10e45

深度学习的主力数据格式,神经网络中的权重等默认以FP32表示

 

FP16

FP16表示16位浮点数,通常为IEEE 754定义的半精度二进制浮点格式,由1位符号位、5位指数位和10位小数位组成

表示范围:

  • 正数范围:约 6.10 x 10e-8 ~ 65504
  • 负数范围:约 -65504 ~ -6.10 x 10e-8

可用于深度学习的混合精度训练,模型权重的加载使用FP32,前向和反向传播、梯度更新等使用FP16提高训练速度

 

BF16 

一种特殊的数据存储格式,为解决FP16应用在深度学习上时动态范围太窄的问题,由Google开发的16位格式  Brain Floating Point Format

1位符号位、8位指数位、7位小数位组成

表示范围:

  • 正数范围:约 1.18 x 10e-38 ~ 3.39 x 10e38
  • 负数范围:约 -3.39 x 10e38 ~ -1.18 x 10e-38

BF16保持与BF32相同的指数范围,但牺牲了一部分精度,其可在深度学习训练中减少内存和存储需求

 

标签:常用,机器,FP32,数据类型,10e,FP16,10e38,小数位,范围
From: https://www.cnblogs.com/Liang-ml/p/18309962

相关文章

  • Google 常用语法说明
    Google常用语法说明背景GoogleHacking,作为一种利用谷歌搜索引擎的强大能力来挖掘互联网中敏感或未公开信息的技巧,已成为安全研究、漏洞挖掘及信息搜集领域的重要工具。通过精心构造的搜索查询,用户可以轻松地发现从轻微的安全疏忽(如遗留的后门、未加密的后台入口)到严重的信息......
  • 计算机毕业设计PySpark+Django高考志愿填报推荐系统 高考预测 高考大数据分析 Hadoop
    摘要本文旨在设计与实现一个基于Spark的高考志愿填报推荐系统,旨在帮助高考生根据自身成绩和兴趣,精准推荐合适的大学和专业。系统采用大数据处理框架Spark,结合机器学习算法,实现了对高考数据的深度挖掘和分析,为考生提供科学、有效的志愿填报建议。系统捕捉考生个人特征、......
  • mysql数据库常用命令(补充)
    1、查看表的所有内容select*from表名;2、查看指定内容selectname,agefromtest;select表示查询,name表示名字,age表示年龄,from是从的意思,test是表名。翻译过来就是:从test表中查询名字和年龄字段的内容。在select后面指定要查询的项,可以是一项也可以多项。在select后面添......
  • 常用的实用网站
    1.W3schoolhttps://www.w3school.com.cn/python/python_reference.aspW3School是一个非常受欢迎的在线学习平台,主要提供有关网页设计、编程、移动应用开发和服务器端技术等方面的教程和资源。它涵盖了从基础的HTML、CSS、JavaScript到更高级的技术如PHP、SQL、Python等。2.......
  • Java基础-Java代码变成机器可执行代码过程
    1Javac编译因为JVM把Javac把Java代码编译成字节码,即把.java文件变成.class文件,JVM(Java虚拟机)可以理解字节码文件,将其转换为机器可以执行的代码,所以只要安装了JVM的平台,都可以运行Java程序。2JVMJavac编译后,Java文件就变成了字节码文件,JVM类加载器会去加载字节码文件,然后由解......
  • 渗透测试常用术语
    渗透测试常用术语在渗透测试中,常用的术语包括POC、EXP、Payload、Shellcode等,以及后门、Webshell、木马、病毒等安全相关的概念。以下是对这些术语的详细解释及它们之间的区别:术语解释POC(ProofofConcept)定义:全称ProofofConcept,中文意为“概念验证”。在渗透测试中,POC......
  • XGBoost模型构建+SHAP解析-Python代码——用XGBoost模型实现机器学习并进行黑箱过程解
    一、XGBoost模型简介1.1适用范围XGBoost(ExtremeGradientBoosting)是一个基于梯度提升(GradientBoosting)框架的增强算法,广泛应用于分类、回归、排序等任务。常见的应用包括:信用风险评估销售预测病毒检测图像识别1.2原理XGBoost是梯度提升树(GradientBoostedDecisionTree......
  • 决策树模型构建+调参Python代码——用决策树模型实现机器学习
    一、决策树模型简介1.1适用范围决策树模型(DecisionTree)可以用于分类和回归任务,广泛应用于以下领域:客户细分信用风险评估医疗诊断营销策略优化1.2原理决策树是一种树形结构的预测模型,通过一系列的特征测试(即节点的分裂)将数据集逐步划分,从而形成一个树状的决策路径。每个节......
  • 第八章函数及常用的内置函数
    函数的定义和调用1、内置函数:输出函数print()输入函数input()列表定义的函数list()2、自定义函数def函数名称(参数列表):函数体[return返回值列表]3、函数调用函数名(参数列表)不带返回值的函数直接调用,带返回值的函数调用后要将结果保存到变量中点击查看......
  • docker镜像常用命令
    1.使用"ls"查看镜像列表dockerimagels查看现有的镜像列表。dockerimagels-q仅查看镜像的ID信息。dockerimagels-a查看所有的镜像,包括中间镜像,尤其是在后期查看基于dockerfile的时候很有用呢2.使用"pull"拉取镜像dockerimagepullbus......