- 博客(103)
- 收藏
- 关注
原创 安装bert_embedding遇到问题
安装命令的选项,它的意思是在安装某个包时,会忽略这些依赖关系,不去安装这些依赖包。会自动安装该包所需要的依赖库,而加上。作为依赖,正常情况下。举个例子,如果你安装。
2024-12-31 16:16:44
407
原创 论深度学习训练过程中数据集打乱的重要性
今天在重新训练一个之前跑过的模型时候,突然发现训练损失一直居高不下,一直保持在0.6左右,就感觉很奇怪,为什么之前训练的时候没有问题,之前训练的时候loss是正常下降的,为什么今天重新把代码拉出来跑的时候,就出现loss不下降的问题呢?带着这个问题,我就狠狠调试,发现代码逻辑啥的都没有问题,为此调试了一整天,然后刚刚坐在实验室的时候,突然想着要不把中间结果输出看看,然后我就单独挑了几例数据训练一下,结果一看,发现我的每一个epoch加载的数据顺序是一样的,也就是说,
2024-11-27 22:37:34
257
1
原创 【问题】程序中已经设定了在cuda:6上面进行训练,但是一直显示For debugging consider passing CUDA_LAUNCH_BLOCKING=1.
即:我已经设置了在cuda:6上面运行,但是一直显示的是程序运行在cuda:1上面。参数将模型参数映射到一个现有的设备上。
2024-05-05 13:03:41
331
原创 【报错记录】AttributeError: module ‘numpy‘ has no attribute ‘bool‘.
【代码】【报错记录】AttributeError: module ‘numpy‘ has no attribute ‘bool‘.
2024-04-30 18:48:42
682
原创 Softmax函数和Sigmoid函数的思考
由于softmax是对两个类别(正反两类,通常定义为0/1的label)建模,所以对于NLP模型而言(比如泛BERT模型),Bert输出层需要通过一个nn.Linear()全连接层压缩至2维,然后接softmax(pytorch的做法,就是直接接上。sigmoid得到的结果是“分到正确类别的概率和未分到正确类别的概率”,softmax得到的是“分到正确类别的概率和分到错误类别的概率”。前者0.2805指的是分类类别为0的概率,0.8748指的是分类类别为1的概率。同样的,得到两个类别的概率之和也是1.
2024-04-14 17:19:56
1298
原创 交叉熵损失函数介绍
交叉熵是信息论中的一个重要概念,它的大小表示两个概率分布之间的差异,可以通过最小化交叉熵来得到目标概率分布的近似分布。为了理解交叉熵,首先要了解下面这几个概念。信息论的基本想法是,一个不太可能的事件发生了的话,要比一个非常可能发生的事件提供更多的信息。根据以上三点,定义在本文中,用log来表示自然对数,其底数为e。设 X 是一个有限个值的离散随机变量,其概率分布为:对于该离散随机变量,用自信息的期望来量化整个概率分布中的不确定性总量:这里的H(X)定义为随机变量 X 的。
2024-04-14 13:52:13
866
原创 Linux下CMake安装遇到的问题
在使用pip install cmake安装完cmake以后,想要检查一下cmake的版本,于是输入。这个问题是由于CMake无法找到正确的安装路径。安装完成以后即可解决问题。
2024-04-11 18:33:48
685
原创 Vscode远程连接遇到的一些问题
由于之前报错图片没有保存,所以只有文字描述一下:1、无法与192.168.8.210建立连接:Vscode服务器启动失败2、无法与192.168.8.210建立连接:无法安装Vscode服务器。
2024-04-10 15:11:13
1325
原创 【Error】OMP: Error #15: Initializing libiomp5md.dll, but found libiomp5md.dll already initialized.
注意:这种方法有效但是每开启一次终端就得设置一次。注意:这种方法不一定对所有情况都有效。方案二:在终端中设置。
2024-04-01 19:58:36
245
原创 Opencv 读取灰度图像会识别为3通道问题
opencv在默认情况下会读取3个通道的图像,如果是灰度图/红外图片则会将其图层复制三次(BGR缺省,B==G==R),因此读出来的图片是三通道。如果我们想一开始就按照单通道读取灰度图片/红外图片的话,可以在imread()函数中加入相关参数(读取图片时似乎都是三通道图片,只有在灰度处理后才回显示单通道。我们都知道灰度图或者红外图都是单通道图片,而彩色图片是三通道图片。但是当我们用img.读取灰度图/红外图片的时候返回的却是三通道结果。这样就会直接按照单通道的方式读取。
2024-03-28 16:02:02
565
原创 TypeError: Descriptors cannot not be created directly.
【代码】TypeError: Descriptors cannot not be created directly.
2024-03-20 19:34:48
723
原创 关于安装TensorFlow1.x版本的一些注意事项
虽然目前主流深度学习框架是Pytorch和TensorFlow2.x版本,但是也不乏有一些大佬使用TensorFlow1.x版本进行开发,这个时候如果不想使用Pytorch和TensorFlow2.x重写一下源代码的话,唯一的办法就是创建一下TensorFlow1.x的虚拟环境。
2024-03-20 19:20:55
703
原创 pip install xx安装的时候加速“算法”
我们在使用pip install 安装某些包的时候会发现非常慢,这是因为一些包需要从国外服务器下载,导致速度非常慢,这个时候我们可以选择一些国内的镜像换源,比如阿里源、清华源等等,可以加速下载。这里选择的是清华源,当然也可以选择其他源下载,会发现速度大大提升了。
2024-03-20 19:11:52
122
原创 【Python】import无法导入某一目录下的文件
但是此时运行main_VAE.py出现如下报错:也就是说此时Python解释器没有找到models这个文件夹。
2024-03-20 17:16:55
514
原创 【报错】RuntimeError: Unable to find a valid cuDNN algorithm to run convolution
我的程序需要6G的GPU空间,一开始我使用的是显卡0,显卡0还剩余4G左右的空间,显然不够我的程序需要,所以就出现了上面的错误,在我换到显卡3(显卡3还剩余10G左右)以后,程序就可以正常执行了。这个错误的原因是咱们的。
2024-03-20 15:14:49
406
原创 N折交叉验证的作用
如果当前有多个候选模型,想从中选出一个最合适的模型,就可以用交叉验证的方法进行模型选择,尤其是当数据集很小时。如果当前只有一个模型,想获得对这个模型的performance最客观的评估,就可以用交叉验证的方法进行模型评估,尤其是当数据集很小时。
2024-03-14 10:05:50
1170
原创 【PyTorch】register_hook的使用
上面的代码中,当执行到z.backward()这一句代码的时候,就是计算变量z的偏导数,因为v=torch.randn(1,3)也就是1行3列,所以可以假设v=(v1, v2, v3),那么z=v1+v2+v3。上面的代码即可将梯度保存到变量grad_store中,方便后面计算Grad-CAM等等。所以可以得出上面的偏微分结果为 :tensor([[1., 1., 1.]])。
2024-03-12 16:35:18
581
1
转载 【PyTorch】 register_forward_hook()简单用法
但很多时候,我们并没有办法去直接修改网络的源代码,比如在pytorch中已经封装好的网络,那么这个时候就可以利用hook从外部获取Module的中间输出结果了。从这里可以发现hook甚至可以更改输入输出(不过并不会影响网络forward的实际结果),不过在这里我们只是简单地将output给保存下来。取出网络的相应层后,对该层调用register_forward_hook方法。直接修改forward部分的代码,将conv2的中间结果return即可。
2024-03-12 12:19:00
179
转载 VAE——变分编码器(转载)
原文地址:【学习笔记】生成模型——变分自编码器李宏毅机器学习视频:https://www.bilibili.com/video/av15889450/?p=35&spm_id_from=pageDriver&vd_source=af36a518c5835b7b3f7bb65362f60cd3
2024-03-02 10:54:23
48
原创 论正确初始化深度学习模型参数的重要性
在一般的深度学习训练过程中,我们建立好模型以后,程序就有自动的初始化一些模型的参数,比如全连接层中每一个节点的权重等等,在之前的网络训练过程中,我总是事先设下随机种子以后,让模型自己随机初始化参数。但是这个时候就会出现一个问题:如果不加任何约束,模型的有些参数会初始化的非常大,比如某一个权重参数初始化为100,而我们的学习率一般都比较小,比如0.0001,这个时候就会发现。,其实一般遇到这种情况的主要问题就是咱们的模型初始化参数设置的不是很好,没有加以约束,导致很多的参数值设置的不是很合理。
2024-01-07 20:49:01
584
原创 np.eye()函数的使用
今天在复现一篇3D图像分割论文的时候,思考了一个问题,我们的数据集一般由原始数据和对应的Ground Truth组成,一般的3D数据都是(Height,Width,Depth)的形状,而对应的Ground Truth也是(Height,Width,Depth)的形状。这个时候就会产生一个疑问,比如我们的分割类别加上背景总共有4类,这个时候(Height,Width,Depth)形状的Ground Truth里面的每一个元素的是都是0、1、2、3其中的一个,分别代表着背景、类别1、类别2、类别3。
2024-01-06 21:32:07
733
原创 关于BraTS数据集中的Ground Truth标签的划分描述
引用自:Wang, Wenxuan, et al. "Transbts: Multimodal brain tumor segmentation using transformer." Medical Image Computing and Computer Assisted Intervention–MICCAI 2021: 24th International Conference, Strasbourg, France, September 27–October 1, 2021, Proceeding
2024-01-05 14:15:39
585
原创 screen无法翻页的问题
在调用远程服务器跑程序的时候,一般都会开启“守护进程”,这样以来可以防止出现远程服务器连接意外终端而造成不必要的损失。screen就是其中的一种“守护进程”工具,但是screen有一个比较突出的问题,screen在常规模式下面无法实现鼠标滚轮的翻页,这样以来就无法查看之前的运行输出。
2023-11-28 10:07:44
1212
原创 PNG格式的图像比JPG图像多一个Alpha通道
最后经过搜索发现:PNG格式的图像是比JPG格式的图像多了一个Alpha通道,而我们上面的图片的读取过程中,使用了cv.IMREAD_UNCHANGED,即指定了读取的时候包含Alpha通道,所以才会出现上面的错误,随后我将cv.IMREAD_UNCHANGED删除,即。可以看出错误的原因就是我的图片通道数是4,一开始我比较疑惑,我们图片明明是RGB的3通道图像,但是为什么总是显示是4通道呢?今天在进行深度学习训练的过程中,我使用。
2023-11-27 11:51:40
389
原创 灰色图像读取的注意事项
在医学图像中,如脑补MRI图像,一般都是灰色的图像,注意这个图像只是颜色上面是灰色的,但是图像的通道数目理论上应该是3通道的。上述代码中的 convert('RGB')将确保图像以RGB模式打开,即使它最初被错误地识别为灰度图像。
2023-11-27 11:28:08
105
原创 RuntimeError: Expected all tensors to be on the same device, but found at least two devices, cpu and
可以看出此时指出的是我在模型训练的时候将不同的tensor放到了不同的设备上面,包括GPU和CPU,但是一般跑过深度学习代码的应该都知道:在模型训练的时候需要将所有的inputs、model都统一放到GPU或者CPU上面进行训练,一开始我也以为是不同设备冲突的问题,但是在经过仔细检查以后还是没有发现问题所在,最后在上面的报错中的最后一行。
2023-11-27 10:59:21
450
1
原创 使用正则表达式模块“re”遇到的错误
上面的代码中,我想要将args.model_path中checkpoints之前的部分提取出来,比如args.model_path=“D:\Vscode\GitHub_Code\TPRO-main\work_dirs\luad\classification\checkpoints\mit_b0.pth”,则model_dir=“D:\Vscode\GitHub_Code\TPRO-main\work_dirs\luad\classification\”。不是一个有效的转义序列,因此会引发错误。
2023-11-07 17:05:15
339
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人