- 博客(62)
- 收藏
- 关注
原创 大模型调优技术:Parameter-efficient transfer learning
提示微调(Prompt Tuning)通过在输入点或中间层前置一组可学习的提示 tokens,并在微调过程中只优化这些 tokens 的参数,从而实现参数高效的微调方法。在微调过程中,只更新这些适配器模块的参数,而 BERT 模型的参数保持不变。在微调过程中,只更新这些低秩矩阵的参数,而原始权重矩阵保持不变。更新适配器参数:只更新适配器模块的参数,使模型能够适应特定的下游任务。插入适配器模块:在预训练模型的每一层之间插入适配器模块。冻结原模型参数:在微调过程中,预训练模型的参数保持不变。
2024-06-19 09:29:59
964
原创 ScanNet 数据集常见文件的作用极其读取方式
ScanNet 数据集是一个大规模的 RGB-D 视频数据集,它包含了丰富的三维场景理解任务所需的数据,如三维物体分类、语义体素标签和 CAD 模型检索等。和.sens和和.txt文件(如下面进行详细的解释。
2024-04-22 13:28:57
2828
3
原创 详解混合精度训练(Mixed Precision Training)
混合精度训练(Mixed Precision Training)是一种在深度学习中提高训练速度和减少内存占用的技术。在PyTorch中,通过使用半精度浮点数(16位浮点数,FP16)和单精度浮点数(32位浮点数,FP32)的组合。
2024-04-17 13:34:37
11454
1
原创 大模型训练如何节省显存 - DeepSpeed ZeRO
训练大模型需要巨大的资源,单卡显存已经越来越难以满足存放整个模型,因此诞生了大模型训练技术,典型的如 DeepSpeed ZeRO 和 FairScale 的完全分片数据并行(Fully Sharded Data Parallel, FSDP)技术,其允许在数据并行进程之间分片模型的参数、梯度和优化器状态,并同时仍然保持数据并行的简单性。DeepSpeed的Zero Redundancy Optimizer(ZeRO)通过在多个GPU之间分割模型的权重、梯度和优化器状态,显著减少了每个GPU所需的内存量。
2024-04-17 13:10:11
1539
原创 梯度检查点(Gradient Checkpointing)的解释和举例
梯度检查点(Gradient Checkpointing)是一种深度学习优化技术,它的目的是减少在神经网络训练过程中的内存占用。在训练深度学习模型时,我们需要存储每一层的激活值(即网络层的输出),这样在反向传播时才能计算梯度。但是,如果网络层数非常多,这些激活值会占用大量的内存。梯度检查点技术通过只在前向传播时保存部分激活值的信息,而在反向传播时重新计算其他激活值,从而减少了内存的使用。
2024-04-17 12:47:31
3836
原创 pytorch 多进程数据加载 - 序列化数据/serialize_data
OpenMMLab项目中构建数据集的基础类BaseDataset类的时候,对多进程数据加载有一个优化,叫做 ‘‘’序列化’。先看代码部分在分布式训练中,如果每个GPU rank都加载完整的data_list,那么确实会导致内存的重复使用。为了解决这个问题,serialize_data属性被设置为True时,可以通过序列化数据来节省内存,这样每个工作进程就可以共享主进程的RAM,而不是各自复制一份数据。
2024-04-15 16:41:20
1057
原创 bash: anaconda3/lib/libtinfo.so.6: no version information available (required by bash)
我在编译安装nccl 库的时候遇到的问题。代替 Anaconda 的。
2024-03-19 12:32:26
4278
2
原创 详解深度学习中的教师-学生模型(Teacher- Student Model)
在知识蒸馏时,我们通常不会仅让学生模型去模仿最高概率的那个类别,而是让它学习整个教师模型的“软化”概率分布,比如通过提高温度参数(temperature scaling)来使分布更加平滑,分布中的每个类别的概率都将被赋予更高的相对重要性,即使它们不是最大概率的类别。,在一个图像分类任务中,教师模型可能是一个大型的预训练神经网络,它对输入图片计算出各类别的概率分布,如对于10类问题,不仅预测出哪个类别最有可能是正确的,还给出所有类别对应的概率值。学生模型则根据这些软标签进行学习,从而模仿教师模型的决策过程。
2024-03-08 22:05:53
23955
2
原创 自回归模型的损失函数的shift操作
shift这里是对齐了序列长度之后的标签数据与预测logits进行交叉熵损失计算。由于是自回归模型,因此需要对logits和labels进行shift操作,使得每个位置的预测仅对应下一个位置的真实标签。
2024-03-07 20:57:27
2031
4
原创 VSCode debug torchrun方式的多卡python代码
【代码】VSCode debug torchrun方式的多卡python代码。
2024-03-05 14:32:43
1348
原创 huggingface 本地模型加载报错 Error no file named pytorch_model.bin, tf_model.h5, model.ckpt.index or flax_mo
【代码】huggingface 本地模型加载报错 Error no file named pytorch_model.bin, tf_model.h5, model.ckpt.index or flax_mo。
2024-01-15 12:28:28
2306
1
原创 离线加载huggingface模型
huggingface 本地加载模型阅读里面的函数,可以知道下载的文件 url 和存储位置根据输出可以知道是。
2024-01-15 12:13:59
1444
原创 python 编译安装的包找不到
因此,解决方法是把git clone且编译之后的文件夹A/A复制到anaconda路径。我git clone 之后编译安装了一个包A,但是A没法import。而查看A的时候发现在anaconda路径。
2023-12-18 16:38:39
563
原创 CLIPTokenizer.from_pretrained本地加载
这个网页把所有文件下载下来,传到.cache/huggingface/transformers下,然后把代码改。但我连不到外网没办法直接下载,所以去。
2023-11-28 11:25:55
1561
2
原创 Ubuntu 22.04 使用GoldenDict实现整段翻译
GoldenDict 是一个非常好用的词典工具, 却不能整句或整段的翻译, 时常需要借助 Google translate 对于将 Google 翻译加到 GoldenDict 是一个很好的方法 φ(゜▽゜*)♪screenshot使用方法:GoldenDict - 编辑 - 字典 - 字典来源 - 程式:如果用的是conda环境下的python进行安装记得修改。还要记得修改自己的梯子的port,这里直接写,不需要在软件内部再设置系统代理。
2022-12-02 19:09:27
1735
原创 torch.utils.data.DataLoader参数说明
5、batch_sampler(Sampler,optional)与sampler类似,但是一次只返回一个batch的indices(索引),需要注意的是,一旦指定了这个参数,那么batch_size,shuffle,sampler,drop_last就不能再制定了(互斥——Mutuallyexclusive)10、timeout(numeric,optional)如果是正数,表明等待从worker进程中收集一个batch等待的时间,若超出设定的时间还没有收集到,那就不收集这个内容了。...
2022-07-26 20:58:01
2683
原创 nn.PairwiseDistance 和 torch.cdist 和 MSELoss 计算距离
使用nn.PairwiseDistance 和 torch.cdist 和 MSELoss 计算距离
2022-06-29 22:11:28
1963
原创 pytorch归一化
torch.nn.functional.normalizea1=torch.nn.functional.normalize(a,p=1, dim=1)a1Out[283]: tensor([[[ 0.2748, -0.9671, 0.3415, -0.1457], [-0.2564, 0.0282, -0.5989, 0.6267], [-0.4687, -0.0047, -0.0596, -0.2275]], [[ 0.0069, 0.3
2022-05-19 10:19:52
489
原创 torch.nn.functional.normalize用法
L p 范数a = torch.Tensor([1,2,3])# a的L1范数为 6=1+2+3;L2的范数为 sqrt(14)=sqrt(1^2+2^2+3^2)torch.nn.functional.normalize为了方便验证,以下使用了 L1 范数当 dim = 0b = torch.Tensor([[1,2,3], [4,5,6]]) # shape=(2,3)b0=torch.nn.functional.normalize(b,p=1, dim=0)bOut[200]:
2022-05-18 21:28:13
1121
原创 pycharm print 显示红色下划线
问题pycharm 显示红色下划线提示:This inspection detects names that should resolve but don’t. Due to dynamic dispatch and duck typing, this is possible in a limited but useful number of cases.解决方案右击pycharm中项目名–>Mark Directory as -->Resource root,然后重新打开项目红线就消失
2021-12-17 22:31:36
3863
原创 ImportError: No module named data
问题明明在IDE(如Pycharm)中运行 check_file.py 正常。到了xshell使用python check_file.py方式运行时,就报ImportError: No module named data。# check_file.pyfrom data import scannet_util产生这个问题的原因是python的搜索路径导致的。解决问题的解决需要两步:获取当前代码文件绝对路径将需要导入模块代码文件相对于当前文件目录的绝对路径加入到sys.path中im
2021-12-17 16:55:30
5657
原创 读取JSON文件报错
报错 File "/mnt/cephfs/home/lirong/anaconda3/envs/pointgroup/lib/python3.7/json/decoder.py", line 340, in decode raise JSONDecodeError("Extra data", s, end)json.decoder.JSONDecodeError: Extra data: line 409 column 1 (char 8442)检查查看报错的那一行tweets = [
2021-12-14 21:54:13
1409
原创 Typora给插图加入图注
<center style="font-size:14px;color:#000;text-decoration:underline">Fig 3. Train mIoU</center>
2021-11-29 01:31:36
1953
原创 科研画图工具
http://alexlenail.me/NN-SVG/LeNet.htmlhttps://cbovar.github.io/ConvNetDraw/
2021-11-09 01:52:41
183
原创 pycharm console 报错
描述pycharm的console本来用的好好地,但是我也不知道自己改了啥,结果报错了。报错Error:Console process terminated with error:Traceback (most recent call last):File "/home/user007/.pycharm_helpers/pydev/pydevconsole.py", line 33, in <module>from _pydev_bundle.pydev_console_utils
2021-09-06 13:15:16
1500
原创 Chrome的YouTube双语字幕插件
参考YouTube 这个视频教程讲的比我写的详细多了。不过我还是记录一下文字版本。最终效果原视频是没有英文字幕的,安装这个插件之后,有了中英双语的字幕。listening菜鸡如我有救了。安装步骤1. 安装Chrome的插件 - Tampermonkey直接在Chrome的插件里搜索这个,安装就好了。然后我发现这个还有官网的。不过我没仔细看。2. 安装油猴的插件 - YouTube双语字幕网址:https://greasyfork.org/zh-CN/scripts/397363
2021-08-22 15:12:23
10184
1
原创 Nvidia Jetson NX 相机和雷达的同步标定
Download source code from GitHubgit clone https://github.com/Livox-SDK/livox_camera_lidar_calibration.gitput the code in the ~/Documents/ws_livox/srcsuch as the below:(pyqt) nvidia@nvidia-desktop:~/Documents/ws_livox$ tree -L 2.|-- build| |-- CAT
2021-07-15 15:24:50
1208
原创 [Solved] Could not find a package configuration file provided by “cv_bridge“
When using ROS catkin_make, it show the ERROR:CMake Error at /opt/ros/melodic/share/catkin/cmake/catkinConfig.cmake:83 (find_package): Could not find a package configuration file provided by "cv_bridge" with any of the following names: cv_bridgeC
2021-07-15 15:10:09
517
原创 Nvidia Jetson install PCL
Ubuntu18.04download pcl source code from GitHub Releasemkdir buildcd buildcmake …-- The C compiler identification is GNU 7.5.0-- The CXX compiler identification is GNU 7.5.0-- Check for working C compiler: /usr/bin/cc-- Check for working .
2021-07-14 21:49:51
787
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人