自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 梯度攻击和后门攻击

梯度攻击利用模型的梯度信息进行攻击,主要包括对抗攻击和梯度反演攻击。

2024-05-22 13:14:41 188

原创 报错:RuntimeError: can‘t retain_grad on Tensor that has requires_grad=False

叶子节点:只有定义的 Tensor 参数才是叶子节点;只有 requires_grad=True 和叶子节点 is_leaf=True 才有 grad 的值。

2024-05-21 14:24:55 52

原创 彻底解决:One of the differentiated Tensors appears to not have been used in the graph. Set allow_unused=

上面报错是因为在手动求梯度的时候,网络里面有初始化后的权重,但是没有用到,所以就会显示为:在用该网络得到的loss与输入求Loss的时候就报改错。1. 首先对手动求梯度加上属性:allow_unused=True(这不能解决根本问题,只是为了找到错误)2. 使用key,value来迭代输出model.parameter中的哪个权重层是空tensor即可。几行代码,让你直接找到空的tensor(找到空的权重层),不用一个一个取分析网络了!对这个报错已经很多次了,可以说是相当熟练了。

2024-05-16 01:25:49 130 3

转载 pytorch 笔记: 扩展torch.autograd

转载:pytorch 笔记: 扩展torch.autograd_扩展 pytorch autograd-CSDN博客

2024-05-14 19:36:41 7

转载 Huggingface Evaluate包使用小坑

转载:Huggingface Evaluate包使用小坑_evaluate huggingface-CSDN博客

2024-05-14 15:58:13 5

原创 randperm函数打乱索引的用法

randperm,用于生成一个随机排列。这个函数可以被用于许多需要随机排列的情况,如数据集的划分、模型的训练等等。通过randperm函数,你可以得到一个随机的、不重复的排列。将一个向量a随机打乱。

2024-05-13 18:44:51 207

原创 bert 的MLM框架任务-梯度累积

【代码】bert 的MLM框架任务。

2024-05-12 22:50:54 273

原创 nonzero() 返回非0元素的索引

也可用作:(xx==103).nonzero() :返回xx列表中值为103的索引。注意,可以随机应变,但是返回的是。nonzero() 返回非0元素的索引。

2024-05-12 21:39:52 105

转载 BERT模型参数量计算

token embedding参数:30522(词汇量)* 768(隐藏层大小)position embedding参数:512(文本输入最长大小)* 768(隐藏层大小)segment embedding参数:2(0和1区分上下句)* 768(隐藏层大小)故,词向量总参数量 = (30522 + 512 + 2)* 768 = 22.7 MBQ K V 权重矩阵尺寸:768 * 64(多头注意力机制下)O 的权重矩阵:768 * 768。

2024-05-11 19:23:38 68

原创 pytorch版本的bert模型代码(MLM)

【代码】pytorch版本的bert模型代码(MLM)

2024-05-11 19:07:45 112

原创 bert 微调合集

暂时没有时间总结,先贴上几个还不错的帖子。

2024-05-05 10:41:13 319

原创 RuntimeError: CUDA error: an illegal memory access was encountered

转载:RuntimeError: CUDA error: an illegal memory access was encountered 解决思路-CSDN博客

2024-05-04 11:19:47 325

原创 浅拷贝和深拷贝 copy.copy和copy.deepcopy

【代码】浅拷贝和深拷贝 copy.copy和copy.deepcopy。

2024-04-29 19:29:58 131

原创 warm up的余弦退火

【代码】warm up的余弦退火。

2024-04-27 23:11:42 103

原创 RuntimeError: CUDA error: misaligned addressCUDA kernel errors might be asynchronously reported at

把CUDA_LAUNCH_BLOCKING这个环境变量设置为1,1表示True,则会强制消除这种异步性。

2024-04-27 15:52:09 359

转载 train loss与test loss结果分析

train loss 不断上升,test loss不断上升,说明网络结构设计不当,训练超参数设置不当,数据集经过清洗等问题。train loss 趋于不变,test loss趋于不变,说明学习遇到瓶颈,需要减小学习率或批量数目;train loss 趋于不变,test loss不断下降,说明数据集100%有问题;train loss 不断下降,test loss不断下降,说明网络仍在学习;train loss 不断下降,test loss趋于不变,说明网络过拟合;

