float16/32/64对神经网络计算的影响

举报
风吹稻花香 发表于 2021/06/05 23:08:14 2021/06/05
【摘要】 https://www.maixj.net/ict/float16-32-64-19912 float16/32/64对神经网络计算的影响   神经网络的计算,或者说深度学习的计算,全都是浮点数。浮点数的类型分16/32/64(128位的不再考虑范围内,numpy和python最大只到float64),选择哪一种浮点数类型,对神经网络的计算有不同的影响。以下是...

https://www.maixj.net/ict/float16-32-64-19912

float16/32/64对神经网络计算的影响

 

神经网络的计算,或者说深度学习的计算,全都是浮点数。浮点数的类型分16/32/64(128位的不再考虑范围内,numpy和python最大只到float64),选择哪一种浮点数类型,对神经网络的计算有不同的影响。以下是近期的学习总结:

(1)目前业界深度学习的标准是BF16,一种16位的浮点数,据说Google的TPU已经支持,未来Intel的芯片也会支持;

(2)我们在一般计算上的,通过numpy得到的16位浮点数,是FP16,不是BF16FP16是IEEE754-2008的标准;这两个标准,在能够表示的数值的范围上有区别;

(3)对于内存的影响:float64占用的内存是float32的两倍,是float16的4倍;比如对于CIFAR10数据集,如果采用float64来表示,需要60000*32*32*3*8/1024**3=1.4G,光把数据集调入内存就需要1.4G;如果采用float32,只需要0.7G,如果采用float16,只需要0

文章来源: blog.csdn.net,作者:网奇,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/jacke121/article/details/106063375

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。