debug
项目过程中遇到的各种问题
盛开着永不凋零
拉力不出城,仿赛在摩旅
展开
-
win_size exceeds image extent. Either ensure that your images are at least 7x7; or pass win_size ex
在进行超分辨率重建后想计算SSIM和PSNR,最开始发现导入compare_psnr,compare_ssim居然报错了,上网一查发现版本更新换成了structural_similarity和peak_signal_noise_ratio。好家伙,这么一大段话,我估计 multichannel=True也已经不用了,报错中说。原创 2023-05-13 19:10:41 · 12044 阅读 · 13 评论 -
GAN网络的辨别器将生成图片和真图片全部辨别为真图片?这是训练失衡的一种!
我首先遇到的问题是GAN的通病----训练不稳定。GAN网络的理想情况是无论输入真实图片还是假图片,辨别给出的概率都应该是0.5。在最开始的时候我的辨别器损失在一两个epoch中就迅速下降为0,能够精确地把真图片判断为1,假图片判断为0。但后来我进行了一些优化,现在的结果是鉴别器无论是鉴别真图片还是假图片,辨别器辨别的概率都是1,1。我认为这在一定程度上是我的生成器已经骗过了辨别器,辨别器的损失也提高了,但我不知道这有什么影响吗?我找了许多地方都没有找到答案,包括gpt和bard,如果有哪位大佬原创 2023-05-22 17:27:25 · 448 阅读 · 0 评论 -
显存不够?试试with torch.no_grad():!
在我训练完IDDPM后,想要用他进行超分辨率,总是遇到的问题,一开始我以为是我的3050太拉,于是去了Autodl的4090,发现一样显存不足,最后通过小小的。原创 2023-06-18 14:57:32 · 511 阅读 · 0 评论 -
记第一次悲惨的AutoDL
如果AutoDl没有提供的数据集,比如我用的DIV2K,比较大,用WinScp传。顺便一提,根目录就是你的项目文件,比如我想读到这里。然后再jupyter的终端进入你的项目,我这里是。最坑爹的来了,这b还有初始化环境,我。然后直接python要运行的文件就好了。首先将自己项目的.zip直接拖上来就好。这个还要自己初始化是真滴坑。原创 2023-05-11 00:11:32 · 279 阅读 · 0 评论 -
NotImplementedError: Input Error: Only 3D, 4D and 5D input Tensors supported (got 3D) for the modes:
因为hr_image是一个三维张量,没有batch_size维度,只用给hr_image通过unsqueeze(0)增加一个batch_size维度就ok了。原创 2023-05-16 02:55:22 · 1494 阅读 · 0 评论 -
SSIM和PSNR表现过好
在超分辨率重建任务中,当我使用SSIM和PSNR评估我的模型的时候,神奇的事情发生了,我发现我模型的表现远远优于论文,比如PSNR一般在20-40,而我的在70+,并且我的SSIM都在0.9999+。我随机生成了两个numpy的随机数,发现SSIM仍然是0.9990+,终于知道不是我的模型好,而是代码出问题了。这里SSIM仍然高的原因是我用DIV2K进行训练,这是在DIV2K的验证集上进行验证,换到别的不同分布的数据集就会变低。附上上一篇文章要附的代码。原创 2023-05-16 10:47:42 · 629 阅读 · 4 评论 -
NotImplementedError: No KL(p || q) is implemented for p type Tensor and q type Tensor
函数用于计算两个概率分布之间的 KL 散度,它要求输入的参数是概率分布对象而不是张量。因此需要将张量转换为概率分布对象,然后再进行 KL 散度的计算。在计算 KL 散度后不需要将概率分布对象再转换回张量。因为KL 散度的计算是基于概率分布对象进行的,计算结果也会是一个张量,所以不需要再进行额外的转换。函数对两个张量类型的参数进行 KL 散度计算。转换为概率分布对象。原创 2023-06-15 23:45:52 · 216 阅读 · 1 评论 -
RuntimeError: CUDA error: device-side assert triggeredCUDA kernel errors might be asynchronously re
解决办法:先测试自己的代码有没有代码上的问题,再考虑有没有cuda内存泄漏的问题,但内存泄漏基本上不会发生。在消除这两种可能后,可以在代码最前面加上下面这段代码,这个方法是gpt告诉我的,这也是报错中所提示的,但是并没有解决我的问题,各位老铁不妨一试。我用的是COCO2017数据集,这个数据集比较大,其中图片很多,我在我的dataloader中将所有图片都调成了[3,256,256]的大小。有意思的是,在训练最开始时一切顺利,到了几千张图片后就发生了上述的报错。到此为止跑了十几万张图片都没有再报错。原创 2023-06-16 18:36:09 · 9038 阅读 · 0 评论