2024-04-26 22:45:27 26

原创 nn.Embedding, nn.Parameter,nn.linear的区别

所以是nn.Embedding 包含nn.Parameter?

2024-04-23 14:59:08 165

转载 python enumerate用法总结

这种方法简单,但是可能比较慢,当。

2024-04-20 16:57:50 15

原创 将整数转化为tensor

该列表包含了从 0 到 19 的整数序列,但每个整数都被转换成了 PyTorch 的张量(Tensor)对象。:这是 Python 中的一个循环语句,它遍历了一个从 0 到 19 的整数序列。取值范围从 0 到 19,所以它会创建 20 个张量,每个张量包含一个整数值。:这是 PyTorch 库中的函数,用于将一个 Python 整数。转换成 PyTorch 张量对象。使用了 PyTorch 库创建了一个名为。都会创建一个张量,并将其添加到列表。

2024-04-20 16:26:54 188 1

原创 python基础-random中sample()函数的用法

(list, k)返回一个长度为k新列表,新列表存放list所产生k个随机唯一的元素。

2024-04-19 11:30:37 278

转载 Pytorch基础——torch.randperm

torch.randperm(n):将0~n-1(包括0和n-1)随机打乱后获得的数字序列,函数名是random permutation缩写。原文链接:https://blog.csdn.net/u012633319/article/details/109039499。

2024-04-18 23:11:19 25

转载 pytorch中detach(), clone()函数和requires_grad_(False)解释

这样就得到了 x 和 w 的梯度。detach(): 将当前 tensor 从计算图中分离出来,返回一个新的 tensor,新 tensor 的 requires_grad 属性会被设为 False。1、在使用 Tensor 进行运算时,可能会产生一些临时结果,这些结果并不需要用于梯度计算,因此需要将这些 tensor 分离出计算图,以减少计算开销和内存消耗。2、当需要对某些 tensor 进行修改,但不希望这些修改对之前的梯度计算产生影响时,可以使用 detach() 函数,以避免不必要的计算。

2024-04-17 11:23:00 44

原创 随机采样函数torch.randint()

使用 PyTorch 库生成一个包含随机整数的张量。函数生成一个张量,该张量的形状为。,其中每个元素是一个随机整数。

2024-04-17 11:15:15 189

原创 自回归模型

这些模型在每个时间步接受一个输入(通常是前一个时间步的输出或隐藏状态),然后产生一个输出和一个新的隐藏状态,该隐藏状态会传递到下一个时间步。自回归模型的一个重要特性是,由于其依赖于先前的输出,因此在训练时通常需要使用教师强制(teacher forcing)技术,即将真实的目标序列作为输入提供给模型,以便引导模型学习正确的输出序列。换句话说,模型在生成序列的过程中,每个时间步生成的值都依赖于前面时间步生成的值。这样的模型可以生成连贯的文本,因为每个词都是基于前文的上下文信息生成的。

2024-04-11 15:32:38 186

原创 从ChatGPT到多模态大模型:现状与未来(多模态)

另一方面,大多数现有模型仅能输出文本,或采用一个单独的图像生成模型实现图像输出,导致图像生成结果与原问题匹配程度较低,目前未能实现同时生成图像、文本等多模态信息。我国乃至全球目前的预训练大模型均依赖大量的训练数据和计算资源,这对大模型的开发和部署使用造成了难以克服的障碍。因此,研究如何降低预训练大模型的计算成本,包括训练数据量、模型参数量等方面,具有重要的研究和应用价值。对通用领域的预训练大模型进行微调等方式,构建特定领域专用的大模型,相比通用大模型在各领域场景中具备更广泛的应用场景。

2024-04-09 22:40:59 790

原创 多模态(clip/ALBEF)

1. clip的核心思想是通过。获得的编码向量在向量空间上。,将图片和文本通过各自的。

2024-04-09 08:18:36 178

原创 多模态text-image模型之LM loss (blip)

这两个方法构成了整个模型的前向传播过程和生成过程,分别用于模型的训练和推理。其实就是bert的MLM Loss。,用于解码图像和生成文本描述。

