计算机的错误计算(五十)

摘要 扩展了计算机的错误计算(四十九)中的代码。同时发现,误差也"扩展"了。

下面是代码:

复制代码
import torch

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

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

# 计算第一个矩阵乘法
Y1 = torch.mm(W1, X1)

# 在GPU上执行归一化操作
min_val1 = Y1.min()
max_val1 = Y1.max()
Y1_normalized = (Y1 - min_val1) / (max_val1 - min_val1)

# 应用tanh函数
torch_tanh1 = torch.tanh(Y1_normalized)

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

# 计算第二个矩阵乘法
R_tanh1 = torch.mm(torch_tanh1, Z1)

# 继续构建更多层
W2 = torch.randn(4, 6) * 10
W2 = W2.to('cuda')
X2 = torch.randn(6, 4) * 10
X2 = X2.to('cuda')

# 计算第三个矩阵乘法
Y2 = torch.mm(W2, X2)

# 在GPU上执行归一化操作
min_val2 = Y2.min()
max_val2 = Y2.max()
Y2_normalized = (Y2 - min_val2) / (max_val2 - min_val2)

# 应用tanh函数
torch_tanh2 = torch.tanh(Y2_normalized)

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

# 计算第四个矩阵乘法
R_tanh2 = torch.mm(torch_tanh2, Z2)

输出为:

经检验,矩阵R_tanh2中,含有两位错误数字的元素共有15个,具体位置如下:[0,0]、[0,1]、[0,3]、[0,4]、[0,5]、[1,0]、[2,1]、[2,2]、[2,3]、[2,4]、[2,5]、[3,1]、[3,2]、[3,5]、[3,6]。另外,含有三位错误数字的元素有2个,分别是[3,0]和[3,3]。

这样,含有两位以上错误数字的元素共有17个。占比为 17/(4*7)=17/28=60.7%.

现在有个问题:随着代码的增加,误差是否会越来越大?会大到有的元素没有了正确有效数字吗?误差有上限吗?

相关推荐
zy_destiny几秒前
【工业场景】用YOLOv8实现抽烟识别
人工智能·python·算法·yolo·机器学习·计算机视觉·目标跟踪
狠活科技6 分钟前
免登录!免安装ClI,Claude Code官方插件接入API使用教程
人工智能·vscode·ai编程
坚持编程的菜鸟11 分钟前
LeetCode每日一题——螺旋矩阵
c语言·算法·leetcode·矩阵
汉克老师13 分钟前
GESP2025年9月认证C++四级( 第三部分编程题(1)排兵布阵)
c++·算法·gesp4级·gesp四级
(●—●)橘子……17 分钟前
记力扣2009:使数组连续的最少操作数 练习理解
数据结构·python·算法·leetcode
闲看云起18 分钟前
Bert:从“读不懂上下文”的AI,到真正理解语言
论文阅读·人工智能·深度学习·语言模型·自然语言处理·bert
nueroamazing1 小时前
PPT-EA:PPT自动生成器
vue.js·python·语言模型·flask·大模型·项目·ppt
韩曙亮1 小时前
【自动驾驶】自动驾驶概述 ⑨ ( 自动驾驶软件系统概述 | 预测系统 | 决策规划 | 控制系统 )
人工智能·机器学习·自动驾驶·激光雷达·决策规划·控制系统·预测系统
一壶浊酒..1 小时前
python 爬取百度图片
开发语言·python·百度
机器视觉知识推荐、就业指导1 小时前
C语言中的预编译是什么?何时需要预编译?
c语言·开发语言