自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 收藏
  • 关注

原创 【KMP】从原理上详解next数组和nextval数组

全网最详细的next和nextval讲解,并比较了与现在普遍的KMP算法实现中的next数组间的异同。

2022-06-29 20:23:51 11644 11

原创 Pytorch实现梯度反转报错non-static forward method的解决办法

由于pytorch版本更新,在1.3及以上的版本中要求forward方法必须为静态方法。而在许多较早版本的代码实现中,梯度反转通常是这样写的:from torch.autograd import Functionclass GradReverse(Function): def __init__(self, lambd): self.lambd = lambd def forward(self, x): return x.view_as(x)

2021-11-17 16:19:46 1614 2

原创 Pytorch踩坑之transpose与view

在实际应用中,经常会遇到需要对张量维度进行变换的情况,经常用到的就是transpose方法和view方法。但是这两种方法有着本质的区别,使用错误会导致难以察觉的错误。transpose方法transpose方法可以理解为维度交换,也就是转置。它有两个参数dim1和dim2,意义很简单,即交换dim1和dim2两个维度。view方法view方法则可以理解成对张量重新进行维度定义,它只有一个参数size,但这个size可以是元组或者列表,表示重新进行定义的维度。两者的区别具体看一个例子。impor

2021-01-12 10:32:11 1695

原创 Pytorch学习笔记(四)—— 训练一个分类器

训练一个分类器之前的文章中已经介绍了Pytorch的基本内容,这次将会进入实战,尝试训练一个分类器并进行测试。开始之前Python提供了处理各种数据的package,如处理图片时可以使用Pillow、OpenCV等;处理音频时可以使用scipy、librosa等;处理文本时可以使用基于Python或Cython的原始加载或者选择NLTK、Spacy等。但Pytorch针对视觉处理,专门创建了一个名为torchvision的package,其中包含用于常见数据集(如Imagenet,CIFAR10,M

2020-08-17 17:27:36 1781

原创 Pytorch学习笔记(三)—— 神经网络搭建

神经网络的搭建

2020-08-10 12:17:05 386

原创 Pytorch学习笔记(二)—— 梯度计算

Pytorch的梯度计算Pytorch支持在创建tensor时指明requires_grad参数,当该参数为True时,Pytorch会自动追踪对该tensor进行的所有操作,每次操作的结果会具有grad_fn属性来记录所做的操作:# 创建一个张量,并设置需要计算梯度以对它的计算进行追踪x = torch.ones(2, 2, requires_grad=True)print(x)# 进行一次张量操作y = x + 2print(y)print(y.grad_fn) # y作为一次操作的

2020-08-08 23:34:49 985

原创 Pytorch学习笔记(一)—— Tensor(张量)

Pytorch学习笔记(一)

2020-08-07 14:35:40 2697 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除