当前位置: 首页 > wzjs >正文

如何做凡客网站软件开发公司排行榜

如何做凡客网站,软件开发公司排行榜,怎样做买东西的网站,某网站建设方案最近已有不少大厂开启春招宣讲了。 节前,我们邀请了一些互联网大厂朋友、今年参加社招和校招面试的同学。 针对新手如何入门算法岗、该如何准备面试攻略、面试常考点、大模型技术趋势、算法项目落地经验分享等热门话题进行了深入的讨论。 总结链接如下&#xff1…

最近已有不少大厂开启春招宣讲了。

节前,我们邀请了一些互联网大厂朋友、今年参加社招和校招面试的同学。

针对新手如何入门算法岗、该如何准备面试攻略、面试常考点、大模型技术趋势、算法项目落地经验分享等热门话题进行了深入的讨论。

总结链接如下:

  • 《大模型面试宝典》(2025版) 正式发布

在这里插入图片描述

随着DeepSeek爆火,面试中也越来越高频出现,因此训练营也更新了DeepSeek系列技术的深入拆解。包括MLA、MTP、专家负载均衡、FP8混合精度训练,Dual-Pipe等关键技术,力求做到全网最硬核的解析~

本文介绍 DeepSeek 中大量使用的一种数据编码方式——FP8。FP8 是 Float8 的简写,中文可以称之为 8 位浮点数,也就是用 8 位的空间来存储一个浮点数。

本文将从什么是 FP8 的基本结构开始, 举例讲解如何将一个十进制的小数转换为 FP8 的格式。同时,也会演示如何将一个 FP8 的数据转换回一个十进制的数。

接下来,我们会介绍 FP8 的基本计算原理,包括如何进行加减乘除运算。相信通过本文的介绍,读者应该会对 FP8 有一个基本的了解。

01 FP8的基本结构

FP8 是一种 8 位浮点数格式,专为深度学习计算设计。与传统的 32 位浮点数(FP32)相比,它大幅减少了存储空间和计算负担,同时为 AI 任务保留了足够的精度。

FP8 主要有两种常见规格:

  • E4M3:1 位符号位 + 4 位指数位 + 3 位尾数位

  • E5M2:1 位符号位 + 5 位指数位 + 2 位尾数位

02 FP8和十进制如何转换

FP8 遵循 IEEE 浮点数的基本原理,一个 FP8 数的值计算为:

(-1)^符号位 × (1.尾数) × 2^(指数-偏置值)

其中 E4M3 格式的偏置值为 7(2^(4-1)-1)。

实例:十进制转 FP8

以 0.15625 为例,如何转换为 FP8(E4M3)格式?

  • 确定符号位:0.15625 为正数,符号位为 0

  • 二进制转换:0.15625 = 0.00101(二进制) = 1.01 × 2^(-3)

  • 计算指数:实际指数为 -3,加上偏置值 7 得到 E = 4(二进制 0100)

  • 提取尾数:尾数为 01,补齐三位为 010

  • 组合结果:0|0100|010 = 00100010(二进制)

这样,0.15625 就被编码为 00100010 这个 8 位二进制数。

实例:FP8 转十进制

如果我们看到 FP8 数 01100010,如何转换回十进制?

分解各部分

  • 符号位 S = 0(正数)

  • 指数位 E = 1100(二进制) = 12(十进制)

  • 尾数位 M = 010

计算实际值

  • 实际指数 = 12 - 7 = 5

  • 尾数转换为十进制: 1.010 = 1 * 2^0 + 1*2^(-2) = 1+0.25 = 1.25

  • 最终,真实值 = 1 × 1.25 × 2^5

  • = 1 × 1.25 × 32

  • = 40

03 计算原理

高能预警:本节内容存在大量计算,需要读者掌握一些基本的计算机组成原理知识。包括但不限于:进制转换速算、计算机组成原理等。

限于篇幅,无法将所有先验知识一一写明,读者请酌情阅读下列内容。如果写得不清楚的地方,欢迎读者在文章评论区提问,作者会及时回复。

本节用 2 个 FP8 数值为用户举例讲解两个 FP8 的数据如何进行计算。

两个数值的对应信息见下表:

图片

尾数真实值需要补充隐含的 1。

加减

加减的计算规则按照:

  • 处理符号位:同号加法结果符号与操作数相同,异号加法结果符号跟随绝对值较大的操作数,用绝对值较大的数减去绝对值较小的数。 减法将第二个操作数的符号取反,然后按加法规则处理。

  • 将较小指数的操作数的尾数右移相应位数,将两个操作数的指数变换成相同。

  • 对齐后的尾数按照普通二进制的加减规则进行加减(即加法直接相加,减法取补码后相加)

  • 将尾数真实值规格化到 [1,2) 之间。如果结果尾数 ≥2,需要右移一位并将指数加 1 。如果结果尾数 <1,需要左移直到尾数 ≥1,并相应减小指数。

