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

摘要 计算机的错误计算(四十八)讨论了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倍。

相关推荐
Work(沉淀版)2 小时前
DAY 40
人工智能·深度学习·机器学习
蓦然回首却已人去楼空3 小时前
Build a Large Language Model (From Scratch) 序章
人工智能·语言模型·自然语言处理
CM莫问3 小时前
<论文>(微软)WINA:用于加速大语言模型推理的权重感知神经元激活
人工智能·算法·语言模型·自然语言处理·大模型·推理加速
拾忆-eleven3 小时前
NLP学习路线图(二十六):自注意力机制
人工智能·深度学习
MYH5164 小时前
在NLP文本处理中,将字符映射到阿拉伯数字(构建词汇表vocab)的核心目的和意义
人工智能·深度学习·自然语言处理
程序员的世界你不懂4 小时前
Appium+python自动化(八)- 认识Appium- 下章
python·appium·自动化
要努力啊啊啊4 小时前
KV Cache:大语言模型推理加速的核心机制详解
人工智能·语言模型·自然语言处理
恸流失4 小时前
DJango项目
后端·python·django
Julyyyyyyyyyyy5 小时前
【软件测试】web自动化:Pycharm+Selenium+Firefox(一)
python·selenium·pycharm·自动化
mzlogin6 小时前
DIY|Mac 搭建 ESP-IDF 开发环境及编译小智 AI
人工智能