- 博客(54)
- 资源 (1)
- 收藏
- 关注
原创 前向传播、反向传播
所以:网络层越多、batch 越大 → 保存的中间值越多 → 更容易显存溢出(OOM)网络层越多、batch 越大 → 保存的中间值越多 → 更容易显存溢出(OOM)在数学里,如果一个值依赖另一个值,而那个值又依赖另一个值,我们就用“链式法则”来求导。神经网络中,输出结果依赖一层又一层参数,每层都要通过链式法则来一层层传导梯度。每一层(卷积层、全连接层)都做一堆数学运算(比如:加权、激活函数)每一个操作(加、乘、激活函数)都在图上留下“痕迹”。,自动算出每一层的偏导数(梯度)。输出层发现错了,告诉上一层。
2025-04-05 18:15:44
381
原创 数值稳定性
下面,我会详细解释权重初始化的概念以及常见的几种方法。具体来说,它会将权重初始化为一个均匀分布或正态分布,其方差是根据输入和输出的大小自动计算的,旨在保持每层输入和输出的方差一致。当网络中权重值过大时,反向传播时计算出来的梯度会变得极其巨大,导致权重更新过大,模型的训练变得不稳定。梯度消失是指在反向传播过程中,随着层数的增加,梯度值变得越来越小,最终趋近于零,导致网络的更新变得极其缓慢,甚至完全停止更新。激活函数设计的,它通过利用输入层的神经元数量来决定权重的标准差,从而确保训练过程中梯度的稳定性。
2025-04-05 17:42:18
799
原创 Dropout(暂退法)
动手学深度学习》-4.6-笔记的小技巧:,让模型不太容易死记硬背。在上课,如果总是只问最聪明的同学答题,那其他同学就学不会了。老师为了让大家都动脑,,这样整个班都会进步Dropout 做的就是类似的事:训练模型时,随机让一部分“神经元”暂时不工作,,提升整体能力。Dropout 做了什么?在训练神经网络的时候,每一层都有很多“神经元”(也就是节点/单元),Dropout 会:每次训练时,随机挑选一部分神经元“屏蔽掉”(设为0,不参与计算)每次挑的不一样,是“暂时”的。
2025-04-05 14:23:39
832
原创 transforms-pytorch4
在这里,我们定义了一个函数,将整数标签转换成 one-hot 编码的张量。首先它创建了一个大小为 10 的零张量(我们的数据集中有 10 个标签),然后调用。,它会变成一个长度为 10 的张量,只有索引 3 的位置为 1,其他位置为 0,比如:[0, 0, 0, 1, 0, 0, 0, 0, 0, 0]。会自动把它们缩放到 [0, 1],这有助于模型训练,因为大部分模型训练时需要输入值在 0 到 1 的范围。:PyTorch 中的数据结构,表示一个浮点型的张量,适合进行数学计算。
2025-04-04 22:03:16
506
原创 数据集(Dataset)和数据加载器(DataLoader)-pytroch学习3
让 PyTorch 能读取自己的图片和标签,比如本地的一些图片文件和 CSV 表格。
2025-04-04 21:13:18
1041
原创 张量-pytroch基础(2)
运算类型操作符 / 函数是否逐元素?是否需要转置?输出维度变化?矩阵乘法matmul()❌ 否✅ 通常需要转置✅ 会变逐元素乘法(Hadamard)mul()✅ 是❌ 不需要❌ 不变单元素张量(single-element tensor)是指只有一个元素的张量。比如你对一个张量做了求和(sum)、平均(mean)等操作,结果就是一个单个值的张量。如果你想把这个张量变成普通的 Python 数值(比如int或float),可以使用 .item()方法。
2025-03-31 22:17:02
1005
原创 权重衰减-笔记
权重”就是模型中学到的参数,相当于它的“记忆”或“经验”。没有衰减:模型会很用力去记住训练数据,容易“死记硬背”。有衰减:模型会被“约束”,学得更稳,考试(预测新数据)更容易拿分。权重衰减 = 不让模型的“记忆力”太强,逼它学得简单一点,防止它考试(泛化)翻车。权重(weight)模型的记忆衰减(decay)给它一点压力,让它别太极端权重衰减限制模型学得太多,防止过拟合假设原本的损失函数是:Loss=预测误差加了权重衰减以后变成:w:模型的权重:所有权重平方加起来(L2 范数)
2025-03-30 14:41:22
409
原创 深度学习4.4笔记
这个过程会重复k次,每次选择不同的子集作为测试集,最终将k次测试结果的平均值作为模型的性能评估。过拟合是指模型对训练数据拟合得过于完美,以至于模型在训练数据上表现很好,但在新的、未见过的数据上表现很差。换句话说,模型过度学习了训练数据中的噪声和细节,而无法泛化到新的数据。欠拟合是指模型对训练数据的拟合程度不够,无法捕捉到数据中的规律和模式。验证数据集:通常是从训练集中划分出来的一部分数据,不要和训练数据混在一起,评估模型好坏的数据集。:模型的最大拟合能力,即通过调节参数,模型能够表示的函数族。
2025-03-29 14:23:09
671
原创 树莓派ollama docker报错尝试网上方法
显示“连接被对方重置”sudoollama pull qwen2:7b push:ollama 未找到命令安装docker1.运行以下命令检查 Docker 是否已正确安装:bash复制如果返回路径(例如或),说明 Docker 已正确安装。如果没有返回路径,说明 Docker 未正确安装或未添加到 PATH 中。不在,没有返回。
2025-03-25 22:27:54
441
原创 多层感知机的简洁实现
多层感知机的实现与softmax回归的实现相同,只是多层感知机的实现里增加了带有激活函数的隐藏层。,对网络中的全连接层的权重进行初始化,初始化方式为均值为 0、标准差为 0.01 的正态分布。定义了一个简单的两层神经网络,并使用自定义的权重初始化函数对网络的权重进行初始化。它会自动处理层之间的输入和输出传递。函数在内部调用模型的前向传播和反向传播时,可能没有正确处理损失函数的输出。:全连接层,将输入的 784 个特征映射到 256 个隐藏单元。定义一个简单的两层神经网络,包含输入层、隐藏层和输出层。
2025-03-25 17:21:32
246
原创 数据预处理
向该文件中写入模拟的房屋数据,包含列名和几行数据样本,其中部分数据包含缺失值(用。《动手学深度学习》-2.2数据预处理-笔记分析。函数读取之前创建的 CSV 文件。:保持不变,因为它已经是数值型数据。,则该列的值为 1,否则为 0。,则该列的值为 1,否则为 0。
2025-03-23 15:42:17
225
原创 基本数据操作关于torch
广播机制允许不同形状的张量进行操作。PyTorch 会自动扩展较小的张量以匹配较大的张量。使用gpu 在 PyTorch 中,可以通过。矩阵乘法(每一行*每一列对应数字相加)改变张量的形状而不改变数量。拼接 0是行 1是列。
2025-03-23 15:21:43
345
原创 多层感知机
感知机就像是一个“小盒子”,它接收一些输入,然后根据这些输入做出一个判断(输出)。比如,你给它输入一些数字,它会根据这些数字告诉你一个结果。
2025-03-22 21:27:22
219
原创 soft回归用内置函数
是李沐等人编写的《动手学深度学习》(Dive into Deep Learning)配套的 Python 包。它将输入的 784 个特征(展平后的图像数据)映射到 10 个输出类别(Fashion MNIST 数据集有 10 个类别)。:批量大小(batch size)是指每次训练时输入模型的数据样本数量。(负对数似然损失)的功能,能够计算模型输出的概率分布与真实标签之间的交叉熵损失。:PyTorch 是一个流行的深度学习框架,提供了张量操作、自动求导等功能。是一个常用的损失函数,用于多分类问题。
2025-03-22 20:44:07
451
原创 softmax代码实现
这是 PyTorch 中用于自动求导的标志,通常用于模型的可训练参数。在训练过程中,PyTorch 会自动计算这些参数的梯度,以便进行反向传播和参数更新。对于 FashionMNIST 数据集,每张图像是 28×28 的灰度图像,因此输入特征的数量为 28×28=784。: 输出类别的数量。定义了一个简单的线性模型的参数,用于处理 FashionMNIST 数据集。,当我们必须输出硬预测(hard prediction)时, 我们通常选择预测概率最高的类。,表示有 10 个偏置项,每个对应一个输出类别。
2025-03-22 20:18:11
765
原创 图像分类数据集
输出的是一个整数,表示图像的类别标签。FashionMNIST 数据集有 10 个类别,每个类别对应一个整数标签(从 0 到 9)。是 PyTorch 提供的用于加载 FashionMNIST 数据集的类。函数将图像以 2 行 9 列的网格形式显示,并为每张图像添加文本标签。列表的索引(从 0 到 9)对应于数据集中的整数标签。:指定对图像数据应用的预处理操作,这里是。是一个用于批量显示图像的工具函数,,即将图像转换为归一化的张量。:图像的宽度为 28 像素。:图像的高度为 28 像素。
2025-03-14 22:09:34
417
原创 神经网络分类任务
每个隐藏层后面都接了一个 ReLU 激活函数,增加了模型的非线性能力。这是一个多层神经网络,包含两个隐藏层和一个输出层。使用了 Dropout 层来防止过拟合。但不知道数据集里面是什么打印。下载mnist数据集。
2025-03-13 14:41:31
320
原创 softmax回归
在机器学习中,分类问题是这样的:给定一些输入数据(特征),我们需要预测一个离散的类别标签。比如:判断一张图片是猫、狗还是鸟(3个类别)。判断一封邮件是垃圾邮件还是正常邮件(2个类别)。如果类别超过两个,这种问题称为。
2025-03-12 19:51:33
604
原创 线性回归,深度学习
线性回归(Linear Regression)是机器学习和深度学习中最基础的模型之一,它用于预测一个或多个特征(自变量)与目标变量(因变量)之间的线性关系。尽管线性回归本身是一个简单的模型,但它在深度学习中仍然非常重要,因为它是许多复杂模型的基础。
2025-03-05 20:02:55
401
原创 python中模式匹配
的强大之处在于它可以解构复杂的数据结构,如列表、元组、字典等。是匹配的模式,可以是常量、变量、数据结构等。是一个通配符,表示匹配任何值(类似于。
2025-03-05 19:06:23
137
原创 list(列表)和tuple(元组)
2.两者都可以存储不同类型的数据(如整数、浮点数、字符串等)提供了大量方法用于修改数据,如。:两者都可以通过循环进行迭代。:可以修改、添加、删除元素。:一旦创建,无法修改其内容。提供的方法较少,主要是。
2025-03-05 18:39:28
154
原创 python中% 和format
在Python中,采用的格式化方式和C语言是一致的,用。方法,它会用传入的参数依次替换字符串内的占位符。,不过这种方式写起来比%要麻烦得多。另一种方法是使用字符串的。
2025-03-05 18:31:19
218
原创 python 方法覆盖
子类中定义了一个与父类同名的方法,覆盖了父类的方法。当子类实例调用该方法时,默认执行子类中定义的版本。会按照方法解析顺序(MRO)查找父类中的方法。用于在子类中调用父类的方法。
2025-03-05 17:59:35
219
原创 猜产品价格
请说出你猜的价格:23。请说出你猜的价格:25。请说出你猜的价格:67。请说出你猜的价格:89。请说出你猜的价格:90。很遗憾,你没有次数了。
2024-12-20 21:23:30
193
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人