2024-04-08 14:02:38 467

转载 BLIP源码之(1)数据集预处理【仅考虑Image-Text Retrieval on COCO】

转载:笔记:BLIP源码之(1)数据集预处理【仅考虑Image-Text Retrieval on COCO】_blip源码复现-CSDN博客

2024-04-08 12:35:31 23

转载 vscode通过ssh连接远程服务器+免密登录(图文)

转载:vscode通过ssh连接远程服务器+免密登录(图文)_vscode ssh-CSDN博客

2024-04-07 22:14:56 49

原创 多模态text-image模型之ITM loss(blip)

函数计算模型输出和真实标签之间的交叉熵损失。这个损失反映了模型预测和实际标签之间的差异,用于指导模型参数的更新,以便更好地区分正面和负面样本。)的得分,这个头部是一个全连接层,用于将模型学到的特征映射到正面和负面类别的得分。函数将这些标签连接起来,形成一个完整的标签张量。:模型对应的标签,包含了每个样本的真实标签。是负面样本的标签,设为 0。是正面样本的标签,设为 1,:模型输出的是经过训练头部(是模型输出的分类得分,是每个样本的真实标签。

2024-04-07 20:39:08 442

原创 多模态text-image模型之ITC loss (blip)

【代码】多模态text-image模型之ITC loss (blip)

2024-04-07 20:32:14 170

原创 不同服务器之间迁移conda环境(复制环境)

将上一步生成的tar.gz文件放到目标服务器的conda环境下后,比如/home/.conda/envs/。步骤:(1)base环境下,进行安装conda-pack,conda install -c conda-forge conda-pack。(2)到目标服务器,将上一步导出的yml文件复制到该服务器下,conda env create -f environment.yml。步骤:(1)进入要导出的conda环境,conda env export > environment.yml。

2024-04-07 19:34:09 529

原创 图像检索Image Retrieval

图像检索(Image Retrieval)是指根据给定的查询图像,从图像数据库中检索出与查询图像相似的图像的任务。它通常用于在大规模图像数据库中快速有效地搜索和定位图像。图像检索可以应用于多种场景,包括图像搜索引擎、社交媒体内容管理、医学图像检索等。图像检索系统的性能通常通过检索准确率、检索速度等指标来评估。

2024-04-06 21:08:19 201

转载 十大Hugging Face 数据集列表

转载:作者:小牛翻译NiuTrans https://www.bilibili.com/read/cv22438042/ 出处:bilibili。

2024-04-04 22:52:36 31

原创 在ssh 工具 Linux screen会话中使用鼠标进行上下滚动

经过几次发现 除外,如果想要在Linux screen会话中使用鼠标进行上下滚动。必须首先进入该screen的回滚(scrollback模式)才能进行上下滚动。

2024-04-03 22:41:55 685

原创 安装transforers时报错:error: can‘t find Rust compiler

最后重新安装transformer。

2024-04-02 21:56:58 854

原创 random.shuffle()

函数时,会直接修改原始列表,而不会返回一个新的列表。这意味着在操作之后,原始列表的顺序会被打乱。原始列表的顺序会被打乱,而不会返回一个新的列表。

2024-03-27 22:19:26 234

原创 for x, x in train_loader与for batch_idx, (x, x) in enumerate(train_loader):迭代方式区别

综上所述,对于简单的图像和标签数据集,两种迭代方式并没有太大区别,你可以根据自己的喜好和习惯选择其中一种。如果不需要追踪迭代次数,直接使用。如果需要追踪迭代次数,可以使用。

2024-03-27 15:26:24 217

原创 AutoTokenizer.from_pretrained 与BertTokenizer.from_pretrained

都是 Hugging Face 的 Transformers 库中用于加载预训练模型的 tokenizer 的方法,但它们之间有一些区别。总的来说,如果你想要一个通用的方法来加载任何预训练模型的 tokenizer,你可以使用。但如果你确定你要加载的模型是基于 BERT 结构的,那么。也是一个不错的选择。

2024-03-23 23:00:03 771

原创 加载bert-base-uncased预训练模型

使用transformer加载预训练模型。

2024-03-18 15:00:41 577

空空如也

空空如也

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

TA关注的人

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