深度学习入门—Pytorch
文章平均质量分 50
pytorch学习入门自学笔记
o0Orange
这个作者很懒,什么都没留下…
展开
-
多元分类及其pytorch实现
相比起逻辑回归的二分类,多元分类使用softmax来替代了sigmoid,假如需要分k类,那么应该有k个输入值。k,然后输出k个概率,且概率之和为1。原创 2024-02-14 15:52:23 · 416 阅读 · 1 评论 -
序列转序模型及其pytorch实现
1.此处补充一下迁移学习,实际在比如构建一个图像识别应用过程中,很少有人会直接随机初始化权重,且很难有大量数据来重新训练一个模型,相反的,我们会使用一个使用大批量数据训练好的卷积神经网络来训练。早期的卷积层提取低级特征,往后的卷积层提取高级的特征。这意味着只要任务接近我们就可以添加少量的数据来微调,就可以实现任务的迁移。3.普通的神经网络数据是单向传递的,而RNN是循环传递的,输入x经过hidden得到y,而hidden的输出结果h需要作为下次输入的一部分,循环传递。2.循环卷积网络受生物记忆启发。原创 2024-02-14 23:15:24 · 376 阅读 · 1 评论 -
逻辑回归以及pytorch实现
令L(w)= -logp(y|X,w) ,L(w)就是我们需要的损失函数,只需求出最小的损失函数,梯度下降后就可以得到 =w ,pytorch中 有这样的交叉熵损失函数(用极大似然得到的函数),4.极大似然:抛硬币每次独立,若硬币不均匀,则每次抛出的概率会偏向高概率的结果,那么将每次抛出的结果概率累起来,则会趋向最大。2.线性神经元输出xw,经过sigmoid函数映射为(0,1)中,sigmoid = 1/1+e^-x。3.伯努利原理:抛硬币正:p = θ ,y=1 抛硬币反:p=1-θ,y=0。原创 2024-02-14 15:27:54 · 366 阅读 · 1 评论 -
非线性回归的原理与实现
1.激活函数:激活函数是为了让神经网络可以拟合复杂的非线性函数,比如torch.nn.functional.relu()2.人工神经网络是多层人工神经元组成的网络结构,输入层,隐含层,输出层。3,隐含层大于2的神经网络,都可以叫深度神经网络。原创 2024-02-14 14:17:52 · 589 阅读 · 1 评论 -
生成对抗网络及其pytorch实现应用
迭代次数指的是模型在训练过程中参数更新的次数。一次迭代通常是指模型使用一个 mini-batch(小批量)数据进行前向传播、计算损失、反向传播和参数更新的过程。当我们将整个数据集通过模型训练一轮(将数据集中的每个样本都经过一次前向传播和反向传播)时,就称为完成了一个 epoch。举个例子,假设数据集有 1000 个样本,如果我们将 mini-batch 大小设置为 100,那么在完成一个 epoch 时,模型会执行 10 次迭代(1000个样本 / 100个样本 = 10 次迭代)。原创 2024-02-16 00:30:27 · 463 阅读 · 1 评论 -
卷积神经网络与手写字体识别pytorch实现
比如我们有个特征图是8*8,池化窗口是4*4,每4*4进行一次采样,就会得到2*2的池化特征图。3.卷积的话,其实是相关性计算,滑动窗口的滑动值叫stride,又称步长,滑动到边缘时停止,如果此时停止了,有些时候中间像素会参与多次卷积,因此我们需要往图像外填充一些像素,叫做填充,padding。我们假设输入为z1,经过隐藏层得到了z2,经过输出层得到z3,最后通过损失函数算出损失值z4,然后正向传播到此结束,接着进行反向传播(backpropagation alg),我们先定义一个。原创 2024-02-14 21:09:52 · 543 阅读 · 1 评论 -
线性回归原理与python实现
将梯度乘以学习率,得到的结果是参数更新的大小。如果梯度较大,乘以一个较小的学习率可以使参数更新的幅度减小,保持在一个合理的范围内。这样,我们可以沿着损失函数下降最快的方向移动,同时避免更新步长过大导致跳过最优解。所以,乘以一个很小的数(学习率)可以控制参数更新的幅度,确保梯度下降算法朝着最小化损失函数的方向稳定地进行。误差函数:MSE(均方误差) L(w1,w0)= Σ(yi - y)^2。优化方法:梯度下降,autograd,反向传播,优化公式,进行更新。# 清空w的梯度,不然会累加。原创 2024-02-13 00:47:15 · 510 阅读 · 1 评论