计算机的错误计算(四十九)

摘要 计算机的错误计算(四十八)讨论了GPU下一个深度学习中的"Hello World"程序的计算精度问题。本节探讨扩展后的程序在GPU下的计算精度问题。具体扩展为:首先归一化"Hello World"程序的结果矩阵Y,然后对其应用Tanh激活函数,最后与新生成的矩阵Z进行第二次矩阵乘法。结果表明,该扩展后的程序的误差也大为"扩展"。

先看代码:

python 复制代码
import torch

# 设置随机种子
torch.manual_seed(0)

# 创建张量并移动到GPU
W = torch.randn(5, 3) * 10
W = W.to('cuda')
X = torch.randn(3, 5) * 10
X = X.to('cuda')

# 计算矩阵乘法
Y = torch.mm(W, X)

# 在GPU上执行归一化操作
min_val = Y.min()
max_val = Y.max()
Y_normalized = (Y - min_val) / (max_val - min_val)

# 应用tanh函数
torch_tanh = torch.tanh(Y_normalized)

# 创建另一个张量并移动到GPU
Z = torch.randn(5, 4) * 10
Z = Z.to('cuda')

# 计算矩阵乘法
R_tanh = torch.mm(torch_tanh, Z)

# 设置小数位数
torch.set_printoptions(precision=8)

# 输出
print(R_tanh)

然后是输出:

在上面的输出中,有 2个值包含 3位错误数字,8个值包含 2位错误数字。这10个值的正确结果是:

其中红颜色数字表明 Python对应位置的数字不正确。因此,错误率不小于 2/8=25%的占比达到 10/20=50%. 它是计算机的错误计算(四十三)中CPU下错误率占比的 2倍。

相关推荐
秋邱14 分钟前
高等教育 AI 智能体的 “导学诊践” 闭环
开发语言·网络·数据库·人工智能·python·docker
数据的世界0121 分钟前
重构智慧书-第3条:公开有界,保密有度:行事的分寸准则
人工智能
组合缺一21 分钟前
Solon AI 开发学习6 - chat - 两种 http 流式输入输出
python·学习·http
许泽宇的技术分享24 分钟前
AgentFramework-零基础入门-第08章_部署和监控代理
人工智能·后端·agent框架·agentframework
沐浴露z28 分钟前
为什么使用SpringAI时通常用Builder来创建对象?详解 【Builder模式】和【直接 new】的区别
java·python·建造者模式
数据与后端架构提升之路28 分钟前
Map-World:用“填空”与“路径积分”重构自动驾驶规划范式
人工智能·自动驾驶·世界模型·锚点预测
陈天伟教授32 分钟前
机器学习方法(4)强化学习(试错学习)
人工智能·学习·机器学习
青瓷程序设计43 分钟前
【宠物识别系统】Python+TensorFlow+Vue3+Django+人工智能+深度学习+卷积神经网络算法
人工智能·python·深度学习
IT_陈寒44 分钟前
Python开发者必看:5个被低估但能提升200%编码效率的冷门库实战
前端·人工智能·后端
徽4401 小时前
农田植被目标检测数据标注与模型训练总结1
人工智能·目标检测·计算机视觉