举例

第一步: 同号加法,符号位为 0。

第二步: 因为右操作数的指数是 3,而左操作数的指数是 4,所以需要将右操作数的尾数真实值右移一位,使得左右操作数指数一致。即 1.000 >> 1 = 0.100。

第三步: 对齐后的左右操作数的尾数直接按照普通二进制加减法进行加减。即 1.010 + 0.100 =1.110。

第四步: 规格化,因为 1.110 已经在 [1,2) 之间了,所以不需要缩放了。最终结果为符号位 0,指数 0100,尾数 110,最终拼起来就是 00100110。对应的十进制数为 0.21875。

乘除

乘除的计算规则按照:

  • 处理符号位:乘除法的结果符号位是两个操作数符号位的异或结果(相同为 0,不同为 1)。

  • 指数处理:乘法时,结果的指数等于两个操作数的指数之和再减去偏移量;除法时,结果的指数等于被除数的指数减去除数的指数再加上偏移量。

  • 尾数处理:乘法时,将两个操作数的尾数真实值相乘;除法时,将被除数的尾数真实值除以除数的尾数真实值。

  • 将尾数真实值规格化到 [1,2) 之间。如果结果尾数 ≥2,需要右移一位并将指数加 1;如果结果尾数 <1,需要左移直到尾数 ≥1,并相应减小指数。

举例

以乘法为例:

第一步:两个操作数符号位都是 0,异或结果为 0,所以结果符号位为 0。

第二步:左操作数指数为 4,右操作数指数为 3,两数相加得 7,再减去偏移量 7,实际指数为 0。

第三步:计算尾数真实值相乘,即 1.010 × 1.000 = 1.010。

第四步:结果尾数 1.010 已在 [1,2) 之间,不需要规格化。

最终结果为符号位 0,指数 0111,尾数 010,拼起来就是 00111010。对应的十进制数为 0.15625 × 0.0625 = 0.009765625。

04 FP8常见问题解答(FAQ)

Q1:FP8 相比 FP32/FP16 会带来多大的精度损失?

A: FP8 相比 FP32 或 FP16 确实会带来一定的精度损失。E4M3 格式的动态范围约为 [-448, 448],精度约为 2^-3≈0.125;而 E5M2 格式的动态范围约为 [-57344, 57344],精度约为 2^-2≈0.25。

相比之下,FP32 的精度约为 2-23≈1.19×10-7,FP16 的精度约为 2-10≈9.77×10-4。

但研究表明,对于大多数深度学习应用场景,特别是大型语言模型,这种精度损失是可接受的,不会显著影响模型性能,同时能带来高达 4 倍的存储空间节约和计算效率提升。

Q2:FP8 的舍入策略有哪些?它们如何影响计算结果?

A: FP8 主要采用的舍入策略包括:

向最近舍入(Round to Nearest Even,RNE):将数值舍入到最近的可表示值,如果处于中间点则舍入到偶数。这是最常用的策略,平均误差最小。

向零舍入(Round toward Zero,RTZ):舍入到绝对值较小的可表示值,简单但容易累积误差。

随机舍入(Stochastic Rounding):基于概率随机舍入,在训练过程中特别有用,可以防止梯度消失。

DeepSeek 模型主要使用 RNE 策略,因为它在统计上偏差最小,适合深度学习训练。

Q3:FP8 和 INT8 有什么区别?为什么不直接用 INT8?

A: 尽管 FP8 和 INT8 都使用 8 位表示数值,但它们的结构和用途完全不同:

  • INT8 是定点数,表示范围固定 [-128, 127],精度均匀。

  • FP8 是浮点数,具有指数位,可表示更大范围的数值,但精度随数值变化。

深度学习模型权重和激活值的分布通常是非均匀的,有极小和极大的值,FP8 更适合捕捉这种分布,而不需要像 INT8 那样复杂的量化校准过程。

Q4:E4M3 和 E5M2 应该在什么场景下选择?

A: 选择取决于具体需求:

E4M3:(4 位指数,3 位尾数)。精度较高但范围较小,适合前向传播和激活值,对数值精确度要求较高的场景。DeepSeek-V3 模型全面采用 E4M3 格式。**

E5M2:(5 位指数,2 位尾数)。范围更大但精度较低,适合梯度计算和反向传播,数值波动较大的场景。

许多框架会在一个模型中混合使用这两种格式:前向传播用 E4M3,反向传播用 E5M2,以平衡精度和范围需求。

Q5:FP8 是否支持 NaN、无穷大等特殊值?

A: 是的,与标准 IEEE 754 浮点数类似,FP8 也支持特殊值:

NaN(非数值):当指数位全为 1 且尾数不为 0 时表示。

无穷大:当指数位全为 1 且尾数为 0 时表示。

零:当指数位和尾数都为 0 时表示。

非规格化数:当指数位为 0 且尾数不为 0 时表示,用于扩展表示范围。

这些特殊值在处理溢出、下溢和错误操作时非常重要。

Q6:在模型中如何平滑过渡到 FP8 格式?

A: 由于 FP8 的精度有限,因此目前还无法做到所有的训练过程都使用 FP8。

因此需要平滑过渡,通常需要以下步骤:

混合精度训练:先用 FP16/FP32 训练模型,然后逐步将部分计算迁移到 FP8。

缩放因子:应用动态缩放因子(scaling factors)来调整 FP8 表示范围,避免溢出和下溢。

梯度累加:在更高精度(如 FP16/FP32)下累加梯度,只在计算密集型操作中使用 FP8。

误差分析:监控并比较 FP8 与更高精度格式之间的误差,确保不会显著影响模型性能。

选择性应用:对精度敏感的层保留较高精度,对不敏感的层应用 FP8。

Q7:FP8 在消费级硬件上是否可用?需要特殊硬件支持吗?

A: 目前只在 H 系列的 GPU 上提供支持。


文章转载自:

http://OuLFxEva.jcwrb.cn
http://iSIzZsQN.jcwrb.cn
http://vafv4RVD.jcwrb.cn
http://FKbnaIrf.jcwrb.cn
http://j0SdQdjR.jcwrb.cn
http://8dViNJEn.jcwrb.cn
http://Qf65GYwl.jcwrb.cn
http://h87D7JaZ.jcwrb.cn
http://iVKDyfuk.jcwrb.cn
http://EiYcccHH.jcwrb.cn
http://UKvWG24B.jcwrb.cn
http://tUMnOXEG.jcwrb.cn
http://U8sR7jVL.jcwrb.cn
http://kGsSTvt7.jcwrb.cn
http://ZN3OppEJ.jcwrb.cn
http://IRrPko0i.jcwrb.cn
http://rSq1ApC5.jcwrb.cn
http://oy4m5ZUu.jcwrb.cn
http://s7J0SJTc.jcwrb.cn
http://6EnnYqFR.jcwrb.cn
http://znkys8yf.jcwrb.cn
http://io7ZJFSC.jcwrb.cn
http://U9Mr77n8.jcwrb.cn
http://goGBLCFu.jcwrb.cn
http://oPyLFs2l.jcwrb.cn
http://vM1Ahv5S.jcwrb.cn
http://SSRDH5kx.jcwrb.cn
http://zAF3jzS3.jcwrb.cn
http://FSsoEpyz.jcwrb.cn
http://nXjAr8Qc.jcwrb.cn
http://www.dtcms.com/wzjs/711514.html

相关文章:

  • 制作wordpress静态首页谷歌seo网站怎么做产品分类
  • 用dw做购票网站怎么做像小刀网一样的网站
  • 旅游网站设计与实现开题报告2018网站建设合同
  • 中山h5网站建设seo搜索排名影响因素主要有
  • 婚纱摄影类网站模板网络技术工作室
  • 甘肃建设监理协会网站教学网站模板
  • 北京响应式的网站九江做网站的大公司
  • dede网站运行天数金山企业型网站建设
  • 做软装搭配的网站网页模板下载完整版
  • 自己做网站 怎么解决安全问题自己设计服装的app免费
  • 凡客诚品官方网站的代码网站透明flash
  • 腾讯网站58同城二手房出售
  • 慕课网站建设开题报告外国人做旅游攻略网站
  • 中山教育平台网站建设自己做视频直播网站
  • 内容营销的表现形式比较单一福州网站建设优化
  • 搜索引擎站长平台珠海响应式网站建设公司
  • 宜宾建设局网站制作相册音乐相册模板
  • 安徽建设银行招聘网站长春网站建设
  • 苏州网站建设最好广州网站建设功能
  • 营销式网站建设电商营销的策略与方法
  • 怎么创造一个网站成都蓉城最新消息
  • 公司网站二维码生成器小学生班级优化大师
  • 找人做的网站推广被坑wordpress 多模板
  • 做商城网站要什么证件云服务器 做网站
  • 临淄关键词网站优化哪家好做网站的工作叫什么
  • 大连企业网站建站模板个人博客网页制作成品图片
  • seo网站编辑是做什么的陕西建设网站官网
  • 定制网站建设制作商企业官网网站
  • 茶山网站建设公司青岛建设银行网站首页
  • 网站做百度推广怎么推广网站活动网站推广